Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Názor k článku
ADSL: co se stalo? (2.)

Petr Souček
Petr Souček (neregistrovaný)
25. 10. 2003 0:23

Re: Nextra vs. IOL

celé vlákno
Podle http://www.mozilla.org/projects/netlib/http/pipelining-faq.html je to trochu jinak, nejde o paralelní načítání, ale po jednom vlákně se pošle více požadavků za sebou a nečeká se na odpověď. Předpokládá se, že odpovědi přijdou ve stejném pořadí.

Načítání webové stránky s mnoha elementy může fungovat více způsoby. Původně, podle HTTP 1.0, se otevřelo TCP spojení, poslal po něm HTTP požadavek, přijala odpověď a uzavřelo spojení. Toto se provádělo pro každý http požadavek, tedy pro každý element na stránce.

Vylepšením je HTTP 1.1 KeepAlive - persistentní spojení, kdy to vypadá tak, že se otevře spojení, a pak se po něm pošle požadavek, přijde odpověď, pošle další požadavek, přijde další odpověď a teprve když nejsou požadavky, tak se spojení uzavře. Výhodu je, že se vždy znovu nenavazuje spojení, což znamená sekvenci paketů SYN - SYNACK - ACK, což na pomalé lince může hodně zdržet.

Ten HTTP Pipelining je další krok a spočívá v tom, že se při posílání požadavků nečeká na odpovědi, a díky tomu, že jsou tyto požadavky malé, může se jich vejít víc do jednoho paketu - to je další úspora.

Jiná věc je, kolik spojení současně je vytvořeno na jeden web server. Podle 5 let starého průzkumu http://www.cs.wisc.edu/~cao/papers/persistent-connection.html se choval Netscape 4.05 tak, že otevřel v jednom okně až 6 persistentních spojení, celkem max. 13, zatímco IE4.01 neotevřel více než 2 spojení na jeden server, i když bylo otevřeno více oken.
Na novější porovnání jsem nenarazil, ale taky jsem ho moc nehledal. http://www.net.uni-sb.de/~jw/nsweb/doku/node68.html popisuje efekt persistentního spojení, pipeliningu a více spojení současně.