The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Sep. 10, 1996
Filed:
Jul. 06, 1993
Martin E Griesmer, Arlington, MA (US);
David Benson, Acton, MA (US);
Digital Equipment Corporation, Maynard, MA (US);
Abstract
A forwarding information management system for a bridge or router is disclosed, including a method and apparatus for merging free space segments in a forwarding table. The forwarding table is allocated into forwarding entry sets and free space queues. Each forwarding entry set must be within a single contiguous block of the forwarding table memory. A set of free queues is used to manage the free space segments in the forwarding table that are not allocated into forwarding entries. Each free queue maintains pointers to free space segments of a particular size. The forwarding table becomes fragmented as forwarding entries are added. A table packing process is triggered by a predetermined trigger to merge small areas of free space into large areas of free space, making consecutive forwarding entry sets contiguous in order to combine small areas of free space into larger ones. The table packing process moves the forwarding entry sets in atomic operations to ensure that forwarding entry sets remain valid during the moves, thus allowing forwarding decisions to be made based on forwarding information within the forwarding entry set being moved while the forwarding entry set is being moved. The table packing process further ensures that the forwarding entry sets are efficiently moved such that they are accessible to the hardware frame forwarding apparatus, which is optimized to only read forwarding entry sets that do not cross memory page boundaries.