SlideShare uma empresa Scribd logo
1 de 33
Baixar para ler offline
VoIP e NGN
 Protocolos 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                     Funcionalidades
   INVITE   Mensagem usada para iniciar uma chamada
    ACK     Mensagem de Confirmação Final
     BYE    Libera uma chamada
  CANCEL    Cancela uma requisição pendente. Não possui
            efeito em uma chamada já estabelecida
 OPTIONS    Consulta as funcionalidades suportadas
 REGISTER   Mensagem usada para registrar um usuário em
            um servidor sip
Exemplo de Requisição SIP



   INVITE sip:55551234@audiocodes.com SIP/2.0
   Via: SIP/2.0/UDP audiocodes.com:5060
   From: Ronen <sip:44441234@audiocodes.com>
   To: Trainee <sip:55551234@audiocodes.com.>
   Call-ID: 123456789@audiocodes.com
   CSeq: 1 INVITE
   Subject: SIP Training
   Contact: Ronen <sip:44441234@training.org>;
   Content-Type: application/sdp
   Content-Length: 147
Resposta
                                          Cód   Respostas        Principais Mensagems
                                          3xx Redirecionamento    300 Multiple Choices
                                                                  301 Moved Perm
                                                                  302 Moved Temp
                                                                  380 Alternative Serv
                                          4xx Falhas           de 400 Bad Request
                                              requisições         401 Unauthorized
                                                                  403 Forbidden
                                                                  404 Not Found
                                                                  405 Bad Method
                                                                  415 Unsupp Content
                                                                  420 Bad Extensions
Cód   Respostas    Principais Mensagems                           486 Busy Here
1xx Informativas   100 Trying             5xx Falhas no Servidor 504   Timeout
                   180 Ringing                                   503   Unavailable
                   181 Call forwarded                            501   Not Implemented
                   182 Queued                                    500   Server Error
                   183 Session Progress   6xx Falhas Globais     600   Busy Everywhere
                   (Early Media)                                 603   Decline
2xx Sucesso        200 OK                                        604   Doesn’t Exist
                   202 Accepted                                  606   Not Acceptable
Exemplo de Resposta SIP


SIP/2.0 200 OK
Via: SIP/2.0/UDP audiocodes.com:5060
From: Ronen <sip:44441234@training.org>;tag=76341
To: trainee <sip:55551234@audiocodes.com>
Call-ID: 123456789@audiocodes.com
CSeq: 1 INVITE
Subject: SIP Training
Contact: Ronen <sip:44441234@training.org>;
Content-Type: application/sdp
Content-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 - 1   Proxy      UA - 2
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


          Subclass Value
                              Description
       (Type Frame =0x04)
              0x01               Hangup
              0x02                 Ring
              0x03          Ringing (ringback)
              0x04               Answer
              0x05           Busy Condition
                               Congestion
              0x08              Condition
              0x0e            Call Progress
IAX – Inter-Asterisk eXchange Protocol
Comandos – IAX Frames (subclass 0x06)
➔
    Provê gerenciamento sobre os endpoints IAX.
➔
    Lidam com sinalização (call setup,manutenção e
    desconexão). Subclass
                 Value (Type Description           Details
                 Frame =0x06)
                    0x01         NEW          Initiate a new call
                    0x02         PING            Ping request
                    0x03        PONG               Ping reply
                    0x04         ACK         Acknowledgement
                    0x05      HANGUP        Initiate call teardown
                    0x06       REJECT                Reject
                    0x07       ACCEPT               Accepted
                    0x08      AUTHREQ      Authentication request
                    0x09      AUTHREP        Authentication reply
                    0x0a        INVAL              Invalid call
                    0x0b       LAGRQ              Lag request
                     0x0c      LAGRP                Lag reply
                    0x0d      REGREQ        Registration request
                    0x0e      REGAUTH      Registration authenticate
                                                 Registration
                    0x0f       REGACK
                                              acknowledgement
