Descriptor Management for Priority Data Transfer Queues

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional network interface controllers transmit and receive data in a first-come, first-served manner, which can lead to lower priority data being restricted from transmission, resulting in suboptimal quality of service in computer systems.

Innovation Solution

Implementing data transfer queues with priority levels in shared memory, where higher priority data is transferred before lower priority data, and employing a fairness algorithm to ensure that higher priority traffic does not completely block lower priority data transmission.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is transferred in first-come, first-served manner, then device complexity is reduced, but quality of service deteriorates due to inability to prioritize important data

Engineering Contradiction:
Improvequality of serviceVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The data transfer system is segmented into multiple priority levels (e.g., high priority and low priority queues). Each priority level has its own separate queue structure, allowing the system to handle different types of data traffic differently. This segmentation enables quality of service differentiation without requiring complete redesign of the entire data transfer mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the parameter of data transfer by introducing priority levels and using different transfer modes (interrupt-driven for high priority, DMA for low priority). This parameter change allows the system to improve quality of service for important data while maintaining overall system functionality.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If higher priority data is transferred first, then quality of service is improved, but lower priority data transmission may be completely blocked

Engineering Contradiction:
Improvequality of serviceVSAvoiddata transmission throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system uses feedback mechanisms where the host processor monitors the state of data queues and adjusts transfer operations accordingly. When low priority queues accumulate data, the system can switch to DMA mode for those queues, ensuring that lower priority data is not completely blocked while still maintaining quality of service for high priority data.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The data transfer mode is made dynamic rather than static. The system can switch between interrupt-driven and DMA transfer modes depending on the priority and state of data in different queues. This dynamic adaptation allows the system to balance quality of service requirements with overall data transmission productivity.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If interrupt-driven transfer is used for all data, then ease of operation is maintained, but productivity decreases due to processor overhead

Engineering Contradiction:
Improveease of operationVSAvoiddata transfer efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

Different data transfer methods are applied to different priority levels of data. High priority data uses interrupt-driven transfer for immediate attention and ease of control, while low priority data uses DMA transfer for improved efficiency and reduced processor overhead. This local differentiation optimizes both ease of operation and productivity for different data types.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7533154B1Descriptor management systems and methods for transferring data of multiple priorities between a host and a network
Publication Date: 2009.05.12 ADVANCED MICRO DEVICES INC
  • US7533154B1 patent drawing
  • US7533154B1 patent drawing
  • US7533154B1 patent drawing

AI summary

Methods and network interface systems are provided for transferring data between a host and a network using a shared memory, in which separate data transfer queues are employed for transfer of data of different priorities. For receive data, the network interface scrutinizes the data and provides a corresponding entry in a receive data transfer queue of a particular priority according to the data. For transmit data, the network interface transmits data corresponding to entries in lower priority queues when all higher priority data has been transmitted or when a certain number of higher priority data frames have been transferred while a lower priority frame is waiting to be sent.