Vous êtes sur la page 1sur 33

1

Voz sobre IP - VoIP

Luiz Arthur

SIP - Protocolo de Inicializao de Sesso


O SIP (Session Initiation Protocol - Protocolo de Inicializao de Sesso) um
protocolo de aplicao e sinalizao usado para estabelecer, manter e terminar
sesses multimdia. Dentre essas sesses multimdias esto includas voz sobre
IP, telefonia IP, conferncias de udio e vdeo, e outras aplicaes similares
envolvendo udio, vdeo e dados.
O SIP foi definido em maro de 1999 no RFC 2543 do grupo de trabalho
MMUSIC (Multiparty Multimedia Session Control) do IETF. Pode-se usar o SIP
para estabelecer sesses de mdia e transportar descries de sesses dessas. O
SIP suporta sesses unicast e multicast bem como chamadas ponto-a-ponto e
multiponto.
SIP um protocolo de aplicao baseado em texto, que utiliza o modelo
requisio-resposta, similar ao HTTP, para iniciar sesses de comunicao
interativa entre usurios, estabelecer chamadas e conferncias atravs de redes
via IP. Alm disso, no utiliza o padro H.323, e possui os seus prprios
mecanismos de segurana e confiabilidade.
Dentre os vrios protocolos VoIP de sinalizao, o SIP est se tornando
rapidamente um padro de mercado para novas implementaes, devido
grande quantidade de servios agregados que oferece, estrutura relativamente
simples (semelhante ao protocolo HTTP) e facilidade de desenvolvimento de
novos produtos.

Voz sobre IP - VoIP

Luiz Arthur

SIP - Protocolo de Inicializao de Sesso


Em geral, o SIP utilizado em conjunto com outros protocolos tambm
especificados pelo IETF.
Por exemplo, o RTP/RTCP so utilizados para transportar dados em tempo real e
prover informaes sobre Qualidade de Servio (QoS).
Outros protocolos utilizados pelo SIP so: RTSP (Real-Time Streaming Protocol)
para controlar a entrega de fluxos de distribuio de mdia; o MGCP e o
Megaco/H248 para controlar gateways de mdia, e o SDP (Session Description
Protocol) para descrever sesses multimdia. Outros protocolos tambm
podem ser utilizados em conjunto com o SIP para prover servios especializados
aos usurios.
Independente da necessidade de outros protocolos para viabilizar a comunicao
entre os participantes de uma sesso, o SIP oferece primitivas que podem ser
utilizadas para estabelecer, modificar e terminar uma sesso. Assim, o
tratamento da sinalizao de uma comunicao independente do tratamento do
transporte de mdias.
Como exemplo de funes bsicas do SIP, podem ser destacadas: localizao
de uma terminao, sinalizao do desejo de se comunicar, negociao dos
parmetros necessrios para estabelecer a sesso e trmino da sesso.

Voz sobre IP - VoIP

Luiz Arthur

Os principais componentes/elementos da arquitetura do SIP so: User Agents e


Network Servers.
User Agents SIP
Os User Agents podem ser um cliente (UAC - User Agent Client), capaz de
iniciar requisies SIP; ou um servidor (UAS - User Agent Server), capaz de
receber e responder a requisies SIP.
O Agente do Usurio o terminal SIP ou o software de estao final.
Funciona como um cliente no pedido de inicializao de sesso e tambm
como um servidor quando responde a um pedido de sesso. Alm disso,
considerado inteligente, pois armazena e gerencia situaes de chamada. Dessa
forma, a arquitetura bsica cliente/servidor.
Os User Agents fazem chamadas utilizando um endereo parecido com o de email
ou
nmero
de
telefone,
como
por
exemplo:
SIP:user@proxy.university.edu. Isso faz URLs SIP fceis de associar com o
endereo de e-mail do usurio.
Um agente do usurio pode aceitar e receber chamadas de outro agente sem
requerer nenhum componente adicional do SIP. Esses componentes restantes
fornecem gerenciamento e funcionalidades adicionais.

Voz sobre IP - VoIP

Luiz Arthur

Network Servers
Os Network Servers que se dividem em trs tipos, sendo:

Servidor Proxy, atua tanto como um servidor como um cliente, com o


propsito de fazer requisies SIP em benefcio de outros clientes que no
podem fazer as requisies diretamente;
Servidor de redirecionamento (Servidor Redirect), que ao invs de
repassar pacotes, envia um para o remetente, avisando quem o prximo
servidor, mapeando endereos.
Servidor de registro (Servidor Registrar) que recebe atualizaes da
localizao dos usurios na rede, aceitando requisies do tipo REGISTER;

