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

Distributed VLAN mechanism for packet field replacement in a multi-layered switched network element using a control field/signal for indicating modification of a packet with a database search engine

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

Abstract

Abstract A system and method for updating packet headers using hardware that maintains the high performance of the network element. In one embodiment, the system includes an input port process (IPP) that buffers the input packet received and forwards header information to the search engine. The search engine searches a database maintained on the switch element to determine the type of the packet. In one embodiment, the type may indicate whether the packet can be routed in hardware. In another embodiment, the type may indicate whether the packet supports VLANs. The search engine sends the packet type information to the IPP along with the destination address (DA) to be updated if the packet is to be routed, or a VLAN tag if the packet has been identified to be forwarded to a particular VLAN. The IPP, during transmission of the packet to a packet memory selectively replaces the corresponding fields, e.g., DA field or VLAN tag field; the modified packet is stored in the packet memory. Associated with the packet memory are control fields containing control field information conveyed to the packet memory by the IPP. An output port process (OPP) reads the modified input packet and the control field information and selectively performs additional modifications to the modified input packet and issue control signals to the output interface (i.e., MAC). The MAC, based upon the control signals, replaces the source address field with the address of the MAC and generates a CRC that is appended to the end of the packet.

Inventors

  • 👤 Shimon Muller
  • 👤 Louise Yeung
  • 👤 Ariel Hendel

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 23:25
CPC Classifications
H; H04; H04L; H04L12/00; H04L12/28; H04L12/46; H04L12/4641; H04L12/4645; H04L12/467; H04L49/00; H04L49/10; H04L49/103; H04L69/00; H04L69/22; H04L49/30; H04L49/3009; H04L49/3036; H04L49/35; H04L49/354; H04L49/60; H04L49/602

Claims Analysis

