Re: high resolution timer for packet timestamping

From: Uwe Zybell (uzybell@icangetyou.com)
Date: Wed Jan 16 2002 - 08:19:46 EST


On Tue, Jan 15, 2002 at 01:36:04PM -0800, Wilson Yeung wrote:
> I sent this to the more general linux-kernel mailing list, but perhaps
> this is a better forum for my question.
>
> This topic has been brought up before, but I'm wondering where the current
> state of affairs is on this.
>
> I have a need to perform high resolution timestamping on received packets
> (traffic measurement). I realize that interrupt latency may prevent me
> from getting a truly accurate timestamp, but best effort here seems to be
> better than not-so-best effort.
>
> In the netif_rx() function of net/core/dev.c, the lines:
>
> if (skb->stamp.tv_sec == 0)
> get_fast_time(&skb->stamp);
>
> could be replaced with something like:
>
> if (hires_rx_timestamp)
> do_gettimeofday(&skb->stamp);
> else
> get_fast_time(&skb->stamp);
>
> where, say, "hires_rx_timestamp" is a sysctl tunable variable exposed via
> /proc/sys/net/core/hires_rx_timestamp.
>
> One of the drawbacks of this approach (I think) is that the runtime
> configurable parameter has system level performance implications rather
> than socket specific performance implications.

Could you use the infrastructure for the ICMP-Messages TIMESTAMP_REQUEST
and TIMESTAMP_REPLY?
>
> Alternatively, the high res timestamp can be done in the protocol layer,
> but this makes it even further away from the device driver.
It is not important how far away from the driver it is located, but if the
runtime to this place is (relatively) constant. That would give a constant
offset in your measurements, but I hope you only need differences.
>
> I'm at a bit of a loss regarding what the best approach is. Would like
> some feedback. I'd be happy to submit a proper patch.
>
> Thanks.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-net" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
-
To unsubscribe from this list: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html



This archive was generated by hypermail 2b29 : Wed Jan 23 2002 - 21:01:12 EST