Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 May 2003 18:54:43 -0400
From:      Don Bowman <don@sandvine.com>
To:        'Fabien THOMAS' <fabien.thomas@wanadoo.fr>, freebsd-net@freebsd.org
Subject:   RE: Kernel packet generator
Message-ID:  <FE045D4D9F7AED4CBFF1B3B813C8533701B36851@mail.sandvine.com>

next in thread | raw e-mail | index | archive | help
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_000_01C31FEB.F7D47F20
Content-Type: text/plain;
	charset="iso-8859-1"

From: Fabien THOMAS [mailto:fabien.thomas@netasq.com]
> Sent: May 21, 2003 18:51
> To: freebsd-net@freebsd.org
> Subject: Kernel packet generator
> 
> 
> Hi,
> 
> I'm trying to find a tools that can generate / receive high UDP packet
> count at kernel level (64bytes packet).
> 
> While browsing BSD forum a while ago i've seen some discution about
> that.
> 
> Perhaps someome will remember better than me ? :)
> 
> fabien

A slightly older version was checked into FreeBSD on Oct 31 2002 and
converted for -current.  Attached is what we're running.  Feel free to
forward me any bug reports, especially if they included fixes.

This is a netgraph module that we have code in TCL to drive to create
high transmit rate for arbitrary packets. You can achieve about
half of gigabit rate for 64-byte packets with this on a broadcom
bge or intel em card [about 800Kpps].




------_=_NextPart_000_01C31FEB.F7D47F20
Content-Type: application/octet-stream;
	name="ng_source.tar.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="ng_source.tar.gz"

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
/rP/7D/7z/6z/+w/+88f6fMfLbfCeACgAAA=

------_=_NextPart_000_01C31FEB.F7D47F20--



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