N° 007/IRS/TCO Année Universitaire : 2024 / 2025
UNIVERSITE D’ANTANANARIVO
----------------------
ECOLE SUPERIEURE POLYTECHNIQUE
-----------------------
MENTION TELECOMMUNICATION
Rapport VoIP
Domaine : Sciences de l’Ingénieur
Mention : Télécommunication
Parcours : IRS
Par : ANDRIAMBOLATAHIANA Yves Anthony
RTP / RTCP
CHAPITRE 1 RTP ET RTCP
RTP et RTCP sont deux protocoles utilisés principalement pour la transmission de données en
temps réel sur les réseaux IP, notamment dans les applications de voix sur IP (VoIP), de
streaming multimédia et de visioconférence.
1.1 RTP (Real-time Transport Protocol)
Le protocole RTP (Real-time Transport Protocol) est un protocole Internet permettant de
transporter des données qui ont des propriétés en temps réel. Il s'agit d'un format standard
permettant de transmettre des données en temps réel telles que des données audio et vidéo, sur
internet ou d’autres réseaux IP. Il est souvent utilisé en combinaison avec le protocole UDP
(User Datagram Protocol) car UDP est plus rapide que TCP et convient mieux aux
communications en temps réel.
Figure 1.01 : Figure 1: RTP et UDP sur la couche transport
1.1.1 Objectif de RTP
Le RTP est utilisé pour :
- Faciliter la transmission en continu de flux multimédias (audio, vidéo).
1
- Offrir un mécanisme d’ordonnancement des paquets (grâce aux numéros de
séquence).
- Permettre la synchronisation entre plusieurs flux multimédias (par exemple, audio
et vidéo).
1.1.2 Caractéristiques de RTP
- Transmission sur UDP (User Datagram Protocol)
o UDP ne garantit pas la livraison des paquets, mais il est rapide et réduit la
latence.
o Contrairement à TCP, qui retransmet les paquets perdus (ce qui cause des
délais), RTP continue la transmission sans attendre les paquets perdus.
- Numérotation des paquets
o Chaque paquet RTP contient un numéro de séquence pour permettre la
réorganisation à la réception en cas de transmission hors ordre.
- Horodatage (Timestamp)
o Permet de synchroniser les flux audio et vidéo.
o Indique à quel moment un paquet doit être joué pour éviter les décalages.
- Identification de la source (SSRC - Synchronization Source Identifier)
o Un identifiant unique dans chaque session RTP qui permet d’identifier
l’émetteur du flux.
- Encapsulation flexible
o RTP peut transporter différents types de données : audio, vidéo, ou toute autre
information en temps réel.
o Compatible avec de nombreux codecs comme G.711, G.729, Opus (pour
l’audio) et H.264, VP8 (pour la vidéo).
1.1.3 Structure d’un paquet RTP
Un paquet RTP comprend plusieurs champs, représentés dans la figure suivante :
2
Figure 1.02 : Figure 2: En-tête de RTP
- Version (2 bits) : indique la version du protocole.
- Padding (1 bit) : utilisé si des octets supplémentaires sont ajoutés pour
l'alignement.
- Extension (1 bit) : signale la présence d’un en-tête supplémentaire.
- CSRC count (4 bits) : indique le nombre de sources contribuant au flux.
- Marker bit (1 bit) : utilisé pour indiquer des événements particuliers (comme la
fin d’une trame).
- Payload Type (7 bits) : identifie le type de codec utilisé.
- Sequence Number (16 bits) : permet d’ordonner les paquets.
- Timestamp (32 bits) : permet la synchronisation des flux.
- SSRC (Synchronization Source Identifier, 32 bits) : identifie l'émetteur du flux.
- Données (Payload) : contient l’audio ou la vidéo compressée.
Dans le Payload Type (PT), pour certain audio et video, l’encodage est dans le tableau suivant :
3
Figure 1.03 : Figure 3: Nom d'encpdage pour certain Payload Type
1.2 RTCP (RTP Control Protocol)
RTCP est le protocole complémentaire de RTP. Il ne transporte pas de données multimédias,
mais est utilisé pour surveiller la qualité du service (QoS) et synchroniser les flux audio et
vidéo.
1.2.1 Fonctions principales de RTCP
Il a pour fonctions de :
- Contrôle de qualité : RTCP envoie des rapports sur la qualité du flux RTP (perte de
paquets, latence, gigue, etc.).
- Synchronisation : Il synchronise l’audio et la vidéo dans les applications
multimédias.
- Identification des participants : Il peut transmettre des informations comme le nom
de l'expéditeur.
1.2.2 Types de messages RTCP
Chaque paquet RTCP commence avec un en-tête similaire à celle du paquet de données RTP.
Le champ payload type identifie le type du paquet. On a cinq payload type de RTCP:
4
- SR (Sender Report) : Rapport du serveur sur les statistiques de transmission (taux de
paquets envoyés, timestamp, etc.).
- RR (Receiver Report) : Rapport du récepteur contenant les informations sur la
qualité de réception.
- SDES (Source Description) : Données descriptives sur l’émetteur (nom, email, etc.).
- BYE : Indique la fin d'une session.
- APP (Application-defined message) : Messages spécifiques à une application.
Le paquet RTCP est representé dans la figure suivante :
Figure 1.04 : Figure 4: paquet RTCP
Où numéro de port de RTCP UDP = numéro de port de RTP UDP +1
L’en tête de RTCP est illustré dans la figure suivante :
Figure 1.05 : Figure 5: en-tête RTCP
1.3 Utilisation de RTP et RTCP en VoIP
La VoIP (Voice over IP) utilise RTP et RTCP pour transmettre et contrôler la qualité des
appels audio et vidéo.
5
1.3.1 Fonctionnement d’un appel VoIP avec RTP et RTCP
- Établissement de la connexion : Un protocole comme SIP (Session Initiation
Protocol) est utilisé pour configurer l’appel (négociation des codecs, ouverture des
ports RTP/RTCP).
- Transmission de la voix et de la vidéo avec RTP : Les flux audio et vidéo sont
envoyés sous forme de paquets RTP sur UDP. RTP numérote et horodate les paquets
pour assurer un bon ordonnancement.
- Surveillance de la qualité avec RTCP : Les participants envoient des rapports RTCP
pour surveiller la latence, la perte de paquets et la gigue. Si la qualité est mauvaise,
les paramètres (comme le codec ou le débit) peuvent être ajustés.
- Fin de l’appel: RTCP envoie un message BYE pour signaler la fin de la session. SIP
ferme ensuite la connexion.
1.3.2 Importance de RTP et RTCP en VoIP
- Faible latence : RTP fonctionne avec UDP, évitant les délais dus à la correction
d'erreurs de TCP.
- Synchronisation des médias : RTCP permet de synchroniser audio et vidéo.
- Surveillance de la qualité : RTCP informe si la connexion est de mauvaise qualité, ce
qui permet d'ajuster les paramètres en temps réel.