A dualidade do agente SIP possibilita a comunicao ponto-a-ponto com


outros agentes sem a necessidade de utilizao dos servidores. O agente
normalmente implementado em telefones IP, softphones e adaptadores de
telefones analgicos (ATA).
Os demais elementos so necessrios quando a estrutura da rede VoIP aumenta.
Por exemplo, entre suas diversas funes o servidor proxy pode reescrever o
cabealho das mensagens antes de encaminh-las para o devido destino, que
pode ser um agente ou mesmo outro servidor proxy.

Voz sobre IP - VoIP

Luiz Arthur

O servidor de redirecionamento orienta os servidores proxy com respeito ao


prximo passo na rota para o receptor da mensagem SIP.
Qualquer agente SIP deve, primeiramente, registrar-se no servidor de
registro para poder iniciar chamadas no sistema.
As informaes sobre localizao deve constantemente ser renovadas pelo
agente, com base no tempo de expirao desses registros. A manuteno correta
dessas informaes permite o direcionamento adequado das chamadas para os
agentes destinatrios.
Servidor Proxy SIP
O Servidor Proxy SIP passa requisies adiante do Agente do Usurio para o
prximo servidor SIP e tambm retem informaes com a finalidade de
contabilidade/ faturamento.
Alm disso, pode operar com comunicao stateful (por exemplo, como um
circuito) ou stateless (como um TCP, por exemplo).
O servidor SIP stateful pode dividir chamadas por ordem de chegada para que
vrias extenses estejam tocando de uma vez e o primeiro que atender pega
a chamada.

Voz sobre IP - VoIP

Luiz Arthur

Essa capacidade significa que pode especificar que seu telefone de desktop SIP,
seu telefone celular SIP e suas aplicaes de videoconferncia de casa SIP
possam TOCAR todas ao mesmo tempo quando qualquer chamada de chegada, e
voc atende de alguma dessas locaes e comea a conversar enquanto a outras
duas locaes param de tocar.
O servidor proxy SIP pode utilizar mltiplos mtodos para tentar resolver o
pedido de endereo de host, incluindo busca de DNS, busca em base de dados
ou retransmitir o pedido para o prximo servidor proxy.
Servidor de Redirecionamento SIP
A funo do servidor de redirecionamento SIP fornecer a resoluo de nome e
locao do usurio. O servidor de redirecionamento SIP reponde ao pedido do
Agente do Usurio fornecendo informaes sobre o endereo do servidor
para que o cliente possa contatar o endereo diretamente.
Registrador SIP - Registrar
O Registrador SIP fornece um
recebe informaes do Agente
registro. um servidor que
implementar outras funes SIP,
servidores SIP.

servio de informao de localidades, ele


do Usurio e armazena essa informao de
aceita pedidos Register, ele tambm pode
um registrar pode estar localizado com outros

Voz sobre IP - VoIP

Luiz Arthur

Os resgistrars so necessrios para manter-se informado da localizao


atual de um usurio. Pois o endereo IP de um usurio pode mudar sob vrias
circunstncias (IPs dinmicos - DHCP, usurio mvel). Ento para ser capaz de
alcanar esse usurio a partir de seu endereo SIP, uma entidade na rede SIP
precisa manter o mapeamento entre endereos SIP e endereos IP. Este o
objetivo do registrar.
Apesar de ser mais recente, o SIP est ganhando maior aceitao por parte
de uma grande fatia dos fabricantes que desenvolvem equipamentos de voz sobre
IP. Exemplos notveis incluem o Messenger da Microsoft. Uma linha mais
desenvolvida de produtos com a arquitetura SIP est disponvel pelo Cisco,
PingTel, 3COM, e outros. Alm disso, h um certo nmero de produtos de fonte
aberta do SIP disponveis atualmente.
Mensagem SIP
Existem dois tipos de mensagens: requests (pedidos) que feita pelo cliente e
responses (respostas) que so retornadas pelos servidores em resposta aos
pedidos feitos pelos clientes. Todas as mensagens contm um cabealho que
descreve os detalhes da comunicao. Mensagens SIP so codificadas usando
a sintaxe de mensagem HTTP/1.1. O conjunto de caracteres o ISO 10646 com
codificao UTF-8. As mensagens SIP podem ser enviadas sobre TCP ou UDP
atravs de mltiplas mensagens transportados por uma nica conexo TCP ou
UDP.

