Du skal vist have lidt penge tilbage, så... ;)
Hvis du eks. har 20ms mellem A <-> B, så kan en ACK modtages, lad os sige 5 x hurtigere, end via A<->B med en latency på 100ms. (groft sagt)
Med højere latencies, så går det endnu mere galt, da tcp-data skal vente endnu længere på at få svar - og derefter kunne sende næste pakke.
Jow - så kan du udnytte UDP, som ikke er lige så afhængig af latency. Men så mister du data-korrektion, medmindre du implementerer en mekanisme/ekstra layer til (igen) at overvåge trafikken, og gensende korrupte/tabte pakker.
Så snart vi skal ud på de Interwebs'ske stepper, så kan vi heller ikke bruge samme MTU som på vore lokalnetværk - og så sætter vi endnu et par faktorer i sving, som kan have indflydelse på hastigheden, da pakkerne nu fragmenteres yderligere.
Osv osv...
Et gammelt skriv, for at linke til noget, kunne være eks.: http://rescomp.stanford.edu/~cheshire/rants/Latency.html