blob: 0f06aa0b4bd61de598dacc79f511c459d9f8436e [file] [log] [blame]
Aaron Kruglikov9f95f992017-06-23 14:15:25 +09001syntax = "proto3";
Jian Lic9b4bf12017-06-26 23:50:32 +09002option java_package = "org.onosproject.grpc.net.link.models";
Aaron Kruglikov9f95f992017-06-23 14:15:25 +09003
Jian Lic9b4bf12017-06-26 23:50:32 +09004package net.link;
Aaron Kruglikov9f95f992017-06-23 14:15:25 +09005
Jian Lic9b4bf12017-06-26 23:50:32 +09006enum LinkTypeProto {
Aaron Kruglikov9f95f992017-06-23 14:15:25 +09007 // Signifies that this is a direct single-segment link.
8 DIRECT = 0;
9
10 // Signifies that this link is potentially comprised from multiple
11 // underlying segments or hops, and as such should be used to tag
12 // links traversing optical paths, tunnels or intervening 'dark'
13 // switches.
14 INDIRECT = 1;
15
16 // Signifies that this link is an edge, i.e. host link.
17 EDGE = 2;
18
19 // Signifies that this link represents a logical link backed by
20 // some form of a tunnel, e.g., GRE, MPLS, ODUk, OCH.
21 TUNNEL = 3;
22
23 // Signifies that this link is realized by fiber (either single channel or WDM).
24 OPTICAL = 4;
25
26 // Signifies that this link is a virtual link or a pseudo-wire.
27 VIRTUAL = 5;
28}
29
Jian Lic9b4bf12017-06-26 23:50:32 +090030enum LinkStateProto {
Aaron Kruglikov9f95f992017-06-23 14:15:25 +090031 ACTIVE = 0;
32 INACTIVE = 1;
33}
34
35// Link Event Types
Jian Lic9b4bf12017-06-26 23:50:32 +090036enum LinkEventTypeProto {
Aaron Kruglikov9f95f992017-06-23 14:15:25 +090037 LINK_ADDED = 0;
38 LINK_UPDATED = 1;
39 LINK_REMOVED = 2;
40}