Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 1 | syntax = "proto3"; |
| 2 | |
Stephane Barbarie | 3559506 | 2018-02-08 08:34:39 -0500 | [diff] [blame] | 3 | option go_package = "github.com/opencord/voltha/protos/go/voltha"; |
| 4 | |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 5 | package voltha; |
| 6 | |
| 7 | import "google/protobuf/empty.proto"; |
| 8 | import "openflow_13.proto"; |
Nikolay Titov | 89004ec | 2017-06-19 18:22:42 -0400 | [diff] [blame] | 9 | import "bbf_fiber_base.proto"; |
Nikolay Titov | 176f1db | 2017-08-10 12:38:43 -0400 | [diff] [blame] | 10 | import "bbf_fiber_gemport_body.proto"; |
| 11 | import "bbf_fiber_multicast_distribution_set_body.proto"; |
| 12 | import "bbf_fiber_multicast_gemport_body.proto"; |
| 13 | import "bbf_fiber_tcont_body.proto"; |
| 14 | import "bbf_fiber_traffic_descriptor_profile_body.proto"; |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 15 | |
Andy Bavier | ea82b46 | 2018-07-27 16:48:13 -0700 | [diff] [blame^] | 16 | message PonSimOnuDeviceInfo { |
| 17 | int32 uni_port = 1; |
| 18 | string serial_number = 2; |
| 19 | } |
| 20 | |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 21 | message PonSimDeviceInfo { |
| 22 | int32 nni_port = 1; |
Andy Bavier | ea82b46 | 2018-07-27 16:48:13 -0700 | [diff] [blame^] | 23 | repeated PonSimOnuDeviceInfo onus = 2; |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 24 | } |
| 25 | |
| 26 | message FlowTable { |
| 27 | int32 port = 1; // Used to address right device |
| 28 | repeated openflow_13.ofp_flow_stats flows = 2; |
| 29 | } |
| 30 | |
Stephane Barbarie | 3559506 | 2018-02-08 08:34:39 -0500 | [diff] [blame] | 31 | message PonSimFrame { |
| 32 | string id = 1; |
| 33 | bytes payload = 2; |
| 34 | } |
| 35 | |
Sergio Slobodrian | 98eff41 | 2017-03-15 14:46:30 -0400 | [diff] [blame] | 36 | message PonSimPacketCounter { |
| 37 | string name = 1; |
| 38 | int64 value = 2; |
| 39 | } |
| 40 | |
| 41 | message PonSimPortMetrics { |
| 42 | string port_name = 1; |
| 43 | repeated PonSimPacketCounter packets = 2; |
| 44 | } |
| 45 | |
| 46 | message PonSimMetrics { |
| 47 | string device = 1; |
| 48 | repeated PonSimPortMetrics metrics = 2; |
| 49 | } |
| 50 | |
Nikolay Titov | 176f1db | 2017-08-10 12:38:43 -0400 | [diff] [blame] | 51 | message TcontInterfaceConfig { |
| 52 | bbf_fiber.TrafficDescriptorProfileData |
| 53 | traffic_descriptor_profile_config_data = 1; |
| 54 | bbf_fiber.TcontsConfigData tconts_config_data = 2; |
| 55 | } |
| 56 | |
| 57 | message InterfaceConfig { |
| 58 | oneof interface_type { |
| 59 | bbf_fiber.ChannelgroupConfig channel_group_config = 1; |
| 60 | bbf_fiber.ChannelpartitionConfig channel_partition_config = 2; |
| 61 | bbf_fiber.ChannelpairConfig channel_pair_config = 3; |
| 62 | bbf_fiber.ChannelterminationConfig channel_termination_config = 4; |
| 63 | bbf_fiber.OntaniConfig ont_ani_config = 5; |
| 64 | bbf_fiber.VOntaniConfig vont_ani_config = 6; |
| 65 | bbf_fiber.VEnetConfig venet_config = 7; |
| 66 | bbf_fiber.TrafficDescriptorProfileData |
| 67 | traffic_descriptor_profile_config_data = 8; |
| 68 | bbf_fiber.TcontsConfigData tconts_config_data = 9; |
| 69 | bbf_fiber.GemportsConfigData gemports_config_data = 10; |
| 70 | bbf_fiber.MulticastGemportsConfigData |
| 71 | multicast_gemports_config_data = 11; |
| 72 | bbf_fiber.MulticastDistributionSetData |
| 73 | multicast_distribution_set_data = 12; |
| 74 | } |
Nikolay Titov | 89004ec | 2017-06-19 18:22:42 -0400 | [diff] [blame] | 75 | } |
Sergio Slobodrian | 98eff41 | 2017-03-15 14:46:30 -0400 | [diff] [blame] | 76 | |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 77 | service PonSim { |
Stephane Barbarie | 3559506 | 2018-02-08 08:34:39 -0500 | [diff] [blame] | 78 | rpc SendFrame(PonSimFrame) |
| 79 | returns (google.protobuf.Empty) {} |
| 80 | |
| 81 | rpc ReceiveFrames(google.protobuf.Empty) |
| 82 | returns (stream PonSimFrame) {} |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 83 | |
| 84 | rpc GetDeviceInfo(google.protobuf.Empty) |
| 85 | returns(PonSimDeviceInfo) {} |
| 86 | |
| 87 | rpc UpdateFlowTable(FlowTable) |
| 88 | returns(google.protobuf.Empty) {} |
| 89 | |
Sergio Slobodrian | 98eff41 | 2017-03-15 14:46:30 -0400 | [diff] [blame] | 90 | rpc GetStats(google.protobuf.Empty) |
| 91 | returns(PonSimMetrics) {} |
Nikolay Titov | 89004ec | 2017-06-19 18:22:42 -0400 | [diff] [blame] | 92 | |
| 93 | } |
| 94 | |
Nikolay Titov | 176f1db | 2017-08-10 12:38:43 -0400 | [diff] [blame] | 95 | service XPonSim { |
| 96 | |
Nikolay Titov | 89004ec | 2017-06-19 18:22:42 -0400 | [diff] [blame] | 97 | rpc CreateInterface(InterfaceConfig) |
| 98 | returns(google.protobuf.Empty) {} |
| 99 | |
| 100 | rpc UpdateInterface(InterfaceConfig) |
| 101 | returns(google.protobuf.Empty) {} |
| 102 | |
| 103 | rpc RemoveInterface(InterfaceConfig) |
| 104 | returns(google.protobuf.Empty) {} |
Nikolay Titov | 176f1db | 2017-08-10 12:38:43 -0400 | [diff] [blame] | 105 | |
| 106 | rpc CreateTcont(TcontInterfaceConfig) |
| 107 | returns(google.protobuf.Empty) {} |
| 108 | |
| 109 | rpc UpdateTcont(TcontInterfaceConfig) |
| 110 | returns(google.protobuf.Empty) {} |
| 111 | |
| 112 | rpc RemoveTcont(TcontInterfaceConfig) |
| 113 | returns(google.protobuf.Empty) {} |
| 114 | |
| 115 | rpc CreateGemport(InterfaceConfig) |
| 116 | returns(google.protobuf.Empty) {} |
| 117 | |
| 118 | rpc UpdateGemport(InterfaceConfig) |
| 119 | returns(google.protobuf.Empty) {} |
| 120 | |
| 121 | rpc RemoveGemport(InterfaceConfig) |
| 122 | returns(google.protobuf.Empty) {} |
| 123 | |
| 124 | rpc CreateMulticastGemport(InterfaceConfig) |
| 125 | returns(google.protobuf.Empty) {} |
| 126 | |
| 127 | rpc UpdateMulticastGemport(InterfaceConfig) |
| 128 | returns(google.protobuf.Empty) {} |
| 129 | |
| 130 | rpc RemoveMulticastGemport(InterfaceConfig) |
| 131 | returns(google.protobuf.Empty) {} |
| 132 | |
| 133 | rpc CreateMulticastDistributionSet(InterfaceConfig) |
| 134 | returns(google.protobuf.Empty) {} |
| 135 | |
| 136 | rpc UpdateMulticastDistributionSet(InterfaceConfig) |
| 137 | returns(google.protobuf.Empty) {} |
| 138 | |
| 139 | rpc RemoveMulticastDistributionSet(InterfaceConfig) |
| 140 | returns(google.protobuf.Empty) {} |
Zsolt Haraszti | 656ecc6 | 2016-12-28 15:08:23 -0800 | [diff] [blame] | 141 | } |