Citat:
Ursprungligen postat av marcuss
Citat:
Ursprungligen postat av kullervo
Om en webbsida består av 20 st. mycket små filer (så de ryms i var sitt TCP-paket) och man har en ping mot servern på 200ms så kommer bara väntetiden vara 2 sekunder (om webbläsaren har två parallella anslutningar mot servern vilket ofta är default). Om servern istället skulle ligga på 10ms så skulle väntetiden bara vara 0.1 sekund. Det är stor skillnad. Nu kan jag inte det här med window size i TCP, men nog blir överföringshastigheten betydligt lägre med stor fördröjning i en överföring.
|
Oj, mycket konstigt du skriver där... vad får ni egentligen lära er för påhitt på KTH?
Känns väldigt dumt att försöka visa hur lång tid det skulle ta att skicka "20 små filer" genom en hänvisning till pingtiden. Också mycket konstigt att hänvisa till pingtid när man pratar om filöverföring eftersom det egentligen uteslutande beror på segment-storleken (ex.vis TCP 1460/1500 bytes) och window size som i sin tur är beroende på bandbredd och fördröjning. Ju större nätverk, desto större window size. Dessutom är ju ping egentligen bara två olika ICMP-meddelanden som skickas. En förfrågan, ICMP typ 8 (echo request) och ett svar av ICMP echo reply typ 0 vilket alltså inte säger så mycket om tiden för överförandet av verklig data.
Enbart för att upprätta ett tcp-koppel skickas t.ex. flera olika TCP segment; de två första+ev. tredje, utan sk "payload", aka 'Three-way handshake'. Eftersom MSS (maximum segment size) beror på vilken TCP-implementation som används (beroende på operativsystem) går det inte att generalisera alltför mycket. Vet inte riktigt heller vad du försöker visa med din tidsberäkning eftersom den verkar otroligt skum. När en besökare går in på en webbsida upprättas först och främst ett (antal) tcp-koppel med handskakningsprocess, därefter skickas även datan/filerna i segment som består av header-fält och data-fält, uppdelade i bitar med storlek beroende på MSS. Att tala om ping och hänvisa till uppmätta pingtider blir ju inte i närheten av korrekt då...
Vill du läsa mer om hur TCP fungerar kan du ju läsa RFC 793.
|
Nja, det var inte hur lång tid det skulle ta och överföra 20 små filer utan hur länge bara dödtiden blir om man ska överföra dessa filer över den förbindelse med hög fördröjning.
Du säger att det upprätthålls ett flertal TCP-förbindelser mellan webbläsare och webbserver. Vad jag vet har IE samt FireFox endast 2 förbindelser som standard (konstigt nog). Om det är fler förbindelser som använs så har ping-tiden desto mindre inverkan (som du redan antytt).
Det var visst inte window size utan segment-storleken på TCP jag syftade på. Inte undra på att det lät som tekniskt mumbojumo-smörja.
Är det fel i det jag säger att sidladdningen ökar med minst 50ms om man flyttar servern tills ping-tiden ökat med just 50ms?