H04L49/9005

Enabling use of non-volatile media—express (NVME) over a network

Enabling a protocol for efficiently and reliably using the NVME protocol over a network, referred to as NVME over Network, or NVMEoN, may include an NVMEoN exchange layer for handling exchanges between initiating and target nodes on a network, a burst transmission protocol that provides guaranteed delivery without duplicate retransmission, and an exchange status block approach to manage state information about exchanges.

Enabling use of non-volatile media—express (NVME) over a network

Enabling a protocol for efficiently and reliably using the NVME protocol over a network, referred to as NVME over Network, or NVMEoN, may include an NVMEoN exchange layer for handling exchanges between initiating and target nodes on a network, a burst transmission protocol that provides guaranteed delivery without duplicate retransmission, and an exchange status block approach to manage state information about exchanges.

Expandable queue
11558309 · 2023-01-17 · ·

A network device includes packet processing circuitry and queue management circuitry. The packet processing circuitry is configured to transmit and receive packets to and from a network. The queue management circuitry is configured to store, in a memory, a queue for queuing data relating to processing of the packets, the queue including a primary buffer and an overflow buffer, to choose between a normal mode and an overflow mode based on a defined condition, to queue the data only in the primary buffer when operating in the normal mode, and, when operating in the overflow mode, to queue the data in a concatenation of the primary buffer and the overflow buffer.

Expandable queue
11558309 · 2023-01-17 · ·

A network device includes packet processing circuitry and queue management circuitry. The packet processing circuitry is configured to transmit and receive packets to and from a network. The queue management circuitry is configured to store, in a memory, a queue for queuing data relating to processing of the packets, the queue including a primary buffer and an overflow buffer, to choose between a normal mode and an overflow mode based on a defined condition, to queue the data only in the primary buffer when operating in the normal mode, and, when operating in the overflow mode, to queue the data in a concatenation of the primary buffer and the overflow buffer.

Controlling socket receive buffer for traffic optimization

A network device includes a network interface for establishing a communication session with another network device, a memory to store instructions, and a processor to execute the instructions. The processor may, for each time period during the communication session, adjust a size of a receive buffer of a socket. When the processor adjusts the size, the processor, if a utilization number of the receive buffer is greater than a high threshold: may determine a first new size for the receive buffer, and set a size of the receive buffer to the first new size. If the utilization number is less than a low threshold, the processor may determine a second new size for the receive buffer; and set the size of the receive buffer to the second new size.

Controlling socket receive buffer for traffic optimization

A network device includes a network interface for establishing a communication session with another network device, a memory to store instructions, and a processor to execute the instructions. The processor may, for each time period during the communication session, adjust a size of a receive buffer of a socket. When the processor adjusts the size, the processor, if a utilization number of the receive buffer is greater than a high threshold: may determine a first new size for the receive buffer, and set a size of the receive buffer to the first new size. If the utilization number is less than a low threshold, the processor may determine a second new size for the receive buffer; and set the size of the receive buffer to the second new size.

IC CARD, PORTABLE ELECTRONIC APPARATUS, AND IC CARD PROCESSING APPARATUS
20180006971 · 2018-01-04 · ·

An IC card has a communication unit, a storage unit, and a controller. The communication unit communicates with an external apparatus. A communication buffer for communication between the communication unit and the external apparatus is set in the storage unit. If the size of a buffer used in communication is designated by the external apparatus, the controller sets a receive buffer that stores reception data and a transmit buffer that stores transmission data in the communication buffer, and notifies the external apparatus of the size of the set receive buffer and the size of the set transmit buffer.

Multi-stride packet payload mapping for robust transmission of data
11716294 · 2023-08-01 · ·

Systems and methods for packet payload mapping for robust transmission of data are described. For example, methods may include receiving, using a network interface, packets that each respectively include a primary frame and one or more preceding frames from the sequence of frames of data that are separated from the primary frame in the sequence of frames by a respective multiple of a stride parameter; storing the frames of the packets in a buffer with entries that each hold the primary frame and the one or more preceding frames of a packet; reading a first frame from the buffer as the primary frame from one of the entries; determining that a packet with a primary frame that is a next frame in the sequence has been lost; and, responsive to the determination, reading the next frame from the buffer as a preceding frame from one of the entries.

Multi-stride packet payload mapping for robust transmission of data
11716294 · 2023-08-01 · ·

Systems and methods for packet payload mapping for robust transmission of data are described. For example, methods may include receiving, using a network interface, packets that each respectively include a primary frame and one or more preceding frames from the sequence of frames of data that are separated from the primary frame in the sequence of frames by a respective multiple of a stride parameter; storing the frames of the packets in a buffer with entries that each hold the primary frame and the one or more preceding frames of a packet; reading a first frame from the buffer as the primary frame from one of the entries; determining that a packet with a primary frame that is a next frame in the sequence has been lost; and, responsive to the determination, reading the next frame from the buffer as a preceding frame from one of the entries.

Queue protection using a shared global memory reserve

The subject technology relates to the management of a shared buffer memory in a network switch. Systems, methods, and machine readable media are provided for receiving a data packet at a first network queue from among a plurality of network queues, determining if a fill level of a queue in a shared buffer of the network switch exceeds a dynamic queue threshold, and in an event that the fill level of the shared buffer exceeds the dynamic queue threshold, determining if a fill level of the first network queue is less than a static queue minimum threshold.