Introduction to Asterisk, the Linux SoftPBX

Asterisk is a SoftPBX that uses the concept of Free Software (GPL) to perform functions of a PBX. Digium is the company that promotes Asterisk. This company invests in the development of the source code and hardware development for low cost phone that works with Asterisk.

Asterisk can be run on platform Linux and other Unix platforms with or without hardware connected to the PSTN. [Andrade, 2006]

Asterisk as Linux shares the passion of a great community of developers and organizations that facilitate the development of the project.
  • The Linux Comunity formed by a community of developers led by Mark Spencer.
  • The Asterisk Mailing List created by a group interest list, the official site is, lists most important are the Asterisk-Biz, Asterisk-dev, Asterisk-Users and Asterisk-BSD.
  • Asterisk Wiki, site that serves as a reference for most people starting in the world of Asterisk, by the large amount of documentation.
  • IRC Channels Asterisk, Asterisk community maintains an open IRC channel on
  • Asterisk Documentation Project, started by Leif Madsen and Jared Smith, now has the support of a community, part of the effort is based on the publication of information.

Thanks to the support of many people Asterisk includes many resources were only found in unified messaging systems:
  • Music on hold for queuing customers, supporting media streaming mp3.
  • Integration to synthesize conversation (text-to-speech).
  • Call Detail Record for billing system integration.
  • Integration with speech recognition.
  • Multiparty conferences, or simply conference, allows more than two sides to make a call.
  • Call Accounting, which allows us to know who is on a call and who is being called.
  • Ability to interface with linear normal telephone, ISDN Basic Access (2B + D) and primary (30B + D).

Open architecture philosophy

One of the main problems in the telecommunications industry is the refusal to cooperate with each other. Large telecommunications companies have endured for nearly a hundred years, the concept of proprietary systems is based on the desire to beat the competition, adding features that no more support. For example, although firms report using standard protocols, one hopes to connect a Cisco phone to a Nortel switch or integrate an Avaya voicemail via IP with Siemens PBX. [Meggelen, 2007]

In the computer industry, things are different, 20 years ago if someone bought an IBM, was to acquire a network and IBM terminals. Currently the same IBM server can communicate with a Dell terminal using a Cisco network and run any Linux distribution.

However, some solutions such as Asterisk, has successfully demonstrated that it can support the interconnection with IP Phones, such as Cisco, Nortel, Avaya, Nortel, among others. No other PBX system in the world able to make this claim. [Meggelen, 2007]

Architecture of Asterisk: Asterisk uses server CPU to process voice channels instead of having a digital signal processor (DSP) dedicated to each channel. This allows for lower cost hardware, however you must preserve maximum CPU.

Channels: a channel is equivalent to a telephone line of a digital circuit digital voice. This generally consists of an analog signal or a combination of codec and signaling protocol. Asterisk supports the following channels:
  • Agent: An agent channel DAC.
  • Console: Linux console client.
  • H.323: One of the oldest VoIP protocols.
  • IAX and IAX2: Inter-AsteriskExchange Protocol, Asterisk proprietary protocol
  • MGCP: Media Gateway Control Protocol, VoIP protocol
  • Skinny: Driver to control Cisco IP phones.
  • SIP VoIP protocol common.
  • VOFR: Voice over Frame-Relay of Adtran
  • VPB: Telephone Lines for Voicetronix plates.
  • ZAP: To connect telephones and Digium lines.

Codecs and Codec converters supported by Asterisk

In the case of telephony is important to place as many calls as possible in a data link, Asterisk supports the following codecs:
  • G.711 ulaw (used in U.S.) - 64 Kbps
  • G.711 alaw (used in many countries) - 64 Kbps
  • G.726 - 32 Kbps Asterisk1.0.3, 16/24/32/40 Kbps
  • Need G.729A license acquisition.
  • GSM - (12-13 Kbps)
  • iLBC - (15Kbps)
  • LPC10 - (2.5 Kbps)
  • *Speex - (2.15-44.2 Kbps)


Post a Comment