Load Balancer Partitioning for SDN Event Streams
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software-defined networks (SDNs) and Internet of Things (IoT) networks face inefficiencies in event stream processing due to centralized architectures, leading to cumbersome event streaming and consistency issues in geo-distributed deployments, with current solutions like Open Network Operating System (ONOS)/OpenDaylight wasting compute and infrastructure resources.
Innovation Solution
A load balancer separates incoming event streams into partitions based on topics, with a reactive router determining the appropriate module for processing, dynamically resizing partitions and queues to balance load and ensure efficient processing across SDN and IoT networks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If centralized architectures are used for SDN and IoT networks, then network control and management are simplified, but event stream processing efficiency deteriorates and resource wastage increases
Solution Approach 1:
The patent segments the centralized event stream processing architecture into distributed regional controllers, each handling events for specific geographic regions. The load balancer further segments incoming event streams into multiple partitions that are distributed across different regional controllers, enabling parallel processing and eliminating the single-point bottleneck while maintaining simplified control through standardized interfaces.
2Reliability
If dedicated connections are used for leadership election and data synchronization, then consistency is maintained, but synchronization issues and performance degradation occur in geo-distributed deployments
Solution Approach 1:
The patent extracts the leadership election and data synchronization functions from dedicated point-to-point connections and implements them through a publish-subscribe event stream model. Regional controllers subscribe to relevant event topics and receive updates through the event stream infrastructure, eliminating the need for dedicated synchronization connections and reducing network overhead while maintaining consistency through event-driven updates.
3Ease of operation
If current solutions like ONOS/ODL are used, then network management functionality is provided, but compute and infrastructure resources are wasted
Solution Approach 1:
The patent introduces a load balancer as an intermediary component that sits between event sources and regional controllers. This load balancer intelligently routes event streams to appropriate regional controllers based on partition key hashing, preventing unnecessary processing and resource consumption by directing events only to the responsible controller rather than having all controllers process all events.
4Device complexity
If static partition configuration is used, then system simplicity is maintained, but load balancing efficiency deteriorates under varying throughput conditions
Solution Approach 1:
The patent implements dynamic partition configuration where the number of partitions and their distribution across regional controllers can be adjusted based on observed load patterns and throughput requirements. The system monitors event stream volumes and can dynamically create, remove, or redistribute partitions to optimize load balancing, transitioning from static to adaptive configuration without requiring complete system redesign.
Data Source
AI summary
Various embodiments include devices and methods structured to provide an intelligent event processing offload, which can facilitate an efficient, geo-distributed tiered scalable event streaming and processing interconnect through an embedded adapter interconnect. Event streams received in a data handler from one or more networks can be separated into partitions. The loading of the event streams into the partitions can be tracked to balance the loading by controlling the number of partitions used. Packets of each partition can be sent to a respective reactive router that resides in a controlling application for further processing. Additional devices, systems, and methods can be implemented in a variety of applications.


