One or more computer-readable media having computer-executable instructions embodied thereon that, when executed, perform a method for managing distribution of data packets between a plurality of members of a virtual network,V-net, that are isolated from other machines on a network, the method comprising: providing a first V-net that comprises the plurality of members running, in part, within at least one data center, wherein the plurality of members include an originating network adapter and a destination network adapter; detecting the originating network adapter attempting to transmit one or more data packets to the destination network adapter, wherein the one or more data packets are structured with a header that includes a target identifier of the destination network adapter; performing a resolution process that comprises: (a) accessing a forwarding table that is associated with the first V-net, wherein the forwarding table represents a mapping between the plurality of members of the first V-net and VM switches that are each located on respective nodes within the at least one data center, wherein the mapping is designed according to communication policies that govern data-packet traffic between the plurality of members, and wherein the forwarding table is maintained within a directory server; and (b) discovering routing information associated with a destination-side VM switch, listed in the forwarding table, that corresponds to the target identifier; modifying the one or more data packets to include the routing information; transmitting the one or more modified data packets from a source-side VM switch to the destination-side VM-switch; and sending, by the destination-side switch, the target identifier to the directory server to verify that delivery was approved by the communication policies and corresponds with the forwarding table. providing a first V-net that comprises the plurality of members running, in part, within at least one data center, wherein the plurality of members include an originating network adapter and a destination network adapter; detecting the originating network adapter attempting to transmit one or more data packets to the destination network adapter, wherein the one or more data packets are structured with a header that includes a target identifier of the destination network adapter; performing a resolution process that comprises: (a) accessing a forwarding table that is associated with the first V-net, wherein the forwarding table represents a mapping between the plurality of members of the first V-net and VM switches that are each located on respective nodes within the at least one data center, wherein the mapping is designed according to communication policies that govern data-packet traffic between the plurality of members, and wherein the forwarding table is maintained within a directory server; and (b) discovering routing information associated with a destination-side VM switch, listed in the forwarding table, that corresponds to the target identifier; (a) accessing a forwarding table that is associated with the first V-net, wherein the forwarding table represents a mapping between the plurality of members of the first V-net and VM switches that are each located on respective nodes within the at least one data center, wherein the mapping is designed according to communication policies that govern data-packet traffic between the plurality of members, and wherein the forwarding table is maintained within a directory server; and (b) discovering routing information associated with a destination-side VM switch, listed in the forwarding table, that corresponds to the target identifier; modifying the one or more data packets to include the routing information; transmitting the one or more modified data packets from a source-side VM switch to the destination-side VM-switch; and sending, by the destination-side switch, the target identifier to the directory server to verify that delivery was approved by the communication policies and corresponds with the forwarding table.