Abstract:
Methods, apparatuses, and computer-readable medium for providing a fairness protocol in a network element are disclosed herein. An example method includes receiving one or more packets at each of a plurality of ingress ports of the network element, and scheduling the packets into a plurality of queues, wherein each of the queues is associated with packets that are sourced from one of the ingress ports. The method also includes monitoring a bandwidth of traffic sourced from each of the ingress ports, identifying a port among the ingress ports that sources a smallest bandwidth of traffic, and arbitrating among the queues when transmitting packets from an egress port of the network element by giving precedence to the identified port that sources the smallest bandwidth of traffic. Additionally, arbitrating among the queues distributes a bandwidth of the egress port equally among the ingress ports.
Abstract:
Methods and apparatuses for providing a fairness protocol in a network element are disclosed herein. In accordance with the disclosed fairness protocol, the average bandwidth of traffic sourced from each of a plurality of ingress ports is monitored. The largest bandwidth of traffic sourced from a port within a first group of ingress ports (e.g., ingress ports of a network element) is identified and compared to the largest bandwidth of traffic sourced from a port within a second group of ingress ports (e.g., ingress ports of one or more network elements communicatively connected to the network element). In order to fairly allocate bandwidth when transmitting traffic that is sourced from the first and second groups, precedence is given to traffic flowing from the group associated with the identified port sourcing the lower bandwidth of traffic.
Abstract:
A method for allocating port assignments for transmitting a reserved network stream across a network node comprises determining a cycle time associated with a network node. The method also comprises establishing, for at least one port of the network node, a plurality of virtual layers associated with the cycle time, wherein each of the plurality of virtual layers is divided into 2n equally-spaced slots per cycle (where n>0). The method further comprises receiving a reserved stream request associated with transmission of a reserved stream across the node, and determining a number of slots required to transmit the reserved stream. The method also comprises assigning one or more slots associated with a port of the network node to the transmission of packets associated with the reserved stream based on the determined number of slots. The method further comprises transmitting the stream according to the slot assignment associated with the port of the network node.
Abstract:
A method for managing recirculation path traffic in a network node comprises monitoring an input packet stream received at an input port of the network node and monitoring a recirculation packet stream at a recirculation path of the network node. A priority level associated with individual packets of the monitored input packet stream is detected and low priority packets are stored in a virtual queue. The method also includes determining an average packet length associated with packets of the monitored recirculation packet stream. The method further comprises queuing one or more of the low priority packets or the recirculation packets for transmission based on the average packet length and a weighted share schedule.
Abstract:
Methods, apparatuses, and computer-readable medium for providing a fairness protocol in a network element are disclosed herein. An example method includes receiving one or more packets at each of a plurality of ingress ports of the network element, and scheduling the packets into a plurality of queues, wherein each of the queues is associated with packets that are sourced from one of the ingress ports. The method also includes monitoring a bandwidth of traffic sourced from each of the ingress ports, identifying a port among the ingress ports that sources a smallest bandwidth of traffic, and arbitrating among the queues when transmitting packets from an egress port of the network element by giving precedence to the identified port that sources the smallest bandwidth of traffic. Additionally, arbitrating among the queues distributes a bandwidth of the egress port equally among the ingress ports.
Abstract:
A method for allocating port assignments for transmitting a reserved network stream across a network node comprises determining a cycle time associated with a network node. The method also comprises establishing, for at least one port of the network node, a plurality of virtual layers associated with the cycle time, wherein each of the plurality of virtual layers is divided into 2n equally-spaced slots per cycle (where n>0). The method further comprises receiving a reserved stream request associated with transmission of a reserved stream across the node, and determining a number of slots required to transmit the reserved stream. The method also comprises assigning one or more slots associated with a port of the network node to the transmission of packets associated with the reserved stream based on the determined number of slots. The method further comprises transmitting the stream according to the slot assignment associated with the port of the network node.
Abstract:
A method for allocating port assignments for transmitting a reserved network stream across a network node comprises determining a cycle time associated with a network node. The method also comprises establishing, for at least one port of the network node, a plurality of virtual layers associated with the cycle time, wherein each of the plurality of virtual layers is divided into 2n equally-spaced slots per cycle (where n>0). The method further comprises receiving a reserved stream request associated with transmission of a reserved stream across the node, and determining a number of slots required to transmit the reserved stream. The method also comprises assigning one or more slots associated with a port of the network node to the transmission of packets associated with the reserved stream based on the determined number of slots. The method further comprises transmitting the stream according to the slot assignment associated with the port of the network node.
Abstract:
In one implementation, an input queue switch provides latency fairness across multiple input ports and multiple output ports. In one embodiment, each input port maintains a virtual output queue for each associate output port. The virtual output queues across multiple inputs are aggregated for each specific output port. The sum of the lengths of the virtual output queues is compared to a threshold, and based on the comparison, feedback may be generated to control the operation of the input port for subsequent packets. The feedback may instruct the input port to stop buffering or drop packets destined for the output port with the sum of the lengths of the virtual output queues associated to the specific output port that exceeds the threshold. In another embodiment, each packet has an arrival timestamp, and a virtual output queue having the oldest timestamp is selected first to dequeue.
Abstract:
In one implementation, an input queue switch provides latency fairness across multiple input ports and multiple output ports. In one embodiment, each input port maintains a virtual output queue for each associate output port. The virtual output queues across multiple inputs are aggregated for each specific output port. The sum of the lengths of the virtual output queues is compared to a threshold, and based on the comparison, feedback may be generated to control the operation of the input port for subsequent packets. The feedback may instruct the input port to stop buffering or drop packets destined for the output port with the sum of the lengths of the virtual output queues associated to the specific output port that exceeds the threshold. In another embodiment, each packet has an arrival timestamp, and a virtual output queue having the oldest timestamp is selected first to dequeue.
Abstract:
A method for allocating port assignments for transmitting a reserved network stream across a network node comprises determining a cycle time associated with a network node. The method also comprises establishing, for at least one port of the network node, a plurality of virtual layers associated with the cycle time, wherein each of the plurality of virtual layers is divided into 2n equally-spaced slots per cycle (where n>0). The method further comprises receiving a reserved stream request associated with transmission of a reserved stream across the node, and determining a number of slots required to transmit the reserved stream. The method also comprises assigning one or more slots associated with a port of the network node to the transmission of packets associated with the reserved stream based on the determined number of slots. The method further comprises transmitting the stream according to the slot assignment associated with the port of the network node.