Techniques to reduce network congestion
US-2019116122-A1 · Apr 18, 2019 · US
US11616723B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11616723-B2 |
| Application number | US-201816211070-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 5, 2018 |
| Priority date | Dec 5, 2018 |
| Publication date | Mar 28, 2023 |
| Grant date | Mar 28, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
At a network-connected device, congestion at an egress queue can be detected. A potential source of congestion can be identified based on characteristics of a packet that caused the egress queue to become congested. The source of congestion can be a congestion group of transmitters. A group congestion message can be sent to the group of transmitters. The message can identify the packet that caused the egress queue to become congested. Transmitters can respond to the message by reducing their peak transmission rate.
Opening claim text (preview).
What is claimed is: 1. A network device comprising: at least one interface; and at least one processor communicatively coupled to the at least one interface, wherein the at least one processor is to: identify congestion at an egress queue; determine a congestion group associated with the congestion, wherein the congestion group is further associated with multiple source transmitters and the egress queue is to store packets from the multiple source transmitters of the congestion group; form a congestion message, the congestion message is associated with a congestion group identifier; and cause transmission of the congestion message to all of the multiple source transmitters in the congestion group regardless of contribution to congestion. 2. The network device of claim 1 , wherein to identify a congestion at an egress queue, the at least one processor is to: determine a packet queue depth of the egress queue and determine whether the egress queue is congested based in part on the queue depth meeting or exceeding a threshold level for the egress queue. 3. The network device of claim 1 , wherein to determine a congestion group associated with the congestion, the at least one processor is to: use a congestion group identifier in a received packet associated with congestion at the egress queue, wherein the congestion group identifier is to identify the congestion group. 4. The network device of claim 1 , wherein to determine a congestion group associated with the congestion, the at least one processor is to: determine a congestion group identifier based on at least one characteristic of a received packet associated with congestion at the egress queue, wherein the at least one characteristic comprises one or more of: a source Internet Protocol (IP) address, a source Media Access Control (MAC) address, or a Multiprotocol Label Switching (MPLS) tag. 5. The network device of claim 1 , wherein to determine a congestion group associated with the congestion, the at least one processor is to: determine a congestion group identifier based on a chain of at least one congestion group identifier in a received packet associated with congestion at the egress queue. 6. The network device of claim 1 , wherein the at least one processor is to: access a look-up table to determine two or more destination addresses and use the determined two or more destination addresses to identify the multiple source transmitters. 7. The network device of claim 1 , wherein the congestion message includes one or more of: congested egress queue depth, source Internet Protocol (IP) address of device that transmitted the packet that caused congestion of an egress queue, destination IP address of the packet that caused congestion of an egress queue, source Media Access Control (MAC) address the packet that caused congestion of an egress queue, destination MAC address the packet that caused congestion of an egress queue, congestion group identifier the packet that caused congestion of an egress queue, congested egress port number, portion of header of packet that caused congestion of an egress queue, or bandwidth change request. 8. The network device of claim 1 , further comprising a network interface, wherein to cause transmission of the congestion message to at least two transmitters, the at least one processor is to cause the network interface to send the congestion message to the at least two transmitters that are in the congestion group. 9. The network device of claim 1 , wherein the at least one processor is to: cause transmission of the congestion message to a port of a source transmitter that is allocated to receive congestion messages. 10. At least one non-transitory computer-readable medium comprising instructions stored thereon, that if executed by at least one processor, cause the at least one processor to: identify congestion at an egress queue; form a congestion group message, wherein the congestion group message is associated with a congestion group identifier, wherein the congestion group identifier is associated with a cause of the congestion, and wherein the congestion group identifier identifies multiple source transmitters and the egress queue is to store packets from the multiple source transmitters of the congestion group; and cause transmission of the congestion group message to all of the multiple source transmitters in the congestion group regardless of contribution to congestion. 11. The at least one computer-readable medium of claim 10 , wherein to identify a congestion at an egress queue, the at least one processor is to: determine that a queue depth of the egress queue meets or exceeds a threshold level. 12. The at least one computer-readable medium of claim 10 , wherein the congestion group identifier is copied from a congestion group identifier in a received packet associated with congestion at the egress queue. 13. The at least one computer-readable medium of claim 10 , comprising instructions stored thereon, that if executed by at least one processor, cause the at least one processor to: determine the congestion group identifier based on at least one characteristic of a received packet associated with congestion at the egress queue, wherein the at least one characteristic comprises one or more of: a source Internet Protocol (IP) address, a source Media Access Control (MAC) address, or a Multiprotocol Label Switching (MPLS) tag. 14. The at least one computer-readable medium of claim 10 , comprising instructions stored thereon, that if executed by at least one processor, cause the at least one processor to: determine a congestion group identifier based on at least one congestion group identifier in a received packet. 15. The at least one computer-readable medium of claim 10 , wherein the congestion group message includes one or more of: congested egress queue depth, source IP address of device that transmitted the packet that caused congestion of an egress queue, destination IP address of the packet that caused congestion of an egress queue, source MAC address the packet that caused congestion of an egress queue, destination MAC address the packet that caused congestion of an egress queue, congestion group identifier the packet that caused congestion of an egress queue, congested egress port number, a portion of a header of packet that caused congestion of an egress queue, or bandwidth change request. 16. The at least one computer-readable medium of claim 10 , comprising instructions stored thereon, that if executed by at least one processor, cause the at least one processor to: access a look-up table to determine two or more destination addresses associated with the congestion group identifier and provide the determined two or more destination addresses to identify the multiple source transmitters. 17. The at least one computer-readable medium of claim 16 , wherein to cause transmission of the congestion group message, the at least one processor is to: use one of the determined two or more destination addresses for transmission of the congestion group message and use another of the determined two or more destination addresses for transmission of another congestion group message. 18. A system comprising: a host system and a network interface communicatively coupled to the host system, the network interface comprising: a plurality of ports, wherein at least one port of the plurality of ports is to receive packets and at least one of the packets comprises a group congestion message, wherein the group congestion message was transmitted t
Avoiding congestion; Recovering from congestion · CPC title
Address table lookup; Address filtering · CPC title
using label swapping, e.g. multi-protocol label switch [MPLS] · CPC title
with rate being modified by the source upon detecting a change of network conditions · CPC title
by attributing bandwidth to queues · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.