Virtual distributed bridging
First Claim
1. A non-transitory machine readable medium storing a program which, when executed by a set of processing units of a computing device conditionally bridges packets in a network, the program comprising sets of instructions for:
- receiving a plurality of sets of addresses from a plurality of computing devices, each set of addresses received from a computing device corresponding to a set of virtual machines (VMs) that execute on the computing device from which the set of addresses is received, the plurality of sets of addresses forming an excluded set of addresses that are to be bridged by local bridges on the plurality of computing devices from which the plurality of sets of addresses is received;
receiving a packet having a source address in a first segment of the network and a destination address in a second segment of the network; and
bridging the packet from the first segment to the second segment when the source address and the destination address of the packet are not one of the addresses included in the received plurality of sets of addresses that form the excluded set of addresses so as to avoid bridging a packet which is to be bridged by one of the local bridges on the plurality of computing devices.
1 Assignment
0 Petitions
Accused Products
Abstract
Virtualization software that includes a VDRB (virtual distributed router/bridge) module for performing L3 routing and/or bridging operations is provided. At least some of the VDRBs are configured as VDBs (virtual distributed bridge) for performing bridging operations between different network segments in a distributed manner. The bridging tasks of a network are partitioned among several VDBs of the network based on MAC addresses. MAC addresses of VMs or other types of network nodes belonging to an overlay logical network are partitioned into several shards, each shard of MAC addresses assigned to a VDB in the network. Each VDB assigned a shard of MAC addresses performs bridging when it receives a packet bearing a MAC address belonging to its assigned shard. A VDB does not perform bridging on packets that do not have MAC address that falls within the VDB'"'"'s shard of MAC addresses.
-
Citations
15 Claims
-
1. A non-transitory machine readable medium storing a program which, when executed by a set of processing units of a computing device conditionally bridges packets in a network, the program comprising sets of instructions for:
-
receiving a plurality of sets of addresses from a plurality of computing devices, each set of addresses received from a computing device corresponding to a set of virtual machines (VMs) that execute on the computing device from which the set of addresses is received, the plurality of sets of addresses forming an excluded set of addresses that are to be bridged by local bridges on the plurality of computing devices from which the plurality of sets of addresses is received; receiving a packet having a source address in a first segment of the network and a destination address in a second segment of the network; and bridging the packet from the first segment to the second segment when the source address and the destination address of the packet are not one of the addresses included in the received plurality of sets of addresses that form the excluded set of addresses so as to avoid bridging a packet which is to be bridged by one of the local bridges on the plurality of computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
a first computing device for hosting a first set of virtual machines (VMs) and a first local bridge for bridging packets that are destined or sourced by a first subset of the first set of VMs in a first network segment, wherein the first computing device stores addresses associated with the first subset of VMs in a first include list of addresses to bridge at the first local bridge; a second computing device for hosting a second set of VMs and a second local bridge for bridging packets that are destined or sourced by a second subset of the second set of VMs in the first network segment, wherein the second computing device stores addresses associated with the second subset of VMs in a second include list of addresses to bridge at the second local bridge; and a third computing device hosting a default bridge for bridging packets that have source addresses or destination addresses that are (i) in the first network segment and (ii) not in the first or second include lists of addresses and thereby are not bridged by the first or second local bridge. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification