Method and apparatus for overflowing data packets to a software-controlled memory when they do not fit into a hardware-controlled memory
First Claim
Patent Images
1. A system for managing packets incoming to a data router comprising:
- a local packet memory (LPM) mapped into pre-configured memory units, to store packets for processing, each of said pre-configured memory units being resizable by said system;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to said LPM, to determine the size of said packets to be stored in said LPM, and for determining whether said packets can be stored in said LPM; and
a second storage system coupled to said first storage system, for receiving an indication from said first storage system when it cannot store said packets in said LPM, and for storing said packets in said EPM;
wherein said first storage system attempts to store all said packets in said LPM, and for those packets that are not storable within said LPM, relinquishes control to said second system, which stores said packets in said EPM; and
wherein said system evaluates the size of said pre-configured memory units based on the size of said packets, and resizes said memory units to minimize fragmentation.
6 Assignments
0 Petitions
Accused Products
Abstract
A system for managing packets incoming to a data router has a local packet memory (LPM) mapped into pre-configured memory units, to store packets for processing, an external packet memory (EPM), a first storage system to store packets in the LPM, and a second storage system to store packets in the EPM. The system is characterized in that the first storage system attempts to store all incoming packets in the LPM, and for those packets that are not compatible with the LPM, relinquishes control to the second system, which stores the LPM-incompatible packets in the EPM.
-
Citations
19 Claims
-
1. A system for managing packets incoming to a data router comprising:
-
a local packet memory (LPM) mapped into pre-configured memory units, to store packets for processing, each of said pre-configured memory units being resizable by said system;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to said LPM, to determine the size of said packets to be stored in said LPM, and for determining whether said packets can be stored in said LPM; and
a second storage system coupled to said first storage system, for receiving an indication from said first storage system when it cannot store said packets in said LPM, and for storing said packets in said EPM;
wherein said first storage system attempts to store all said packets in said LPM, and for those packets that are not storable within said LPM, relinquishes control to said second system, which stores said packets in said EPM; and
wherein said system evaluates the size of said pre-configured memory units based on the size of said packets, and resizes said memory units to minimize fragmentation. - View Dependent Claims (2, 4, 5, 6, 7)
-
-
3. (canceled)
-
8. A data packet router comprising:
-
external ports to receive and send data packets from and to neighboring connected routers; and
a system coupled to said external ports, for managing said packets incoming to a data router, the system comprising;
a local packet memory (LPM) mapped into pre-configured memory units, to store packets for processing, each of said pre-configured memory units being resizable by said system;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to said LPM, to determine the size of said packets to be stored in said LPM, for determining whether said packets can be stored in said LPM, and to store packets in said LPM; and
a second storage system coupled to said first storage system, for receiving an indication from said first storage system when it cannot store said packets in said LPM and for storing said packets in said EPM;
wherein said first storage system attempts to store all said packets in said LPM, and for those packets that are not storable within said LPM, relinquishes control to said second system, which stores said packets in said EPM; and
wherein said system evaluates the size of said pre-configured memory units based on the size of said packets, and resizes said memory units to minimize fragmentation. - View Dependent Claims (9, 11, 12)
-
-
10. (canceled)
-
13. A method for managing packets incoming to a data router, comprising the steps of:
-
(a) attempting to store all incoming packets, by a first storage system, into a local packet memory (LPM) that is mapped into preconfigured but resizable memory units;
(b) relinquishing packets not storable within the LPM to a second storage system;
(c) storing the packets not storable within the LPM in an external packet memory by a second storage system; and
(d) examining the size of the packets to determine whether the memory units should be resized to reduce fragmentation. - View Dependent Claims (14, 15, 17, 18)
-
-
16. (canceled)
-
19-28. -28. (canceled)
Specification