Patent ID: 8180887

Claim:
A method of determining at a coordination server a geographic location of a network client, the method comprising: receiving at the coordination server a request from the network client; and determining the geographic location of the network client, wherein the determining further comprises: determining a region in which the network client is located; providing the network client with a first list of a first set of landmark servers in geographic areas present within the region, each landmark server of the first set of landmark servers having a respective known geographic location; receiving first results from a probing of the first set of landmark servers, the first results comprising a relative magnitude of communication delay between the network client and each of the landmark servers of first set of landmark servers; determining a geographic area in which the network client is located by ranking the first results based on the relative magnitude of communication delay between the network client and each of the landmark servers of the first set of landmark servers; providing the network client with a second list of a second set of landmark servers within the determined geographic area, each landmark server of the second set of landmark servers having a respective known geographic location; receiving second results from a probing of the second set of landmark servers, the second results comprising a relative magnitude of communication delay between the network client and each of the landmark servers of the second set of landmark servers; and determining a city in which the network client is located by ranking the second results based on the relative magnitude of communication delay between the network client and each of the landmark servers of the second set of landmark servers.