H04L49/9084

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.

Methods and systems for data transmission
11570120 · 2023-01-31 · ·

A method for data transmission may be implemented on an electronic device having one or more processors. The one or more processors may include a master queue including a master queue head and a plurality of primary ports that are connected to each other using a serial link. The method may include operating the master queue head to obtain a message. The method may also include operating the master queue head to segment the message into a plurality of segments. The method may also include operating the master queue head to transmit the plurality of segments to a first primary port of the plurality of primary ports in the master queue. The method may also include operating the first primary port to transmit the plurality of segments to a second primary port of the plurality of primary ports in the master queue.

Reducing power consumption in an electronic device
11570127 · 2023-01-31 · ·

An ingress packet processor in a device corresponds to a group of ports and receives network packets from ports in its port group. A traffic manager in the device manages buffers storing packet data for transmission to egress packet processors. An ingress arbiter is associated with a port group and connects the port group to an ingress packet processor coupled to the ingress arbiter. The ingress arbiter determines a traffic rate at which the associated ingress packet processor transmits packets to the traffic manager. The ingress arbiter controls an associated traffic shaper to generate a number of tokens that are assigned to the port group. Upon receiving packet data from a port in the group, the ingress arbiter determines, using information from the traffic shaper, whether a token is available. Conditioned on determining that a token is available, the ingress arbiter forwards the packet data to the ingress packet processor.

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.

Packet value based packet processing

Embodiments of the invention include methods for handling packets in a communications network. In one embodiment, a method is implemented in an electronic device. The method includes at a first end of a queue in the electronic device, determining admission of a first packet to the first end of the queue based on a length of the first packet, where when the admission of the first packet would cause the queue to become full, the admission is further based on a packet value of the first packet and a data structure tracking packet value distribution of packets in the queue. The method further includes at a second end of the queue, dropping a second packet from the second end of the queue when the second packet's corresponding packet value is marked as to be dropped in the data structure upon admitting packets to the first end of the queue.

Congestion avoidance in a network switch device
11558298 · 2023-01-17 · ·

Packets received by a network switch device from upstream network devices, coupled to respective ones of a plurality of ports of the network switch device, are temporarily stored in an internal memory of the network switch device. In response to detecting congestion in the internal memory of the network switch device, a flow control engine triggers, during respective timeslots of a timing schedule and while the flow control engine continues to monitor congestion in the internal memory of the network switch device, transmission of respective flow control messages via different subsets of ports, among the plurality of ports, to control flow of packets from different subsets of upstream network device, among the plurality of upstream network devices, to the network switch device so that flow control is distributed over time among upstream network devices of the plurality of upstream network devices.

Network interface and buffer control method thereof
11700214 · 2023-07-11 · ·

A network interface includes a processor, memory, and a cache between the processor and the memory. The processor secures a plurality of buffers for storing transfer data in the memory, and manages an allocation order of available buffers of the plurality of buffers. The processor returns a buffer released after data transfer to a position before a predetermined position of the allocation order.

Buffer management method and apparatus

A memory management method includes: determining that available storage space of a first memory in a network device is less than a first threshold, where the first threshold is greater than 0 and the first memory stores a first packet queue; and deleting at least one packet at the tail of the first packet queue from the first memory based on the available storage space of the first memory being less than the first threshold. When the available storage space of the first memory is less than the first threshold, a packet queue, namely, the first packet queue, is selected and a packet at the tail of the packet queue is deleted from the first memory.

Traffic management in a network switching system with remote physical ports
11588757 · 2023-02-21 · ·

In a switching system that comprises a central switching device an at least one port extender device, the central switching device includes at least one port configured to interface with the port extender device, and the port extender device includes a plurality of front ports for interfacing with one or more networks. The central switching device includes a processor that processes packets received from the at least one port extender device, and a plurality of egress queues for storing processed packets that are to be forwarded to the at least one port extender device for transmission via ones of the front ports. The central switching device also includes a flow control processor configured to, responsively to flow control messages received from the at least one port extender device, control transmission of packets to the at least one port extender device to prevent overflow of egress queues of the port extender device.