SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
PABX IP
utilizando Asterisk


        Hélio Loureiro
      [helio AT loureiro DT eng DT br]
  [hloureiro AT dlinkbrasil DT com DT br]
Palestrante
                     Hélio Loureiro
                     http://helio.loureiro.eng.br
                     http://www.loureiro.eng.br
                 [helio DT loureiro DT eng DT br]
 Debian desde 2.0 (Hamm)
 Moderador da lista linux­br
http://listas.cipsga.org.br/cgi-bin/mailman/listinfo/linux-br

 Instrutor Conectiva
 Soluções baseadas em *NIX
 Atualmente em produtos IP (D­Link)
 Especialista em IN (Pré­Pago)
 Instalação e integração de redes GSM e xDSL
Agenda


●
  Princípios de telecomunicações
●
  Protocolos de comunicações
●
  Protocolos de VoIP
●
  Alternativas
●
  SIP v.2
●
  Asterisk
●
  Configuração
●
  Testes
Princípios de telecomunicações




       Princípios de telecomunicações
Transmissão de voz

●
    Voz digitalizada com pulsos (PCM – Pulse Coded Modulation)
●
    Banda passante de voz de 4 KHz
●
    Amostragem de 8 Khz (Nyquist – amostragem o dobro da freq.)
●
    Sinal (voz) pode ser reproduzido no receptor
●
    Codificação seguindo: Lei-A (USA) ou Lei-μ (BR)
Modulação da voz
Telefonia convencional
     ●
         Central telefônica – baseada em hardware
     ●
         Controles e comandos proprietários e incompatíveis
     ●
         Comutação por circuito
     ●
         Sinalização por canal comum: SS7




SS7 – Link E1 – 2 Mbps (BR) – 32 canais de 64 Kbps – 0: sincronismo – 16: sinalização

          0   1   2   3     ...       16
Protocolos VoIP




                  Protocolos VoIP
Protocolos de VoIP


 ●
     H.323: protocolo desenvolvido pela ITU-T para utilização de
     comutação por pacotes. Utiliza toda a complexidade do
     modelo OSI de 7 camadas.
 ●
     SIP: protocolo desenvolvido pela IETF com o modelo
     cliente-servidor.
 ●
     MGCP: protocolo que utiliza o princípio da sinalização SS7
     diretamente sobre IP.
 ●
     MEGACO
Pilha de protocolos
Regras no firewall
●
     SIP: 5060/UDP
    iptables -A INPUT -j ACCEPT -p udp -m udp --dport 5060
●
     IAX2: 4569/UDP
iptables -A INPUT -j ACCEPT -p udp -m udp --dport 4569
●
     IAX: 5036/UDP
 iptables -A INPUT -j ACCEPT -p udp -m udp --dport 5036

●
     RTP: 10000-20000/UDP
  iptables -A INPUT -j ACCEPT -p udp -m udp --dport
10000:20000
●
     MGCP: 2727/UDP
    iptables -A INPUT -j ACCEPT -p udp -m udp --dport 2727
Session Initiation Protocol




       Session Initiation Protocol
Protocolo SIP



A especificação do SIP RFC 3261 divide as funções do SIP
  Server nas seguintes partes:

• SIP Registrar Server: verifica mensagens de registro
  (REGISTER).
• SIP Redirect Server: retorna respostas “contact this
  address”.
• SIP Proxy Server: envia requisições SIP e respostas.
• Back-2-Back User Agent (B2BUA): atua como UA server
  de um lado e como UA client de outro.
Session Initiation Protocol



   Endereçamento padrão Internet
  SIP utiliza endereçamento IP padrão, com formato de
  endereçamento por nome ou endereço, por exemplo:


  sip: username@abcorp.com
  ou
  sip: 1121859300@abcorp.com
Comunicação SIP
RTP – Real Time Protocol


   • O RTP é o protocolo responsável por
     entregar o fluxo de dados em “tempo real”.

   • Isto torna-se possível uma vez que o RTP
     tem a capacidade de reconstruir o fluxo de
     dados nas extremidades, mesmo que a
     informação chegue atrasada ou fora de
     ordem.
   • O envio de mensagens ocorre sobre UDP.
