US 12,483,516 B2
Transport and cryptography offload to a network interface device
Daniel Daly, Santa Barbara, CA (US); Anjali Singhai Jain, Portland, OR (US); Yadong Li, Portland, OR (US); Stephen Doyle, Ennis (IE); Naru Dames Sundar, Los Gatos, CA (US); Chih-Jen Chang, Union City, CA (US); Sailesh Bissessur, Phoenix, AZ (US); Andrew Cunningham, Ennis (IE); Edwin Verplanke, Chandler, AZ (US); and Patrick Fleming, Slatt Wolfhill (IE)
Assigned to Intel Corporation, Santa Clara, CA (US)
Filed by Intel Corporation, Santa Clara, CA (US)
Filed on Dec. 7, 2021, as Appl. No. 17/544,699.
Claims priority of provisional application 63/145,327, filed on Feb. 3, 2021.
Claims priority of provisional application 63/122,896, filed on Dec. 8, 2020.
Prior Publication US 2022/0103530 A1, Mar. 31, 2022
Int. Cl. H04L 9/40 (2022.01); H04L 47/2425 (2022.01); H04L 47/762 (2022.01); H04L 47/78 (2022.01); H04L 47/80 (2022.01)
CPC H04L 47/762 (2013.01) [H04L 47/2425 (2013.01); H04L 47/781 (2013.01); H04L 47/803 (2013.01); H04L 63/0428 (2013.01); H04L 63/101 (2013.01); H04L 63/166 (2013.01)] 18 Claims
OG exemplary drawing
 
1. An apparatus comprising:
a network interface device comprising:
a host interface;
a direct memory access (DMA) circuitry;
a network interface;
circuitry to perform offloaded operations from a host system of encryption of data,
circuitry to generate one or more packets from the encrypted data,
circuitry to cause transmission of the one or more packets with the encrypted data,
circuitry to perform offloaded operations from the host system to manage reliability of transport of the transmitted one or more packets with the encrypted data, wherein the circuitry to manage reliability of transport of the transmitted one or more packets is to manage packet receipt and packet retransmission of packets identified as not received, and
circuitry to share protocol state information between a host system and the network interface device using user space accessible queues, wherein the user space accessible queues are consistent with Address Family of the eXpress Data Path (AF_XDP) and wherein an application is to access the AF_XDP queues to cause transmission of data in a packet of the transmitted one or more packets or access data of a received packet.