3 ms·
I don't know why you set the MTU to a lower value... What I do know, is that I've set it to 65535; my machine now transmits 64KB instead of just 1.5KB (per pack
by golem_de 11y ago
I don't know why you set the MTU to a lower value... What I do know, is that I've set it to 65535; my machine now transmits 64KB instead of just 1.5KB (per packet)... Can you imagine what would happen if I set this to UInt32.MaxValue...?
- JoeAltmaier 11y agoIts generally a terrible idea to increase UDP MTU. There's no reliable reassembly in UDP. If you miss a single packet (out of say 1000) then all are simply discarded silently. In fact, some versions of Linux didn't do UDP reassembly properly until a year ago (was a topic here on HN). Reordered UDP wasn't dealt with properly if I recall. There are routers that drop UDP for any reason or no reason. And so on. So UDP is the red-headed stepchild of protocols, with little testing going on and lots of issues. I recommend putting a protocol on top of any UDP transfer you code, and never increasing the MTU.
- golem_de 11y agoMan, you know, it's just a packet, not 1.500, but 65.535 bytes. There could be 4.294.967.295 bytes!!! :-) For basically everything TCP is used. UDP is just used by DNS and they usually weight 100 - 200 bytes. Look into your wireshark!
- JoeAltmaier 11y agoThe UDP packet, and what goes out on the wire, are different things. IP-over-Ethernet for instance does not send out data in units larger than 1500 bytes; often smaller over WiFi. So UDP packets larger than 1500 bytes will be divided up, and reassembled on the receive end.
- fordsfords 11y agoAs to why one would set the MTU low, see http://blog.geeky-boy.com/2015/10/windows-corrupting-udp-datagrams.html#why http://blog.geeky-boy.com/2015/10/windows-corrupting-udp-dat... I also made a long-winded answer to your question submitted to the blog, if you're interested.