• Inleiding tot VoIP
    Introduction to VOIP header image
  • Introduction to VOIP
    Introduction to VOIP header image

Inleiding tot VoIP

De afkorting VoIP staat voor "Voice Over IP".

De meeste mensen zijn bekend met het "Public Switched Telephone System” (PSTN) waarmee we mensen over de hele wereld kunnen bellen door een aantal cijfers te kiezen. VoIP biedt een alternatief dat werkt door gedigitaliseerde spraaksignalen te versturen via IP-netwerken, zoals een bedrijfsintranet of in sommige gevallen het openbare internet.
 
Op het eerste gezicht lijkt het erop dat PSTN in meer dan 100 jaar niet veel is veranderd. Er zijn veel technologische veranderingen en verbeteringen geweest, zoals toonkiezen en nummerherkenning, maar voor de gebruiker is het nog steeds een kwestie van het draaien (tegenwoordig drukken) van een aantal cijfers, waarna je wordt verbonden met de persoon van wie je het nummer hebt gekozen. Wat er echter achter de schermen gebeurt om dit mogelijk te maken, is in de afgelopen jaren aanzienlijk veranderd.
 
VoIP is niet bepaald een nieuwe technologie. Er zijn documenten en patenten over dit onderwerp die tientallen jaren oud zijn. In 1991 was er al eenvoudige VoIP-software beschikbaar. Het basisprincipe is erg eenvoudig: het is in feite dezelfde technologie als die wordt gebruikt voor het streamen van muziek via internet. Spraakgeluiden worden opgevangen door een microfoon en gedigitaliseerd door de geluidskaart. De gedigitaliseerde audio wordt vervolgens gecomprimeerd met een audio-codec. Hierbij worden onnodige gegevens verwijderd terwijl de leesbaarheid van de audio behouden blijft, zodat de stream compact genoeg is om deze realtime te verzenden via het netwerk. Codec is een afkorting van "enCODer/DECoder". De geluiden worden gecodeerd aan de verzendzijde, vervolgens verzonden via het netwerk en daarna gedecodeerd aan de ontvangstzijde. Hier worden de geluiden afgespeeld via de luidsprekers of een headset. 
 
 
 
De enige vereisten zijn een netwerkverbinding met voldoende snelheid tussen de twee computers, en aan beide zijden overeenkomende codecs.
 
Normale "standaardcomputers" die zijn uitgerust met een microfoon, geluidskaart, headset en een breedbandverbinding zijn zeer geschikt voor deze taak.
 
 
Het is natuurlijk nodig dat de twee pratende partijen overeenkomen om dezelfde codec te gebruiken voordat zij een gesprek starten. De gecomprimeerde audio in de audiostreams kan dan op de juiste wijze worden gedecomprimeerd door het systeem aan de andere zijde. Er zijn continu nieuwe ontwikkelingen op het gebied van codecs. Zoals iemand met een digitale-muziekspeler zal weten, zijn MP3, WMA, OGG, MP4 en AAC allemaal bestandsextensies die worden gebruikt voor gecomprimeerde muziekbestanden in online muziekwinkels. Deze zijn allemaal verschillend. Sommige muziekspelers kunnen alle bestandsindelingen afspelen, sommige kunnen slechts enkele bestandsindelingen afspelen en andere kunnen slechts één indeling afspelen. 
 
Gelukkig is er in de telecommunicatie ook een gemeenschappelijke basis te vinden, waardoor VoIP-systemen meestal met elkaar kunnen onderhandelen om een codec te vinden die beide zijden begrijpen. Veelgebruikte telefonie-codecs zijn onder andere: G.711, G.729 en G.726. Er zijn nog vele andere, waaronder eigen systemen. Deze codecs verschillen op twee belangrijke punten. Ten eerste is dit de hoeveelheid processorkracht die nodig is om de compressie en decompressie uit te voeren, en die een effect heeft op het type hardware dat het systeem nodig heeft (pc, PBX of telefoon). Ten tweede is dit de grootte van de gecomprimeerde audiostream of het gecomprimeerde audiobestand, en hierdoor de hoeveelheid netwerkbandbreedte die nodig is om de gegevens te verzenden tussen de twee partijen. Dit heeft een effect op de netwerkinfrastructuur. 
 
