IRICUP Telefonia IP na Universidade do Porto - PDF
IRICUP Telefonia IP na Universidade do Porto
Download "VoIP @ IRICUP Telefonia IP na Universidade do Porto"
Eduarda Morais Caires
1 IRICUP Telefonia IP na Universidade do Porto Orientador: Prof. Dr. Mário Leitão Co-Orientador: Eng.º Mário Serrão Ricardo Carvalho PSTFC LEEC FEUP Junho,
2 Sumário Objectivos do estágio Vantagens Motivação Protocolos SIP vs H323 Análise de uma chamada SIP Cenários de implementação Endereçamento Arquitecturas de testes Trabalho futuro Conclusão 2
3 Objectivos do estágio Estudo da tecnologia VoIP e seus protocolos standard Open Source Avaliação do impacto técnico e financeiro da migração entre tecnologias POTS e VoIP nas infra-estruturas da Universidade do Porto Desenhar soluções de troca de tráfego de voz entre instituições com ligação à RCTS e avaliar o respectivo impacto no backbone da RCTS Estudo e proposta de soluções de endereçamento telefónico Avaliação da disponibilidade comercial de serviços de interligação VoIP com as várias redes telefónicas fixa e móveis Implementação de um piloto de testes Realização do relatório do trabalho 3
4 Vantagens Redução de custos das chamadas Redução de custos das infra-estruturas Integração de serviços Mobilidade Serviços avançados Melhor qualidade sonora URIs mais fáceis de memorizar Mercado IP PBX vs PBX tradicional Source: IDC, 2004 PBX IP PBX 4
5 Motivação Integração de voz e dados na mesma infra-estrutura de rede Controlo sobre as comunicações de voz até aqui subcontratado Uso do backbone IP da UP para encaminhar tráfego de voz entre Unidades Orgânicas Integração com o sistema de informação da UP Atribuição de um contacto telefónico a cada aluno, docente, investigador, funcionário da UP Mobilidade fazendo uso da rede Wi-Fi e-u 5
6 Protocolos SIP SIP (Session Intitation Protocol) é o protocolo Standard do IETF (RFC 3261) para VoIP e outras sessões multimédia protocolo de sinalização usado para criar, modificar e terminar sessões com um ou mais participantes H323 H.323 é um standard do ITU, muito popular Primeiro conjunto definido de standards multimédia SDP Session Description Protocol, descreve sessões multimédia (conferência ou distribuição) para efeito de anúncio, convite ou outros formas de início de sessão RTP Real-time Transport Protocol, fornece um serviço de transporte de dados com características de tempo real, de que são exemplos áudio e vídeo RTCP RTP Control Protocol, fornece informação adicional aos participantes na sessão, tais como feedback sobre a QoS, sincronização entre meios, identificação dos participantes na sessão, controlo da sessão 6
7 Protocolos 7
8 SIP vs H323 Em suma: Arquitectura Origem Transport Codificação Ênfase Endereçamento Negociação Comunicação Codecs Codificação das mensagens Instant Messaging Encaminhamento entre domínios H.323 Desenvolvimento começou mais cedo Protocolo ultrapassado Delega complexidade no servidor Pouco escalável Mensagens H.323 são binárias Implementação e debug complicados Pilha ITU ASN.1 Telefonia PSTN Aliases H.245 RTP / RTCP Todos Binário - H.323 Maioritariamente TCP Definido recentemente no Anexo G Elementar IETF Maioritariamente UDP Do tipo HTTP Multimédia, Multicast URIs SIP SDP RTP / RTCP Todos ASCII RFC3428 SIP Escalabilidade Extensibilidade Menor complexidade Facilidade de implementação Customização Forking das chamadas Controlo de chamadas de terceiros As mensagens SIP são baseadas em texto Fácil debugging através de sniffing tools como o tcpdump, ethereal, ngrep, netcap SIP Com recurso ao DNS 8
9 Componentes de um sistema SIP UA (user agent) terminal de rede SIP (telefones SIP, ou gateway para outras redes), contém UAC (user agent client) e UAS (user agent server) Servidor Proxy Recebe pedidos de ligação de um UA e transfere-o para outro servidor proxy se o receptor não estiver no seu domínio Servidor de Redireccionamento Recebe pedidos de ligação e envia-os de volta ao emissor incluindo os dados de destino ao invés de enviá-los directamente à parte chamada Servidor de localização recebe pedidos de registro de um UA e actualiza a base de dados de terminais com eles 9
10 Análise de uma chamada SIP Não pudemos deixar fluir assim, dada a necessidade de controlo e accounting (os proxies têm que incluir o campo Record-Route nas mensagens) 10
11 Cenários de implementação Cenário tradicional: Alternativa pouco interessante: 11
12 Cenários de implementação Integração do VoIP com o PBX já existente PABX entre PSTN e Servidor VoIP RCTS Backbone IP da UP GSM gateway Trunk Trunk IP Telco Gateway / Servidor VoIP PABX PSTN LAN da UO Unidade Orgânica Pode ser usado um acesso BRI (admitindo no máx. 2 chamadas simultâneas), ou PRI (até 30 chamadas simultâneas). Nos PBX actuais, a carta de interface RDIS já existe no sistema. Interfaces PRI são economicamente preferíveis em cenários onde mais de 8 canais (4xBRI) são necessários. POT POT POT 12
13 Cenários de implementação Integração do VoIP com o PBX já existente Servidor VoIP entre PABX e PSTN: RCTS POT Backbone IP da UP POT Trunk Trunk PABX Gateway / Servidor VoIP IP Telco POT POT PSTN LAN da UO Unidade Orgânica Grande vantagem: inteligência e configurações de endereçamento é feita no servidor VoIP - nenhuma configuração na central telefónica comutada Evita-se assim a necessidade sempre dispendiosa e morosa de contratar serviços a terceiros para reconfigurar o PABX Desvantagem em casos de falha da infra-estrutura IP do servidor, o tráfego entre PABX e PSTN ficar cortado necessário mecanismo de bypass 13
14 Cenários de implementação Substituição completa do PBX por VoIP: RCTS GSM gateway Backbone IP da UP Gateway / Servidor VoIP Trunk IP Telco PROS PSTN LAN da UO Unidade Orgânica Sinalização SIP permite inteligência dos terminais funcionalidades avançadas Plano de encaminhamento de chamadas com rede pública de móveis Todos os contactos numa BD integrável com o sistema de informação CONS Por segurança manter um número mínimo de DDIs contratado Funcionalidades avançadas e displays interactivos dos terminais encarece-os Terminais requerem alimentação eléctrica, externa ou Power-over-Ethernet 14
15 Endereçamento Um utilizador para comunicar necessita de um identificador para si e para o receptor da chamada Encontra-se em avaliação por parte da FCCN a necessidade de existência de um serviço de directório em cada instituição, ligado a um serviço de directório RCTS, para poder facilitar a pesquisa de contactos telefónicos Cada identificador deve ser independente da localização física do utilizador Cada utilizador pode ter mais que um endereço IP, ou seja, ser alcançável, por exemplo, em várias localizações físicas 15
16 Endereçamento na UP Dois tipos de identificadores, URIs e Numeração E.164 O utilizador pode ser encontrado através do DNS Desvantagem dos URIs: dificuldade ou até mesmo a impossibilidade de serem digitados em certos terminais O plano de numeração tradicional não se coaduna muito bem à Internet tal como a conhecemos baseada em domínios, por essa razão foi criado o sistema ENUM que faz uso dos números telefónicos tradicionais como domínios. 16
17 Endereçamento na UP Sistema ENUM ENUM como alternativa ao Endereçamento Estático - limitado pois não é escalável ENUM - Sistema hierárquico de endereçamento ao estilo dos URLs, que escala ENUM faz a transformação de um endereço E.164, atribuído a um terminal, num endereço URI Ponte entre endereçamento PSTN e Internet Usa o DNS para traduzir números E.164 em esquemas IP 17
18 Endereçamento na UP Sistema ENUM Forma de Least Cost Routing dado que um servidor com ENUM apenas encaminha a chamada para a PSTN se não houver rota em IP Sem ENUM PSTN Mantém-se na rede IP Manter tráfego em IP evita custos de passagem na PSTN e proporciona melhor QoS por evitar codificações sucessivas IP-PSTN Rede VoIP Unidade Orgânica 1 Com ENUM Rede VoIP Unidade Orgânica 2 18
19 Endereçamento na UP Sistema ENUM Para tal é necessário registar cada número E.164 com rota também por IP num serviço de directório Escalabilidade do ENUM Centenas de milhões de registos Dezenas de resoluções de endereços por segundo Questões de segurança e privacidade dos dados pessoais de contacto dos utilizadores não devem ser descuradas, no entanto é o que há para já, até que a FCCN crie um serviço de directório RCTS até lá usar p.ex. e164.org ou e164.arpa 19
20 Endereçamento na UP Sistema ENUM Exemplo: 4 Através do DNS, o Servidor SIP A encontra o B Servidor SIP UO A INVITE Utilizador marca É chamado Rede IP 5 2 Servidor SIP pergunta ao DNS se tem rota em IP entregando-lhe e164.org DNS responde: 3 Núvem de DNS (Internet) Servidor SIP IRICUP 20
21 Arquitecturas de testes - Software SER (SIP Express Router) Implementa o SIP AAA Opera como Proxy SIP ou apenas como router (Servidor de Localização ou Servidor de redireccionamento) Suporta Radius, PgSQL, MySQL SERweb para administração dos clientes via web Integrável com RTPproxy Apenas um ficheiro de configuração Asterisk Suporta SIP, H323, IAX, MGCP, Skinny, etc. PBX completo com serviços avançados (voic , chamada em conferência, music on hold) PSTN gateway Muitos ficheiros de configuração 21
22 Arquitecturas de testes Software Porque não apenas Asterisk? Não é um servidor SIP completamente funcional Não suporta milhares de clientes como o SER Não é um Proxy SIP completo, opera melhor como Servidor de Redireccionamento e Servidor de Localização Funciona como UA SIP entre as chamadas Processamento acrescido pois reescreve as mensagens Esta dependência do Servidor SIP não se coaduna à filosofia distribuída do SIP Um Proxy SIP nunca deve ser o término da chamada, e nunca deve tratar o stream de dados tal como o Asterisk faz 22
23 Arquitecturas de testes SER + Asterisk Aumenta as capacidades do sistema SIP Router independente do Asterisk Retirado do Asterisk a responsabilidade sobre o registo dos terminais e encaminhamento das chamadas entre terminais SIP Asterisk fica apenas responsável pelas tarefas de gateway e serviços avançados (como o Voic ) SER passa a chamada ao Asterisk apenas se constarem permissões para o seu originador na BD 23
24 Arquitecturas de testes Software adicional RTPproxy Usado para obrigar o fluxo RTP a passar pelo servidor Ajuda o SER a contornar problemas de NAT RTPproxy não instalado PostgreSQL + PhpPgAdmin Distro Linux 24
25 Arquitecturas de testes Tabelas da BD para o SER Mantém registo das chamadas efectudas Permissões que cada utilizador possui, para ter direito a Voic , PSTN, etc. Registo da contabilização dos custos das chamadas Registo das chamadas não atendidas ou não iniciadas pelo facto do destinatário não possuir nenhum telefone registado Registo de usernames alternativos para cada contacto Quem em tempo-real tem o seu terminal registado O uso de tabelas como estas permite a fácil integração com o sistema de informação da UO, tal como no IRICUP o Sigarra Tabela principal do registo dos utilizadores do sistema 25
26 Arquitecturas de testes Encaminhamento para uma IP Telco /etc/asterisk/sip.conf Utilizador marca número PSTN SER verifica que utilizador tem permissões na tabela grupo Chamada atirada para o Asterisk /etc/asterisk/extensions.conf Asterisk concatena restantes indicativos e envia INVITE SIP a voipstunt 26
27 Arquitecturas de testes Trixbox (antigo PROS Rápido e fácil de instalar up and running in one hour Fácil de operar tudo interface web Fácil de configurar para ambientes pouco exigentes e pequenos Muitas funcionalidades avançadas Bom para tirar ideias para um sistema em produção CONS Imensos ficheiros de configuração e com uma sintaxe demasiado elaborada, tornam sistema pouco adaptável para cenários mais elaborados de implementação Todas as desvantagens do Asterisk aplicam-se aqui também Demasiados serviços a correr tornam a carga de processamento desnecessariamente pesado para ambientes mais exigentes 27
28 Arquitecturas de testes Trixbox O servidor é proxy de RTP O servidor revela uma sinalização estranha, que dever-se-á ao facto de actuar como UA, reescrevendo as mensagens SIP apenas enviando as que entende necessárias ao outro extremo Com uma interface Fast Ethernet conseguir-se-á teoricamente 100Mbit/100Kbit=1000 chamadas simultâneas 28
29 Arquitecturas de testes - Ferramentas Ethereal, tcpdump, ngrep Stress tests: SipSak Sipp./sipp -r i :5060 -s Geradas 2000 ligações UDP por segundo - Mais depressa que o servidor, crashou a firewall com tantos pedidos de início de ligações! - Não era esse o intuito, mas já agora, deve consciencializar para o perigo 29de ataques DOS
30 Arquitecturas de testes Voic Na tabela grupo cada utilizador que queira possuir voic activo tem que lá constar com o atributo voic Um utilizador entra no voic quando tenta ligar para alguém que existe no sistema mas que não tem nenhum telefone registado de momento no sistema, ou tem, mas não atende É enviado um ao utilizador chamado com a mensagem como ficheiro wav em anexo Cada utilizador pode aceder à sua caixa postal através do número 200 (caso esteja a ligar do seu terminal, ou através do 201 caso esteja a ligar do terminal doutrem 30
31 Metas futuras Integração com Radius e LDAP para Autenticação Experimentar uma implementação Asterisk Real Time Implementação de mais serviços avançados tal como a chamada em conferência iniciada no servidor ou music on hold Fazer bypass para a PSTN para situações de quebra do serviço IP Testes de carga às diversas implementações com o objectivo de inferir sobre a mais escalável Ligação do servidor VoIP a um PBX tradicional para adquirir know how na desagregação de tráfego num cenário de transição Estudo e discussão sobre a implementação LAN e WAN Testes e familiarização com outras soluções proprietárias 31
32 Conclusão VoIP é todo um ponto de viragem da história das telecomunicações, e tenho orgulho e entusiasmo em estar a participar nesta revolução! Apesar de não ser visível, houve muito trabalho por trás de tudo isto, desde estudo dos protocolos, aprofundamento dos conhecimentos em Linux, dificuldade em esclarecer dúvidas de implementação visto que é algo muito emergente 32