Session Initiation Protocol (SIP)

Definido por RFC 3261

Desenhado para criar, modificar e terminar sessões entre dois ou mais participantes.

  • Não limitado a chamadas VoIP.

É um protocolo baseado em texto, similar ao HTTP.

  • Transportado por UDP ou TCP.

    • Segurança é garantia por TLS ou IPSec.

Oferece uma alternativa ao H.323.

É um protocolo peer-to-peer. Os pares numa sessão são chamados de user agents (UAs).

  • User-agent client (UAC) - Uma aplicação cliente que inicia o pedido SIP.

  • User-agent server (UAS) - Uma aplicação servidor que contacta com o utilizador quando o pedido SIP é recebido e retorna uma resposta em nome do utilizador

Funcionalidade

SIP suporta cinco facetas quanto ao estabelecimento e terminação de comunicações multimédia.

Localização do utilizador

Determinação do sistema final a ser usado para a comunicação.

Disponibilidade do utilizador

Determinação da vontade do partido chamado em estabelecer comunicações.

Capacidade do utilizador

Determinação da media e dos parâmetros desta, a serem usados.

Estabelecimento de sessão

"ringing", estabelecimento de parâmetros da sessão tanto no chamador como no chamado.

Gestão da sessão

Inclui transferências e terminação de sessões, modificar parâmetros de sessões e invocar serviços.

Clientes e Serviços

Clientes

  • Telemóveis;

  • Gateways;

  • User Agents;

    • Atua como:

      • Cliente quando inicia um pedido (UAC);

      • Servidor quando responde a um pedido (UAS).

Servidores

Servidor proxy

  • Recebe pedidos SIP de um cliente e encaminha-as pelo cliente.

  • Recebe mensagens SIP e encaminha-as para o próximo servidor SIP na rede.

  • Providência funções como autenticação, autorização, controlo de acesso à rede, routing, retransmissão de pedidos de forma fiável, e segurança.

Servidor de redireccionamento.

  • Providencia ao cliente informação sobre o próximo salto que uma mensagem deve tomar e depois os próximos saltos dos contactos do cliente ou diretamente a UAS.

Registrar server

  • Processa pedidos de UAC's para registar a localização atual.

  • Frequentemente são co-located com um servidor de redireccionamento ou proxy.

Mensagens

SIP usado para comunicação Peer-to-Peer apesar de usar um modelo Cliente-Servidor.

É um protocolo baseado em texto e usa codificação UTF-8.

A mensagem pode ser ou um pedido de um cliente a um servidor, ou a resposta de um servidor a um cliente.

Pedido

  • Request-Line;

  • Um ou mais campos no cabeçalho;

  • Uma linha vazia indica o fim do cabeçalho;

  • Um corpo de mensagem opcional.

Resposta

  • Status-Line;

  • Um ou mais campos no cabeçalho;

  • Uma linha vazia indica o fim do cabeçalho;

  • Um corpo de mensagem opcional.

Todas as linhas, incluido as vazias, têm de terminar com um CRLF

Pedidos

Usa SIP Uniform Resource Indicators (URI) para indicar o utilizador ou serviço a quem o pedido está endereçado.

sip:user:password@host:port;uri-parameters

  • sip:John@doe.com

  • sip:+14085551212@company.com

  • sip:alice@atlanta.com;maddr=239.255.255.1;ttl=15

Pedidos são diferenciados por começarem com a Request-Line.

  • Contem um nome, request-uri, e sip-version

    • Request-Line = Method SP Request-URI SP SIP-Version CRLF

Last updated