Concurrent Native and Controller Routing Stacks for SDN Reliability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In software-defined networks, the loss of connection between a network controller and a network device disrupts the management of the routing table, leading to a lack of continuity in routing table management and potential network instability.
Innovation Solution
Implementing a native routing stack on the network device that operates concurrently with a controller routing stack, allowing for separate address configurations and route advertisements, ensuring continuous routing table management even when the connection to the network controller is lost.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If a network controller manages the routing table of a network device, then centralized control and routing management are achieved, but the system loses reliability when the connection between the network controller and network device is lost
Solution Approach 1:
The routing stack is segmented into two independent components: a controller routing stack that handles communication with the network controller, and a native routing stack that maintains autonomous routing capabilities. This segmentation allows the network device to continue routing packets independently when the controller connection is lost, thus resolving the contradiction between centralized control and reliability.
2Adaptability or versatility
If the network device relies on the network controller for routing table management, then routing policies can be centrally controlled, but the device cannot maintain routing continuity when the connection is lost
Solution Approach 1:
The native routing stack is pre-configured with routing capabilities and can autonomously manage the routing table before any connection loss occurs. This preliminary preparation ensures that when the controller connection is lost, the device can immediately continue routing operations without interruption, thus extending the duration of routing table management.
3Device complexity
If a single routing stack is used for communication with the network controller, then the system structure is simple, but the routing management becomes unstable when the controller connection is lost
Solution Approach 1:
The native routing stack acts as an intermediary that mediates between the controller routing stack and the routing table. When the controller connection is active, the native stack cooperates with the controller stack; when the connection is lost, the native stack independently maintains routing management. This intermediary role resolves the contradiction by adding a layer that improves reliability without significantly increasing overall system complexity.
Data Source
AI summary
The disclosure describes techniques for concurrently operating multiple network stacks, one operating natively and one operating remotely, to control the routing table within a router of a network. An example network device includes a control unit comprising one or more processors. A native routing stack executes on the control unit to exchange routing protocol advertisements with a peer network device in accordance with a routing protocol. The native routing stack is configured to insert first routing entries into a routing table. The first routing entries are based on the routing protocol advertisements. A controller interface executed by the control unit receives second routing entries from a network controller and inserts the second routing entries into the routing table. A routing process generates a forwarding table based on the first and second routing entries.


