Patent ID: 8706865
Filing Date: 2014-04-22
Classification: H04L

Abstract:
1. A network communications method, comprising: receiving, at a first networking device, a request for a network resource from a client device via a first communication path of a wide area network, the first networking device being a load balancer equipped in a first data center and configured to balance a request load which originates from a plurality of client devices including the client device, among a plurality of servers in the first data center, and being connectable to a first server of the plurality of servers in the first data center, the first server configured to serve a first instance of the network resource requested by the client device via the first networking device; at the first networking device, obtaining first diagnostic information indicating an amount of transmission delay or packet loss for communications transmitted through a plurality of intermediate networking devices of at least a portion of the first communication path; obtaining second diagnostic information indicating an amount of transmission delay or packet loss for communications transmitted through a plurality of intermediate networking devices of at least a portion of a second communication path of the wide area network between the client device and a second networking device, the second networking device being a load balancer configured to balance a request load among a second plurality of servers in a second data center, and being connectable to a second server in the second data center, the second server configured to serve a second instance of the network resource via the second networking device, wherein obtaining the second diagnostic information comprises: sending a request for the second diagnostic information from the first networking device to the second networking device; performing an Internet Control Message Protocol trace route of at least the portion of the second communication path between the second networking device and the client device to obtain the second diagnostic information for the second communication path; and receiving from the second networking device, in response to the request for the second diagnostic information, a response that includes the second diagnostic information; and at the first networking device, comparing the first diagnostic information and the second diagnostic information to estimate whether the second communication path will enable faster transmission of communications to the client device than the first communication path, and if so serving data to the client device from the second networking device via the second communication path; wherein serving data to the client device from the second networking device is accomplished at least in part by: updating the network resource at the first networking device to modify a network address of one or more of the objects referenced by the network resource to cause the client device to request, via the second communication path, the one or more objects at the modified network address in response to receiving the network resource from the first networking device via the first communication path, the modified network address corresponding to a network address of the second networking device or the second server connectable to the second networking device; or sending a redirect message from the first networking device to client device redirecting the client device from the first networking device to the second networking device to facilitate serving the data to the client device by the second networking device via the second communication path.