sábado, 22 de agosto de 2009

Radiografia de uma chamada VoIP

A melhor forma de se entender o processo de uma chamada VoIP é estudar como ela acontece.Para se estabelecer uma comunicação Voip muitos são os fatores envolvidos e grande parte deles é incontrolável, por isso entendo que os comentários que tenho ouvido sobre o VoIP são um tanto levianos, neste artigo quero mostrar como se inicia uma chamada VoIP.

Uma chamada de voz usando rede pode acontecer em diferentes cenários e cada um possui uma característica, por exemplo: Para se estabelecer a chamada devemos estar em uma rede, seja ela Publica do tipo Internet, seja uma VPN, seja uma rede do tipo ATM, ou seja, uma rede MPLS. Cada uma dessas redes possui uma característica e um ambiente com mais e menos controles, nas redes com possibilidades de controles extensivos a qualidade da chamada será muito boa e poderemos até mesmo ter uma conexão de voz muito superior a da telefonia convencional que também trafega em rede, o caso é que a rede de telefonia convencional é velha com problemas estruturais e com seus meios físicos totalmente comprometidos. Imagine uma rede moderna em fibra ótica do tipo NGN trafegando voz, nesse caso teremos uma chamada muito superior a uma convencional.

Como é a radiografia de uma chamada de voz

Uma chamada de voz é um processo que estabelece uma comunicação entre usuários utilizando dois terminais de um sistema de trafego de pacotes de voz seja ele pela rede de telefonia convencional seja ele pela rede IP, para elucidar este processo vamos começar mostrando como acontece na telefonia convencional.

Diagrama



Para iniciar o processo disca-se um número de telefone a fim de estabelecer a chamada, e caso a chamada complete fica estabelecido a comunicação entre os pontos do usuário que realizou a chamada e do usuário que a recebeu.

No Brasil o órgão regulador da telefonia convencional e de outras formas de comunicação – ANATEL – estabeleceu que 65% das tentativas de conexão telefônica originadas devem ser completadas e a isso chamou de Plano Geral de Metas de Qualidade (PGMQ), que é exigido das operadoras de telefonia fixa Brasileira.

Caso a chamada não se complete poderemos ter alguns fatores determinantes como:

• O terminal chamado não atende a chamada.
• O terminal chamado está ocupado.
• O número discado não existe ou foi discado incorretamente.
• Congestionamento na rede.

O material acima foi retirado de um tutorial escrito por Eduardo Tude, Engenheiro de Teleco (IME 78) e Mestre em Teleco (INPE 81) tendo atuado nas áreas de Redes Ópticas, Sistemas Celulares e Comunicações por Satélite.

Radiografia de uma chamada de voz através de rede.

Para estabelecer o processo de uma chamada de voz usando rede, vamos dar uma radiografia do Protocolo que é responsável pelo mesmo o SIP – que é o responsável pelo começo da chamada a esse protocolo outros se unirão para fazer com que a chamada chegue até o seu destino e todo o ciclo se complete através da realização de uma comunicação de voz entre dois ou mais pontos.

Suponhamos que temos dois dispositivos habilitados que poderá ser um telefone convencional, um celular ou mesmo um softfone e claro teremos que assumir que este dispositivo esta conectado a uma rede onde esta estabelecido uma comunicação inicial entre dois ou mais pontos, como por exemplo uma Internet.

No exemplo iremos mostrar uma troca básica de mensagens entre dois dispositivos na tentativa de se estabelecer uma sessão. Quero lembrar que iremos mostrar somente o inicio da chamada e que para se ter todo o processo de comunicação de transmissão de voz em uma rede IP alem do protocolo SIP teremos envolvidos no processo protocolos como UDP, RTP, RTCP, TLS, SCTP e outros procedimentos necessários a codificação e ao transporte de pacotes de voz.

Diagrama
Em inglês o processo tem normalmente o “called” e calling party.



A figura mostra como se processa a troca de mensagens entre os dois pontos, sendo que as setas
Indicam a direção da transmissão. No exemplo estamos assumindo que o pacote que esta sendo transmitido é um pacote de áudio, mas poderia ser outro tipo.

Como pode ser visto, Tesla é o “calling party” e Marconi é o “called”, e o processo se inicia com um comando conhecido como SIP INVITE, que contem os detalhes do tipo de sessão que será estabelecido podendo ser uma simples chamada de voz, uma transmissão de multimídia complexa ou até mesmo uma sessão de jogo.
A mensagem que esta sendo enviada pelo INVITE esta demonstrada abaixo:

INVITE sip:marconi@radio.org SIP/2.0
Via: SIP/2.0/UDP lab.high-voltage.org:5060;branch=z9hG4bKfw19b
Max-Forwards: 70
To: G. Marconi
From: Nikola Tesla ;tag=76341
Call-ID: 123456789@lab.high-voltage.org
CSeq: 1 INVITE
Subject: About That Power Outage...
Contact:
Content-Type: application/sdp
Content-Length: 158
v=0
o=Tesla 2890844526 2890844526 IN IP4 lab.high-voltage.org
s=Phone Call
c=IN IP4 100.101.102.103
t=0 0
m=audio 49170 RTP/AVP 0
a=rtpmap:0 PCMU/8000
18 SIP: Understanding the Session Initiation Protocol
INVITE
180 Ringing
200 OK
ACK
200 OK
BYE
Media session
Tesla Marconi

Como podemos ver acima versar sobre o que esta acontecendo em uma chamada de voz não é tão simples como todos pensam.

Nenhum comentário:

Ads Inside PostM

Teste