Voz sobre IP - VoIP

Luiz Arthur

Requerimentos SIP
A comunicao SIP possui como caracterstica seis tipos de mensagens de
pedidos. Esses pedidos provm mtodos que permitem aos usurios e
servidores de rede, localizar, convidar e gerenciar chamadas.
Os pedidos SIP so enviados do terminal cliente para o terminal servidor. As
mensagens de pedidos mais comuns so:
INVITE: usado para iniciar uma chamada, esse mtodo indica que o usurio
ou servio est convidado outro a participar de uma sesso. Neste convite
enviado o tipo de mdia que vai ser usado e se o receptor no suportar a mdia
ele pode enviar na resposta quais tipos de mdia ele suporta, e o terminal
chamador ira reorganizar o pedido e tenta estabelecer novamente a
comunicao.

ACK: Esse um pedido correspondente a um pedido INVITE, um pedido ACK


enviado pelo cliente para confirmar que ele recebeu uma resposta final do
servidor, como 200 OK;

BYE: enviado pelo agente de origem ou pelo agente de destino para


interromper uma chamada, antes de finalizar a chamada, os terminais
enviam pedidos para o servidor indicando o desejo de encerrar a sesso;

Voz sobre IP - VoIP

Luiz Arthur

CANCEL: Pode ser enviado para interromper um pedido que foi enviado
anteriormente, enquanto o servidor ainda no tiver enviado uma resposta final,
esse comando no afeta os pedidos que j foram aceitos pelo servidor;

OPTIONS: Questiona quais mtodos e extenses so suportadas por


ambos os pontos. O servidor pode indicar em sua resposta quais mtodos e
extenses so suportadas por ele, e pelo usurio (fornecidos na pergunta).

REGISTER: Mtodo utilizado pelo cliente para registrar o apelido do seu


endereo em um servidor SIP.

Mensagens de Respostas SIP


As mensagens de resposta so dividas em 6 grupos:
1xx Responses: Respostas de informaes. Exemplo: 180 Tocando

2xx Responses: Respostas de transaes bem sucedidas. Exemplo: 200 OK

3xx Responses: Respostas de redirecionamento. Exemplo: 302 Usurio


deslocado temporariamente.

4xx Responses: Respostas de falhas de requisio. Exemplo: 404 No


encontrado.

10

Voz sobre IP - VoIP

Luiz Arthur

5xx Responses: Respostas de falha no servidor. Exemplo: 503 Servio


Indisponvel.

6xx Responses: Repostas de falha geral do sistema. Exemplo: 600 Todos os


servios esto ocupados

Dentro destes grupos, inmeros tipos de repostas so possveis.


Cabealhos de mensagem
Abordaremos agora os campos de cabealho SIP mais comumente utilizados,
discriminando-os nos grupos indicados anteriormente.
INVITE sip:1@192.0.0.3:6060;user=phone SIP/2.0
Via: SIP/2.0/UDP 192.0.0.2:6060
From: UserAgent<sip:99@192.0.0.2:6060;user=phone>
To: 1<sip:1@192.0.0.3:6060;user=phone>
Call-ID: 96561418925909@192.0.0.2
Cseq: 1 INVITE
Subject: UTFPR.EDU.BR
Contact: <sip:99@192.0.0.2:6060;user=phone>
Content-Type: application/sdp
Content-Length: 168

11

Voz sobre IP - VoIP

Luiz Arthur

v=0
o=- 238540244 238540244 IN IP4 10.0.0.2
s=VOVIDA Session
c=IN IP4 10.0.0.2
t=3174844751 0
m=audio 23456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
a=ptime:20
Neste exemplo, podemos verificar que o cabealho de constitui de dois
blocos. O primeiro, at o campo Content-Lenght, contm o cabealho SIP.
Abaixo disto, temos o corpo da mensagem com os parmetros do protocolo
SDP, que est especificado como padro para a sinalizao do pacote.
INVITE sip:1@192.0.0.3:6060;user=phone SIP/2.0 na primeira linha, o
comando INVITE vem precedido da identificao do protocolo (SIP), usurio
de destino separado do domnio por uma arroba, porta utilizada na comunicao,
e um ponto e vrgula. Este ponto e virgula tem o objetivo de separar os dados do
destinatrio dos primeiros parmetros do protocolo.
O primeiro (user), informa que a origem da chamada vem de um telefone
(phone), e no de um dispositivo que esteja emulando o aparelho.
Em seguida, informado que o protocolo SIP verso 2.0 suportado.

