Load Balancer Offloading Network I/O for Game Session Redundancy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Game-hosting services in cloud-based networks face inefficiencies such as network latency, server failures, and overutilization of resources, which can lead to undesirable user experiences and game session disruptions.
Innovation Solution
Implementing a load balancer between client devices and servers to manage game state data, with a primary and secondary server setup, where the load balancer handles network I/O tasks and seamlessly transitions the game session to the secondary server in case of primary server failure, optimizing resource allocation and infrastructure utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single server hosts a game session, then the device complexity is low, but the reliability deteriorates due to server failure risk
Solution Approach 1:
The patent applies local quality by differentiating the roles of servers in the architecture. The primary server handles active game session management while the secondary server maintains standby capacity. This role differentiation allows the system to achieve high reliability through redundancy without requiring all servers to have identical complex configurations, thus resolving the contradiction between reliability and device complexity.
Solution Approach 2:
The patent implements beforehand cushioning by pre-configuring a secondary server in standby mode before any failure occurs. This standby server is prepared in advance to immediately take over if the primary server fails, providing a cushion against potential failures. This approach ensures session continuity without requiring complex real-time failover mechanisms, balancing reliability with manageable system complexity.
2Reliability
If multiple servers are used for redundancy, then the reliability improves, but the device complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the server infrastructure into distinct functional segments: a primary server segment for active game hosting and a secondary server segment for standby redundancy. This segmentation allows each segment to be managed independently with optimized complexity levels, achieving reliable failover without requiring the entire system to operate at maximum complexity.
Solution Approach 2:
The load balancer serves as an intermediary component that manages the complexity of the multi-server architecture. It automatically routes traffic to the appropriate server and handles the coordination between primary and secondary servers, shielding the game logic from the complexity of server management. This intermediary approach enables redundancy without burdening the game session management with complex failover logic.
3Productivity
If servers handle all network I/O tasks, then the device complexity is low, but the productivity deteriorates due to overutilization
Solution Approach 1:
The patent applies the taking out principle by extracting network I/O tasks from the game servers and dedicating them to the load balancer. This separation allows game servers to focus exclusively on game logic and session management, improving their productivity and hosting capacity. The load balancer handles all network communication, reducing the computational burden on game servers without significantly increasing overall system complexity.
4Productivity
If computing resources are concentrated on few servers, then the device complexity is low, but the productivity deteriorates due to overutilization
Solution Approach 1:
The patent applies dynamics by enabling flexible resource distribution across multiple servers based on demand. The load balancer dynamically allocates game sessions to available servers, allowing the system to scale productivity according to infrastructure capacity. This dynamic resource distribution improves overall infrastructure utilization without requiring complex manual management, as the load balancer automatically optimizes the allocation based on current server availability and load conditions.
Data Source
AI summary
Techniques implemented by a game-hosting service to place a load balancer between client devices engaged in a game session and servers that maintain state data for the game session. Rather than having a single server maintain state data and host the game session, the load balancer will broadcast action data received from the client devices to the server that is hosting the game session, or “primary server,” and also to a redundant server that is maintaining state data for the game session, or “secondary server.” Thus, if the primary server is unable to continue hosting the session, the secondary server may begin hosting the game session using the state data maintained for the game session. Further, by offloading the network input/output (I/O) tasks of communicating with the client devices from the server to the load balancer, the server can allocate larger amounts of resources to hosting game sessions.


