Hi,
I am using lwip with NO_SYS=1, and I have noticed
that outgoing TCP packets are very delayed.
It looks like between writing a packet (using tcp_write),
and the time it actually written to the interface it takes usually about
200ms.
I examined the code, and it looks like lwip only writes regu
I've worked around this disabling Nagle Algorithm for each pcb and also
calling tcp_output after every write. But somebody told me it was the wrong
approach doing so, but it works for me so I don't know what to say.
Mihai
On Wed, Jul 13, 2016 at 3:20 AM, Jakub Schmidtke wrote:
> Hi,
>
> I am us
Jakub Schmidtke wrote:
> I am using lwip with NO_SYS=1, and I have noticed
> that outgoing TCP packets are very delayed.
>
> It looks like between writing a packet (using tcp_write),
> and the time it actually written to the interface it takes usually about
> 200ms.
Maybe your sys_now() or sys_
>
> Maybe your sys_now() or sys_jiffies() functions are too course?
> They should have a resolution of approx. 1 msec.
I am not even talking about observed delays.
I am looking at the code, and based on that, those packets will be delayed
by up to twice the value of TCP_TMR_INTERVAL in millisecon
I think you might have missed reading the documentation: tcp_write enqueue
data, tcp_outout tries to send it. You always have to call both.
Simon
Gesendet mit AquaMail für Android
http://www.aqua-mail.com
Am 13. Juli 2016 2:35:59 nachm. schrieb Jakub Schmidtke :
Maybe your sys_now() or sy
Confusion might arise from the examples in contrib, neither tcpecho_raw
nor smtp do call tcp_output(). Not everyone seems to look at httpd...
nor read the wiki, nor the docs...
___
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org
>
> I think you might have missed reading the documentation: tcp_write enqueue
> data, tcp_outout tries to send it. You always have to call both.
>
> I actually found the recommended call flow on wiki (Here:
http://lwip.wikia.com/wiki/Raw/TCP ) after Mihai mentioned using
tcp_output().
And yes, I h
Again, it's probably not be the wrong approach, it's just what I've been
told on this thread:
https://lists.gnu.org/archive/html/lwip-users/2016-06/msg00055.html
Since it worked for me at that moment, I just let it like that, and reading
the responses here confirms that it's the correct approach
It's worth comparing the behavior of the netconn API. Even though the netconn
API is only available with NO_SYS = 0, it is still a user of the raw API like
the applications mentioned in this email thread.
lwip_netconn_do_writemore() calls tcp_write() until all segments have been put
into th