Vous êtes sur la page 1sur 25

INTRODUCTION TO

VoIP
Elastix
Certification
2012, PALOSANTO SOLUTIONS All rights reserved. This documentation is
confidential and its intellectual property belongs to PaloSanto Solutions. Any
unauthorized use, reproduction, preparation of derivative works, performance, or
display of this document, or software represented by this document, without the
express written permission of PaloSanto Solutions is strictly prohibited. PaloSanto
Solutions, Elastix and Elastix logo design, trademarks and/or service marks belongs
to Megatelcon S.A. all other trademarks, service marks, and trade names are owned
by their respective companies.

What is VoIP?
Voice over IP or VoIP consists in transmitting voice
over an IP protocol.
This is a very broad concept and there are many
protocol alternatives. It is truly a protocol soup.
Voice is packetized so it can be transmitted over an IP
network.
The IP protocol was not designed specifically for
transporting voice.

VoIP: a protocol soup

IP Protocol
One of the most well-known protocols
Its name comes from Internet Protocol.
This protocol offers a service with no guarantees
and is also referred to as best effort.
The packets can arrive out of order, and be reordered
at the destination.
Some packets can even be lost on the way.
This disorder and loss of packets can affect the quality
of the voice.
Despite all of this, intelligent ways have been found to
solve these problems in the best way possible.

IP address (1)
It's a unique number that identifies a host connected
to an IP network.
It's made up of 32 bits, or 4 octets. In practice a
notation is used in which each octet is translated into
decimal, and separated with a period. An example of
an IP address is 130.5.5.26.
An IP address is composed in two parts: One identifies
the host, and the other identifies the network to which
that host belongs.
To find these parts another parameter is used, called a
network mask.

IP address (2)
The network mask is a 32 bit binary number that is
also represented in a notation that is similar to the IP
address.
It begins with ones and continues this way until it
reaches a number of ones equal to the portion of the
IP address that corresponds to the network.

IP address (3)
Therefore, in the previous example we obtain an IP
address of 130.5.5.26 with a mask of 255.255.255.0
belonging to the 130.5.5.0 network.
The previous mask was a 24 bit mask, since there
were 24 ones.
Once the network where the host is located is known it
is easier to send the IP packets to their destination.
Routers store tables of routes or rules on how to find
other networks

IP Packets (1)
An IP packet contains all the necessary information to
arrive to its destination.
It can be divided into two parts: the header and the
payload.
The header contains information that allows the
packet to be delivered to its destination, and the
payload retrieved.
This header decreases slightly the quantity of
information that can be transported since it occupies
space.
The payload can be used to encapsulate other
protocols like UDP or TCP.

IP Packets (2)

Header of an IP packet

IP routing
Routers are necessary to direct packets on its way to a
destination.
Routers are devices with tables of routes.
This table of routes is made up of destination
networks, and for each one the IP address of the
router to reach them.
The router that provides a route to external networks
is called a gateway.
The IP packet that arrives at the router is examined to
see what network it belongs to, the proper route is
chosen, and the packet it is sent there.

TCP Protocol (1)


Transport Control Protocol
It is an IP protocol that allows packet retransmission,
packet
order
management,
and
receipt
acknowledgement.
To achieve this goal, TCP carries additional information
that adds weight to the packet. That is why it is not
recommended for real time applications like voice.
However, it can work for voice signaling.

TCP Protocol (2)


TCP introduces the concept of port.
A port is an abstraction that allows us to relate flows
of data with services on the network.
For example, port 80 corresponds to the Web service,
or HTTP protocol.

UDP Protocol
UDP (User Datagram Protocol) is another transport
protocol.
It divides information into packets called datagrams.
This protocol doesn't care if the data arrives with
errors or if it doesnt arrive at all. That is the main
difference with TCP.
This is why it introduces little extra weight to the IP
packet which makes it ideal for real-time applications
like voice.

VoIP Signaling
As in traditional telephony, it's necessary to signalize
VoIP calls.
There are some alternatives in signaling protocols, like
SIP, H.323, MGCP, IAX2, and others.
The most popular protocols on Asterisk are SIP and
IAX2.
Regarding SIP or H.323, many people confuse them
and think that voice is transmitted through this
protocol, but it is only used for signaling.

VoIP Transport
RTP means Realtime Transport Protocol.
The RTP protocol is the one that really transports
encoded audio.
RTP is transported over UDP.
Using SIP, audio is transmitted over RTP after the
network port between Elastix and the endpoint /
telephone is negotiated.

Relationship between protocols

Voice codification
Voice is adequately encoded for transmission.
After encoding, it is transmitted over RTP.
Encoding can serve to reduce the chance of error, as
well as to minimize the amount of bandwidth used.
To encode this data, an algorithm called a codec is
used.
There are several different codecs, each has pros and
cons.

G.711
One of the most widely used codecs of all time.
Comes from the ITU-T standard that was released in
1972.
Comes in two types called -Law (or u-law, primarily
used in Europe) and a-Law (used in the USA).
Advantage 1: Good voice quality since it uses 64kbit/s,
that is a sampling of 8 bits at 8kHz.
Advantage 2: It is already enabled in Elastix, it's not
necessary to pay for it.
Disadvantage: It uses a lot of bandwidth. It is not
recommended for connections with low bandwidth.

G.729
Also a very popular codec.
Licensed by Intel.
Advantage: It compresses voice very well without a
significant loss of quality.
Disadvantage 1: It is licensed per voice channel,
approximately USD$10 per channel.
Disadvantage 2: Voice quality is lower than than G.711

GSM
It is related to the cellular telephony standard GSM
(Global System for Mobile communications), hence its
name.
It compresses voice very well, with a quality similar to
cell phones.
It is enabled by default in Elastix.
Good as an alternative to G.729, although its audio
quality is slightly inferior to G.729.

Protocol overload (1)


The different protocols increase the total amount of data
transmitted, in addition to the actual voice payload.
Headers are added for Ethernet, IP, TCP/UDP, RTP.
That makes the actual bandwidth for transmitting voice
to be more than just what is required for the codec.
For example, to transmit voice using G.711, in theory we
should use 64Kbps (the payload of the codec), but we
are really using 95.2Kbps of BW.
In codecs with more compression, overload is even more
significant (percentage-wise).

Protocol overload (2)

Protocol overload (3)


Let's calculate the bandwidth for G.711

Bytes transmitted every 20ms

38 + 20 + 12 + 8 + 160 = 238 bytes

Bits transmitted every 20ms

238 bytes * 8 bits/byte = 1904 bits

Bits transmitted every second

1904 bits/frame * 50 frames/seg. = 95,200 bits/second =


95.2Kbps!

Comparing Codecs

Table for the actual bandwidth for common codecs


(using Ethernet):
Codec

BW codec

BW actual (Ethernet)

G.711

64 Kbps

95.2 Kbps

G.726*

32 Kbps

63.2 Kbps

iLBC*

15.2 Kbps

46.4 Kbps

GSM

13 Kbps

43.7 Kbps

8 Kbps

39.2 Kbps

G.729A

* For these codecs, multiple data rates may be used.

More at:

www.elastixbook.
com

Vous aimerez peut-être aussi