A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

RTP – Real Time Transport Protocol

Apresentações semelhantes


Apresentação em tema: "RTP – Real Time Transport Protocol"— Transcrição da apresentação:

1 RTP – Real Time Transport Protocol
VoIP RTP – Real Time Transport Protocol

2 RTP -Real Time Transport Protocol
O Protocolo de transporte mais utilizado para aplicações é o TCP. , porém, para aplicações em tempo real, o TCP não possui as características desejadas. Algumas funções do TCP o desqualificam para o seu uso como protocolo de transporte das aplicações de tempo real, como:

3 RTP -Real Time Transport Protocol
1 – O TCP é um protocolo ponto-a-ponto e estabelece conexão entre dois pontos finais. No entanto não é concebido para transmissão multicast. 2 – O TCP inclui mecanismos de retransmissão de longos segmentos, que cheguem fora de ordem. Este tipo de mecanismo não é possível de ser usado em aplicações de tempo real. 3 – O TCP não contém mecanismos convenientes de associação de informação de temporização dos segmentos, que é outro requerimento de aplicações em tempo real.

4 RTP -Real Time Transport Protocol
Outro protocolo de transporte largamente usado é o UDP, ele não possui as duas primeiras características listadas, mas da mesma forma que o TCP, não provê informações de temporização. Sozinho, o UDP também não provê as ferramentas para as aplicações de tempo real.

5 RTP -Real Time Transport Protocol
Assim o IETF definiu um protocolo na RFC 1889 chamado RTP (Real Time Protocol), para o transporte da aplicação e um protocolo chamado RTPC (Real Time Control Protocol) para o controle do RTP. O Transporte do Tráfego em Tempo Real difere do tráfego em alta velocidade, como na figura a seguir

6 RTP -Real Time Transport Protocol
A Figura ilustra um esquema típico em tempo real. Nela, um servidor gera áudio à ser transmitido a 64 kbps. O sinal de áudio digitalizado é transmitido em pacotes de 160 bytes de dados, assim cada pacote é transmitido à cada 20ms. Estes pacotes são entregues a uma Internet encaminhados à um PC multimídia, que recompõe este áudio no instante que chega. No entanto, devido ao delay variável imposto pela Internet, os pacotes não chegam à cada 20ms no destino. Para compensar isto, os pacotes que chegam são bufferizados, atrasados um pouco, e então liberados à taxa constante ao software que recompõe o áudio.

7 Requerimentos para Comunicação em Tempo Real
Baixo Jitter Baixa Latência Habilidade para integrar facilmente serviços em tempo real e não em tempo real. Adaptabilidade para dinamicamente mudar as condições de tráfego da rede

8 Requerimentos para Comunicação em Tempo Real
Boa performance para redes grandes com um número grande de conexões Requerimentos modestos de bufferização dentro da rede Alta capacidade efetiva de utilização Baixo overhead em bits de header por pacote Pequeno processamento do overhead por pacote dentro da rede e nos sistemas finais.

9 RTP - Arquitetura

10 Header Fixo RTP RTP header format: V P X CC M Payload Type
1 2 3 4 5 6 7 8 9 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 2 1 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 3 1 V P X CC M Payload Type Sequence Number V = Version P = Padding X = Extension CC = CSRC Count M = Marker Timestamp Synchronization Source Identifier Contributing Source Identifiers (0 … 15 entries)

11 RTP – Real Time Protocol
Version (2 bits) : A versão atual é 2. Padding (1 bit): Indica quando octetos de enchimento aparecerem no fim do payload. O enchimento é usado se a aplicação requer que o payload seja um inteiro múltiplo de algum tamanho, tal como um múltiplo de 32 bits (4 bytes)

12 RTP – Real Time Protocol
Extension (1bit): Se setado, o header fixado é seguido por exatamente um header estendido, que é usado para extensões experimentais do RTP CSRC Count (4 bits): O número de identificadores de CSRC que seguem o header fixo

13 RTP – Real Time Protocol
Marker (1 bit): A interpretação do Marker bit depende do tipo de payload; ele é usado para identificar um limite no fluxo de dados. Para sinais de vídeo, é setado para marcar o fim de um quadro de imagem. Para sinais de áudio é setado para marcar o início de um surto de voz. Payload Type (7 bits): Identifica o formato de um payload RTP, que seguirá o header.

14 RTP – Real Time Protocol
Sequence Number (16 bits): Cada fonte começa com um número de seqüência randômico, que é incrementado para cada pacote RTP transmitido. Isso permite a detecção de perda de pacotes e geração de estatísticas de timestamp. Um conjunto de pacotes podem ter um mesmo timestamp se são gerados logicamente no mesmo tempo, por exemplo vários pacotes levando o mesmo quadro de vídeo Timestamp (32 bits): Corresponde ao instante de geração do primeiro octeto dos dados do payload, a unidade de tempo deste campo depende do tipo de payload. Os valores devem ser gerados por um clock interno.

