H04L47/629

MANAGING DATA TRAFFIC CONGESTION IN NETWORK NODES
20230362099 · 2023-11-09 ·

Example embodiments describe a method for managing data traffic congestion in a network communication node. The method comprising maintaining a marking probability based on a marking ratio indicative of a change in packets responsible for congestion in a network queue in the network communication node over a change in a total number of packets processed by the network queue. The method further comprising classifying packets processed by the network queue as scalable packets or other packets based on an identifier included in the packets; wherein the scalable packets support scalable congestion control. The method further comprising marking the scalable packets responsible for congestion in the network queue with a congestion mark to signal data traffic congestion; and marking the other packets that support unscalable congestion control with the congestion mark based on the marking probability.

Switch device for facilitating switching in data-driven intelligent network

A switch architecture for a data-driven intelligent networking system is provided. The system can accommodate dynamic traffic with fast, effective congestion control. The system can maintain state information of individual packet flows, which can be set up or released dynamically based on injected data. Each flow can be provided with a flow-specific input queue upon arriving at a switch. Packets of a respective flow are acknowledged after reaching the egress point of the network, and the acknowledgement packets are sent back to the ingress point of the flow along the same data path. As a result, each switch can obtain state information of each flow and perform flow control on a per-flow basis.

Switch device for facilitating switching in data-driven intelligent network

A switch architecture for a data-driven intelligent networking system is provided. The system can accommodate dynamic traffic with fast, effective congestion control. The system can maintain state information of individual packet flows, which can be set up or released dynamically based on injected data. Each flow can be provided with a flow-specific input queue upon arriving at a switch. Packets of a respective flow are acknowledged after reaching the egress point of the network, and the acknowledgement packets are sent back to the ingress point of the flow along the same data path. As a result, each switch can obtain state information of each flow and perform flow control on a per-flow basis.

System and method for facilitating efficient host memory access from a network interface controller (NIC)

A network interface controller (NIC) capable of efficient memory access is provided. The NIC can be equipped with an operation logic block, a signaling logic block, and a tracking logic block. The operation logic block can maintain an operation group associated with packets requesting an operation on a memory segment of a host device of the NIC. The signaling logic block can determine whether a packet associated with the operation group has arrived at or departed from the NIC. Furthermore, the tracking logic block can determine that a request for releasing the memory segment has been issued. The tracking logic block can then determine whether at least one packet associated with the operation group is under processing in the NIC. If no packet associated with the operation group is under processing in the NIC, tracking logic block can notify the host device that the memory segment can be released.

System and method for facilitating efficient host memory access from a network interface controller (NIC)

A network interface controller (NIC) capable of efficient memory access is provided. The NIC can be equipped with an operation logic block, a signaling logic block, and a tracking logic block. The operation logic block can maintain an operation group associated with packets requesting an operation on a memory segment of a host device of the NIC. The signaling logic block can determine whether a packet associated with the operation group has arrived at or departed from the NIC. Furthermore, the tracking logic block can determine that a request for releasing the memory segment has been issued. The tracking logic block can then determine whether at least one packet associated with the operation group is under processing in the NIC. If no packet associated with the operation group is under processing in the NIC, tracking logic block can notify the host device that the memory segment can be released.

Determining rate differential weighted fair output queue scheduling for a network device

A network device may receive packets and may calculate, during a time interval, an arrival rate and a departure rate, of the packets, at one of multiple virtual output queues. The network device may calculate a current oversubscription factor based on the arrival rate and the departure rate, and may calculate a target oversubscription factor based on an average of previous oversubscription factors associated with the multiple virtual output queues. The network device may determine whether a difference exists between the target oversubscription factor and the current oversubscription factor and may calculate, when the difference exists, a scale factor based on the current oversubscription factor and the target oversubscription factor. The network device may calculate new scheduling weights based on prior scheduling weights and the scale factor, and may process packets received by the multiple virtual output queues based on the new scheduling weights.

Determining rate differential weighted fair output queue scheduling for a network device

A network device may receive packets and may calculate, during a time interval, an arrival rate and a departure rate, of the packets, at one of multiple virtual output queues. The network device may calculate a current oversubscription factor based on the arrival rate and the departure rate, and may calculate a target oversubscription factor based on an average of previous oversubscription factors associated with the multiple virtual output queues. The network device may determine whether a difference exists between the target oversubscription factor and the current oversubscription factor and may calculate, when the difference exists, a scale factor based on the current oversubscription factor and the target oversubscription factor. The network device may calculate new scheduling weights based on prior scheduling weights and the scale factor, and may process packets received by the multiple virtual output queues based on the new scheduling weights.

METHODS FOR DISTRIBUTING SOFTWARE-DETERMINED GLOBAL LOAD INFORMATION

Systems and methods are provided for performing routing in a switch network or fabric. Switches can be configured in a hierarchical topology having a plurality of groups, where switches in a group are connected to one another, and groups are connected to other groups. Routing can be performed by maintaining per-group group load information. A packet can be routed between at least two groups using the per-group group load information to effect a set of routing decisions. The set of routing decisions can be biased towards or away one or more paths.

SYSTEM AND METHOD FOR ACCELERATING OR DECELERATING A DATA TRANSPORT NETWORK PROTOCOL BASED ON REAL TIME TRANSPORT NETWORK CONGESTION CONDITIONS
20220321482 · 2022-10-06 ·

A method is performed by a computing device in a data transport network. The computing device receives congestion-related information corresponding to current conditions of a portion of the network. The computing device determines whether a data transport session has a fair-share protocol. When the data transport session has the fair-share protocol, determining a congestion policy for the data transport session, and applying, using the congestion-related information, the congestion policy to the data transport session.

SYSTEM AND METHOD FOR ACCELERATING OR DECELERATING A DATA TRANSPORT NETWORK PROTOCOL BASED ON REAL TIME TRANSPORT NETWORK CONGESTION CONDITIONS
20220321482 · 2022-10-06 ·

A method is performed by a computing device in a data transport network. The computing device receives congestion-related information corresponding to current conditions of a portion of the network. The computing device determines whether a data transport session has a fair-share protocol. When the data transport session has the fair-share protocol, determining a congestion policy for the data transport session, and applying, using the congestion-related information, the congestion policy to the data transport session.