Protocol-Specific Network Packet Processing via Virtual Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current network processing systems face inefficiencies as CPUs need to continuously load different code to process packets of various protocols, leading to increased load and reduced performance.

Innovation Solution

Implementing virtual network stacks and temporary data structures configured to process specific protocols or groups of protocols, allowing for offloading certain packet processing tasks to network processing units (NPUs), thereby reducing the CPU's load and improving efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single serialization queue is used to process multiple protocols, then device complexity is reduced, but processing efficiency deteriorates due to continuous code loading

Engineering Contradiction:
Improvequeue structureVSAvoidprocessing efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the single serialization queue into multiple protocol-specific serialization queues, where each queue is dedicated to processing packets of a specific protocol. This segmentation allows the system to avoid loading different code for different protocols on the same queue, thereby improving processing efficiency while maintaining manageable complexity through organized separation.

Inventive Principle:
Principle #1Segmentation

2Productivity

If protocol-specific processing is implemented, then processing efficiency improves, but device complexity increases due to multiple data structures

Engineering Contradiction:
Improveprocessing efficiencyVSAvoiddata structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a mapping relationship between multiple protocol-specific temporary data structures and multiple protocol-specific serialization queues, where each data structure can serve its corresponding queue. This universal mapping mechanism allows the system to handle multiple protocols efficiently without requiring entirely separate processing paths, thus improving efficiency while controlling complexity through a unified mapping approach.

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

3Productivity

If multiple serialization queues are created for different protocols, then processing efficiency improves, but ease of operation deteriorates due to complex packet routing

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidpacket routing
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent introduces a mapping mechanism as an intermediary between the classifier and the protocol-specific serialization queues. This mapping acts as a mediator that automatically routes packets to the appropriate queue based on protocol type, eliminating the need for complex manual routing logic and making the system easier to operate while maintaining the efficiency benefits of protocol-specific queues.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7675920B1Method and apparatus for processing network traffic associated with specific protocols
Publication Date: 2010.03.09 ORACLE AMERICAN INC
  • US7675920B1 patent drawing
  • US7675920B1 patent drawing
  • US7675920B1 patent drawing

AI summary

A system that includes a network interface for receiving a packets from a network, a classifier operatively connected to the network interface that analyzes each of the packets and determines to which temporary data structure to forward each of packets, wherein the classifier analyzes each packet to determine with which of a plurality of protocols the packet is associated with. Each temporary data structure within the system is configured to receive packets from the classifier, wherein each of the temporary data structures is associated with at least one virtual serialization queue and wherein each of the temporary data structures is configured to store packets associated with at least one of the plurality of protocols. The at least one virtual serialization queue is configured to queue packets from the one of the temporary data structures associated with the at least one virtual serialization queue.