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

System and method for a multi-layer network element

Assignee: Oracle America Inc
•
Filing: 1997-06-30
•
Granted: 2000-07-11
•
Expires: 2017-06-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A multi-layer network element for forwarding received packets from an input port to one or more output ports. The packet is examined to look for first and second forwarding information. A packet is also assigned to a class and provided with default packet forwarding information. An associative memory is searched once for each type of information. The results from the two searches are combined with the default packet forwarding information to forward the packet to the appropriate one or more output ports. In some instances, the results of the first search dominate the forwarding decision, in other, the results of the second search dominate the forwarding decision, and in still other instances, the default information dominates.

Inventors

  • 👤 Ariel Hendel
  • 👤 Leo A. Hejza
  • 👤 Shree Murthy
  • 👤 Louise Yeung

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 21:51
CPC Classifications
H; H04; H04L; H04L49/00; H04L49/60; H04L49/602; H04L49/20; H04L49/205; H04L49/30; H04L49/3009; H04L49/35; H04L49/351

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 207 words
A method for making a forwarding decision for a packet entering a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on appropriate output ports, if any, including the steps of: (1) receiving a first header portion of the packet; (2) determining a first search key from the first header portion; (3) causing a memory to output first forwarding information associated with the first search key; (4) receiving a second header portion of the packet; (5) determining a class information for the packet based on the second header portion, wherein each class information includes a class, second header key information indicating which fields of the second header portion should be used to create a second search key, and default forwarding information for packets falling within the class; (6) creating the second search key from the second header portion based on the second header portion key information; (7) causing the memory to output second forwarding information, if any, associated with the second search key; (8) determining the appropriate output ports, if any, based on the first forwarding information, the second forwarding information, and the default forwarding information.
Claim 2
Independent Claim 207 words
A method for making a forwarding decision for a packet entering a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on appropriate output ports, if any, including the steps of: (1) receiving a first header portion of the packet; (2) determining a first search key from the first header portion; (3) causing a memory to output first forwarding information associated with the first search key; (4) receiving a second header portion of the packet; (5) determining a class information for the packet based on the second header portion, wherein each class information includes a class, second header key information indicating which fields of the second header portion should be used to create a second search key, and default forwarding information for packets falling within the class; (6) creating the second search key from the second header portion based on the second header portion key information; (7) causing the memory to output second forwarding information, if any, associated with the second search key; (8) determining the appropriate output ports, if any, based on the first forwarding information, the second forwarding information, and the default forwarding information.
Claim 3
Dependent Claim 56 words
The method of claim 1, wherein: step (3) includes determining, as a function of the first destination, a first address, whose corresponding contents in the memory stores the first forwarding information; and step (7) includes determining, as a function of the search key, a second address, whose corresponding contents the memory stores the second forwarding information.
Claim 4
Dependent Claim 43 words
The method of claim 2, wherein determining the first address includes searching a content-addressable memory with the first destination address to produce the first address; and determining the second includes searching the content-addressable memory with the search key to produce the second address.
Claim 5
Dependent Claim 31 words
The method of claim 2, further including the step of providing the memory as a first memory for storing first forwarding information and a second memory for storing second forwarding information.
Claim 6
Dependent Claim 33 words
The method of claim 3, further including the step of providing the content-addressable memory as a first content-addressable memory that stores the first address and a second content-addressable that stores the second address.
Claim 7
Dependent Claim 43 words
The method of claim 2, wherein determining the first address includes using a hashing function on the first destination to produce the first address; and determining the second address includes using a hashing function on the search key to produce the second address.
Claim 8
Dependent Claim 24 words
The method of claim 1, wherein step (8) is carried out using only the first forwarding information when the first forwarding information so indicates.
Claim 9
Dependent Claim 24 words
The method of claim 1, wherein step (8) is carried out using only the first forwarding information when the second forwarding information so indicates.
Claim 10
Dependent Claim 31 words
The method of claim 1, wherein step (8) is carried out, when the second search key fails to output second forwarding information, only the first forwarding information and default forwarding information.
Claim 11
Dependent Claim 35 words
The method of claim 9, wherein step (8) is carried out using only the first forwarding information when the default forwarding information so indicates and the second search key fails to output second forwarding information.
Claim 12
Dependent Claim 17 words
The method of claim 1, wherein step (8) is carried out using only the second forwarding information.
Claim 13
Dependent Claim 23 words
The method of claim 1, wherein step (8) is carried out using a combination of the first forwarding information and second forwarding information.
Claim 14
Dependent Claim 15 words
The method of claim 9, wherein the second forwarding information includes quality of service information.
Claim 15
Dependent Claim 17 words
The method of claim 13, wherein the quality of service information includes a priority for the packet.
Claim 16
Independent Claim 209 words
An apparatus for making a forwarding decision for a packet having a header, the packet being provided as input to a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on one or more appropriate output ports, if any, comprising: class logic configured to output class information for the packet based on the header, including a class, key information which identifies portions of the header, and default forwarding information for packets falling within the class; search logic configured to output, based on the header, a first search key, and, based on the header, the class, and the key information, a second search key; a memory configured to output a first forwarding result in response to the first search key, and outputs a second forwarding result, if any, in response to the second search key; merge logic configured to output information about appropriate output ports in response to the default forwarding information, the first forwarding result, and the second forwarding result; and forwarding logic configured to direct the packet from the input port to the appropriate output ports, if any, based on the information about the appropriate output ports.
Claim 17
Independent Claim 209 words
An apparatus for making a forwarding decision for a packet having a header, the packet being provided as input to a network element having at least one input port and at least one output port, wherein the packet enters the network element on an input port and exits the network element on one or more appropriate output ports, if any, comprising: class logic configured to output class information for the packet based on the header, including a class, key information which identifies portions of the header, and default forwarding information for packets falling within the class; search logic configured to output, based on the header, a first search key, and, based on the header, the class, and the key information, a second search key; a memory configured to output a first forwarding result in response to the first search key, and outputs a second forwarding result, if any, in response to the second search key; merge logic configured to output information about appropriate output ports in response to the default forwarding information, the first forwarding result, and the second forwarding result; and forwarding logic configured to direct the packet from the input port to the appropriate output ports, if any, based on the information about the appropriate output ports.
Claim 18
Dependent Claim 69 words
The apparatus of claim 15, wherein the memory includes: interface logic configured to output, as a function of the first search key, a first address, and that outputs, as a function of the second search key, a second address; and wherein the memory is configured to output the first forwarding results in response to the first address and output the second forwarding results in response to the second address.
Claim 19
Dependent Claim 72 words
The apparatus of claim 15, wherein the memory includes: a content-addressable memory configured to output a first forwarding information address when accessed using the first search key, and a second forwarding information address when accessed using the second search key; and a forwarding memory configured to output the first forwarding result when accessed using the first forwarding information address, and outputs the second forwarding address when accessed using the second forwarding address.
Claim 20
Dependent Claim 13 words
The apparatus of claim 17, wherein the interface logic is a content-addressable memory.
Claim 21
Dependent Claim 48 words
The apparatus of claim 18, wherein the content-addressable includes: a first content-addressable memory configured to output the first forwarding information address when accessed using the first search key; and a second content-addressable memory configured to output the second forwarding information address when accessed using the second search key.
Claim 22
Dependent Claim 20 words
The apparatus of claim 17, wherein the default forwarding information and the second forwarding result contains quality of service information.
Claim 23
Dependent Claim 39 words
The apparatus of claim 17, wherein the merge logic is configured to output information about appropriate output ports, when the memory fails to output the second forwarding result, using only the default forwarding information and the first forwarding result.
Claim 24
Dependent Claim 15 words
The apparatus of claim 21, wherein the default forwarding information contains quality of service information.
Claim 25
Dependent Claim 30 words
The apparatus of claim 15, wherein the class logic includes at least one encapsulation filter that outputs pointers to locations in the header based on encapsulation information about the packet.

