Vous êtes sur la page 1sur 57

VoIP: Les Protocoles

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
La VoIP utilise le protocole IP (Internet Protocol) pour
transmettre les paquets de la voix. Donc la VoIP peut
être réalisée sur n’importe quel réseau utilisant IP
(Internet, Intranet & LAN).

Après la numérisation, compression et paquétisation,


les protocoles de signalisation sont utilisés pour:
 initialiser et mettre fin aux communications
 véhiculer les informations de localisation des
utilisateurs
 négocier les capacités de la communication
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Pour que la VoIP soit populaire, quelques problèmes
clés doivent être résolus:
 La qualité de la voix: Comme IP était conçu
pour véhiculer les données, ce protocole fait de son
mieux pour transférer les données (Best Effort),
donc il ne fournit aucune garantie pour le transfert
en temps réel.
 Interopérabilité: Dans un environnement réseau
public, des produits de différents constructeurs
doivent opérer ensemble. Pour ce faire, des
standards doivent être introduits (H.323, SIP …).
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
 Sécurité: Ce problème existe à cause du réseau
Internet qui est public; le trafic de la voix destiné à
une personne peut être intercepté par une autre. On
peut régler ce problème par la création de tunnels
(L2TP) cryptés (SSL)*.

* Layer 2 Tunneling Protocol, Secure Socket Layer Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Intégration avec le RTC: La ToIP doit prendre
en charge les réseaux RTC pour quelques années,
le temps de passer définitivement au « Tout IP ».

 Flexibilité: Les systèmes VoIP doivent s’adapter à


la grandeur des réseaux IP, afin de toucher un plus
grand nombre d’utilisateurs.
* Layer 2 Tunneling Protocol, Secure Socket Layer Mr. Guessoum Khaled-2013
La Signalisation

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Le Standard H.323. C’est un protocole qui a été
introduit par l’ITU (International Telecommunication Union).
Ce protocole propose des recommandations
techniques pour assurer la communication sur LAN
même dans QoS (Quality of Service).

Il a été conçu à l’origine (1996), pour assurer les visio-


conférences sur LAN, mais par la suite (1998), il a été
révisé pour prendre en charge la VoIP. Ce standard
comprend la prise en charge des communications P2P
& MP.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Les Composants de H.323. Ce standard définit 4
composants logiques; les Terminaux, les Gateways,
les Gatekeepers et les MCU (Multipoint Control Unit).

 Terminaux. Ce sont les clients LAN qui


permettent d’établir des communications en temps
réel, en full duplex. Ils doivent prendre en charge les
protocoles H.254 (allocation des canaux de
communication), Q.931 (Signalisation), RAS (Registration
Admission Status) et le RTP (Real Time Transport Protocol).

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Terminaux (suite). Les terminaux H.323 peuvent
inclure également le protocole T.120 (data
conferencing), des codecs vidéo ainsi que le support
pour MCU. Un terminal H.323 communique avec
d’autres terminaux H.323, des passerelles H.323 ou
des MCU.
 Gateways. Une passerelle H.323 et un équipement
terminal qui fournit une communication en temps
réel et en duplex, avec des terminaux H.323, des
réseaux RTC ou d’autres passerelles H.323. Ils font
office d’interprètes entre différents formats de
transmission. Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
 Gateways (suite). Une passerelle H.323 est une
interface entre les réseaux RTC et les réseaux IP.
Elles sont facultatives dans le cas où les terminaux
se trouvent dans le même réseaux, car ces derniers
peuvent communiquer directement. Dans les autres
cas ils passent par des Gateways en utilisant les
protocoles H.245 et Q.931.

 Gatekeepers Ce sont les composants les plus


vitaux des systèmes H.323; les terminaux
s’enregistrent auprès du Gatekeeper de leur zone.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
 Gatekeepers (fonctionnalités).
 Translation d’adresses: table de mappage entre
les Alias et les adresses. Elle est mise à jour lors
de l’enregistrement des terminaux.
 Contrôle d’admission: en se basant sur des
critères comme @ source & destination,
autorisations d’appel, etc..
 Signalisation d’appels: ils peuvent initier la
signalisation avec les terminaux. Dans certains
cas, ils dirigent deux terminaux vers un canal de
signalisation pour une communication directe.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
 Gatekeepers (fonctionnalités).
 Autorisations d’appel: un Gatekeeper peut rejeter