12

Voz sobre IP - VoIP

Luiz Arthur

VIA (Cabealho de Requisio e Resposta)- No nosso exemplo: Via:


SIP/2.0/UDP 192.0.0.2:6060. Guarda dados do caminho que o pacote est
percorrendo. A cada passagem por um Servidor Proxy, um novo campo VIA
acrescentado com informaes deste servidor. Um parmetro Branch pode ser
adicionado junto ao VIA, informando a origem da mensagem em relao ao
sistema. Assim, evita-se que o pacote caia em looping na rede.
FROM (Cabealho de Requisio e Resposta) - Campo de extrema importncia
nesta categoria de mensagens, pois identifica quem est enviando o pacote.
Neste exemplo, a SIP URL <sip:1@192.0.0.2:6060;user=phone> relacionada
ao nome User Agent.
TO (Cabealho de Requisio e Resposta) - Trabalha da mesma forma que o
FROM, porm identifica o destinatrio, com o nome seguido de sua SIP URL.
No nosso exemplo: To: 1<sip:1@192.0.0.3:6060;user=phone>
Call-ID (Cabealho de Requisio e Resposta) - Prov uma identificao nica
para convites ou registros de um mesmo usurio. Segue de @ e o endereo
IP de origem. Exemplo: Call-ID: 96561418925909@192.0.0.2
Cseq (Cabealho de Requisio e Resposta) - Nmero seqencial enviado junto a
requisio. Permite ao destinatrio saber a ordem correta das chamadas, a
fim de evitar confuses na interpretao das mesmas. No exemplo Cseq: 1
INVITE, verificamos que a primeira mensagem sendo enviado do tipo INVITE.

13

Voz sobre IP - VoIP

Luiz Arthur

Subject (Cabealho de Requisio e Resposta) - Campo normalmente no


utilizado. Serve para descreve a natureza da ligao.
Contact (Cabealho de Requisio e Resposta) - Mostra uma SIP URL da
origem a fim de fornecer ao destinatrio um endereo de resposta. Exemplo:
Contact: <sip:99@192.0.0.2:6060;user=phone>
Content-Type (Cabealho de Corpo de Mensagem) - Informa o formato da
mensagem de mdia. Neste caso Content-Type: application/sdp, para tal ser
utilizado o protocolo SDP.
Lenght (Cabealho de Corpo de Mensagem) - Mostra o tamanho da mensagem
de mdia enviada. Neste caso, 168 octetos enviados por SDP.
SDP (Sintaxe de Descrio de Sesso)
O SIP utiliza o protocolo de descrio de sesso o SDP (Session Description
Protocol) prov a informao necessria para habilitar a conversao em
uma sesso multimdia. Este protocolo inclui descrio sobre a mdia a ser usada
(codecs, taxas de amostragem), o destino da mdia (endereo IP e nmero da
porta), o protocolo de transporte a ser empregado, informaes sobre a banda
a ser utilizada, o nome da sesso e motivo da mesma, bem como o tempo de
atividade da sesso, ou seja, para negociar os parmetros necessrios para
estabelecer uma sesso.

14

Voz sobre IP - VoIP

Luiz Arthur

Durante o processo de estabelecimento de uma sesso, necessrio negociar a


mdia a ser utilizada (voz, vdeo ou dados) e as respectivas informaes para a
transmisso dessa mdia, como o padro do codec e o protocolo de controle para
transmisso.
Enquanto o SIP especifica o processo para o anncio da descrio das
informaes de uma sesso, o SDP especifica apenas o formato para
descrio dessas informaes.
Com base nesse formato, a descrio das informaes de uma sesso
inteiramente representada de forma textual utilizando a codificao UTF-8.
Ao contrrio de representaes binrias que economizam largura de banda da
rede, a representao textual de informaes foi adotada para facilitar a
portabilidade, permitir uma variedade de formas de transporte e possibilitar
que ferramentas baseadas em texto pudessem gerar e processar as descries
das sesses.
Para contornar a ineficincia no consumo de banda, a descrio especificada
em uma forma compacta, substituindo o nome por caracteres nicos.
O texto puro tambm causa problemas com segurana.

15

Voz sobre IP - VoIP

Luiz Arthur

Como o protocolo SIP, o SDP usa cdigos em texto. Uma mensagem SDP
composta de varias linhas, chamadas campos, onde os nomes, abreviados em
uma letra minscula, indicam qual parmetro est sendo definido.

