Patent classifications
H04L49/90
Memory allocator for I/O operations
Some embodiments provide a novel method for sharing data between user-space processes and kernel-space processes without copying the data. The method dedicates, by a driver of a network interface controller (NIC), a memory address space for a user-space process. The method allocates a virtual region of the memory address space for zero-copy operations. The method maps the virtual region to a memory address space of the kernel. The method allows access to the virtual region by both the user-space process and a kernel-space process.
CONFIGURABLE PARSER AND A METHOD FOR PARSING INFORMATION UNITS
A packet processing technique can include receiving a packet, and parsing the packet based on a protocol field to generate a parse result vector. The parse result vector is used to select between forwarding the packet to a virtual machine executing on a host processing integrated circuit, forwarding the packet to a physical media access controller, multicasting the packet to multiple virtual machines executing on the host processing integrated circuit, and sending the packet to a hypervisor.
CONFIGURABLE PARSER AND A METHOD FOR PARSING INFORMATION UNITS
A packet processing technique can include receiving a packet, and parsing the packet based on a protocol field to generate a parse result vector. The parse result vector is used to select between forwarding the packet to a virtual machine executing on a host processing integrated circuit, forwarding the packet to a physical media access controller, multicasting the packet to multiple virtual machines executing on the host processing integrated circuit, and sending the packet to a hypervisor.
SYSTEM AND METHOD OF A HIGH BUFFERED HIGH BANDWIDTH NETWORK ELEMENT
A method and apparatus of a network element that processes a packet in the network element is described. In an exemplary embodiment, the network element receives a data packet that includes a destination address. The network element receives a packet, with a packet switch unit, wherein the packet was received by the network element on an ingress interface. The network element further determines if the packet is to be stored in an external queue. In addition, the network element identifies the external queue for the packet based on one or more characteristics of the packet. The network element additionally forwards the packet to a packet storage unit, wherein the packet storage unit includes storage for the external queue. Furthermore, the network element receives the packet from the packet storage unit and forwards the packet to an egress interface corresponding to the external queue.
Network Interface Device
Roughly described: a network interface device has an interface. The interface is coupled to first network interface device circuitry, host interface circuitry and host offload circuitry. The host interface circuitry is configured to interface to a host device and has a scheduler configured to schedule providing and/or receiving of data to/from the host device. The interface is configured to allow at least one of: data to be provided to said host interface circuitry from at least one of said first network device interface circuitry and said host offload circuitry; and data to be provided from said host interface circuitry to at least one of said first network interface device circuitry and said host offload circuitry.
BUFFERING DATA ON HIGH BANDWIDTH NETWORKS
Techniques for buffering data over high bandwidth networks are provided. A first portion of data is downloaded, by a device, into a buffer at a first download speed via a first network connection. Upon determining that the device is downloading data via a second network connection, at a second download speed greater than the first download speed, a second portion of data is downloaded, via the second network connection, into a cache.
BUFFERING DATA ON HIGH BANDWIDTH NETWORKS
Techniques for buffering data over high bandwidth networks are provided. A first portion of data is downloaded, by a device, into a buffer at a first download speed via a first network connection. Upon determining that the device is downloading data via a second network connection, at a second download speed greater than the first download speed, a second portion of data is downloaded, via the second network connection, into a cache.
FIRST-IN FIRST-OUT FUNCTION FOR SEGMENTED DATA STREAM PROCESSING
A method includes storing entries in a first first-in first-out (FIFO) buffer, each entry of the first FIFO buffer includes a respective segment of plural segments of a first data stream and timing attributes corresponding to the respective segment. The method also includes processing the respective segments in entries output from the first FIFO buffer using a first media processing task of a workflow in a network-based media processing (NBMP) system. The respective segments are processed independently from each other and the first media processing task is performed in a cloud computing environment. The method also includes generating a continuous data stream by concatenating the processed segments according to the timing attributes corresponding to the processed segments.
FIRST-IN FIRST-OUT FUNCTION FOR SEGMENTED DATA STREAM PROCESSING
A method includes storing entries in a first first-in first-out (FIFO) buffer, each entry of the first FIFO buffer includes a respective segment of plural segments of a first data stream and timing attributes corresponding to the respective segment. The method also includes processing the respective segments in entries output from the first FIFO buffer using a first media processing task of a workflow in a network-based media processing (NBMP) system. The respective segments are processed independently from each other and the first media processing task is performed in a cloud computing environment. The method also includes generating a continuous data stream by concatenating the processed segments according to the timing attributes corresponding to the processed segments.
Methods and systems for data transmission
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.