des appels depuis un terminal pour diverses
raisons, parmi lesquelles on peut citer: horaires
restreints, accès refusé depuis un terminal
particulier ou un Gateway.
 Gestion de la bande passante: nombre d’appels
simultanés (signalisation H.225).
 Gestion des appels: le Gatekeeper maintient une
liste d’appels en cours pour signaler qu’un
terminal est occupé, gérer la bande passante..
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
 MCU (Multipoint Control Unit).
Ce sont des équipements terminaux qui assurent
aux terminaux et passerelles la participation à des
conférences multipoints. Une MCU est composée
de deux éléments;
• MC (Multipoint Controller): élément obligatoire, il
détermine les capacités communes entre les
terminaux en utilisant le protocole H.245.
• MP (Multipoint Processor): élément optionnel, il
assure le multiplexage de la voix, la vidéo et les
données. Le multiplexage est contrôlé par le MC.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles (H.323)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
RAS (Registration Admission & Status)
Terminal Gatekeeper Qui est mon Gatekeeper?
GRQ: Gatekeeper ReQuest

Je peux être ton Gatekeeper!


GCF: Gatekeeper ConfiRmation

Je ne peux être ton Gatekeeper!


GRJ: Gatekeeper ReJect

IP Multicast utilisée pour découvrir les Gatekeepers: 224.0.1.41


Port utilisé pour découvrir les Gatekeepers: 1718

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
RAS (Registration Admission & Status)
Terminal Gatekeeper RRQ: Registration ReQuest
Adresse IP, ID du Terminal, e-mail,
N° de Tél, Time to Live, Keep-Alive.

RCF: Registration ConfiRmation


Time to Live

RRJ: Registration ReJect

Port utilisé pour l’enregistrement auprès du Gatekeepers: 1719

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
RAS (Registration Admission & Status)
Terminal Gatekeeper

URQ: Unregistration ReQuest

Terminal Gatekeeper UCF: Unregistration ConfiRmation

URJ: Unregistration ReJect

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
RAS (Registration Admission & Status)
Terminal Gatekeeper
ARQ: Admission ReQuest
Modèle d’appel (direct,
Gatekeeper-Routed), Bande passante

ACF: Admission ConfiRmation


Modèle d’appel (direct,
Gatekeeper-Routed), Bande passante
ARJ: Admission ReJect

Port utilisé pour l’enregistrement auprès du Gatekeepers: 1719

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
Etablissement & Contrôle d’appels

Terminal-A Gatekeeper Terminal-B


ARQ
ACF/ARJ
Setup

ARQ
ACF/ARJ
Connect

Port utilisé par les terminaux pour la signalisation: 1720, 1731

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
 Fonctionnement de H.323.
Négociation de codecs (H.245) & ouverture des canaux

Terminal-A Gatekeeper Terminal-B


ARQ
ACF/ARJ
Setup

ARQ
ACF/ARJ
Connect
H.245, Channel

Port utilisé par les terminaux pour la négociation: dynamique


Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Le Standard H.323. Inconvénients..

 Implémentation de nombreuses normes


propriétaires, d’où une interopérabilité réduite
 Ouvertures de nombreux ports UDP & TCP
 Problèmes avec les firewalls à cause des ports
dynamiques
 Complexe (utilisation de plusieurs protocoles)
 Format binaire des messages
 Il est en voie de disparition (SIP c’est l’avenir..!)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Le Standard SIP (Session Initiation Protocol)

• Protocole normalisé et standardisé par l'IETF (RFC


3261)
• Permet d’établir, modifier et terminer des sessions
multimédia
• Le but premier de SIP est d’établir une session, le
deuxième est de fournir une description du type de
session demandée
• SIP est le standard le plus ouvert de VoIP
• Interopérabilité plus étendue, vise à devenir le
standard des télécommunications multimédia (son,
image, etc..)
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Caractéristiques de SIP (Session Initiation Protocol)

• Authentification et localisation des participants


• Négociation des types de médias utilisables en
utilisant des messages SDP (Session Description
Protocol)
• Ne prend pas en charge les données échangées
durant la session
• Etant indépendant de la transmission des données,
tous types de données et de protocoles peuvent
êtres échangés en utilisant SIP.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Les entités de SIP (Session Initiation Protocol)

 Le serveur proxy (Proxy server) : Il reçoit des


