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

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

VoIP RTP – Real Time Transport Protocol. RTP -Real Time Transport Protocol zO Protocolo de transporte mais utilizado para aplicações é o TCP., porém,

Apresentações semelhantes


Apresentação em tema: "VoIP RTP – Real Time Transport Protocol. RTP -Real Time Transport Protocol zO Protocolo de transporte mais utilizado para aplicações é o TCP., porém,"— Transcrição da apresentação:

1 VoIP RTP – Real Time Transport Protocol

2 RTP -Real Time Transport Protocol zO 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. zAlgumas 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 y1 – O TCP é um protocolo ponto-a-ponto e estabelece conexão entre dois pontos finais. No entanto não é concebido para transmissão multicast. y2 – 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. y3 – 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 zOutro 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 zAssim 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. zO 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 yBaixo Jitter yBaixa Latência yHabilidade para integrar facilmente serviços em tempo real e não em tempo real. yAdaptabilidade para dinamicamente mudar as condições de tráfego da rede

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

9 RTP - Arquitetura

10 Header Fixo RTP RTP header format: V PXCCMPayload TypeSequence Number Timestamp Synchronization Source Identifier V = Version P = Padding X = Extension CC = CSRC Count M = Marker Contributing Source Identifiers (0 … 15 entries)

11 RTP – Real Time Protocol zVersion (2 bits) : yA versão atual é 2. zPadding (1 bit): yIndica 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 zExtension (1bit): ySe setado, o header fixado é seguido por exatamente um header estendido, que é usado para extensões experimentais do RTP zCSRC Count (4 bits): yO número de identificadores de CSRC que seguem o header fixo

13 RTP – Real Time Protocol zMarker (1 bit): yA 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. zPayload Type (7 bits): yIdentifica o formato de um payload RTP, que seguirá o header.

14 RTP – Real Time Protocol zSequence Number (16 bits): yCada 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 zTimestamp (32 bits): yCorresponde 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 zSynchronization Clock Identifier: yUm valor gerado randomicamente que identifica de maneira única a fonte dentro de uma sessão.

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

17 RTCP – Real Time Control Protocol zDefinição: yO 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. yO 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. yA RFC 1889 mostra quatro funções desenvolvidas pelo RTCP:

18 RTPC – Tipos de pacotes definidos: zOs pacotes podem ser: ySender Report (SR) yReceiver Report (RR) ySource Description (SDES) yGoodbye (BYE) yApplication Specific

19 RTPC – Informações nos pacotes zInformações genéricas: yVersion (2 bits): Versão atual 2 yPadding (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. yCount (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 zInformações genéricas, cont.: yPacket Type (8bits): Identifica o tipo de pacote RTCP. yLenght (16 bits): Contado em agrupamentos de 32 bits. zEm adição, os pacotes RR e SR contém os seguintes campos: ySynchronization Source Identifier: Identifica a fonte do pacote RTCP.

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

22 Sender Report (SR): zOs 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 zNTP 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. zRTP Timestamp (32 bits): Este campo é usado para criar timestamps em pacotes de dados RTP. zSenders Packet Count (32 bits): Número total de pacotes RTP transmitidos pelo transmissor nesta sessão. zSenders Object Count (32 bits): Número total de octetos de payload transmitidos pelo transmissor nesta sessão.

24 O campo Sender Information Block, cont. zSeguindo 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: ySSRC_n (32 bits): Identifica a fonte referida por este bloco de relatório. yFraction 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. yCumulative 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. yExtended 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. yInterarrival Jitter (32 bits): Contém uma estimativa do jitter experimentado pelos pacotes RTP nesta sessão. yLast SR Timestamp (32 bits): Contém o último Timestamp do Bloco SR recebido da fonte. yDelay 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 zO 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: zO 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: zO 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 "VoIP RTP – Real Time Transport Protocol. RTP -Real Time Transport Protocol zO Protocolo de transporte mais utilizado para aplicações é o TCP., porém,"

Apresentações semelhantes


Anúncios Google