Abstract:
A bypass computer network allows data communications between a client computing device and a remote content source to be selectively routed around a portion of the public Internet (or other computer network(s)) via the bypass network without requiring a physical connection between the bypass network and either the client computing device or the content source.

Description:
CROSS REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims the benefit of U.S. Provisional Application No. 60/991,295 filed Nov. 30, 2007, the entire disclosure of which is incorporated herein by reference. 
     
    
     DESCRIPTION 
       [0002]    In some embodiments, the bypass network is a private Internet Protocol (IP) communications network comprising nodes in two or more geographic locations (e.g., in different cities or States) interconnected by private IP communication links. Each node preferably includes an ingress gateway (for entering the bypass network) and an egress gateway (for exiting the bypass network) that are connected to the private IP communications network and also connected to other public or private network(s), such as the public Internet. Clients of the bypass network connect to (and receive data back from) the ingress gateways using a tunneling protocol (to establish a virtual connection through a physical connection) such as Internet protocol 4 (also referred to as “ipencap” or “IP within IP tunneling”) or other suitable means. These connections allow client data to transit the bypass network. Egress gateways are used when the destination end of the IP communication conversation (e.g., a computer server) is not a client of the bypass network. In that event, traffic is directed from the bypass network to another computer network, such as the public Internet, through the egress gateways (and preferably through the egress gateway positioned closest to the content server) via peering connections between the egress gateways and network routers. The egress gateways may use Network Address Translation (NAT) to provide a return path from the non-bypass computer network (e.g., the Internet) back to the same egress gateway and subsequently through the bypass network back to the originating client. The egress gateways may also use state-full packet inspection to ensure that only outgoing IP conversations are taking place, i.e., that the packets received back by the egress gateway are in response to conversations which originated on the bypass network. 
         [0003]    Each client computing device has a physical connection to a data network (e.g., to a network access provider, such as an Internet Service Provider (ISP)). The ingress gateways can work cooperatively with software installed on the client computing devices. The software may be a simple tunneling program to direct traffic to the ingress gateway, or may be an intelligent dynamic or non-dynamic routing program that decides whether and when to use the bypass network for accessing a remote content server (e.g., based on a user selection, user-specified rules, the type of data to be transmitted, the intended data destination, latency to destination, etc.). 
         [0004]    The bypass network can have its own physical infrastructure, or it can be a virtual private network operating on the physical infrastructure of one or more other networks, such as the Internet, or it can be a combined physical and virtual network. 
         [0005]      FIG. 1  illustrates one example of a client computing device using a physical connection to a network access provider (e.g., an ISP) to establish a virtual connection to a bypass network. As shown in  FIG. 1 , the bypass network can receive, via the virtual connection, a data request seeking content from a server residing on another computer network, which may be the Internet. The bypass network routes the data request to the server through a portion of the bypass network and through a portion of the other network (as indicated by the gray line in  FIG. 1 ). The same data path may be and preferably is used for providing the requested data from the server back to the client. While the bypass network is illustrated as a physically distinct network in  FIG. 1 , it should be understood that the bypass network may be, at least in part, a virtual network operating on the physical infrastructure of one or more other networks, such as the other computer network shown in  FIG. 1 . 
         [0006]    By using the bypass network to route around a portion of the Internet (or other computer network(s)), a client can minimize the data transit path through the Internet (or other computer network(s)) for improved performance (e.g., reduced latency, jitter, etc.) or a more reliable or consistent data communication experience (e.g., more consistent ping times, reduced number of hops between the client and a content server, etc.). 
     
    
       [0007]    The teachings of this disclosure can be applied, for example, to on-line video gaming applications in which clients communicate with remote video game servers (e.g., in different cities and/or states than the client) over a portion of the Internet. It should be understood, however, that the teachings of this disclosure are not so limited and can be applied to a wide variety of data communication applications. 
         [0008]    The above description should be construed as exemplary only and does not describe every possible instance of the system. Numerous alternatives could be implemented, using combinations of current or future technologies, which would still fall within the scope of the claims. As just one example, the bypass network may be a public (rather than private) computer network.