Skip to content

Instantly share code, notes, and snippets.

@purp
Last active November 27, 2017 17:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save purp/4b2812cd48df7802921dd7bfd5b71ab1 to your computer and use it in GitHub Desktop.
Save purp/4b2812cd48df7802921dd7bfd5b71ab1 to your computer and use it in GitHub Desktop.
Some data about ping time from Sunnyvale through various VPN endpoints to commonly used servers/services.

Minimum latency for fiber and Cat 5 copper

This is a calculation of the minimum possible latency you could possibly expect between two points, if the theoretical connection between them was completely straight and of perfect quality. This is not attainable in a modern switched network, but it's useful both to understand the amount of delay injected by network implementation and complexity, and to compare relative latencies between routes.

Distances and optimum latency between cities

Nuremberg/Prague

  • 156.098 mi
  • 0.8379643083349 light-milliseconds
  • 1.309319231773281 cat5-milliseconds

Nuremberg/Provo

  • 5336.579 mi
  • 28.64779004606 light-milliseconds
  • 44.76217194696875 cat5-milliseconds

Nuremberg/Sunnyvale

  • 5796.317 mi
  • 31.11575270532 light-milliseconds
  • 48.6183636020625 cat5-milliseconds

Prague/Provo

  • 5400.246 mi
  • 28.98956683768 light-milliseconds
  • 45.296198183875 cat5-milliseconds

Prague/Sunnyvale

  • 5845.739 mi
  • 31.38105957694 light-milliseconds
  • 49.03290558896875 cat5-milliseconds

Provo/Sunnyvale

  • 593.049 mi
  • 3.183601936564 light-milliseconds
  • 4.97437802588125 cat5-milliseconds

Sources and Methodology

Through Provo

SNV->PRV/VPN->NUE/Chat

20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 267.958/288.279/373.751/28.418 ms

SNV->PRV/VPN->PRV/Jira

20 packets transmitted, 19 packets received, 5.0% packet loss
round-trip min/avg/max/stddev = 109.121/116.159/215.752/23.507 ms

Through Prague

SNV->PRG/VPN->NUE/Chat

20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 203.912/218.793/317.033/25.738 ms

SNV->PRG/VPN->PRV/Jira

20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 350.756/354.203/390.643/8.572 ms

Through Nürnberg

SNV->NUE/VPN->NUE/Chat

20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 182.291/186.607/238.639/12.032 ms

SNV->NUE/VPN->PRV/Jira

