IP Library Granted Patent US 10,693,775
Granted Patent B2
US 10,693,775 · App. 15/812,897 · Granted Jun 23, 2020

Method and system for providing automatic router assignment in a virtual environment

Inventors: Kapil Bajaj (Fremont, CA); Shiva Shenoy (Los Altos, CA); Apurva Mehta (Cupertino, GA)
Assignee: Versa Networks, Inc.
H04L45/586H04L12/66H04L41/0806H04L61/103H04L41/0668H04L61/6022
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 10,693,775
App. No.
15/812,897
Granted
Jun 23, 2020
Kind
B2
Abstract

In an embodiment, a method for providing automatic router assignment in a virtual environment involves receiving a gratuitous ARP packet and setting a default gateway MAC address to a sender hardware address of the received gratuitous ARP packet, wherein the sender hardware address of the received gratuitous ARP packet is a MAC address of a master virtual router elected from a plurality of virtual routers, wherein a virtual router in the plurality of virtual routers is configured to elect a master virtual router by receiving at least one priority value advertised by another virtual router in the plurality of virtual routers, comparing the at least one received priority value to a priority value local to the virtual router to determine which priority value is the highest, and electing the virtual router having the highest priority value as the master virtual router.

Claims (40)

1. A method for providing automatic virtual router assignment in a virtual environment managed by a hypervisor, the method comprising:

a plurality of virtual hosts and a plurality of virtual routers are configured to run on one or more virtual machines,

wherein the plurality of virtual routers comprises a master virtual router and at least one backup virtual router, each of the plurality of virtual routers has a MAC address assigned by the hypervisor, and wherein one of the plurality of virtual routers is elected as the master virtual router, and the master virtual router is a default gateway to receive traffic from the plurality of virtual hosts, and each virtual host includes a default gateway MAC address in an ARP cache;

receiving, by the plurality of virtual hosts, a gratuitous ARP packet from the master virtual router, wherein a sender hardware address of the received gratuitous ARP packet is the MAC address of the master virtual router;

setting the default gateway MAC address to the sender hardware address of the received gratuitous ARP packet in the ARP cache;

wherein each of the plurality of virtual routers receives an advertisement comprising a priority value,

wherein the at least one backup virtual router is configured to receive a priority value advertised by the master virtual router and to transition to a master virtual router state if the priority value advertised by the master virtual router is not greater than a priority value local to the at least one backup virtual router, and

wherein the master virtual router is configured to receive a priority value advertised by the at least one backup virtual router and to transition to a backup virtual router state if the priority value advertised by the at least one backup virtual router is greater than a priority value local to the master virtual router.

2. The method of claim 1 further comprising, if a virtual router is in the master virtual router state, advertising the priority value local of the virtual router to other virtual routers in the plurality of virtual routers.

3. The method of claim 1 , wherein the advertisement is received in a control packet on a predetermined time interval.

4. The method of claim 1 , wherein the method is repeated each time the master virtual router sends a new gratuitous ARP packet.

5. The method of claim 1 , wherein the master virtual router is configured to send a new gratuitous ARP packet periodically.

6. The method of claim 1 , wherein a plurality of priority values advertised by the plurality of virtual routers are advertised in control packets that further includes the MAC address of the virtual router advertising the priority value.

7. A system for providing automatic virtual router assignment in a virtual environment managed by a hypervisor, the system comprising:

a plurality of virtual hosts and a plurality of virtual routers configured to run on one or more virtual machines,

wherein the plurality of virtual routers comprises a master virtual router and at least one backup virtual router, each of the plurality of virtual routers has a MAC address assigned by the hypervisor, and wherein one of the plurality of virtual routers is elected as the master virtual router, and the master virtual router is a default gateway to receive traffic from the plurality of virtual hosts, and each virtual host includes a default gateway MAC address in an ARP cache;

wherein each of the plurality of virtual hosts is configured to receive a gratuitous ARP packet from the master virtual router, wherein a sender hardware address of the received gratuitous ARP packet is the MAC address of the master virtual router;

wherein each of the plurality of virtual hosts is configured to set the default gateway MAC address to the sender hardware address of the received gratuitous ARP packet in the ARP cache;

wherein each of the plurality of virtual routers receives an advertisement comprising a priority value,

wherein the at least one backup virtual router is configured to receive a priority value advertised by the master virtual router and to transition to a master virtual router state if the priority value advertised by the master virtual router is not greater than a priority value local to the at least one backup virtual router, and

