Centralized Application-Layer Routing at Edge Network Nodes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for configuring application-layer routing at the edge of online application service provider networks are inefficient due to static and manually maintained configurations, which do not scale well with increasing points-of-presence and dynamic network conditions.
Innovation Solution
A centralized approach is adopted, modeling the network as a directed graph to automatically determine optimal routing configurations based on capacity and cost constraints, using algorithms like minimum-cost maximum flow to dynamically adjust routing weights and optimize message flow across the network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If static and manually maintained routing configurations are used at points-of-presence, then routing setup is simple and manageable, but the system does not scale well with increasing points-of-presence and dynamic network conditions
Solution Approach 1:
A centralized routing configuration service is introduced as an intermediary between network administrators and distributed points-of-presence. This service automatically generates, updates, and distributes routing configurations to multiple points-of-presence, eliminating the need for manual configuration at each location and enabling scalable adaptation to changing network conditions.
Solution Approach 2:
The routing configuration system transitions from static manual configuration to dynamic automated configuration. The centralized service continuously monitors network conditions and automatically adjusts routing weights and configurations in real-time, allowing the system to adapt to dynamic changes without manual intervention.
2Productivity
If more points-of-presence are deployed to improve service coverage and responsiveness, then user satisfaction increases, but manual configuration and maintenance becomes increasingly difficult and error-prone
Solution Approach 1:
Points-of-presence are equipped with automated agents that self-configure based on instructions from the centralized routing configuration service. Each point-of-presence automatically receives and applies routing configurations without requiring manual setup or maintenance by local administrators, greatly simplifying operations as the network scales.
Solution Approach 2:
The centralized routing configuration service provides a universal configuration mechanism that serves all points-of-presence regardless of their specific locations or functions. This single system handles configuration for the entire distributed network, making the operation and maintenance process uniform and scalable across all deployment locations.
3Productivity
If geographic proximity-based routing is used to minimize communication cost, then network efficiency improves, but the system cannot optimize for other factors like data center capacity and utilization
Solution Approach 1:
The routing configuration system optimizes multiple parameters simultaneously including geographic distance, data center capacity, current utilization levels, and network conditions. By changing and balancing multiple parameters rather than relying solely on geographic proximity, the system achieves comprehensive optimization across diverse constraints and objectives.
Solution Approach 2:
The centralized routing configuration service continuously receives feedback about data center capacity, utilization levels, and network conditions from across the distributed system. This feedback loop enables the service to dynamically adjust routing configurations to optimize for multiple factors beyond simple geographic proximity, adapting to real-time changes in system state.
Data Source
AI summary
Techniques for centralized application-layer routing at the edge of an online application service provider network. In one embodiment, for example, a method comprises storing data representing a directed graph; based at least on a respective cost and the respective capacity associated with directed edges in the directed graph, determining a respective edge flow value for each directed edge; based at least on the respective edge flow value for a particular directed edge that connects a first node in directed graph to a second node in the directed graph, determining a weight for a location in a data communications network represented by the second node; receiving an application-layer request message at a location in the network represented by the first node; and selecting, based at least on the weight, the location represented by the second node to which to route the application-layer request message in the network.


