I'm looking for a geographic location (not service) to host internet services that will give me the lowest latency on connections from two other locations. How would I best determine the most ideal midpoint?

  • Your question is too localized and also borders on being a "product or service recommendation". Please see the FAQ and revise your question accordingly. – kce Mar 3 '12 at 23:45
  • I have done so. Not sure how serverfault.com/questions/6210/… differs from my original question. – Ehtyar Mar 4 '12 at 0:30
  • Topicality is moving target. The FAQ has recently been changed. Thanks for revising your question. If its too specific it's not useful for other people. – kce Mar 4 '12 at 0:54
  • I appreciate you reopening my question. Thank you. – Ehtyar Mar 4 '12 at 10:39
  • Due to dynamic nature of routes and trunk-load, you'll solve "for now" task, not forever. JFYI – Lazy Badger Mar 4 '12 at 18:09

You would do well to consider where the Internet Exchanges (IXs) are located in your hosting region of choice. For example, in the US:


See also the peeringdb: https://www.peeringdb.com/private/index.php

That should get you in the ballpark. Anything off one of these highly interconnected IX points will add latency.

You can further refine this model by looking at your "locations." If they are physical locations, see which networks are there. If they are network locations, find out from the providers where they interconnect. Traceroute and mtr can be helpful tools but I would caution against relying on them entirely as routes can change at any moment.


Do a few dozen traceroutes between the locations in both directions, determine the fastest/prevalent routes and choose a location with a very small latency to the central point (central in terms of time). Geographical location of a hop can be estimated using whois info.

When considering a location, use traceroutes in the same manner to check whether you guess regarding routes is correct.

Any further optimizations would require you to know general network topology (backbone at least).

  • 1
    ICMP-connectivity can poorly correlate to data (TCP) connectivity – Lazy Badger Mar 4 '12 at 18:10
  • Routes should be the same. Individual delays might be different due to differing protocol priorities at routers. Nevertheless, I believe that average values won't differ greatly. Anyway, traceroute can be done with TCP packets as well, e.g. with tcptraceroute. – ivan_pozdeev Mar 5 '12 at 23:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.