Multi-link routing
First Claim
Patent Images
1. A method comprising:
- receiving data blocks in a network device from multiple links via one or more interface cards of the network device,communicating the data blocks from the one or more interface cards to a removable service card of the network device for sequencing,storing sequence numbers for the data blocks in data queues of the removable service card in an order the data blocks were received, the data blocks received from each link being stored in a unique queue assigned to the respective link so that an order of the sequence numbers over any given link is preserved in a corresponding data queue for the given link,polling head pointers of the queues of the removable service card for a particular sequence number, andselecting the sequence numbers from each queue of the removable service card in sequence to sequence the data blocks received from the multiple links, wherein when the particular sequence number is not identified in any of the queues during a period of time, subsequent sequence numbers greater than the particular sequence number continue to accumulate in the queues during the period of time.
0 Assignments
0 Petitions
Accused Products
Abstract
The invention is directed to techniques for supporting multi-link protocols within a computer network. In one embodiment, a method includes receiving a set of data blocks from a plurality of links in one or more interface cards according to a multi-link protocol and sending the data blocks to a multi-link service card for sequencing. The data blocks may then be sent to the one or more interface cards for communication to a destination device over a computer network. Implementing a multi-link service card may allow a network device, such as a router, to support multi-link protocols.
-
Citations
18 Claims
-
1. A method comprising:
-
receiving data blocks in a network device from multiple links via one or more interface cards of the network device, communicating the data blocks from the one or more interface cards to a removable service card of the network device for sequencing, storing sequence numbers for the data blocks in data queues of the removable service card in an order the data blocks were received, the data blocks received from each link being stored in a unique queue assigned to the respective link so that an order of the sequence numbers over any given link is preserved in a corresponding data queue for the given link, polling head pointers of the queues of the removable service card for a particular sequence number, and selecting the sequence numbers from each queue of the removable service card in sequence to sequence the data blocks received from the multiple links, wherein when the particular sequence number is not identified in any of the queues during a period of time, subsequent sequence numbers greater than the particular sequence number continue to accumulate in the queues during the period of time. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A network device configured to:
-
receive data blocks from multiple links via one or more interface cards of the network device, communicate the data blocks from the one or more interface cards to a removable service card of the network device for sequencing, store sequence numbers for the data blocks in data queues of the removable service card in an order the data blocks were received, the data blocks received from each link being stored in a unique queue assigned to the respective link so that an order of the sequence numbers over any given link is preserved in a corresponding data queue for the given link, poll head pointers of the queues of the removable service card for a particular sequence number, and select the sequence numbers from each queue in sequence to sequence the data blocks received from the multiple links, wherein when the particular sequence number is not identified in any of the queues during a period of time, subsequent sequence numbers greater than the particular sequence number continue to accumulate in the queues during the period of time. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A network device coupled to multiple links of a network, the network device comprising:
-
a set of data queues, wherein a separate one of the data queues is maintained for each of the multiple links, wherein sequence numbers for the data blocks are stored in the data queues in an order the data blocks were received, the data blocks received from each link being stored in a unique one of the queues assigned to the respective link, a sequence unit that polls head pointers of the data queues for a next sequence number as part of a sequencing process that sequences the data blocks received from the multiple links, and selects sequence numbers from each of the queues in sequence to sequence the data blocks, wherein when the next sequence number is not identified in any of the queues during a period of time, subsequent sequence numbers greater than the next sequence number continue to accumulate in the queues during the period of time. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
Specification