Dynamic Temporary Use of Packet Memory As Resource Memory
First Claim
1. A method, comprising:
- buffering packets in packet memory of memory of a packet switching device, with said memory including resource memory, with said packet memory and said resource memory being independently managed, and with said packet memory including a plurality of packet memory regions of memory;
using forwarding information stored in the resource memory to forward packets of said buffered packets; and
in response to a condition and while said buffering packets and said using forwarding information stored in the resource memory to forward said buffered packets;
acquiring one or more regions from the plurality of packet memory regions by a memory controller, assigning said acquired packet memory regions to be part of said resource memory, performing additional operations using said resource memory including said acquired packet memory, and subsequent to said performing additional operations, acquiring a portion of the resource memory by the memory controller and assigning said acquired portion of the resource memory to said packet memory with said buffering packets including buffering packets in said packet memory including said assigned acquired portion of the resource memory.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, packet memory and resource memory of a memory are independently managed, with regions of packet memory being freed of packets and temporarily made available to resource memory. In one embodiment, packet memory regions are dynamically made available to resource memory so that in-service system upgrade (ISSU) of a packet switching device can be performed without having to statically allocate (as per prior systems) twice the memory space required by resource memory during normal packet processing operations. One embodiment dynamically collects fragments of packet memory stored in packet memory to form a contiguous region of memory that can be used by resource memory in a memory system that is shared between many clients in a routing complex. One embodiment assigns a contiguous region no longer used by packet memory to resource memory, and from resource memory to packet memory, dynamically without packet loss or pause.
33 Citations
20 Claims
-
1. A method, comprising:
-
buffering packets in packet memory of memory of a packet switching device, with said memory including resource memory, with said packet memory and said resource memory being independently managed, and with said packet memory including a plurality of packet memory regions of memory; using forwarding information stored in the resource memory to forward packets of said buffered packets; and in response to a condition and while said buffering packets and said using forwarding information stored in the resource memory to forward said buffered packets; acquiring one or more regions from the plurality of packet memory regions by a memory controller, assigning said acquired packet memory regions to be part of said resource memory, performing additional operations using said resource memory including said acquired packet memory, and subsequent to said performing additional operations, acquiring a portion of the resource memory by the memory controller and assigning said acquired portion of the resource memory to said packet memory with said buffering packets including buffering packets in said packet memory including said assigned acquired portion of the resource memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A packet switching device, comprising:
-
a packet switching mechanism configured to packet switch packets within the packet switching device; a route processor, including at least one processing element, communicatively coupled to the packet switching mechanism; and a plurality of line cards, with each line card of the plurality of line cards communicatively coupled to the packet switching mechanism and including;
memory comprising independently managed packet memory and resource memory, with said packet memory configured to buffer packets and including a plurality of packet memory regions of memory with a total size to accommodate peak burst rate packet traffic; and
one or more packet processors configured to use forwarding information stored in the resource memory to forward packets of said buffered packets; and
a memory manager configured to perform operations without causing packet loss including to acquire one or more regions from the plurality of packet memory regions, assign said acquired packet memory regions to be part of said resource memory, and to return said acquired packet memory regions to the plurality of packet memory regions. - View Dependent Claims (18)
-
-
19. A method, comprising:
-
buffering packets in packet memory of memory on a single integrated circuit of a packet switching device, with said memory including resource memory, with said packet memory and said resource memory being independently managed, and with said packet memory including a plurality of packet memory regions of memory and sized to accommodate peak burst rate packet traffic, with said buffering packets including distributing packets throughout currently assigned regions to said packet memory; using forwarding infoiination stored in the resource memory to forward packets of said buffered packets; and while said buffering packets and said using forwarding information stored in the resource memory to forward said buffered packets;
acquiring one or more regions from the plurality of packet memory regions by a memory controller, assigning said acquired packet memory regions to be part of said resource memory, and performing additional operations using said resource memory including said acquired packet memory. - View Dependent Claims (20)
-
Specification