IP Library Granted Patent US 12,081,393
Granted Patent B2
US 12,081,393 · App. 17/569,470 · Granted Sep 3, 2024

Virtual smart network interface card for edge device

Inventors: Kirils Zaicenko (Cumming, GA); David Dale Becker (Seattle, WA); Maxim Baturin (Sammamish, WA); Tadeusz Jakub Dul (Redmond, WA)
Assignee: Oracle International Corporation
H04L41/0806G06F3/0604G06F3/0622G06F3/0655G06F3/0659G06F3/067G06F3/0679G06F8/61G06F8/658G06F9/4406G06F9/45558G06F9/505G06F9/5055G06F9/5077G06F9/5088G06F11/1451G06F11/1469H04L9/0897H04L12/4641H04L63/0471H04L63/0478H04L63/0485H04L63/06H04L63/0876H04L63/162H04L63/20H04L67/10G06F2009/45562G06F2009/45587G06F2009/45595G06F2201/84
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 12,081,393
App. No.
17/569,470
Granted
Sep 3, 2024
Kind
B2
Abstract

Techniques are described for implementing a virtual smart network interface card to facilitate data transmission in an edge device providing cloud-computing operations. An edge device can implement a private virtual network that includes a private virtual network data plane. The edge device can execute a virtual machine to be connected to the private virtual network. To establish the connection, the edge device can generate a virtual network interface that includes a first endpoint and a second endpoint and is hosted within the private virtual network data plane. The edge device can associate the first endpoint with the virtual machine and associate the second endpoint with an orchestration module of the private virtual network data plane. The virtual machine can then send a data packet to the orchestration module via the virtual network interface.

Claims (58)

1. A computer-implemented method, comprising:

implementing, by a cloud-computing edge device, a private virtual network, the private virtual network comprising a private virtual network data plane hosted within an execution environment of the cloud-computing edge device;

executing, by the cloud-computing edge device, a virtual machine;

generating, by the cloud-computing edge device, a virtual network interface having a first endpoint and a second endpoint, the virtual network interface being hosted within the private virtual network data plane;

establishing a communication connection between the virtual machine and a component of the private virtual network data plane based at least in part on associating the first endpoint of the virtual network interface with the virtual machine and associating the second endpoint of the virtual network interface with an orchestration module of the private virtual network data plane; and

sending, by the virtual machine and using the virtual network interface, a data packet, the data packet being sent through the first endpoint to the second endpoint.

2. The computer-implemented method of claim 1 , wherein the virtual machine comprises a first virtual machine, wherein the virtual network interface comprises a first virtual network interface associated with a first subnet of the private virtual network, and further comprising:

executing, by the cloud-computing edge device, a second virtual machine;

generating, by the cloud-computing edge device, a second virtual network interface having a third endpoint and a fourth endpoint, the second virtual network interface being hosted within the private virtual network data plane and associated with a first subnet of the private virtual network; and

establishing an additional communication connection between the second virtual machine and the orchestration module of the private virtual network data plane based at least in part on associating the third endpoint with the second virtual machine and associating the fourth endpoint with the orchestration module.

3. The computer-implemented method of claim 2 , wherein sending the data packet comprises sending the data packet from the first virtual machine to the second virtual machine using the first virtual network interface and the second virtual network interface.

4. The computer-implemented method of claim 1 , wherein the private virtual network data plane comprises a gateway module, and further comprising forwarding, by the private virtual network data plane using the gateway module, the data packet to an external device, the cloud-computing edge device communicatively connected to the external device through a public network.

5. The computer-implemented method of claim 1 , wherein the cloud-computing edge device is one of a plurality of cloud-computing edge devices, and further comprising forwarding, by the orchestration module of the private virtual network data plane, the data packet to an additional cloud-computing edge device of the plurality of cloud-computing edge devices, the cloud-computing edge device communicatively connected to the additional cloud-computing edge device through a substrate network.

6. The computer-implemented method of claim 1 , further comprising:

executing, by the cloud-computing edge device, a command proxy module configured to modify a first networking namespace of a host operating system executing on the cloud-computing edge device;

receiving, at the private virtual network data plane, a request to create the virtual network interface, the request comprising a networking command;

sending, by the private virtual network data plane to the command proxy module, the networking command; and

generating the virtual network interface within the first networking namespace by executing the networking command.

7. The computer-implemented method of claim 6 , wherein the first endpoint is associated with the first networking namespace of the host operating system and the second endpoint is associated with a second networking namespace of the orchestration module.

8. A cloud-computing edge device, comprising:

one or more processors; and

one or more memories storing computer-executable instructions that, when executed with the one or more processors, cause the cloud-computing edge device to:

implement a private virtual network, the private virtual network comprising a private virtual network data plane hosted within an execution environment of the cloud-computing edge device;

execute a virtual machine;

generate a virtual network interface having a first endpoint and a second endpoint, the virtual network interface being hosted within the private virtual network data plane;

establish a communication connection between the virtual machine and a component of the private virtual network data plane based at least in part on associating the first endpoint of the virtual network interface with the virtual machine and associating the second endpoint of the virtual network interface with an orchestration module of the private virtual network data plane; and

send, by the virtual machine and using the virtual network interface, a data packet, the data packet being sent through the first endpoint to the second endpoint.

