Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Jul 2006 19:20:01 +0000
From:      "Poul-Henning Kamp" <phk@phk.freebsd.dk>
To:        David Malone <dwmalone@maths.tcd.ie>
Cc:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, "Christian S.J. Peron" <csjp@FreeBSD.org>, cvs-all@FreeBSD.org, Sam Leffler <sam@errno.com>, Jung-uk Kim <jkim@FreeBSD.org>
Subject:   Re: cvs commit: src/sys/net bpf.c 
Message-ID:  <11633.1153855201@critter.freebsd.dk>
In-Reply-To: Your message of "Tue, 25 Jul 2006 20:01:10 %2B0100." <200607252001.aa18647@salmon.maths.tcd.ie> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <200607252001.aa18647@salmon.maths.tcd.ie>, David Malone writes:
>> > libpcap does not need to be modified; it works already for
>> > wireless. The fact that the DLT is named DLT_IEEE802_11_RADIO is a
>> > bit of a misnomer; it's not entirely 802.11-specific.
>
>> Ah, you mean we just exploit DLT_IEEE802_11_RADIO.  Hmm...  How about 
>> processing overhead?  Can we synchronize the timestamping with system 
>> time?
>
>It sounds to me like a reasonable thing to do would be to pass up
>a raw version of the timestamp (as returned by the hardware).

You can only do that for a very limited time.  To make it work for 
more than a fraction of a second you would need to grab the following data:

	timecounter reading	timehands->th_counter->tc_gettimecount()
	timecounter width	timehands->th_counter->tc_counter_mask
	reference count		timehands->th_offset_count
	reference timestamp	timehands->th_offset
	scaling factor		timehands->th_scale
	UTC offset		boottimebin

In total we're talking 4+4+4+12+8+12 bytes = 44 bytes.

At the expense of a subtraction and an AND, you can save 8 bytes
by storing only the masked counter delta instead of the raw values.

At the expense of a 96 bit addition, you can add the utc offset
to the boottimebin, and save another 12 bytes.

That would bring it down to 4+12+8 = 24 bytes.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?11633.1153855201>