receive time stamps - current status
hmurray at megapathdsl.net
Sun Jun 11 10:07:42 UTC 2017
I remove the SO_BINTIME mode. It's only supported by FreeBSD and they don't
support it for IPv6. They do support SO_TIMESTAMP.
The downside of that is reduced resolution on the time stamps. BINTIME gives
32 bit fractions of a second while TIMESTAMP gives microseconds (roughly 20
bits). We could get the extra resolution for IPv4, but the extra complexity
of the code doesn't seem worth it.
The current code assumes that we have either SO_TIMESTAMP or SO_TIMESTAMPNS.
So far SO_TIMESTAMPNS is Linux only. Configure doesn't check. It should die
at build time.
So far, Solaris is the only OS I know of where we have encountered troubles.
See Issue #342
I'm assuming gcc on Solaris will get fixed.
The current code will require intervention when we discover an OS/environment
where it doesn't work. So far, with a sample size of 1 (or maybe 1/2), the
solution is to fix the waf recipe. When we get a test case where that
doesn't work we can figure out how to handle it.
It would not be hard to make things build and run without receive time
stamps. It might work poorly under heavy load, but we've been running that
way for 6 months and nobody complained.
I think time stamps are important so I haven't implemented any way to run
without them. If we need that, one option would be to add a configure option
such as --disable-timestamps.
These are my opinions. I hate spam.
More information about the devel