← Back to Patent Explorer
US6236658B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for message routing, including a content addressable memory

Assignee: Cisco Technology Inc
•
Filing: 1997-11-21
•
Granted: 2001-05-22
•
Expires: 2017-11-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a router coupled to a number of networks, a data packet is received from a first one of the networks and routed to a second one of the networks. The data packet includes a first portion having a destination network address. The destination network address for the data packet is input to a content addressable memory (“CAM”) while the router is still receiving at least a portion of the data packet, so that the CAM, having network address information stored therein, identifies one of the networks coupled to the router and corresponding to the destination address of the data packet while the router is still receiving at least a portion of the data packet.

Inventors

  • 👤 Alexander Dankwart Essbaum
  • 👤 Aubrey Deene Ogden

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 13:17
CPC Classifications
H; H04; H04L; H04L45/00; H04L45/40; H04L49/00; H04L49/25; H04L49/10; H04L49/103; H04L49/30; H04L49/3027

Claims Analysis

Total Claims: 9
Claim 1
Independent Claim 188 words
A method, in a router coupled to a plurality of networks, for receiving a data packet from a first one of the networks and routing the data packet to a second one of the networks, wherein the data packet includes a first portion having a destination network address, the method comprising the steps of: a) receiving a first portion of a data packet, wherein a first portion of the data packet includes a destination network address; b) asserting the destination network address for the data packet from the first portion of the data packet, at a content addressable memory (“CAM”) input which has stored routing information, while the first packet is not yet fully received from the first network; c) identifying, by the CAM while the router is still receiving a remaining portion of the data packet, one of the networks coupled to the router and corresponding to the destination network, in response to the destination network address being input the CAM; and d) using a hash table to track how frequently an entry in the CAM is used, and dropping those CAM entries which are seldom used.
Claim 2
Independent Claim 188 words
A method, in a router coupled to a plurality of networks, for receiving a data packet from a first one of the networks and routing the data packet to a second one of the networks, wherein the data packet includes a first portion having a destination network address, the method comprising the steps of: a) receiving a first portion of a data packet, wherein a first portion of the data packet includes a destination network address; b) asserting the destination network address for the data packet from the first portion of the data packet, at a content addressable memory (“CAM”) input which has stored routing information, while the first packet is not yet fully received from the first network; c) identifying, by the CAM while the router is still receiving a remaining portion of the data packet, one of the networks coupled to the router and corresponding to the destination network, in response to the destination network address being input the CAM; and d) using a hash table to track how frequently an entry in the CAM is used, and dropping those CAM entries which are seldom used.
Claim 3
Dependent Claim 44 words
The method of claim 1 , comprising the step of: e) storing at least a portion of the data packet, while the router is still receiving a portion of the data packet, in a buffer for sending to the identified one of the networks.
Claim 4
Dependent Claim 222 words
The method of claim 2 , wherein steps c) and e) are in response to the CAM having stored therein the destination network address of the data packet and the identity of the one of the networks coupled to the router and corresponding to the destination address of the data packet, and the method comprises: f) identifying, by a processor searching a database, one of the networks coupled to the router and corresponding to the destination address of the data packet, wherein the CAM does not have stored therein the destination network address of the data packet and the identity of the one of the networks coupled to the router and corresponding to the destination address of the data packet; g) storing the entire data packet in the output buffer for the corresponding network identified in the step f) after the router has received the entire data packet, in response to the CAM not having stored therein the destination network address of the data packet and the identity of the one of the networks coupled to the router and corresponding to the destination address of the data packet; and h) storing, in the CAM, the destination network address of the data packet, and the corresponding identity of the one of the networks coupled to the router which was identified in step f).
Claim 5
Dependent Claim 178 words
A router coupled to a plurality of networks, for receiving a data packet from a first one of the networks and routing the data packet to a second one the networks, said data packet including a first portion having a destination address for the packet, the router comprising: receiving means for receiving a data packet, wherein the data packet includes a first portion having a destination network address; content addressable memory (“CAM”) connected to the router and having network router address information stored therein; and means for inputting the destination network address to the CAM, while the data packet is not fully received and the receiving means is still receiving a portion of the data packet, so that the CAM identifies one of the networks coupled to the router corresponding to the destination address of the data packet while the receiving means is still receiving a portion of the data packet; a hash table to track how frequently an entry in the CAM is accessed; and means to drop from the CAM those entries which are seldom accessed.
Claim 6
Dependent Claim 178 words
A router coupled to a plurality of networks, for receiving a data packet from a first one of the networks and routing the data packet to a second one the networks, said data packet including a first portion having a destination address for the packet, the router comprising: receiving means for receiving a data packet, wherein the data packet includes a first portion having a destination network address; content addressable memory (“CAM”) connected to the router and having network router address information stored therein; and means for inputting the destination network address to the CAM, while the data packet is not fully received and the receiving means is still receiving a portion of the data packet, so that the CAM identifies one of the networks coupled to the router corresponding to the destination address of the data packet while the receiving means is still receiving a portion of the data packet; a hash table to track how frequently an entry in the CAM is accessed; and means to drop from the CAM those entries which are seldom accessed.
Claim 7
Dependent Claim 48 words
The router of claim 4 , comprising: control logic responsive to the CAM for directing the data packet to the network identified by the CAM, so that an output buffer begins receiving the data packet while the receiving means is still receiving a portion of the data packet.
Claim 8
Dependent Claim 134 words
The router of claim 5 , comprising: an input buffer for receiving a data packet from the receiving means; data storage means for storing a computer program and a database of network routing information; and a processor for searching the database, wherein the processor searches the database and identifies one of the networks coupled to the router corresponding to the destination address of the data packet, wherein the CAM does not have stored therein the destination network address of the data packet and the identity of the one of the networks coupled to the router corresponding to the destination address of the data packet, and wherein the processor initiates transferring of the data packet from the input buffer to the output buffer, after the entire data packet has been stored in the input buffer.
Claim 9
Dependent Claim 44 words
The router of claim 6 , comprising: means for storing, in the CAM, the destination network address of the data packet and the corresponding identity of the one of the networks coupled to the router, which were identified by the processor searching the database.

References Cited (Backward Citations)

US5521913A Cited
US5764895A Cited
US5633865A Cited
US5740175A Cited
US5764634A Cited
US5872783A Cited
US5949799A Cited
US5920698A Cited
US6018526A Cited
US6026467A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-05-21 2004-11-20 2005-05-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-05-21 2008-11-20 2009-05-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-05-21 2012-11-20 2013-05-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag