Claims
- 1. A method for operating an access control module (ACM) at a packet processor module that uses a lookup table to associate forwarding information with a received packet, comprising:
maintaining a lookup table entry database having records that include a location of each lookup table entry in a lookup table; having the ACM go offline; restarting the ACM; selectively updating the lookup table according to the lookup table entry database and a set of new lookup table entries.
- 2. The method of claim 1, wherein said lookup table entries are content addressable memory (CAM) entries, further comprising:
incorporating said lookup table into a CAM.
- 3. The method of claim 1, wherein said preserving further comprises:
saving said records in shared memory, wherein the records are fixed length.
- 4. The method of claim 1, further comprising:
entering a first set of lookup table entries into a lookup table; preserving, for an ACM, the first set of lookup table entries; and obtaining a second set of lookup table entries, wherein said selectively updating further includes updating according to a subset of said second set of lookup table entries, wherein said subset includes the differences between the first set of lookup table entries and the second set of lookup table entries.
- 5. The method of claim 4, wherein said selectively updating further comprises:
making changes to the lookup table for new lookup table entries, wherein the new lookup table entries are lookup table entries in the second set of lookup table entries that do not exist in the first set of lookup table entries; and making no changes to the lookup table for lookup table entries that exist in both the first set of lookup table entries and the second set of lookup table entries.
- 6. The method of claim 4, wherein said selectively updating further comprises:
making changes to the lookup table for a first lookup table entry and a second lookup table entry that respectively exist in the first set of lookup table entries and the second set of lookup table entries, wherein the first lookup table entry and the second lookup table entry are associated with different lookup table positions, but are duplicates in other respects.
- 7. The method of claim 4, wherein said selectively updating further comprises:
making changes to the lookup table for old lookup table entries, wherein the old lookup table entries are lookup table entries in the first set of lookup table entries that do not exist in the second set of lookup table entries, wherein said changes include deleting the old lookup table entries from the lookup table.
- 8. A method for operating an access control module (ACM) that uses a lookup table to associated forwarding information with a received packet, comprising:
getting an old access list from persistent memory, wherein entries in a content addressable memory (CAM) are associated with the old access list; obtaining a new access list; deriving a delta access list from a comparison of the new access list with the old access list, wherein the delta access list includes differences between the new access list and the old access list; and selectively updating the CAM entries according to the delta access list.
- 9. The method of claim 8, wherein said obtaining said new access list further comprises:
requesting the new access list from a main access control module (MACM); and receiving the new access list from the MACM.
- 10. The method of claim 8, wherein said deriving a delta list further comprises:
performing a diff on the new access list and the old access list.
- 11. The method of claim 8, wherein said selectively updating further comprises:
making changes to the CAM for new access list entries, wherein the new access list entries are access list entries in the new access list that do not exist in the old access list; and making no changes to the CAM for access list entries that exist in both the new access list and the old access list.
- 12. The method of claim 8, wherein said selectively updating further comprises:
making changes to the CAM for a first access list entry and a second access list entry that respectively exist in the new access list and the old access list, wherein the first access list entry and the second access list entry are identical, and wherein the first access list entry and the second access list entry are associated with different CAM locations.
- 13. A traffic forwarding system configured to perform a hitless restart of an access control module (ACM), including a content addressable memory (CAM) that includes a lookup table that is used to associate routing information with a received packet, comprising:
a restart CAM entry database that includes information indicating location of CAM entries in a CAM; and a lookup module, including:
a persistent access list (AL) database, wherein the CAM is configured to include AL entries from the persistent AL database; and an ACM, including:
an AL database, including AL entries, that is a copy of the persistent AL database; and an access control engine configured to selectively update the CAM according to the restart CAM entry database and differences between the persistent AL database and a new AL.
- 14. The system of claim 13, wherein said access control engine is further configured to:
obtain said new AL; derive a delta AL by comparing the new AL with an old AL in the persistent AL database, wherein the delta AL includes the differences between the new AL and the old AL; and selectively update the restart CAM entry database according to the delta AL.
- 15. The system of claim 14, further comprising a main access control module (MACM) that includes a main AL database, wherein the AL database is configured to contain AL entries of the main AL database.
- 16. The system of claim 13, wherein said ACM further comprises an applied AL database and said lookup module further comprises a persistent applied AL database that is a copy of the applied AL database.
- 17. The system of claim 16, wherein said access control engine is further configured to:
set the applied AL database to the persistent applied AL database when the ACM is restarted, wherein the applied AL database is used to ensure that an access list is properly mapped to an interface.
- 18. The system of claim 13, wherein said access control engine is further configured to:
set the AL database to the persistent AL database when the ACM is restarted.
- 19. The system of claim 13, further comprising a CAM allocator configured to determine the location of free space in the CAM.
- 20. The system of claim 13, further comprising said CAM, wherein said lookup module further includes a CAM driver that the ACM instructs to selectively update the CAM.
CROSS REFERENCE TO RELATED APPLICATION
[0001] This application is entitled to the benefit of provisional Patent Application Serial No. 60/385,976, filed Jun. 4, 2002. This application incorporates by reference co-pending patent application Ser. No. 10/321,871 filed Dec. 17, 2002 entitled “MANAGING A POSITION-DEPENDENT DATA SET THAT IS STORED IN A CONTENT ADDRESSABLE MEMORY ARRAY AT A NETWORK NODE.”
Provisional Applications (1)
|
Number |
Date |
Country |
|
60385976 |
Jun 2002 |
US |