IAX – Inter-Asterisk eXchange Protocol

Comandos – IAX
  Subclass
           Description              Details
   Value
   0x10      REGREJ              Registration reject
   0x11      REGREL             Registration release
   0x12        VNAK       Video/Voice retransmit request
   0x13      DPREQ                Dialplan request
   0x14      DPREP               Dialplan response
   0x15        DIAL                      Dial
   0x16      TXREQ               Transfer request
   0x17       TXCNT              Transfer connect
   0x18      TXACC                Transfer accept
   0x19     TXREADY                Transfer ready
   0x1a       TXREL               Transfer release
   0x1b       TXREJ                Transfer reject
   0x1c     QUELCH         Halt audio/video transmission
   0x1d    UNQUELCH      Resume audio/video transmission
   0x20        MWI          Message waiting indication
   0x21 UNSUPPORT             Unsupported message
IAX – Inter-Asterisk eXchange Protocol
Call 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
MeGaCo (IETF) / H.248 (ITU) – Call Flow
MeGaCo (IETF) / H.248 (ITU)
MeGaCo (IETF) / H.248 (ITU)
VoIP e NGN
 Protocolos de
 Convergência
Frederico Madeira <fred@madeira.eng.br>
          www.madeira.eng.br

Mais conteúdo relacionado

Destaque (7)

Codecs
CodecsCodecs
Codecs
 
Rede de Transporte
Rede de TransporteRede de Transporte
Rede de Transporte
 
Core Network e MPLS
Core Network e MPLSCore Network e MPLS
Core Network e MPLS
 
Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)Histórico e Fundamentos das Redes de Nova Geração (NGN)
Histórico e Fundamentos das Redes de Nova Geração (NGN)
 
NGN - Estudo De Caso
NGN - Estudo De CasoNGN - Estudo De Caso
NGN - Estudo De Caso
 
IMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemIMS - IP Multimedia Subsystem
IMS - IP Multimedia Subsystem
 
Modelo de artigo científico básico - com normas ABNT
Modelo de artigo científico básico - com normas ABNTModelo de artigo científico básico - com normas ABNT
Modelo de artigo científico básico - com normas ABNT
 

Semelhante a Protocolos De Convergência

Ataques DDoS - Panorama, Mitigação e Evolução
Ataques DDoS - Panorama, Mitigação e EvoluçãoAtaques DDoS - Panorama, Mitigação e Evolução
Ataques DDoS - Panorama, Mitigação e Evolução
Wilson Rogerio Lopes
 
Arp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de AtaquesArp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de Ataques
Andre Peres
 

Semelhante a Protocolos De Convergência (20)

HTTP, Requisição e Resposta
HTTP, Requisição e RespostaHTTP, Requisição e Resposta
HTTP, Requisição e Resposta
 
Ataques DDoS - Panorama, Mitigação e Evolução
Ataques DDoS - Panorama, Mitigação e EvoluçãoAtaques DDoS - Panorama, Mitigação e Evolução
Ataques DDoS - Panorama, Mitigação e Evolução
 
Arp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de AtaquesArp e DNS Spoof - Prática de Ataques
Arp e DNS Spoof - Prática de Ataques
 
Multimídia: Protocolos de transmissão de áudio e vídeo
Multimídia:  Protocolos de transmissão de áudio e vídeoMultimídia:  Protocolos de transmissão de áudio e vídeo
Multimídia: Protocolos de transmissão de áudio e vídeo
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.js
 
Datacenter na nuvem
Datacenter na nuvemDatacenter na nuvem
Datacenter na nuvem
 
Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!
 
Camada de rede parte1
Camada de rede   parte1Camada de rede   parte1
Camada de rede parte1
 
Sem-IP.ppt
Sem-IP.pptSem-IP.ppt
Sem-IP.ppt
 
Sem-IP.ppt
Sem-IP.pptSem-IP.ppt
Sem-IP.ppt
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Skype
SkypeSkype
Skype
 
