[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE
From: |
Kieran Mansley |
Subject: |
Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE |
Date: |
Thu, 8 Dec 2011 20:25:26 +0000 |
On 8 Dec 2011, at 18:51, Gary Spivey wrote:
> What is the preferred way to configure lwip so that I can either accept
> packets larger than PBUF_POOL_BUFSIZE or ensure that I don’t receive them?
To accept packets larger than PBUF_POOL_BUFSIZE you should, when you receive
them, copy them into the chain of pbufs that you get when you alloc, being
careful to split the received data across the pbufs as necessary.
To ensure that you don't receive packets larger than PBUF_POOL_BUFSIZE, set
that value larger than the biggest packet you can receive. This is a property
of the LAN you are connected to (i.e. it is a value that should be known by all
the hosts and configured the same) and can vary, so I can't tell you a good
value.
In the default, we assume that the largest value on the network is
MSS+40+PBUF_LINK_HLEN, where the 40 is for IP and TCP headers. It is possible
for TCP headers to be bigger than that (if there are options included for
example) or for another host on the network to have a larger MSS and MTU than
lwIP's default, and so you may need to adjust PBUF_POOL_BUFSIZE to match if you
want to fit a frame into a single buffer.
I'm not sure whey DHCP didn't work when you started splitting packets across
buffers. It should. It's either a bug in lwIP or a bug in the way you were
filling the buffers. If you can get more information on the reason for the
failure that would be useful.
Note that you should also handle chains of pbufs on the send path in your
driver. With a relatively small PBUF_POOL_BUFSIZE lwIP can pass packets for
transmission to the driver as a chain as well.
Hope that helps,
Kieran
- [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Gary Spivey, 2011/12/07
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, web, 2011/12/07
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Gary Spivey, 2011/12/07
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Bill Auerbach, 2011/12/08
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Gary Spivey, 2011/12/08
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE,
Kieran Mansley <=
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Gary Spivey, 2011/12/08
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Gary Spivey, 2011/12/08
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, address@hidden, 2011/12/09
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Simon Goldschmidt, 2011/12/09
- Re: [lwip-users] Incoming packet bigger than PBUF_POOL_BUFSIZE, Simon Goldschmidt, 2011/12/09