requêtes de clients qu’il traite lui-même ou qu’il
achemine à d’autres serveurs après avoir
éventuellement réalisé certaines modifications sur
ces requêtes
 Le serveur de redirection (Redirect server) : Il s’agit
d’un serveur qui accepte des requêtes SIP, traduit
l'adresse SIP de destination en une ou plusieurs
adresses réseau et les retourne au client.
Contrairement au Proxy server, le Redirect server
n'achemine pas de requêtes SIP.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Les entités de SIP (Session Initiation Protocol)

 L’agent utilisateur (UA, User Agent) : Il s’agit de l’IP-


Phone ou de l’application permettant aux usagers
d’initier des communications
 L’enregistreur (Registrar) : Il s’agit d’un serveur qui
accepte les requêtes « SIP Register ».
• SIP dispose de la fonction d’enregistrement d’utilisateurs.
• L’utilisateur indique par un message « Register » émis au
Registrar, l’adresse où il est joignable (e.g., adresse IP).
• Le Registrar met à jour une base de donnée de localisation.
• L’enregistreur est une fonction associée à un Proxy server
ou à un Redirect server.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Fonctionnement de SIP (Session Initiation Protocol)
SIP dispose de plusieurs méthodes, on cite les plus
importantes d’entre elles:
Invite: permet à un client de demander une nouvelle
session. Elle contient des informations sur l’appelant et
l’appelé et sur le type de flux qui seront échangés
(voix, vidéo, etc..)
ACK: confirme l'établissement de la session
Cancel: est utilisée pour demander l ’abandon d ’un appel
en cours mais n’a aucun effet sur un appel déjà accepté. En
effet, seule la méthode Bye peut terminer un appel établi

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Fonctionnement de SIP (Session Initiation Protocol)
SIP dispose de plusieurs méthodes, on cite les plus
importantes d’entre elles:
Bye: termine une session en cours
Register: est utilisée par un UA afin d’indiquer au Registrar
la correspondance entre son adresse SIP et son adresse de
contact (e.g., adresse IP)
Options: est utilisée afin d’interroger les capacités et l’état
d’un User Agent ou d’un serveur. La réponse contient ses
capacités (e.g., type de média supporté, méthodes
supportées, langue supportée) ou le fait que l'UA soit
indisponible.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Fonctionnement de SIP (Session Initiation Protocol)
SIP utilise des codes de réponse qui sont similaires à
ceux utilisés par le protocole HTTP;
• 100 Trying
• 200 OK
• 404 Not Found

Certains codes sont spécifiques à SIP

• 180 Ringing
• 486 Busy

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Fonctionnement de SIP (Registrar)

Register: domaine.com SIP 2.0


From: sip: utilisateur1@domaine.com
To: sip: utilisateur2@domaine.com
Contact: sip:192.168.0.11
Expires: 3600
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Fonctionnement de SIP (Proxy)

2 Adresse IP de User-B?

User-B@192.168.0.2

1 4 Invite: User-B@192.168.0.2
From: User-A@domaine.com
To: User-B@domaine.com

Invite: User-B@domaine.com
From: User-A@domaine.com
To: User-B@domaine.com

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Fonctionnement de SIP (Appel direct)
User-Agent A User-Agent B
Invite
100 Trying – (progress report code)
180 Ringing – (progress report code)
200 OK – (succès, User Agent-B accepte l’appel)
ACK

RTP duplex avec SDP (Established)


Bye (terminer l’appel)
100 Trying (progress report code)
200 OK (succès)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Fonctionnement de SIP (Proxy Stateless)
User-Agent A Proxy User-Agent B
Invite
100 Trying Invite
180 Ringing
180 Ringing
200 OK
200 OK
ACK ACK

RTP duplex avec SDP (Established)


Bye (terminer l’appel)
100 Trying (progress report code)
200 OK (succès)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Fonctionnement de SIP (Proxy Stateful)
User-Agent A Proxy User-Agent B
Invite
100 Trying Invite
180 Ringing
180 Ringing
200 OK
200 OK
ACK
ACK
RTP duplex avec SDP (Established)
Bye (terminer l’appel)
Bye (terminer l’appel)
100 Trying
200 OK 100 Trying
200 OK

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
SDP (Session Description Protocol) dans SIP

• SIP utilise le protocole SDP pour décrire les médias


contenus : Codecs utilisés, ports
• Certains champs SDP n’ont pas raison d’être dans
SIP mais ils restent pour l’interopérabilité
• SDP n’a pas été conçu pour la négociation
multimédia
• SIP profite de SDP pour offrir un support aux
différents types de medias présents dans un appel
• L’UA destinataire répond avec les types de medias
compatibles

Mr. Guessoum Khaled-2013


Le Transport

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
TCP & UDP et le multimédia temps-réel.

Lorsqu’il s’agit de transporter les données multimédia


en temps réel, TCP ou UDP ne sont plus utilisés, car
ils représentent les limites suivantes:

TCP :

• Mécanismes de contrôle de flux et de congestion


incompatibles avec les contraintes de temps réel
(trop lent)
• Ne supporte pas le multicast
• Pas de garantie sur les délais
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
TCP & UDP et le multimédia temps-réel.

UDP :

• Pas de synchronisation des données


• Pas de qualité de service (collisions, pertes, ...)
• Pas de garanties sur les délais
• Protocole non orienté connexion

Il faudra donc mettre au point d’autres protocoles qui


répondent aux exigences de ce type de trafic.

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Protocoles temps-réel.

Séquencement, horodatage, adaptation dynamique du


débit de la source..
 RTP : Real-time Tranport Protocol
 RTCP : Real Time Control Protocol

Demande de réservation de ressources pour un flux..


 RSVP : Ressource reSerVation Protocol

Gestion du « Streaming » : touches "magnétoscope"


pour pilotage à distance de serveur multimédia...
 RTSP : Real Time Streaming Protocol
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

Le but de RTP est de fournir un moyen uniforme de


transmettre sur IP des données soumises à des
contraintes de temps réel (audio, vidéo, etc.).

RTP permet de:


• identifier le type de l'information transportée
• ajouter des marqueurs temporels permettant
d’indiquer l’instant d’émission du paquet.
• inclure des numéros de séquence à l'information
transportée afin de détecter l’occurrence de
paquets perdus et de délivrer les paquets dans
l’ordre. Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

De plus, RTP peut être véhiculé par des paquets


multicast afin d'acheminer des conversations vers des
destinataires multiples.

Mais, RTP n'a pas été conçu pour effectuer des


réservations de ressources ou contrôler la
qualité de service et ne garantit pas la livraison du
paquet à l’arrivée.

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

La structure de l’entête d’un paquet RTP est la


suivante:

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

Les champs de l’entête RTP sont les suivants:

Version V de (2 bits) : version du protocole (V=2)

Padding P : 1 bit, si P est égal à 1, le paquet contient


des octets additionnels de bourrage (padding) pour
remplir le dernier paquet

Extension X : 1 bit, si X=1 l'en-tête est suivie d'un


paquet d'extension

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

CSRC count CC (4bits) : Contient le nombre de CSRC


qui suivent l'entête

Marker M (1bit) : Son interprétation est définie par un


profil d'application (profile)

Payload Type PT (7bits) : Ce champ identifie le type


du payload (audio, vidéo, image, texte, html, etc.)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTP (Real-time Transport Protocol)

Sequence number (16bits) : sa valeur initiale est


aléatoire et est incrémenté de 1 à chaque paquet
envoyé, il peut servir pour détecter des paquets perdus

Timestamp (32bits) : reflète l'instant où le premier octet


du paquet RTP a été échantillonné.

SSRC (32bits) : le champ SSRC identifie la source de


synchronisation (ou simplement « la source »).

CSRC (32bits) : identifie les sources contribuantes.


Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
Mixer & Translator

Le mixer (mixeur) est une application qui reçoit des flux


de données de plusieurs sources qu’on appelle SSRCs
(Synchronization SouRCes), modifie éventuellement
son format et renvoie un seul flux (composite).

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
Mixer & Translator

Le translator (traducteur) est une application qui


transmet les paquets RTP qu’elle reçoit sans changer
l’identificateur de SSRC (à l’inverse de ce que fait le
mixeur).

Un traducteur permet par exemple de changer le


