Protocolos De Convergência

Post on 27-Jun-2015

3.189 views 6 download

description

Protocolos De Convergência de uma rede NGN

Transcript of Protocolos De Convergência

VoIP e NGNProtocolos de Convergência

Frederico Madeira <fred@madeira.eng.br>www.madeira.eng.br

Sumário

➔ Características➔ SIP➔ SDP➔ IAX2➔ MeGaCo➔ Sigtran

Características

✔ Durante chamada de Voz ou Vídeo em uma NGN, dois caminhos de comunicação são estabelecidos:✔ Troca de mensagens de sinalização✔ Transporte de Voz ou Vídeo

✔ Mensagens de Sinalização✔ Utilizado para trocar informações sobre o estado das

chamadas e negociar parâmetros das conexões entre os terminais.

✔ Exemplos: MGCP, MeGaCo/H.248, H323, SIP, IAX2✔ Dependem da arquitetura de rede implementada

Características✔ Transporte de Voz

✔ A voz é convertida de seu estado analógica para pacotes✔ O protocolo que a transporta é o RTP (Real Time Protocol)✔ A conversão da voz/vídeo para transporte via pacotes é feita

através de Codecs.

SIP (Session Initialization Protocol)

✔ Protocolo de sessão mais utilizado dentro da tecnologia VoIP

✔ Estabelece, modifca e termina as sessões de multimídia, fornecendo meios para o endereçamento e localização dos membros.

✔ Arquitetura baseada no modelo de cliente-servidor onde os clientes iniciam uma chamada e o servidor responde às chamadas.

✔ Protocolo baseado em texto e se assemelha com o HTTP

✔ Mensagens SIP são compostas de requisições e respostas especificas

SIP (Session Initialization Protocol)

✔ Protocolo do IETF definido pela RFC 3261

✔ Mesma função dos protocolos de sinalização da rede de telefonia tradicional, só que no mudo IP.

✔ Não reserva recursos na rede

✔ Usa o SDP para descrever sessões de mídia

✔ Endereçamento através de URI (Uniform Resource Indicator)

Ex: sip:fred@provedor.com.br

sip:558133332222@provedor.com.br

Elementos da Arquitetura

Elementos da Arquitetura

✔ User agents (UA)✔ Qualquer aplicação cliente ou dispositivo que inicia uma conexão SIP.✔ UAC (User Agent Client): gera as requisições SIP✔ UAS (User Agent Server): resposnde as requisições SIP✔ Normalmente são telefones IP, PC's ou gateways

✔ Proxy Server✔ Intermediário entre os UA✔ Interpretam/re-escrevem as mensagens SIP.✔ Ponto de contato para envio/recebimento de mensagens de sinalização

Elementos da Arquitetura

✔ Servidor de Registro (Registrar Server)✔ Recebe as atualizações sobre a localização atual dos usuários✔ Normalmente, está localizado no mesmo servidor que o Proxy Server

✔ Servidor de Redirecionamento (Redirect Server)✔Redireciona as mensagens para um outro servidor

✔ Servidor de Localização (Location Server)

✔ É usado pelo redirect server ou pelo proxy server para identificar

as possíveis localizações dos destinos chamados.

Requisições

Método FuncionalidadesINVITE Mensagem usada para iniciar uma chamadaACK Mensagem de Confirmação FinalBYE Libera uma chamada

CANCEL Cancela uma requisição pendente. Não possuiefeito em uma chamada já estabelecida

OPTIONS Consulta as funcionalidades suportadasREGISTER Mensagem usada para registrar um usuário em

um servidor sip

Exemplo de Requisição SIP

INVITE sip:55551234@audiocodes.com SIP/2.0Via: SIP/2.0/UDP audiocodes.com:5060From: Ronen <sip:44441234@audiocodes.com>To: Trainee <sip:55551234@audiocodes.com.>Call-ID: 123456789@audiocodes.comCSeq: 1 INVITESubject: SIP TrainingContact: Ronen <sip:44441234@training.org>;Content-Type: application/sdpContent-Length: 147

Resposta

Cód Respostas Principais Mensagems

1xx Informativas 100 Trying180 Ringing181 Call forwarded182 Queued183 Session Progress(Early Media)

2xx Sucesso 200 OK202 Accepted

Cód Respostas Principais Mensagems

3xx Redirecionamento 300 Multiple Choices 301 Moved Perm 302 Moved Temp 380 Alternative Serv

4xx Falhas derequisições

400 Bad Request 401 Unauthorized 403 Forbidden 404 Not Found 405 Bad Method 415 Unsupp Content 420 Bad Extensions 486 Busy Here

5xx Falhas no Servidor 504 Timeout503 Unavailable501 Not Implemented500 Server Error

6xx Falhas Globais 600 Busy Everywhere603 Decline604 Doesn’t Exist606 Not Acceptable

Exemplo de Resposta SIP

SIP/2.0 200 OKVia: SIP/2.0/UDP audiocodes.com:5060From: Ronen <sip:44441234@training.org>;tag=76341To: trainee <sip:55551234@audiocodes.com>Call-ID: 123456789@audiocodes.comCSeq: 1 INVITESubject: SIP TrainingContact: Ronen <sip:44441234@training.org>;Content-Type: application/sdpContent-Length: 134

Exemplo de Resposta SIP – Mapeamento na Aplicação✔ Retirado do site:

http://www.mhspot.com/sts/siptosis_config_issues.html

