VoIP: Lets Make it Happen
Kevin McMahon
Final Term Paper for:
MSIT 640
Instructor: Jack Ligon
Due:
Abstract
Voice
over Internet Protocol (VoIP) is one of the more
exciting features that could become available on the Internet. It allows the Internet infrastructure to
replace the Public Switched Telephone Network (PSTN) for the use of
telephone-based communications.
Currently, the technology required for VoIP
has been created but is not yet readily available and in place for VoIP to reach widespread use. We will examine why VoIP
is a good idea as well as what is necessary to make it viable and available for
everyone; so that everyone can take advantage of the many benefits.
Introduction
Currently
there are two major networks, with some overlap, in the
The Public Switched Telephone Network
The
PSTN has 3 functions. Its original
design was to facilitate telephone communications between 2 individuals; this
it does and it does well. Also, parts of
the Internet are interconnected using leased lines that are part of the PSTN;
this is the overlap mentioned previously.
Finally, for many people, the PSTN still provides the “Last Mile”
connection from their home to the Internet.
Telephone
calls are made up of two consistent data flows, one in each direction. The data, in this case, is the voice (and
other background noise) of the two people involved in the call. The nature of voice data is such that it
requires a constant amount of bandwidth to transmit; from the start of the call
to the finish of the call, and from one call to another, the data rate
requirements do not change. This
consistency is why the PSTN was designed as a circuit based system. Here, a connection is set up from point A to
point B that connects the two users, providing exactly the data
requirements. As soon as the connection
is no longer needed, it is terminated and the resources that were allotted to
the connection are put back on the available stack for other callers to
use. The underlying network knows the
requirements for each call, and it knows what resources it has available. Whenever a phone number is dialed, the
required resources are compared to the available resources and if there is enough
available, the call goes through; if the resources are not available, a
“circuits busy” message is returned.
Originally
the voice data was totally analog; variations in current traveled over wires
where it was reconverted into sound. In
today’s world, the voice data leaves the user’s house in analog form and is
sampled and quantized into digital format at the telephone office. It is then multiplexed and transmitted over
high-speed data lines where it is de-multiplexed, reconverted to an analog signal
and transmitted over the wires to the end user.
The multiplexing process involves breaking the continuous call data into
packets; these packets are then placed on the high-speed lines at specific
intervals. As mentioned above, the data
rate required for voice data is consistent; since we are now breaking our
stream of data into packets, we are producing a constant amount of packets
every second. Since we know ahead of
time how many packets per second to expect we can allot the correct amount of
“slots” on our multiplexed conveyor belt.
The number of packets per seconds will neither increase nor decrease.
The Internet
The
Internet is an example of a Packet-Switched network. In a packet-switched network, unlike the
PSTN, there is no physical circuit set up between two users that wish to communicate
(although a virtual circuit may be setup). The Internet is comprised of many different
proprietary networks, some large and some small. These networks, often of different types,
communicate using Internet Protocol (IP).
The users in this type of network communicate using a system similar to
that of the postal service. Each message
to be sent is first broken up into many smaller packets. Each packet is then labeled with a “to” and a
“from” address. Each packet traverses
the network alone, and is then re-assembled at the receiving end.
Postal
addresses are broken into several parts: the recipient, the street address, and
the city, state and zip code. Each part
is successively narrower in scope and thus plays a different role in getting
the letter to its destination. First,
the zip code (which is really a numeric translation of the city and state) is
examined so that the closest post office to the address can be determined and
the letter is sent there. Once the
letter is at the local post office, the street address is examined and it is
placed on a truck and delivered to the destination address. Once the letter has arrived at its
destination address, the recipient name designation determines to which occupant
the letter belongs (of the many possible occupants at that address).
Much like
mailboxes, all connections to an IP network are designated by their IP
address. The IP address works in a
similar manner as a postal address; it starts off general and gets successively
more specific until it identifies the specific user. When one computer needs to send data to
another computer over the Internet, it must encapsulate that data into an IP
packet (other network specific packets may be inside the IP Packet to be
unpacked by the destination network).
Once this IP packet reaches the nearest router (like a post office) the
router examines the network ID portion of the destination IP address to
determine if that router is directly attached to the network to which the
packet is destined. If it is, then the
rest of the address can be resolved to determine which local address the packet
needs to be forwarded to. If it is not
directly attached to the destination host, then a chart must be consulted to
determine the next “hop” on the packet’s journey. The packet will then be forwarded to the next
hop, which is simply one router closer to a router connected to the destination
host (Leon-Garcia & Widjaja, 2000).
Unlike
the data traveling over the PSTN, the data traveling across the Internet is not
consistent. Packets are generally not
created in a consistent manner; a user will usually request a web page, and
then read that page before requesting another.
This allows for downtime between transmissions when no data belonging to
that user is on the network; with the PSTN even when the users are not talking,
the same number of packets are still traversing the network to be translated at
the other end as dead air. The PSTN,
traditionally, (there is now three-way calling) only allows two users to occupy
the circuit at one time, but since the Internet is not circuit based, packets
from one user can be traversing the network to an almost unlimited number of
destinations.
The Last Mile
The “last
mile” is the connection between an Internet Service Provider (ISP) and the
user’s home. Currently the most common
connection for access to the Internet is a 56K modem, which transmits data over
the PSTN until it reaches the ISP and is then on the Internet. The two main problems with this last mile
connection are wasted bandwidth and data rate.
Even though the backbone of the PSTN is comprised of very high-speed
fiber connections, the lines between the user’s home phone and the phone
company office are still largely unchanged; it is still comprised of 2 copper
wires. These wires form a circuit
connection with a constant conveyor belt for data. Unfortunately since the copper wires are not
high quality this provides a very small data rate. With today’s emphasis on multimedia this
creates a problem. Also, the constant
conveyor wastes bandwidth because Internet data is very bursty;
there are periods of no data transfer followed by periods of rapid data
transfer. During the slow periods, the
user is still paying for the whole bandwidth even though it is not being used.
Advantages of VoIP
One Network
As
we have seen above, the two major networks both serve their function well. Also, as we can see from the description of
the last mile, many people still use the PSTN as an access point, or gateway,
to the Internet, but this is changing.
Cable providers and satellite providers are now offering high-speed
access to the Internet. Eventually, it
is conceivable if not inevitable, that everyone will have some form of
high-speed connection to the Internet that does not rely on the PSTN. This will result in the emergence of two
autonomous networks, where neither one is relying on the other. If and when this becomes the case, the
question will be: Why do we need two networks?
Can one of these networks, and its associated costs, be eliminated? The answer is yes.
We
have already seen the Internet grow up alongside the PSTN. If the PSTN could have performed the services
of the Internet well, the Internet would not have been formed. It is clear, then, that if one network were to
replace the other, it would have to be the Internet. The main function of the PSTN is to provide
real-time voice communications; this is what Voice over Internet Protocol (VoIP) technology provides utilizing the Internet.
Having
only one integrated network would have many advantages. Right off the top, the infrastructure
requirement is reduced. Instead of
having a separate voice and data connection to every house or business we could
manage by having only one high-speed connection that served all purposes. Assuming the same connection carried the
user’s television (cable or satellite) it would be the only communication
wire(s) that would need to be laid. This
would make it easier to build new apartment buildings and office buildings; if
the end user desired a satellite connection, like DirecTV, no communications
wires at all would need to be connected to their residence.
Having
one unified network could also improve e-commerce. Currently when you are looking at an online
catalog and have some question you have to email customer service, then
wait. The return time for a question
like this, though much better than traditional postal mail, can be painfully
slow. Once you finally get a response,
if you are still interested, you have to return to the site and find the item
again; this is terribly inefficient. If
there was a convergence of voice and web applications, you could simply click a
link on the website and be instantly connected with someone who can quickly
resolve your question and complete the sale (Cyganski
& Orr, 2001).
Although
the one network scheme is not currently available, some private companies have
combined their data and voice networks into a single network to take advantage
of VoIP within their proprietary network. This can provide significant cost
savings. Most medium to large companies
have a phone network outside of the PSTN on their property; they will have some
extension based system to ease calling within the company and to direct
external calls. One company, Bayley Construction, which has two main offices in
Long Distance Charges
As
we saw in the Bayley example, by using their
proprietary network to communicate, they eliminated inter-office long distance
charges. They managed to save over two
thousand dollars per month on long distance; the larger the company is, the
more potential savings they have by combining their networks. VoIP has even
greater potential over the public Internet.
With a network convergence you would no longer have to pay the phone
company as well as an ISP to keep you connected to both networks; although it’s
possible that the price for the single network connection will be a little
higher than either separate connection is now.
Once you are connected though, whether your call is to the computer next
door, or to a computer in
Requirements of Voice Data
Voice
data does not have the same requirements as the normal packet data that the
Internet grew around; web pages and photographs do not have a real-time
component. The Internet was designed as
a “best-effort service” (Leon-Garcia & Widjaja
2000). In this type of system all
packets are treated equally and each packet is attempted, but not guaranteed,
to be promptly delivered. This is not
the best system for voice data because the requirements for quality voice
communications are very stringent.
Lost Packets
Lost
packets are not generally a problem for web page data because a missing packet
can easily be retransmitted. There is no
real-time requirement for most of the data found on the Internet. Voice communication does have real-time requirements; delays in transmission, such
as waiting for a retransmitted packet, can make it very difficult to have a
conversation. A delay as short as 1/6th
of a second can confuse both parties and distort the intended meaning of what
was said (Cyganski & Orr, 2001). Every packet of data, then, has 1/6th
of a second to arrive and be decoded at the receiver from the time that it was
created. This, generally, does not allow
for retransmission of lost packets.
Luckily voice data can survive with reasonably good quality even in the
face of some lost packets. Though if the
number of lost packets gets too high, then it will distort the reproduced
sound. As a best effort service, IP
treats all packets equally; this can cause packet loss problems. When one router gets too busy along the route
between the users, it will begin dropping packets so that it can handle others;
depending on how busy the router is, too many of the voice packets could be
lost.
Packet Delay
There
are two types of delay to which packet data is subject: variable rate and fixed
rate. The fixed delay is the minimum amount
of time it takes for a packet to move from one point to another on the
network. This consists of the minimum
processing time at each router, plus the transmission time along the physical
medium (which is limited to the speed of light). The processing time at each router is
required because each router must examine every packet for its addressing
information and then determine where the packet needs to be forwarded.
The
variable delay is due to the load on each router. When each router is only handling a small
amount of packets, then each packet can be quickly examined and forwarded;
unfortunately the routers get busy sometimes.
When a router is heavily loaded it has to store some of the packets in a
buffer until it has time to examine them and forward them. This can lead to additional delay (which will
depend on how busy each router along the path is) and can also lead to the
packet loss described above.
Constant Rate
As
mentioned earlier, voice data is created at a constant rate; therefore it must
be decoded at the same constant rate otherwise it will not sound correct. There are ways that we can minimize variable
delay, but there will always be some amount of variable delay when using the
Internet. Since our voice data needs to
be decoded at a constant rate we must employ a technique to ensure that this
occurs. The method most used is called
buffering.
When we
want to create a buffer, the first X number of packets received are not processed
immediately. Once we have a buffer of X packets to draw from, we draw
packets at a constant rate and decode the data to recreate the transmitted
sound. Sometimes the data arriving in
the buffer will arrive fast and sometimes it will arrive slowly, but as long as
we remove packets from the buffer at a constant rate we have met the
requirement for constancy. The challenge
here is choosing a buffer size. If the
buffer is not large enough, then it might empty completely while the data is
arriving slowly and then we will have no packets to process; packets that
arrive too late are treated as lost packets.
On the other hand, if we make the buffer too large we are still hurting
ourselves because the buffer adds an additional fixed amount of delay. If this delay is too large, as seen above,
the speech can become confusing.
How can we meet these requirements?
IPv4
As we have
seen, packet loss and variable delay are inevitable in the current Internet
system. When discussing IP so far we
have been referring to Internet Protocol version 4 (IPv4), which is the
foundation of the Internet, as we know it today. This protocol treats all packets as equal so
it will indiscriminately buffer and/or discard packets when a router gets
overloaded. When a packet is buffered
due to network congestion, it creates additional delay that may degrade the
integrity of the voice communication. If
the router is forced to drop a packet, a retransmission will likely not be
possible given the time requirements and these lost packets also can degrade
our voice communication.
IPv6
IPv4, the
current standard, clearly creates some problems for VoIP
in the way that it handles packets.
Internet Protocol version 6 (IPv6) is designed, among other things, to
provide the quality of service (QoS) protocols that
will pave the way for widespread VoIP; QoS refers to parameters such as packet loss, packet delay
and error rate. IPv6 employs a more
complex header system than does IPv4.
The header includes a 24-bit flow label that, combined with the source
and destination addresses, provides for a unique label for every flow on the
Internet. According to Robert Hinden, “A flow is a sequence of packets sent from a
particular source to a particular (unicast or
multicast) destination for which the source desires special handling by the
intervening routers” (Hinden, 1995).
Each
packet originating from a given source can also give a priority to its packets
using a 4-bit priority field. The
priority field tells each router how sensitive to delay the packet is and
therefore, how much preference it should be given over other packets from the
same source (Hinden, 1995). For example, a low priority packet belonging
to an email message should be discarded when the router gets overloaded, while
the high priority VoIP packet should be protected if
at all possible.
RSVP
The flow
label in IPv6 allows other protocols to be used to enhance the reliability of
IPv6. One example would be a resource
reservation protocol such as RSVP. RSVP
is a protocol that negotiates with the routers along the path between two users. It first announces what characteristics the
data flow has, such as data rate, tolerance to delay and tolerance to lost
packets. It then requests that the
routers along the path “reserve” enough resources to support the flow. If all of the routers have enough resources
left to support the flow then the connection will be allowed and the
reservations will be made; if there is not enough resources left at any one
router a message similar to a PSTN “all circuits busy” message will be sent
back to the requester (Leon-Garcia & Widjaja,
2000).
Once a
flow has been established each router must monitor the flow to determine if it
is staying within the negotiated parameters.
If the flow is creating packets at a rate higher than it originally
requested, that flow can be flagged. As
long as network resources are plentiful, that flow will still receive its
requested QoS.
When a router becomes overloaded, though, packets belonging to a flow
that has been flagged are the first packets to be discarded.
Faster Routing (decreased fixed delay)
The flow
designator can also act to speed up the routing of packets. The IP addressing scheme is very robust. It is similar to mail addressing in that “if
we plucked a packet from anywhere in the Internet, by examining this address we
could determine its source and destination. And, if we dropped this packet back
into the Internet anywhere else, it would still be routed to the correct
destination” (Cyganski & Orr, 2001). This robustness, though, also acts to create
some of the packet delivery delay; every packet must be examined at every
router to determine its destination and then processed to determine the next
hop in its journey. This creates
overhead because the router has to compare the destination address to a rather
large routing table to decide which next hop is the most optimal. Using the flow descriptor and source address
can speed up the delivery process because the router can store in cache (very
fast memory) the specifics for each flow to which it has committed. When a packet arrives with a flow descriptor
it can compare this packet to its smaller, faster cache chart to determine
where to forward the packet; this can be considerably faster than comparing the
IP addresses to its routing tables (Hinden, 1995).
Why Aren’t We All Using VoIP Now?
Impractical use of IPv4
Although
IPv4 does not allow for QoS specifications it is
still possible to use VoIP on the Internet. Unfortunately the phone (or computer) call
that is made will not have the same clarity that people have become accustomed
to when using the PSTN. This is due to the packet loss and the delays that are
caused by network congestion. A simple
solution to this would be to simply increase the bandwidth of the backbone of
the Internet; given an unlimited bandwidth VoIP will
work even without QoS because there will be no
congestion. Unfortunately there are two
problems with this idea. The first is
money; it is very expensive to add extra routers, especially when they are in
excess of what is needed. These extra
routers and bandwidth would only be used during the peak Internet times; the
rest of the time they would be wasted.
The other problem lies in the practicality of trying to stay way ahead of network usage.
No matter how many routers are added, eventually it will become
congested again; it is a vicious cycle that can doubtfully be won.
Slow Transition to IPv6
It appears
to be impractical to attempt widespread VoIP over the
current Internet, which relies on IPv4.
Our solution then is clear; we need to move to the next generation
protocol, IPv6. Why then have we not
moved over to the newer system yet? The
easiest answer is: money. It is
expensive to update to a new system such as IPv6. There are a lot of routers and other physical
equipment that would have to be replaced.
Also, a lot of equipment that does not have to be replaced would need to
be reconfigured; this will require a very large number of man-hours to
implement. One of the other features of
IPv6 is that it allows for a much larger address space by lengthening the bits
allotted per address; this is part of the problem with reconfiguring to an IPv6
network (Demaria, 2002).
Software
is another reason that IPv6 has not yet taken over. There are innumerable applications in use
today that access the Internet. All of
these applications are looking for the standard 32-bit IP address that is
defined in IPv4. All of these programs
will have to be rewritten to expect the new 128-bit IP address. This also can be a huge undertaking; for
example, changing a single constant in a header file “requires finding the
source code, rewriting, recompiling, testing and distributing that code” (Demaria, 2002).
Although
the standard for IPv6 has been finalized, there is still not an excess of
equipment ready to use it. There are
routers out that are designed for IPv6 but not to the same extent as there are
for IPv4. In fact, Microsoft and Cisco
(two of the largest computer giants) have yet to release a stable production of
IPv6 stacks. Also, many vendors do not
fully support IPv6 because of the programming issues mentioned above (Demaria, 2002).
Conclusions
Create a Demand
A
good VoIP program has a chance to be the “killer app”
of the new millennium, much like the word processor and the spreadsheet were
near the dawn of the Personal Computer.
There is a demand for this type of service, though currently not large
enough to force a quick change. If a
company were to produce a quality VoIP product and
advertise it well, it could greatly increase the demand for this service. If the demand reaches a high enough point,
then the “powers that be” will have no choice but to go through the hassle of
transitioning to IPv6; the market dictates what the business environment must
do.
The Last Mile
One
of the problems with creating a demand at this point is that not everyone has
access to a high speed last mile connection.
Many areas of the country have no alternative to 56k dial-up access. Without universally available high-speed
options, we will never have the ability to replace the PSTN with the
Internet. As a side note, not everyone
in the country has a PC but inevitably the day will come when everyone will
have some device with Internet connectivity, even if it is only an Internet
“phone.” Having everyone connected to
the Internet will also be required if we are to replace the PSTN with the
Internet.
Let’s Get on the Ball
VoIP is a technology whose time has come; it has been on
the verge for years and it is time to implement it. The same thing applies to IPv6, which we need
in order to widely implement VoIP; it has been ready
for years we need to get started. IPv6
is not only needed for VoIP but also for the
increased address space that it provides; in fact the Japanese government has
decided on a deadline of 2005 by which time Japanese companies need to be
upgraded to IPv6 (Demaria, 2002). Once everyone has equal access to a
high-speed Internet that is run on IPv6, then we can all enjoy a new world of
Internet voice communication. And maybe,
eventually, we will eliminate the PSTN entirely and have one unified Internet
and truly a world wide web through which everyone is connected.
References
Cyganski, D. Orr, J. & Vaz, R. (2001).
Information technology: inside and out. Upper Saddle River:
Prentice-Hall.
Demaria, M. (2002). Slow road to IPv6 – More address space is on
the horizon, but migration and vendor support is still lagging. Network
Computing, p83.
Hinden, R. (1995). IP next generation overview. [Online].
Available: http://playground.sun.com/pub/ipng/html/INET-IPng-Paper.html#CH9. April 26, 2002.
Leon-Garcia,
A., & Widjaja, I. (2000). Communication
networks: fundamental concepts and key architectures. Boston: McGraw Hill.
“VoIP builds a better bridge” (2000). Communications News,
p20.
Home Outdoors
Various School Projects Rat Babies Wacky
Test Results Contact Kevin McMahon