Comunicação SIP
SDP – Session Description Protocol



    O SDP tem três objetivos principais

    • Informar para a outra parte qual tipo de mídia
      deseja-se transmitir (audio, vídeo ou ambos);

    • Informar qual CODEC deve ser utilizado;

    • Informar em qual endereço e porta a mídia
      deve ser entregue.
Comunicação SIP
Métodos SIP

  • SIP Methods: São as mensagens do protocolo.
  • INVITE: Convida um usuário para uma chamada e estabelece
    uma nova conexão.
  • ACK: Reconhecimento do recebimento de uma mensagem.
  • BYE: Finaliza a conexão entre dois usuários.
  • CANCEL: Finaliza uma requisição ou procura por um usuário.
  • REGISTER: Registra um usuário no SIP Server, fornecendo os
    dados de localização (IP, número) do mesmo.
  • OPTIONS: Solicita informações para o SIP Server.
Comunicação SIP
Códigos de resposta

   • 1xx: Informational – requisição recebida, continuando
     processo de requisição.
   • 2xx: Success – a ação foi recebida com sucesso, entendida
     e aceita.
   • 3xx: Redirection – ações complementares são necessárias
     a fim de completar a requisição.
   • 4xx: Client Error – a requisição contém erro de síntaxe ou
     não pode ser completada neste servidor.
   • 5xx: Server Error – o servidor falhou para completar uma
     requisição aparentemente válida.
   • 6xx: Global Failure – a requisição não pôde ser
     completada em nenhum servidor.
                                            [*] Baseados em HTTP.
Fluxo de mensagens

          SIP                                        SIP
       User Agent                                 User Agent
         Client                                     Server
                    INVITE sip:picard@uunet.com



                              200 OK


                                ACK



                           Media Stream


                                BYE


                                200 OK



       host.wcom.com                              sip.uunet.com
Método INVITE

   INVITE sip:picard@wcom.com SIP/2.0
   Via: SIP/2.0/UDP host.wcom.com:5060
   From: Alan Johnston <sip:alan.johnston@wcom.com>
   To: Jean Luc Picard <sip:picard@wcom.com>
   Call-ID: 314159@host.wcom.com
   CSeq: 1 INVITE
   Contact: sip:alan.johnston@wcom.com
   Subject: Where are you these days?
   Content-Type: application/sdp
   Content-Length: 124

   v=0
   o=ajohnston 5462346 332134 IN IP4 host.wcom.com
   s=Let's Talk
   t=0 0
   c=IN IP4 10.64.1.1
   m=audio 49170 RTP/AVP 0 3
Codecs e taxas



   Codec     Bit Rate   NEB
   G.711     64 Kbps    87.2 Kbps
   G.729     8 Kbps     31.2 Kbps
   G.723.1   6.4 Kbps   21.9 Kbps
   G.726     32 Kbps    55.2 Kbps
   G.728     16 Kbps    31.5 Kbps
   Ilbc      15 Kbps    27.7 Kbps
   Gsm       13 Kbps

                        NEB = Nominal Ethernet Bandwidth
Agentes SIP




     Agentes SIP – Usuários e servidores
Projetos de softswitches
SIP servers

 ●
     OpenH.323 – desenvolvimento da API para uso de H.323
 ●
     Vovida.org – softswitch para H.323 e SIP
 ●
     GnuGk – gatekeeper para H.323 utilizando o OpenH.323
 ●
     Asterisk – softswitch para SIP e H.323
 ●
     OpenWengo
User Agent Client


  • Softphones:
     – Kphone
     – linphone
     – xten

  • Hardphones:
     – VoIP Telephone Adapater (TA);
       DVG-2001S
     – VoIP Router (Gateway);
       DVG-1402S
     – VoIP Phone;
       DPH-140S
Asterisk




           Asterisk
Asterisk



 Asterix ≠ Asterisk
 ●
     Desenvolvido e mantido pela empresa Digium.
 ●
     Digium fornece hardware para conectar o Asterisk com a
     rede de telefonia convencional.
 ●
     Suporte principal sobre Linux, mas com funciona também
     em BSDs, *nix flavors e Windows.
 ●
     Sem GUI para configuração, somente arquivos TXT.
 ●
     Alto consumo de CPU.
