Patent classifications
H04L45/742
NETWORK FORWARDING ELEMENT WITH KEY-VALUE PROCESSING IN THE DATA PLANE
Some embodiments of the invention provide a forwarding element (e.g., a switch, a router, etc.) that has one or more data plane, message-processing pipelines with key-value processing circuits. The forwarding element's data plane key-value circuits allow the forwarding element to perform key-value services that would otherwise have to be performed by data compute nodes connected by the network fabric that includes the forwarding element. In some embodiments, the key-value (KV) services of the forwarding element and other similar forwarding elements supplement the key-value services of a distributed set of key-value servers by caching a subset of the most commonly used key-value pairs in the forwarding elements that connect the set of key-value servers with their client applications. In some embodiments, the key-value circuits of the forwarding element perform the key-value service operations at message-processing line rates at which the forwarding element forwards messages to the data compute nodes and/or to other network forwarding elements in the network fabric.
NETWORK INTERFACE FOR DATA TRANSPORT IN HETEROGENEOUS COMPUTING ENVIRONMENTS
A network interface controller can be programmed to direct write received data to a memory buffer via either a host-to-device fabric or an accelerator fabric. For packets received that are to be written to a memory buffer associated with an accelerator device, the network interface controller can determine an address translation of a destination memory address of the received packet and determine whether to use a secondary head. If a translated address is available and a secondary head is to be used, a direct memory access (DMA) engine is used to copy a portion of the received packet via the accelerator fabric to a destination memory buffer associated with the address translation. Accordingly, copying a portion of the received packet through the host-to-device fabric and to a destination memory can be avoided and utilization of the host-to-device fabric can be reduced for accelerator bound traffic.
CENTRALIZED PATH COMPUTATION FOR INFORMATION-CENTRIC NETWORKING
This disclosure describes techniques for implementing centralized path computation for routing in hybrid information-centric networking protocols implemented as a virtual network overlay. A method includes receiving an interest packet header from a forwarding router node of a network overlay. The method further includes determining an interest path of the interest packet and one or more destination router nodes of the network overlay. The method further includes computing one or more paths over the network overlay. The method further includes determining an addressing method for the one or more computed paths over the network overlay. The method further includes performing at least one of encoding each computed path in a data packet header, and encoding each computed path as state entries of each router node of the network overlay on each respective path. The method further includes returning the computed path information to the forwarding router node.
Flow cache support for crypto operations and offload
Certain embodiments described herein are generally directed to using a flow cache with packets comprising dynamic headers. Embodiments include receiving a packet of a packet flow from a network, parsing the packet in order to determine a flow key, and comparing the flow key to entries in the flow cache. Upon determining that the flow key does not match any of the entries, embodiments include determining whether the packet comprises a dynamic header. Upon determining that the packet comprises a dynamic header, embodiments include canceling recorded flow cache information for the packet, performing an operation on the packet, re-parsing the packet in order to determine a new flow key, and comparing the new flow key to the entries in the flow cache. Upon determining that the flow key matches an entry, embodiments include determining cached actions to perform for the packet based on the entry and performing the cached actions.
Application performance based path-selection
Embodiments herein disclose methods for selecting one or more paths for routing application traffic based on application performance metrics for hosted applications. In an embodiment, to select the best path, the available paths can be monitored to understand the performance of specific applications through those paths. Subsequently, the performance data is used to derive an application link score (ALS) for any given combination of application and path. The ALS is then be used to determine the best path for a given application.
HYBRID FIRST-FIT K-CHOICE INSERTIONS FOR HASH TABLES, HASH SETS, APPROXIMATE SET MEMBERSHIP DATA STRUCTURES, AND CACHES
A hybrid mechanism for operating on a data item in connection with an associative structure combines first-fit and K-choice. The hybrid mechanism leverages advantages of both approaches by choosing whether to insert, retrieve, delete, or modify a data item using either first-fit or K-choice. Based on the data item, a function of the data item, and/or other factors such as the load statistics of the associative structure, one of either first-fit or K-choice is used to improve operation on the associative structure across a variety of different load states of the associative structure.
SYSTEM AND METHOD FOR TRANSMITTING A DATA PACKET
A method for data transmission over a network and a related device are provided. The method includes generating, by a sending device a data packet for transmission, wherein a header of the data packet includes a routing hint field indicating a status of the data packet, and wherein the status is selected from a status list including a normal packet, a first packet in a heavy flow, wherein the heavy flow is a data flow having more than a predefined number of packets transmitted during a predefined period of time, and a last packet in the heavy flow. The method further includes transmitting, by the sending device, the data packet to a destination address over the network.
CAPTIVE PORTAL REDIRECTION BY DEVICES WITH NO INTERNET PROTOCOL CONNECTIVITY IN THE HOST VIRTUAL LOCAL AREA NETWORK
In general, the disclosure relates to a method for redirecting a user to a captive portal. The method includes trapping an incoming frame originating from a host, where the incoming frame comprises a L2 header and a payload, wherein the payload specifies information associated with an external server, wherein the user of the host has not been authenticated by the captive portal at a time when the incoming frame is trapped, extracting the L2 header, an L3 header, and the payload from the incoming frame, forwarding the L3 header and the payload towards a redirection server executing on the network device, wherein the redirection server is configured to generate a redirection response based on the payload; encapsulating the redirection response to obtain an L3 response packet, encapsulating the L3 response packet using information from the L2 header to obtain an output frame, and transmitting the output frame towards the host.
Content delivery from home networks
A method for retrieving content on a network comprising a first device and a second device is described. The method includes receiving in the network a request for content from the first device, the request identifying the content using an IPv6 address for the content, and determining whether the content is stored in a cache of the second device. Upon determining the content is stored in the cache of the second device, a request is sent to the second device for the content using the IPv6 address of the content. The content is forwarded to the first device from the second device, wherein the first and second devices are part of the same layer 2 domain. Methods of injecting content to a home network and packaging content are also described.
METHOD FOR CONTENT CACHING IN INFORMATION-CENTRIC NETWORK VIRTUALIZATION
A method for content caching in information centric network virtualization includes receiving, by a first node, a first data packet; in response to a cache distance identifier hop of the first data packet being less than a preset maximum cache distance, setting hop=hop+1 and sending the first data packet to a next node by the first node; in response to the hop being not less than the preset maximum cache distance and there being available cache space in the first node, setting hop=0, storing the first data packet, and sending the first data packet to the next node by the first node. The node determines whether to cache a data packet based on the cache distance identifier of the data packet, which comprehensively considers the cache energy consumption caused by caching the data packet in the node and the transmission energy consumption caused by transmission of the data packet in the link, thereby effectively reducing the total energy consumption of the network.