US9007902B1ExpiredUtility

Method and apparatus for preventing head of line blocking in an Ethernet system

73
Assignee: MARVELL ISRAEL MISL LTDPriority: Sep 29, 2004Filed: Apr 22, 2013Granted: Apr 14, 2015
Est. expirySep 29, 2024(expired)· nominal 20-yr term from priority
Inventors:Eitan Medina
H04L 47/2433H04L 47/11H04L 49/351H04L 47/30H04L 49/254H04L 47/13H04L 43/0882H04L 47/266H04L 49/503Y02D30/50
73
PatentIndex Score
2
Cited by
37
References
20
Claims

Abstract

A data frame is received at a network switch, the data frame containing congestion status information for at least a first traffic class and a second traffic class associated with packets being transmitted by the network switch to a network interface device. When the network switch determines, in response to the data frame containing congestion status information, that the congestion status information indicates congestion corresponding to the first traffic class, the network switch reduces a rate of transmission of packets (i) corresponding to the first traffic class and (ii) destined for the network interface device.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method, comprising:
 receiving, at a network switch, a data frame containing congestion status information for at least a first traffic class and a second traffic class associated with packets being transmitted by the network switch to a network interface device; and 
 when the network switch determines, in response to the data frame containing congestion status information, that the congestion status information indicates congestion corresponding to the first traffic class, reducing a rate of transmission, by the network switch, of packets (i) corresponding to the first traffic class and (ii) destined for the network interface device. 
 
     
     
       2. The method according to  claim 1 , further comprising:
 when the network switch determines, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first traffic class and (ii) the congestion status information does not indicate congestion corresponding to the second traffic class, increasing a rate of transmission, by the network switch, of packets (i) corresponding to the second traffic class and (ii) destined for the network interface device. 
 
     
     
       3. The method according to  claim 1 , wherein:
 the congestion status information for at least the first traffic class and the second traffic class comprises congestion status information for at least a first queue and a second queue at the network interface device; 
 the first traffic class corresponds to the first queue; and 
 reducing the rate of transmission, by the network switch, of packets (i) corresponding to the first traffic class and (ii) destined for the network switch comprises reducing a rate of transmission, by the network switch, of packets (i) corresponding to first queue and (ii) destined for the network interface device. 
 
     
     
       4. The method according to  claim 3 , wherein:
 the second traffic class corresponds to the second queue; and 
 the method further comprises, when the network switch determines, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first queue and (ii) the congestion status information does not indicate congestion corresponding to the second queue, increasing a rate of transmission, by the network switch, of packets (i) corresponding to the second queue and (ii) destined for the network interface device. 
 
     
     
       5. The method according to  claim 1 , wherein:
 the congestion status information for at least the first traffic class and the second traffic class comprises congestion status information for at least a first port and a second port at the network interface device; 
 the first traffic class corresponds to the first port; and 
 reducing the rate of transmission, by the network switch, of packets (i) corresponding to the first traffic class and (ii) destined for the network switch comprises reducing a rate of transmission, by the network switch, of packets (i) corresponding to first port and (ii) destined for the network interface device. 
 
     
     
       6. The method according to  claim 5 , wherein:
 the second traffic class corresponds to the second port; and 
 the method further comprises, when the network switch determines, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first port and (ii) the congestion status information does not indicate congestion corresponding to the second port, increasing a rate of transmission, by the network switch, of packets (i) corresponding to the second port and (ii) destined for the network interface device. 
 
     
     
       7. The method according to  claim 1 , wherein receiving the data frame containing congestion status information comprises receiving a data frame that (i) is IEEE 802.3x compliant and (ii) contains the congestion status information. 
     
     
       8. The method according to  claim 7 , wherein the congestion status information is included in a portion of the data frame defined as reserved by IEEE 802.3x. 
     
     
       9. The method according to  claim 1 , wherein receiving the data frame containing congestion status information comprises receiving a data frame that contains (i) a first bit to provide congestion status information for the first traffic class and (ii) a second bit to provide congestion status information for the second traffic class. 
     
     
       10. The method according to  claim 1 , wherein receiving the data frame containing congestion status information comprises receiving a data frame that contains (i) a first timer value for the first traffic class, and (ii) a second timer value for the second traffic class. 
     
     
       11. The method according to  claim 10 , wherein:
 the first timer value indicates how much more data of first traffic class can be transmitted by the network switch; and 
 the second timer value indicates how much more data of second traffic class can be transmitted by the network switch. 
 
     
     
       12. A network switch, comprising:
 a plurality of ports; 
 a switching module configured to: 
 determine, for each received packet, a corresponding port via which the packet is to be transmitted by examining the content of the packet, and 
 forward the packet to the determined port for transmission; and 
 a management module configured to: 
 process a data frame containing congestion status information for at least a first traffic class and a second traffic class associated with packets being transmitted by the network switch to a network interface device, and 
 when it is determined, in response to the data frame containing congestion status information, that the congestion status information indicates congestion corresponding to the first traffic class, reduce a rate of transmission, by the network switch, of packets (i) corresponding to the first traffic class and (ii) destined for the network interface device. 
 
     
     
       13. The network switch according to  claim 12 , the management module is configured to:
 when it is determined, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first traffic class and (ii) the congestion status information does not indicate congestion corresponding to the second traffic class, increase a rate of transmission, by the network switch, of packets (i) corresponding to the second traffic class and (ii) destined for the network interface device. 
 
     
     
       14. The network switch according to  claim 12 , wherein:
 the congestion status information for at least the first traffic class and the second traffic class comprises congestion status information for at least a first queue and a second queue at the network interface device; 
 the first traffic class corresponds to the first queue; and 
 the management module is configured to reduce a rate of transmission, by the network switch, of packets (i) corresponding to first queue and (ii) destined for the network interface device. 
 
     
     
       15. The network switch according to  claim 14 , wherein:
 the second traffic class corresponds to the second queue; and 
 the management module is configured to, when it is determined, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first queue and (ii) the congestion status information does not indicate congestion corresponding to the second queue, increase a rate of transmission, by the network switch, of packets (i) corresponding to the second queue and (ii) destined for the network interface device. 
 
     
     
       16. The network switch according to  claim 12 , wherein:
 the congestion status information for at least the first traffic class and the second traffic class comprises congestion status information for at least a first port and a second port at the network interface device; 
 the first traffic class corresponds to the first port; and 
 the management module is configured to reduce a rate of transmission, by the network switch, of packets (i) corresponding to first port and (ii) destined for the network interface device. 
 
     
     
       17. The network switch according to  claim 16 , wherein:
 the second traffic class corresponds to the second port; and 
 the management module is configured to, when it is determined, in response to the data frame containing congestion status information, that (i) the congestion status information indicates congestion corresponding to the first port and (ii) the congestion status information does not indicate congestion corresponding to the second port, increase a rate of transmission, by the network switch, of packets (i) corresponding to the second port and (ii) destined for the network interface device. 
 
     
     
       18. The network switch according to  claim 12 , wherein the management module is configured to process a data frame that (i) is IEEE 802.3x compliant and (ii) contains the congestion status information. 
     
     
       19. The network switch according to  claim 18 , wherein the management module is configured to process congestion status information included in a portion of the data frame defined as reserved by IEEE 802.3x. 
     
     
       20. The network switch according to  claim 12 , wherein the management module is configured to process a data frame that contains (i) a first bit to provide congestion status information for the first traffic class and (ii) a second bit to provide congestion status information for the second traffic class.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.