References Cited (Backward Citations)

US4539637A Cited
US4627052A Cited
US4652874A Cited
US4641302A Cited
US4935869A Cited
US4737953A Cited
US4850042A Cited
US4807111A Cited
US4811337A Cited
US4899333A Cited
US4922503A Cited
US4933938A Cited
US5220562A Cited
US5130977A Cited
US5278830A Cited
US5163046A Cited
US5159685A Cited
US5210746A Cited
US5301333A Cited
US5309437A Cited
US5231633A Cited
US5150358A Cited
US5481540A Cited
US5251205A Cited
US5353412A Cited
US5490260A Cited
US5293379A Cited
US5872904A Cited
US5420862A Cited
US5500860A Cited
US5392432A Cited
US5623489A Cited
US5875464A Cited
US5461624A Cited
US5313454A Cited
US5343471A Cited
US5720032A Cited
US5742760A Cited
US5432907A Cited
US5457681A Cited
US5517488A Cited
US5425028A Cited
US5291482A Cited
US5490252A Cited
US5410540A Cited
US5649109A Cited
US5404538A Cited
US5425026A Cited
US5410722A Cited
US5459714A Cited
US5365514A Cited
US5485578A Cited
US5386413A Cited
US5477537A Cited
US5402415A Cited
US5455820A Cited
US5426736A Cited
US5396602A Cited
US5553067A Cited
US5394402A Cited
US5450399A Cited
US5555405A Cited
US5610905A Cited
US5515376A Cited
US5473607A Cited
US5422838A Cited
US5574861A Cited
US5790546A Cited
US5485455A Cited
US5570365A Cited
US5535202A Cited
US5761435A Cited
US5509123A Cited
US5459717A Cited
US5493564A Cited
US5602841A Cited
US5572522A Cited
US5592476A Cited
US5557610A Cited
US5689518A Cited
US5606669A Cited
US5461611A Cited
US5617421A Cited
US5583981A Cited
US5600641A Cited
US5615340A Cited
US5751967A Cited
US5640605A Cited
US5619500A Cited
US5594727A Cited
US5490139A Cited
US5675741A Cited
US5784573A Cited
US5931980A Cited
US5726977A Cited
US5619497A Cited
US5867677A Cited
US5550816A Cited
US5566170A Cited
US5563878A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-07-11 2004-01-10 2004-07-11 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-07-11 2008-01-10 2008-07-11 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-07-11 2012-01-10 2012-07-11 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag