H04L49/9063

TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies
10148795 · 2018-12-04 · ·

A TCP offload system is disclosed including apparatuses and methods for batching session layer headers to reduce interrupts as well as CPU copies. One embodiment includes the following steps: receiving a plurality of TCP packets: processing the packets by TCP, including removing TCP headers from TCP data, associating the TCP data with a TCP connection for an application, and updating a TCP control block (TCB) that defines the TCP connection; locating a plurality of upper layer headers in the TCP data, the headers each corresponding to application data contained in the packets, wherein the plurality of upper layer headers correspond to a protocol that is higher than TCP; processing the plurality of upper layer headers by the application to obtain memory locations for the application data; and placing the application data in the locations, after the processing of the plurality of upper layer headers by the application.

TERABIT-SCALE NETWORK PACKET PROCESSING VIA FLOW-LEVEL PARALLELIZATION
20180336071 · 2018-11-22 ·

In one example, the present disclosure describes a device, computer-readable medium, and method for organizing terabit-scale packet volumes into flows for downstream processing stages. For instance, in one example, a method includes extracting a first flow key from a first data packet, inputting the first flow key into a hash function to obtain a first output value, selecting a first partition in a memory to which to store the first data packet, wherein the first partition is selected based on the first output value, and storing the first data packet to the first partition.

Protocol Data Unit Management
20180192472 · 2018-07-05 · ·

A system and method is provided for configuring a plurality of PDU sessions. In an implementation, a core network function transmits a PDU bulk configuration request to at least one network node associated with the plurality of PDU sessions. The PDU bulk configuration request including a PDU session identifying component to enable the at least one network node to identify the plurality of PDU sessions, and includes a PDU session modifying component identifying required changes to one or more PDU session parameters to configure the plurality of PDU sessions.

TIME-BASED FLEXIBLE PACKET SCHEDULING
20180191629 · 2018-07-05 ·

Various systems and methods for implementing time-based flexible packet scheduling are provided herein. A network interface device for implementing time-based flexible packet scheduling including a packet parser to: determine from analyzing a packet, a corresponding processing element that is used to process the packet; and store the packet in a queue; and a coordinator circuit to: determine a timing of when the processing element is active in a computing unit; and modify the priority of the packet in the queue based on the timing of when the processing element is active in the computing unit.

Network device architecture using cache for multicast packets

A packet received via a network is stored in a packet memory. Information in a header of the packet is analyzed to determine multiple ports to which the packet is to be forwarded. The packet is read from the packet memory in connection with transmitting the packet via a first port among the multiple ports. Packet data corresponding to the packet is stored in a packet cache different than the packet memory. In connection with forwarding one or more instances of the packet to ports among the multiple ports, the packet data is read, based on information included in a packet descriptor associated with the packet, from the packet cache. Ones of the one or more instances of the packet are forwarded, using the data corresponding to the packet read from the packet cache and without further accessing the packet memory, to respective one or more of the multiple ports.

SYSTEM AND METHOD FOR CENTRALIZED VIRTUAL INTERFACE CARD DRIVER LOGGING IN A NETWORK ENVIRONMENT
20180183734 · 2018-06-28 ·

A method is provided in one example and includes creating a staging queue in a virtual interface card (VIC) adapter firmware of a server based on a log policy; receiving a log message from a VIC driver in the server; copying the log message to the staging queue; generating a VIC control message comprising the log message from the staging queue; and sending the VIC control message to a switch.

PACKET VALIDATION IN VIRTUAL NETWORK INTERFACE ARCHITECTURE

Roughly described, a network interface device receiving data packets from a computing device for transmission onto a network, the data packets having a certain characteristic, transmits the packet only if the sending queue has authority to send packets having that characteristic. The data packet characteristics can include transport protocol number, source and destination port numbers, source and destination IP addresses, for example. Authorizations can be programmed into the NIC by a kernel routine upon establishment of the transmit queue, based on the privilege level of the process for which the queue is being established. In this way, a user process can use an untrusted user-level protocol stack to initiate data transmission onto the network, while the NIC protects the remainder of the system or network from certain kinds of compromise.

SYSTEM AND METHODS FOR SECURE DATA STORAGE

A computer-implemented method for secure data storage is described. In one embodiment, the method may include receiving data at a receiver. The method may further include integrating a storage device with the receiver, and storing the received data on the integrated storage device. The method may further include communicating the received data from the integrated storage device to be stored on a remote distributed storage network.

THROTTLING OUTPUT WITH ONGOING INPUT
20180131626 · 2018-05-10 ·

A plurality of communications sent from a sending program can be stored in a queue for the duration of a time period specified by a timer. When the timer expires, a specified program module can be executed that merges the plurality of communications into a single result. The singe result can be sent to a receiving program. Incoming communications are not throttled or delayed.

Data transmission method, core forwarding device, and endpoint forwarding device
09967201 · 2018-05-08 · ·

A data transmission method, a core forwarding device, and an endpoint forwarding device, where the data transmission method includes, an end-to-end flow control technology that is established between a core device and an endpoint device of a system using the core forwarding device and the endpoint forwarding device, resolving a technical problem in the prior art that a uniform back pressure is generated in an entire data transmission link when any endpoint device generates back pressure when peripheral component interconnect express (PCIe) data is transmitted through the Ethernet, thereby achieving technical effects of increasing bandwidth utilization of the entire system and increasing the data transmission efficiency.