NIC Traffic Shaping Offload Using Confirmation Tokens
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing network traffic management techniques struggle to efficiently manage data transmission across computing devices with physical limits, leading to potential network overload and inefficiencies such as head-of-line blocking and high memory consumption.
Innovation Solution
Implementing a traffic shaping system that uses a network interface controller (NIC) to transmit packets without delay by generating and enqueuing confirmation tokens in a time-indexed data structure, allowing for efficient traffic shaping without packet loss or head-of-line blocking, and reducing memory consumption by storing confirmation tokens instead of entire data packets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If packets are stored in memory coupled to a network interface controller for traffic shaping, then traffic can be managed according to a shaping policy, but memory consumption increases and transmission delays occur
Solution Approach 1:
The patent segments the traffic shaping function into two parts: confirmation token generation/handling is performed by the NIC hardware, while actual packet processing is handled by the host system. This segmentation allows the NIC to use minimal memory for token management rather than storing entire packets, dramatically reducing memory consumption while maintaining traffic shaping capability
Solution Approach 2:
The patent introduces confirmation tokens as an intermediary mechanism between packet transmission and acknowledgment. Instead of storing actual packets in NIC memory, the system uses lightweight confirmation tokens that reference packets. These tokens are enqueued and dequeued by the NIC to enforce traffic shaping policies, while the actual packet data resides in host memory, thus reducing NIC memory requirements
2Reliability
If packets are delayed for traffic shaping, then network congestion can be managed, but transmission speed decreases and head-of-line blocking occurs
Solution Approach 1:
The patent implements preliminary action by having the NIC generate and enqueue confirmation tokens in advance of actual packet transmission needs. The tokens are prepared and scheduled according to traffic shaping policies before packets arrive, allowing the NIC to efficiently manage packet flow without causing head-of-line blocking. High-priority packets can be transmitted immediately while their confirmation tokens are handled according to the shaping policy
Solution Approach 2:
The patent introduces dynamic prioritization where the NIC can identify and expedite high-priority packets independently of confirmation token processing. The system dynamically adjusts packet handling based on priority markings, allowing critical packets to bypass normal traffic shaping delays while maintaining overall congestion management. This dynamic approach prevents head-of-line blocking by allowing out-of-order processing of priority packets
3Productivity
If confirmation tokens are processed in strict order, then traffic shaping policy is enforced, but packet transmission is blocked by head-of-line blocking
Solution Approach 1:
The patent implements dynamic packet prioritization that allows the NIC to break from strict confirmation token processing order when high-priority packets are detected. The system dynamically switches between token-ordered processing and priority-based expedited processing, maintaining policy enforcement for normal traffic while improving efficiency for time-sensitive packets. This dynamic behavior eliminates head-of-line blocking for priority traffic
Data Source
AI summary
Systems, methods, and apparatuses, including network interface controllers and computer-readable media, for traffic shaping offload. A network computing device can receive data packets for transmission and implement a traffic policy that includes transmitting at least some data packets without delay to their intended destination. Confirmation tokens for non-delayed packets can be queued in a time-indexed data structure and dequeued according to a traffic shaping policy. Confirmation tokens can be generated and stored independent of the time at which corresponding packets for the tokens are transmitted. Dequeued confirmation tokens can cause the network computing device to receive additional packets for transmission. The device can flag at least some packets for transmission without delay according to aspects of the disclosure, while un-flagged packets can be shaped according to a different traffic shaping policy.