wherein the master virtual router is configured to receive a priority value advertised by the at least one backup virtual router and to transition to a backup virtual router state if the priority value advertised by the at least one backup virtual router is greater than a priority value local to the master virtual router.

8. The system of claim 7 , wherein the master virtual router is further configured to advertise the priority value local to the master virtual router to other virtual routers in the plurality of virtual routers.

9. The system of claim 7 , wherein the advertisement is received in a control packet on a predetermined time interval.

10. The system of claim 7 , wherein the master virtual router is configured to send a new gratuitous ARP packet periodically.

11. The system of claim 7 , wherein the priority value advertised by another virtual router in the plurality of virtual routers is advertised in a control packet that further includes the MAC address of the virtual router advertising the priority value.

12. The system of claim 7 , wherein a plurality of priority values advertised by the plurality of virtual routers are advertised in control packets that further includes the MAC address of the virtual router advertising the priority value.

13. A non-transitory computer-readable storage medium containing program instructions for providing automatic router assignment in a virtual environment managed by a hypervisor, wherein execution of the program instructions by one or more processors of a computer system causes the one or more processors to perform steps comprising:

a plurality of virtual hosts and a plurality of virtual routers are configured to run on one or more virtual machines,

wherein the plurality of virtual routers comprises a master virtual router and at least one backup virtual router, each of the plurality of virtual routers has a MAC address assigned by the hypervisor, and wherein one of the plurality of virtual routers is elected as the master virtual router, and the master virtual router is a default gateway to receive traffic from the plurality of virtual hosts, and each virtual host includes a default gateway MAC address in an ARP cache;

receiving, by the plurality of virtual hosts, a gratuitous ARP packet from the master virtual router, wherein a sender hardware address of the received gratuitous ARP packet is the MAC address of the master virtual router;

setting the default gateway MAC address to the sender hardware address of the received gratuitous ARP packet in the ARP cache;

wherein each of the plurality of virtual routers receives an advertisement comprising a priority value,

wherein the at least one backup virtual router is configured to receive a priority value advertised by the master virtual router and to transition to a master virtual router state if the priority value advertised by the master virtual router is not greater than a priority value local to the at least one backup virtual router, and

wherein the master virtual router is configured to receive a priority value advertised by the at least one backup virtual router and to transition to a backup virtual router state if the priority value advertised by the at least one backup virtual router is greater than a priority value local to the master virtual router.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the steps further comprise, if a virtual router is in the master state, advertising the priority value local to the virtual router to other virtual routers in the plurality of virtual routers.

15. The non-transitory computer-readable storage medium of claim 13 , wherein the advertisement is received in a control packet on a predetermined time interval.

16. The non-transitory computer-readable storage medium of claim 13 , wherein the plurality of virtual hosts are configured to set the default gateway MAC address to the sender hardware address of the received gratuitous ARP packet in the ARP cache each time the master virtual router sends a new gratuitous ARP packet.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the master virtual router is configured to send the new gratuitous ARP packet periodically.

18. The non-transitory computer-readable storage medium of claim 13 , wherein the priority value advertised by another virtual router in the plurality of virtual routers is advertised in a control packet that further includes the MAC address of the virtual router advertising the priority value.

19. The non-transitory computer-readable storage medium of claim 13 , wherein a plurality of priority values advertised by the plurality of virtual routers are advertised in control packets that further includes the MAC address of the virtual router advertising the priority value.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jan 27, 2025
From: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
To: VERSA NETWORKS, INC.
Reel/Frame 070010/0374 →
RELEASE OF SECURITY INTEREST Recorded Jan 27, 2025
From: SILICON VALLEY BANK
To: VERSA NETWORKS, INC.
Reel/Frame 070010/0384 →
SECURITY INTEREST Recorded Oct 20, 2023
From: VERSA NETWORKS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 065289/0303 →
SECURITY INTEREST Recorded Mar 29, 2022
From: VERSA NETWORKS, INC.
To: SILICON VALLEY BANK
Reel/Frame 059423/0004 →
SECURITY INTEREST Recorded Mar 29, 2022
From: VERSA NETWORKS, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 059423/0028 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2017
From: BAJAJ, KAPIL; SHENOY, SHIVA; MEHTA, APURVA
To: VERSA NETWORKS, INC.
Reel/Frame 044125/0324 →
Continuity (1)
Related Publication 20190149463A1 · May 16, 2019