blob: 32057788eba3e9cc5ab7035550969c2efb0ce4c9 [file] [log] [blame]
Zack Williams52209662019-02-07 10:15:31 -07001syntax = "proto3";
2
Serkant Uluderyacbcfaa42019-10-18 13:25:08 +03003option go_package = "github.com/opencord/voltha-protos/v3/go/voltha";
4option java_package = "org.opencord.voltha";
5option java_outer_classname = "OFLogicalDevice";
Zack Williams52209662019-02-07 10:15:31 -07006
7package voltha;
8
9import "google/api/annotations.proto";
10import "voltha_protos/meta.proto";
11import "voltha_protos/openflow_13.proto";
12
13message LogicalPortId {
14 // unique id of logical device
15 string id = 1;
16
17 // id of the port on the logical device
18 string port_id = 2;
19}
20
21message LogicalPort {
22 string id = 1;
23 openflow_13.ofp_port ofp_port = 2;
24 string device_id = 3;
25 uint32 device_port_no = 4;
26 bool root_port = 5;
Matt Jeanneret4604c422019-03-14 19:04:43 -040027 openflow_13.ofp_port_stats ofp_port_stats = 6;
Zack Williams52209662019-02-07 10:15:31 -070028}
29
30message LogicalPorts {
31 repeated LogicalPort items = 1;
32}
33
34message LogicalDevice {
35
36 // unique id of logical device
37 string id = 1;
38
39 // unique datapath id for the logical device (used by the SDN controller)
40 uint64 datapath_id = 2;
41
42 // device description
43 openflow_13.ofp_desc desc = 3;
44
45 // device features
46 openflow_13.ofp_switch_features switch_features = 4;
47
48 // name of the root device anchoring logical device
49 string root_device_id = 5;
50
51 // logical device ports
52 repeated LogicalPort ports = 128 [(child_node) = {key: "id"}];
53
54 // flows configured on the logical device
55 openflow_13.Flows flows = 129 [(child_node) = {}];
56
57 // flow groups configured on the logical device
58 openflow_13.FlowGroups flow_groups = 130 [(child_node) = {}];
59
Abhilash Laxmeshwardfbb74d2019-07-23 08:03:08 -040060 // meters configured on the logical device
61 openflow_13.Meters meters = 131 [(child_node) = {}];
62
63
Zack Williams52209662019-02-07 10:15:31 -070064}
65
66message LogicalDevices {
67 repeated LogicalDevice items = 1;
68}