Packets to be transmitted from a network device are buffered in queues in a first packet memory. In response to detecting congestion in a queue in the first packet memory, groups of multiple packets are transferred from the first packet memory to a second packet memory, the second packet memory configured to buffer a portion of traffic bandwidth supported by the network device. Prior to transmission of the packets among the one or more groups of multiple packets from the network device, packets among the one or more groups of multiple packets are transferred from the second packet memory back to the first packet memory. The packets transferred from the second packet memory back to the first packet memory are retrieved from the first packet memory and are forwarded to one or more network ports for transmission of the packets from the network device.
Legal claims defining the scope of protection, as filed with the USPTO.
3. The method of claim 2, wherein transferring the one or more groups of multiple packets from the particular egress queue to the second packet memory comprises transferring the one or more groups of multiple packets from a middle portion of the particular egress queue while at least a head portion of the particular egress queue remains in the first packet memory.
4. The method of claim 3, further comprising, while the one or more groups of multiple packets from the middle of the particular egress queue are stored in the second packet memory, enqueuing one or more additional packets at a tail of a tail portion of the particular egress queue stored in the first packet memory.
6. The method of claim 3, wherein requesting transfer of the packets among the one or more groups of multiple packets comprises requesting transfer of the packets from the middle portion of the particular egress queue from the second packet memory to the first packet in response to detecting that a length of the header portion of the particular egress queue stored in the first packet memory is below a threshold.
7. The method of claim 3, further comprising linking the packets transferred from the second packet memory back to the first packet memory with a tail of the header portion of the particular egress queue in the first packet memory.
14. The network device of claim 13, wherein the packet processor is configured to transfer the one or more groups of multiple packets from a middle portion of the particular egress queue while at least a head portion of the particular egress queue remains in the first packet memory.
15. The network device of claim 14, wherein the packet processor is further configured to, while the one or more groups of multiple packets from the middle of the particular egress queue are stored in the second packet memory, enqueue one or more additional packets at a tail of a tail portion of the particular egress queue stored in the first packet memory.
17. The network device of claim 14, wherein the packet processor is configured to request transfer of packets among the one or more groups of multiple packets from the middle portion of the particular egress queue from the second packet memory to the first packet in response to detecting that a length of the header portion of the particular egress queue stored in the first packet memory is below a threshold.
18. The network device of claim 14, wherein the packet processor is further configured to link the packets transferred from the second packet memory back to the first packet memory with a tail of the header portion of the particular egress queue in the first packet memory.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
March 18, 2021
October 25, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.