20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 339.833/353.058/426.632/22.439 ms
purp@tinyjoy:~ [13:55:35] <518>$ # Chat, thru PRV
purp@tinyjoy:~ [13:55:35] <519>$ ping -c20 chat.suse.de
PING chat.suse.de (149.44.176.6): 56 data bytes
64 bytes from 149.44.176.6: icmp_seq=0 ttl=54 time=270.584 ms
64 bytes from 149.44.176.6: icmp_seq=1 ttl=54 time=273.687 ms
64 bytes from 149.44.176.6: icmp_seq=2 ttl=54 time=270.726 ms
64 bytes from 149.44.176.6: icmp_seq=3 ttl=54 time=268.885 ms
64 bytes from 149.44.176.6: icmp_seq=4 ttl=54 time=268.593 ms
64 bytes from 149.44.176.6: icmp_seq=5 ttl=54 time=270.406 ms
64 bytes from 149.44.176.6: icmp_seq=6 ttl=54 time=276.633 ms
64 bytes from 149.44.176.6: icmp_seq=7 ttl=54 time=342.967 ms
64 bytes from 149.44.176.6: icmp_seq=8 ttl=54 time=306.741 ms
64 bytes from 149.44.176.6: icmp_seq=9 ttl=54 time=291.529 ms
64 bytes from 149.44.176.6: icmp_seq=10 ttl=54 time=373.751 ms
64 bytes from 149.44.176.6: icmp_seq=11 ttl=54 time=282.332 ms
64 bytes from 149.44.176.6: icmp_seq=12 ttl=54 time=300.677 ms
64 bytes from 149.44.176.6: icmp_seq=13 ttl=54 time=267.958 ms
64 bytes from 149.44.176.6: icmp_seq=14 ttl=54 time=273.042 ms
64 bytes from 149.44.176.6: icmp_seq=15 ttl=54 time=272.172 ms
64 bytes from 149.44.176.6: icmp_seq=16 ttl=54 time=283.158 ms
64 bytes from 149.44.176.6: icmp_seq=17 ttl=54 time=268.817 ms
64 bytes from 149.44.176.6: icmp_seq=18 ttl=54 time=329.786 ms
64 bytes from 149.44.176.6: icmp_seq=19 ttl=54 time=273.136 ms
--- chat.suse.de ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 267.958/288.279/373.751/28.418 ms
purp@tinyjoy:~ [13:56:03] <520>$ # Swap from PRV to NUE
purp@tinyjoy:~ [13:56:13] <521>$ ping -c20 chat.suse.de
PING chat.suse.de (149.44.176.6): 56 data bytes
64 bytes from 149.44.176.6: icmp_seq=0 ttl=62 time=184.047 ms
64 bytes from 149.44.176.6: icmp_seq=1 ttl=62 time=182.291 ms
64 bytes from 149.44.176.6: icmp_seq=2 ttl=62 time=183.056 ms
64 bytes from 149.44.176.6: icmp_seq=3 ttl=62 time=184.156 ms
64 bytes from 149.44.176.6: icmp_seq=4 ttl=62 time=183.023 ms
64 bytes from 149.44.176.6: icmp_seq=5 ttl=62 time=183.737 ms
64 bytes from 149.44.176.6: icmp_seq=6 ttl=62 time=183.150 ms
64 bytes from 149.44.176.6: icmp_seq=7 ttl=62 time=182.930 ms
64 bytes from 149.44.176.6: icmp_seq=8 ttl=62 time=184.593 ms
64 bytes from 149.44.176.6: icmp_seq=9 ttl=62 time=184.672 ms
64 bytes from 149.44.176.6: icmp_seq=10 ttl=62 time=182.819 ms
64 bytes from 149.44.176.6: icmp_seq=11 ttl=62 time=185.778 ms
64 bytes from 149.44.176.6: icmp_seq=12 ttl=62 time=183.725 ms
64 bytes from 149.44.176.6: icmp_seq=13 ttl=62 time=183.152 ms
64 bytes from 149.44.176.6: icmp_seq=14 ttl=62 time=183.051 ms
64 bytes from 149.44.176.6: icmp_seq=15 ttl=62 time=189.409 ms
64 bytes from 149.44.176.6: icmp_seq=16 ttl=62 time=183.332 ms
64 bytes from 149.44.176.6: icmp_seq=17 ttl=62 time=238.639 ms
64 bytes from 149.44.176.6: icmp_seq=18 ttl=62 time=184.135 ms
64 bytes from 149.44.176.6: icmp_seq=19 ttl=62 time=182.455 ms
--- chat.suse.de ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 182.291/186.607/238.639/12.032 ms
purp@tinyjoy:~ [13:57:11] <522>$ # Swap from NUE to PRG
purp@tinyjoy:~ [13:57:20] <523>$ ping -c20 chat.suse.de
PING chat.suse.de (149.44.176.6): 56 data bytes
64 bytes from 149.44.176.6: icmp_seq=0 ttl=56 time=212.808 ms
64 bytes from 149.44.176.6: icmp_seq=1 ttl=56 time=213.514 ms
64 bytes from 149.44.176.6: icmp_seq=2 ttl=56 time=214.523 ms
64 bytes from 149.44.176.6: icmp_seq=3 ttl=56 time=205.468 ms
64 bytes from 149.44.176.6: icmp_seq=4 ttl=56 time=218.993 ms
64 bytes from 149.44.176.6: icmp_seq=5 ttl=56 time=212.319 ms
64 bytes from 149.44.176.6: icmp_seq=6 ttl=56 time=213.378 ms
64 bytes from 149.44.176.6: icmp_seq=7 ttl=56 time=207.067 ms
64 bytes from 149.44.176.6: icmp_seq=8 ttl=56 time=225.876 ms
64 bytes from 149.44.176.6: icmp_seq=9 ttl=56 time=203.912 ms
64 bytes from 149.44.176.6: icmp_seq=10 ttl=56 time=209.305 ms
64 bytes from 149.44.176.6: icmp_seq=11 ttl=56 time=222.919 ms
64 bytes from 149.44.176.6: icmp_seq=12 ttl=56 time=317.033 ms
64 bytes from 149.44.176.6: icmp_seq=13 ttl=56 time=204.080 ms
64 bytes from 149.44.176.6: icmp_seq=14 ttl=56 time=260.967 ms
64 bytes from 149.44.176.6: icmp_seq=15 ttl=56 time=205.001 ms
64 bytes from 149.44.176.6: icmp_seq=16 ttl=56 time=205.799 ms
64 bytes from 149.44.176.6: icmp_seq=17 ttl=56 time=211.516 ms
64 bytes from 149.44.176.6: icmp_seq=18 ttl=56 time=205.404 ms
64 bytes from 149.44.176.6: icmp_seq=19 ttl=56 time=205.982 ms
--- chat.suse.de ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 203.912/218.793/317.033/25.738 ms
# NOW WITH JIRA (based in PRV)
purp@tinyjoy:~ [13:59:01] <525>$ # Jira, thru PRG
purp@tinyjoy:~ [13:59:17] <526>$ ping -c20 10.84.2.33
PING 10.84.2.33 (10.84.2.33): 56 data bytes
64 bytes from 10.84.2.33: icmp_seq=0 ttl=54 time=351.771 ms
64 bytes from 10.84.2.33: icmp_seq=1 ttl=54 time=351.381 ms
64 bytes from 10.84.2.33: icmp_seq=2 ttl=54 time=359.888 ms
64 bytes from 10.84.2.33: icmp_seq=3 ttl=54 time=351.349 ms
64 bytes from 10.84.2.33: icmp_seq=4 ttl=54 time=390.643 ms
64 bytes from 10.84.2.33: icmp_seq=5 ttl=54 time=353.255 ms
64 bytes from 10.84.2.33: icmp_seq=6 ttl=54 time=351.694 ms
64 bytes from 10.84.2.33: icmp_seq=7 ttl=54 time=353.697 ms
64 bytes from 10.84.2.33: icmp_seq=8 ttl=54 time=350.756 ms
64 bytes from 10.84.2.33: icmp_seq=9 ttl=54 time=352.806 ms
64 bytes from 10.84.2.33: icmp_seq=10 ttl=54 time=352.911 ms
64 bytes from 10.84.2.33: icmp_seq=11 ttl=54 time=351.059 ms
64 bytes from 10.84.2.33: icmp_seq=12 ttl=54 time=351.413 ms
64 bytes from 10.84.2.33: icmp_seq=13 ttl=54 time=351.743 ms
64 bytes from 10.84.2.33: icmp_seq=14 ttl=54 time=351.463 ms
64 bytes from 10.84.2.33: icmp_seq=15 ttl=54 time=351.551 ms
64 bytes from 10.84.2.33: icmp_seq=16 ttl=54 time=351.950 ms
64 bytes from 10.84.2.33: icmp_seq=17 ttl=54 time=350.979 ms
64 bytes from 10.84.2.33: icmp_seq=18 ttl=54 time=351.856 ms
64 bytes from 10.84.2.33: icmp_seq=19 ttl=54 time=351.899 ms
--- 10.84.2.33 ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 350.756/354.203/390.643/8.572 ms
purp@tinyjoy:~ [13:59:45] <527>$ # Swap from PRG to PRV
purp@tinyjoy:~ [14:00:58] <528>$ ping -c20 10.84.2.33
PING 10.84.2.33 (10.84.2.33): 56 data bytes
64 bytes from 10.84.2.33: icmp_seq=0 ttl=62 time=109.238 ms
64 bytes from 10.84.2.33: icmp_seq=1 ttl=62 time=110.681 ms
64 bytes from 10.84.2.33: icmp_seq=2 ttl=62 time=109.974 ms
64 bytes from 10.84.2.33: icmp_seq=3 ttl=62 time=110.660 ms
64 bytes from 10.84.2.33: icmp_seq=4 ttl=62 time=215.752 ms
64 bytes from 10.84.2.33: icmp_seq=5 ttl=62 time=110.753 ms
64 bytes from 10.84.2.33: icmp_seq=6 ttl=62 time=111.858 ms
64 bytes from 10.84.2.33: icmp_seq=7 ttl=62 time=109.385 ms
64 bytes from 10.84.2.33: icmp_seq=8 ttl=62 time=110.592 ms
64 bytes from 10.84.2.33: icmp_seq=9 ttl=62 time=110.155 ms
64 bytes from 10.84.2.33: icmp_seq=10 ttl=62 time=111.267 ms
64 bytes from 10.84.2.33: icmp_seq=11 ttl=62 time=109.242 ms
64 bytes from 10.84.2.33: icmp_seq=12 ttl=62 time=109.121 ms
64 bytes from 10.84.2.33: icmp_seq=13 ttl=62 time=110.963 ms
Request timeout for icmp_seq 14
64 bytes from 10.84.2.33: icmp_seq=15 ttl=62 time=114.715 ms
64 bytes from 10.84.2.33: icmp_seq=16 ttl=62 time=110.991 ms
64 bytes from 10.84.2.33: icmp_seq=17 ttl=62 time=109.773 ms
64 bytes from 10.84.2.33: icmp_seq=18 ttl=62 time=111.634 ms
64 bytes from 10.84.2.33: icmp_seq=19 ttl=62 time=110.276 ms
--- 10.84.2.33 ping statistics ---
20 packets transmitted, 19 packets received, 5.0% packet loss
round-trip min/avg/max/stddev = 109.121/116.159/215.752/23.507 ms
purp@tinyjoy:~ [14:01:47] <529>$ # Swap from PRV to NUE
purp@tinyjoy:~ [14:01:53] <530>$ # Swap from PRV to NUE
purp@tinyjoy:~ [14:02:18] <531>$ ping -c20 10.84.2.33
PING 10.84.2.33 (10.84.2.33): 56 data bytes
64 bytes from 10.84.2.33: icmp_seq=0 ttl=54 time=342.511 ms
64 bytes from 10.84.2.33: icmp_seq=1 ttl=54 time=339.833 ms
64 bytes from 10.84.2.33: icmp_seq=2 ttl=54 time=339.901 ms
64 bytes from 10.84.2.33: icmp_seq=3 ttl=54 time=340.244 ms
64 bytes from 10.84.2.33: icmp_seq=4 ttl=54 time=343.193 ms
64 bytes from 10.84.2.33: icmp_seq=5 ttl=54 time=340.075 ms
64 bytes from 10.84.2.33: icmp_seq=6 ttl=54 time=339.854 ms
64 bytes from 10.84.2.33: icmp_seq=7 ttl=54 time=347.504 ms
64 bytes from 10.84.2.33: icmp_seq=8 ttl=54 time=346.759 ms
64 bytes from 10.84.2.33: icmp_seq=9 ttl=54 time=345.646 ms
64 bytes from 10.84.2.33: icmp_seq=10 ttl=54 time=372.338 ms
64 bytes from 10.84.2.33: icmp_seq=11 ttl=54 time=426.632 ms
64 bytes from 10.84.2.33: icmp_seq=12 ttl=54 time=405.554 ms
64 bytes from 10.84.2.33: icmp_seq=13 ttl=54 time=346.120 ms
64 bytes from 10.84.2.33: icmp_seq=14 ttl=54 time=343.056 ms
64 bytes from 10.84.2.33: icmp_seq=15 ttl=54 time=342.981 ms
64 bytes from 10.84.2.33: icmp_seq=16 ttl=54 time=346.054 ms
64 bytes from 10.84.2.33: icmp_seq=17 ttl=54 time=353.677 ms
64 bytes from 10.84.2.33: icmp_seq=18 ttl=54 time=346.668 ms
64 bytes from 10.84.2.33: icmp_seq=19 ttl=54 time=352.560 ms
--- 10.84.2.33 ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 339.833/353.058/426.632/22.439 ms

Some interesting links about how we process and deal with latency

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment