Common Connection Tracker for Logical Switches

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Providing a stateful service across multiple equal cost multipathing (ECMP) paths is challenging due to the inability of service engines to track state information when different paths are used for forward and return data messages, leading to incorrect path selection and loss of state information.

Innovation Solution

A network edge device bonds interfaces to maintain deterministic forwarding and associate data messages with ingress interface identifiers, ensuring all traffic for an ECMP group goes through the same logical switches and service engine, maintaining state information across the network edge device.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple ECMP paths are used for data message forwarding, then path selection flexibility and load distribution are improved, but stateful service tracking capability deteriorates because service engines cannot track state information when different paths are used for forward and return data messages

Engineering Contradiction:
Improvepath selection flexibilityVSAvoidstateful service tracking capability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a path identifier as an intermediary element that is inserted into data messages at the ingress interface and read at the egress interface. This path identifier acts as a mediator that carries path selection information through the network infrastructure, enabling the service engine to identify which ECMP path was used without breaking the ECMP path selection mechanism. The path identifier bridges the gap between multiple ECMP paths and stateful service tracking requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The path identifier is nested within the data message structure, embedded in fields such as VLAN tags, IP headers, or TCP/UDP headers. This nesting approach allows the path identifier to travel with the data message through the network without requiring separate signaling channels or modifying the external network architecture. The path identifier is embedded within existing message structures, much like a nested doll, enabling state tracking while maintaining ECMP path flexibility.

Inventive Principle:
Principle #7Nested doll (Nesting)

2Productivity

If separate logical switches are used for separate ECMP paths, then path-specific processing is improved, but state information consistency deteriorates because return data messages may use different paths and lose state information

Engineering Contradiction:
Improvepath-specific processing efficiencyVSAvoidstate information consistency
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent merges the state tracking capability across multiple ECMP paths by using a common state table that is accessible by all logical switches handling different ECMP paths. The path identifier serves as a key to look up state information in this shared state table, ensuring that regardless of which ECMP path is used, the service engine can retrieve the correct state information. This merging approach maintains state consistency while allowing path-specific processing to occur.

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If path selection is made transparent to forwarding elements, then network simplicity is improved, but path tracking capability deteriorates because forwarding elements are not aware of the network edge device interposition

Engineering Contradiction:
Improvenetwork simplicityVSAvoidpath tracking capability
Core Design Contradiction:
Ease of operationVSDifficulty of detecting and measuring

Solution Approach 1:

The path identifier acts as an intermediary that enables path tracking without making the network edge device non-transparent. By embedding the path identifier within existing data message fields (such as VLAN tags or IP headers), the network edge device can insert and read path information without requiring forwarding elements to be aware of its presence or to perform additional processing. The path identifier mediates between the transparent forwarding requirement and the path tracking capability need.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20230179475A1Common connection tracker across multiple logical switches
Publication Date: 2023.06.08 VMWARE INC
  • US20230179475A1 patent drawing
  • US20230179475A1 patent drawing
  • US20230179475A1 patent drawing

AI summary

Some embodiments of the invention provide novel methods for providing a stateful service at a network edge device (e.g., an NSX edge) that has a plurality of north-facing interfaces (e.g., interfaces to an external network) and a plurality of corresponding south-facing interfaces (e.g., interfaces to a logical network). In some embodiments, each interface associated with a different bridge calls a service engine based on identifiers included in data messages received at the interface. Each data message flow is associated with a particular identifier that is associated with a particular service engine instance that provides the stateful service. In some embodiments, the interface that receives a data message identifies a service engine to provide the stateful service and provides the data message to the identified service engine. After processing the data message, the service engine provides the data message to the egress interface associated with the ingress interface.