H04L49/9047

Processing of ethernet packets at a programmable integrated circuit

Methods, systems, and computer programs are presented for processing Ethernet packets at a Field Programmable Gate Array (FPGA). One programmable integrated circuit includes: an internal network on chip (iNOC) comprising rows and columns, clusters, coupled to the iNOC, comprising a network access point (NAP) and programmable logic; and an Ethernet controller coupled to the iNOC. When the controller operates in packet mode, each complete inbound Ethernet packet is sent from the controller to one of the NAPs via the iNOC, where two or more NAPs are configurable to receive the complete inbound Ethernet packets from the controller. The controller is configurable to operate in quad segment interface (QSI) mode where each complete inbound Ethernet packet is broken into segments, which are sent from the controller to different NAPs via the iNOC, where two or more NAPs are configurable to receive the complete inbound Ethernet packets from the controller.

METHODS AND SYSTEMS FOR TRANSMITTING DATA OVER A WIRELESS NETWORK
20230262008 · 2023-08-17 ·

An aspect of the invention provides a method of transmitting data over a wireless network. The method includes maintaining a plurality of data packets within a first buffer and encoding at least some of the data packets within the first buffer inside a first broadcast packet. A broadcasting device transmits the first broadcast packet over the wireless network. The method further includes maintaining a plurality of data packets within a second buffer and encoding at least some of the data packets within the second buffer inside a second broadcast packet. The broadcasting device transmits the second broadcast packet over the wireless network. The method further includes, on detecting overflow of the first buffer, removing a data packet from the first buffer and adding the removed data packet to the second buffer.

METHODS AND SYSTEMS FOR TRANSMITTING DATA OVER A WIRELESS NETWORK
20230262008 · 2023-08-17 ·

An aspect of the invention provides a method of transmitting data over a wireless network. The method includes maintaining a plurality of data packets within a first buffer and encoding at least some of the data packets within the first buffer inside a first broadcast packet. A broadcasting device transmits the first broadcast packet over the wireless network. The method further includes maintaining a plurality of data packets within a second buffer and encoding at least some of the data packets within the second buffer inside a second broadcast packet. The broadcasting device transmits the second broadcast packet over the wireless network. The method further includes, on detecting overflow of the first buffer, removing a data packet from the first buffer and adding the removed data packet to the second buffer.

COMMUNICATIONS FOR WORKLOADS
20220138021 · 2022-05-05 ·

Examples described herein relate to a sender process having a capability to select from use of a plurality of connections to at least one target process, wherein the plurality of connections to at least one target process comprise a connection for the sender process and/or one or more connections allocated per job. In some examples, the connection for the sender process comprises a datagram transport for message transfers. In some examples, the one or more connections allocated per job utilize a kernel bypass datagram transport for message transfers. In some examples, the one or more connections allocated per job comprise a connection oriented transport and wherein multiple remote direct memory access (RDMA) write operations for a plurality of processes are to be multiplexed using the connection oriented transport.

Buffer control method, network element, and controller

A buffer control method, a network element, and a system. The method includes: receiving, by a network element, a flow table message from a controller, where the flow table message includes buffer information of a data packet matching a flow table; processing, by the network element, a buffer of the data packet based on the buffer information, and sending a flow table response message to the controller. In the method, the network element can save, based on a corresponding saving manner, at least one data packet matching the flow table to the buffer corresponding to the flow table. Thus a data flow granularity-based buffer processing manner can be supported in an OpenFlow protocol, and a data buffering requirement of a mobile network can be met.

COMBINED INPUT AND OUTPUT QUEUE FOR PACKET FORWARDING IN NETWORK DEVICES
20220124030 · 2022-04-21 ·

An apparatus for switching network traffic includes an ingress packet forwarding engine and an egress packet forwarding engine. The ingress packet forwarding engine is configured to determine, in response to receiving a network packet, an egress packet forwarding engine for outputting the network packet and enqueue the network packet in a virtual output queue. The egress packet forwarding engine is configured to output, in response to a first scheduling event and to the ingress packet forwarding engine, information indicating the network packet in the virtual output queue and that the network packet is to be enqueued at an output queue for an output port of the egress packet forwarding engine. The ingress packet forwarding engine is further configured to dequeue, in response to receiving the information, the network packet from the virtual output queue and enqueue the network packet to the output queue.

COMBINED INPUT AND OUTPUT QUEUE FOR PACKET FORWARDING IN NETWORK DEVICES
20220124030 · 2022-04-21 ·

An apparatus for switching network traffic includes an ingress packet forwarding engine and an egress packet forwarding engine. The ingress packet forwarding engine is configured to determine, in response to receiving a network packet, an egress packet forwarding engine for outputting the network packet and enqueue the network packet in a virtual output queue. The egress packet forwarding engine is configured to output, in response to a first scheduling event and to the ingress packet forwarding engine, information indicating the network packet in the virtual output queue and that the network packet is to be enqueued at an output queue for an output port of the egress packet forwarding engine. The ingress packet forwarding engine is further configured to dequeue, in response to receiving the information, the network packet from the virtual output queue and enqueue the network packet to the output queue.

REDUCING INTERRUPTS USING BUFFERING FOR DATA PROCESSING
20230244621 · 2023-08-03 ·

Techniques are described herein that are capable of reducing interrupts using buffering for data processing. In a first example, information is received at an operating system from an application. The information indicates multiple buffers, including a triggering buffer to trigger an interrupt from hardware. Portions of the data are stored in the respective buffers. A schedule for processing the buffers is provided to the hardware. The schedule indicates that the interrupt is to be delayed until the triggering buffer is processed by the hardware. In a second example, a network interface controller is configured to provide one interrupt to the operating system for each of multiple subsets of network packets that is processed by the network interface controller. Each subset includes a number of the network packets that is greater than one. The network packets are associated with a common network socket.

REDUCING INTERRUPTS USING BUFFERING FOR DATA PROCESSING
20230244621 · 2023-08-03 ·

Techniques are described herein that are capable of reducing interrupts using buffering for data processing. In a first example, information is received at an operating system from an application. The information indicates multiple buffers, including a triggering buffer to trigger an interrupt from hardware. Portions of the data are stored in the respective buffers. A schedule for processing the buffers is provided to the hardware. The schedule indicates that the interrupt is to be delayed until the triggering buffer is processed by the hardware. In a second example, a network interface controller is configured to provide one interrupt to the operating system for each of multiple subsets of network packets that is processed by the network interface controller. Each subset includes a number of the network packets that is greater than one. The network packets are associated with a common network socket.

PACKET PROCESSING METHOD AND APPARATUS, AND COMMUNICATIONS DEVICE
20220124054 · 2022-04-21 ·

Embodiments of this application provide a packet processing method and apparatus, and a communications device. The method includes the following operations: After obtaining first network cost information of a received first packet, a network device may determine a first queue for the first packet based on the first network cost information, and buffer the first packet to the first queue, where the first network cost information is used to indicate a cost for transmitting the first packet to an egress node. Therefore, the network device considers costs for transmitting packets to the egress node, divides queues based on values of the costs that are indicated, and performs differentiated enqueuing operations on the received packets considering the values of the costs.