EasyManua.ls Logo

Telos VX - The State of SIP, and Its Future; IAX as a SIP Alternative; Using VX with the Asterisk PBX

Telos VX
111 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
74 | Section 5
The State of SIP, and its Future
SIP is not often used as it was intended by its developers. Most PBXs that have SIP interfaces
don’t use SIP servers at their core. All use their own rough equivalents, designed independent-
ly. So what went awry? The SIP schemers were certainly far-ahead thinkers, who wanted their
protocol to support rich media, mobility, portability, sophisticated endpoints, etc. The problem
seems to have been a lack of a certain “practicality.” For example, consumer PC-to-PC VoIP
products needed to solve the problem of firewall and NAT traversal, which has been addressed
quite slowly within the SIP working groups. Meanwhile, Skype’s developers solved it quickly
and effectively. Then there is the problem of supporting all the features a vendor wants to
employ to differentiate its product. It’s unsurprisingly faster to just implement it your own way
rather than waiting for the idea to make its way through a committee, who might well not see
things your way.
At Telos, we faced this problem in the design of the VX system. We needed a lot of things
specific to the studio environment that are not supported in SIP’s structures. So we designed
our own protocols for use within the boundaries of our system. But we use SIP at the border of
the system to connect with other vendors’ products – and eventually to the Telco network. This
is just the strategy Cisco, Microsoft, and almost all PBXs vendors have followed.
And now this process is emerging as SIP’s great value. It’s the glue that ties systems together.
Studio systems can talk with PBXs for the first time. PBXs can talk with each other. And eventu-
ally they will all be able to talk to Telco networks, smoothly and fluently. SIP’s inventors got
something right.
IAX as a SIP Alternative
SIP is not the only game in town. The Inter-Asterisk eXchange (IAX) protocol is an alternative
to SIP for interconnections between both VoIP servers and for client-server communication.
IAX2 (as the current version is named) uses a single UDP data stream (usually on port 4569) to
communicate between endpoints, both for signaling and data. The voice traffic is transmitted
in-band, in contrast to SIP, which uses an out-of-band RTP stream for audio. IAX2 supports
multiplexing channels over a single link. When trunking, data from multiple calls are merged
into a single set of packets, meaning that one IP datagram can deliver control and audio for
more than one call, reducing the effective IP overhead without creating additional latency.
As IAX’s name indicates, it was invented by the Asterisk people as a way to trunk calls between
one Asterisk server and another. It has escaped from Asterisk and is now supported in a variety
of softswitches and by a few VoIP carriers. Its main advantage is its bandwidth efficiency and
simpler firewall configuration, since all traffic flows through a single port.
Using VX with the Asterisk PBX
Asterisk is a great way to provide extra flexibility and power to your VX installation. The
software is inexpensive or free and runs on a standard PC. It’s an open source project, having
been created by teams and individuals from around the world, often volunteers. Despite this,
we’ve found it to be reliable. At Telos we count on it daily to network our sites throughout the
world. A few VX installations are already using it. You’ll find that it’s a useful tool if you want
to do Interactive Voice Response systems, support on or-off-site VoIP telephones, call detail
recording, failover systems, ISDN PRI channel splitters, and such. With appropriate hardware,
Asterisk can also be used as a gateway. For example, you may need to peel a few channels
off of a PRI to send them over to the VX, while the others feed a PBX. An ISDN PRI card in an
Asterisk box and some configuration would get this done.

Table of Contents