Relay Cluster Load Balancing for P2P Network Overload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In scenarios where multiple clients need to communicate through a relay server, such as in P2P networks using the TURN protocol, a single relay server can become overloaded as the number of users increases, failing to meet business demands for efficient communication.
Innovation Solution
A relay cluster is implemented, comprising a load balancing server and multiple relay servers, where clients send relay request packets with a routable transaction ID containing a mode field and routing information field, allowing the load balancing server to allocate and distribute relay demands across multiple relay servers, ensuring efficient communication by establishing relay channels based on acquired routing information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single relay server is used, then the system structure is simple, but the relay server becomes overloaded when user quantity increases dramatically
Solution Approach 1:
The patent divides a single relay server into multiple relay servers (first relay server, second relay server, etc.) and introduces a load balancing server to distribute connections. This segmentation allows the system to handle increased user loads by spreading connections across multiple servers, preventing any single server from becoming overloaded while maintaining manageable system structure through modular architecture.
2Reliability
If multiple relay servers are deployed, then the relay service capability increases, but the system complexity increases
Solution Approach 1:
The load balancing server acts as an intermediary between clients and multiple relay servers. It receives connection requests from clients, determines the appropriate relay server based on routing information, and forwards requests accordingly. This intermediary approach increases relay service capability by distributing load across multiple servers while managing system complexity by centralizing the coordination logic in the load balancing server.
Solution Approach 2:
Instead of having multiple relay servers directly manage client connections and coordinate among themselves, the patent inverts the architecture by introducing a dedicated load balancing server that handles all connection routing decisions. This inversion simplifies the overall system structure by centralizing control logic, even though it adds a component, because the individual relay servers become simpler and more focused on their core relay function.
3Ease of operation
If relay demands are concentrated on one server, then connection establishment is simple, but the server cannot satisfy business needs when users increase
Solution Approach 1:
The patent implements dynamic load distribution where the load balancing server can adaptively route connections to different relay servers based on current system state and routing information. This dynamic approach maintains simple connection establishment from the client perspective while significantly increasing overall relay processing capacity by flexibly distributing demands across multiple servers according to their availability and load conditions.
Data Source
AI summary
Embodiments of this specification provide a communication method and apparatus based on a relay cluster. The relay cluster includes a load balancing server and at least two relay servers. The communication method includes: receiving a relay request packet sent by a client, where the relay request packet includes a transaction identifier, and the transaction identifier includes a mode field and a routing information field; acquiring routing information of a first relay server of the at least two relay servers based on a value of the mode field and a value of the routing information field in the relay request packet; and sending a relay allocation packet carrying the routing information of the first relay server to the client, so that the client establishes a relay channel based on the routing information of the first relay server.


