Like every other website on the planet, SmallNetBuilder uses cookies. Our cookies track login status, but we only allow admins to log in anyway, so those don't apply to you. Any other cookies you pick up during your visit come from advertisers, which we don't control.
If you continue to use the site, you agree to tolerate our use of cookies. Thank you!

Router Charts

Click for Router Charts

Router Ranker

Click for Router Ranker

NAS Charts

Click for NAS Charts

NAS Ranker

Click for NAS Ranker

More Tools

Click for More Tools


Asterisk logo

Selecting hardware appropriate for a particular Asterisk installation has been a topic of discussion ever since the emergence of Asterisk. This typically centers around choosing hardware to handle n users or x concurrent calls. Often the focus is on how to scale up to the greatest number of users for a given server. However, there can be different but related considerations as we consider ever smaller applications.

In various circles I’ve lately witnessed a minor spike in interest in small form factor Asterisk systems. I have found it curious to survey the various hardware platforms that people are considering when creating their own DIY Asterisk Appliances. To establish some perspective on this I recently posted my own history of using Asterisk my own little Asterisk retrospective.

There are quite a range of small computing platforms available to the enthusiast seeking to tinker with Asterisk. It seemed to me that an overview of such hardware and related resources would be helpful.

Hardware that can be used for Asterisk Appliances

Hardware that can be used for Asterisk Appliances

For my purposes I’ll only consider generic platforms suitable for a DIY project , not the commercially offered embedded Asterisk devices, of which there are many. These small host platforms tend to be in the $50-$300 range which makes them approachable for hobbyists, home users and some small businesses.

To begin, you should know that the VoIP Wiki has a good deal of info about selecting hardware on the basis of technical specs like CPU speed, memory, disk, etc. Some of the info there is quite dated, but there may be some value to know that in the technological dark ages people deployed Asterisk on a 133 MHz Pentium platform.

While my focus is on embedded Asterisk appliances these will have much in common with suitable hosts for Freeswitch, Kamailio, Yate or any other open source telephony software.

Choosing Processors

Before we dive into looking at the hardware, it might be helpful to understand a couple of things about the software. You may be installing Asterisk from source code. That implies that you will be compiling the binary executable on your target platform. In general this is a simple task, but there may be a couple of gotchas; like the CPU, the compiler and link libraries.

Asterisk itself can be compiled on a variety of target platforms. You'll find ports of Asterisk on various processor architectures including; x86-32, x86-64, ARM, SPARC, Blackfin, Xscale, PowerPC, etc.

CPUs for DIY Asterisk boxes

CPUs for DIY Asterisk boxes

However, there may be some related bits of code that you will not be able to compile into your installation. The most common are Digium's G.729a codec and the Skype-For-Asterisk module. Both of these are proprietary, licensed code that is delivered as a binary executable supporting only x86 processors. The source code is not available, so you cannot compile them for your target platform.

So if you intend to use either of these modules, you should constrain your platform choice to something x86 based.

GCC vs uClibc

Even if you settle upon an x86 based platform, you may find yourself not able to use a module because of incompatibility with a link library or compiler. Some Asterisk distributions don't use the common gcc compiler and libraries. In particular, the Astlinux project long ago made a decision to use uClibc. Theirs is an embedded distro and uClibc offers some specific advantages for such systems.

In moving to uClibc, the Astlinux folks found that they could no longer run Digium's G.729a codec. To run the G.729a codec in Astlinux, the project requires that Digium compile a new release of the codec that is compatible with uClibc. While that has been discussed, it has not happened. So Astlinux users cannot run Digium's G.729a codec, even on x86-based hardware.

With these few caveats out of the way, here's a list of possible platforms that I've compiled for consideration, listed in order of scale from smallest to largest:

  1. Gumstix
  2. The Sheeva Plug (Pogo Plug)
  3. The Seagate Dockstar
  4. Consumer router platforms (Asus, Linksys, NETGEAR, etc)
  5. Thin clients
  6. Embedded PC systems (Soekris, ALIX, etc)
  7. Net-top systems
Wi-Fi System Tools
Check out our Wi-Fi System Charts, Ranker and Finder!

Support Us!

If you like what we do and want to thank us, just buy something on Amazon. We'll get a small commission on anything you buy. Thanks!

Over In The Forums

Hello Im setting up a openvpn server on a remote asus router (AC56R). Router ip is openvpn server ip is is working o...
Hi,My IP WAN is ok... ...but the Server Certificate shows my LOCAL IP like this: View attachment 18667Lookup its ok for DDNS:...IP Wan invalid for H...
Is this a service account or can it be deleted? How did it get there? It's not a SAMBA, FTP user.nas:x:100:100:nas:/dev/null:/dev/nullnobody:x:65534:6...
Hi guysI know 4 free openvpn providers1. or .me / .se / .it/ .im/ .eu/ Tcpvpn.com3. Vpnbook.com4. Freeopenvpn.orgIs anybody knows...
Hi would like to ask do anyone know why i sometimes cant access my touter setting page?router.asus.comThanks for the helpSent from my iPhone using Tap...

Don't Miss These

  • 1
  • 2
  • 3