Source Routing Entropy Header for Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In source routing networks, load balancing is complex due to the need to determine the exact format of variable-sized payload within source routing packets, leading to increased processing time and potential packet reordering, especially when dealing with ambiguous links or nodes that require randomness in routing decisions.
Innovation Solution
The introduction of an entropy-header with an entropy field within source routing packets allows network nodes to select next hop links or nodes randomly, using the entropy value to distribute packets evenly across multiple paths and avoid reordering by encapsulating the entropy field before the list of link IDs, enabling efficient routing even when link or node IDs are ambiguous.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a load balancing function is used to route source routing packets to one of multiple physical links, then traffic can be distributed across multiple paths, but the processing time at the network node increases due to the complexity of determining payload format and performing hashing
Solution Approach 1:
The entropy value is pre-computed and placed in the entropy-header before the packet reaches the network node. This eliminates the need for the node to perform complex payload analysis and hashing operations, as the routing decision data is already prepared in advance.
Solution Approach 2:
The entropy computation is extracted from the network node's processing function and performed separately by the packet source or a dedicated entity. This separates the complex hashing operation from the forwarding decision, allowing the node to make routing decisions based on pre-computed entropy values rather than performing real-time load balancing calculations.
2Productivity
If random selection is used to choose one of multiple physical links, then load balancing can be achieved, but packet reordering occurs which causes jitter and latency issues
Solution Approach 1:
The entropy value serves as a deterministic parameter that changes based on packet characteristics (such as source/destination addresses). Packets with identical characteristics produce the same entropy value and thus follow the same path, while packets with different characteristics produce different entropy values and may take different paths. This maintains packet ordering within flows while achieving load balancing across flows.
3Productivity
If the network node performs load balancing functions using payload information, then packets can be distributed across multiple paths, but the node must determine the exact format of variable-sized payload which increases device complexity
Solution Approach 1:
The entropy-header acts as an intermediary structure that carries pre-computed routing decision data. Instead of the network node directly analyzing variable-sized payloads to make routing decisions, the entropy-header provides a standardized, fixed-format field that encapsulates the necessary entropy information, simplifying the node's processing requirements.
Data Source
AI summary
A method implemented for providing a source of entropy in source routing, the method comprising receiving a source routing packet that comprises an entropy-header, wherein the entropy-header comprises an entropy field and a list of identifiers (IDs), determining a next hop ID from the list of IDs, determining whether the next hop ID identifies a plurality of routes used to reach a next hop node, selecting a first route from the plurality of routes using the entropy field, and transmitting the source routing packet via the first route, wherein the list of IDs indicates the route used to transport the source routing packet from a source to a destination.


