blob: e477d984b227c35802c46f2fc844d8ec1e9d52a7 [file] [log] [blame]
khenaidooabad44c2018-08-03 16:58:35 -04001syntax = "proto3";
2
3option go_package = "github.com/opencord/voltha-go/protos/voltha";
4
5package voltha;
6
7import "google/protobuf/empty.proto";
8import "openflow_13.proto";
9
10
khenaidoob9203542018-09-17 22:56:37 -040011message PonSimOnuDeviceInfo {
12 int32 uni_port = 1;
13 string serial_number = 2;
14}
15
khenaidooabad44c2018-08-03 16:58:35 -040016message PonSimDeviceInfo {
17 int32 nni_port = 1;
khenaidoob9203542018-09-17 22:56:37 -040018 repeated PonSimOnuDeviceInfo onus = 2;
khenaidooabad44c2018-08-03 16:58:35 -040019}
20
21message FlowTable {
22 int32 port = 1; // Used to address right device
23 repeated openflow_13.ofp_flow_stats flows = 2;
24}
25
26message PonSimFrame {
27 string id = 1;
28 bytes payload = 2;
khenaidoob9203542018-09-17 22:56:37 -040029 int32 out_port = 3;
khenaidooabad44c2018-08-03 16:58:35 -040030}
31
32message PonSimPacketCounter {
33 string name = 1;
34 int64 value = 2;
35}
36
37message PonSimPortMetrics {
38 string port_name = 1;
39 repeated PonSimPacketCounter packets = 2;
40}
41
42message PonSimMetrics {
43 string device = 1;
44 repeated PonSimPortMetrics metrics = 2;
45}
46
47service PonSim {
48 rpc SendFrame(PonSimFrame)
49 returns (google.protobuf.Empty) {}
50
51 rpc ReceiveFrames(google.protobuf.Empty)
52 returns (stream PonSimFrame) {}
53
54 rpc GetDeviceInfo(google.protobuf.Empty)
55 returns(PonSimDeviceInfo) {}
56
57 rpc UpdateFlowTable(FlowTable)
58 returns(google.protobuf.Empty) {}
59
60 rpc GetStats(google.protobuf.Empty)
61 returns(PonSimMetrics) {}
62
63}