H04L49/9047

NON-DISRUPTIVE TRADING OF BUFFERS BETWEEN PORTS OR PORT VIRTUAL LANES OF A CREDITED NETWORK
20250227076 · 2025-07-10 ·

Techniques for moving buffers between ports, or virtual lanes of a port, of a networking device of a credited network while maintaining the ports in an active state without dropping any frames. The techniques may include determining that a number of buffers are to be reallocated from a first port of a networking device to a second port of the networking device. The techniques may also include causing a peer port connected to the first port to decrement, by the number, a transmit credit counter associated with the peer port. Based at least in part on determining that the peer port decremented the transmit credit counter, the first port may release the number of the buffers from a buffer pool associated with the first port, and the number of the buffers may be reallocated to the second port.

NON-DISRUPTIVE TRADING OF BUFFERS BETWEEN PORTS OR PORT VIRTUAL LANES OF A CREDITED NETWORK
20250227076 · 2025-07-10 ·

Techniques for moving buffers between ports, or virtual lanes of a port, of a networking device of a credited network while maintaining the ports in an active state without dropping any frames. The techniques may include determining that a number of buffers are to be reallocated from a first port of a networking device to a second port of the networking device. The techniques may also include causing a peer port connected to the first port to decrement, by the number, a transmit credit counter associated with the peer port. Based at least in part on determining that the peer port decremented the transmit credit counter, the first port may release the number of the buffers from a buffer pool associated with the first port, and the number of the buffers may be reallocated to the second port.

Algorithms for use of load information from neighboring nodes in adaptive routing

Systems and methods are provided for passing data amongst a plurality of switches having a plurality of links attached between the plurality of switches. At a switch, a plurality of load signals are received from a plurality of neighboring switches. Each of the plurality of load signals are made up of a set of values indicative of a load at each of the plurality of neighboring switches providing the load signal. Each value within the set of values provides an indication for each link of the plurality of links attached thereto as to whether the link is busy or quiet. Based upon the plurality of load signals, an output link for routing a received packet is selected, and the received packet is routed via the selected output link.

Algorithms for use of load information from neighboring nodes in adaptive routing

Systems and methods are provided for passing data amongst a plurality of switches having a plurality of links attached between the plurality of switches. At a switch, a plurality of load signals are received from a plurality of neighboring switches. Each of the plurality of load signals are made up of a set of values indicative of a load at each of the plurality of neighboring switches providing the load signal. Each value within the set of values provides an indication for each link of the plurality of links attached thereto as to whether the link is busy or quiet. Based upon the plurality of load signals, an output link for routing a received packet is selected, and the received packet is routed via the selected output link.

System and method for dynamic allocation of reduction engines

A switch equipped with a reduction engine capable of being dynamically allocated in a network is provided. During operation, the reduction engine can be dynamically armed based on a multicast frame. As a result, the network can facilitate an efficient and scalable environment for high performance computing.

System and method for dynamic allocation of reduction engines

A switch equipped with a reduction engine capable of being dynamically allocated in a network is provided. During operation, the reduction engine can be dynamically armed based on a multicast frame. As a result, the network can facilitate an efficient and scalable environment for high performance computing.

System and method for facilitating fine-grain flow control in a network interface controller (NIC)

A network interface controller (NIC) capable of facilitating fine-grain flow control (FGFC) is provided. The NIC can be equipped with a network interface, an FGFC logic block, and a traffic management logic block. During operation, the network interface can determine that a control frame from a switch is associated with FGFC. The network interface can then identify a data flow indicated in the control frame for applying the FGFC. The FGFC logic block can insert information from the control frame into an entry of a data structure stored in the NIC. The traffic management logic block can identify the entry in the data structure based on one or more fields of a packet belonging to the flow. Subsequently, the traffic management logic block can determine whether the packet is allowed to be forwarded based on the information in the entry.

System and method for facilitating fine-grain flow control in a network interface controller (NIC)

A network interface controller (NIC) capable of facilitating fine-grain flow control (FGFC) is provided. The NIC can be equipped with a network interface, an FGFC logic block, and a traffic management logic block. During operation, the network interface can determine that a control frame from a switch is associated with FGFC. The network interface can then identify a data flow indicated in the control frame for applying the FGFC. The FGFC logic block can insert information from the control frame into an entry of a data structure stored in the NIC. The traffic management logic block can identify the entry in the data structure based on one or more fields of a packet belonging to the flow. Subsequently, the traffic management logic block can determine whether the packet is allowed to be forwarded based on the information in the entry.

Dragonfly routing with incomplete group connectivity

Systems and methods are provided for managing a data communication within a multi-level network having a plurality of switches organized as groups, with each group coupled to all other groups via global links, including: at each switch within the network, maintaining a global fault table identifying the links which lead only to faulty global paths, and when the data communication is received at a port of a switch, determine a destination for the data communication and, route the communication across the network using the global fault table to avoid selecting a port within the switch that would result in the communication arriving at a point in the network where its only path forward is across a global link that is faulty; wherein the global fault table is used for both a global minimal routing methodology and a global non-minimal routing methodology.

Dragonfly routing with incomplete group connectivity

Systems and methods are provided for managing a data communication within a multi-level network having a plurality of switches organized as groups, with each group coupled to all other groups via global links, including: at each switch within the network, maintaining a global fault table identifying the links which lead only to faulty global paths, and when the data communication is received at a port of a switch, determine a destination for the data communication and, route the communication across the network using the global fault table to avoid selecting a port within the switch that would result in the communication arriving at a point in the network where its only path forward is across a global link that is faulty; wherein the global fault table is used for both a global minimal routing methodology and a global non-minimal routing methodology.