Sepherosa Ziehau sepherosa at gmail.com
Thu Jul 25 01:32:37 UTC 2013

On Wed, Jul 24, 2013 at 10:32 PM, Maxim Konovalov <maxim at nginx.com> wrote:
> Hi,
> On 7/24/13 5:42 PM, Sepherosa Ziehau wrote:
>> Hi,
>> On DragonFlyBSD, TCP_KEEPIDLE and TCP_KEEPINTVL are in milliseconds
>> instead of seconds.  Following patch fixes this:
>> http://leaf.dragonflybsd.org/~sephe/ngx_keepalive.diff
> Thanks for the patch!
> Just curious: are there any reasons why these timers have a
> millisecond resolution and not compatible with other BSD's?

When I added TCP_KEEP* sockopts to DragonFlyBSD, I checked the unit of
TCP_KEEP* on various systems that had implemented them (FreeBSD did
not have that option at that time; not sure about NetBSD).  They are
using different unit, some use half-second (e.g. OpenVMS), some use 1
second (e.g. Linux); and there is no standard specifies which unit
should be used.  Another reason is that I want to keep the sockopts'
unit consistent w/ the sysctls' unit.  Well, and I actually used
TCP_KEEP* sockopts in my own project at that time, which requires
higher resolution TCP_KEEP* ;)

Best Regards,

Tomorrow Will Never Die

More information about the nginx-devel mailing list