16

Voz sobre IP - VoIP

Luiz Arthur

Ento voltando ao nosso exemplo o corpo do SDP iniciamos com:


v=0 Essa linha marca o inicio de descrio do nvel de sesso, em que
identificada a verso do SDP utiliza. At o momento, o valor zero o padro.
o=- 238540244 238540244 IN IP4 10.0.0.2
Essa linha indica o
originador/criador da sesso. Podendo ser representado pelo caractere hfen
caso o sistema no suporte identificao do sistema, como neste caso. O segundo
valor refere identificao da sesso, que nico, normalmente um NTP
(Network Time Protocol). O terceiro valor o nmero da verso do anncio
feito para a sesso e visa indicar qual o anncio mais recente, normalmente
tambm o NTP, a seqncia seguinte define o tipo de rede bem como o
endereo da origem da sesso representada pelo IP.
s=VOVIDA Session
Esta linha indica o nome da sesso e representada por
uma cadeia de caracteres no formato ISO 10646.
c=IN IP4 10.0.0.2
Essa linha apresenta os dados para conexo. O primeiro
valor define o tipo de rede. no final o endereo de quem vai gerar a mdia.
T=3174844751 0
Essa linha apresenta o horrio que a sesso foi ativa, o
segundo valor o horrio do encerramento da sesso, no caso de 0 essa no
tem horrio para termino.

17

Voz sobre IP - VoIP

Luiz Arthur

m=audio 23456 RTP/AVP 0


Essa linha marca o incio da descrio do nvel de
mdia e apresenta os informaes sobre uma das mdias de sesso. O
primeiro valor o tipo de mdias que pode ser: audio, video, application, data e
control. O segundo valor indica a porta de transporte que a mdia deve ser
transmitida. O valor seguinte indica o protocolo de transporte normalmente o
RTP. Por fim, os ltimos valores indicam as opes de padro de codecs da
mdia, em ordem de preferncia.
a=rtpmap:0 PCMU/8000
Essa linha define um primeiro atributo especfico para
a mdia identificada anteriormente, com respeito opo de cdigo 0.
Embora o RTP determine as caractersticas de mdia, a especificao
determina uma descrio explicita desta mdia neste campo.
a=ptime:20
Essa linha define um quarto atributo especfico para a mdia
identificada anteriormente, independente da opo selecionada. O valor
determina que cada pacote ter 20 ms de amostra de voz.
Transaes
O SIP um protocolo baseado em transao e, assim, determina etapas ou pontos
e controle aps uma srie de trocas de mensagens independentes entre os
componentes de sua arquitetura.

18

Voz sobre IP - VoIP

Luiz Arthur

As transaes possuem sempre um lado cliente e um lado servidor. A


transao cliente envia a requisio, enquanto a transao servidora envia a
resposta.
Existem dois modos de comunicao possveis utilizando a arquitetura de
sinalizao. O modo ponto-a-ponto e o modo indireto que feito via servidor
proxy e requer a presena de outros servidores de apoio que integram a infraestrutura de um sistema de telefonia baseado em SIP.
Comunicao ponto-a-ponto
A descrio do fluxo de mensagens com o modo simples ponto-a-ponto descrito
a seguir:
1. O usurio do agente A inicia a chamada e uma requisio INVITE enviada
diretamente para o endereo do agente B, iniciando a primeira transao. O
INVITE contm informaes de oferta SDP listando os padres de codecs de
mdia suportados e a porta RTP para receber o stream de mdia.
2. A resposta 180 Ringing imediatamente enviada pelo agente B para o
agente A, to logo o agente B receba o INVITE, selecione um dos padres de
codecs suportados e ative uma indicao udio e/ou visual para alertar o usurio.
Essa resposta indica qual padro de codecs de mdia foi selecionado e qual porta
o agente B receber o streaming RTP

19

Voz sobre IP - VoIP

Luiz Arthur

3. Quando o usurio do agente B atende a chamada, a resposta 200 OK