15 RTP – Real Time Protocol
Synchronization Clock Identifier: Um valor gerado randomicamente que identifica de maneira única a fonte dentro de uma sessão.

16 RTP – Infos após Header fixo
Contributing Source Identifier: Identifica uma fonte de contribuição para o payload. Usada na função mixer.

17 RTCP – Real Time Control Protocol
Definição: O protocolo RTP é usado apenas para a transmissão de dados do usuário, tipicamente em conexões multicast entre todos os participantes em uma sessão. Um protocolo separado de controle (RTCP) também opera de modo multicast para prover a realimentação para as fontes do RTP assim como para todos os participantes de uma sessão. O RTCP usa o mesmo serviço de transporte do UDP porém em porta diferente. Cada participante manda periodicamente um pacote RTCP para todos os outros participantes da sessão. A RFC 1889 mostra quatro funções desenvolvidas pelo RTCP:

18 RTPC – Tipos de pacotes definidos:
Os pacotes podem ser: Sender Report (SR) Receiver Report (RR) Source Description (SDES) Goodbye (BYE) Application Specific

19 RTPC – Informações nos pacotes
Informações genéricas: Version (2 bits): Versão atual 2 Padding (1 bit): Se setado significa que este pacote contém bytes de enchimento e é o último desta transmissão. Neste caso, o último byte do enchimento contém o número de bytes de enchimento. Count (5 bits): O número de blocos de relatório de recepção contido em um pacote SR ou RR, ou o número de fontes contidas em um pacote SDES ou BYE.

20 RTPC – Informações nos pacotes
Informações genéricas, cont.: Packet Type (8bits): Identifica o tipo de pacote RTCP. Lenght (16 bits): Contado em agrupamentos de 32 bits. Em adição, os pacotes RR e SR contém os seguintes campos: Synchronization Source Identifier: Identifica a fonte do pacote RTCP.

21 Header de um Pacote RTPC
Sender Report: V = version P = padding RC = reports count PT = packet type SR = sender report SSRC = synchronisation source NTP = network time protocol

22 Sender Report (SR): Os receptores RTCP provêem uma realimentação da qualidade usando um pacote Sender Report (SR) ou Receiver Report (RR), dependendo se o receptor é também um transmissor durante esta sessão. O campo Sender Information Block inclui os seguintes campos:

23 O campo Sender Information Block
NTP Timestamp (64 bits): Este campo é usado para, em combinação com os timestamps retornados dos relatórios de recepção para medir o tempo de percurso entre esses receptores. RTP Timestamp (32 bits): Este campo é usado para criar timestamps em pacotes de dados RTP. Senders Packet Count (32 bits): Número total de pacotes RTP transmitidos pelo transmissor nesta sessão. Senders Object Count (32 bits): Número total de octetos de payload transmitidos pelo transmissor nesta sessão.

24 O campo Sender Information Block, cont.
Seguindo o bloco de informação do transmissor existem zero ou mais blocos reception report. Um bloco é incluído para cada fonte em que este participante tenha recebido dados durante esta sessão. Cada bloco desses possui os seguintes campos: SSRC_n (32 bits): Identifica a fonte referida por este bloco de relatório. Fraction Lost (8 bits): A fração de pacotes de dados RTP desta fonte perdidos desde que o pacote SR ou RR imediatamente anterior foi transmitido. Cumulative Number of Packets Lost (24 bits): Número total de pacotes RTP desta fonte perdidos desde o início desta sessão.

25 O campo Sender Information Block, cont.
Extended Highest Sequence Number Received (32 bits): Os 16 bits menos significativos contém o maior número de seqüência dos pacotes RTP recebidos desta fonte. Os 16 bits menos significativos mostra o número de vezes que o número de seqüência foi resetado. Interarrival Jitter (32 bits): Contém uma estimativa do jitter experimentado pelos pacotes RTP nesta sessão. Last SR Timestamp (32 bits): Contém o último Timestamp do Bloco SR recebido da fonte. Delay Since Last SR (32 bits): O delay, expresso em frações de 2-16 segundos, entre a recepção do último SR da fonte n e a transmissão deste relatório.

26 Receiver Report O formato dos pacotes RR é o mesmo que o SR, exceto que o campo Packet Type possui outro valor e não há informações de transmissor.

27 Receiver Report

28 Source Description: O pacote Source Description (SD) é usado por uma fonte para prover mais informações sobre si. O pacote consiste de um header de 32 bits seguido de zero ou mais comandos, cada um dos quais contém informações de descrição da fonte.

29 Goodbye: O pacote BYE indica que um ou mais fontes não estão mais ativas. Isto é usado pelos receptores para deixar de contar o silêncio dessas fontes como falha de comunicação.


Carregar ppt "RTP – Real Time Transport Protocol"

Apresentações semelhantes


Anúncios Google