3 ms·
It does set MSS so part of the reason they had this issue is I think related to asymmetric paths?
by tempnow987 5y ago
It does set MSS so part of the reason they had this issue is I think related to asymmetric paths?
- lima 5y agoMSS clamping is a nasty hack that works only for TCP.
- tempnow987 5y agoFair point. I'm not experienced, does path discovery work with PSH set?
- sleepydog 5y agoPath discovery is agnostic of the transport protocol. Once an IP datagram with the "Don't Fragment" bit set reaches a device that cannot forward it because it is too large, the device must send an ICMP error back to the originating IP address with the correct MTU. The sender must adjust then adjust the MTU for the same destination for future datagrams. The sender may have to do this discovery multiple times, if each smaller packet gets progressively further, but doesn't reach the destination. This whole process is thwarted by overeager network administrators blocking ICMP traffic, or, apparently, by devices like this "transit gateway" that don't generate the ICMP packet at all. Edit: Sorry, I think I may have fallen into the trap of explaining something that you already knew and not answering your question. I realized this after jsnell's comment elsewhere that the kernel may not want to split packets with the PSH bit set. I wasn't able to find an answer to your question in linux/net/ipv4/tcp_output.c, hopefully someone more familiar with Linux's TCP can chime in.
- deleted 5y ago[deleted]
- tempnow987 5y agoRight, path discovery I get, but this was the first I'd heard of PSH bit possibly interacting negatively. That said, I'm not sure why it would. Buffering is normally only if you are > MSS? And why would pushing up to application change path discovery?