enviada para o agente A, encerrando a primeira transao.
4. O agente A, tendo recebido as respostas 180 Ringing e 200 OK, envia uma
requisio ACK para completar o 3-handshake, iniciando e encerrando a
segunda transao.
5. Os dois canais de voz de mo nica estabelecidos entre os agentes, uma A para
B, e outro de B para A, atravs do RTP, so utilizados pelos usurios para a
conversao.
7. Quando ao encerramento da comunicao, um exemplo seria, o agente B
encerra a conversao e envia uma requisio BYE para o agente A, iniciando a
terceira transao.
8. O agente A recebe a requisio BYE e envia a resposta 200 OK finalizando a
chamada, fechando o canal de voz e encerrando a terceira transao.
A comunicao ponto-a-ponto o modo mais simples e direto de negocia
uma sesso entre agentes SIP. Porm, como no existe nenhum servidor de
apoio, diversos recursos e servios podem no ser suportados, como por
exemplo, servio de localizao.

20

Voz sobre IP - VoIP

Luiz Arthur

Exemplo de conexo ponto-a-ponto:


Agente A

Agente B
1. INVITE

INVITE
agenteB@10.1.1.1
c=IN ipv4 10.1.1.5
m=audio 49170 RTP/AVP 0

2. 180 Ringing
3. 200 OK
4. ACK
5. Voz RTP
6. BYE
7. 200 OK

21

Voz sobre IP - VoIP

Luiz Arthur

Comunicao via Proxy


A comunicao via proxy a forma tradicional de comunicao em um sistema de
telefonia baseado em SIP. Nesse modo indireto, o agente envia as mensagens
de sinalizao para o servidor proxy, responsvel por encaminhar as
mensagens.
No proxy, o encaminhamento das mensagens pode ser feito de duas maneiras:
sem estado e com estado.
No encaminhamento sem estado, nenhuma informao sobre a sesso
mantida pelo proxy aps o encaminhamento de uma mensagem.
No encaminhamento com estado, o proxy mantm informaes sobre a
sesso corrente, facilitando o encaminhamento de mensagens referentes
mesma sesso. Para que este controle possa ser feito, necessrio garantir que
as mensagens sigam sempre atravs de um mesmo caminho entre a origem
e o destino. Para o processo de intermediao, o campo Via, utilizado para
mapear o caminho percorrido por uma mensagem de requisio.
Em muitos sistemas, para que possam ser implementados controles de chamadas,
como tarifao, fundamental que mensagens de requisio referentes
mesma sesso sigam sempre pelo mesmo caminho, como por exemplo, INVITE,
ACK e BYE.

22

Voz sobre IP - VoIP

Luiz Arthur

Registro
Quando um agente conectado a um sistema de telefonia baseado em SIP, o
primeiro passo se registrar em um servidor de registro. Assim, as
mensagens de entrada no sistema que sejam destinadas ao usurio podero ser
encaminhadas corretamente para a localizao corrente do usurio.
O processo de registro pode ser feito de forma direta mas geralmente existe
um proxy no meio do caminho. Esse processo utiliza a requisio REGISTER e
alguns campos-chave no cabealho da mensagem.
O processo de registro pode ser como o exemplo a seguir:
Servidor
Proxy

Agente

Servidor
registrar

1. REGISTER
2. 100 Trying
1. REGISTER
4. 200 OK
5. 200 OK

Voz sobre IP - VoIP

23

Luiz Arthur

Depois de registrado o agente pode fazer ligaes, a seguir apresentado


um esquema demonstrado um esquema de comunicao entre dois agentes
devidamente registrados:
Servidor
proxy A

Agente A

Servidor
registrar

Servidor
proxy B

1. Invite
3. Invite
2. 100
Trying

4. 302
Moved
Temporarily

5. ACK
6. Invite
7. Trying
8. Invite
9. 302

Moved
Temporarily

10. ACK
11. Invite
12. Trying

Agente B

24

Voz sobre IP - VoIP

Luiz Arthur

1. O Agente A envia uma requisio INVITE para o servidor proxy encaminhar para o Agente B.
2. O servidor proxy A recebe o INVITE e notifica o Agente A enviando a resposta Trying.
3. Como o esquema de autenticao simplificado, o servidor proxy A simplesmente encaminha a
mensagem INVITE para o servidor de redirecionamento.
4. O servidor de redirecionamento envia a resposta 302 Moved Temporarily com o mapeamento
obtido a partir do servio de localizao.
5. O servidor proxy A envia a requisio ACK para o servidor de redirecionamento a fim de
completar o 3-handshake.
6. O proxy A utiliza a informao de mapeamento da resposta recebida para gerar um novo
INVITE a ser enviado para o servidor proxy B.
7. O servidor proxy B recebe o INVITE e notifica o servidor proxy A.
8. O servidor proxy B encaminha o um INVITE para o servidor de redirecionamento.
9. O servidor de redirecionamento envia a resposta 302 com o mapeamento da localizao de A.
10. O proxy B envia seu ACK para completar o 3-handshake.
11. O proxy B utiliza a informao de mapeamento da resposta recebida para gerar um novo
INVITE a ser enviado ao Agente B
12. O Agente B recebe o INVITE e notifica o servidor proxy B.
Um outro exemplo de comunicao SIP mostrado a seguir:

