| syntax = "proto3"; |
| |
| option go_package = "github.com/opencord/voltha-protos/v4/go/voltha"; |
| option java_package = "org.opencord.voltha"; |
| |
| package voltha; |
| |
| import "google/protobuf/empty.proto"; |
| import "voltha_protos/openflow_13.proto"; |
| |
| |
| message PonSimOnuDeviceInfo { |
| int32 uni_port = 1; |
| string serial_number = 2; |
| } |
| |
| message PonSimDeviceInfo { |
| int32 nni_port = 1; |
| repeated PonSimOnuDeviceInfo onus = 2; |
| } |
| |
| message FlowTable { |
| int32 port = 1; // Used to address right device |
| repeated openflow_13.ofp_flow_stats flows = 2; |
| } |
| |
| message PonSimFrame { |
| string id = 1; |
| bytes payload = 2; |
| int32 out_port = 3; |
| } |
| |
| message PonSimPacketCounter { |
| string name = 1; |
| int64 value = 2; |
| } |
| |
| message PonSimPortMetrics { |
| string port_name = 1; |
| repeated PonSimPacketCounter packets = 2; |
| } |
| |
| message PonSimMetrics { |
| string device = 1; |
| repeated PonSimPortMetrics metrics = 2; |
| } |
| |
| message PonSimMetricsRequest { |
| int32 port = 1; |
| } |
| |
| service PonSim { |
| rpc SendFrame(PonSimFrame) |
| returns (google.protobuf.Empty) {} |
| |
| rpc ReceiveFrames(google.protobuf.Empty) |
| returns (stream PonSimFrame) {} |
| |
| rpc GetDeviceInfo(google.protobuf.Empty) |
| returns(PonSimDeviceInfo) {} |
| |
| rpc UpdateFlowTable(FlowTable) |
| returns(google.protobuf.Empty) {} |
| |
| rpc GetStats(google.protobuf.Empty) |
| returns(PonSimMetrics) {} |
| |
| } |