IP Library › Granted Patent US 11,656,900
Granted Patent B2
US 11,656,900 · App. 17/445,080 · Granted May 23, 2023

Frameworks and interfaces for offload device-based packet processing

Inventors: Pradeep Vincent (Kenmore, WA); Matthew David Klein (Seattle, WA); Samuel James McKelvie (Seattle, WA)
Assignee: Amazon Technologies, Inc.
G06F9/45558H04L12/4633H04L41/082H04L45/74H04L63/0272H04L63/20G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,656,900
App. No.
17/445,080
Granted
May 23, 2023
Kind
B2
Abstract

High-speed processing of packets to, and from, a virtualization environment can be provided while utilizing hardware-based segmentation offload and other such functionality. A hardware vendor such as a network interface card (NIC) manufacturer can enable the hardware to support open and proprietary stateless tunneling in conjunction with a protocol such as single root I/O virtualization (SR-IOV) in order to implement a virtualized overlay network. The hardware can utilize various rules, for example, that can be used by the NIC to perform certain actions, such as to encapsulate egress packets and decapsulate packets.

Claims (41)

1. A network interface card (NIC) operable in a data center or cloud computing environment, the network interface card including:

a processing device; and

a memory storing instructions that, when executed by the processing device, cause the NIC to perform operations including:

providing single-root input/output virtualization (SR-IOV) support for a set of virtualized functions;

receiving data traffic associated with a guest of a host system;

determining that the data traffic matches a forwarding rule containing a Media Access Control (MAC) address;

determining a virtual function associated with the forwarding rule; and

forwarding the data traffic to the virtual function.

2. The NIC of claim 1 , wherein the NIC is operable to perform at least two networking functions in a set of networking functions that includes Transmission Control Protocol (TCP) segmentation offload, checksum offload, multi-queuing, interrupt coalescing, remote direct memory access (RDMA), and virtual local area network (VLAN) tag insertion.

3. The NIC of claim 2 , wherein the NIC implements a trusted root domain.

4. The NIC of claim 3 , wherein packets of the data traffic are encapsulated or mangled before being forwarded to the virtual function.

5. A hardware apparatus comprising:

a processing device; and

a memory storing instructions that, when executed by the processing device, cause the hardware apparatus to perform operations including:

receiving a packet associated with a guest of a host system;

determining that the packet corresponds to a Media Access Control (MAC) address;

determining a virtual function associated with the MAC address; and

forwarding packet data of the packet to the virtual function.

6. The hardware apparatus of claim 5 , wherein the received packet is processed by the hardware apparatus using a physical function.

7. The hardware apparatus of claim 5 , wherein the hardware apparatus is operable as an offload device to support one or more offload functions.

8. The hardware apparatus of claim 7 , wherein the one or more offload functions include Transmission Control Protocol (TCP) segmentation offload.

9. The hardware apparatus of claim 7 , wherein the one or more offload functions include checksum offload.

10. The hardware apparatus of claim 5 , wherein the hardware apparatus is operable to support one or more coalescing functions.

11. The hardware apparatus of claim 10 , wherein the one or more coalescing functions include interrupt coalescing.

12. The hardware apparatus of claim 10 , wherein the one or more coalescing functions include receive side coalescing.

13. The hardware apparatus of claim 5 , wherein the hardware apparatus is operable to support stateless tunneling.

14. The hardware apparatus of claim 13 , wherein the stateless tunneling is used to implement a virtualized overlay network.

15. A method comprising:

receiving packets for processing by a network interface card;

performing packet classification on the received packets;

determining that at least one packet of the received packets matches a Media Access Control (MAC) address;

determining a virtual function associated with the MAC address; and

forwarding packet data of the at least one packet to the virtual function.

16. The method of claim 15 , wherein the received packets are processed by a physical function.

17. The method of claim 15 , wherein the virtual function is determined by matching the at least one packet with a forwarding rule in a set of packet processing rules, the forwarding rule including a MAC address field containing the MAC address.

18. The method of claim 15 , further comprising:

performing an offload function, the offload function including at least one of Transmission Control Protocol (TCP) segmentation offload or a checksum offload.

19. The method of claim 15 , further comprising:

performing a coalescing function, the coalescing function including at least one of receive side coalescing or interrupt coalescing.

20. The method of claim 15 , further comprising:

performing stateless tunneling to implement a virtualized overlay network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 13, 2021
From: VINCENT, PRADEEP; KLEIN, MATTHEW DAVID; MCKELVIE, SAMUEL JAMES
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 057177/0113 →
Continuity (6)
Continuation 16789337 · Feb 12, 2020
Continuation 15904236 · Feb 23, 2018
Continuation 14923276 · Oct 26, 2015
Continuation 14321492 · Jul 1, 2014
Continuation 13076347 · Mar 30, 2011
Related Publication 20210373935A1 · Dec 2, 2021
Cited By (1)
US 12,210,896