Verejne adresy za privatni podsiti

Martin `MJ' Mares mj na ucw.cz
Středa Červen 8 10:46:36 CEST 2005


Zdravim!

> Hmm, mozno mi to nejak z rana nemysli, ale tak schvalne:
> 
> C: connect
> S: ok, server x.y.z.com hello
> C: get /var/ftp/file.rpm, from 0 to end
> S: file.rpm size 65536 transaction start, chunk size 1024, [1024B dat]
> C: ack
> S: chunk size 1024
> C: ack

O overheadu mluvit nebudu (na ten se da tezko bez presneho popisu hlavicek
chunku a takovych veci soudit), ale vidim tu jinou docela podstatnou chybu:
tim, ze po kazdem chunku vyzadujete ACK, celou komunikaci zpomalujete
o 1 RTT za chunk.

Napriklad po obycejnem 56k modemu (RTT okolo 200ms) byste namisto 7000 byte/s
prenasel pouhych 3000 byte/s.

Chunky muzete samozrejme zvetsit (cimz si zhorsite reakcni dobu na abort),
nebo muzete zavest okenkove potvrzovani, jako to dela TCP, ale tim cely
protokol jeste zkomplikujete. Nebo muzete ACKy chunku rovnou zrusit,
protoze vlastne nejsou k nicemu potreba ;-) Pak dostanete prakticky
totez, co v chunked modu pouziva HTTP :)

				Have a nice fortnight
-- 
Martin `MJ' Mares   <mj na ucw.cz>   http://atrey.karlin.mff.cuni.cz/~mj/
Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
"In accord to UNIX philosophy, PERL gives you enough rope to hang yourself." -- Larry Wall


Další informace o konferenci Linux