Hosten in het buitenland
Vele mensen worden vandaag gelokt door hosters in het buitenland. Goedkopere hosting of zelfs gratis hosting zoals Heroku klinken bijna te mooi om waar te zijn. Na een grondig en interessant onderzoek geven we je hiervan graag de resultaten mee. We hebben het deze keer niet over de ondersteuning of over samenwerken, maar enkel over het technische luik, en het moeilijkere begrip "latency".
Het idee komt niet van onszelf, we hebben het in summiere vorm gezien in Mike Bailey's blogpost " Latency is a killer". Daarin geeft hij aan dat er een groot verschil zit tussen de theoretische latency, en wat je effectief krijgt.
Eerst wat technische uitleg: "latency" betekent zoveel als "vertraging". Wanneer je computer een vraag uitstuurt op het internet, dan worden achter de schermen kleine pakketjes data verstuurd van je computer naar een server. Die kleine pakketjes doen er even over om die weg af te leggen, en hetzelfde geldt voor het antwoord dat terug moet komen.
De tijd die nodig is om een pakketje van uw computer tot aan de server te krijgen, en de bevestiging die terug moet komen, noemen we de "round trip time" (RTT). De vertraging tussen het versturen en het ontvangen van een pakketje wordt "latency" genoemd.
Wanneer we uitgaan van een persoon die zich in België bevindt, op één van de gekende ISPs, en de server staat ook in België, dan zien we een gangbare RTT van 10 tot 20 milliseconden. Wanneer een pakketje verder moet, en de oceaan over moet, naar de VS, dan zien we een RTT van 200 tot 300 ms.
Wanneer je site bvb in de VS gehost wordt, dien je dus rekening te houden met deze RTT. Je zou verwachten dat die round-trip-time gewoon wordt toegevoegd aan de totale download-tijd. Wanneer een server er 200 ms seconde over doet om te antwoorden, verwacht je dat er 400 tot 500 ms later een site op je scherm staat. Door het design van het TCP protocol kan het verschil echter flink oplopen, en kan het wel tot 10x zo trage downloads leiden.
We gingen aan het testen, naar het voorbeeld van Mike's blogpost. Het idee is eenvoudig: we zetten een bestand van een zekere grootte op een host in bvb de VS, en gaan die binnenhalen via een eenvoudige "haal het bestand op"-opdracht, net als je webbrowser. Daarna doen we hetzelfde met een bestand op een server in België. Beide keren timen we de tijd dat het duurt om dit te doen.
Om te weten wat gemiddelde website-groottes zijn, gingen we kijken bij enkele bekende websites:
- deredactie.be - 1.79MB
- standaard.be - 1.26MB
- openminds.be - 0.45MB
- arrrrcamp.be - 2.22MB
- Voorbeeld klant - 2.87MB
We zien dat de meeste websites ergens tussen de 400KB en 3MB schommelen. Dit geeft ons meteen een dataset om mee aan de slag te gaan. We zetten datasets op servers in Amerika, Zweden, Nederland, Engeland, Duitsland en bij onszelf, en lieten een programma lopen om de metingen te doen.
Resultaten vanaf Telenet
In onderstaande grafiek staat de tijd beschreven die nodig is om bestanden van variërende grootte af te halen van verschillende servers. Dit vanaf een Telenet kabel verbinding. Hoe dichter tot de X-as hoe beter de resultaten. Op de X-as (horizontaal) zetten we de bestandsgroottes uit, en verticaal zetten we de tijd die nodig was om het bestand binnen te halen.
Resultaten vanaf Dommel
In onderstaande grafiek zijn de resultaten vanaf een ADSL verbinding (Dommel) weergegeven. Ook hier geldt het principe: hoe dichter tot de X-as hoe beter het eindresultaat. Op de X-as (horizontaal) zetten we de bestandsgroottes uit, en verticaal zetten we de tijd die nodig was om het bestand binnen te halen.
Conclusie
De conclusie is duidelijk. Hoe verder de host staat, hoe meer de latency komt spelen, en hoe meer deze een vertraging veroorzaakt voor de surfer. Meer gedetailleerd zien we dat voornamelijk de US-server onmiddellijk slechtere tijden laat optekenen. Voor 500KB doet hij er al 2 seconden over
Binnen Europa is het verschil subtieler en hangt het af van provider tot provider. Het valt ook pas op vanaf 1.5MB. Zo is voor Telenet Nederland een pak trager, en voor Dommel is Duitsland duidelijk een probleem. Dit komt omdat niet alle providers hun internet-verkeer over dezelfde lijnen sturen.
Het Openminds netwerk presteert in alle twee de tests goed, wat te verwachten was. We hanteren de stelregel dat Belgisch verkeer, indien mogelijk, altijd binnen België dient te blijven, en dus geen omweg via Amsterdam of Frankfurt mag maken. We selecteren onze internet-leveranciers zodanig dat we directe verbindingen hebben met de grote belgische ISPs.
5 Reactie(s)
ZipKid | 20/07/2010
Kristof Vermeulen | 20/07/2010
Peter | 21/07/2010
Steven | 21/08/2010
Frank | 23/08/2010