Protocolos SIP e RTP
Jean Carlo Massami Yamada
Paulo Vitor Refatti
Robson Cruz
William Junji Hayashi
Introdução
SIP
Session Initiation Protocol
- É um protocolo de sinalização.
- Descrito na RFC 3261.
- Responsável pela criação, modificação e encerramento de sessões.
- Inclui vários elementos do HTTP e SMTP.
- Se preocupa apenas com o tráfego de sinais.
Mensagens
- São baseadas em texto, utilizando o conjunto de caracteres da ISO 10646.
- Divididas em dois tipos: pedidos (requests) e respostas (responses).
- Para montagem de mensagens válidas são utilizados comandos chamados de métodos.
Estrutura das Mensagens
start line
header
body
Tipo de mensagem e versão do protocolo
Descrição da sessão
Atributos da sessão,
<atributo>:<valor>
Mensagem
Requests
MÉTODO | DESCRIÇÃO |
---|---|
INVITE | Convida um agente para iniciar uma sessão |
BYE | Encerra uma sessão estabelecida |
REGISTER | Registra um usuário no servidor SIP |
CANCEL | Utilizado para encerrar uma sessão não estabelecida |
ACK | Mensagem de confirmação |
OPTIONS | Consulta as funcionalidades disponíveis em um User Agent |
Responses
- Possuem um código de 3 dígitos associado
- Divididos em classes para melhor organização
- O primeiro dígito de cada código corresponde a classe daquela resposta
Código | Classe | Descrição |
---|---|---|
1xx | Provisional | Request Recebida, continuando o processo de chamada |
2xx | Success | Request recebida, compreendida e aceita |
3xx | Redirect | Mais ações são necessárias para o atendimento dessa request |
4xx | Client Error | A request contém erros de sintaxe ou não pode ser completada. |
5xx | Server Error | O servidor falhou em atender um request válida. |
6xx | Global Failure | A request não pode ser atendida por nenhum servidor. |
Funcionamento
RTP
Real-time Transport Protocol
- Fornece funções de transporte de rede fim-a-fim.
- Descrito anteriormente na RFC 1889, atualizado pelas RFC 3550 e 3551.
- Não aborda a reserva de recursos e não garante a qualidade de serviço.
- É auxiliado pelo RTCP.
- Utiliza o UDP para transportar os dados
Componentes
- RTP: carrega os dados em tempo-real.
- RTCP (Real-time Transport Control Protocol): Monitora a qualidade da transmissão e comunica a informação dos participantes
- Ambos são construídos de maneira a serem independentes do meio de transmissão e camadas de rede
Tipos de Mensagens (RTCP)
- Sender Report (SR)
- Receiver Report (RR)
- Source Description (SDES)
- Goodbye (BYE)
Pacotes RTP
Um pacote RTP possui a seguinte estrutura
MAC Header
IP Header
RTP Header
RTP Message
UDP Header
Cabeçalho RTP
Referências
- IANA - RTP parameters <https://www.iana.org/assignments/rtpparameters/rtp-parameters.xhtml>
- Network Sorcery - RTP <http://www.networksorcery.com/enp/protocol/rtp.htm>
- RFC 3261 - SIP <https://tools.ietf.org/html/rfc3261>
- RFC 3550 - RTP <https://tools.ietf.org/html/rfc3550>
- Siptutorial - RTP <http://www.siptutorial.net/RTP/>
- Siptutorial - SIP <http://www.siptutorial.net/SIP/>
Protocolos SIP e RTP
By Robson Cruz
Protocolos SIP e RTP
- 86