Patent ID: 7453878

Claim:
A method for ordering data transferred over multiple channels, comprising: generating a first data packet in a particular packet flow in response to a first flow control credit; generating a first sequence number; inserting the first sequence number into the first data packet; selecting a first one of a plurality of channels to transfer the first data packet according to channel capacities of the plurality of channels; transferring the first data packet over the selected first one of the plurality of channels; generating a second data packet in the particular packet flow in response to a second flow control credit; generating a second sequence number; inserting the second sequence number into the second data packet; selecting a second one of a plurality of channels to transfer the second data packet according to channel capacities of the plurality of channels; transferring the second data packet of the particular packet flow over the selected second one of the plurality of channels, the second one of the plurality of channels being different than the first one of the plurality of channels as a result of varying channel capacities among the plurality of channels.