codage d’une donnée ou son débit, ou encore de
traiter les problèmes de sécurité (firewalls) à la
frontière d’un réseau privé.

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTCP (Real-time Transport Control Protocol)

Ce protocole est chargé de contrôler le flux lors d’une


connexion temps réel (chose que RTP n’assure pas).
Il se base sur l’envoi de messages périodiques entre
les acteurs d’une session (messages RTCP
envoyés dans les deux sens de communication).

RTCP contrôle les flux du RTP pour assurer une


dynamique face à des problèmes de ralentissement ou
d’accélération de flux éventuels (congestion).

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTCP (Real-time Transport Control Protocol)
Le protocole RTCP assure trois fonctions :

 Feedback : les récepteurs, à travers RTCP,


fournissent un rapport sur la qualité de service ; ce
rapport contient des informations tel que le nombre
de paquets perdus, la gigue, le délai d’aller-retour
des paquets..
 Ajuste le débit : grâce aux informations recueillies
lors des feedback, le protocole ajuste les débits
circulant entre les participants.
 Fournit un identifiant permanent CNAME (Canonical
NAME) qui permet d’identifier de manière unique un
flux temps réel. Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTCP (Real-time Transport Control Protocol)

Chaque paquet RTCP est constitué d’une partie fixe


suivie d’une partie variable dont la taille et le contenu
dépendent du type de paquet RTCP ; on en distingue
cinq différents paquets :

 SR (Sender Report)
 RR (Receiver Report)
 SDES (Source DEScription)
 BYE
 APP

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RTCP (Real-time Transport Control Protocol)

SR (Sender Report): Il représente le rapport émetteur


et contient l’ensemble des statistiques de transmission
et de réception de l’émetteur.

RR (Render Report): Il représente le rapport récepteur


et contient l’ensemble des statistiques de transmission
et de réception de l’émetteur,

SDES (Source DEScription): Ce paquet contient


plusieurs champs (dont CNAME) qui décrivent et
fournissent les caractéristiques de la source.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTCP (Real-time Transport Control Protocol)

BYE : Fin de la participation , une source envoie un


message BYE pour arrêter un flux. Il permet à un point
final d'annoncer qu'il quitte la conférence. Bien que
d'autres sources peuvent détecter l'absence d'une
source, ce message est une annonce directe. Il est
également utile à un mélangeur médias.

APP : Message spécifique à l'application, il fournit un


mécanisme pour concevoir des extensions spécifiques
à l'application du protocole RTCP.

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles
RSVP (Ressource ReServation Protocol)

RSVP est un protocole de contrôle qui permet aux


applications Internet d’obtenir de la qualité de service
(QoS) pour les flux de données. Cela se traduit en
général par des requêtes de réservation de ressources
le long du chemin parcouru par les données.

RSVP n'est pas un protocole de routage mais il a été


conçu pour opérer avec les protocoles de routage
existants et à venir. Il va donc parfaitement fonctionner
pour garantir des qualités de service supplémentaires
à un transfert RTP/RTCP.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTSP (Real Time Streaming Protocol)

RTSP offre des fonctions de type magnétoscope à


distance (lecture, pause, avance rapide, arrêt...). Il peut être
utilisé pour :
1. Rechercher un média sur un serveur de médias
2. Inviter un serveur de médias à rejoindre une
conférence (dans le e-learning par exemple)
3. Ajouter un média à une présentation existante

RTSP peut être utilisé aussi bien dans des applications


unicast que multicast, il peut aussi contrôler et
synchroniser plusieurs flux audio ou vidéo.
Mr. Guessoum Khaled-2013
VoIP: Les Protocoles
RTSP (Real Time Streaming Protocol)
Les principales méthodes qui permettent la connexion et la
navigation dans le fichier multimédia sont :

 Setup : Le client demande au serveur l'allocation des


ressources pour un flux et commence une session RTSP
 Play : Le client demande la transmission des données d'un
flux alloué selon Setup
 Record : Le client initie l'enregistrement selon les paramètres
de la description de la présentation
 Pause : Le client arrête temporairement le flux sans libérer
les ressources du serveur
 Teardown : Le client demande de libérer les ressources
associées au flux. La session RTSP cesse d'exister sur le
serveur.

Mr. Guessoum Khaled-2013


VoIP: Les Protocoles

Vous aimerez peut-être aussi