Vulnerabilidades em Redes Wifi
Vulnerabilidades em Redes WifiVulnerabilidades em Redes Wifi
Vulnerabilidades em Redes Wifi
 
Entenda e Aplique o IPv6
Entenda e Aplique o IPv6Entenda e Aplique o IPv6
Entenda e Aplique o IPv6
 
21/11/2010 - Apresentação geral de produtos D-Link para o varejo
21/11/2010 - Apresentação geral de produtos D-Link para o varejo21/11/2010 - Apresentação geral de produtos D-Link para o varejo
21/11/2010 - Apresentação geral de produtos D-Link para o varejo
 
Aula 02 - Configuração de Servidor DHCP.pdf
Aula 02 - Configuração de Servidor DHCP.pdfAula 02 - Configuração de Servidor DHCP.pdf
Aula 02 - Configuração de Servidor DHCP.pdf
 
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e VarnishEscalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
Escalabilidade e performance da infraestrutura Plone/Zope com CacheFU e Varnish
 
Segurança Para Pequenas e Médias Empresas
Segurança Para Pequenas e Médias EmpresasSegurança Para Pequenas e Médias Empresas
Segurança Para Pequenas e Médias Empresas
 
Construindo URA e Sistemas de Call Center com Asterisk
Construindo URA e Sistemas de Call Center com AsteriskConstruindo URA e Sistemas de Call Center com Asterisk
Construindo URA e Sistemas de Call Center com Asterisk
 
Construindo URA e Sistemas de Call Center com Asterisk
Construindo URA e Sistemas de Call Center com AsteriskConstruindo URA e Sistemas de Call Center com Asterisk
Construindo URA e Sistemas de Call Center com Asterisk
 

Mais de Frederico Madeira

Mais de Frederico Madeira (20)

WebServices
WebServicesWebServices
WebServices
 
IoT - Internet of Things
IoT -  Internet of ThingsIoT -  Internet of Things
IoT - Internet of Things
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
SI - SAD - Sistemas de Arquivos Distribuídos
SI - SAD  - Sistemas de Arquivos DistribuídosSI - SAD  - Sistemas de Arquivos Distribuídos
SI - SAD - Sistemas de Arquivos Distribuídos
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas Distribuidos
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de Programas
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open source
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software Livre
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation Networks
 
MRTG - SNMP na Prática
MRTG - SNMP na PráticaMRTG - SNMP na Prática
MRTG - SNMP na Prática
 
Introdução ao SNMP
Introdução ao SNMPIntrodução ao SNMP
Introdução ao SNMP
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em Redes
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
 

Último

