IP Library › Granted Patent US 11,463,355
Granted Patent B2
US 11,463,355 · App. 17/376,002 · Granted Oct 4, 2022

Systems and methods for a VLAN switching and routing service

Inventors: Lucas Michael Kreger-Stickles (Seattle, WA); Shane Baker (Kenmore, WA); Bryce Eugene Bockman (Seattle, WA); Peter Croft Jones (Lexington, MA); Jagwinder Singh Brar (Bellevue, WA)
Assignee: Oracle International Corporation
H04L45/586H04L12/4641H04L45/02H04L45/66H04L45/745H04L49/70H04L61/103H04L61/4552H04L63/101H04L63/166H04L67/10H04L2101/622
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,463,355
App. No.
17/376,002
Filed
Jul 14, 2021
Granted
Oct 4, 2022
Kind
B2
Examiner
KIM, HEE SOO
Art Unit
2443
USPC
709/238
Abstract

Systems and methods for a VLAN switching and routing service (VSRS) are disclosed herein. A method can include generating a table for an instance of a VSRS, which VSRS couples a first virtual layer 2 network (VLAN) with a second network. The table can contain information identifying IP addresses, MAC addresses, and virtual interface identifiers for instances within the virtual layer 2 network. The method can include receiving with the VSRS a packet from a first instance designated for delivery to a second instance within the virtual layer 2 network, identifying with the VSRS the second instance within the virtual layer 2 network for delivery of the packet based on information received with the packet and information contained within the table, and delivering the packet to the identified second instance.

Claims (45)

1. A method comprising:

generating a table for an instance of a VLAN switching and routing service (VSRS), the VSRS coupling a first virtual layer 2 network with a second network, wherein the table contains information identifying IP addresses, MAC addresses, and virtual interface identifiers for instances within the first virtual layer 2 network;

receiving with the VSRS a packet from a first instance designated for delivery to a second instance within the first virtual layer 2 network;

identifying with the VSRS the second instance within the first virtual layer 2 network for delivery of the packet based on information received with the packet and information contained within the table; and

delivering the packet to the identified second instance.

2. The method of claim 1 , wherein the first virtual layer 2 network comprises a plurality of instances.

3. The method of claim 2 , wherein the first virtual layer 2 network comprises a plurality of L2 virtual network interface cards (L2 VNICs), and a plurality of switches, wherein each of the plurality of instances is communicatively coupled with a pair comprising a unique L2 virtual network interface card (L2 VNIC) and a unique switch.

4. The method of claim 3 , wherein identifying with the VSRS the second instance within the first virtual layer 2 network for delivery of the packet based on information received with the packet and information contained within the table comprises:

determining with the VSRS that the table does not include mapping information for the second instance;

suspending with the VSRS delivery of the packet;

broadcasting with the VSRS an ARP request to L2 VNICs in the first virtual layer 2 network, the ARP request containing an IP address of the second instance; and

receiving with the VSRS an ARP response from the L2 VNIC of the second instance.

5. The method of claim 4 , further comprising updating the table based on the received ARP response.

6. The method of claim 2 , wherein the first instance is outside of the first virtual layer 2 network and is in the second network.

7. The method of claim 6 , wherein the second network comprises an L3 network.

8. The method of claim 6 , wherein the second network comprises a second virtual layer 2 network.

9. The method of claim 2 , wherein the table is generated based on communications received by the VSRS.

10. The method of claim 9 , further comprising instantiating the VSRS as a service on a plurality of hardware nodes.

11. The method of claim 10 , further comprising distributing the table across the hardware nodes.

12. The method of claim 11 , wherein the table distributed across the hardware nodes is accessible by another VSRS instantiation.

13. The method of claim 1 , wherein the first instance is inside of the first virtual layer 2 network.

14. The method of claim 1 , further comprising: receiving with the VSRS a packet from a third instance inside of the first virtual layer 2 network, wherein the packet is designated for delivery to a fourth instance outside the first virtual layer 2 network and forwarding the packet to the fourth instance.

15. The method of claim 1 , further comprising: receiving with the VSRS a packet from a third instance inside of the first virtual layer 2 network, wherein the packet is designated for delivery to a service used by the third instance inside the first virtual layer 2 network.

16. The method of claim 15 , wherein the service comprises at least one of: DHCP; NTP; and DNS.

17. The method of claim 1 , further comprising: receiving with the VSRS a packet from a third instance inside of the first virtual layer 2 network, wherein the packet is designated for delivery to a fourth instance in a second virtual layer 2 network.

18. The method of claim 1 , further comprising: distributing the tables for the instance of the VSRS with layer 2 and layer 3 network information across a fleet of service nodes to provide a highly reliable, and highly scalable instantiation of a VSRS.

19. The method of claim 1 , further comprising:

receiving with the VSRS a packet from a third instance inside the first virtual layer 2 network; and

learning with the VSRS mapping of the third instance.

20. A system comprising:

a physical network comprising:

at least one processor; and

a network virtualization device,

wherein the at least one processor is configured to:

instantiate an instance of a VLAN switching and routing service (VSRS), the VSRS coupling a first virtual layer 2 network with a second network;

generate a table for the instance of the VSRS, wherein the table contains information identifying IP addresses, MAC addresses, and virtual interface identifiers for instances within the first virtual layer 2 network;

receive with the VSRS a packet from a first instance designated for delivery to a second instance within the first virtual layer 2 network;

identify with the VSRS the second instance within the first virtual layer 2 network for delivery of the packet based on information received with the packet and information contained within the table; and

deliver the packet to the identified second instance.

21. A non-transitory computer-readable storage medium storing a plurality of instructions executable by one or more processors, the plurality of instructions when executed by the one or more processors cause the one or more processors to:

instantiate an instance of a VLAN switching and routing service (VSRS), the VSRS coupling a first virtual layer 2 network with a second network;

generate a table for the instance of the VSRS, wherein the table contains information identifying IP addresses, MAC addresses, and virtual interface identifiers for instances within the first virtual layer 2 network;

receive with the VSRS a packet from a first instance designated for delivery to a second instance within the first virtual layer 2 network;

identify with the VSRS the second instance within the first virtual layer 2 network for delivery of the packet based on information received with the packet and information contained within the table; and

deliver the packet to the identified second instance.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2021
From: KREGER-STICKLES, LUCAS MICHAEL; BAKER, SHANE; BOCKMAN, BRYCE EUGENE; JONES, PETER CROFT; BRAR, JAGWINDER SINGH
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 057646/0382 →
Continuity (3)
Provisional Application 63132377 · Dec 30, 2020
Provisional Application 63051728 · Jul 14, 2020
Related Publication 20220021610A1 · Jan 20, 2022
Cited By (10)
US 12,278,758 US 12,284,113 US 12,289,284 US 12,328,257 US 12,341,689 US 12,341,690 US 12,562,984 US 12,592,877 US 12,706,840 US 12,719,786