IP Library › Granted Patent US 11,895,030
Granted Patent B2
US 11,895,030 · App. 17/352,609 · Granted Feb 6, 2024

Scalable overlay multicast routing

Inventors: Subin Cyriac Mathew (San Jose, CA); Sami Boutros (Union City, CA); Stephen Tan (Palo Alto, CA); Senthilkumar Karunakaran (Santa Clara, CA); Chidambareswaran Raman (Campbell, CA)
Assignee: VMware, Inc.
H04L47/125H04L12/185H04L12/1886H04L12/4633H04L12/66H04L45/20H04L47/17
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,895,030
App. No.
17/352,609
Granted
Feb 6, 2024
Kind
B2
Abstract

The disclosure provides an approach for reducing congestion within a network, the network comprising a plurality of subnets, the plurality of subnets comprising a plurality of host machines and a plurality of virtual computing instances (VCIs) running on the plurality of host machines. Embodiments include receiving, by an edge services gateway (ESG) of a first subnet of the plurality of subnets, membership information for a group identifying a subset of the plurality of host machines. Embodiments include receiving a multicast packet directed to the group and selecting from the plurality of host machines, a replicator host machine for the multicast packet. Embodiments include sending, to the replicator host machine, the multicast packet along with metadata indicating that the replicator host machine is to replicate the multicast packet to remaining host machines of the subset of the plurality of host machines identified in the membership information for the group.

Claims (40)

1. A method of reducing congestion within a network, the network comprising a plurality of host machines and a plurality of virtual computing instances (VCIs) running on the plurality of host machines, the method comprising:

receiving, by an edge services gateway, membership information for a group, wherein the membership information identifies a subset of the plurality of host machines;

receiving, by the edge services gateway, from an external network that is outside of the network, a multicast packet directed to the group;

in response to the receiving of the multicast packet, selecting, by the edge services gateway, from the subset of the plurality of host machines identified in the membership information for the group, a single replicator host machine for the multicast packet; and

sending, by the edge services gateway, to the single replicator host machine via unicast, the multicast packet along with metadata indicating that the single replicator host machine is to replicate the multicast packet to remaining host machines of the subset of the plurality of host machines identified in the membership information for the group.

2. The method of claim 1 , wherein selecting, by the edge services gateway, the single replicator host machine for the multicast packet is based on one or more criteria selected from:

a number of hops between the edge services gateway and the single replicator host machine; or

a current load of the single replicator host machine.

3. The method of claim 2 , wherein the one or more criteria are associated with respective weights, and wherein the single replicator host machine is selected based further on the respective weights.

4. The method of claim 2 , wherein the current load of the single replicator host machine is received by the edge services gateway from a controller and compared to current loads of other host machines of the plurality of host machines.

5. The method of claim 1 , wherein the metadata is an encapsulation header that is added to the multicast packet by the edge services gateway, and wherein the encapsulation header further includes an address of the single replicator host machine.

6. The method of claim 1 , wherein the edge services gateway does not send the multicast packet to any other host machine of the plurality of host machines other than the single replicator host machine.

7. The method of claim 1 , wherein the network comprises an overlay domain, and wherein the edge services gateway receives the multicast packet from a network outside of the overlay domain.

8. A computer system, comprising:

one or more processors; and

a non-transitory computer readable medium comprising instruction that, when executed by the one or more processors, cause the computer system to perform a method of reducing congestion within a network, the network comprising a plurality of host machines and a plurality of virtual computing instances (VCIs) running on the plurality of host machines, the method comprising:

receiving, by an edge services gateway, membership information for a group, wherein the membership information identifies a subset of the plurality of host machines;

receiving, by the edge services gateway, from an external network that is outside of the network, a multicast packet directed to the group;

in response to the receiving of the multicast packet, selecting, by the edge services gateway, from the subset of the plurality of host machines identified in the membership information for the group, a single replicator host machine for the multicast packet; and

sending, by the edge services gateway, to the single replicator host machine via unicast, the multicast packet along with metadata indicating that the single replicator host machine is to replicate the multicast packet to remaining host machines of the subset of the plurality of host machines identified in the membership information for the group.

9. The computer system of claim 8 , wherein selecting, by the edge services gateway, the single replicator host machine for the multicast packet is based on one or more criteria selected from:

a number of hops between the edge services gateway and the single replicator host machine; or

a current load of the single replicator host machine.

10. The computer system of claim 9 , wherein the one or more criteria are associated with respective weights, and wherein the single replicator host machine is selected based further on the respective weights.

11. The computer system of claim 9 , wherein the current load of the single replicator host machine is received by the edge services gateway from a controller and compared to current loads of other host machines of the plurality of host machines.

12. The computer system of claim 8 , wherein the metadata is an encapsulation header that is added to the multicast packet by the edge services gateway, and wherein the encapsulation header further includes an address of the single replicator host machine.

13. The computer system of claim 8 , wherein the edge services gateway does not send the multicast packet to any other host machine of the plurality of host machines other than the single replicator host machine.

14. The computer system of claim 8 , wherein the network comprises an overlay domain, and wherein the edge services gateway receives the multicast packet from a network outside of the overlay domain.

15. A non-transitory computer readable medium comprising instructions that, when executed by a processor of a computer system, cause the computer system to perform a method of reducing congestion within a network, the network comprising a plurality of host machines and a plurality of virtual computing instances (VCIs) running on the plurality of host machines, the method comprising:

receiving, by an edge services gateway, membership information for a group, wherein the membership information identifies a subset of the plurality of host machines;

receiving, by the edge services gateway, from an external network that is outside of the network, a multicast packet directed to the group;

in response to the receiving of the multicast packet, selecting, by the edge services gateway, from the subset of the plurality of host machines identified in the membership information for the group, a single replicator host machine for the multicast packet; and

sending, by the edge services gateway, to the single replicator host machine via unicast, the multicast packet along with metadata indicating that the single replicator host machine is to replicate the multicast packet to remaining host machines of the subset of the plurality of host machines identified in the membership information for the group.

16. The non-transitory computer readable medium of claim 15 , wherein selecting, by the edge services gateway, the single replicator host machine for the multicast packet is based on one or more criteria selected from:

a number of hops between the edge services gateway and the single replicator host machine; or

a current load of the single replicator host machine.

17. The non-transitory computer readable medium of claim 16 , wherein the one or more criteria are associated with respective weights, and wherein the single replicator host machine is selected based further on the respective weights.

18. The non-transitory computer readable medium of claim 16 , wherein the current load of the single replicator host machine is received by the edge services gateway from a controller and compared to current loads of other host machines of the plurality of host machines.

19. The non-transitory computer readable medium of claim 15 , wherein the metadata is an encapsulation header that is added to the multicast packet by the edge services gateway, and wherein the encapsulation header further includes an address of the single replicator host machine.

20. The non-transitory computer readable medium of claim 15 , wherein the edge services gateway does not send the multicast packet to any other host machine of the plurality of host machines other than the single replicator host machine.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
Continuity (2)
Continuation 16662400 · Oct 24, 2019
Related Publication 20210314263A1 · Oct 7, 2021