25

Voz sobre IP - VoIP

26

Voz sobre IP - VoIP

Luiz Arthur

Esquema comparativo entre H.323 e SIP

O que o SIP faz e o H.323 no faz


Velocidade:
A Primeira coisa que impressiona quando voc l o documento preliminar SIP a
sua simplicidade. O SIP faz em uma transao o que o H.323 verso 1 faz em
quatro ou cinco trocas de mensagem. Alm disso, o SIP pode usar UDP, ao
passo que o H.323v1 e 2 tm de usar o TCP. A combinao dessas diferenas
resultou em um tempo de configurao muito menor para os pontos finais SIP.
Isso inspirou diretamente algumas modificaes introduzidas no H.323v2, a
saber, o procedimento Fast connect e a capacidade de tunelar mensagens H.
245 em mensagens Q.931. Outras melhorias esto a caminho. Como a capacidade
de usar sinalizao UDP.

27

Voz sobre IP - VoIP

Luiz Arthur

Multicast:
O IETF ganhou muita experincia em multicast. H milhares de usurios
regulares do M-bone e cada vez mais aplicaes multicast. O SIP foi projetado
para funcionar em backbones com capacidade para multicast, no apenas para
os fluxos de mdia, como o H.323, mas tambm para as mensagens de
sinalizao. Por exemplo, uma mensagem INVITE pode ser enviada para um
grupo multicast. Isso til para call centers ou quando se quer encontrar uma
pessoa em uma empresa. As verses 1 e 2 do H.323 precisam usar multi-unicast
para o mesmo fim.
Uso de URLs:
O uso de URLs como identificadores poderoso. primeira vista pode parecer
no haver
grandes diferenas
entre
um
alias
de
e-mail H.323
(John@compania.com) e uma URL SIP (sip:John@compania.com). Na verdade, h
uma diferena: um alias de e-mail H.323 considera que o protocolo usado seja o
H.323, ao passo que o SIP especifica ele mesmo o protocolo na URL. Por causa
disso, um servidor SIP pode redirecionar uma chamada para servidores
no SIP de maneira bem flexvel. Um terminal SIP, quando recebe uma chamada
de outro terminal SIP, pode redirecionar a chamada para uma pgina Web
ou para uma URL mailto. Isso facilita a integrao de aplicaes de udio e vdeo
com outras aplicaes multimdia.
Esse recurso agora est disponvel com o tipo URL_ID do aliasAddress no H.
225v2, mas o esquema global de nomes do H.225 est comeando a parecer um
pouco desordenado (h323-ID, url-ID, transport-ID, email-ID, partynumber).

28

Voz sobre IP - VoIP

Luiz Arthur

Priorizao de chamadas:
O campo de cabealho Priority um adicional til que foi negligenciado no H.
323. Muitos pases tm exigncias legais para priorizar algumas linhas
telefnicas.
Codificao de texto:
A codificao de texto uma caracterstica atrativa para uns e um problema para
outros. Esta uma das muitas interminveis guerras religiosas entre
programadores. A codificao de texto tem muitas vantagens simples, pode
ser depurada facilmente usando-se simples sniffers de rede e faz com que
problemas de interoperabilidade sejam detectveis visualmente. A maioria dos
programadores concordam sobre esses recursos.
O problema pode ser desempenho e tamanho, como alguns sustentam que
protocolos binrios so mais fceis de codificar e decodificar. Obviamente o
tamanho das mensagens de texto muito maior que o tamanho das mensagens
codificadas em binrio.

29

Voz sobre IP - VoIP

Luiz Arthur

O que o H.323 faz que o SIP no faz


