Systems and methods for forwarding data units in a communications network
First Claim
1. A method for transmitting data units from a node in a communications network, the node including one or more network interfaces, each of the one or more network interfaces being associated with at least one queue, the method comprising:
- identifying one of the one or more network interfaces for transmitting a first data unit;
storing the first data unit in a queue of the at least one queue associated with the identified network interface;
retrieving, for the identified network interface, the first data unit from the queue associated with the identified network interface;
determining one of the one or more network interfaces from which the first data unit is to be transmitted; and
forwarding the data unit to the determined network interface for transmission when the determined network interface is the identified network interface.
5 Assignments
0 Petitions
Accused Products
Abstract
A network device (110) includes a forwarding module (230) and one or more network interfaces (240) that may be configured to transmit data units. The forwarding module (230) may be configured to identify one of the network interfaces (240) to transmit a data unit when the data unit is received by the network device (110) or generated by the network device (110), determine one of the network interfaces (240) to transmit the data unit when the data unit is ready to be transmitted by the network device (110), and forward the data unit to the determined network interface (240) for network when the determined network interface (240) is the identified network interface (240).
-
Citations
44 Claims
-
1. A method for transmitting data units from a node in a communications network, the node including one or more network interfaces, each of the one or more network interfaces being associated with at least one queue, the method comprising:
-
identifying one of the one or more network interfaces for transmitting a first data unit;
storing the first data unit in a queue of the at least one queue associated with the identified network interface;
retrieving, for the identified network interface, the first data unit from the queue associated with the identified network interface;
determining one of the one or more network interfaces from which the first data unit is to be transmitted; and
forwarding the data unit to the determined network interface for transmission when the determined network interface is the identified network interface. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A network device comprising:
-
one or more queues, each of the one or more queues storing one or more data units;
one or more network interfaces, each of the one or more network interfaces being associated with at least one of the one or more queues and being configured to forward the one or more data units to other network devices; and
a forwarding module configured to;
receive a first data unit, identify one of the one or more network interfaces for transmitting the first data unit, store the first data unit in a queue of the at least one queue associated with the identified network interface, retrieve the first data unit from the queue associated with the identified network interface, determine one of the one or more network interfaces for transmitting the first data unit, and forward the first data unit to the determined network interface when the determined network interface corresponds to the identified network interface. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A system for transmitting data units from a node in a communications network, the node including one or more network interfaces, each of the one or more network interfaces being associated with at least one queue, the system comprising:
-
means for identifying one of the one or more network interfaces for transmitting a data unit;
means for storing the data unit in a queue of the at least one queue associated with the identified network interface;
means for retrieving, for the identified network interface, the data unit from the queue associated with the identified network interface;
means for separately determining one of the one or more network interfaces from which the data unit is to be transmitted; and
means for sending the data unit to the determined network interface for transmission when the determined network interface corresponds to the identified network interface.
-
-
26. A computer-readable medium containing a plurality of instructions that, when executed by at least one processor, causes the at least one processor to perform a method for transmitting data units in a communications network, the method comprising:
-
identifying a first one of a group of one or more network interfaces for transmitting a data unit;
storing the data unit in a location corresponding to the first network interface;
retrieving, for the first network interface, the data unit from the location;
identifying, after retrieving the data unit, a second one of the group of one or more network interfaces from which the data unit is to be transmitted; and
forwarding the data unit to the second network interface for transmission when the second network interface corresponds to the first network interface. - View Dependent Claims (27)
-
-
28. A method for transmitting data units from a node that includes one or more network interfaces, comprising:
-
identifying a first one of the one or more network interfaces from which to transmit a data unit when the data unit is received by the node or generated by the node;
determining a second one of the one or more network interfaces to transmit the data unit when the data unit is ready to be transmitted by the node; and
transmitting the data unit via the second network interface when the second network interface is the same as the first network interface. - View Dependent Claims (29, 30, 31)
-
-
32. A network device comprising:
-
one or more network interfaces configured to transmit data units; and
a forwarding module configured to;
identify one of the one or more network,interfaces to transmit a data unit when the data unit is received by the network device or generated by the network device, determine one of the one or more network interfaces to transmit the data unit when the data unit is ready to be transmitted by the network device, and forward the data unit to the determined network interface for transmission when the determined network interface is the identified network interface. - View Dependent Claims (33, 34, 35, 36, 37)
-
-
38. A computer-readable medium containing a plurality of instructions that, when executed by at least one processor in a node that includes one or more network interfaces, causes the at least one processor to perform a method for transmitting data units in a communications network, the method comprising:
-
identifying one of the one or more network interfaces to transmit a data unit when the data unit is received by the node or generated by the node;
determining one of the one or more network interfaces to transmit the data unit when the data unit is ready to be transmitted by the node; and
transmitting the data unit via the determined network interface when the determined network interface corresponds to the identified network interface.
-
-
39. A method for storing data units in a node that includes a plurality of queues, each queue in the plurality of queues being associated with a priority and one or more buffers, the method comprising:
-
determining whether a data unit is locally generated, the data unit being associated with a priority;
determining, when the data unit has been locally generated, whether a number of buffers in use for data units of equal or higher priority exceeds a threshold;
dropping the data unit when the number of buffers in use exceeds the threshold;
determining, when the data unit is not locally generated or the number of buffers in use does not exceed the threshold, if a free buffer exists;
storing, when a free buffer exists, the packet in the free buffer;
selecting a non-empty, lower priority queue when no free buffer exists;
emptying a buffer from the selected lower priority queue; and
storing the data unit in the emptied buffer. - View Dependent Claims (40, 41, 42, 43)
-
-
44. A method for processing a multicast data unit in a node that includes one or more network interfaces, each of the one or more network interfaces being associated with at least one queue, comprising:
-
storing the multicast data unit in a memory;
storing a virtual placeholder in a queue of the at least one queue associated with at least one of the one or more network interfaces;
identifying, when one of the virtual placeholders reaches a head of one of the at least one queue, neighboring nodes to receive the multicast data unit;
identifying, for each identified neighboring node, one network interface of the one or more network interfaces; and
placing a copy of the multicast data unit at a head of a queue of the at least one queue associated with each of the identified one network interfaces.
-
Specification