Total Claims: 37
Claim 1
Independent Claim 278 words
In a packet switch, as apparatus for selective header field replacement comprising: an input port process (IPP) coupled to receive an input packet comprising a header, data and cyclic redundancy code (CRC), the IPP further comprising a buffer configured to temporarily store the input packet; a database configured to store information regarding packets and routes; a search engine coupled between the IPP and the database, the search engine coupled to receive the header and configured to search the database to determine information regarding a type of the input packet; the IPP further configured to output the input packet from the buffer and to selectively replace at least one field in the header in response to the information provided by the search engine and selectively output control field information to indicate the need for additional modification of the modified input packet prior to output from the packet switch; an output port process (OPP) configured to receive the selectively modified input packet and the control field information from the IPP, the OPP configured to selectively generate at least one control signal to indicate that the modified input packet is to be further modified prior to output from the packet switch and to output the selectively modified input packet; and an output interface, the output interface coupled to the OPP to receive the at least one control signal and the selectively modified input packet, the output interface configured to output a packet from the packet switch that corresponds to the selectively modified input packet by selectively modifying, in response to the at least one control signal, at least one header field and the CRC prior to transmission of the output packet.
Claim 2
Dependent Claim 278 words
In a packet switch, as apparatus for selective header field replacement comprising: an input port process (IPP) coupled to receive an input packet comprising a header, data and cyclic redundancy code (CRC), the IPP further comprising a buffer configured to temporarily store the input packet; a database configured to store information regarding packets and routes; a search engine coupled between the IPP and the database, the search engine coupled to receive the header and configured to search the database to determine information regarding a type of the input packet; the IPP further configured to output the input packet from the buffer and to selectively replace at least one field in the header in response to the information provided by the search engine and selectively output control field information to indicate the need for additional modification of the modified input packet prior to output from the packet switch; an output port process (OPP) configured to receive the selectively modified input packet and the control field information from the IPP, the OPP configured to selectively generate at least one control signal to indicate that the modified input packet is to be further modified prior to output from the packet switch and to output the selectively modified input packet; and an output interface, the output interface coupled to the OPP to receive the at least one control signal and the selectively modified input packet, the output interface configured to output a packet from the packet switch that corresponds to the selectively modified input packet by selectively modifying, in response to the at least one control signal, at least one header field and the CRC prior to transmission of the output packet.
Claim 3
Dependent Claim 58 words
The apparatus as set forth in claim 1, wherein the type comprises an indication of whether the input packet is to be routed, wherein if the input packet is to be routed, the search engine is configured to notify the IPP that the input packet is to be routed and the destination address (DA) of a next hop.
Claim 4
Dependent Claim 44 words
The apparatus as set forth in claim 2, wherein the IPP is configured to replace a DA field of the header with a DA provided by the search engine if the search engine notifies the IPP that the input packet is to be routed.
Claim 5
Dependent Claim 53 words
The apparatus as set forth in claim 2, wherein, the control field information comprises a field set by the IPP to indicate that the source address field of the header is to be replaced prior to output of the modified input packet, the field set when the input packet is to be routed.
Claim 6
Dependent Claim 32 words
The apparatus as set forth in claim 2, wherein the at least one control signal comprises control signals to selectively indicate generation of a CRC and a replacement of a source address.
Claim 7
Dependent Claim 67 words
The apparatus as set forth in claim 5, wherein the output interface is configured to insert the address of the output interface in a source address field of the header in response to the receipt of the at least one control signal indicating replacement of the source address, and to generate a CRC in response to the at least one control signal indicating regeneration of the CRC.
Claim 8
Dependent Claim 35 words
The apparatus as set forth in claim 1, wherein the header comprises a time to live (TTL) field, the IPP further configured to decrement a value in the TTL field by one prior to output.
Claim 9
Dependent Claim 30 words
The apparatus as set forth in claim 1, wherein the header comprises a checksum field, the IPP further configured to update a value in the checksum field prior to output.
Claim 10
Dependent Claim 21 words
The apparatus as set forth in claim 2, wherein the destination address is replaced when the packet is a unicast packet.
Claim 11
Dependent Claim 39 words
The apparatus as set forth in claim 5, wherein the OPP is further configured to strip off the CRC during transmission of the modified input packet to the output interface if the output interface is to generate the CRC.
Claim 12
Dependent Claim 15 words
The apparatus as set forth in claim 1, wherein the output interface is a MAC.
Claim 13
Dependent Claim 21 words
The apparatus as set forth in claim 11, wherein the at least one control signal comprises a replace -- sa signal.
Claim 14
Dependent Claim 35 words
The apparatus as set forth in claim 11, wherein the at least one control signal comprises a state of a NO -- CRC bit in a control word transmitted to the MAC by the OPP.
Claim 15
Dependent Claim 239 words
The apparatus as set forth in claim 1, wherein the switch supports virtual local area networks (VLANs) and the type comprises an indication of whether the input packet is untagged, tagged with a valid tag or tagged with an invalid tag, where: if the input is untagged, and the search engine is configured to determine that the input packet belongs to a VLAN that has been defined, and to notify the IPP of a VLAN tag of the defined VLAN and at least one indicating that the VLAN tag is to be inserted into a VLAN tag filed of the header; if the input packet is tagged with an invalid tag, and the search engine is configured to determine that the input packet to a VLAN that has been defined, and to notify the IPP of the VLAN tag of the defined VLAN and at least one indicator indicating that the VLAN tag is to be replaced; if the input packet is tagged with an valid tag, and the search engine is configured to determine that the input packet should be routed to a different VLAN, and to notify the IPP of the VLAN tag of the different VLAN and at least one indicator indicating that the VLAN tag is to be replaced; and notherwise the search engine is configured to notify the IPP of at least one indicator that indicates no insertion or replacement of the VLAN tag.
Claim 16
Dependent Claim 94 words
The apparatus as set forth in claim 14, wherein: if the VLAN tag is to be inserted, the IPP is configured to insert the VLAN tag provided by the search engine, and generate control field information of a first state; if the VLAN tag is to be replaced, the IPP is configured to replace the VLAN tag in the input packet header with the VLAN tag provided by the search engine and generate control field information of a second state; otherwise, the IPP is configured to generate control field information of a third state.
Claim 17
Dependent Claim 35 words
The apparatus as set forth in claim 15, wherein the OPP is further configured to selectively remove the VLAN tag field in the modified input packet based on the state of the control field information.
Claim 18
Dependent Claim 32 words
The apparatus as set forth in claim 15, wherein the OPP is configured to selectively generate a control signal to regenerate a CRC based on the state of the control field information.
Claim 19
Dependent Claim 32 words
The apparatus as set forth in claim 17, wherein the output interface is configured to generate a CRC in response to the at least one control signal indicating regeneration of the CRC.
Claim 20
Dependent Claim 60 words
The apparatus as set forth in claim 1, further comprising a packet memory configured to store a selectively modified input packet received from the IPP, the packet memory further configured to store control field information, the OPP coupled to the packet memory and configured to receive the selectively modified input packet and the control field information from the packet memory.
Claim 21
Independent Claim 225 words
A method for selectively performing header field replacement in a network switch device comprising the steps of: an input port process (IPP) buffering an input packet and providing a copy of a header associated with the input packet to a search engine; the search engine searching a database to determine a type of the input packet and notifying the IPP of the type of the input packet; the IPP selectively replacing at least one field in the header in response to the information provided by the search engine and selectively outputting control field information to indicate the need for additional modification of the modified input packet prior to output from the network switch; an output port process (OPP) reading the modified input packet and corresponding control field information from the IPP, the OPP stripping a cyclic redundancy code (CRC) associated with the input packet and selectively generating at least one control signal to an output interface to indicate that the modified input packet is to be further modified prior to output from the network switch and to output the selectively modified input packet; the output interface outputting the modified input packet further selectively modified in response to the at least one control signal received from the OPP by selectively modifying at least one header field and regenerating the CRC based upon the modified input packet.
Claim 22
Independent Claim 225 words
A method for selectively performing header field replacement in a network switch device comprising the steps of: an input port process (IPP) buffering an input packet and providing a copy of a header associated with the input packet to a search engine; the search engine searching a database to determine a type of the input packet and notifying the IPP of the type of the input packet; the IPP selectively replacing at least one field in the header in response to the information provided by the search engine and selectively outputting control field information to indicate the need for additional modification of the modified input packet prior to output from the network switch; an output port process (OPP) reading the modified input packet and corresponding control field information from the IPP, the OPP stripping a cyclic redundancy code (CRC) associated with the input packet and selectively generating at least one control signal to an output interface to indicate that the modified input packet is to be further modified prior to output from the network switch and to output the selectively modified input packet; the output interface outputting the modified input packet further selectively modified in response to the at least one control signal received from the OPP by selectively modifying at least one header field and regenerating the CRC based upon the modified input packet.
Claim 23
Dependent Claim 42 words
The method as set forth in claim 20, further comprising the step of storing the modified input packet and control field information in a packet memory; the OPP further reading the modified input packet and control field information from the packet memory.
Claim 24
Dependent Claim 55 words
The method as set forth in claim 20, wherein the type comprises an indication of whether the input packet is to be routed, wherein if the input packet is to be routed, the search engine notifying the IPP that the input packet is to be routed and the destination address (DA) of a next hop.
Claim 25
Dependent Claim 43 words
The method as set forth in claim 22, wherein the step of the IPP selectively replacing comprises the step of replacing a DA field of the header with a DA provided by the search engine if the input packet is to be routed.
Claim 26
Dependent Claim 58 words
The method as set forth in claim 22, wherein, the control field information comprises a field (replace -- SA) set by the IPP to indicate that the source address field of the header is to be replaced prior to output of the modified input packet, the replace -- SA set when the input packet is to be routed.
Claim 27
Dependent Claim 39 words
The method as set forth in claim 22, wherein the step of generating at least one control signal comprises the step of generating control signals to selectively indicate generation of a CRC and a replacement of a source address.
Claim 28
Dependent Claim 68 words
The method as set forth in claim 25, wherein the step of outputting comprises the steps of: inserting the address of the output interface in the source address field of the header in response to the receipt of the at least one control signal indicating replacement of the source address; and generating a CRC in response to the at least one control signal indicating regeneration of the CRC.
Claim 29
Dependent Claim 237 words
The method as set forth in claim 20, wherein the switch supports virtual local area networks (VLANs) and the type comprises an indication of whether the input packet untagged, tagged with a valid tag or tagged with an invalid tag, wherein: if the input packet is untagged, and the search engine determines that the input packet belongs to a VLAN that has been defined, the search engine notifying the IPP of a VLAN tag of the defined VLAN, and further issuing at least one indicator indicating that the VLAN tag is to be inserted into a VLAN tag field of the header; if the input packet is tagged with an invalid tag, and the search engine determines that the input packet belongs to a VLAN that has been defined, the search engine notifying the IPP of the VLAN tag of the defined VLAN, and further issuing at least one indicator indicating that the VLAN tag is to be replaced; if the input packet is tagged with an valid tag, and the search engine determines that the input packet should be routed to a different VLAN, the search engine notifying the IPP of the VLAN tag of the different VLAN, and issuing at least one indicator indicating that the VLAN tag is to be replaced; and otherwise the search engine notifying the IPP of at least one indicator that indicates no insertion or replacement of the VLAN tag.
Claim 30
Dependent Claim 137 words
The method as set forth in claim 27, wherein: if the VLAN tag is to be inserted, the step of the IPP selectively replacing comprising the step of inserting the VLAN tag provided by the search engine, and the step of selectively outputting control field information comprising the step of generating control field information of a first state; if the VLAN tag is to be replaced, the step of the IPP selectively replacing comprising the step of replacing the VLAN tag in the input packet header with the VLAN tag provided by the search engine and the step of selectively outputting control field information comprising the step of generating control field information of a second state; otherwise, the step of selectively outputting control field information comprising the step of generating control field information of a third state.
Claim 31
Dependent Claim 35 words
The method as set forth in claim 28, further comprising the step of the OPP selectively removing the VLAN tag field in the modified input packet based on the state of the control field information.
Claim 32
Dependent Claim 36 words
The method as set forth in claim 28, wherein the step of selectively generating at least one control signal comprises a control signal to regenerate a CRC based on the state of the control field information.
Claim 33
Dependent Claim 37 words
The method as set forth in claim 30, wherein the output interface further selectively modifies the modified input packet by generating a CRC in response to the at least one control signal indicating regeneration of the CRC.
Claim 34
Dependent Claim 264 words
In a packet switch, an apparatus for selective header field replacement comprising: a switch element including an input port process (IPP), a database, a search engine, an output port process (OPP), and a media access controller (MAC), the IPP coupled to the MAC and the search engine the IPP receiving from the MAC header information associated with an input packet comprising a header, data and a cyclic redundancy code (CRC), the database configured to store information to facilitate forwarding and filtering of packets, the search engine coupled to the database and coupled to receive a copy of the header from the IPP, the search engine configured to search the database to determine and supply information regarding a type of the input packet and information regarding the input packet'next hop to the IPP which is configured to selectively replace at least one field in the header responsive to the type and to selectively output control field information to the OPP to indicate the need for additional modification of the input packet prior to output from the packet switch; if the type determined by the search engine indicates that the header does not change, the input packet is output from the packet switch without modification thereby preserving end-to-end error robustness; if the information determined by the search engine indicates that at least one portion of the header changes, the header of the input packet is updated by the IPP, the CRC is stripped by the OPP and regenerated by the MAC based upon the updated packet and the updated packet is output from the packet switch.
Claim 35
Dependent Claim 264 words
In a packet switch, an apparatus for selective header field replacement comprising: a switch element including an input port process (IPP), a database, a search engine, an output port process (OPP), and a media access controller (MAC), the IPP coupled to the MAC and the search engine the IPP receiving from the MAC header information associated with an input packet comprising a header, data and a cyclic redundancy code (CRC), the database configured to store information to facilitate forwarding and filtering of packets, the search engine coupled to the database and coupled to receive a copy of the header from the IPP, the search engine configured to search the database to determine and supply information regarding a type of the input packet and information regarding the input packet'next hop to the IPP which is configured to selectively replace at least one field in the header responsive to the type and to selectively output control field information to the OPP to indicate the need for additional modification of the input packet prior to output from the packet switch; if the type determined by the search engine indicates that the header does not change, the input packet is output from the packet switch without modification thereby preserving end-to-end error robustness; if the information determined by the search engine indicates that at least one portion of the header changes, the header of the input packet is updated by the IPP, the CRC is stripped by the OPP and regenerated by the MAC based upon the updated packet and the updated packet is output from the packet switch.
Claim 36
Dependent Claim 185 words
In a packet switch, an apparatus for selective header field replacement comprising: an input port process (IPP) configured to receive a packet comprising a header, data and cyclic redundancy code (CRC) and configured to selectively replace at least one field in the header in response to information regarding a type of packet and selectively output control field information to indicate additional modification of the packet prior to output from the switch; an output port process (OPP), coupled to the IPP, configured to receive the packet and the control field information, the OPP configured to selectively generate at least one control signal to indicate that the packet is to be further modified prior to output from the switch and to output the packet; and a media access controller (MAC) coupled to receive the at least one control signal and the packet, the MAC configured to transmit an output packet corresponding to the selectively modified packet, in response to the at least one control signal, the MAC further configured to selectively modify at least one header field and the CRC prior to transmission of the output packet.
Claim 37
Dependent Claim 185 words
In a packet switch, an apparatus for selective header field replacement comprising: an input port process (IPP) configured to receive a packet comprising a header, data and cyclic redundancy code (CRC) and configured to selectively replace at least one field in the header in response to information regarding a type of packet and selectively output control field information to indicate additional modification of the packet prior to output from the switch; an output port process (OPP), coupled to the IPP, configured to receive the packet and the control field information, the OPP configured to selectively generate at least one control signal to indicate that the packet is to be further modified prior to output from the switch and to output the packet; and a media access controller (MAC) coupled to receive the at least one control signal and the packet, the MAC configured to transmit an output packet corresponding to the selectively modified packet, in response to the at least one control signal, the MAC further configured to selectively modify at least one header field and the CRC prior to transmission of the output packet.

References Cited (Backward Citations)

US4627052A Cited
US4652874A Cited
US4737953A Cited
US4850042A Cited
US4807111A Cited
US4811337A Cited
US4899333A Cited
US4922503A Cited
US4933938A Cited
US5220562A Cited
US5130977A Cited
US5278830A Cited
US5210746A Cited
US5301333A Cited
US5309437A Cited
US5231633A Cited
US5150358A Cited
US5481540A Cited
US5251205A Cited
US5293379A Cited
US5500860A Cited
US5420862A Cited
US5392432A Cited
US5461624A Cited
US5313454A Cited
US5343471A Cited
US5742760A Cited
US5432907A Cited
US5720032A Cited
US5457681A Cited
US5425028A Cited
US5291482A Cited
US5490252A Cited
US5410540A Cited
US5649109A Cited
US5404538A Cited
US5410722A Cited
US5459714A Cited
US5485578A Cited
US5386413A Cited
US5477537A Cited
US5455820A Cited
US5426736A Cited
US5396602A Cited
US5553067A Cited
US5394402A Cited
US5450399A Cited
US5555405A Cited
US5515376A Cited
US5610905A Cited
US5473607A Cited
US5422838A Cited
US5485455A Cited
US5790546A Cited
US5570365A Cited
US5535202A Cited
US5761435A Cited
US5509123A Cited
US5459717A Cited
US5602841A Cited
US5572522A Cited
US5592476A Cited
US5689518A Cited
US5606669A Cited
US5461611A Cited
US5617421A Cited
US5583981A Cited
US5600641A Cited
US5751967A Cited
US5640605A Cited
US5619500A Cited
US5594727A Cited
US5490139A Cited
US5675741A Cited
US5784573A Cited
US5726977A Cited
US5550816A Cited
US5566170A Cited
US5745048A Cited
US5706472A Cited
US5561666A Cited
US5633865A Cited
US5608726A Cited
US5802047A Cited
US5619661A Cited
US5636371A Cited
US5734865A Cited
US5790808A Cited
US5751971A Cited
US5651002A Cited
US5754540A Cited
US5691984A Cited
US5740175A Cited
US5757771A Cited
US5684800A Cited
US5754801A Cited
US5740375A Cited
US5754774A Cited
US5781549A Cited
US5724358A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag