Network Controller Static Route Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional physical networking and previous implementations of logical routers lack support for static routes, which complicates processing and requires additional processing techniques that are not easily handled by software forwarding elements.
Innovation Solution
A network control system that manages logical routers, enabling static route support by using a network controller to receive and incorporate static routes, generate routing tables, and distribute them to forwarding elements, with a table mapping engine and route processing engine working together to process and implement these routes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If static routes are added to logical routers, then routing functionality and network management capability are improved, but processing complexity and implementation difficulty increase
Solution Approach 1:
The patent introduces a network controller as an intermediary component that manages static route configuration and processing. The controller receives static route definitions, performs the complex processing operations, and distributes routing tables to forwarding elements. This mediator approach allows static route functionality to be added without increasing the processing complexity of the logical routers themselves, as the complex operations are offloaded to the dedicated controller.
Solution Approach 2:
The routing functionality is segmented into distinct components: the network controller handles static route configuration and routing table generation, while forwarding elements handle packet forwarding based on distributed routing tables. This segmentation separates the complex processing tasks from the forwarding tasks, allowing static routes to be implemented without overloading the logical router processing capacity.
2Adaptability or versatility
If additional processing techniques are implemented in logical routers, then static route support is achieved, but ease of operation and software implementation simplicity deteriorate
Solution Approach 1:
The network controller serves as an intermediary that handles all complex processing operations for static routes. Software forwarding elements in logical routers do not need to implement additional processing techniques themselves; instead, they receive pre-processed routing tables from the controller. This maintains software implementation simplicity while achieving static route support through the intermediary controller.
Solution Approach 2:
The network controller automatically performs route processing, routing table generation, and distribution to forwarding elements without requiring manual intervention or complex software modifications in the logical routers. The system self-services by having the controller handle all processing tasks, leaving the forwarding elements with simple table lookup operations.
3Reliability
If manual route configuration is used in traditional routers, then routing control is achieved, but automation and efficiency are reduced
Solution Approach 1:
The network controller performs preliminary actions by automatically generating routing tables based on static route definitions and network topology information before packets need to be forwarded. The controller pre-calculates routes, resolves next-hop addresses, and distributes complete routing tables to forwarding elements in advance, eliminating the need for manual route configuration while maintaining reliable routing control.
Solution Approach 2:
The system implements feedback mechanisms where the network controller monitors network state, receives updates about connectivity changes, and automatically adjusts routing tables accordingly. This feedback loop maintains reliable routing control while keeping the system automated, as the controller continuously optimizes routes based on current network conditions without manual intervention.
Data Source
AI summary
Some embodiments provide a method for a network controller. The method receives configuration data, for a logical router managed by the network controller, that specifies at least one logical port for the logical router. The method automatically generates connected routes for the logical router based on network address ranges specified for the logical ports of the logical router. The method receives a manually input static route for the logical router. The method generates data tuples, for distribution to several managed network elements, based on the connected and static routes for the logical router in order for the several managed network elements to implement the logical router.