Último (9)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Protocolos De Convergência

  • 1. VoIP e NGN Protocolos de Convergência Frederico Madeira <fred@madeira.eng.br> www.madeira.eng.br
  • 2. Sumário ➔ Características ➔ SIP ➔ SDP ➔ IAX2 ➔ MeGaCo ➔ Sigtran
  • 3. 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
  • 4. 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.
  • 5. 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
  • 6. 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
  • 8. 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
  • 9. 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.
  • 10. Requisições Método Funcionalidades INVITE Mensagem usada para iniciar uma chamada ACK Mensagem de Confirmação Final BYE Libera uma chamada CANCEL Cancela uma requisição pendente. Não possui efeito em uma chamada já estabelecida OPTIONS Consulta as funcionalidades suportadas REGISTER Mensagem usada para registrar um usuário em um servidor sip
  • 11. Exemplo de Requisição SIP INVITE sip:55551234@audiocodes.com SIP/2.0 Via: SIP/2.0/UDP audiocodes.com:5060 From: Ronen <sip:44441234@audiocodes.com> To: Trainee <sip:55551234@audiocodes.com.> Call-ID: 123456789@audiocodes.com CSeq: 1 INVITE Subject: SIP Training Contact: Ronen <sip:44441234@training.org>; Content-Type: application/sdp Content-Length: 147
  • 12. Resposta Cód Respostas Principais Mensagems 3xx Redirecionamento 300 Multiple Choices 301 Moved Perm 302 Moved Temp 380 Alternative Serv 4xx Falhas de 400 Bad Request requisições 401 Unauthorized 403 Forbidden 404 Not Found 405 Bad Method 415 Unsupp Content 420 Bad Extensions Cód Respostas Principais Mensagems 486 Busy Here 1xx Informativas 100 Trying 5xx Falhas no Servidor 504 Timeout 180 Ringing 503 Unavailable 181 Call forwarded 501 Not Implemented 182 Queued 500 Server Error 183 Session Progress 6xx Falhas Globais 600 Busy Everywhere (Early Media) 603 Decline 2xx Sucesso 200 OK 604 Doesn’t Exist 202 Accepted 606 Not Acceptable
  • 13. Exemplo de Resposta SIP SIP/2.0 200 OK Via: SIP/2.0/UDP audiocodes.com:5060 From: Ronen <sip:44441234@training.org>;tag=76341 To: trainee <sip:55551234@audiocodes.com> Call-ID: 123456789@audiocodes.com CSeq: 1 INVITE Subject: SIP Training Contact: Ronen <sip:44441234@training.org>; Content-Type: application/sdp Content-Length: 134
  • 14. 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)
  • 16. SIP Call Flow - Wireshark UA - 1 Proxy UA - 2
  • 17. 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
  • 19. 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
  • 20. IAX – Inter-Asterisk eXchange Protocol
  • 21. 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
  • 22. 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 Subclass Value Description (Type Frame =0x04) 0x01 Hangup 0x02 Ring 0x03 Ringing (ringback) 0x04 Answer 0x05 Busy Condition Congestion 0x08 Condition 0x0e Call Progress
  • 23. IAX – Inter-Asterisk eXchange Protocol Comandos – IAX Frames (subclass 0x06) ➔ Provê gerenciamento sobre os endpoints IAX. ➔ Lidam com sinalização (call setup,manutenção e desconexão). Subclass Value (Type Description Details Frame =0x06) 0x01 NEW Initiate a new call 0x02 PING Ping request 0x03 PONG Ping reply 0x04 ACK Acknowledgement 0x05 HANGUP Initiate call teardown 0x06 REJECT Reject 0x07 ACCEPT Accepted 0x08 AUTHREQ Authentication request 0x09 AUTHREP Authentication reply 0x0a INVAL Invalid call 0x0b LAGRQ Lag request 0x0c LAGRP Lag reply 0x0d REGREQ Registration request 0x0e REGAUTH Registration authenticate Registration 0x0f REGACK acknowledgement
  • 24. IAX – Inter-Asterisk eXchange Protocol Comandos – IAX Subclass Description Details Value 0x10 REGREJ Registration reject 0x11 REGREL Registration release 0x12 VNAK Video/Voice retransmit request 0x13 DPREQ Dialplan request 0x14 DPREP Dialplan response 0x15 DIAL Dial 0x16 TXREQ Transfer request 0x17 TXCNT Transfer connect 0x18 TXACC Transfer accept 0x19 TXREADY Transfer ready 0x1a TXREL Transfer release 0x1b TXREJ Transfer reject 0x1c QUELCH Halt audio/video transmission 0x1d UNQUELCH Resume audio/video transmission 0x20 MWI Message waiting indication 0x21 UNSUPPORT Unsupported message
  • 25. IAX – Inter-Asterisk eXchange Protocol Call Flow – Fluxo da Chamada
  • 26. 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.
  • 27. MeGaCo (IETF) / H.248 (ITU)
  • 28. 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.
  • 29. 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
  • 30. MeGaCo (IETF) / H.248 (ITU) – Call Flow
  • 31. MeGaCo (IETF) / H.248 (ITU)
  • 32. MeGaCo (IETF) / H.248 (ITU)
  • 33. VoIP e NGN Protocolos de Convergência Frederico Madeira <fred@madeira.eng.br> www.madeira.eng.br