[VOL-1034, VOL-1035, VOL-1037] This commit consists of:
1) Implementation of inter-adapter communication using flows
as proxy message between an ONU and its parent OLT.
2) Update the protos to reflect the inter-adapter message structure
3) Cleanup the ponsim adapters to removed unsued references and
general cleanup.
Change-Id: Ibe913a80a96d601fed946d9b9db55bb8d4f2c15a
diff --git a/protos/core_adapter.proto b/protos/core_adapter.proto
index d828194..8b52a56 100644
--- a/protos/core_adapter.proto
+++ b/protos/core_adapter.proto
@@ -73,4 +73,35 @@
message PortCapability {
LogicalPort port = 1;
+}
+
+message InterAdapterMessageType {
+ enum Types {
+ FLOW_REQUEST = 0;
+ FLOW_RESPONSE = 1;
+ OMCI_REQUEST = 2;
+ OMCI_RESPONSE = 3;
+ METRICS_REQUEST = 4;
+ METRICS_RESPONSE = 5;
+ }
+}
+
+message InterAdapterHeader {
+ string id = 1;
+ InterAdapterMessageType.Types type = 2;
+ string from_topic = 3;
+ string to_topic = 4;
+ string to_device_id = 5;
+ string proxy_device_id = 6;
+ int64 timestamp = 7;
+}
+
+message InterAdapterResponseBody {
+ bool success = 1;
+ google.protobuf.Any result = 2;
+}
+
+message InterAdapterMessage {
+ InterAdapterHeader header = 1;
+ google.protobuf.Any body = 2;
}
\ No newline at end of file
diff --git a/protos/device.proto b/protos/device.proto
index 9c2d98c..61056e6 100644
--- a/protos/device.proto
+++ b/protos/device.proto
@@ -243,11 +243,12 @@
message ProxyAddress {
string device_id = 1; // Which device to use as proxy to this device
- uint32 channel_id = 2; // Sub-address within proxy
- uint32 channel_group_id = 5; // Channel Group index
- string channel_termination = 6; // Channel Termination name
- uint32 onu_id = 3; // onu identifier; optional
- uint32 onu_session_id = 4; // session identifier for the ONU; optional
+ string device_type = 2; // The device type of the proxy device to use as the adapter name
+ uint32 channel_id = 3; // Sub-address within proxy
+ uint32 channel_group_id = 4; // Channel Group index
+ string channel_termination = 5; // Channel Termination name
+ uint32 onu_id = 6; // onu identifier; optional
+ uint32 onu_session_id = 7; // session identifier for the ONU; optional
};
// Device contact MAC address (format: "xx:xx:xx:xx:xx:xx")