Reverse-Direction Packet Processing in Virtualized Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized networks, distributing logical middleboxes creates challenges such as inefficient packet processing due to the need for centralized appliances and state sharing issues between distributed middlebox elements, particularly in handling bi-directional stateful traffic and resolving connection conflicts.

Innovation Solution

Implementing novel packet processing techniques that dynamically generate flow entries at managed forwarding elements to resolve conflicts and automatically forward reverse-direction traffic, enabling first-hop processing of bi-directional stateful traffic by distributing logical processing across host machines and using high-priority flow entries to manage connection state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If logical processing is performed entirely at the first hop virtualization software, then processing efficiency is improved, but the need for centralized middlebox appliances increases and state sharing issues arise

Engineering Contradiction:
Improvepacket processing efficiencyVSAvoidcentralized middlebox architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the middlebox functionality into distributed instances across multiple host machines. Each managed forwarding element hosts local middlebox processing capabilities, dividing the centralized function into distributed units that operate independently while maintaining coordination through flow entry synchronization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimension centralized middlebox architecture to a multi-dimensional distributed architecture where middlebox instances are spread across multiple hosts and forwarding elements. This dimensional shift allows parallel processing while maintaining functional equivalence through coordinated flow entries.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If logical processing is distributed across managed forwarding elements, then the need for centralized appliances is reduced, but connection state conflicts arise between distributed middlebox elements

Engineering Contradiction:
Improvecentralized appliance dependencyVSAvoidconnection state consistency
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent introduces flow entries as intermediary data structures that mediate between distributed middlebox instances. These flow entries contain connection state information and routing rules that act as a shared language and coordination mechanism, allowing distributed elements to maintain consistency without direct communication.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent performs preliminary actions by pre-establishing flow entries that encode connection state and routing information before packets arrive. This advance preparation ensures that distributed middlebox instances have the necessary state information ready, preventing conflicts during actual packet processing.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If reverse-direction traffic is processed at the receiving side, then processing autonomy is improved, but connection state information is lost

Engineering Contradiction:
Improveprocessing autonomyVSAvoidconnection state information
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent creates copies of connection state information in the form of flow entries at both the sending and receiving managed forwarding elements. The receiving side possesses a copy of the necessary state information through these flow entries, enabling autonomous processing while maintaining consistency with the sending side's state.

Inventive Principle:
Principle #26Copying

4Reliability

If flow entries are dynamically generated to forward reverse-direction traffic, then conflict resolution is improved, but processing complexity increases

Engineering Contradiction:
Improveconnection conflict resolutionVSAvoiddynamic flow entry management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic flow entry generation where the receiving managed forwarding element automatically creates appropriate flow entries upon receiving initial packets. This dynamic behavior allows the system to adapt to new connections automatically, resolving conflicts through programmatically generated routing rules rather than static configurations.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9602404B2Last-hop processing for reverse direction packets
Publication Date: 2017.03.21 VMWARE INC
  • US9602404B2 patent drawing
  • US9602404B2 patent drawing
  • US9602404B2 patent drawing

AI summary

Some embodiments provide a method for a first managed forwarding element that implements a logical network. The method receives a packet from a second managed forwarding element. The first packet has an initial set of characteristics defining a first connection between a source machine connected to the second managed forwarding element and a destination machine connected to the first managed forwarding element. The method determines whether a second connection exists with the initial set of characteristics between a different machine connected to a third managed forwarding element and the destination machine. When a second connection exists with the initial set of characteristics, the method modifies at least one characteristic of the packet such that the modified packet does not have the same set of characteristics. The method delivers the modified packet to the destination machine.