On Wed, Apr 12, 2006 at 05:26:51PM +0100, Michael Rogers wrote:
> 
> > When a packet is successfully transmitted we increment the window size
> > by b. When a packet is lost we multiply it by a. We send packets every
> > (round trip time / window size).
> > 
> > This is definitely TCP-friendly?
> 
> This is definitely not TCP-friendly - it's not even AIMD. You never
> leave slow-start mode, so the window size increases exponentially until
> you lose a packet.

ftp://ftp.ee.lbl.gov/papers/congavoid.ps.Z footnote on page 6:
Increment the window size by 1/window size when a packet succeeds.
Halve it when one fails.

To adjust it to our usage:
When a packet succeeds, winSize += b / winSize
When a packet fails, winSize *= a

Now, is *that* TCP-compatible?
> 
> In the first RTT there will be one packet and one ack, so the window
> will increase by b to 1+b. In the second RTT there will be 1+b packets
> and 1+b acks, so the window size will increase by 1+b to 2+2b. In the
> third RTT there will be 2+2b packets and 2+2b acks, so the window size
> will increase by 2+2b to 4+4b, etc.
> 
> Cheers,
> Michael
-- 
Matthew J Toseland - toad at amphibian.dyndns.org
Freenet Project Official Codemonkey - http://freenetproject.org/
ICTHUS - Nothing is impossible. Our Boss says so.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: 
<https://emu.freenetproject.org/pipermail/devl/attachments/20060412/7441d944/attachment.pgp>

Reply via email to