I'm with zoomkat. I want a practical server, but in a non-crash sort of way. I want the ethernet shield to survive multiple requests, but I don't expect it will work like my Linux server.
Maybe I can find some volunteers to test it here... :-)
Edit: This is good news. The w5100 apparently does use the MSS value. I used my router to choke the connection speed down to 56k, removed my change and the TX buffer does not fill up, even if the connection slows to a crawl. It stops at a point well short of my router MSS value. So it appears my code change is not the cure.
Do you have plans to use all 4 sockets simultaneously? That seems to be a bigger problem for me than keep-alive.
I just did some testing. It does rotate through the sockets. It does timeout one of the connections if another connection gets slow.
FragmentationUnlike in IPv4, IPv6 routers never fragment IPv6 packets. Packets exceeding the size of the maximum transmission unit of the destination link are dropped and this condition is signaled by a Packet too Big ICMPv6 type 2 message to the originating node, similarly to the IPv4 method when the Don't Fragment bit set.
A normal header is 40 bytes.
mssSize = readSnMSSR();mssSize -= 100;writeSnMSSR(mssSize);