I'm trying to make a skype call and sometimes I get some strange SIP response messages? Here's the default possible call failure response codes. Your PBX/Asterisk Server will need to handle these statuses.

* 603 Skype User refused the call

* 404 Skype invalid user or Number

* 408 Skype Call Failed (possibly no skype credit)

* 600 Skype user is busy

* 480 Over Usage Limit (as of version 20090526)

* 403 Anything else (possibly no skype credit)

SIP Call Flow

SIP Call Flow - Wireshark

UA - 2ProxyUA - 1

SDP (Session Description Protocol)

➔ Descrito pela RFC 4566

➔ Protocolo responsável por carregar as informações relativas à mídia.

➔ Durante a inicialização da sessão, o SDP informa: – quais os codecs suportados, – qual a porta esperada, – qual o padrão de DTMF usado e – demais informações necessárias para a

transferência de dados multimídia

➔ Transportado no payload do SIP

SDP (Session Description Protocol)

IAX – Inter-Asterisk eXchange Protocol

✔ Atualmente na versão 2, descrito na RFC5456✔ Protocolo de mídia e sinalização peer-to-peer.✔ Assemelha-se ao Sip;

✔ Pode registrar localizações, criar, modificar, terminar sessões multimídias e carregar a sessão de mídia.

✔ Multipelxa a sinalização e múltiplos fluxos sobre uma única associação UDP entre dois hosts.✔ Protocolo de sinalização ✔ Protocolo para transporte de fluxos de

mídia

IAX – Inter-Asterisk eXchange Protocol

IAX – Inter-Asterisk eXchange Protocol

Objetivos

✔ Diminuir a utilização de banda por transmissões de mídia e de sinalização.✔ Utiliza protocolo binário ao invés de

protocolo em texto como o SIP (Maior eficiência no consumo de banda)

✔ Evitar problemas de NAT✔ Tx/Rx dos fluxos de sinalização e mídia na

mesma porta

✔ Possibilidade de transmissão do plano de discagem

IAX – Inter-Asterisk eXchange Protocol

Comandos – Control Frames➔ Carrega dados de controle de sessão➔ Refere-se a controle de uma conexão com um

endpoint IAX

0x01 0x02 0x03 0x04 0x05

0x08 0x0e

Subclass Value (Type Frame =0x04) Description

HangupRing

Ringing (ringback)Answer

Busy ConditionCongestion Condition

Call Progress

IAX – Inter-Asterisk eXchange ProtocolComandos – IAX Frames (subclass 0x06)➔ Provê gerenciamento sobre os endpoints IAX.➔ Lidam com sinalização (call setup,manutenção e

desconexão).

0x01 NEW 0x02 PING 0x03 PONG 0x04 ACK 0x05 HANGUP 0x06 REJECT 0x07 ACCEPT 0x08 AUTHREQ 0x09 AUTHREP 0x0a INVAL 0x0b LAGRQ 0x0c LAGRP 0x0d REGREQ

0x0e REGAUTH

0x0f REGACK

Subclass Value (Type

Frame =0x06) Description Details

Initiate a new call Ping request

Ping reply Acknowledgement

Initiate call teardown Reject

Accepted Authentication request

Authentication reply Invalid call

Lag request Lag reply

Registration request

Registration authenticate

Registration acknowledgement

IAX – Inter-Asterisk eXchange Protocol

Comandos – IAX

Description Details

0x10 REGREJ Registration reject0x11 REGREL Registration release0x12 VNAK Video/Voice retransmit request0x13 DPREQ Dialplan request0x14 DPREP Dialplan response0x15 DIAL Dial0x16 TXREQ Transfer request0x17 TXCNT Transfer connect0x18 TXACC Transfer accept0x19 TXREADY Transfer ready0x1a TXREL Transfer release0x1b TXREJ Transfer reject0x1c QUELCH Halt audio/video transmission0x1d UNQUELCH Resume audio/video transmission0x20 MWI Message waiting indication0x21 UNSUPPORT Unsupported message

Subclass Value

IAX – Inter-Asterisk eXchange ProtocolCall Flow – Fluxo da Chamada

MeGaCo (IETF) / H.248 (ITU)

✔ Descrito na RFC 3525

✔ Protocolo de controle de Media Gateways (MG)

✔ Pouco utilizado em relação ao SIP (mais recente)✔ MeGaCo é a nova evolução do padrão MGCP✔ Semelhante ao MGCP em muitas formas

✔ Oferece várias melhorias e funcionalidades que o MGCP não

oferece✔ Mestre/Escravo onde o MGC é o meste e os MG são os

escravos.

MeGaCo (IETF) / H.248 (ITU)

MeGaCo (IETF) / H.248 (ITU) - Elementos

✔ Terminação✔ Fontes de um ou mais fluxo de mídia.

✔ Contexto✔ Associação entre uma coleção de terminações

✔ Comandos✔ Manipular terminações e contextos.

MeGaCo (IETF) / H.248 (ITU) - Comandos

✔ Add ✔ Adiciona uma terminação a um contexto

✔ Subtract✔ Remove uma terminação a um contexto

✔ Move ✔ Move uma terminação de um contexto para outro

✔ Modify✔ Muda estado da terminação

MeG

aC

o (IE

TF) / H

.248 (IT

U) – C

all F

low

MeGaCo (IETF) / H.248 (ITU)

MeGaCo (IETF) / H.248 (ITU)

VoIP e NGNProtocolos de Convergência

Frederico Madeira <fred@madeira.eng.br>www.madeira.eng.br