Increasing the granularity of internal timers in Bird?

Toke Høiland-Jørgensen toke at toke.dk
Mon Jun 5 18:53:02 CEST 2017


Hey

I have been looking at changing the internal timers in Bird to operate
at millisecond granularity instead of the current one-second steps. I
have two motivations for this:

- The Babel protocol specifies time in 10ms increments, and I want to be
  able to schedule things to match this.

- I have some ideas for experimenting with low latency route propagation
  that are not practical the current granularity.

Now, looking at the nest timer code, it seems to be quite straight
forward to change bird_time_t to represent milliseconds and adjust the
functions that use it accordingly (getting system time with millisecond
granularity is another matter; but I figure there can be a fallback with
rounding for systems that don't support that). However, before I start
hacking, I wanted to ask if (a) there is some fundamental reason why
this cannot be done, and if not if (b) you would accept patches to
this effect? :)

Thanks,

-Toke


More information about the Bird-users mailing list