lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] AVR32 Software Framework EVK1100 and LwIP operates too


From: Simon Goldschmidt
Subject: Re: [lwip-users] AVR32 Software Framework EVK1100 and LwIP operates too slow
Date: Mon, 04 Oct 2010 12:47:09 +0200

Why are you waiting for the webserver to ACK anyway? Normally, your webclient 
would send its request in with write which gets on the wire as one packet 
(since it is smaller than the MSS) - note that TCP is allowed to split this 
although it normally doesn't.

This packets (or multiplte packets if splitted) arrive at the webserver when 
they are received - regardless of delayed ACK. The webserver should then parse 
the request an send its response (or close the connection if the request is 
totally malformed).

So far, there is no delayed ACK included. Delayed ACK would only get a problem 
if your webclient wanted to send more than MSS bytes to the server but waits 
for each packet to get ACKed. This is why both the lwIP internal buffers as 
well as the window should be >= 2*MSS (>= 4*MSS for smooth transfer is best).

Simon


-------- Original-Nachricht --------
> Datum: Mon, 4 Oct 2010 12:31:11 +0200
> Von: Delta Control - Bernd Uttich <address@hidden>
> An: "address@hidden" <address@hidden>
> Betreff: [lwip-users] AVR32 Software Framework EVK1100 and LwIP operates too  
> slow

> Dear LwIP users,
> 
> 
> 
> I currently work on a project were LwIP is ported to AVR32 control panel.
> I recognized that any time a packet is transmitted from
> 
> web server to host PC, it takes ~200ms until an ack is sent back from
> windows site.
> This makes communication quite slow - I measured about 5kB/s.
> 
> After reading several mails in this form, I tried out to transmit half of
> segment size. Modification looks as follows:
> 
>    src\SOFTWARE_FRAMEWORK\SERVICES\LWIP\lwip-1.3.0\src\core\tcp.c
> 
>    //increase speed:
> 
>    //mss_s = outif->mtu - IP_HLEN - TCP_HLEN; // Test Bernie
> 
>    mss_s = outif->mtu/2 - IP_HLEN - TCP_HLEN; // Windows ack delay Timer
> would not start !!
> 
> 
> 
> I assume this is time windows ack's single packets if no sliding Window
> algorithm would work on AVR32 site?
> 
> I tried to set flag TF_NODELAY in LwIP but it was not able for me to
> switch of windows delayed ack's.
> 
> Do you have a recommendation for me, where in AVR32 Software Framework to
> implement
> 
> sock->conn->pcb.tcp->flags |= TF_NODELAY;
> 
> correctly?
> 
> Transmitting half segment size is just a fast way if I am correct here to
> lie to windows that each time last packet
> 
> (with smaller content than segment size) is transmitted. Loading a website
> now gets much faster than without this
> 
> workaround, but I assume there is other professional solution which I have
> not found so far..
> 
> Can you help me here?
> 
> 
> 
> Best Regards,
> 
> 
> 
> Bernd

-- 
GMX DSL Doppel-Flat ab 19,99 &euro;/mtl.! Jetzt auch mit 
gratis Notebook-Flat! http://portal.gmx.net/de/go/dsl



reply via email to

[Prev in Thread] Current Thread [Next in Thread]