IP Library Granted Patent US 12,316,543
Granted Patent B2
US 12,316,543 · App. 17/959,989 · Granted May 27, 2025

Handling virtual machine migration in a computing system with multi-site stretched gateways

Inventors: Abhishek Goliya (Pune, IN); Santosh Pallagatti Kotrabasappa (Bangalore, IN)
Assignee: VMware LLC
H04L45/76H04L45/02
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,316,543
App. No.
17/959,989
Granted
May 27, 2025
Kind
B2
Abstract

An example method of handling traffic for an existing connection of a virtual machine (VM) migrated from a source site to a destination site includes: receiving, at an edge server of the destination site, the traffic, the traffic being associated with a network flow; determining, by the edge server of the destination site, that a stateful service of the edge server does not have state for the network flow; sending, by the edge server of the destination site, a threshold number of packets of the traffic to a plurality of sites; receiving, at the edge server of the destination site, an acknowledgement from the source site that the source site has the state for the network flow; and creating, by the edge server of the destination site, a flow mapping to send the traffic associated with the network flow to the source site.

Claims (45)

1. A method of handling traffic for an existing connection of a virtual machine (VM) migrated from a source site to a destination site, the method comprising:

receiving, at an edge server of the destination site, the traffic, the traffic being associated with a network flow;

determining, by the edge server of the destination site, that a stateful service of the edge server does not have state for the network flow;

sending, by the edge server of the destination site, a threshold number of packets of the traffic to a plurality of sites;

receiving, at the edge server of the destination site, an acknowledgement from the source site that the source site has the state for the network flow; and

creating, by the edge server of the destination site, a flow mapping to send the traffic associated with the network flow to the source site.

2. The method of claim 1 , wherein the edge server is a first edge server, and wherein the edge server sends the threshold number of packets to a second edge server in the source site.

3. The method of claim 1 , wherein the traffic comprises ingress traffic destined for the VM.

4. The method of claim 1 , wherein the traffic comprises egress traffic originated from the VM.

5. The method of claim 1 , further comprising:

advertising, by the edge server of the destination site, a specific route to the VM in the destination site; and

withdrawing, by an edge server of the source site, a specific route to the VM in the source site.

6. The method of claim 1 , wherein sites in the plurality of sites other than the source site indicate to the edge server of the destination site absence of the state of the network flow.

7. The method of claim 1 , wherein the edge server is a first edge server having a first gateway, wherein the source site includes a second edge server having a second gateway, wherein the first gateway and the second gateway are part of a stretched router span, and wherein the first edge server punts the threshold number of packets over the stretched router span.

8. A non-transitory computer readable medium comprising instructions to be executed in a computing device to cause the computing device to carry out a method of a method of handling traffic for an existing connection of a virtual machine (VM) migrated from a source site to a destination site, the method comprising:

receiving, at an edge server of the destination site, the traffic, the traffic being associated with a network flow;

determining, by the edge server of the destination site, that a stateful service of the edge server does not have state for the network flow;

sending, by the edge server of the destination site, a threshold number of packets of the traffic to a plurality of sites;

receiving, at the edge server of the destination site, an acknowledgement from the source site that the source site has the state for the network flow; and

creating, by the edge server of the destination site, a flow mapping to send the traffic associated with the network flow to the source site.

9. The non-transitory computer readable medium of claim 8 , wherein the edge server is a first edge server, and wherein the edge server sends the threshold number of packets to a second edge server in the source site.

10. The non-transitory computer readable medium of claim 8 , wherein the traffic comprises ingress traffic destined for the VM.

11. The non-transitory computer readable medium of claim 8 , wherein the traffic comprises egress traffic originated from the VM.

12. The non-transitory computer readable medium of claim 8 , further comprising:

advertising, by the edge server of the destination site, a specific route to the VM in the destination site; and

withdrawing, by an edge server of the source site, a specific route to the VM in the source site.

13. The non-transitory computer readable medium of claim 8 , wherein sites in the plurality of sites other than the source site indicate to the edge server of the destination site absence of the state of the network flow.

14. The non-transitory computer readable medium of claim 8 , wherein the edge server is a first edge server having a first gateway, wherein the source site includes a second edge server having a second gateway, wherein the first gateway and the second gateway are part of a stretched router span, and wherein the first edge server punts the threshold number of packets over the stretched router span.

15. A method of handling traffic for an existing connection and a new connection to a virtual machine (VM) migrated from a source site to a destination site, the method comprising:

sending, by a first edge server in the source site to a first edge router for the source site, route updates with an indication that the first edge server is ready to attract only the existing connection and not the new connection to the VM;

sending, by the first edge router to an upstream router, route updates with an indication that the first edge router is ready to attract only the existing connection and not the new connection to the VM;

sending, by a second edge server in the destination site to a second edge router for the destination site, route updates with an indicate that the second edge server is ready to attract only the new connection and not the existing connection; and

sending, by the second edge router to the upstream router, route updates with an indicate that the second edge router is ready to attract only the new connection and not the existing connection to the VM.

16. The method of claim 15 , wherein each of the first and the second edge routers is configured to track flow context, wherein the first edge router stores the route updates from the first edge server in the flow context thereof, and wherein the second edge router stores the route updates from the second edge server in the flow context thereof.

17. The method of claim 16 , wherein the upstream router is configured to track flow context, and wherein the upstream router stores the route updates from each of the first edge router and the second edge router in the flow context thereof.

18. The method of claim 15 , wherein the first edge server includes a first gateway, wherein the second edge server includes a second gateway, and wherein the first gateway and the second gateway are part of a stretched router span.

19. A computing system, comprising:

a first data center having a first edge server;

a second data center having a second edge server, a first gateway of the first edge server and a second gateway of the second edge server being part of a stretched router span, a virtual machine (VM) executing in the second data center having been migrated from the first data center, the second edge server configured to handle traffic for an existing connection of the VM by:

receiving the traffic, the traffic being associated with a network flow;

determining that a stateful service of the edge server does not have state for the network flow;

sending a threshold number of packets of the traffic to a plurality of sites;

receiving an acknowledgement from the source site that the source site has the state for the network flow; and

creating a flow mapping to send the traffic associated with the network flow to the source site.

20. The computing system of claim 19 , wherein sites in the plurality of sites other than the source site indicate to the edge server of the destination site absence of the state of the network flow.

Assignments (2)
CHANGE OF NAME Recorded Apr 25, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067239/0402 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2022
From: GOLIYA, ABHISHEK; KOTRABASAPPA, SANTOSH PALLAGATTI
To: VMWARE, INC.
Reel/Frame 061309/0581 →