experimenter optical multipart request and reply messages to work with LINC-OE
diff --git a/openflow_input/circuit b/openflow_input/circuit
index 9377d6d..87be023 100644
--- a/openflow_input/circuit
+++ b/openflow_input/circuit
@@ -79,6 +79,7 @@
};
+
struct of_circuit_ports_request : of_experimenter_stats_request {
uint8_t version;
uint8_t type == 18;
@@ -87,10 +88,11 @@
uint16_t stats_type == 0xffff;
enum ofp_stats_request_flags flags;
pad(4);
- uint32_t experimenter == 0x5c16c8;
- uint32_t subtype == 15;
+ uint32_t experimenter == 0x748771;
+ uint32_t subtype == 13;
};
+
struct of_circuit_ports_reply : of_experimenter_stats_reply {
uint8_t version;
uint8_t type == 19;
@@ -99,6 +101,53 @@
uint16_t stats_type == 0xffff;
enum ofp_stats_reply_flags flags;
pad(4);
- uint32_t experimenter == 0x5c16c8;
- uint32_t subtype == ?;
+ uint32_t experimenter == 0x748771;
+ uint32_t subtype == 13;
+ list(of_port_optical_t) entries;
};
+
+
+struct of_port_optical {
+ of_port_no_t port_no;
+ uint16_t length;
+ pad(2);
+ of_mac_addr_t hw_addr;
+ pad(2);
+ of_port_name_t name;
+ enum ofp_port_config config;
+ enum ofp_port_state state;
+ list(of_port_desc_prop_optical_transport_t) desc;
+};
+
+struct of_port_desc_prop_optical_transport {
+ uint16_t type;
+ uint16_t length;
+ uint8_t port_signal_type;
+ uint8_t reserved;
+ pad(2);
+};
+
+struct of_port_optical_transport_application_code
+{
+ uint16_t feature_type;
+ uint8_t oic_type;
+ of_app_code_t app_code;
+};
+
+
+struct of_port_optical_transport_layer_entry {
+ uint8_t layer_class;
+ uint8_t signal_type;
+ uint8_t adaptation;
+ pad(5);
+};
+
+
+/* ODU Layer Stack Feature Encoding */
+struct of_port_optical_transport_layer_stack {
+ uint16_t feature_type;
+ uint16_t length;
+ pad(4);
+ list(of_port_optical_transport_layer_entry_t) entries;
+};
+