Router Controller Group ID List for SDN Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing software-defined network (SDN) systems face challenges with load balancing, scalability, redundancy, fault detection, and bandwidth management due to centralized controller pools, leading to issues like latency, over-provisioning, and downtime during maintenance.
Innovation Solution
A method and system for managing control connections with a distributed control plane, where routers generate a controller group ID list and establish connections based on conditions such as available connections, previous connections, and existing connections with other groups, using tokens to manage connections and ensure efficient load distribution and redundancy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If a centralized controller pool is used in SDN, then network management convenience is improved, but load balancing and scalability deteriorate due to single-point congestion and geographic latency
Solution Approach 1:
The centralized controller pool is segmented into multiple distributed controller groups, each geographically distributed to reduce latency. Router components are assigned to specific controller groups based on location, distributing the load and improving both management convenience and load balancing efficiency simultaneously
2Reliability
If controller pool size is increased to handle scale and failures, then redundancy and availability are improved, but hardware over-provisioning and fault detection difficulty worsen
Solution Approach 1:
The controller pool is segmented into multiple smaller controller groups with defined roles and geographic distributions. This segmentation provides redundancy and fault isolation while reducing the complexity of managing a single large pool, as each group can be independently monitored and maintained
Solution Approach 2:
Controller group identifiers act as intermediaries between router components and individual controllers. This abstraction layer simplifies fault detection and management by providing a structured hierarchy, reducing the operational complexity of managing distributed controllers while maintaining reliability
3Adaptability or versatility
If router components freely choose controllers from the pool, then connection flexibility is improved, but load distribution and bandwidth control deteriorate
Solution Approach 1:
Different router components are assigned to different controller groups based on their geographic locations and specific functional requirements. This local quality approach maintains flexibility in controller selection while ensuring optimal load distribution and bandwidth control, as each component connects to the most appropriate controller group for its specific needs
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A method and system for managing connections with a distributed control plane is provided. The method includes generating, by a router, a controller identifier (ID) list comprising a plurality of controller group IDs of a plurality of controller groups, wherein one controller group ID uniquely identifies one controller group. The method also includes identifying a first controller group, by the router from the list, with which a connection is to be established. Further, the method includes establishing, by the router, the connection with a controller of the first controller group if at least one of following conditions is met 1) the router has not exhausted maximum number of connections, 2) the router has previously had a connection with the controller of the first controller group, and 3) the router has an existing connection with a controller of a second controller group not present in the list.