9. The cloud-computing edge device of claim 8 , wherein the virtual machine comprises a first virtual machine, wherein the virtual network interface comprises a first virtual network interface associated with a first subnet of the private virtual network, and storing additional instructions that, when executed with the one or more processors, cause the cloud-computing edge device to further:

execute a second virtual machine;

generate a second virtual network interface having a third endpoint and a fourth endpoint, the second virtual network interface being hosted within the private virtual network data plane and associated with a first subnet of the private virtual network; and

establish an additional communication connection between the second virtual machine and the orchestration module of the private virtual network data plane based at least in part on associating the third endpoint with the second virtual machine and associating the fourth endpoint with the orchestration module.

10. The cloud-computing edge device of claim 9 , wherein the data packet is sent from the first virtual machine to the second virtual machine using the first virtual network interface and the second virtual network interface.

11. The cloud-computing edge device of claim 8 , wherein the private virtual network data plane comprises a gateway module, and storing additional instructions that, when executed with the one or more processors, cause the cloud-computing edge device to further forward, by the private virtual network data plane using the gateway module, the data packet to an external device, the cloud-computing edge device communicatively connected to the external device through a public network.

12. The cloud-computing edge device of claim 8 , wherein the cloud-computing edge device is one of a plurality of cloud-computing edge devices, and storing additional instructions that, when executed with the one or more processors, cause the cloud-computing edge device to further forward, by the orchestration module of the private virtual network data plane, the data packet to an additional cloud-computing edge device of the plurality of cloud-computing edge devices, the cloud-computing edge device communicatively connected to the additional cloud-computing edge device through a substrate network.

13. The cloud-computing edge device of claim 8 , storing additional instructions that, when executed with the one or more processors, cause the cloud-computing edge device to further:

execute a command proxy module configured to modify a first networking namespace of a host operating system executing on the cloud-computing edge device;

receive, at the private virtual network data plane, a request to create the virtual network interface, the request comprising a networking command;

send, by the private virtual network data plane to the command proxy module, the networking command; and

generate the virtual network interface within the first networking namespace by executing the networking command.

14. The cloud-computing edge device of claim 13 , wherein the first endpoint is associated with the first networking namespace of the host operating system and the second endpoint is associated with a second networking namespace of the orchestration module.

15. A computer-readable storage medium comprising executable instructions that, when executed by one or more processors of a cloud-computing edge device, cause the cloud-computing edge device to:

implement a private virtual network, the private virtual network comprising a private virtual network data plane hosted within an execution environment of the cloud-computing edge device;

execute a virtual machine;

generate a virtual network interface having a first endpoint and a second endpoint, the virtual network interface being hosted within the private virtual network data plane;

establish a communication connection between the virtual machine and a component of the private virtual network data plane based at least in part on associating the first endpoint of the virtual network interface with the virtual machine and associating the second endpoint of the virtual network interface with an orchestration module of the private virtual network data plane; and

send, by the virtual machine and using the virtual network interface, a data packet, the data packet being sent through the first endpoint to the second endpoint.

16. The computer-readable storage medium of claim 15 , wherein the virtual machine comprises a first virtual machine, wherein the virtual network interface comprises a first virtual network interface associated with a first subnet of the private virtual network, and comprising additional instructions that, when executed by the one or more processors, cause the cloud-computing edge device to further:

execute a second virtual machine;

generate a second virtual network interface having a third endpoint and a fourth endpoint, the second virtual network interface being hosted within the private virtual network data plane and associated with a first subnet of the private virtual network; and

establish an additional communication connection between the second virtual machine and the orchestration module of the private virtual network data plane based at least in part on associating the third endpoint with the second virtual machine and associating the fourth endpoint with the orchestration module.

17. The computer-readable storage medium of claim 16 , wherein the data packet is sent from the first virtual machine to the second virtual machine using the first virtual network interface and the second virtual network interface.

18. The computer-readable storage medium of claim 15 , wherein the private virtual network data plane comprises a gateway module, and comprising additional instructions that, when executed by the one or more processors, cause the cloud-computing edge device to further forward, by the private virtual network data plane using the gateway module, the data packet to an external device, the cloud-computing edge device communicatively connected to the external device through a public network.

19. The computer-readable storage medium of claim 15 , wherein the cloud-computing edge device is one of a plurality of cloud-computing edge devices, and comprising additional instructions that, when executed with the one or more processors, cause the cloud-computing edge device to further forward, by the orchestration module of the private virtual network data plane, the data packet to an additional cloud-computing edge device of the plurality of cloud-computing edge devices, the cloud-computing edge device communicatively connected to the additional cloud-computing edge device through a substrate network.

20. The computer-readable storage medium of claim 15 , comprising additional instructions that, when executed by the one or more processors, cause the cloud-computing edge device to further:

execute a command proxy module configured to modify a first networking namespace of a host operating system executing on the cloud-computing edge device;

receive, at the private virtual network data plane, a request to create the virtual network interface, the request comprising a networking command;

send, by the private virtual network data plane to the command proxy module, the networking command; and

generate the virtual network interface within the first networking namespace by executing the networking command.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2022
From: ZAICENKO, KIRILS; BECKER, DAVID DALE; BATURIN, MAXIM; DUL, TADEUSZ JAKUB
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 058618/0133 →
Continuity (2)
Provisional Application 63173244 · Apr 9, 2021
Related Publication 20220329457A1 · Oct 13, 2022
Cited By (1)
US 12,650,886