Two-Hop Flow Control with Class-Specific Pause Frames
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Full-duplex Ethernet networks lack a mechanism to implement quality of service (QoS) for different classes of traffic, leading to incomplete data transmission control, where data may be lost due to buffer overflow or underflow, as the pause frame system does not differentiate between data classes and their performance requirements.
Innovation Solution
A system for pausing and shaping data flow using a two-hop process with input and output buffers, pause controllers, and queues, where the second pause controller selects a queue to pause based on predetermined conditions, including class of data traffic, and transmits pause frames with class information to prioritize and manage data flow effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a standard pause frame system is used for flow control, then data transmission can be stopped to prevent buffer overflow, but quality of service cannot be differentiated for different data classes
Solution Approach 1:
The patent segments the single standard pause frame mechanism into multiple class-specific pause frames. Each pause frame is associated with a specific data class (AF1, AF2, AF3, AF4), allowing independent flow control for each class. This segmentation enables QoS differentiation while maintaining buffer overflow prevention for each class separately.
Solution Approach 2:
The patent applies local quality by making each pause frame class-specific rather than uniform. Each pause frame contains class identification information and applies flow control only to the corresponding data class, allowing different flow control parameters and priorities for different data classes while maintaining overall system reliability.
2Reliability
If flow control stops all data transmission when buffer is full, then data loss is prevented, but throughput of other data classes is reduced
Solution Approach 1:
The patent segments the flow control mechanism to operate independently on each data class. When one class's buffer is full, only that class receives pause frames, while other classes continue transmission. This prevents data loss for the full buffer class while maintaining throughput for other classes.
Solution Approach 2:
The patent applies local quality by making flow control selective to specific data classes. Each pause frame targets a specific class, allowing differentiated treatment where high-priority classes may continue transmission while lower-priority classes are paused, thus preventing data loss where needed while maintaining overall network productivity.
3Reliability
If pause frames are sent for every buffer condition, then data loss is prevented, but network overhead increases
Solution Approach 1:
The patent creates a universal pause frame structure that can serve multiple data classes simultaneously. A single pause frame mechanism handles flow control for multiple classes by including class identification, reducing the need for separate pause frame transmissions for each class and thereby reducing overall network overhead.
Solution Approach 2:
The patent merges multiple class-specific flow control functions into a unified pause frame structure. By combining class identification and flow control instructions in a single frame type, the system reduces the quantity of pause frames needed compared to using separate frames for each class, thus reducing network overhead while maintaining reliable control.
Data Source
AI summary
Various embodiments of methods and systems for pausing and shaping data flow while supporting both parameterized and prioritized Quality of Service are disclosed. In some embodiments, a system for pausing and shaping data flow comprises an input buffer, a first pause controller coupled to the input buffer and an output buffer for flow control messages. Various embodiments also include a hop-1 buffer coupled to the input buffer and a hop-2 buffer comprising a plurality of queues coupled to the hop-1 buffer. Additionally, in some embodiments, a second pause controller is coupled to the queues. The second pause controller selects a queue or queues that will cause a pause to be generated based on a predetermined condition. A two-hop process controller controls the data packet flow from the input buffer to the hop-1 buffer and from the hop-1 buffer to the hop-2 queues based on packet classification.