Canais lgicos:
O H.323 faz uma distribuio clara entre os tipos de mdia que podem ser
enviados ou recebidos e as combinaes que podem ser vlidas por outro lado
(capacidades) e os tipos de mdia que esto ativos e, de fato, enviados para a
rede (canais lgicos) por outro lado.
O SIP no tem uma distribuio como esta, uma vez que os pontos finais SIP
divulgam apenas os codificadores que eles podem receber e no h nenhum
procedimento para abrir uma conexo de mdia em separado do ato de
efetivamente enviar a mdia. Isso simplifica a sinalizao e pode parecer uma
vantagem primeira vista. No entanto, em alguns casos, especialmente quando
se implementa servidores que fazem uso intensivo de recursos, isso pode ser
um problema, porque toda vez que o servidor divulga uma capacidade, ele
precisa criar um soquete de escuta.
Ao contrario, um cliente H.323 precisa abrir um soquete apenas quando ele
recebe uma mensagem OpenLogicalchannel (se no estive no modo FastStart).
Esse comportamento do SIP pode resultar em vrios soquetes inativos e como a
maioria dos codificadores de voz implementam deteco ativa de voz e podem
estar inativos mesmo se os terminais estiverem querendo enviar dados de mdia,
a estratgia para fechar esses soquetes inativos no completamente trivial.

30

Voz sobre IP - VoIP

Luiz Arthur

Controle de conferncias :
O H.323 sozinho ou em combinao com o H.332, possui recursos poderosos para
controle de conferncia. O SIP no foi projetado para o controle de
conferncias e, conseqentemente, muitos dos recursos necessrios para fazer
uma conferncia controlada no existem (ainda).
Codificao binria:
As mensagens H.323 so codificadas de acordo com o Q.931 para o
subconjunto de mensagens H.225 provenientes do Q.931 todas as outras
mensagens, bem como as extenses H.323 para mensagens Q.931, so
codificadas usando-se regras de codificao de pacotes (Packet Encoding Rules PER) ASN.1 (Abstract Syntax Notation 1). Isso provavelmente gerou tanto
interesse a respeito da complexidade do H.323. O fato que misturar dois
mtodos de codificao com regras totalmente diferentes no a melhor das
idias. Isso implica tambm grandes esforos de programao por parte das
empresas que ainda no tm uma implementao Q.931 e um compilador ASN.1.
Finalmente, depurar os problemas de interoperabilidade entre os terminais H.
323 exige monitores de rede com capacidade de decodificao tanto Q.931
quanto PER ASN.1. Existem alguns (um foi distribudo pela Microsoft aos
membros do SG16 do ITU como uma extenso do Network Monitor da Microsoft),
mas ainda no um recurso padro da maior parte das ferramentas.

31

Voz sobre IP - VoIP

Luiz Arthur

Portanto h de fato uma curva de aprendizado ngreme, mas uma vez que uma
empresa tenha um compilador ASN.1 e uma implementao Q.931, existem
algumas vantagens em usar uma codificao binria:

Tamanho do PDU otimizado;


(talvez) O desempenho melhor.

O tamanho dos PDUs de sinalizao no , em geral, um problema nas redes


modernas. No entanto, se o H.323 fosse ser usado em redes sem fio (o ETSI est
levando em considerao o H.323 para o sistema mvel de terceira gerao,
UMTS), isso seria uma vantagem.
O desempenho discutvel no caso do H.323. verdade que a maioria dos
protocolos binrios so extremamente rpidos porque os programadores
simplesmente mapeiam as estruturas C para buffers e vice-versa. Tanto o PER
quanto o Q.931 so muitos mais complexos que isso e o desempenho depende da
implementao.
Descoberta de Gatekeepers:
No estado atual do RFC SIP, a descoberta de gatekeepers multicast parece ser
mais slida no H.323, permitindo que um terminal saiba qual gatekeeper est
respondendo. Mas isso um detalhe secundrio que pode ser facilmente
corrigido em verses posteriores do protocolo.

32

Voz sobre IP - VoIP

Luiz Arthur

Tendo analisado o funcionamento bsico das duas especificaes percebese que o H.323 bem mais complexo que o SIP.
O SIP utiliza campos de cabealhos, regras de codificao, cdigos de erro e
mecanismos de autenticao semelhantes ao HTTP, e teve assim um
desenvolvimento mais voltado para a Internet, contrariando a complexidade do
H.323. Esta simplicidade e conseqente capacidade de adaptao em ambiente
WEB criam uma explicita tendncia de que o SIP cresa a ponto de dominar a
comunicao por VoIP.
Mas isto apenas uma expectativa, pois muitas empresas apostam na
padronizao do protocolo H.323, e desta forma provavelmente apenas o tempo
dir qual o protocolo que dominara, porm isto pode nem acontecer!

33
fim

Voz sobre IP - VoIP

Luiz Arthur

Vous aimerez peut-être aussi