Test tools for new network driver
Ben Hutchings
bhutchings at solarflare.com
Sat Aug 20 02:11:03 UTC 2011
On Fri, 2011-08-19 at 11:04 +0100, Ben Gray wrote:
> Hi,
>
> I'm not sure if this the right list to post to, but here goes ...
>
> I'm currently writing a driver for the SMSC LAN95xx range of USB to
> Ethernet adapter chips
> (http://www.smsc.com/index.php?tid=300&pid=135&tab=1). The basic RX/TX
> works and now I'm trying to get the H/W checksum offload working,
> however I've come across some problems with the H/W implementation, e.g.
> it doesn't work with small (<64 byte) packets.
>
> So I was wondering if anyone knows of any test tools I can use to
> fire all the different unusual sort of packets at the interface to see
> how the H/W csum reacts, i.e. runt packets, packets with IP options,
> IPv6 packets with extension headers, etc.
There are various commercial tools and test suites, and I would expect
that most vendors of network controllers and IP blocks have their own
test suites that attempt to cover this. I know Solarflare has used
tools from Oktet Labs (see <http://www.oktetlabs.ru/test_env.rhtml>)
among others.
> Another question I had was; is there a kernel function to generate
> a random MAC address ? Or is there a FreeBSD (or FOSS equivalent)
> Ethernet manufacturer ID I could use for randomly generated MAC addresses ?
[...]
You can use any (almost) any address with byte 0 bit 0 cleared (not
multicast) and byte 0 bit 1 set (locally assigned). I don't know
whether FreeBSD has a function for this, but Linux has one which just
gets 6 random bytes and then changes the first byte to conform to this.
There are a small number of old OUIs which should be avoided; see
<http://thread.gmane.org/gmane.linux.network/195545>.
Ben.
--
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
More information about the freebsd-net
mailing list