[asterisk-users] asterisk on mini-itx

Gordon Henderson gordon+asterisk at drogon.net
Sat Mar 10 13:25:09 MST 2007


On Sat, 10 Mar 2007, Mail Lists wrote:

> I've had a look around and I think I have settled on one of the VIA EPIA
> fanless boards. Does anyone have any experience with these running asterisk
> as far as performance and reliability is concerned? Has anyone run asterisk
> with any compressed codecs on this setup?

I've built several systems based on this motherboard (the 1GHz fanless 
one) Compressed codecs are fine - as long as you aren't transcoding ;-) I 
figured I could push 30 non transcoded calls through one, but I've never 
had the ability to fully test it out. The max. I had going on one system 
was 20 calls.

5 calls to music on hold (where it's transcoding from the GSM moh file to 
G711 is causing my R&D box (wich has a 533MHz VIA processor with 64Kb 
cache) is using between 5 and 12% CPU. I'd expect one of my 1Ghz boxes to 
hardly notice this at all.

Make sure you compile asterisk in i586 mode - it's in the Makefile in 
1.2.x. It'll crash otherwise as the VIA processors are lacking some vital 
MMX instructions.

> I am going to TRY to run the system from flash memory one way or another - I
> realize the hoops I might have to jump through to prevent a large number of
> read/write cycles but I'd really like to have the whole thing solid state...
> Maybe someone has a better idea regarding program storage?

Boot it off flash and have it load an initrd.gz into RAM. Everything will 
run entirely from RAM - no writes to the flash at all! I can get 
everything inside a 48MB flash drive, but I use 64MB ones which gives me 
space to store configs, etc.. (of-course, I make it sound so simple ;-) 
but I'd already worked this out some years back for a diskless router 
project)

I do have a partition on the flash that does get written - rarely. It 
holds a copy of the astdb file and some other local configuration things - 
like sip/iax accounts, etc. I have a cron job that sees it the astdb file 
has been touched and if so, I dump it to flash. There is a couple of 
minutes window of failure here though, so a user could do the star code to 
set his phone on divert, then system get power cycled, and that setting 
might be lost... I can live with that.

I keep voicemail on a 2nd flash IDE device mounted as ext2 (not 3 as ext3 
writes regularly!) and force the fsck at boot time if it's dirty - I'd 
rather lose all voicemail than have it dump itself into single user mode 
waiting for keyboard input... (your thoughts here might be different :)

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/ram0             124M   67M   58M  54% /
tmpfs                 125M     0  125M   0% /dev/shm
/dev/hdc2              60M  894K   59M   2% /data

This box has 256MB of RAM. Asterisk 1.2.16, zaptel 1.2.15. It's running 
apache+php, sendmail, and asterisk. There is no perl interpreter, as I've 
currently no need for it. (and it's about 10MB unless I squeeze stuff out 
of it!)

> Also, I would really like to run this as a router/firewall appliance as well
> so that that the box can sit on a public IP if the client only has one. For
> this reason I kind of have my heart set on openbsd. The routing and firewall
> utilities on openbsd are very simple to configure and easy to use. Does
> anyone know what limitations asterisk might have on openbsd (besides lack of
> zaptel.. ) ? I have run asterisk 1.2.? on openbsd before and found it worked
> pretty well.

I run similar motherboards as routers, booting off flash too. Also running 
Linux, but then I find the Linux firewall an easy thing to work with for 
most simple cases.

Watch your interrupts - especially if you're plugging in a 2nd Ethernet 
card and a TDM card. The VIA motherboard which has 2 Ethernet ports has a 
processor with only 64MB of cache ram. The ones I'm using have 128KB 
cache.

> Failing that I suppose I would settle for running the routing/firewalling on
> linux. I've just found the linux networking tools very awkward up until now
> - perhaps someone know of a linux distribution - or tool  - that makes
> routing/firewall/NAT as painless as on openbsd? Maybe I just need to sit
> down for a day and learn the tool properly ;)

Drop me an email and I'll send you a simple shell script to setup a basic 
firewall, do nat, etc.

I'd probably not recomend running the router/firewall on the same box as 
asterisk though...

Gordon


More information about the asterisk-users mailing list