Adaptive flow control method and apparatus
First Claim
1. A method of controlling data flow within a network device, said method comprising the steps of:
- receiving a data packet into a network device;
snooping the data packet before the data packet is stored in a memory buffer of the network device to determine a packet size based upon a number of bits per bytes within the data packet;
aggregating the packet size to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size; and
lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets.
6 Assignments
0 Petitions
Accused Products
Abstract
The present invention provides a method of controlling data flow within a network device. The method includes the steps of snooping a data packet before the data packet is stored in a memory buffer of the network device to determine a packet size, aggregating the packet size to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size. The method also includes the steps of lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets and activating a pause frame based upon the reset threshold to temporarily suspend transmission of incoming data packets to the network device.
-
Citations
25 Claims
-
1. A method of controlling data flow within a network device, said method comprising the steps of:
-
receiving a data packet into a network device;
snooping the data packet before the data packet is stored in a memory buffer of the network device to determine a packet size based upon a number of bits per bytes within the data packet;
aggregating the packet size to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size; and
lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A device for controlling data flow within a network device, said device comprising:
-
a snooping module contained within a network device and configured to snoop a data packet before the data packet is stored in a memory buffer of the network device to determine a packet size based upon the bits per byte of the data packet;
a counter connected to the snooping module, wherein the counter adds the packet size to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size; and
a threshold lowering module connected to receive instructions from the snooping module and configured to lower a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A device for controlling data flow within a network device, said device comprising:
-
receiving a data packet into a network device;
snooping means contained within the network device for snooping a data packet before the data packet is stored in a memory buffer of the network device to determine a packet size based upon a number of bits/bytes of the data packet;
aggregating means included within the snooping means for aggregating the packet size to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size; and
threshold reset means connected to receive instructions from the snooping means for lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method of controlling data flow within a multiple-linked chip device, said method comprising the steps of:
-
receiving a data packet into a multiple-linked chip device;
snooping data packets before the data packets are stored in a memory buffer of the multiple-linked chip device to determine a packet size based upon the bits per bytes of the data packets;
aggregating the packet size of the data packets to generate a total number of data packets within a burst if the data packet size exceed a predetermined packet size; and
lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (17, 18)
-
-
19. A device for controlling data flow within a multiple-linked chip device, said device comprising:
-
a receiving module for receiving a data flow within a multiple linked chip device;
a snooping module contained within the multiple-linked chip device and configured to snoop data packets before the data packets are stored in a memory buffer of the network device to determine a packet size based upon the bits per bytes of the data packets;
a counter included within the snooping module, wherein the counter adds packet size of the data packets to generate a total number of data packets within a burst if the packet size exceeds a predetermined packet size; and
a threshold lowering module connected to receive instructions from the snooping module and configured to lower a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (20, 21)
-
-
22. A device for controlling data flow within a multiple-linked chip device, said device comprising:
-
snooping means contained within the multiple-linked chip device for snooping data packets before the data packets are stored in a memory buffer of the multiple-linked chip device to determine a packet size;
aggregating means included within the snooping module for aggregating the packet size of the data packets to generate a total number of data packets within a burst if the data packet size exceed a predetermined packet size; and
threshold reset means connected to receive instructions from the snooping module for lowering a threshold of the memory buffer to a reset threshold if the total number of data packets exceeds a predetermined number of consecutive data packets. - View Dependent Claims (23, 24)
-
-
25. A method of controlling data flow within a network device, said method comprising:
-
predicting a future flow of a chip located within the network device based upon a current flow within another chip and the current flow within the chip; and
determining whether the future flow will cause a memory buffer of the chip to become saturated.
-
Specification