VoIP stands for 'V'oice 'o'ver 'I'nternet 'P'rotocol. As the term says
VoIP tries to let go voice (mainly human) through IP packets and, in definitive
through Internet. VoIP can use accelerating hardware to achieve this purpose
and can also be used in a PC environment.
Many years ago we discovered that sending a signal to a remote destination
could have be done also in a digital fashion: before sending it we have to
digitalize it with an ADC (analog to digital converter), transmit it, and at
the end transform it again in analog format with DAC (digital to analog converter)
to use it.
VoIP works like that, digitalizing voice in data packets, sending them
and reconverting them in voice at destination.
Digital format can be better controlled: we can compress it, route it,
convert it to a new better format, and so on; also we saw that digital signal
is more noise tolerant than the analog one (see GSM vs TACS).
TCP/IP networks are made of IP packets containing a header (to control
communication) and a payload to transport data: VoIP use it to go across the
network and come to destination.
When you are using PSTN line, you typically pay for time used to a PSTN
line manager company: more time you stay at phone and more you'll pay. In addition
you couldn't talk with other that one person at a time.
In opposite with VoIP mechanism you can talk all the time with every person
you want (the needed is that other person is also connected to Internet at
the same time), as far as you want (money independent) and, in addition, you
can talk with many people at the same time.
If you're still not persuaded you can consider that, at the same time,
you can exchange data with people are you talking with, sending images, graphs
and videos.
Unfortunately we have to report some problem with the integration between
VoIP architecture and Internet. As you can easy imagine, voice data communication
must be a real time stream (you couldn't speak, wait for many seconds, then
hear other side answering): this is in contrast with the Internet heterogeneous
architecture that can be made of many routers (machines that route packets),
about 20-30 or more and can have a very high round trip time (RTT), so we need
to modify something to get it properly working.
In next sections we'll try to understand how to solve this great problem.
In general we know that is very difficult to guarantee a bandwidth in Internet
for VoIP application.