Virtual NIC IP-Based Packet Routing via Hardware Classifier

Solution Overview

Problem

Current network traffic management systems struggle to efficiently process and route unicast and multi-recipient packets, leading to inefficiencies in packet handling and resource utilization, particularly in virtualized environments where unique IP addresses are not adequately accounted for.

Innovation Solution

The system employs a network interface card (NIC) with a hardware classifier and virtual NICs (VNICs) that analyze inbound packets by destination IP address to route unicast packets to specific non-default receive rings and multi-recipient packets to a default receive ring, with software classifiers further processing these packets to ensure accurate distribution among virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a single default receive ring is used for all packets, then device complexity is reduced, but packet processing efficiency deteriorates due to inability to route unicast packets to specific virtual NICs

Engineering Contradiction:
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the single default receive ring into multiple dedicated receive rings, each associated with a specific virtual NIC. This allows unicast packets to be routed to the appropriate virtual NIC's receive ring based on destination IP address, improving packet processing efficiency while maintaining manageable complexity through structured segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hardware classifier acts as an intermediary between the incoming packets and the receive rings. It analyzes destination IP addresses and directs packets to the appropriate receive ring or virtual NIC, enabling efficient packet routing without requiring complex configuration at the virtual NIC level.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If hardware-based packet classification is used, then packet routing speed is improved, but adaptability deteriorates when virtual machines need custom IP address to receive ring mappings

Engineering Contradiction:
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The hardware classifier is designed with universal functionality to handle multiple packet types (unicast, broadcast, multicast) and can be configured to support various IP address to receive ring mappings. This allows the same hardware component to provide fast packet routing while adapting to different virtual machine configurations and network topologies.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system dynamically configures the hardware classifier and receive ring associations based on virtual machine requirements. IP address to receive ring mappings can be dynamically updated without requiring hardware reconfiguration, allowing the system to adapt to changing network conditions while maintaining fast packet routing performance.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If software-based packet classification is used, then adaptability to virtual machine configurations is improved, but processing speed deteriorates due to software overhead

Engineering Contradiction:
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent segments packet processing into two parts: hardware-based classification for common unicast packets to achieve high speed, and software-based classification for broadcast/multicast packets or complex routing scenarios to achieve adaptability. This segmentation allows each layer to optimize for its specific function.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The hardware classifier serves as an intermediary that handles the bulk of packet routing decisions at high speed, while the software classifier supplements it for specialized cases. This intermediary architecture allows the system to achieve both speed and adaptability by having each component operate in its optimal performance range.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Measurement precision

If multiple dedicated receive rings are created for each virtual NIC, then packet routing precision is improved, but device complexity increases

Engineering Contradiction:
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The hardware classifier acts as an intermediary that manages the complexity of routing decisions. It automatically determines which receive ring should handle a packet based on destination IP address analysis, providing precise packet routing while shielding the system from the complexity of manual receive ring management and configuration.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7684423B2System and method for virtual network interface cards based on internet protocol addresses
Publication Date: 2010.03.23
  • US7684423B2 patent drawing
  • US7684423B2 patent drawing
  • US7684423B2 patent drawing

AI summary

A system including a network interface card (NIC) associated with a Media Access Control (MAC) address and a host operatively connected to the NIC. The NIC includes a default hardware receive ring (HRR), a plurality of non-default HRRs, and a hardware classifier. The hardware classifier is configured to analyze an inbound packet using a destination Internet Protocol (IP) address and to send the inbound packet to one of the plurality of non-default HRRs if the inbound packet is a unicast packet, and to send the packet to the default HRR if the inbound packet is an inbound multi-recipient packet. The host includes a plurality of virtual NICs (VNICs) and an inbound software classifier, that includes a plurality of software receive rings (SRRs) and is configured to obtain inbound packets from the default HRR, and to determine to which of the plurality of SRRs to send a copy of the packet.