Asterisk
Funcionalidades

        ●   Chamada em espera
        ●   Identificação de chamada
        ●   Discagem por nome
        ●   Máquina anunciadora (IVR)
        ●   Música em espera
        ●   Transferência de chamada
        ●   VoiceMail
Asterisk: termos

  ●   FXO: Foreign eXchange Office – busca tom
      de discagem. ex: telefone.
  ●   FXS: Foreign eXchange Station – gera tom
      de discagem, em geral para o FXO. ex:
      linha fixa.
  ●   PSTN: Public Switched Telephone Network –
      rede de telefonia pública cabeada.
  ●   Extensions: ramais.
  ●   DTMF: Dual Tone Multi Frequency – tom de
      discagem multi-freqüencial.
Instalação

root@zumbi:~/bin # apt-cache search asterisk
asterisk-open-source Private Branch Exchange (PBX)
asterisk-chan-capi - Common ISDN API 2.0
implementation for Asterisk
asterisk-chan-misdn - mISDN support for Asterisk
asterisk-config - config files for asterisk
asterisk-dev - development files for asterisk
asterisk-doc - documentation for asterisk
asterisk-gtk-console - gtk based console for
asterisk
asterisk-h323 - asterisk H.323 VoIP channel
asterisk-prompt-de - German prompts for the
Asterisk PBX
asterisk-prompt-fr - French voice prompts for
Asterisk
asterisk-sounds-main - sound files for asterisk
asterisk-web-vmail - web based (GCI) voice mail
Instalação (cont.)


root@zumbi:~/bin # aptitude -y install asterisk

asterisk-config 
asterisk-doc 
asterisk-sounds-main

[...]

root@zumbi:~/bin # perl -p -i -e 
 “s/RUNASTERISK=no/RUNASTERISK=yes/” 
/etc/default/asterisk
sip.conf

              Configurações                  Número do ramal
              do daemon
[general]                     [9373]
port = 5060                   type=friend
bindaddr = 0.0.0.0            host=dynamic     IP dinâmico
disallow=all                  username=9373
allow=ulaw    CODECs          secret=9373
allow=alaw                    callerid=Helio Loureiro
allow=g723.1                  <9373>
allow=gsm                     mailbox=9373@debianbr
allow=all                     context=debianbr      Domínios
extensions.conf
               Domínios
[debianbr]
exten => 9373,1,Dial(SIP/9373,20)
exten => 9373,2,VoiceMail(u9373@debianbr)
exten => 9373,3,Hangup
exten => 9373,102,VoiceMail(b9373@debianbr)
exten => 9351,1,Dial(SIP/9351,20)
exten => 9351,2,VoiceMail(u9351@debianbr)
exten => 9351,3,Hangup
exten => 9351,102,VoiceMail(b9351@debianbr)



exten => <RAMAL>,<SEQ>,<AÇÃO>
Exemplos




           Exemplos
Perguntas e Respostas




                Perguntas e Respostas
Bibliografia




               Bibliografia
Bibliografia


 ●
   Asterisk “http://www.asterisk.org”
 ●
   VoIP – Voice over Internet Protocol – Introdução. Giovani
 Pacífico; D-Link; 2005.
 ●
   PABX baseado em código aberto: Asterisk – Utilização,
 configuração e gerenciamento. Fabrício Tamusiunas; GTER-
 19; NIC.BR; 2005.
 ●
   Multimedia 7 - Audio Compression; Dr. Iliya Georgiev.
 ●
   Lesson 0 – Introduction to Telephony; John K. Scoggin;
 CISC452-01W; Telecommunication Systems; University of
 Delaware.
 ●
  Lesson 6 – Digital Telephony; William Stallings; CISC450;
 Computer Networks; University of Delaware.
Agradecimentos




       Obrigado
                    Hélio Loureiro
               helio@loureiro.eng.br
             http://helio.loureiro.eng.br

Más contenido relacionado

La actualidad más candente

FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaMauro Tapajós
 
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ídeoFernando Costa
 
Tutorial asterisk
Tutorial asteriskTutorial asterisk
Tutorial asteriskstrellow
 
