Re: Any TCP VTW users?

2022-09-16 Thread Thor Lancelot Simon
On Thu, Sep 15, 2022 at 04:33:09PM +0900, Ryota Ozaki wrote:
> Hi,
> 
> Are there any users of TCP Vestigial Time-Wait (VTW)?
> The feature is disabled by default and we need to explicitly
> enable via sysctl to use it.
> 
> I just want to know if we should still maintain it.

Have you read the original discussion at
https://mail-index.netbsd.org/tech-net/2011/04/08/msg002566.html ?  I
believe the rationale for this feature is still valid, and I think it
is unfortuanate it was never enabled by default, and thus seems to have
rotted.

Thor


Re: Any TCP VTW users?

2022-09-16 Thread Thor Lancelot Simon
On Fri, Sep 16, 2022 at 10:33:31AM +0900, Ryota Ozaki wrote:
> 
> Thank you for the report!
> 
> Just curious. Does it improve performance? (or reduce CPU/memory usage?)

The Coyote Point loadbalancers couldn't survive our load testing (which
was modeled on traces of real world workloads) without it.  But Coyote
Point was bought by Fortinet and I believe the NetBSD-based firmware is
long gone.

Coyote Point did much more with the fat pointer stuff, but I don't think any
of it even got into the internal tree before they were purchased and
basically shut down.  A lot of it was actually aimed at connection placement
to improve concurrency within the stack - it is not surprising that if you
are looking at only a small fragment of it, it makes that much _harder_.

Thor


Re: Any TCP VTW users?

2022-09-15 Thread Ryota Ozaki
On Fri, Sep 16, 2022 at 10:21 AM Simon Burge  wrote:
>
> Ryota Ozaki wrote:
>
> > Hi,
> >
> > Are there any users of TCP Vestigial Time-Wait (VTW)?
> > The feature is disabled by default and we need to explicitly
> > enable via sysctl to use it.
> >
> > I just want to know if we should still maintain it.
>
> I wouldn't be unhappy if it just disappeared.  It's totally
> undocumented, and will also cause a panic on archs with larger cache
> line size because it does some really funky incorrect math that I
> stared at for a while then gave up on.
>
> erlite# sysctl -w net.inet.tcp.vtw.enable=1
> 15293.7939168] panic: kernel diagnostic assertion "n <= FATP_MAX / 2" failed: 
> file "../../../../netinet/tcp_vtw.c", line 218

Oh, that's bad...  Thank you for telling me.

  ozaki-r


Re: Any TCP VTW users?

2022-09-15 Thread Ryota Ozaki
On Fri, Sep 16, 2022 at 2:03 AM Brad Spencer  wrote:
>
> Ryota Ozaki  writes:
>
> > Hi,
> >
> > Are there any users of TCP Vestigial Time-Wait (VTW)?
> > The feature is disabled by default and we need to explicitly
> > enable via sysctl to use it.
> >
> > I just want to know if we should still maintain it.
> >
> >   ozaki-r
>
>
> I do use it on one system, but it is not likely to be critical to
> anything.   The system in question creates a whole ton of short lived
> connections and I think I was trying to get them to expire quicker then
> normal.

Thank you for the report!

Just curious. Does it improve performance? (or reduce CPU/memory usage?)

  ozaki-r


Re: Any TCP VTW users?

2022-09-15 Thread Simon Burge
Ryota Ozaki wrote:

> Hi,
>
> Are there any users of TCP Vestigial Time-Wait (VTW)?
> The feature is disabled by default and we need to explicitly
> enable via sysctl to use it.
>
> I just want to know if we should still maintain it.

I wouldn't be unhappy if it just disappeared.  It's totally
undocumented, and will also cause a panic on archs with larger cache
line size because it does some really funky incorrect math that I
stared at for a while then gave up on.

erlite# sysctl -w net.inet.tcp.vtw.enable=1
15293.7939168] panic: kernel diagnostic assertion "n <= FATP_MAX / 2" failed: 
file "../../../../netinet/tcp_vtw.c", line 218

Cheers,
Simon.


Re: Any TCP VTW users?

2022-09-15 Thread Ryota Ozaki
On Thu, Sep 15, 2022 at 9:33 PM Andy Ruhl  wrote:
>
> On Thu, Sep 15, 2022 at 12:34 AM Ryota Ozaki  wrote:
> >
> > Hi,
> >
> > Are there any users of TCP Vestigial Time-Wait (VTW)?
> > The feature is disabled by default and we need to explicitly
> > enable via sysctl to use it.
> >
> > I just want to know if we should still maintain it.
> >
> >   ozaki-r
>
> I wasn't even aware of it. I read the comments in
> sys/netinet/tcp_vtw.c. Seems useful for systems that handle a lot of
> sockets. Pretty neat.
>
> Is there some reason why this is obsolete or something?
>
> Andy

When we do mp-ification of TCP, VTW requires extra efforts;
the code looks not mp-ification friendly.

If nobody uses the feature, we can defer mp-ification of it
or completely ignore it.  So I asked the question.

  ozaki-r


Re: Any TCP VTW users?

2022-09-15 Thread Brad Spencer
Ryota Ozaki  writes:

> Hi,
>
> Are there any users of TCP Vestigial Time-Wait (VTW)?
> The feature is disabled by default and we need to explicitly
> enable via sysctl to use it.
>
> I just want to know if we should still maintain it.
>
>   ozaki-r


I do use it on one system, but it is not likely to be critical to
anything.   The system in question creates a whole ton of short lived
connections and I think I was trying to get them to expire quicker then
normal.



-- 
Brad Spencer - b...@anduin.eldar.org - KC8VKS - http://anduin.eldar.org


Re: Any TCP VTW users?

2022-09-15 Thread Andy Ruhl
On Thu, Sep 15, 2022 at 12:34 AM Ryota Ozaki  wrote:
>
> Hi,
>
> Are there any users of TCP Vestigial Time-Wait (VTW)?
> The feature is disabled by default and we need to explicitly
> enable via sysctl to use it.
>
> I just want to know if we should still maintain it.
>
>   ozaki-r

I wasn't even aware of it. I read the comments in
sys/netinet/tcp_vtw.c. Seems useful for systems that handle a lot of
sockets. Pretty neat.

Is there some reason why this is obsolete or something?

Andy