Een VoIP-systeem heeft een methode nodig voor het opzetten en beheren van een verbinding, bijvoorbeeld het bellen van de andere computer, uitvinden of deze de oproep accepteert en het verbreken van de verbinding wanneer een gebruiker ophangt. Omdat bij VoIP communicatie in twee richtingen mogelijk is, en zelfs een telefonische vergadering, is dit deel complexer dan eenvoudige audiostreaming. Gespreksbeheer (sessie starten, gesprek opzetten en gesprek beëindigen) is een onderwerp waarop VoIP-systemen fundamenteel verschillen. Twee VoIP-gebruikers moeten hetzelfde systeem gebruiken (of compatibele systemen) om elkaar te kunnen bellen.
 
Omdat de meeste particuliere internetgebruikers geen permanent internetadres hebben, werken VoIP-systemen voor privégebruik over het algemeen door een andere computer rechtstreeks te bellen. Dit is vergelijkbaar met een telefoonnummer dat regelmatig verandert. In plaats daarvan moet elke gebruiker van de service zich registreren bij een tussenliggende server die de hele tijd dat de gebruiker verbonden is, het IP-adres vastlegt. Op de pc van de gebruiker kan een kleine toepassing worden geïnstalleerd waarin deze gegevens worden beheerd in samenwerking met de server.
 
Een andere reden voor het gebruik van een tussenliggende server is dat het probleem van het werkend krijgen van VoIP door een firewall eenvoudiger is op te lossen. Veel firewalls blokkeren alle gegevens vanaf internet die niet worden verzonden als reactie op een specifiek verzoek. Hierdoor is het onmogelijk om een andere computer rechtstreeks te bellen. De gebelde computer heeft geen gegevens van de beller gevraagd, waardoor het gespreksverzoek wordt geblokkeerd. 
 
Door een verbinding met een server tot stand te brengen, opent de VoIP-software een communicatiekanaal dat andere computers kunnen gebruiken om deze computer te bellen. De communicatie kan worden voortgezet via de server of er wordt informatie doorgegeven via de server waardoor de twee computers een rechtstreekse verbinding aangaan en zij dit communicatiekanaal blijven gebruiken.
 
Standaarden
Er zijn diverse standaarden voor communicatie via Voice over IP. Deze kunnen worden onderverdeeld in 'open standaarden’ die voor iedereen beschikbaar zijn, en eigen systemen. H.323 en SIP vallen in de eerste categorie en Skype gebruikt zijn eigen systeem.
 
H.323 is een standaard voor telefonische vergaderingen die is ontwikkeld door de International Telecommunications Union (ITU). Deze ondersteunt overdracht van volledige multimedia-audio, -video en -gegevens tussen groepen van twee of meer deelnemers. Deze standaard is ontwikkeld voor grote netwerken. H.323 is netwerkonafhankelijk: deze kan worden gebruikt via netwerken met andere transportprotocollen dan TCP/IP. Toch is H.323 nog steeds een erg belangrijk protocol. Het is echter buiten gebruik geraakt voor VoIP-consumentenproducten omdat het moeilijk is om deze standaard te laten werken door firewalls die zijn ontwikkeld om computers te beschermen waarop vele verschillende toepassingen worden uitgevoerd. Het is een systeem dat het meest geschikt is voor grote organisaties die beschikken over de technische vaardigheden om deze problemen op te lossen.
 
SIP (Session Initiation Protocol) is een standaardsignaleringsprotocol van Internet Engineering Task Force (IETF) voor telefonische vergaderingen, telefonie, aanwezigheid, gebeurtenismelding en instant messaging. Dit biedt mechanismen voor het opzetten en beheren van verbindingen, maar niet voor het verzenden van de audio- of videogegevens. Het is momenteel waarschijnlijk het meestgebruikte protocol voor het beheren van internettelefonie. Net zoals alle IETF-protocollen is SIP gedefinieerd in een aantal RFC's (Request For Comments), hoofdzakelijk RFC 3261.
 
Een VoIP-implementatie met SIP kan de gecodeerde spraakgegevens op een aantal manieren via het netwerk verzenden. De meeste implementaties maken gebruik van het Real-time Transport Protocol (RTP), dat is gedefinieerd in RFC 3550. Zowel SIP als RTP is geïmplementeerd in UDP, dat als verbindingloos protocol problemen kan veroorzaken met bepaalde typen routers en firewalls. Daarom moeten SIP-telefoons ook gebruikmaken van STUN (Simple Traversal of UDP over NAT). Dit is een protocol dat is gedefinieerd in RFC 3489 en waarmee een client die zich achter een NAT-router bevindt zijn externe IP-adres en het type NAT-apparaat te weten kan komen. Dankzij STUN zou het instellen van SIP-gebaseerde VoIP-hardware of -software achter een firewall van een thuisgebruiker of een klein kantoor eenvoudig moeten zijn. In de praktijk kan dit echter nog een lastige klus zijn.