Patent US5691985A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5691985A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for increasing throughput of inter-network gateways using a hardware assist engine

Assignee: Nokia of America Corp
•
Filing: 1995-04-19
•
Granted: 1997-11-25
•
Expires: 2015-04-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A high bandwidth gateway comprises a source of packet traffic wherein received packets are stored in a buffer, a destination interface circuit for the packets, a microprocessor and a bus that interconnects the components. The microprocessor, which in the prior art controls data transfers, periodically gives up control to a hardware assist engine. The hardware assist engine detects the presence of packets in the source buffer and causes the source buffer to output one or more packets to the destination directly, thus by-passing the microprocessor completely. By this system, bandwidth is improved by the source and the destination working together directly, without having the overhead associated with microprocessor-based or initiated data transfers.

Inventors

  • 👤 Diana Lynne Lorenz
  • 👤 Robert Francis Shaw
  • 👤 Ronald Anthony Spanke

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 21:08
CPC Classifications
H; H04; H04Q; H04Q11/00; H04Q11/04; H04Q11/0428; H04Q11/0478; H04L; H04L9/00; H04L9/40; H04L12/00; H04L12/54; H04L12/56; H04L12/5601; H04L2012/5603; H04L2012/5604; H04L2012/5607; H04L2012/5629; H04L2012/563; H04L2012/5638; H04L2012/5646; H04L2012/5652; H04L69/00; H04L69/12; Y; Y10; Y10S; Y10S370/00; Y10S370/901; Y10S370/902

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 147 words
A gateway apparatus for connecting packet networks, said packet networks communicating with each other via packets transmitted through said gateway, said gateway comprising: a receive buffer for receiving packets from one of said packet networks; a transmit interface for transmitting said packets to another of said packet networks; a microprocessor connected to said receive buffer and to said transmit interface, said microprocessor including means for transferring packets from said receive buffer to said transmit interface, and from a receive interface to a transmit buffer; and a hardware assist means connected to said transmit interface and said receive buffer; said microprocessor includes means for giving up control of said gateway to said hardware assist means, and said hardware assist means including means for detecting packets at said receive buffer, and means for transferring said detected packet to said transmit interface without transferring said packet data through said microprocessor.
Claim 2
Dependent Claim 147 words
A gateway apparatus for connecting packet networks, said packet networks communicating with each other via packets transmitted through said gateway, said gateway comprising: a receive buffer for receiving packets from one of said packet networks; a transmit interface for transmitting said packets to another of said packet networks; a microprocessor connected to said receive buffer and to said transmit interface, said microprocessor including means for transferring packets from said receive buffer to said transmit interface, and from a receive interface to a transmit buffer; and a hardware assist means connected to said transmit interface and said receive buffer; said microprocessor includes means for giving up control of said gateway to said hardware assist means, and said hardware assist means including means for detecting packets at said receive buffer, and means for transferring said detected packet to said transmit interface without transferring said packet data through said microprocessor.
Claim 3
Dependent Claim 62 words
A gateway according to claim 1 wherein said hardware assist means further comprises: means for determining a destination address of detected packets at said receive buffer, means for causing detected packets addressed for said another of said packet networks to be transferred to said transmit interface, and means for causing detected packets addressed for said microprocessor to be transferred to said microprocessor.
Claim 4
Dependent Claim 42 words
A gateway according to claim 1 wherein said hardware assist means further includes length detection means for detecting the length of detected packets, wherein said means for transferring said detected packets transfers data of said detected packets equal to said detected length.
Claim 5
Dependent Claim 64 words
A gateway according to claim 1 further including a transmit buffer for transmitting packets on said one of said packet networks; and a receive interface for receiving packets from said another of said packet networks; wherein said hardware assist means further includes means for detecting packets at said receive interface and means for transferring detected packets from said receive interface to said transmit buffer.
Claim 6
Dependent Claim 42 words
A gateway according to claim 4 wherein said microprocessor and said hardware assist means include means for setting up a direct transfer of a packet from said receive buffer to said transmit interface, and from said receive interface to said transmit buffer.
Claim 7
Dependent Claim 17 words
A gateway according to claim 1 wherein said transmit interface comprises an asynchronous transfer mode network interface.
Claim 8
Dependent Claim 17 words
A gateway according to claim 4 wherein said receive interface comprises an asynchronous transfer mode network interface.
Claim 9
Dependent Claim 17 words
A gateway according to claim 1 further including holdoff means for preventing said receive buffer from overflowing.
Claim 10
Dependent Claim 46 words
A gateway according to claim 8 wherein said holdoff means comprises means for determining occupancy in said receive buffer; means for comparing said receive buffer occupancy with a threshold; and means for throttling input to said receive buffer when said receive buffer occupancy exceeds said threshold.
Claim 11
Dependent Claim 45 words
A gateway according to claim 9 wherein said hardware assist means includes said occupancy determining means, said comparing means and said throttling means, and wherein said occupancy determining means, said comparing means and said throttling means operate without transferring said occupancy data through a microprocessor.
Claim 12
Dependent Claim 38 words
A gateway according to claim 1 wherein said hardware assist means includes means for calculating a header for said detected packet and means for causing said header to be inserted on said detected packet at said transmit interface.
Claim 13
Dependent Claim 39 words
A gateway according to claim 1 wherein said hardware assist means includes means for calculating a header for said detected packet at said receive buffer and means for inserting said header on said detected packet at said transmit interface.
Claim 14
Dependent Claim 43 words
A gateway according to claim 2 wherein said gateway further includes error detect means connected to said hardware assist means, wherein said hardware assist means includes means for giving up control to said microprocessor responsive to said error detect means detecting an error.
Claim 15
Dependent Claim 83 words
A gateway according to claim 4 wherein said gateway further includes a receive FIFO connected to said receive interface and said receive buffer, said microprocessor being configured to read packets from said receive FIFO, wherein said hardware assist means is configured to determine a packet destination of packets at said receive buffer and said receive interface and said hardware assist means transfers a packet with a destination address matching said microprocessor from said receive buffer or said receive interface to said receive FIFO.
Claim 16
Dependent Claim 68 words
A gateway according to claim 4 wherein said gateway further includes a transmit FIFO connected to said transmit interface and said transmit buffer, said microprocessor being configured to write packets to said transmit FIFO and wherein said hardware assist means is configured to determine a destination address on packets in said transmit FIFO and deliver them to said transmit interface and said transmit buffer responsive to said destination.
Claim 17
Independent Claim 119 words
A method for use in a gateway connecting packet networks, said packet networks communicating with each other via packets transmitted through said gateway, said gateway comprising a receive buffer for receiving packets from one of said packet networks, a transmit interface for transmitting said packets to another of said packet networks, a microprocessor for controlling said gateway, and a hardware assist engine, said method comprising the steps of: said microprocessor turning control of said gateway over to said hardware assist engine; said hardware assist engine detecting the presence of a packet at said receive buffer; and said hardware assist engine transferring said packet from said receive buffer to said transmit interface without the packet data passing through said microprocessor.
Claim 18
Independent Claim 119 words
A method for use in a gateway connecting packet networks, said packet networks communicating with each other via packets transmitted through said gateway, said gateway comprising a receive buffer for receiving packets from one of said packet networks, a transmit interface for transmitting said packets to another of said packet networks, a microprocessor for controlling said gateway, and a hardware assist engine, said method comprising the steps of: said microprocessor turning control of said gateway over to said hardware assist engine; said hardware assist engine detecting the presence of a packet at said receive buffer; and said hardware assist engine transferring said packet from said receive buffer to said transmit interface without the packet data passing through said microprocessor.
Claim 19
Dependent Claim 79 words
A method according to claim 16 further comprising the steps of: said hardware assist engine detecting whether said packet is for said another network or for said microprocessor; responsive to determining that said packet is for said another network, said hardware assist engine transferring said packet from said receive buffer to said transmit interface; and responsive to determining that said packet is for said microprocessor, said hardware assist engine transferring said packet from said receive buffer to said microprocessor.
Claim 20
Dependent Claim 110 words
A method according to claim 16 wherein said gateway further comprises a transmit buffer for transmitting packets on said one of said packet networks and a receive interface for receiving packets from said another of said packet networks, said method further comprising the steps of: said hardware assist engine detecting the presence of a packet at said receive interface; responsive to determining that said packet is for said one network, said hardware assist engine transferring said packet from said receive interface to said transmit buffer; and responsive to determining that said packet is for said microprocessor, said hardware assist engine transferring said packet from said receive interface to said microprocessor.
Claim 21
Dependent Claim 39 words
A method according to claim 16 further including the step of said microprocessor transferring packets from said receive buffer to said transmit interface prior to said step of turning over control of said gateway to said hardware assist engine.
Claim 22
Dependent Claim 35 words
A method according to claim 16 further including the step of said microprocessor and said hardware assist engine cooperating to perform a direct transfer of a packet from said receive buffer to said transmit interface.
Claim 23
Dependent Claim 55 words
A method according to claim 16 wherein said gateway further includes a holdoff circuit for preventing said receive buffer from overflowing, said method further including the step of causing said holdoff circuit to prevent said receive buffer from overflowing in response to said gateway determining that said receive buffer contains a predetermined number of packets.
Claim 24
Dependent Claim 30 words
A method according to claim 18 further including the step of said hardware assist engine calculating a destination address for said packet before it is put into said transmit interface.
Claim 25
Dependent Claim 30 words
A method according to claim 18 further including the step of said hardware assist engine calculating a destination address for said packet before transferring said packet to said transmit buffer.
Claim 26
Dependent Claim 46 words
A method according to claim 18 wherein said hardware assist engine includes an error detector for detecting errors in packets, said method including the step of said hardware assist engine giving control of said gateway to said microprocessor responsive to said error detector detecting an error.

References Cited (Backward Citations)

US3710026A Cited
US4550402A Cited
US5079765A Cited
US5218602A Cited
US5490252A Cited
US5363369A Cited
US5473604A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-11-24 2001-05-26 2001-11-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-11-24 2005-05-26 2005-11-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-11-24 2009-05-26 2009-11-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag