US 12,147,318 B2
Techniques for replicating state information for high availability
Jagwinder Singh Brar, Bellevue, WA (US); Eugene Nalimov, Redwood Shores, CA (US); Steven Chervets, Seattle, WA (US); Abhay Patil, Redwood Shores, CA (US); and Michal Aleksander Karczmarek, Newton, MA (US)
Assigned to ORACLE INTERNATIONAL CORPORATION, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Dec. 14, 2021, as Appl. No. 17/644,287.
Claims priority of provisional application 63/132,344, filed on Dec. 30, 2020.
Prior Publication US 2022/0206908 A1, Jun. 30, 2022
Int. Cl. G06F 11/20 (2006.01); G06F 9/455 (2018.01); G06F 11/07 (2006.01)
CPC G06F 11/2025 (2013.01) [G06F 9/45558 (2013.01); G06F 11/0712 (2013.01); G06F 11/2005 (2013.01); G06F 2009/45595 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
executing, by a first network virtualization device (NVD) of a physical network, a set of virtual network interface cards (VNICs), the set of VNICs including a first VNIC performing forwarding of packets for a set of one or more packet flows from a compute instance hosted on a physical host machine connectively coupled to the first NVD, wherein:
the physical network hosts a virtual network, the physical network comprising the physical host machine, the first NVD, and a second NVD, and wherein the first NVD and the second NVD are different physical devices with separate processors from network interface cards of the physical host machine, and
the virtual network comprises one or more compute instances including the compute instance, and the set of VNICs;
storing, by the first NVD, a first VNIC-related information, wherein the first VNIC-related information comprises information identifying a first set of one or more packet flows and state information for the first set of one or more packet flows;
determining, by the first NVD, that the state information for the first VNIC is to be synchronized with the second NVD connectively coupled with the first NVD; and
responsive to the determining:
identifying, by the first NVD, the second NVD wherein the second NVD is a first backup for the first VNIC; and
communicating, by the first NVD to the second NVD, a portion of the state information stored by the first NVD for the first VNIC.