Server Bandwidth Conservation for Network Overload
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large numbers of users in the same geographic region can overload wireless cellular data networks, leading to socket timeouts and connection issues that reduce system responsiveness in social networking systems.
Innovation Solution
A social networking system detects geographic areas at risk of overload and transmits instructions to clients to throttle their upstream traffic, using a method that prioritizes content based on social relevance and employs preemptive throttling based on historical data and external event schedules to manage network capacity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If clients in a geographic region upload content simultaneously to the social networking system, then the system can process more user activities and increase productivity, but the wireless cellular data network may become overloaded causing socket timeouts and connection issues
Solution Approach 1:
The social networking system preemptively identifies geographic regions at risk of network overload by monitoring historical data and external event schedules (such as concerts or sports events). Before the overload occurs, the system transmits instructions to client devices in those regions to throttle their upstream traffic. This preliminary action prevents socket timeouts and connection issues by reducing traffic volume before the network becomes overloaded, thereby maintaining both productivity and reliability.
2Productivity
If the system allows all clients to upload content without restriction, then data transmission volume increases and productivity improves, but network bandwidth is exceeded causing failures
Solution Approach 1:
The system implements partial throttling of upstream traffic by instructing client devices to queue content for transmission rather than uploading immediately. This partial action reduces the instantaneous data transmission volume to prevent network bandwidth exhaustion while still allowing content to be uploaded eventually. The queuing mechanism ensures that uploads occur at a sustainable rate, maintaining both productivity and reliability.
3Reliability
If the system implements real-time traffic control to prevent network overload, then connection reliability improves, but system complexity increases due to monitoring and instruction transmission mechanisms
Solution Approach 1:
The system implements self-service traffic control by having client devices automatically throttle their own upstream traffic based on instructions received from the social networking system. The server monitors network conditions and sends throttling instructions, but the actual traffic control is performed by the client devices themselves. This approach improves reliability through real-time traffic management while minimizing system complexity by distributing the control function to clients rather than requiring complex centralized control mechanisms.
Data Source
AI summary
In one embodiment, a social networking system maintains a moving average of the number of connection problems, including socket timeouts and failed uploads, per client in a geographic area to determine whether the wireless data network serving the geographic area is overloaded. In response to detecting a network overload, the social networking system may transmit an instruction to the clients in the particular geographic area to enter one of a plurality of traffic throttling modes. In particular embodiments, the social networking system maintains a historical log of network overload conditions, and uses the historical log to generate an estimate of the wireless network capacity serving a geographic area. Thus, the social networking system may preemptively transmit instructions to clients to enter a bandwidth-conservation mode when the estimated traffic demand exceeds the estimated capacity for a particular geographic region.


