Stacked Network Devices With Multiple Master Nodes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In wireless network configurations, stacked switches or routers with a single active controller can become a bottleneck and a single point of failure, degrading communication performance and user experience.
Innovation Solution
Implementing a stack of computer network devices with multiple controllers operating as master nodes, sharing a synchronized database to distribute network functions and dynamically adjust the number of controllers based on utilization and performance, thereby improving scalability and communication performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single active controller is used in stacked switches or routers, then device complexity is reduced and ease of operation is improved, but communication performance degrades and reliability decreases due to bottlenecks and single point of failure
Solution Approach 1:
The system segments the controller functionality by introducing multiple controller instances (first controller instance and second controller instance) that operate independently yet cooperatively. Each controller instance can assume master or standby roles, dividing the single point of failure into multiple redundant components. This segmentation allows the system to maintain reliability while managing complexity through structured role distribution and state synchronization mechanisms.
2Productivity
If multiple controllers operate as master nodes with synchronized databases, then communication performance and reliability improve, but device complexity increases
Solution Approach 1:
The system merges multiple controller instances into a coordinated master-node ensemble where first and second controller instances work together as distributed master nodes. They share a synchronized database system, combining their computational resources and control capabilities to improve communication performance. The merging is facilitated by standardized synchronization protocols that manage database consistency across controllers, allowing performance scaling while containing complexity through unified architectural patterns.
Solution Approach 2:
The system implements dynamic role assignment where controller instances can transition between master and standby roles based on operational conditions, utilization metrics, and performance requirements. This dynamic behavior allows the system to adapt to changing workloads and maintain optimal communication performance. The dynamic nature is managed through state synchronization mechanisms that track controller roles and database consistency states, balancing performance improvements with controlled complexity through automated role management.
3Productivity
If a single master node performs all network functions, then device complexity is minimized, but the master node becomes a bottleneck degrading communication performance
Solution Approach 1:
The system segments the master node functionality by distributing network function processing across multiple controller instances. The first controller instance and second controller instance each handle portions of network function computations, dividing the computational load to prevent bottlenecks. This segmentation increases throughput by enabling parallel processing of network functions while maintaining manageable complexity through clear role definition and state synchronization protocols.
Data Source
AI summary
An electronic device is described. The electronic device includes a stack of computer network devices, such as a stack of switches and/or routers. This stack of computer network devices includes data planes and ports for directing packets or frames in a wireless network based at least in part on destinations of the packets or frames. Moreover, the electronic device may include multiple controllers (such as processors) that operate as master nodes and that perform network functions for the stack of computer network devices using a database. This database may include a common database that is accessible by the multiple controllers or multiple instances of the database in the multiple controllers, where the multiple instances of the database are synchronized.


