II.1.1 Utilisation
Il est utilisé quand il est nécessaire soit de transmettre des données très rapidement, et
où la perte d'une partie de ces données n'a pas une grande importance, soit de
transmettre des petites quantités de données, là où la connexion « 3-WAY » TCP serait
inutilement coûteuse en ressources. Par exemple, dans le cas de la transmission de
la voix sur IP, la perte occasionnelle d'un paquet est tolérable dans la mesure où il
existe des mécanismes de substitution des données manquantes, par contre la rapidité
de transmission est un critère primordial pour la qualité d'écoute.
Exemples d'utilisation :
les protocoles DNS, SNMP;
le streaming ;
les jeux en réseau
le programme traceroute.
1
CHAPITRE 2 les protocoles de la VOIP
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
Port Source 2 octets Port destination 2 octets
Numéro de sequence
Numéro d'acquittement
Taille
de l'en- Réservé ECN URG ACK PSH RST SYN FIN Fenêtre
tête
Somme de contrôle Pointeur de données urgentes
Options Remplissage
Données
2
CHAPITRE 2 les protocoles de la VOIP
II.2 .2 Fonctionnement
Une session TCP fonctionne en trois phases :
l'établissement de la connexion ;
les transferts de données ;
la fin de la connexion.
Figure II.1
b) Transfert de données
3
CHAPITRE 2 les protocoles de la VOIP
Figure II.2
4
CHAPITRE 2 les protocoles de la VOIP
5
CHAPITRE 2 les protocoles de la VOIP
Les trois sources origines sont déclarées comme CSRC dans le paquet RTP composé.
Figure II.3
-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 le
débit, ou encore de traiter les problèmes de sécurité (firewalls) à la frontière d’un
réseau privé. Si un terminal utilisant un codage PCM μ-law à 64 kbit/s souhaite établir
une session avec un terminal supportant un codage G.726 ADPCM à 32 kbit/s, alors il
est nécessaire d’interfacer les deux terminaux à travers un translator.
Les fonctions Mixer et Translator sont généralement mises en oeuvre dans un
Gateway.
II.3.2.2 Format des paquets RTP
Le format de l’en-tête d’un paquet RTP est illustré à la figure
Figure II.
-Le champ Version V de 2 bits de longueur indique la version du protocole (V=2)
-Le champ padding P : 1 bit, si P est égal à 1, le paquet contient des octets
additionnels de bourrage (padding) pour finir le dernier paquet.
-Le champ extension X : 1 bit, si X=1 l'en-tête est suivie d'un paquet d'extension
-Le champ CSRC count CC : 4 bits, nombre de sources ayant contribué à la
génération du paquet.
6
CHAPITRE 2 les protocoles de la VOIP
-Le champ payload type PT : 7 bits, ce champ identifie le type du payload (audio,
vidéo, image, texte, html, etc.)
-Le champ timestamp : 32 bits, reflète l'instant où le premier octet du paquet RTP
à été échantillonné. Cet instant doit être dérivé d'une horloge qui augmente de
façon monotone et linéaire dans le temps pour permettre la synchronisation et le
calcul de la gigue à la destination
-Le champ SSRC : 32 bits, identifie de manière unique la source, sa valeur est
choisie de manière aléatoire par l'application.
Facultatif, le champ CSRC est utilisé lorsque plusieurs sources ont contribué à la
conception d’un message. Le cas classique correspond à une conférence au cours de
laquelle plusieurs personnes conversent simultanément. Si une entité se charge de
rassembler les flux avant de les relayer à chaque source (comme le fait la MCU), alors
cette entité est source initiale du message, tandis que les contributeurs sont toutes les
personnes qui ont émis leur flux vers elle.
L’horloge utilisée pour le champ timestamp doit être partagée par la source comme
par l’émetteur. Il faut donc que l’un et l’autre soient synchronisés par une référence
Commune, et ce dès le premier paquet échangé. Pour cela, le protocole NTP (Network
Time Protocol) est généralement utilisé. Il retourne l’heure courante, sous différents
formats, aux différents intervenants.
7
CHAPITRE 2 les protocoles de la VOIP
Figure II.4
En 10 ms, pour respecter le débit de 64 Kbit/s, un paquet contiendra 80 octets de
données utiles. Plusieurs en-têtes successifs vont être appliqués pour encapsuler ces
données
Au final, on arrive à 146 octets transmis dans un réseau LAN de type Ethernet toutes
les 10 ms. Cela équivaut à un débit effectif réel de 116,8 Kbit/s. Si l’on compare ce
résultat avec les données réellement utiles transmises à un débit de 64 Kbit/s, on
constate que le débit a presque été doublé (il est 1,8 fois plus important).
8
CHAPITRE 2 les protocoles de la VOIP
Dans les applications de téléphonie, les paquets sont très petits et sont donc très
fortement surchargés par les en-têtes, pouvant être 10 fois plus importantes avec
certains codecs. Cette surcharge est appelée overhead. Elle comprend les données qui
ne sont pas utiles, c’est-à-dire les données de transport non multimédias. Avec la
vidéo, les paquets sont plus importants, si bien que la surcharge devient globalement
négligeable.
II.4.1 RTCP (Real-Time Control Transport Protocol)
Décrit dans la RFC 3550, RTCP est un protocole de contrôle et de supervision du
réseau. Son objectif est d’offrir aux participants d’une session une vision sur l’état du
réseau et de s’y adapter de façon dynamique. Il fournit pour cela un rapport sur la
qualité de distribution, incluant le délai de bout en bout, la gigue et le taux de pertes.
Ce rapport est envoyé de façon périodique de façon que les intervenants disposent
d’une mise à jour fréquente de l’état du réseau.
II.4.2 Format des paquets RTCP
Le format de l’en-tête d’un paquet RTP est illustré à la figure
Figure II.
9
CHAPITRE 2 les protocoles de la VOIP
La fréquence des échanges de transmission des rapports doit être dosée en fonction du
type de média transporté et du nombre de participants, En règle générale les
différents rapports feedback du RTCP ne doit pas dépasser 5 % du trafic globale
(donnés voix et vidéo).
.
10