Patent ID: 8995301
Filing Date: 2015-03-31
Classification: H04L

Abstract:
1. A computer-implemented method comprising: receiving, by one or more configured hardware computing systems of a configurable network service that provides virtual computer networks to clients, configuration information indicating a network topology for a first virtual computer network for a first client, the network topology indicating multiple computing nodes of the first virtual computer network that are separated into two or more groups and further specifying a virtual router device of the first virtual computer network that interconnects the two or more groups; and providing, by the one or more configured hardware computing systems, the first virtual computer network to the first client in accordance with the configuration information by emulating functionality of the specified virtual router device for communications between the two or more groups without physically providing the specified virtual router device, the providing of the first virtual computer network including: intercepting one or more routing communications that are each sent using a defined routing protocol to the specified virtual router device despite the specified virtual router device not being physically provided, the intercepted one or more routing communications including network routing information for the first virtual computer network; determining, by the one or more configured hardware computing systems and during the providing of the first virtual computer network, one or more costs specified by the first client for use of multiple alternative intermediate destinations via which communications for the first virtual computer network can be directed to an indicated final destination, the determining of the one or more costs including analyzing the included network routing information in the intercepted one or more routing communications to identify the determined one or more costs; selecting, based at least in part on the determined one or more costs specified by the first client, one of the alternative intermediate destinations as a preferred intermediate destination for the one or more indicated final destinations; and after the selecting of the one alternative intermediate destination, forwarding one or more additional communications directed to the indicated final destination to the selected one alternative intermediate destination.