Subject: Re: keepalive per socket settings patch
To: Darren Reed <darrenr@netbsd.org>
From: Greg Troxel <gdt@ir.bbn.com>
List: tech-net
Date: 06/20/2007 09:58:23
Darren Reed <darrenr@netbsd.org> writes:

> Christos Zoulas wrote:
>> Hi,
>>
>> This is pretty straight forward... The question is do we let setsockopt
>> specify arbitrary values, or do we cap them to the global settings like
>> I do now? Comments? If there are no disagreements I will commit this after
>> I write the documentation. If there are, speak now and I won't bother
>> with the docs.

I think that a program should be able to ask for values both higher and
lower than the global default setting.

> The bigger problem is the lower bound....
> Is it too much to allow an application to specify it as being 500ms?
> And what if apache does this for all n000 connections?
> Should that just be a configuration error or ...?

I think 500 ms is crazy; I bet if you went to IETF everyone would say
that's abusive.  Thoughts:

  keepalive interval should be well greater than RTT

  keepalive intercal should only be short enough to keep broken nat
  boxes working

  if someone has truly odd needs they can rebuild and we can discuss

I would suggest 30 seconds as the minimum settable value, or maybe 15.

I suggest not limiting the high value.  If an admin does want to force
apps that don't want keepalive, then that's another sysctl to override
policy but it seems unwarranted.