Server-Controlled Path Selection via ToS Field Override
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current BGP-based path selection in network routing leads to unbalanced utilization of available paths, inadequate response to failures, and lack of end-to-end connectivity awareness, resulting in suboptimal content delivery and potential traffic loss.
Innovation Solution
Implementing application or server-controlled path selection using the ToS field in IP headers to override BGP operations, allowing servers to proactively choose optimal transit provider paths and failover to alternative paths based on performance metrics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Extent of automation
If BGP-based path selection is used, then path selection is automated at router level, but path utilization becomes unbalanced and servers have no control over path selection
Solution Approach 1:
The patent inverts the traditional routing control model by moving path selection control from the router level (BGP) to the application/server level. Instead of routers automatically selecting paths based on BGP advertisements, servers now control path selection by setting ToS values in IP headers, which routers then use to determine the path. This inversion gives servers direct control while maintaining automated router-level path determination based on server instructions.
Solution Approach 2:
The ToS field in the IP header serves as an intermediary mechanism between server intent and router action. The server sets the ToS value to indicate its path selection preference, and the router uses this ToS value as the basis for path selection. This intermediary allows the server to control path selection without directly modifying BGP operations, resolving the contradiction between automation and server control.
2Reliability
If BGP router selects optimal path based on advertisements, then path selection follows protocol standards, but traffic load becomes concentrated on single path causing congestion
Solution Approach 1:
The patent introduces dynamic path selection capability where servers can change the ToS value in IP headers to direct traffic along different paths. This allows the network to dynamically adapt traffic distribution based on current conditions, preventing congestion on single paths while maintaining BGP protocol compliance. The router dynamically selects paths based on the ToS values provided by servers, enabling flexible load distribution.
Solution Approach 2:
The patent changes the parameter used for path selection from BGP route advertisements to ToS values in IP headers. By using ToS values as the selection parameter, the system can differentiate traffic flows and distribute them across multiple paths based on server-defined criteria. This parameter change enables balanced path utilization while maintaining compatibility with existing BGP-based routing infrastructure.
3Ease of operation
If BGP update messages advertise hop count, then routing follows shortest path, but performance metrics like latency and packet loss are not considered
Solution Approach 1:
The patent segments the path selection function into two independent parts: BGP continues to handle basic route advertisement and hop count information, while a new ToS-based mechanism handles performance-optimized path selection. This segmentation allows BGP to maintain its simple operation while the ToS field enables precise performance-based routing decisions without modifying BGP's core functionality.
Solution Approach 2:
The patent adds another dimension to path selection by introducing ToS values as an additional criterion beyond hop count. Instead of relying solely on the single dimension of hop count from BGP advertisements, the system now uses ToS values to encode performance metrics and path preferences, enabling multi-dimensional path selection that considers both routing simplicity and performance precision.
4Stability of the object's composition
If BGP router responds to failures based on neighbor advertisements, then protocol stability is maintained, but response time to failures is delayed
Solution Approach 1:
The patent implements preliminary action by having servers proactively set ToS values to indicate path preferences and failure conditions before actual failures occur. When a server detects potential issues or wants to avoid certain paths, it pre-configures the ToS values in outgoing packets. This allows the network to preemptively route around potential failures, reducing response time while maintaining routing stability through the persistent ToS-based path selection.
Solution Approach 2:
The patent introduces feedback mechanisms where servers monitor path performance and adjust ToS values accordingly. When performance degradation or failures are detected, servers provide feedback by changing ToS values to redirect traffic. This closed-loop feedback system enables faster response to failures compared to BGP's open-loop advertisement-based approach, while maintaining stability through controlled, server-driven path changes.
Data Source
AI summary
Some embodiments override network or router level path selection with application or server controlled path selection by repurposing the type-of-service (ToS) or differentiated services header field. A mapping table maps different ToS values to different available transit provider paths to a particular destination. A server generating a packet to the destination selects one of the available paths according to any of load balanced, failover, or performance optimization criteria. The server sets the packet header ToS field with the value assigned to the selected path. A router operating in the same network as the server is configured with policy based routing rules that similarly map the ToS values to different transit provider paths to the particular destination network. Upon receiving the server generated packet, the router routes the packet to the destination network through the transit provider path identified in the packet header by the server set ToS value.


