Sub-Queue Service System for CPU Network Interface Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional vertical perimeter architectures in multi-CPU environments face inefficiencies when the number of network interfaces exceeds the number of CPUs, leading to slowed system capacity, cache misses, and unregulated data flow, as they rely on serial processing and kernel-intensive methods to distinguish between data from multiple network interfaces.
Innovation Solution
Implementing a sub-queue service system that assigns multiple network interfaces to a single CPU, using virtual vertical perimeters and sub-queues coordinated by a sub-queue controller to manage message traffic efficiently, allowing for dynamic allocation and regulation of processing and data flow.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional vertical perimeter architectures are used to bind network interfaces to CPUs, then message processing integration is improved, but system capacity slows when the number of network interfaces exceeds the number of CPUs
Solution Approach 1:
The patent segments the processing architecture by introducing sub-queues within each CPU's queue structure. Each network interface is assigned to a specific sub-queue, allowing multiple network interfaces to be handled by a single CPU without compromising processing integration. This segmentation enables the system to scale network interface capacity beyond the number of physical CPUs while maintaining the benefits of vertical perimeter processing.
2Reliability
If serial processing through a single queue is used, then processing integration is maintained, but data flow regulation becomes inefficient and causes bottlenecks
Solution Approach 1:
The patent divides the single serial queue into multiple parallel sub-queues, each dedicated to a specific network interface. This allows data from different network interfaces to be processed in parallel by the same CPU, eliminating the bottleneck of serial processing while maintaining integration through the shared CPU context and cache structure.
Solution Approach 2:
The patent implements dynamic allocation and regulation mechanisms that allow the system to adaptively manage data flow across multiple sub-queues. The CPU can dynamically select which sub-queue to process next based on current system state, enabling efficient data flow regulation that responds to changing network conditions and load patterns.
3Productivity
If multiple network interfaces are assigned to a single CPU, then CPU efficiency is improved by reducing cache misses, but device complexity increases
Solution Approach 1:
The patent organizes the queue structure into hierarchical sub-queues, where each sub-queue is clearly associated with a specific network interface. This structured segmentation provides a clear mapping between network interfaces and queue segments, making the complexity manageable through systematic organization rather than ad-hoc management.
Solution Approach 2:
The patent creates a universal queue management framework that can handle multiple network interfaces through a standardized sub-queue structure. The same CPU and queue management mechanisms serve multiple network interfaces simultaneously, reducing the need for separate dedicated structures for each interface and thereby managing complexity while improving efficiency.
Data Source
AI summary
Techniques and modes of operation for using network interfaces in a single or multi-CPU environment are disclosed. The techniques provide a virtual “vertical perimeter” framework suitable for processing data through multiple network interfaces assigned to a single CPU. In this framework, techniques for installing and servicing a plurality of network interfaces with a single CPU utilizing virtual vertical perimeters and sub-queues is disclosed. A computer system including at least one CPU and more network interfaces than CPU's is disclosed. At least two of the interfaces are assigned to an associated CPU. The computer system includes an operating system with plurality of sub-queues and an associated sub-queue controller. The sub-queues are associated with at least two network interfaces assigned to the CPU. The sub-queue controller is configured for coordinating the generation and operation of the sub-queues thereby to facilitating message traffic through the at least two network interfaces.


