| syntax = "proto3"; |
| |
| option go_package = "github.com/opencord/voltha/protos/go/voltha"; |
| |
| package voltha; |
| |
| import "meta.proto"; |
| import "google/api/annotations.proto"; |
| import "openflow_13.proto"; |
| |
| message LogicalPortId { |
| // unique id of logical device |
| string id = 1; |
| |
| // id of the port on the logical device |
| string port_id = 2; |
| } |
| |
| message LogicalPort { |
| string id = 1; |
| openflow_13.ofp_port ofp_port = 2; |
| string device_id = 3; |
| uint32 device_port_no = 4; |
| bool root_port = 5; |
| openflow_13.ofp_port_stats ofp_port_stats = 6; |
| } |
| |
| message LogicalPorts { |
| repeated LogicalPort items = 1; |
| } |
| |
| message LogicalDevice { |
| |
| // unique id of logical device |
| string id = 1; |
| |
| // unique datapath id for the logical device (used by the SDN controller) |
| uint64 datapath_id = 2; |
| |
| // device description |
| openflow_13.ofp_desc desc = 3; |
| |
| // device features |
| openflow_13.ofp_switch_features switch_features = 4; |
| |
| // name of the root device anchoring logical device |
| string root_device_id = 5; |
| |
| // logical device ports |
| repeated LogicalPort ports = 128 [(child_node) = {key: "id"}]; |
| |
| // flows configured on the logical device |
| openflow_13.Flows flows = 129 [(child_node) = {}]; |
| |
| // meters configured on the logical device |
| openflow_13.Meters meters = 130 [(child_node) = {}]; |
| |
| // flow groups configured on the logical device |
| openflow_13.FlowGroups flow_groups = 131 [(child_node) = {}]; |
| |
| } |
| |
| message LogicalDevices { |
| repeated LogicalDevice items = 1; |
| } |