IP Library Granted Patent US 7,733,770
Granted Patent B2
US 7,733,770 · App. 11/114,641 · Granted Jun 8, 2010

Congestion control in a network

Assignee: Intel Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,733,770
App. No.
11/114,641
Granted
Jun 8, 2010
Kind
B2
Abstract

A source node receives related frames of data to be transmitted from the source node to a destination node and places the frames in a queue. The queue is associated with a communication path over which the related frames are to be transmitted to the destination node. An interface that couples the source node to the communication path receives an indication directed to the source node of traffic congestion in the communication path. In response, the source node controls the rate at which the related frames of data are transferred from the queue to a transmit buffer accessible to the interface, in order to relieve the traffic congestion in the communication path.

Claims (18)

1. A method, at a system comprising a network interface controller (NIC), comprising:

receiving frames including congestion notifications for Ethernet paths, identification of the Ethernet paths comprising respective Ethernet media access control (MAC) destination addresses;

updating a control table that associates the Ethernet paths with respective Ethernet path data based on the congestion notifications received by the NIC for the Ethernet paths;

accessing a TCP (Transmission Control Protocol) flow to Ethernet path association table to determine an Ethernet path for a TCP flow having a TCP segment to transmit;

based on the determined Ethernet path for the TCP flow, accessing the control table that associates Ethernet paths with respective Ethernet path data;

based on the accessing of the control table, determining a next eligible time to transmit the TCP segment in the TCP flow, wherein the next eligible time is based, at least in part, on a current rate factor for the path and a number of bit times that will be consumed by a frame currently being sent;

retaining the TCP segment in a one of multiple queues based on the determined next eligible time; and

based on the determined next eligible time, dequeuing and transmitting the TCP segment in the one of the multiple queues.

2. The method of claim 1 ,

wherein the Ethernet path data based on the congestion notifications comprises a next eligible time value for an Ethernet path.

3. The method of claim 2 , wherein the Ethernet path data comprises a rate factor for an Ethernet path.

4. The method of claim 1 , further comprising delaying transmission of data of a Transmission Control Protocol (TCP) connection to the NIC based on the Ethernet path data provided by the control table.

5. The method of claim 4 , wherein the delaying comprises delaying dequeuing from a one of multiple queues associated with multiple respective TCP connections.

6. The method of claim 1 , wherein the system comprises a software driver that operates on the Ethernet path data from the control table.

7. The method of claim 1 , further comprising:

based on the accessing of the Ethernet path data, performing TCP congestion management of the flow.

8. The method of claim 1 , further comprising:

performing Explicit Congestion Notification (ECN) congestion management based on the data provided by the control table.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2005
From: MCALPINE, GARY; GUPTA, TANMAY; WADEKAR, MANOJ
To: INTEL CORPORATION
Reel/Frame 016698/0834 →
Continuity (2)
Provisional Application 6062830800 · Nov 15, 2004
Related Publication 20060104298A1 · May 18, 2006