TCP/IP packet size


#1

Hi Masters of Wavecom,
I’m trying to increase the packet size of my transmissions. They are currently 536B. Using NO_DELAY the data is forced out as soon as it comes in and I see sizes of 56B typically. So i can see some effect there which is understandable. Is there a way to increase the size more?
I tried altering WIP_COPT_SND_LOWAT which didn’t seem to have much effect. To be honest I don’t understand the description in the document

should that “available” be “used” instead, that would seem to make more sense.
Any other hints on packet control size.

The reason I’m following this route is that with very short packet sizes (as found with NO_DELAY) I found that the processor was getting was running out of IP buffers and missing incoming UART data. With the longer packets it is behaving. I also increased the buffer size with WIP_COPT_SND_BUFSIZE while I was at it.


#2

Hey ,you should try to set the WIP_COPT_MAXSEG,this is the size of TCP packet size.

my problem is:the default value of WIP_COPT_MAXSEG is 536B,when I set it to 5000 and I checked it again, the value of WIP_COPT_MAXSEG is 1440,I can’t increase any more!

Is there anybody know why?


#3

Hiya,

In the ADL user guide (Revision 11 for OS 6.31), page 109 it notes that the maximum size of data packets for GPRS Port FCM handler is 1500 bytes. This is the maximum packet size allowed by ethernet (and hence most IP based networks - Gigabit Jumbo Frames excluded).

I wonder if the 1440 value is the maximum packet payload size - 1500 minus some overhead (CRC, address etc) - to stop packet fragmentation?

No idea why the default packet size was 536 bytes though - maybe the WIP stack is reading something from the network and adapting packet size to be some sort of optimum?

Just my thoughts.
ciao, Dave


#4

It does sound familiar…


#5

Hiya,

Should have done a bit more research.
536 bytes is the minimum packet size that must be accepted by an IP host…

ciao, Dave


#6

Whey the max IP packet size is 1500 bytes,and the default TCP packet is 536 bytes,you can foud them in the TCP/IP protocol.
the 1440 bytes is what you can write ,not include any other overhead of tcp header.
You may need this: faqs.org/rfcs/rfc879.html