Anycast Flow Stickiness via Overlay Network Tunneling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Stateful services using conventional anycast techniques face issues with session disruption due to changes in network routing state, leading to packets being rerouted to different anycast interfaces, which can cause connection drops in long-lived sessions with high velocity networks.

Innovation Solution

Implementing an overlay network with IP tunneling technology to make anycast forwarding decisions at the overlay network level, ensuring that packets are routed to the same anycast endpoint throughout a session by encapsulating packets with destination information and using hashing techniques to maintain flow stickiness.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional anycast routing techniques are used, then load balancing and network availability are improved, but stateful sessions are disrupted when routing state changes

Engineering Contradiction:
Improveload balancing capabilityVSAvoidsession continuity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system pre-establishes flow state information in the overlay network device before packets are routed. By storing the mapping between source endpoints and anycast endpoints in advance, the system ensures that subsequent packets in the same flow are directed to the same anycast endpoint, preventing session disruption while maintaining load balancing capabilities

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an overlay network as an intermediary layer between the source endpoint and the anycast group. This overlay network device acts as a mediator that makes forwarding decisions based on flow state information, isolating the stateful session from the dynamic underlying network substrate and preventing routing changes from affecting active sessions

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If anycast routing state changes frequently, then network adaptability is improved, but session reliability deteriorates in high velocity networks

Engineering Contradiction:
Improvenetwork adaptabilityVSAvoidsession reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments the network into two distinct layers: the overlay network layer that handles flow-specific forwarding decisions, and the underlying network substrate that handles dynamic routing. This segmentation allows the overlay layer to maintain stable flow mappings while the substrate can adapt freely to network changes, resolving the contradiction between adaptability and reliability

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If packets are rerouted to different anycast interfaces during a session, then network flexibility is improved, but connection stability worsens

Engineering Contradiction:
Improverouting flexibilityVSAvoidconnection stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The system ensures continuous delivery of packets within the same flow to the same anycast endpoint by maintaining flow state information throughout the session. The overlay network device continuously uses the stored flow mapping to forward packets, ensuring uninterrupted service while allowing the underlying network to change routing paths freely

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9363102B1Methods and apparatus for implementing anycast flow stickiness in stateful sessions
Publication Date: 2016.06.07 AMAZON TECH INC
  • US9363102B1 patent drawing
  • US9363102B1 patent drawing
  • US9363102B1 patent drawing

AI summary

Methods and apparatus for implementing anycast flow stickiness in stateful sessions are described. For the first packet from a source device to an anycast group, a destination anycast endpoint is selected from the anycast group by a routing process via an algorithm that is specified for the anycast group. A record of the mapping of the source device to the destination anycast endpoint may be stored. Additional packets in the flow are routed to the same anycast endpoint as the first packet according to the stored information. Alternatively, a hashing technique may be used to route packets to an anycast endpoint. The packets may be encapsulated in an encapsulation format that includes network substrate routing information to the destination anycast endpoint; anycast forwarding decisions are made at the overlay network level and not at the network substrate level, and thus flow stickiness can be maintained.