METHOD AND APPARATUS FOR OVERFLOWING DATA PACKETS TO A SOFTWARE-CONTROLLED MEMORY WHEN THEY DO NOT FIT INTO A HARDWARE-CONTROLLED MEMORY
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.
135 Citations
55 Claims
-
1-28. -28. (canceled)
-
29. A system for managing packets incoming to a data router comprising:
-
a local packet memory (LPM) configured to store packets for processing;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to the LPM and to a second storage system;
wherein the first storage system is configured to;
determine whether said packets can be stored in the LPM;
if a given packet is determined not to be storable within the LPM;
relinquish packet management to the second storage system; and
set a lock; and
wherein the second storage system is configured to;
receive an indication from the first storage system that a given packet is not storable in the LPM;
in response to receiving the indication, manage the given packet; and
wherein setting the lock causes the system to buffer additional incoming packets until the system completes a first action in response to the determination that the given packet is not storable within the LPM. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36)
-
-
37. A data packet router comprising:
-
external ports to receive and send data packets from and to neighboring connected routers;
a system coupled to the external ports and configured to manage packets incoming to the data packet router, the system comprising;
a local packet memory (LPM) configured to store packets for processing;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to the LPM and to a second storage system;
wherein the first storage system is configured to;
determine whether said packets can be stored in the LPM;
if a given packet is determined not to be storable within the LPM;
relinquish packet management to the second storage system; and
set a lock; and
wherein the second storage system is configured to;
receive an indication from the first storage system that a given packet is not storable in the LPM;
in response to receiving the indication, manage the given packet; and
wherein setting the lock causes the system to buffer additional incoming packets until the system completes a first action in response to the determination that the given packet is not storable within the LPM. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44)
-
-
45. A data packet router comprising:
-
external ports to receive and send data packets from and to neighboring connected routers;
a local packet memory (LPM) configured to store packets for processing;
an external packet memory (EPM) for storing overflow data which is not storable by said LPM;
a first storage system coupled to the LPM and to a second storage system;
wherein the first storage system is configured to;
determine whether processing of a given packet is complete;
determine if the given packet is stored in the LPM;
if a given packet is determined not to be stored within the LPM;
relinquish packet management to the second storage system; and
wherein the second storage system is configured to;
receive an indication from the first storage system that a given packet is stored in the EPM;
in response to receiving the indication, transfer the given packet directly from the EPM to one of the external ports. - View Dependent Claims (46)
-
-
47. A method for managing packets incoming to a data router, the method comprising:
-
storing incoming packets for processing in a local packet memory (LPM);
determining whether a given packet can be stored in the LPM by a first storage system;
if a given packet is determined not to be storable within the LPM;
sending an indication to a second storage system; and
setting a lock; and
the second storage system;
receiving the indication that a given packet is not storable in the LPM;
in response to receiving the indication, managing the given packet;
wherein setting the lock causes the system to buffer additional incoming packets until the system completes a first action in response to the determination that the given packet is not storable within the LPM. - View Dependent Claims (48, 49, 50, 51, 52, 53)
-
-
54. A method for managing packets outgoing from a data router, the method comprising:
-
receiving a notification that processing of a given packet is complete;
determining if the given packet is stored in a local packet memory (LPM);
if a given packet is determined not to be stored within the LPM;
sending an indication to a second storage system that the given packet is stored in an external packet memory (EPM), the indication including the location of the given packet in the EPM; and
the second storage system;
receiving the indication that a given packet is stored in the EPM; and
in response to receiving the indication, transferring the given packet directly from the EPM to an external port. - View Dependent Claims (55)
-
Specification