Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jul 2008 15:15:50 +0200
From:      Erik Trulsson <ertr1013@student.uu.se>
To:        Bruce Evans <brde@optusnet.com.au>
Cc:        FreeBSD Net <freebsd-net@FreeBSD.org>, Andre Oppermann <andre@FreeBSD.org>, Ingo Flaschberger <if@xip.at>, Paul <paul@gtcomm.net>
Subject:   Re: Freebsd IP Forwarding performance (question, and some info) [7-stable, current, em, smp]
Message-ID:  <20080707131550.GA69202@owl.midgard.homeip.net>
In-Reply-To: <20080707213356.G7572@besplex.bde.org>
References:  <486D35A0.4000302@gtcomm.net> <alpine.LFD.1.10.0807041106591.19613@filebunker.xip.at> <486DF1A3.9000409@gtcomm.net> <alpine.LFD.1.10.0807041303490.20760@filebunker.xip.at> <486E65E6.3060301@gtcomm.net> <alpine.LFD.1.10.0807052356130.2145@filebunker.xip.at> <4871DB8E.5070903@freebsd.org> <20080707191918.B4703@besplex.bde.org> <4871FB66.1060406@freebsd.org> <20080707213356.G7572@besplex.bde.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jul 07, 2008 at 10:30:53PM +1000, Bruce Evans wrote:
> On Mon, 7 Jul 2008, Andre Oppermann wrote:
> 
> > Bruce Evans wrote:
> >> What are the other overheads?  I calculate 1.644Mpps counting the 
> >> inter-frame
> >> gap, with 64-byte packets and 64-header_size payloads.  If the 64 bytes
> >> is for the payload, then the max is much lower.
> >
> > The theoretical maximum at 64byte frames is 1,488,100.  I've looked
> > up my notes the 1.244Mpps number can be ajusted to 1.488Mpps.
> 
> Where is the extra?  I still get 1.644736 Mpps (10^9/(8*64+96)).
> 1.488095 is for 64 bits extra (10^9/(8*64+96+64)).

A standard ethernet frame (on the wire) consists of:
7 octets preamble
1 octet  Start Frame Delimiter
6 octets destination address
6 octets source address
2 octets length/type
46-1500 octets  data (+padding if needed)
4 octets Frame Check Sequence

Followed by (at least) 96 bits interFrameGap, before the next frame starts.

For minimal packet size this gives a maximum packet rate at 1Gbit/s of
1e9/((7+1+6+6+2+46+4)*8+96)/ = 1488095 packets/second

You probably missed the preamble and start frame delimiter in your
calculation.




-- 
<Insert your favourite quote here.>
Erik Trulsson
ertr1013@student.uu.se



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