Multi-Protocol SDN Controller Transaction Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current SDN controllers are limited to supporting a single protocol, such as OpenFlow, making them incompatible with network devices using different SDN protocols, and are unable to manage heterogeneous devices effectively in multi-protocol environments.
Innovation Solution
A multi-protocol SDN controller with a Service Abstraction Layer (SAL) that enables communication with multiple SDN protocols, allowing applications to interface with network devices in a protocol-agnostic manner, and dynamically selects the appropriate protocol based on device capabilities, supporting a wide range of protocols through plugin mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If an SDN controller supports a single protocol (e.g., OpenFlow), then the controller architecture is simple and easy to implement, but the controller cannot communicate with network devices using different SDN protocols
Solution Approach 1:
The SDN controller is segmented into multiple independent protocol support modules, each handling a specific SDN protocol (OpenFlow, NETCONF, RESTCONF, gRPC). These modules are organized as separate plugins that can be independently loaded and managed, allowing the controller to support multiple protocols without monolithic complexity
Solution Approach 2:
A transaction manager acts as an intermediary layer between the protocol-specific modules and the core controller functionality. This mediator coordinates transactions across multiple protocols, manages transactional semantics (commit/rollback), and handles protocol-specific nuances without requiring changes to the core controller logic
Solution Approach 3:
The controller implements a universal transaction management framework that works across all supported protocols. This framework provides common transactional semantics, error handling, and coordination mechanisms that are protocol-agnostic, allowing the same core logic to serve multiple protocol implementations
2Adaptability or versatility
If the SDN controller supports multiple protocols through plugin mechanisms, then the controller can manage heterogeneous network devices, but the device complexity and management overhead increase
Solution Approach 1:
The plugin architecture enables self-service where each protocol module independently manages its own configuration, validation, and operation. The transaction manager automatically routes transactions to appropriate protocol handlers and manages protocol-specific details without requiring manual intervention or complex configuration
Solution Approach 2:
The system implements feedback mechanisms where protocol modules report their capabilities, supported operations, and transaction outcomes back to the transaction manager. This feedback loop enables automatic protocol selection, capability negotiation, and adaptive transaction routing based on device and protocol state
3Reliability
If transactional operations are managed across multiple protocols, then service reliability is improved, but the complexity of managing transactional semantics across different protocols increases
Solution Approach 1:
The patent merges the transaction management functionality into a unified transaction manager that handles all protocols through a common interface. This consolidation combines protocol-specific transaction handlers with a centralized coordination layer, reducing overall system complexity while maintaining reliability across multi-protocol operations
Data Source
AI summary
A multi-protocol software-defined networking (SDN) controller receives receiving from one or more applications one or more requests for services to be performed by one or more of a plurality of network devices that communicate with the SDN controller by a plurality of different of SDN protocols. The requests are mapped to appropriate ones of the plurality of different SDN protocols to fulfill the services of the requests. The SDN controller sends to the respective one or more of the plurality of network devices, control messages according to appropriate ones of the plurality of different SDN protocols. Responses are received at the SDN controller from the one or more of the plurality of network devices, each response indicating a failure or a success for a corresponding request. Failures and successes of the responses are associated with appropriate ones of the requests.


