DragonFly commits List (threaded) for 2009-12
Re: git: network - Move socket from netmsg ext to netmsg header, add port to socket
Aggelos Economopoulos wrote:
> Matthew Dillon wrote:
>> :Given that pretty much nobody uses T/TCP (Linux doesn't even implement
>> :it) I'd suggest we remove it altogether. Otherwise, we should revert at
>> :least the change above (of course, I would not be surprised if T/TCP has
>> :been broken for years and nobody noticed ;)
>> I'd say remove it alltogether. [...]
> I'll give it a try, probably tomorrow.
Hmm. It seems to me we want to keep tao_mssopt, otherwise we risk
crippling mtu discovery. Specifically, I'm thinking of the following
code from tcp_subr::tcp_mtudisc():
* XXX - The following conditional probably violates the TCP
* spec. The problem is that, since we don't know the
* other end's MSS, we are supposed to use a conservative
* default. But, if we do that, then MTU discovery will
* never actually take place, because the conservative
* default is much less than the MTUs typically seen
* on the Internet today. For the moment, we'll sweep
* this under the carpet.
* The conservative default might not actually be a problem
* if the only case this occurs is when sending an initial
* SYN with options and data to a host we've never talked
* to before. Then, they will reply with an MSS value which
* will get recorded and the new parameters should get
* recomputed. For Further Study.
if (taop->tao_mssopt != 0 && taop->tao_mssopt < maxopd)
maxopd = taop->tao_mssopt;
Looks like it could be moved in rt_metrics too, but I haven't thought
this through yet.