Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Mar 2009 04:48:35 -0700 (PDT)
From:      Barney Cordoba <barney_cordoba@yahoo.com>
To:        Steve Bertrand <steve@ibctech.ca>
Cc:        isp@freebsd.org
Subject:   Re: ISPs?
Message-ID:  <808603.91207.qm@web63905.mail.re1.yahoo.com>
In-Reply-To: <49D15AC3.7060607@ibctech.ca>

next in thread | previous in thread | raw e-mail | index | archive | help




--- On Mon, 3/30/09, Steve Bertrand <steve@ibctech.ca> wrote:

> From: Steve Bertrand <steve@ibctech.ca>
> Subject: Re: ISPs?
> To: barney_cordoba@yahoo.com
> Cc: isp@freebsd.org
> Date: Monday, March 30, 2009, 7:50 PM
> Barney Cordoba wrote:
> >> From: Steve Bertrand <steve@ibctech.ca>
> 
> >>>> In production, at 0.00% interrupt,
> 686Mbps, <2%
> >> load, 133Kpps.
> >>> How many interfaces are you routing inbetween?
> >> Currently:
> >>
> >> - 7 physical 'em'
> >> - 6 loopback
> >> - 1 discard
> >> - 14 sub-ints off of the em devices
> >>
> > 
> > Obviously those load numbers are either incorrect or
> > you're leaving something out. What version of the 
> > OS are you running? How many cores? What are the
> values
> > of your idle threads?
> 
> Although the number of virtual interfaces has changed
> slightly since my
> original post:
> 
> CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3000.12-MHz
> 686-class CPU)
>   Origin = "GenuineIntel"  Id = 0xf65  Stepping =
> 5
>   Logical CPUs per core: 2
> real memory  = 2139025408 (2039 MB)
> avail memory = 2087784448 (1991 MB)
> 
> router# cat /var/run/dmesg.boot | grep em
> /var/run/dmesg.boot | grep Eth
> em0: Ethernet address: 00:60:e0:42:b1:76
> em1: Ethernet address: 00:60:e0:42:b1:77
> em2: Ethernet address: 00:60:e0:42:b1:78
> em3: Ethernet address: 00:60:e0:42:b1:79
> em4: Ethernet address: 00:60:e0:42:b1:7a
> em5: Ethernet address: 00:60:e0:42:b1:7b
> em6: Ethernet address: 00:60:e0:42:b1:7c
> 
> router# grep interface /usr/local/etc/quagga/*.conf
> 
> zebra.conf:interface disc0
> zebra.conf:interface em0
> zebra.conf:interface em1
> zebra.conf:interface em1.10
> zebra.conf:interface em1.11
> zebra.conf:interface em1.99
> zebra.conf:interface em2
> zebra.conf:interface em2.98
> zebra.conf:interface em3
> zebra.conf:interface em3.300
> zebra.conf:interface em4
> zebra.conf:interface em5
> zebra.conf:interface em5.107
> zebra.conf:interface em5.162
> zebra.conf:interface em5.163
> zebra.conf:interface em5.164
> zebra.conf:interface em5.303
> zebra.conf:interface em6
> zebra.conf:interface gif0
> zebra.conf:interface gif1
> zebra.conf:interface lo0
> zebra.conf:interface lo1
> zebra.conf:interface lo2
> zebra.conf:interface lo3
> zebra.conf:interface lo6
> zebra.conf:interface lo10
> 
> I can reproduce the statistics tomorrow. Just tell me
> exactly what
> output from what commands you are interested in.

uname would be useful, as you didn't mention what vers of FreeBSD  you
have.

run 'top -S' in FreeBSD 7 or 'top -SH' in FreeBSD 8. Look at the 
cpu idle threads, and also "other" threads that may show significant
usage. The numbers rarely add up as there are accounting issues. But
FreeBSD 7 doesn't account for interrupt usage the same as previous
versions. I never used 5 or 6 (mainly because they sucked) so I'm not
sure when it changed.

the em driver in 7 and 8 uses a newfangled concept of "interrupt filters" so you should see a queue task. But again, I'm not sure what version
it was changed.

Barney


      



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