Real-Time Transport Protocol
Real-Time Transport Protocol (RTP) est un protocole Internet standard qui fournit aux programmes un moyen de gérer la transmission en temps réel de données multimédia sur les services réseau unicast ou multicast.
Défini à l'origine conformément à la spécification RFC (Request for Comments) 1889 de l'IETF (Internet Engineering Task Force), RTP a été développé par le groupe de travail AVT-WG (Audio-Video Transport Working Group) de l'IETF pour permettre à des personnes géographiquement dispersées de participer à des vidéoconférences.
RTP est couramment utilisé dans les applications de téléphonie par Internet. Le protocole ne garantit pas en soi la distribution des données multimédia en temps réel (qui dépend des caractéristiques du réseau), mais fournit les moyens de gérer au mieux les données à l'arrivée.
RTP combine le transport des données et un protocole de contrôle (RTCP), ce qui permet de contrôler la distribution des données sur de grands réseaux multicast.
Dans le cadre de cette surveillance, le récepteur peut détecter les pertes de paquets et compenser la gigue. Les deux protocoles fonctionnent indépendamment des protocoles sous-jacents de la couche transport et de la couche réseau. Les informations de l'en-tête RTP indiquent au récepteur comment reconstituer les données et décrivent comment les flux de bits des codecs sont mis en paquets.
En règle générale, RTP s'exécute au-dessus du protocole UDP (User Datagram Protocol), mais peut utiliser d'autres protocoles de transport. Les deux protocoles SIP (Session Initiation Protocol) et H.323 utilisent RTP.
Les services RTP comprennent un numéro de séquence qui sert à détecter les paquets perdus, l'identification de la charge utile qui décrit le codage multimédia spécifique et permet son adaptation à une éventuelle variation de la bande passante, une indication de trame qui marque le début et la fin de chaque trame, l'identification de la source qui identifie l'origine de la trame et la synchronisation intramédia qui utilise l'horodatage pour détecter et compenser les gigues d'un flux.
Les services RTPC comprennent un retour sur la qualité de service (QoS) qui indique le nombre de paquets perdus, la durée de l'aller-retour et la gigue, ce qui permet aux sources d'ajuster leur débit en conséquence, le contrôle de session qui utilise le paquet BYE RTCP pour laisser les participants faire savoir qu'ils quittent une session, l'identification qui inclut le nom, l'adresse e-mail et le numéro de téléphone d'un participant à titre d'information, et la synchronisation intermédia qui permet de synchroniser les flux audio et vidéo transmis séparément.
Le protocole CRTP (Compressed RTP), conforme à la spécification RFC 2509, a été développé pour diminuer la taille des en-têtes IP, UDP et RTP. Il a cependant été conçu pour fonctionner avec des liaisons point à point fiables et rapides. Dans des conditions moins favorables (retards importants, perte ou désorganisation des paquets), le protocole CRTP ne fonctionne pas au mieux pour les applications en voix sur IP (VoIP). Pour résoudre ce problème, une autre adaptation, ECRPT (Enhanced CRPT), a été définie.