Patent classifications
H04L47/267
Systems and methods for operating a media transmission network
Systems and methods are provided for operating a media transmission network. The system includes at least one destination device for receiving a plurality of media streams from a plurality of source devices. The system further includes a controller that is configured to, for each media stream of the plurality of media streams: determine a media property adjustment for the media stream based at least on the media stream; identify a source device from the plurality of source devices associated with generating the media stream; determine at least one device setting for the identified source device to apply the media property adjustment to the media stream; generate a control packet for configuring the identified source device based on the at least one device setting, the control packet including the at least one device setting; and transmit the control packet to the identified source device.
Head-of-Queue Blocking for Multiple Lossless Queues
A network element includes at least one headroom buffer, and flow-control circuitry. The headroom buffer is configured for receiving and storing packets from a peer network element having at least two data sources, each headroom buffer serving multiple packets. The flow-control circuitry is configured to quantify a congestion severity measure, and, in response to detecting a congestion in the headroom buffer, to send to the peer network element pause-request signaling that instructs the peer network element to stop transmitting packets that (i) are associated with the congested headroom buffer and (ii) have priorities that are selected based on the congestion severity measure.
Programmable Congestion Control
A network adapter includes a receive (RX) pipeline, a transmit (TX) pipeline, hardware-implemented congestion-control circuitry, and a congestion-control processor. The RX pipeline is configured to receive packets from a network and process the received packets. The TX pipeline is configured to transmit packets to the network. The hardware-implemented congestion-control circuitry is configured to receive, from the TX pipeline and from the RX pipeline, Congestion-Control (CC) events derived from at least some of the packets transmitted to the network and from at least some of the packets received from the network, and to pre-process the CC events. The congestion-control processor is configured to receive the pre-processed CC events from the congestion-control circuitry, and to throttle a transmission rate of the packets transmitted to the network by the TX pipeline responsively to the pre-processed CC events.
Programmable Congestion Control Communication Scheme
A network adapter includes a receive (Rx) pipeline, a transmit (Tx) pipeline and congestion management circuitry. The Rx pipeline is configured to receive packets sent over a network by a peer network adapter, and to process the received packets. The Tx pipeline is configured to transmit packets to the peer network adapter over the network. The congestion management circuitry is configured to receive, from the Tx pipeline and from the Rx pipeline, Congestion-Control (CC) events derived from at least some of the packets exchanged with the peer network adapter, to exchange user-programmable congestion control packets with the peer network adapter, and to mitigate a congestion affecting one or more of the packets responsively to the CC events and the user-programmable congestion control packets.
Proportional integral based shaper for lossless output buffer
A network device includes network ports to communicate with source devices and destination devices. The network device receives respective packets from each source device and, for each source device, respectively performs the following operations. The network device stores the respective packets in a shared memory that stores all packets from all of the source devices, and dequeues the respective packets from the shared memory to send the packets to destination devices. Responsive to the storing and the dequeuing, the network device respectively increases and decreases an input packet count for the source device. The network device determines for the source device a packet sending rate based on the input packet count and a flow control threshold common across all of the source devices in accordance with a proportional integral (PI) control equation. The network device transmits to the source device a control message including the packet sending rate.
Managing congestion in a network
Examples described herein include configuration of a transmitting network device to identify a source queue-pair identifier in at least some of the packets that are transmitted to an endpoint destination. A network device that receives packets and experiences congestion can determine if a congestion causing packet includes a source queue-pair identifier. If the congestion causing packet includes a source queue-pair identifier, the network device can form and transmit a congestion notification message with a copy of the source queue-pair identifier to the transmitting network device. The transmitting network device can access a context for the congestion causing packet using the source queue-pair identifier without having to perform a lookup to identify the context.
PROPORTIONAL INTEGRAL BASED SHAPER FOR LOSSLESS OUTPUT BUFFER
A network device includes network ports to communicate with source devices and destination devices. The network device receives respective packets from each source device and, for each source device, respectively performs the following operations. The network device stores the respective packets in a shared memory that stores all packets from all of the source devices, and dequeues the respective packets from the shared memory to send the packets to destination devices. Responsive to the storing and the dequeuing, the network device respectively increases and decreases an input packet count for the source device. The network device determines for the source device a packet sending rate based on the input packet count and a flow control threshold common across all of the source devices in accordance with a proportional integral (PI) control equation. The network device transmits to the source device a control message including the packet sending rate.
Limiting Backpressure With Bad Actors
In an embodiment, a method includes, in response to detecting available memory of a destination node of a packet flow of nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state. The destination node, in the backpressure state, sends a signal indicating a condition of packet backpressure to the nodes of the packet flow, and initiates a timer for a particular time period. The method further marks, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold. The method, in response to marking the destination node as being in a bad actor state, sends a signal to the nodes causing the nodes to drop packets directed to the destination node.
Systems and Methods for Operating a Media Transmission Network
Systems and methods are provided for operating a media transmission network. The system includes at least one destination device for receiving a plurality of media streams from a plurality of source devices. The system further includes a controller that is configured to, for each media stream of the plurality of media streams: determine a media property adjustment for the media stream based at least on the media stream; identify a source device from the plurality of source devices associated with generating the media stream; determine at least one device setting for the identified source device to apply the media property adjustment to the media stream; generate a control packet for configuring the identified source device based on the at least one device setting, the control packet including the at least one device setting; and transmit the control packet to the identified source device.
METHOD AND APPARATUS FOR TRANSMITTING DATA PACKETS USING DUAL SEQUENCE NUMBERS
A data transmission method and related apparatuses are disclosed. A sanding node transmits a plurality of data packets to a receiving node at an initial transmission rate. Each data packet carries a random sequence number and a rolling sequence number. The random sequence number identifies a data part of the data packet, and the rolling sequence number indicates a transmission sequence of the data packet. The sending node receives a packet loss feedback from the receiving node. The packet loss feedback is generated after the receiving node detects a packet loss event according to rolling sequence numbers of received data packets. The sending node determines a random sequence number of a lost data packet based on the received packet loss feedback. The sending node transmits a replacement data packet to the receiving node. The replacement data packet carries a different rolling sequence number.