Network Interface Card Flow Table Matching for Virtual Switch Load Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud computing environments, the efficient processing of data packets is hindered by the limited hardware resources of computing devices, which are overwhelmed by the resource-intensive tasks of virtual switches, leading to reduced operating efficiency and potential impacts on virtual machine operations.

Innovation Solution

A data packet processing method where the Network Interface Card (NIC) queries a flow table set and, if unable to match a flow table, forwards the packet to a virtual switch to obtain the necessary flow table from an SDN controller, thereby reducing the operational load on the virtual switch and enhancing packet processing efficiency by distributing the workload between the NIC and the virtual switch.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the virtual switch performs flow table matching for all data packets, then complete routing control is achieved, but the hardware resources of the computing device are excessively occupied, reducing operating efficiency

Engineering Contradiction:
Improverouting control completenessVSAvoidoperating efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the flow table matching function by dividing the matching workload between the NIC (which maintains a local flow table for common patterns) and the virtual switch (which handles remaining packets). This segmentation allows the NIC to filter out routine traffic locally, reducing the burden on the virtual switch and freeing up hardware resources while maintaining complete routing control through the virtual switch's ultimate authority over packet forwarding decisions.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the virtual switch handles all packet forwarding tasks, then centralized control is maintained, but the resource burden on the virtual switch increases, affecting VM operations

Engineering Contradiction:
Improvecentralized controlVSAvoidresource burden
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent introduces the NIC as an intermediary component that assists the virtual switch in handling packet forwarding tasks. The NIC maintains a local flow table and performs initial matching for incoming packets, acting as a first line of defense. This intermediary role allows the virtual switch to maintain centralized control over routing decisions while offloading the resource-intensive matching operations to the NIC, thereby reducing the resource burden on the virtual switch and preventing interference with VM operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the NIC processes all data packets independently, then processing speed increases, but the ability to maintain consistent routing policies across the network decreases

Engineering Contradiction:
Improvepacket processing speedVSAvoidrouting policy consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent implements a feedback mechanism where the NIC and virtual switch continuously exchange information about flow table entries and routing decisions. When the virtual switch encounters a packet that requires policy enforcement or when routing policies are updated, it can push relevant flow table entries to the NIC. Conversely, the NIC can report unmatched packets or flow patterns back to the virtual switch for policy adjustment. This bidirectional feedback ensures that the NIC's independent processing remains aligned with the overall network routing policies maintained by the virtual switch.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3340064B1Network interface card, computer device and data packet processing method
Publication Date: 2020.12.02 HUAWEI TECH CO LTD
  • EP3340064B1 patent drawingFigure 1
  • EP3340064B1 patent drawingFigure 2a
  • EP3340064B1 patent drawingFigure 2b~2c

AI summary

This application discloses a data packet processing method, and the method is applied to a computing device in software-defined networking SDN. After receiving a data packet of a data flow, a NIC in the computing device queries a flow table set according to matching information of the data packet; and if a flow table is obtained from the flow table set by means of matching, the NIC processes the data packet according to the flow table; or if no flow table can be obtained from the flow table set by means of matching, the NIC sends the data packet to a virtual switch, and the virtual switch obtains a flow table corresponding to the data flow which comprises the data packet, and saves the flow table into the flow table set, so that the NIC can directly process a subsequent data packet of the data flow which comprises the data packet. According to the method provided in this application, an operating load of the virtual switch is reduced, and operating efficiency of the computing device is improved.