Cisco Call Manager - Ambiente e Topologias
Cisco Call Manager - Ambiente e TopologiasCisco Call Manager - Ambiente e Topologias
Cisco Call Manager - Ambiente e TopologiasVinicius Buscacio
 
Voz sobre ip uma abordagem funcional
Voz sobre ip   uma abordagem funcionalVoz sobre ip   uma abordagem funcional
Voz sobre ip uma abordagem funcionalMarcelo Dieder
 
Voip
VoipVoip
Voipbpc
 
Solisc 2010 centrais de telefonia IP
Solisc 2010   centrais de telefonia IPSolisc 2010   centrais de telefonia IP
Solisc 2010 centrais de telefonia IPmarleigrolli
 
Soluções voip com asterisk - Henrique Petry Rauber
Soluções voip com asterisk - Henrique Petry RauberSoluções voip com asterisk - Henrique Petry Rauber
Soluções voip com asterisk - Henrique Petry RauberTchelinux
 
Aula 10 meios de comunicação de dados
Aula 10 meios de comunicação de dadosAula 10 meios de comunicação de dados
Aula 10 meios de comunicação de dadosJorge Ávila Miranda
 
Redes - VoIP SIP
Redes - VoIP SIPRedes - VoIP SIP
Redes - VoIP SIPLuiz Arthur
 
Modelo slide senai tcc 2008 final
Modelo slide senai tcc 2008   finalModelo slide senai tcc 2008   final
Modelo slide senai tcc 2008 finalPablo Gadotti
 
Aula 11 meios de comunicação de dados
Aula 11 meios de comunicação de dadosAula 11 meios de comunicação de dados
Aula 11 meios de comunicação de dadosJorge Ávila Miranda
 

La actualidad más candente (20)

FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
 
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
 
Tutorial asterisk
Tutorial asteriskTutorial asterisk
Tutorial asterisk
 
Cisco Call Manager - Ambiente e Topologias
Cisco Call Manager - Ambiente e TopologiasCisco Call Manager - Ambiente e Topologias
Cisco Call Manager - Ambiente e Topologias
 
Voz sobre ip uma abordagem funcional
Voz sobre ip   uma abordagem funcionalVoz sobre ip   uma abordagem funcional
Voz sobre ip uma abordagem funcional
 
Voip
VoipVoip
Voip
 
Solisc 2010 centrais de telefonia IP
Solisc 2010   centrais de telefonia IPSolisc 2010   centrais de telefonia IP
Solisc 2010 centrais de telefonia IP
 
Cisco for Small Business
Cisco for Small BusinessCisco for Small Business
Cisco for Small Business
 
Processadores de rede (2)
Processadores de rede (2)Processadores de rede (2)
Processadores de rede (2)
 
Asterisk trunk
Asterisk trunkAsterisk trunk
Asterisk trunk
 
Soluções voip com asterisk - Henrique Petry Rauber
Soluções voip com asterisk - Henrique Petry RauberSoluções voip com asterisk - Henrique Petry Rauber
Soluções voip com asterisk - Henrique Petry Rauber
 
03 VoIp2009 Cenarios
03 VoIp2009 Cenarios03 VoIp2009 Cenarios
03 VoIp2009 Cenarios
 
Asteriskem sistemasembarcados
Asteriskem sistemasembarcadosAsteriskem sistemasembarcados
Asteriskem sistemasembarcados
 
Asterisk
AsteriskAsterisk
Asterisk
 
03 Vo Ip2009 Cenarios
03 Vo Ip2009 Cenarios03 Vo Ip2009 Cenarios
03 Vo Ip2009 Cenarios
 
Aula 10 meios de comunicação de dados
Aula 10 meios de comunicação de dadosAula 10 meios de comunicação de dados
Aula 10 meios de comunicação de dados
 
Asterisk Voice Mail
Asterisk Voice MailAsterisk Voice Mail
Asterisk Voice Mail
 
Redes - VoIP SIP
Redes - VoIP SIPRedes - VoIP SIP
Redes - VoIP SIP
 
Modelo slide senai tcc 2008 final
Modelo slide senai tcc 2008   finalModelo slide senai tcc 2008   final
Modelo slide senai tcc 2008 final
 
