MI MTU size for lo(4)
With KAME the MTU size of the loopback interface became strange and is actually dependend on the architecture. I see no point in all this just go back to the way it was long long long ago and just use 32k as the MTU. AFAIK all of this was only done to test large IPv6 packets but why MHLEN and MLEN were added is still beyond my imagination. -- :wq Claudio Index: net/if_loop.c === RCS file: /cvs/src/sys/net/if_loop.c,v retrieving revision 1.54 diff -u -p -r1.54 if_loop.c --- net/if_loop.c 19 Apr 2014 11:01:37 - 1.54 +++ net/if_loop.c 12 May 2014 21:29:07 - @@ -143,11 +143,7 @@ #include net/bpf.h #endif -#if defined(LARGE_LOMTU) -#define LOMTU (131072 + MHLEN + MLEN) -#else -#defineLOMTU (32768 + MHLEN + MLEN) -#endif +#defineLOMTU 32768 intloop_clone_create(struct if_clone *, int); intloop_clone_destroy(struct ifnet *);
Re: MI MTU size for lo(4)
On 13 May 2014 15:45, Claudio Jeker cje...@diehard.n-r-g.com wrote: With KAME the MTU size of the loopback interface became strange and is actually dependend on the architecture. I see no point in all this just go back to the way it was long long long ago and just use 32k as the MTU. AFAIK all of this was only done to test large IPv6 packets but why MHLEN and MLEN were added is still beyond my imagination. In fact this comes from this commit in NetBSD originally: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/net/if_loop.c#rev1.20 Comment says Add MHLEN + MLEN extra space to LOMTU for IP and transport headers. This doesn't make me understand why this is needed however. So unless this clues you in, I'm OK with setting it to 32k everywhere.
Re: MI MTU size for lo(4)
On 13 May 2014 16:05, Mike Belopuhov m...@belopuhov.com wrote: On 13 May 2014 15:45, Claudio Jeker cje...@diehard.n-r-g.com wrote: With KAME the MTU size of the loopback interface became strange and is actually dependend on the architecture. I see no point in all this just go back to the way it was long long long ago and just use 32k as the MTU. AFAIK all of this was only done to test large IPv6 packets but why MHLEN and MLEN were added is still beyond my imagination. In fact this comes from this commit in NetBSD originally: http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/net/if_loop.c#rev1.20 Comment says Add MHLEN + MLEN extra space to LOMTU for IP and transport headers. This doesn't make me understand why this is needed however. So unless this clues you in, I'm OK with setting it to 32k everywhere. And purely for your amusement: FreeBSD have decreased MTU from 64k to 16k in '95: http://svnweb.freebsd.org/base/head/sys/net/if_loop.c?r1=6875r2=6876 Perhaps (and I'm somewhat speculating here) because of TCP performance problems, like so: http://marc.info/?l=netbsd-current-usersm=102684186303106w=2 (fixed diff is in the next mail though)