Wallclock vs monotonic time in v6 expiry times?

Alex Yong annonymouse+freebsd at gmail.com
Wed Feb 20 15:16:27 UTC 2013


Thanks Chuck for the quick response,

On 19 February 2013 18:51, Chuck Swiger <cswiger at mac.com> wrote:

>
> Sequence #s, retry timers, etc do better if based off of wall clock time
> than if based off of uptime because realtime persists in moving forward but
> uptime gets reset if the host crashes/reboots.
>
> RFC-793 discusses "Quiet Time" concept for TCP, but it applies elsewhere.
>
>
I take your point that it doesn't hurt to use wall clock time always
assuming sensible clock stability on your system, as with Quiet Time
optimizations and DHCP leases (to pick two examples) anything else wouldn't
make sense.  However is there any specific reason in the case of v6
prefixes and default routers to do this?  As as far as I can tell the
kernel does not store these expiry times in non-volatile storage, and
neither does rtsold.

I don't think it matters if it's monotonic time or not here, as long as you
do the appropriate conversion when passing these values up to userland.  If
you wanted to persist prefixes/default routers across a crash/boot you
could do all of this in userland with a modified rtsold or similar, much
like with DHCP leases.

Or am I missing something?

AlexY


More information about the freebsd-net mailing list