Documento escrito por Nico VanHaute, Julien Barascud e Jean-Roland Conca
A difusão dos computadores, associada à disponibilidade de material informático audio/vídeo barato, bem como à disponibilidade de ligações com débito mais elevado, fez emergir o interesse de utilizar a rede Internet para enviar áudio e vídeo, tipos de dados que estavam tradicionalmente reservados para as redes especializadas para esse efeito, e já há alguns anos, o áudio e a videoconferência tornaram-se uma prática corrente. Mas a própria natureza da Internet, que faz com que esta rede não seja adaptada para a transmissão dos dados em tempo real, tem como consequência que a qualidade do áudio enviado através da Internet tenha em média uma qualidade medíocre. Esta tese dirige-se precisamente à análise e solução destes problemas para permitir a uma aplicação de audioconferência ou telefone na Internet adaptar o seu comportamento para manter uma qualidade auditiva aceitável mesmo em casos em que a rede esteja bastante congestionada. Estas soluções, sob a forma de mecanismos de controlo, foram aplicadas e testadas no software de audioconferência e telefone na Internet Free Phone que desenvolvemos. Um estudo sobre o comportamento que teriam estes mecanismos numa Internet que evoluía para integrar a disciplina de serviço Fair Queueing mostrou que estes mecanismos, que seriam ainda necessários, teriam mesmo um melhor desempenho neste tipo de rede.
O objectivo do RTP é fornecer um meio uniforme para transmitir em IP dados sujeitos a constrangimentos de tempo real (áudio, vídeos,…). O papel principal do RTP consiste em aplicar números de sequência de pacotes IP para reconstituir as informações de voz ou de vídeo, ainda que a rede subjacente altere a ordem dos pacotes.
O RTP permite:
O protocolo RTCP baseia-se em transmissões periódicas de pacotes de controlo por todos os participantes da sessão.
É um protocolo de controlo dos fluxos RTP, permitindo veicular informações básicas sobre os participantes de uma sessão, e sobre a qualidade de serviço.
O RTP permite uma gestão dos fluxos multimédia (voz, vídeo) em IP. O RTP funciona em UDP. O cabeçalho RTP comporta informações de sincronização, de numeração. A codificação dos dados dependerá do tipo de compressão. O RFCxxxx especifica RTP, em contrapartida a adaptação de um método de compressão ao RTP será descrita num RFC específico, por exemplo H261 em RTP é descrito no RFCxxxx. Um canal RTP é empregado por tipo de fluxo: um para o áudio, um para o vídeo. O campo xxx é empregado para a sincronização. O RTP oferece um serviço de extremo a extremo. Acrescenta um cabeçalho que fornece as informações de timing necessárias para a sincronização de fluxos tempo real do tipo som e vídeo. O RTP (Realtime Transport Protocol) e o seu companheiro RTCP (Realtime Transport Control Protocol) permitem respectivamente transportar e controlar ondas de dados que têm propriedades "tempo-real". O RTP e o RTCP são protocolos que se situam a nível da aplicação e utilizam os protocolos subjacentes de transporte TCP ou UDP. Mas a utilização de RTP/RTCP faz-se geralmente acima o UDP. O RTP e o RTCP podem utilizar o modo Unicast (ponto a ponto) assim como o modo Multicast (multiponto). Cada um deles utiliza uma porta separada de um par de portas. O RTP utiliza a porta par e o RTCP a porta ímpar imediatamente superior.
O cabeçalho RTP comportará as seguintes informações:
<--------------------------- 32 bits --------------------------->
| V=2 | P | X | CC | M | Sequence number | |
| Timestamp | ||||||
| Identificador da fonte de sincronização (SSRC) | ||||||
| Identificadores da fonte de contribuição (CSRC) | ||||||
Eis o significado dos diferentes campos do cabeçalho:
O objectivo do RTCP é fornecer diferentes tipos de informações e um feedback quanto à qualidade de recepção.
O cabeçalho RTCP comportará as seguintes informações:
O RTCP é um protocolo de controlo associado ao RTP e mede os desempenhos; em contrapartida não oferece garantias. Por isso é necessário empregar um protocolo de reserva do tipo RSVP ou assegurar-se que as relações de comunicações utilizadas são dimensionadas correctamente em relação à utilização que é feita.
O RTP/RTCP está acima do transporte UDP/TCP, mas praticamente acima UDP.
O RTP é um protocolo de sessão, mas está colocado na aplicação. Cabe ao programador integrá-lo.
O RTP não tem nada a ver com o tipo de fluxo, está acima do UDP, e este acima do IP. O tipo de fluxo é teoricamente utilizado em IP.
O RTP traz um número de sequência, um timestamp e um identificador único da fonte (SSRC).
Artigo escrito por Nico VanHaute, Julien Barascud e Jean-Roland Conca.
Última modificação do dia Segunda 17 de Agosto de 2009 às 16:33:08.