Aula 11 meios de comunicação de dados
Aula 11 meios de comunicação de dadosAula 11 meios de comunicação de dados
Aula 11 meios de comunicação de dados
 

Similar a PABX IP com Asterisk

Interoperabilidade entre SIP e H.323
Interoperabilidade entre SIP e H.323Interoperabilidade entre SIP e H.323
Interoperabilidade entre SIP e H.323Glauco Gonçalves
 
IMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemIMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemFrederico Madeira
 
Apresentação Digistar - Roteadores jul15
Apresentação Digistar - Roteadores jul15Apresentação Digistar - Roteadores jul15
Apresentação Digistar - Roteadores jul15Beto Flesch
 
3GTELECOM-CISCO
3GTELECOM-CISCO3GTELECOM-CISCO
3GTELECOM-CISCOiFonex
 
R&c 05 14_1 - Protocolo IP (Parte 1)
R&c 05 14_1 - Protocolo IP (Parte 1)R&c 05 14_1 - Protocolo IP (Parte 1)
R&c 05 14_1 - Protocolo IP (Parte 1)Mariana Hiyori
 
Broadcast day-2010-newtec-sspi
Broadcast day-2010-newtec-sspiBroadcast day-2010-newtec-sspi
Broadcast day-2010-newtec-sspiSSPI Brasil
 
Iptv 2009
Iptv 2009Iptv 2009
Iptv 2009tiag
 
Euteulsat eloi bc day 2012
Euteulsat eloi bc day 2012Euteulsat eloi bc day 2012
Euteulsat eloi bc day 2012SSPI Brasil
 
Newtec evolucoes-em-satellite-broadcast
Newtec evolucoes-em-satellite-broadcastNewtec evolucoes-em-satellite-broadcast
Newtec evolucoes-em-satellite-broadcastSSPI Brasil
 
Solisc 2010 centrais de telefonia ip - jeremias neves da silva
Solisc 2010   centrais de telefonia ip - jeremias neves da silvaSolisc 2010   centrais de telefonia ip - jeremias neves da silva
Solisc 2010 centrais de telefonia ip - jeremias neves da silvamarleigrolli
 
IPBrick
IPBrickIPBrick
IPBricknesi
 
1. arquitetura da rede ims
1. arquitetura da rede ims1. arquitetura da rede ims
1. arquitetura da rede imsRÔMULO MELO
 
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesMauro Tapajós
 

Similar a PABX IP com Asterisk (20)

Telefonia IP
Telefonia IP Telefonia IP
Telefonia IP
 
Interoperabilidade entre SIP e H.323
Interoperabilidade entre SIP e H.323Interoperabilidade entre SIP e H.323
Interoperabilidade entre SIP e H.323
 
IMS - IP Multimedia Subsystem
IMS - IP Multimedia SubsystemIMS - IP Multimedia Subsystem
IMS - IP Multimedia Subsystem
 
Apresentação Digistar - Roteadores jul15
Apresentação Digistar - Roteadores jul15Apresentação Digistar - Roteadores jul15
Apresentação Digistar - Roteadores jul15
 
3GTELECOM-CISCO
3GTELECOM-CISCO3GTELECOM-CISCO
3GTELECOM-CISCO
 
Introdução ao VoIP
Introdução ao VoIPIntrodução ao VoIP
Introdução ao VoIP
 
R&c 05 14_1 - Protocolo IP (Parte 1)
R&c 05 14_1 - Protocolo IP (Parte 1)R&c 05 14_1 - Protocolo IP (Parte 1)
R&c 05 14_1 - Protocolo IP (Parte 1)
 
Skype
SkypeSkype
Skype
 
Mod tivb01
Mod tivb01Mod tivb01
Mod tivb01
 
Mod tivb01
Mod tivb01Mod tivb01
Mod tivb01
 
Broadcast day-2010-newtec-sspi
Broadcast day-2010-newtec-sspiBroadcast day-2010-newtec-sspi
Broadcast day-2010-newtec-sspi
 
Mod tivb01 (2)
Mod tivb01 (2)Mod tivb01 (2)
Mod tivb01 (2)
 
Iptv 2009
Iptv 2009Iptv 2009
Iptv 2009
 
Euteulsat eloi bc day 2012
Euteulsat eloi bc day 2012Euteulsat eloi bc day 2012
Euteulsat eloi bc day 2012
 
Newtec evolucoes-em-satellite-broadcast
Newtec evolucoes-em-satellite-broadcastNewtec evolucoes-em-satellite-broadcast
Newtec evolucoes-em-satellite-broadcast
 
Solisc 2010 centrais de telefonia ip - jeremias neves da silva
Solisc 2010   centrais de telefonia ip - jeremias neves da silvaSolisc 2010   centrais de telefonia ip - jeremias neves da silva
Solisc 2010 centrais de telefonia ip - jeremias neves da silva
 
IPBrick
IPBrickIPBrick
IPBrick
 
1. arquitetura da rede ims
1. arquitetura da rede ims1. arquitetura da rede ims
1. arquitetura da rede ims
 
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de PacotesRedes Avançadas - 4.Multimídia sobre Redes de Pacotes
Redes Avançadas - 4.Multimídia sobre Redes de Pacotes
 
TV DIGITAL MÓVEL
TV DIGITAL MÓVELTV DIGITAL MÓVEL
TV DIGITAL MÓVEL
 

PABX IP com Asterisk

  • 1. PABX IP utilizando Asterisk Hélio Loureiro [helio AT loureiro DT eng DT br] [hloureiro AT dlinkbrasil DT com DT br]
  • 2. Palestrante Hélio Loureiro http://helio.loureiro.eng.br http://www.loureiro.eng.br [helio DT loureiro DT eng DT br]  Debian desde 2.0 (Hamm)  Moderador da lista linux­br http://listas.cipsga.org.br/cgi-bin/mailman/listinfo/linux-br  Instrutor Conectiva  Soluções baseadas em *NIX  Atualmente em produtos IP (D­Link)  Especialista em IN (Pré­Pago)  Instalação e integração de redes GSM e xDSL
  • 3. Agenda ● Princípios de telecomunicações ● Protocolos de comunicações ● Protocolos de VoIP ● Alternativas ● SIP v.2 ● Asterisk ● Configuração ● Testes
  • 4. Princípios de telecomunicações Princípios de telecomunicações
  • 5. Transmissão de voz ● Voz digitalizada com pulsos (PCM – Pulse Coded Modulation) ● Banda passante de voz de 4 KHz ● Amostragem de 8 Khz (Nyquist – amostragem o dobro da freq.) ● Sinal (voz) pode ser reproduzido no receptor ● Codificação seguindo: Lei-A (USA) ou Lei-μ (BR)
  • 7. Telefonia convencional ● Central telefônica – baseada em hardware ● Controles e comandos proprietários e incompatíveis ● Comutação por circuito ● Sinalização por canal comum: SS7 SS7 – Link E1 – 2 Mbps (BR) – 32 canais de 64 Kbps – 0: sincronismo – 16: sinalização 0 1 2 3 ... 16
  • 8. Protocolos VoIP Protocolos VoIP
  • 9. Protocolos de VoIP ● H.323: protocolo desenvolvido pela ITU-T para utilização de comutação por pacotes. Utiliza toda a complexidade do modelo OSI de 7 camadas. ● SIP: protocolo desenvolvido pela IETF com o modelo cliente-servidor. ● MGCP: protocolo que utiliza o princípio da sinalização SS7 diretamente sobre IP. ● MEGACO
  • 11. Regras no firewall ● SIP: 5060/UDP iptables -A INPUT -j ACCEPT -p udp -m udp --dport 5060 ● IAX2: 4569/UDP iptables -A INPUT -j ACCEPT -p udp -m udp --dport 4569 ● IAX: 5036/UDP iptables -A INPUT -j ACCEPT -p udp -m udp --dport 5036 ● RTP: 10000-20000/UDP iptables -A INPUT -j ACCEPT -p udp -m udp --dport 10000:20000 ● MGCP: 2727/UDP iptables -A INPUT -j ACCEPT -p udp -m udp --dport 2727
  • 12. Session Initiation Protocol Session Initiation Protocol
  • 13. Protocolo SIP A especificação do SIP RFC 3261 divide as funções do SIP Server nas seguintes partes: • SIP Registrar Server: verifica mensagens de registro (REGISTER). • SIP Redirect Server: retorna respostas “contact this address”. • SIP Proxy Server: envia requisições SIP e respostas. • Back-2-Back User Agent (B2BUA): atua como UA server de um lado e como UA client de outro.
  • 14. Session Initiation Protocol  Endereçamento padrão Internet SIP utiliza endereçamento IP padrão, com formato de endereçamento por nome ou endereço, por exemplo: sip: username@abcorp.com ou sip: 1121859300@abcorp.com
  • 15. Comunicação SIP RTP – Real Time Protocol • O RTP é o protocolo responsável por entregar o fluxo de dados em “tempo real”. • Isto torna-se possível uma vez que o RTP tem a capacidade de reconstruir o fluxo de dados nas extremidades, mesmo que a informação chegue atrasada ou fora de ordem. • O envio de mensagens ocorre sobre UDP.
  • 16. Comunicação SIP SDP – Session Description Protocol O SDP tem três objetivos principais • Informar para a outra parte qual tipo de mídia deseja-se transmitir (audio, vídeo ou ambos); • Informar qual CODEC deve ser utilizado; • Informar em qual endereço e porta a mídia deve ser entregue.
  • 17. Comunicação SIP Métodos SIP • SIP Methods: São as mensagens do protocolo. • INVITE: Convida um usuário para uma chamada e estabelece uma nova conexão. • ACK: Reconhecimento do recebimento de uma mensagem. • BYE: Finaliza a conexão entre dois usuários. • CANCEL: Finaliza uma requisição ou procura por um usuário. • REGISTER: Registra um usuário no SIP Server, fornecendo os dados de localização (IP, número) do mesmo. • OPTIONS: Solicita informações para o SIP Server.
  • 18. Comunicação SIP Códigos de resposta • 1xx: Informational – requisição recebida, continuando processo de requisição. • 2xx: Success – a ação foi recebida com sucesso, entendida e aceita. • 3xx: Redirection – ações complementares são necessárias a fim de completar a requisição. • 4xx: Client Error – a requisição contém erro de síntaxe ou não pode ser completada neste servidor. • 5xx: Server Error – o servidor falhou para completar uma requisição aparentemente válida. • 6xx: Global Failure – a requisição não pôde ser completada em nenhum servidor. [*] Baseados em HTTP.
  • 19. Fluxo de mensagens SIP SIP User Agent User Agent Client Server INVITE sip:picard@uunet.com 200 OK ACK Media Stream BYE 200 OK host.wcom.com sip.uunet.com
  • 20. Método INVITE INVITE sip:picard@wcom.com SIP/2.0 Via: SIP/2.0/UDP host.wcom.com:5060 From: Alan Johnston <sip:alan.johnston@wcom.com> To: Jean Luc Picard <sip:picard@wcom.com> Call-ID: 314159@host.wcom.com CSeq: 1 INVITE Contact: sip:alan.johnston@wcom.com Subject: Where are you these days? Content-Type: application/sdp Content-Length: 124 v=0 o=ajohnston 5462346 332134 IN IP4 host.wcom.com s=Let's Talk t=0 0 c=IN IP4 10.64.1.1 m=audio 49170 RTP/AVP 0 3
  • 21. Codecs e taxas Codec Bit Rate NEB G.711 64 Kbps 87.2 Kbps G.729 8 Kbps 31.2 Kbps G.723.1 6.4 Kbps 21.9 Kbps G.726 32 Kbps 55.2 Kbps G.728 16 Kbps 31.5 Kbps Ilbc 15 Kbps 27.7 Kbps Gsm 13 Kbps NEB = Nominal Ethernet Bandwidth
  • 22. Agentes SIP Agentes SIP – Usuários e servidores
  • 23. Projetos de softswitches SIP servers ● OpenH.323 – desenvolvimento da API para uso de H.323 ● Vovida.org – softswitch para H.323 e SIP ● GnuGk – gatekeeper para H.323 utilizando o OpenH.323 ● Asterisk – softswitch para SIP e H.323 ● OpenWengo
  • 24. User Agent Client • Softphones: – Kphone – linphone – xten • Hardphones: – VoIP Telephone Adapater (TA); DVG-2001S – VoIP Router (Gateway); DVG-1402S – VoIP Phone; DPH-140S
  • 25. Asterisk Asterisk
  • 26. Asterisk Asterix ≠ Asterisk ● Desenvolvido e mantido pela empresa Digium. ● Digium fornece hardware para conectar o Asterisk com a rede de telefonia convencional. ● Suporte principal sobre Linux, mas com funciona também em BSDs, *nix flavors e Windows. ● Sem GUI para configuração, somente arquivos TXT. ● Alto consumo de CPU.
  • 27. Asterisk Funcionalidades ● Chamada em espera ● Identificação de chamada ● Discagem por nome ● Máquina anunciadora (IVR) ● Música em espera ● Transferência de chamada ● VoiceMail
  • 28. Asterisk: termos ● FXO: Foreign eXchange Office – busca tom de discagem. ex: telefone. ● FXS: Foreign eXchange Station – gera tom de discagem, em geral para o FXO. ex: linha fixa. ● PSTN: Public Switched Telephone Network – rede de telefonia pública cabeada. ● Extensions: ramais. ● DTMF: Dual Tone Multi Frequency – tom de discagem multi-freqüencial.
  • 29. Instalação root@zumbi:~/bin # apt-cache search asterisk asterisk-open-source Private Branch Exchange (PBX) asterisk-chan-capi - Common ISDN API 2.0 implementation for Asterisk asterisk-chan-misdn - mISDN support for Asterisk asterisk-config - config files for asterisk asterisk-dev - development files for asterisk asterisk-doc - documentation for asterisk asterisk-gtk-console - gtk based console for asterisk asterisk-h323 - asterisk H.323 VoIP channel asterisk-prompt-de - German prompts for the Asterisk PBX asterisk-prompt-fr - French voice prompts for Asterisk asterisk-sounds-main - sound files for asterisk asterisk-web-vmail - web based (GCI) voice mail
  • 30. Instalação (cont.) root@zumbi:~/bin # aptitude -y install asterisk asterisk-config asterisk-doc asterisk-sounds-main [...] root@zumbi:~/bin # perl -p -i -e “s/RUNASTERISK=no/RUNASTERISK=yes/” /etc/default/asterisk
  • 31. sip.conf Configurações Número do ramal do daemon [general] [9373] port = 5060 type=friend bindaddr = 0.0.0.0 host=dynamic IP dinâmico disallow=all username=9373 allow=ulaw CODECs secret=9373 allow=alaw callerid=Helio Loureiro allow=g723.1 <9373> allow=gsm mailbox=9373@debianbr allow=all context=debianbr Domínios
  • 32. extensions.conf Domínios [debianbr] exten => 9373,1,Dial(SIP/9373,20) exten => 9373,2,VoiceMail(u9373@debianbr) exten => 9373,3,Hangup exten => 9373,102,VoiceMail(b9373@debianbr) exten => 9351,1,Dial(SIP/9351,20) exten => 9351,2,VoiceMail(u9351@debianbr) exten => 9351,3,Hangup exten => 9351,102,VoiceMail(b9351@debianbr) exten => <RAMAL>,<SEQ>,<AÇÃO>
  • 33. Exemplos Exemplos
  • 34. Perguntas e Respostas Perguntas e Respostas
  • 35. Bibliografia Bibliografia
  • 36. Bibliografia ● Asterisk “http://www.asterisk.org” ● VoIP – Voice over Internet Protocol – Introdução. Giovani Pacífico; D-Link; 2005. ● PABX baseado em código aberto: Asterisk – Utilização, configuração e gerenciamento. Fabrício Tamusiunas; GTER- 19; NIC.BR; 2005. ● Multimedia 7 - Audio Compression; Dr. Iliya Georgiev. ● Lesson 0 – Introduction to Telephony; John K. Scoggin; CISC452-01W; Telecommunication Systems; University of Delaware. ● Lesson 6 – Digital Telephony; William Stallings; CISC450; Computer Networks; University of Delaware.
  • 37. Agradecimentos Obrigado Hélio Loureiro helio@loureiro.eng.br http://helio.loureiro.eng.br