Methods and apparatus for event-driven routing
Abstract
A router routes data packets. The router includes input physical channels for incrementally receiving portions of the data packets, and output physical channels. The router further includes data buffers, coupled with the input and output physical channels, for storing the portions of the data packets. The router further includes control circuitry, coupled with the input and output physical channels and the data buffers, for generating virtual channel assignments that assign virtual channels to the data packets, and generating physical channel assignments that assign the output physical channels to the virtual channels. Each of the assignments is generated in response to queued arrival and credit events. The portions of the data packets are forwarded from the data buffers to the output physical channels according to the generate virtual and physical channel assignments.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A router for routing data packets comprising:
input physical channels for receiving at least portions of the data packets; output physical channels; data buffers, coupled with the input and output physical channels, for storing the portions of the data packets; and control circuitry, coupled with the input and output physical channels and the data buffers, for generating channel assignments in response to queued events, and outputting the portions of the data packets through the output physical channels according to the generated channel assignments.
2 . The router of claim 1 wherein the control circuitry assigns virtual channels to the data packets in response to the queued events.
3 . The router of claim 2 wherein the control circuitry is shared by multiple virtual channels and activated to handle a particular virtual channel in response to an event.
4 . The router of claim 2 wherein the control circuitry further assigns the output physical channels to the virtual channels in response to the queued events.
5 . The router of claim 4 wherein the control circuitry is shared by multiple virtual channels and activated to handle a particular virtual channel in response to an event.
6 . The router of claim 1 wherein the control circuitry is adapted to generate physical channel assignments in response to the queued events.
7 . The router of claim 6 wherein the control circuitry is shared by multiple virtual channels and activated to handle a particular virtual channel in response to an event.
8 . The router of claim 1 further comprising:
a multicomputer interface coupled with an input physical channel and an output physical channel such that the router forms a multicomputer router for a multicomputer system.
9 . The router of claim 1 further comprising:
a line interface coupled with an input physical channel and an output physical channel such that the router forms an internet switch fabric router.
10 . The router of claim 2 wherein the data buffers correspond to input virtual channels which share the input physical channels, wherein output virtual channels share the output physical channels, and wherein the control circuitry generates virtual channel assignments, each virtual channel assignment associating an input virtual channel with an output virtual channel.
11 . The router of claim 2 wherein the control circuitry includes:
a state table that associates the output physical channels with input channels.
12 . The router of claim 11 wherein the input channels are input virtual channels that share the input physical channels.
13 . A method for routing data packets from input physical channels to output physical channels, the method comprising the steps of:
receiving at least portions of the data packets over the input physical channels; generating channel assignments in response to queued events; and outputting the portions of the data packets through the output physical channels according to the generated channel assignments.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.