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

Internetworking device with enhanced packet header translation and memory

Assignee: HP Inc
•
Filing: 1995-07-12
•
Granted: 1997-07-22
•
Expires: 2015-07-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An internetworking device providing enhanced packet header translation for translating the format of a header associated with a source network into a header format associated with a destination network of a different type than the source network. The device includes a memory for storing an address portion of a received packet header in a first block of buffer locations and the remainder of the received packet in a second block of buffer locations, spaced from the first block of buffer locations by a gap. The gap permits supplemental header information to be written into the buffer when necessary for translation. The device further includes a split memory, having an SRAM portion and a DRAM portion allocated to each buffer, with at least the address portion of a received packet and the gap located in the SRAM portion, so as to optimize the translation performance of the device.

Inventors

  • 👤 Stephen L. Van Seters
  • 👤 Christopher P. Lawler
  • 👤 David C. Ready

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 08:50
CPC Classifications
H; H04; H04L; H04L12/00; H04L12/28; H04L12/46; H04L12/4604; H04L12/462; H04L12/4625; H04L49/00; H04L49/90; H04L69/00; H04L69/18

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 98 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective network and adapted for storing a packet received from said respective network, said packet including a header having an address portion; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network, wherein said address portion of said header is separated from a remaining portion of said packet in said buffer by a gap.
Claim 2
Dependent Claim 98 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective network and adapted for storing a packet received from said respective network, said packet including a header having an address portion; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network, wherein said address portion of said header is separated from a remaining portion of said packet in said buffer by a gap.
Claim 3
Dependent Claim 20 words
The internetworking device recited in claim 1 further comprising a frame processor for inserting supplemental header information into said gap.
Claim 4
Dependent Claim 64 words
The internetworking device recited in claim 1 wherein said buffer manager comprises a first register for storing a header offset value corresponding to a first location in said buffer starting at which said address portion of said header is stored and a body offset value corresponding to a second location in said buffer starting at which said remaining portion of said packet is stored.
Claim 5
Dependent Claim 36 words
The internetworking device recited in claim 1 wherein each of said buffers comprises a first portion having a first access latency and a second portion having a second access latency, longer than said first access latency.
Claim 6
Dependent Claim 25 words
The internetworking device recited in claim 4 wherein said first portion of said buffers is SRAM and said second portion of said buffers is DRAM.
Claim 7
Dependent Claim 19 words
The internetworking device recited in claim 5 wherein said gap is provided in said SRAM portion of said buffers.
Claim 8
Dependent Claim 75 words
A buffer for storing a packet received by an internetworking device from a source network prior to transmission to a destination network, said packet including a header having an address portion, comprising: a first storage area for storing said address portion of said packet header; and a second storage area for storing a portion of the remainder of said packet, wherein said first and second storage areas are spaced by a gap in said buffer.
Claim 9
Dependent Claim 75 words
A buffer for storing a packet received by an internetworking device from a source network prior to transmission to a destination network, said packet including a header having an address portion, comprising: a first storage area for storing said address portion of said packet header; and a second storage area for storing a portion of the remainder of said packet, wherein said first and second storage areas are spaced by a gap in said buffer.
Claim 10
Dependent Claim 28 words
The buffer recited in claim 7 wherein said gap is adapted to receive supplemental header information when said source network and said destination network are of different types.
Claim 11
Dependent Claim 47 words
The buffer recited in claim 7 further comprising a third storage area for storing said remainder of said packet, wherein said first and second storage areas have a first access latency and said third storage area has a second access latency, longer than said first access latency.
Claim 12
Dependent Claim 22 words
The buffer recited in claim 9 wherein said first and second storage areas are SRAM and said third storage area is DRAM.
Claim 13
Independent Claim 108 words
A method for storing a packet having a header received by an internetworking device from a first network prior to transmission to a second network, comprising the steps of: reading an address portion of said packet header into a first plurality of sequential locations of a buffer, starting at a header offset location; and reading a remaining portion of said packet into a second plurality of sequential locations of said buffer, starting at a body offset location, wherein said body offset location is spaced from said header offset location to provide a gap in said buffer after said address portion and before said remaining portion of said packet.
Claim 14
Independent Claim 108 words
A method for storing a packet having a header received by an internetworking device from a first network prior to transmission to a second network, comprising the steps of: reading an address portion of said packet header into a first plurality of sequential locations of a buffer, starting at a header offset location; and reading a remaining portion of said packet into a second plurality of sequential locations of said buffer, starting at a body offset location, wherein said body offset location is spaced from said header offset location to provide a gap in said buffer after said address portion and before said remaining portion of said packet.
Claim 15
Dependent Claim 31 words
The method recited in claim 11 further comprising the step of writing supplemental header information into said gap in said buffer when said first and second networks are of different types.
Claim 16
Dependent Claim 110 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective one of said plurality of networks and adapted for storing a packet received from said respective network, said packet including a header having an address portion, wherein each of said buffers comprises a first portion having a first access latency and a second portion having a second access latency longer than said first access latency; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network.
Claim 17
Dependent Claim 110 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective one of said plurality of networks and adapted for storing a packet received from said respective network, said packet including a header having an address portion, wherein each of said buffers comprises a first portion having a first access latency and a second portion having a second access latency longer than said first access latency; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network.
Claim 18
Dependent Claim 29 words
The internetworking device recited in claim 13 wherein said first portion of each of said buffers is SRAM and said second portion of each of said buffers is DRAM.
Claim 19
Dependent Claim 28 words
The internetworking device recited in claim 14 wherein said buffer manager assigns addresses in said SRAM portion of said buffer for storing said address portion of said header.
Claim 20
Dependent Claim 84 words
The internetworking device recited in claim 13 wherein said buffer manager comprises a pair of registers, a first one of said registers storing a header offset value corresponding to a first location in said buffer starting at which said address portion of said header is stored, and a second one of said registers storing a body offset value corresponding to a second location in said buffer starting at which a remaining portion of said packet, following said address portion of said header, is stored.
Claim 21
Dependent Claim 211 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective one of said plurality of networks and adapted for storing a packet received from said respective network, said packet including a header having an address portion, wherein each of said buffers comprises a first portion having a first access latency and a second portion having a second access latency longer than said first access latency and wherein said first portion of each of said buffers is SRAM and said second portion of each of said buffers is DRAM; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network, wherein said buffer manager assigns addresses in said SRAM portion of said buffer for storing said address portion of said header and wherein said buffer manager increments said assigned addresses in said SRAM portion of said buffer once said address portion of said header has been stored, so as to provide a gap in the SRAM portion of said buffer between said address portion of said header and a remaining portion of said packet, following said address portion.
Claim 22
Dependent Claim 211 words
An internetworking device for interconnecting a plurality of networks, said device comprising: a memory comprising a plurality of buffers, each buffer assigned to a respective one of said plurality of networks and adapted for storing a packet received from said respective network, said packet including a header having an address portion, wherein each of said buffers comprises a first portion having a first access latency and a second portion having a second access latency longer than said first access latency and wherein said first portion of each of said buffers is SRAM and said second portion of each of said buffers is DRAM; and a buffer manager, interconnecting said plurality of networks and said memory, said buffer manager controlling storage of said packet in one of said buffers assigned to said respective network, wherein said buffer manager assigns addresses in said SRAM portion of said buffer for storing said address portion of said header and wherein said buffer manager increments said assigned addresses in said SRAM portion of said buffer once said address portion of said header has been stored, so as to provide a gap in the SRAM portion of said buffer between said address portion of said header and a remaining portion of said packet, following said address portion.
Claim 23
Dependent Claim 59 words
The internetworking device recited in claim 17 further comprising a frame processor adapted for accessing said SRAM portion of said buffer to insert supplemental header information into said gap to translate said packet header into a format compatible with one of said plurality of networks of a type different than said respective network from which said packet is received.
Claim 24
Dependent Claim 105 words
A memory for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, said memory comprising: a first memory portion having a first access latency, said first memory portion having a predetermined size and being adapted to store at least said address portion of said header; and a second memory portion having a second access latency, longer than said first access latency and adapted to store a portion of said packet if said predetermined packet length exceeds said predetermined size of said first memory portion.
Claim 25
Dependent Claim 105 words
A memory for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, said memory comprising: a first memory portion having a first access latency, said first memory portion having a predetermined size and being adapted to store at least said address portion of said header; and a second memory portion having a second access latency, longer than said first access latency and adapted to store a portion of said packet if said predetermined packet length exceeds said predetermined size of said first memory portion.
Claim 26
Dependent Claim 20 words
The memory recited in claim 19 wherein said first memory portion is SRAM and said second memory portion is DRAM.
Claim 27
Dependent Claim 36 words
The memory recited in claim 19 wherein said first memory portion is adapted to have a gap therein comprising a plurality of empty locations, wherein said gap is positioned after said address portion of said header.
Claim 28
Independent Claim 103 words
A method for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, comprising the steps of: storing said address portion of said header in a first portion of memory having a first access latency, said first portion of memory having a predetermined size; and storing a portion of said packet in a second portion of memory having a second access latency, longer than said first access latency if said predetermined packet length exceeds said predetermined size of said first portion of memory.
Claim 29
Independent Claim 103 words
A method for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, comprising the steps of: storing said address portion of said header in a first portion of memory having a first access latency, said first portion of memory having a predetermined size; and storing a portion of said packet in a second portion of memory having a second access latency, longer than said first access latency if said predetermined packet length exceeds said predetermined size of said first portion of memory.
Claim 30
Dependent Claim 22 words
The method recited in claim 22 wherein said first portion of memory is SRAM and said second portion of memory is DRAM.
Claim 31
Dependent Claim 96 words
The method recited in claim 22 further comprising the steps of: storing said address portion of said header in a first plurality of sequential locations of said first portion of memory; storing a remaining portion of said packet in a second plurality of sequential locations of said first portion of memory; and spacing said first plurality of sequential locations of said first portion of memory from said second plurality of sequential locations of said first portion of memory to provide a gap between said address portion of said header and said remaining portion of said packet.
Claim 32
Independent Claim 194 words
A method for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, comprising the steps of: storing said address portion of said header in a first plurality of sequential locations of said first portion of memory having a first access latency, said first portion of memory having a predetermined size; storing a remaining portion of said packet in a second plurality of sequential locations of said first portion of memory; storing a portion of said packet in a second portion of memory having a second access latency, longer than said first access latency if said predetermined packet length exceeds said predetermined size of said first portion of memory; spacing said first plurality of sequential locations of said first portion of memory from said second plurality of sequential locations of said first portion of memory to provide a gap between said address portion of said header and said remaining portion of said packet; and inserting supplemental header information into said gap to convert said received packet into a packet compatible with said second network.
Claim 33
Independent Claim 194 words
A method for storing a packet during transmission of said packet from a first network to a second network, said packet having a predetermined length and including a header having an address portion, comprising the steps of: storing said address portion of said header in a first plurality of sequential locations of said first portion of memory having a first access latency, said first portion of memory having a predetermined size; storing a remaining portion of said packet in a second plurality of sequential locations of said first portion of memory; storing a portion of said packet in a second portion of memory having a second access latency, longer than said first access latency if said predetermined packet length exceeds said predetermined size of said first portion of memory; spacing said first plurality of sequential locations of said first portion of memory from said second plurality of sequential locations of said first portion of memory to provide a gap between said address portion of said header and said remaining portion of said packet; and inserting supplemental header information into said gap to convert said received packet into a packet compatible with said second network.

References Cited (Backward Citations)

US4954951A Cited
US4525780A Cited
US4455602A Cited
US4488004A Cited
US4562436A Cited
US4645874A Cited
US4679191A Cited
US4587651A Cited
US4597077A Cited
US4578796A Cited
US4663748A Cited
US4768149A Cited
US4843606A Cited
US4713806A Cited
US4720850A Cited
US4748618A Cited
US4750114A Cited
US4835674A Cited
US4831620A Cited
US4737953A Cited
US5127104A Cited
US4933846A Cited
US5235595A Cited
US5185877A Cited
US4955018A Cited
US4939728A Cited
US5021949A Cited
US5329630A Cited
US5042000A Cited
US4894824A Cited
US4872158A Cited
US4922486A Cited
US4872160A Cited
US4958341A Cited
US4899333A Cited
US4893302A Cited
US4872159A Cited
US4875206A Cited
US5101402A Cited
US4912656A Cited
US5048014A Cited
US5321843A Cited
US5331191A Cited
US4933938A Cited
US5113522A Cited
US5144692A Cited
US5155809A Cited
US5283868A Cited
US5095480A Cited
US5247620A Cited
US5163138A Cited
US5355453A Cited
US5208811A Cited
US5280474A Cited
US5210748A Cited
US5301303A Cited
US5301273A Cited
US5251205A Cited
US5166931A Cited
US5265207A Cited
US5333268A Cited
US5159592A Cited
US5434864A Cited
US5428615A Cited
US5200954A Cited
US5305280A Cited
US5317568A Cited
US5327428A Cited
US5123029A Cited
US5291444A Cited
US5502726A Cited
US5440691A Cited
US5321819A Cited
US5305317A Cited
US5299193A Cited
US5309432A Cited
US5392399A Cited
US5325356A Cited
US5331315A Cited
US5307345A Cited
US5442633A Cited
US5371852A Cited
US5390173A Cited
US5327421A Cited
US5448565A Cited
US5465331A Cited
US5282199A Cited
US5379296A Cited
US5331634A Cited
US5483640A Cited
US5355365A Cited
US5511024A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag