UNIVERSIDADE ESTADUAL DE MONTES CLAROS – UNIMONTES CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS – CCET DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO – DCC CURSO DE SISTEMAS DE INFORMAÇÃO
QUALIDADE DE SERVIÇO EM VOIP (VOZ SOBRE IP)
ANDERSON FERREIRA GOMES
Montes Claros, junho de 2005
UNIVERSIDADE ESTADUAL DE MONTES CLAROS – UNIMONTES CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS – CCET DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO – DCC CURSO DE SISTEMAS DE INFORMAÇÃO
QUALIDADE DE SERVIÇO EM VOIP (VOZ SOBRE IP)
Monografia elaborada para conclusão de curso submetido à Universidade Estadual de Montes Claros para a obtenção dos créditos na disciplina de Projeto Orientado a Conclusão de Curso (POCC), no Curso de Sistemas de Informação Bacharelado
ANDERSON FERREIRA GOMES
Montes Claros, junho de 2005
UNIVERSIDADE ESTADUAL DE MONTES CLAROS – UNIMONTES CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS – CCET DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO – DCC CURSO DE SISTEMAS DE INFORMAÇÃO
QUALIDADE DE SERVIÇO EM VOIP (VOZ SOBRE IP)
Monografia elaborada para conclusão de curso submetido à Universidade Estadual de Montes Claros para a obtenção dos créditos na disciplina de Projeto Orientado a Conclusão de Curso (POCC), no Curso de Sistemas de Informação Bacharelado
ANDERSON FERREIRA GOMES
Montes Claros, junho de 2005
UNIVERSIDADE ESTADUAL DE MONTES CLAROS – UNIMONTES CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS – CCET DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO – DCC CURSO DE SISTEMAS DE INFORMAÇÃO
O Projeto Orientado de Conclusão de Curso (POCC): “QUALIDADE DE SERVIÇO EM VOIP (VOZ SOBRE IP)”, elaborado por ANDERSON FERREIRA GOMES, foi julgado adequado por todos os membros da Banca Examinadora, como requisito parcial para obtenção do título de BACHAREL EM SISTEMAS DE INFORMAÇÃO e aprovado, em sua forma final, f inal, pelo Departamento de Ciências da Computação da Universidade Estadual de Montes Claros.
Montes Claros, 24 de junho de 2005.
Aprovado pela Banca Examinadora constituída pelos seguintes professores:
__________________________________________________ Orientador: Prof. Msc. Antônio Eugênio Silva __________________________________________________ Avaliador: Prof. Msc. Nilton Alves Maia __________________________________________________ Avaliador: Profª. Patrícia Takaki Neves
__________________________________________________ Prof. Msc. Luiz Carlos Pires dos Santos Coordenador de Projetos
SUMÁRIO DEDICATÓRIA ........................................................................................................... i AGRADECIMENTOS ..................................................................................................ii LISTA DE FIGURAS ..................................................................................................iii LISTA DE QUADROS ................................................................................................iv LISTA DE ABREVIATURAS ....................................................................................... v RESUMO .................................................................................................................vii 1. INTRODUÇÃO ................................................................................................... 8 2. ESTRUTURA DE REDE.................................................................................... 12 2.1 MODELO DE REFERÊNCIA TCP/IP ............................................................ 12 2.1.1 CAMADA DE APLICAÇÃO .................................................................... 13 2.1.2 CAMADA DE TRANSPORTE ................................................................ 13 2.1.3 CAMADA DE INTER-REDE ................................................................... 14 2.1.4 CAMADA DE HOST /REDE .................................................................... 15 2.2 O PROTOCOLO IP ..................................................................................... 15 2.3 PROTOCOLOS DE TRANSPORTE (TCP X UDP) ......................................... 16 2.4 PROTOCOLO UDP ..................................................................................... 18 2.4.1 CABEÇALHO UDP ............................................................................... 18 2.4.2 PSEUDOCABEÇALHO UDP ................................................................. 19 3. QUALIDADE DE SERVIÇO (QoS) ..................................................................... 20 3.1 CENÁRIO PARA QUALIDADE DE SERVIÇO (QoS) ...................................... 20 3.2 VAZÃO ...................................................................................................... 23 3.3 LATÊNCIA (ATRASO) ................................................................................. 24
...................................................................................................... 26 3.4 JITTER 3.5 PERDAS .................................................................................................... 27 3.6 DISPONIBILIDADE ..................................................................................... 28 3.7 SEGURANÇA ............................................................................................. 28 3.8 CONFIABILIDADE ...................................................................................... 29 4. QoS - ALTERNATIVAS TÉCNICAS.................................................................... 30 4.1 CONTROLE E INIBIÇÃO DE CONGESTIONAMENTO ................................... 31 4.1.1 FIFO - FIRST IN FIRST OUT ................................................................. 31
.................................................... 31 4.1.2 ENFILEIRAMENTO FAIR QUEUEING ............................................ 32 4.1.3 ENFILEIRAMENTO PRIORITY QUEUEING 4.1.4 ENFILEIRAMENTO CUSTOM QUEUEING ............................................. 32 4.1.5 A DETECÇÃO RANDOM EARLY DETECTION (RED) ............................. 33 4.2 EFICIÊNCIA EM CONEXÕES ...................................................................... 34 4.2.1 COMPRESSÃO RTP ............................................................................ 34
.................................................... 35 4.2.2 FRAGMENTAÇÃO E INTERLEAVING 4.3 CONFORMIDADE E POLICIAMENTO DE TRÁFEGO .................................... 35 4.3.1 GENERIC TRAFFIC SHAPING .............................................................. 35 4.3.2 POLICIAMENTO OU COMMITTED ACCESS RATE (CAR) ...................... 36 5. VOZ SOBRE IP (VoIP) ...................................................................................... 38 5.1 LIMITAÇÕES DAS REDES IP PARA TRANSMISSÃO DE VOZ ...................... 40 5.1.1 FONTES DE ATRASO EM TRANSMISSÃO DE VOZ EM REDES DE PACOTE ...................................................................................................... 42 5.2 A ARQUITETURA DO PADRÃO H.323 ......................................................... 44 5.2.1 PILHA DE PROTOCOLOS .................................................................... 45 5.3 PROTOCOLOS PARA TEMPO REAL ........................................................... 50 5.3.1 REAL-TIME TRANSPORT PROTOCOL (RTP)........................................ 50 5.3.2 REAL-TIME TRANSPORT CONTROL PROTOCOL (RTCP) .................... 51 6. PROTOCOLO SIP E AS TENDÊNCIAS FUTURAS ............................................. 52 6.1 SIP X H.323................................................................................................ 53 7. CONCLUSÕES ................................................................................................ 56 8. REFERÊNCIAS BIBLIOGRAFIAS ...................................................................... 59
DEDICATÓRIA Dedico esse trabalho à minha família e aos meus professores e a todos os que me ajudaram até aqui.
i
AGRADECIMENTOS Em primeiro lugar, a Deus, por tudo. Ao meu orientador, professor Msc. Antônio Eugênio Silva, pela orientação sempre oportuna, esclarecedora, inteligente e pelo seu incentivo, fazendo com que este trabalho pudesse ser realizado. Aos meus pais, Floriano e Neide, pela compreensão, apoio e carinho durante estes anos de estudo. A minha namorada Caísa e meus irmãos Flávia e Daniel pela compreensão e dedicação durante estes anos de estudo. Aos professores Nilton Alves Maia e Patrícia Takaki Neves que aceitaram de fazer parte da banca examinadora deste projeto. Aos meus colegas de curso, em especial Carlos Eduardo, Rafael Gomes, Laércio Igor, Paulo Américo e Pablo Nogueira que me ajudaram nos trabalhos e assim como eu dedicaram parte de suas vidas para concretização de um sonho. A todos aqueles que, direta ou indiretamente, contribuíram para a realização deste trabalho.
ii
LISTA DE FIGURAS Figura 1 - Forma geral de um pacote IPv6 ................................................................. 16
......................................................................... 17 Figura 2 - Exemplo de conexão TCP ....................................... 21 Figura 3 - Equipamentos e componentes envolvidos na QoS ...................................................................................... 21 Figura 4 - Modelo para QoS Figura 5 – Características e utilização da telefonia pública .......................................... 22 Figura 6 – Características e utilização da telefonia IP .................................................. 23
............................... 27 Figura 7 - Variação de tempo da chegada dos pacotes no destino ................................................................ 34 Figura 8 - Encapsulamento de pacote VoIP .............. 38 Figura 9 – Rede telefônica tradicional usa canais TDM para transporte da voz Figura 10 - Codificação e encapsulamento do fluxo de voz em pacotes IP.................... 40 Figura 11 - Dados RTP em um pacote IP ................................................................... 50
iii
LISTA DE QUADROS
............................................... 12 Quadro 1 - Camadas do Modelo de Referência TCP/IP ................. 14 Quadro 2 - Parâmetros para qualidade de serviço da camada de transporte Quadro 3 - Vazão Típica de Aplicações em Rede ....................................................... 23 Quadro 5 - Comparação entre CAR e GTS ................................................................ 37
...................... 38 Quadro 6 – Comparação entre diferentes tecnologias e seus protocolos ............... 39 Quadro 7 – Comparativo das tecnologias de rede para a transmissão de voz ..................................................................... 45 Quadro 8 - Pilha de protocolos – H.323 Quadro 9 - Comparativo entre H.323 e SIP ................................................................ 53
iv
LISTA DE ABREVIATURAS - Asyncronous Transfer Mode ATM ARPANET - Advanced Research Projects Agency BECN - Backward Explicit Congestion Notification CAR - Committed Access Rate CQ - Custom Queueing DE - Discard Eligible DIFFSERV - Differentiated Services DoS - Denial-ofService FECN - Forward Explicit Congestion Notification FIFO - FIRST IN FIRST OUT FTP - File Transfer Protocol GTS - Generic Traffic Shaping HTTP - Hypertext Transport Protocol IETF - Internet Engineering Task Force INTSERV - Integrated Services IP - Internet Protocol ITU-T – International Telecom Union Kbps - Kilo bits por segundo LAN - Local Area Network LFI - Link Fragmentation and Interleaving MAN – Metropolitan Area Network Mbps – Mega bits por segundo MCU – Multipoint Control Unit MPLS - MultiProtocol Label Switching MTU - Maximum Transfer Unit Mseg – Milissegundos PABX - Private Automatic Branch Exchange PGP - Pretty Good Privacy PQ - Priority Queueing PSTN - Public Switched Telefone Network PTT - Pontos de Troca de Tráfego QoS – Qualidade de Serviço
v
RAS - Regitration Admission and Status RDSI - Rede Integrada de Serviços Digitais RED - Random Early Detection RSVP - Resource reSerVation Protocol RTCP - Real Time Control Protocol RTP - Real Time Protocol RTPC - Rede telefônica Comutada SIP - Session Iniciation Protocol SIPP - Simple Internet Protocol Plus SBM - Subnet Bandwidth Management SMDS - Switched Multimegabit Data Service SMTP - Simple Mail Transfer Protocol SNMP - Simple Network Management Protocol SSL - Secure Sockets Layer TCP - Transmission Control Protocol TDM -Time Division Multiplexing UDP - User Datagram Protocol VoIP - Voz sobre IP WAN – World Area Network WFQ - Weighted Fair Queueing WRED - Weighted Random Early Detection
vi
RESUMO A crescente popularidade da Internet como meio de baixo custo tem despertado o interesse por tecnologias para a comunicação de voz utilizando o protocolo IP (Internet Protocol ). Esta Monografia apresenta um estudo sobre a tecnologia de transmissão de voz IP, suas aplicabilidades, e mecanismos para implantação de qualidade de serviço na mesma. A qualidade de serviço em redes é a capacidade de diferenciar entre tráfego e tipo de serviços, com as classes de tráfego recebendo diferentes tratamentos por parte do usuário. Apresenta-se ainda limitações das redes IP para a transmissão de voz e destacase as tecnologias desenvolvidas com o objetivo de contornar estas limitações. Os padrões que envolvem a transmissão da voz também são apresentados, além de tendências futuras da tecnologia VoIP e suas vantagens em relação à telefonia convencional.
vii
1. INTRODUÇÃO Ao longo das três últimas décadas do século XX e início desse século XXI, a prestação de serviços de telecomunicações em todo o mundo sofreu algumas profundas mudanças. Houveram alterações significativas na estrutura institucional que servia de base para a prestação de serviços de telecomunicações, principalmente após as privatizações desses setores que antes pertenciam aos governos de estado. Porém, seria errôneo, contudo avaliar as transformações enfrentadas pelo setor apenas a partir do campo institucional. Essa mudança, na verdade, caminhou lado a lado com a tecnologia. Primeiro a tecnologia digital, e depois o emprego da fibra óptica promoveram uma verdadeira revolução na capacidade e velocidade de transmissão de informações através do sistema, seja por meio de voz, sons, dados ou imagem. Alguns especialistas identificaram, em meio às transformações tecnológicas, o início de uma nova era, propagada na mídia como a era da tecnologia da informação. A disseminação do uso do computador pessoal, ao longo dos anos 80, bem como a chegada da Internet, em meados dos anos 90, coroaram a chegada desses novos tempos. Aqui no Brasil, as transformações institucionais e tecnológicas só tiveram início a partir dos anos 90. Na parte institucional, a principal transformação consistiu no fim do monopólio público sobre o setor e na conseqüente privatização do sistema brasileiro de telecomunicações. Quanto à tecnologia, a retomada do nível de investimentos do setor vem permitindo ao país ampliar e modernizar sua infra-estrutura de telecomunicações, mediante inclusive o emprego de tecnologias de ponta como a fibra óptica. Com esse avanço tecnológico, surgiram também diversas mídias de comunicação e conseqüentemente para viabilizar sua implantação, torná-las disponíveis aos usuários e operacionalizáveis, foram necessárias criações de redes distintas, com características distintas das mídias na qual seriam transmitidas. Como por exemplo, têmse as redes telefônicas para o tráfego de voz; as redes de comutação de pacotes para o tráfego de dados; e as redes de difusão ou a cabo, incluindo nesta, o vídeo, rádio e a televisão. Cada uma dessas redes foi projetada para aplicações específicas e se adaptam mal a outros tipos de serviços. Com o grande desenvolvimento da tecnologia digital, os diferentes tipos de informação passam a ser processados de forma integrada, dando origem aos sistemas multimídia. O avanço dos equipamentos para o processamento e armazenamento de informações associado ao sistema de telecomunicações, motivou o conceito de redes de
8
serviços integrados, dando origem às redes convergentes, ou seja, trata-se da redução para uma única conexão de rede, capaz de fornecer todos os serviços de telecomunicações, como tráfego de voz, dados, vídeo, rádio e televisão. Esse novo conceito permite a redução dos custos de instalação, de manutenção e de gerência de redes paralelas, cada uma, dedicada ao suporte de um único serviço, necessitando assim de equipamentos, técnicas e de recursos humanos específicos [SILVA, 2003]. Para que essa integração seja possível de acontecer, faz-se necessário introduzir mecanismos adicionais que permitam suportar os novos serviços com qualidade assegurada, a isso damos o nome de Quality of Service (QoS), em português, Qualidade de Serviço. Trata-se da idéia de que a taxa de transmissão, a taxa de erro, e outras características de tráfego, como o atraso sofrido pelos pacotes ou células de um fluxo de dados, possam ser medidos, melhoradas e, em alguns casos, garantidas de modo a atender às expectativas dos diversos perfis de usuários. Essas expectativas tendem a ser mais bem observadas quando se diz respeito ao tráfego de voz em redes de pacotes [SILVA, 2003]. A voz é um dos principais meios de comunicação e é um instrumento crucial para a troca de informações entre pessoas. Como muitas vezes as pessoas não se encontram no mesmo lugar, há uma necessidade de que ocorra uma conversação mesmo que à distância. Porém realizar conversações telefônicas a longa distância através da rede de telefonia atual tem um custo bastante elevado se comparado com ligações de curta distância. Este trabalho visa mostrar que tais ligações podem continuar sendo feitas, porém com a utilização de técnicas para a implantação de qualidade de serviço em uma tecnologia denominada Voz sobre IP. Com a digitalização da rede telefônica, a voz passou a ser transmitida como dados entre as centrais telefônicas, mantendo-se, ainda, a rede de terminais analógicos para os usuários finais. A tecnologia de Voz sobre IP permite a digitalização e codificação da voz e o empacotamento em pacotes de dados IP (Internet Protocol ) para a transmissão em uma rede que utilize TCP/IP, (arquitetura que tem como objetivo ligar várias redes e será apresentada com maiores detalhes no capítulo 2). O IP é um protocolo mundialmente utilizado que tem como característica principal o envio de dados através de pacotes [SITOLINO, 1999]. As operadoras de telefonia convencional, por causa de seu histórico monopolista e do controle exercido pelo governo federal, ainda que privatizadas, tendem
9
a ser mais lentas na implantação dessa nova tecnologia, que deverão ser analisadas quanto aos impactos na rede instalada, bem como o estágio de padronização da tecnologia. E ao que se observa hoje, para se manterem no mercado, essas empresas operadoras de serviços, poderão optar pela convergência de suas redes, devido: [SILVA, 2003] •
•
aos novos negócios com a Voz sobre IP (Voice over IP – VoIP ), que segundo os analistas, ocupará em torno de 15% do tráfego de voz de longa distância; às desregulamentações atuais e previstas para o setor; e
aos custos de implantação de telefonia sobre as tradicionais centrais de comutação de circuito versus os custos de implantação da telefonia sobre as redes de comutação de pacotes. Contudo, tráfego de dados e voz são de difícil conciliação em uma única rede, pois possuem características bem diferentes. Enquanto no primeiro caso o tráfego tende a ser em rajada (burst), consumindo grande banda passante em curtos intervalos de tempo, no segundo, o tráfego de voz exige baixos atrasos fim-a-fim, provocando um entrave quanto à integração generalizada de serviços com requisitos de tempo real. As redes de voz não suportam, de forma eficiente, as rajadas do tráfego de dados e possuem baixo aproveitamento de banda, pois trabalham com multiplexação determinísticas (Multiplexação por Divisão de Tempo – TDM1), porém apresentam atrasos baixos e com variações (jitter) pequenas. Para resolver o problema da integração generalizada de serviços e atender o transporte de tráfegos com taxa de bits constantes, isso com requisitos de QoS nas redes convergentes de banda larga, tem-se atualmente no mercado das telecomunicações, as redes estatísticas (Asynchronous Transfer Mode) ATM, com diversas classes de serviços, as redes IP (Internet Protocol ) com serviços diferenciados/integrados e o (Multiprotocol Label Switching) MPLS, bem como o misto das redes IP e ATM utilizando mapeamento de serviços. Esse trabalho apresenta um estudo sobre a tecnologia de transmissão de Voz sobre IP e mecanismos para implantação de qualidade de serviço na mesma, bem como, controle e inibição de congestionamento, técnicas de controle de tráfego com classificação e priorização de fluxo. Existem ainda limitações das redes IP para •
1
Time Division Multiplexing (TDM): É um sistema de multiplexação onde cada canal de informação é associado à um intervalo de tempo, para que se possa fazer esta associação, cada canal de informação é informação em buffer de memória.
10
transmissão de voz e nesse trabalho destacam-se as tecnologias desenvolvidas com o objetivo de contornar estas limitações e os padrões que envolvem a transmissão de Voz sobre IP. Além de apresentar alternativas para utilização da infra-estrutura de rede na comunicação entre usuários que não dependa da infra-estrutura de telefonia tradicional, possibilitando que empresas, por exemplo, obtenham uma sensível redução de custos operacionais. Assim com base nas pesquisas realizadas faze-se um questionamento: a qualidade de serviço em Voz sobre IP trás realmente vantagens para os usuários em relação à telefonia convencional, ou as limitações dessa tecnologia são mais poderosas e não deixam com que essa ela seja disseminada? Para facilitar o entendimento quanto à linha de raciocínio a ser seguida no trabalho, o segundo capítulo apresenta a estrutura da rede TCP/IP e seus protocolos, em que trafegam as aplicações de Voz sobre IP, tendo como destaque à camada de transporte e suas funcionalidades. O terceiro capítulo há as fundamentações da qualidade de serviço, que é um fator determinante na implantação de uma solução de Voz sobre IP. Tal capítulo apresenta também os parâmetros para se aplicar à qualidade de serviço. O quarto capítulo descreve algumas das principais alternativas técnicas para se implantar, controlar e garantir a qualidade de serviço em diversas redes e em específico na transmissão de pacotes. No quinto capítulo apresenta uma fundamentação do tema VoIP, demonstrando uma visão geral do assunto, além de alguns protocolos que são essenciais para a transmissão da voz. O capítulo também informa como eles interagem entre si e em que casos devem ser utilizados para melhorar a qualidade do serviço de voz. No sexto capítulo são apresentadas algumas breves considerações quanto a um novo protocolo que poderá futuramente vir a substituir o padrão atual H.323. Apresenta-se novas tendências quanto sua utilização e compara-se as características dos dois protocolos. Por fim, no sétimo capítulo é onde são descritas as conclusões. •
11
2. ESTRUTURA DE REDE Para ser transmitida a partir de uma rede para o seu ponto de destino, a voz necessita ser digitalizada. Tal transmissão envolve a utilização de vários protocolos de comunicação. A seguir serão apresentadas algumas características e funcionalidades de alguns dos principais protocolos de comunicação do modelo de referência TCP/IP, principalmente no que diz respeito aos protocolos da camada de transporte e de interredes. 2.1 MODELO DE REFERÊNCIA TCP/IP O Modelo de Referência TCP/IP, cujo nome vem de seus dois mais conhecidos protocolos TCP e IP, foi criado com o objetivo de ligar várias redes, pois houve vários problemas quando surgiram redes de satélite e rádio que deveriam se comunicar com a Advanced Research Projects Agency (ARPANET)2. [TANENBAUM, 1997] Tal modelo é decomposto em quatro camadas como mostra o quadro 1. Quadro 1 - Camadas do Modelo de Referência TCP/IP TELNET
FTP
HTTP
SNMP
TCP
RTP UDP
SMTP
APLICAÇÃO TRANSPORTE
IP
INTER-REDE
LAN
/REDE HOST
Fonte: Redes de Computadores [TANENBAUM, 1997]
2
ARPANET – Rede desenvolvida pelo Departamento de Defesa dos Estados Unidos durante a década de 70, a Arpanet foi criada para resistir a ataques nucleares com o objetivo de investigar a utilidade da comunicação de dados em alta velocidade para fins militares. Essa rede foi colocada fora de operação em 1990. 12
2.1.1 CAMADA DE APLICAÇÃO A camada de aplicação contém os protocolos de alto nível (TELNET, FTP, HTTP, RTP, SMTP, SNMP, etc) e é responsável por fazer a comunicação entre os aplicativos e a camada de transporte. Com exceção do protocolo RTP (Real Time Protocol) esses protocolos não serão detalhados neste trabalho. Maiores referências serão encontradas em [TANENBAUM, 1997]. A comunicação com a camada de transporte é feita através da utilização de portas. Cada protocolo da camada de aplicação usa uma mesma porta. Por exemplo, o protocolo HTTP utiliza como padrão a porta 80. A porta permite que o protocolo da camada de transporte tenha conhecimento sobre o tipo do conteúdo contido no pacote de dados. Assim o pacote chegando ao receptor ficará fácil identificar a qual protocolo da camada de aplicação ele deverá ser entregue. 2.1.2 CAMADA DE TRANSPORTE Esta camada é responsável por pegar os dados vindos da camada de aplicação e transformá-los em pacotes que posteriormente serão entregues à camada de Inter-rede. Seu principal objetivo é oferecer um serviço confiável e eficiente a seus usuários. Dois protocolos operam nesta camada, são eles: TCP (Transmission Control ) e UDP (User Datagram Protocol ). O primeiro é um protocolo bastante confiável Protocol que permite a entrega dos pacotes de dados sem erro. Já o segundo, o UDP, é um protocolo menos confiável que o TCP, porém é amplamente utilizando quando a entrega imediata dos dados é mais importante que sua entrega precisa. Algumas das funções da camada de transporte estão listadas abaixo: Checagem de erros fim-a-fim: O mecanismo que verifica a integridade dos dados que foram recebidos é o que chamamos de checagem de erro. No caso da checagem de erro fim-a-fim tal verificação só é feita quando o pacote chega ao seu destino e não durante o caminho que o mesmo percorre. Estabelecimento / Encerramento de conexões (quando houver): O estabelecimento de uma conexão funciona como um acordo entre o transmissor e o receptor. O transmissor envia um pacote requisitando uma conexão e quando o receptor recebe tal pacote pode então aceitar e estabelecer a conexão. A partir daí os canais do
13
caminho ou rota que foi usado para a transmissão do pacote são reservados e todos os outros pacotes devem ser transmitidos por este mesmo caminho. Já o encerramento da conexão é a liberação dos canais que compunham o caminho que estava reservado para o transmissor e receptor. Garantir a qualidade de serviço (QoS – Quality of Service ): Segundo [TANENBAUM, 1997] a qualidade de serviço pode ser definida por um número específico de parâmetros. Como mostra o quadro 2. Quadro 2 - Parâmetros para qualidade de serviço da camada de transporte Retardo no estabelecimento da conexão Probabilidade de falha no estabelecimento da conexão Throughput Retardo de trânsito Taxa de erros residuais Proteção Prioridade Resiliência Fonte: Redes de Computadores [TANENBAUM, 1997] Os usuários dos serviços da camada de transporte podem determinar os valores preferenciais, os aceitáveis e os mínimos de cada parâmetro, a fim de transmitir os dados com certa qualidade. 2.1.3 CAMADA DE INTER-REDE Esta camada além de ser responsável por evitar congestionamentos e realizar o roteamento dos pacotes de dados, permite que tais pacotes sejam entregues em qualquer que seja a rede. Um exemplo de protocolo constituinte desta camada é o IP (Internet Protocol ), que será discutido em detalhes na sessão 2.2. 14
2.1.4 CAMADA DE HOST /REDE É a camada responsável pela transmissão dos pacotes recebidos da camada superior (Inter-Rede) na rede física. É formada por placas, cabos, etc. 2.2 O PROTOCOLO IP O protocolo IP foi projetado visando conseguir transportar dados entre os mais diferentes tipos de redes. Sua tarefa é fornecer a melhor forma de transportar pacotes de dados da origem para o destino, independente das redes onde ambos estejam. Cada pacote é transmitido e, caso preciso, pode ser dividido em pedaços menores no meio do caminho. Isso se deve ao fato de uma rede não conseguir transportar o pacote com o tamanho original. Outra característica do IP é que se trata de um protocolo não orientado à conexão e também não é responsável por verificar se um pacote que foi enviado chegou ou não ao seu destino, ficando esta função a cargo do protocolo de transporte, caso necessário. O protocolo IP, apesar de possuir uma grande escalabilidade, sofreu algumas mudanças e foi evoluindo de acordo com o tempo. Tendo com isso várias versões, entre as quais a versão 4 (IPv4) e a versão 6 (IPv6). Durante um bom tempo os recursos do IPv4 foram utilizados de forma satisfatória. Porém com a explosão da Internet na década de 90, e o inúmero crescimento de equipamentos que deveriam se conectar a Internet , surgiu um problema. O número de endereços IP logo estaria esgotado, não suportando a demanda. Com esse problema em vista a Internet Engineering Task Force (IETF) começou a trabalhar em uma nova versão do IP, já na década de 90. Os principais objetivos, entre outros, da nova versão do IP eram: •
•
possuir um número quase inesgotável de endereços IP; reduzir o esforço necessário para o roteamento dos pacotes IP, melhorando assim o throughput ;
•
diminuir o tamanho das tabelas de roteamento;
•
oferecer uma segurança maior em relação ao IPv4;
15
•
aumentar a importância da informação sobre o tipo de serviço, principalmente para os serviços de tempo real;
•
possibilitar a evolução do protocolo;
•
possibilitar a compatibilidade entre a nova versão e o IPv4.
Um problema fundamental na arquitetura Internet é que o IP possui o esquema de endereçamento de 4 bytes , e conseqüentemente está ficando sem endereços. Suas classes3 (principalmente a Classe B) consomem grandes parcelas de faixa de endereços IP e um número grande de organizações possui esse tipo de endereço. Uma solução proposta pela Internet Engineering Task Force (IETF) é a expansão da faixa de endereços IP de 4 para 16 bytes, o chamado Simple Internet Protocol Plus (SIPP), mais conhecida como IPv6 [REKHTER et al., 1996]. Um pacote IP possui um cabeçalho fixo (obrigatório), zero ou mais cabeçalhos de extensão e os dados, como se pode verificar na Figura 1.
Opcional Cabeçalho Cabeçalho Cabeçalho de de Extensão ... Fixo Extensão 6 1
Dados...
Figura 1 - Forma geral de um pacote IPv6 2.3 PROTOCOLOS DE TRANSPORTE (TCP X UDP) O Transmission Control Protocol (TCP) trata-se de um protocolo orientado à conexão e foi projetado especialmente para manter a transmissão dos dados confiável mesmo o meio não sendo muito confiável. É atualmente o protocolo mais utilizado na Internet para a transmissão de arquivos. O User Datragram Protocol (UDP) trata-se de um protocolo que não é orientado à conexão. Ele oferece uma maneira de as aplicações enviarem pacotes IP brutos encapsulados sem precisar realizar uma conexão. Porém não garante a entrega dos pacotes em sua origem.
3
Os endereços são constituídos por uma palavra de 32 bits, sendo estruturados em classes de modo a identificar a rede e a estação dentro das quais se refere o endereço em questão. 16
Ambos os protocolos estão situados na camada de transporte do modelo de referência TCP/IP. O primeiro (TCP), por ser orientado à conexão, apresenta uma maior confiabilidade na entrega dos dados. Já o segundo (UDP) é mais simples e permite que os dados sejam transmitidos com uma maior velocidade, porém sacrificando a confiabilidade. O TCP também é responsável pelo controle de erro (fim-a-fim) e de fluxo. Além 4 de possuir várias outras características, como: comunicação full-duplex fim-a-fim, ordenação de mensagens, multiplexação de IP (utilizando várias portas), etc. A conexão é caracterizada pelo par: (endereço origem, porta origem) e (endereço destino, porta destino).
Figura 2 - Exemplo de conexão TCP Já o protocolo UDP é ideal para aplicações em tempo-real que desejam transmitir áudio e vídeo. Como tais aplicações são sensíveis ao atraso, não faz sentido preocupar-se com a correção dos pacotes, pois tempo será gasto nessa correção, gerando assim um atraso na entrega dos pacotes. O importante para essas aplicações é o pacote chegar o mais rápido possível. Como as aplicações de voz em tempo-real são sensíveis ao atraso, torna-se claro então que o protocolo UDP é o ideal para aplicações de voz sobre IP (VoIP). Tal protocolo é visto com mais detalhes no próximo item.
4
Full-Duplex: Transmissão de dados simultânea em ambas as direções.
17
2.4 PROTOCOLO UDP O UDP trata-se de um protocolo não orientado à conexão, não confiável, porém muito simples e rápido. É ideal para aplicações que necessitam de velocidade e não de muita confiança. Como, por exemplo, algumas aplicações em tempo-real (excluindo as aplicações críticas, que exigem bastante confiabilidade). Um pacote UDP é dividido em duas partes: o cabeçalho UDP e os dados em si. Existe também um pseudocabeçalho utilizado para realizar a soma de verificação do datagrama UDP. Utiliza-se para esta finalidade alguns campos do datagrama IP, como o campo de origem e destino. 2.4.1 CABEÇALHO UDP O cabeçalho está dividido em quatro campos de 2 bytes . São os seguintes: •
•
•
•
porta de origem UDP (Source Port ): Campo opcional de 2 bytes que indica qual a porta utilizada pela aplicação origem. Quando não utilizado recebe o valor zero. porta de destino UDP (Destination Port ): Campo de 2 bytes que possui a porta da aplicação de destino. Serve para que o UDP consiga demultiplexar os datagramas entre os processos que esperam para recebê-los. Tais processos podem se encontrar em um mesmo host . comprimento de mensagem UDP (Length ): Tal campo tem o tamanho de 2 bytes e possui a funcionalidade de marcar a quantidade de bytes do datagrama UDP, incluindo o cabeçalho e os dados. Isto quer dizer que o valor mínimo que este campo terá será 8 bytes (tamanho do cabeçalho UDP). soma de verificação UDP (Checksum ): Campo de 2 bytes que serve para guardar o valor proveniente do cálculo da soma de verificação. Tal soma serve para corrigir eventuais erros que podem ocorrer durante a comunicação. O cálculo desta soma de verificação é opcional. Caso o cálculo não seja feito atribui-se o valor zero para o campo. Este campo é opcional para tornar 5 possível transmitir os datagramas com um menor overhead .
5
São os bits de controle que são enviados no pacote e que não fazem parte dos dados. Overhead = nº de bits de controle ÷ nº de bits transmitidos. 18
2.4.2 PSEUDOCABEÇALHO UDP A soma de verificação do datagrama UDP não utiliza apenas os dados provenientes do cabeçalho UDP, ela requer que seja adicionado um pseudocabeçalho. Tal pseudocabeçalho não é transmitido no datagrama UDP. A utilização deste pseudocabeçalho tem como objetivo verificar se o pacote UDP chegou ao seu destino correto. Para isso além de ser necessário conhecer a porta de destino será necessário também conhecer o endereço de destino (contido no datagrama IP). Tal informação deve então ser adicionada ao pseudocabeçalho para, desta forma, realizar o cálculo da soma de verificação. Vale ressaltar que esta opção de cálculo da soma de verificação deverá ser utilizada somente em aplicações que requeiram um pouco mais de confiabilidade e não velocidade, pois isso deixará o processo bem mais lento.
19
3. QUALIDADE DE SERVIÇO (QoS) A expressão qualidade de serviço (Quality of Service – QoS) pode oferecer margem a diferentes tipos de interpretações e definições. No entanto, existe um certo consenso que parece praticamente todas as definições de QoS que é a característica de diferenciar entre tráfego e tipo de serviços, para que o usuário possa tratar uma ou mais classes de tráfego diferente das demais. Um determinado serviço pode ser caracterizado como possuindo um certo grau de qualidade quando atender às exigências de um determinado patamar de qualidade, especificado segundo um conjunto de parâmetros mensuráveis. A qualidade de serviço (QoS) nas redes IP é um aspecto operacional fundamental para o desempenho fim-a-fim das novas aplicações (VoIP, multimídia, etc). Assim sendo, é importante o entendimento dos seus princípios, parâmetros, mecanismos, algoritmos e protocolos desenvolvidos e utilizados para a obtenção de uma QoS. A obtenção de uma QoS adequada é um requisito de operação da rede e suas componentes para viabilizar a operação com qualidade de uma aplicação. Inicialmente, é necessário considerar que não são todas as aplicações que realmente necessitam de garantias fortes e rígidas de qualidade de serviço (QoS) para que seu desempenho seja satisfatório. No mínimo, as aplicações sempre precisam de vazão (banda) e, assim sendo, este é o parâmetro mais básico e certamente mais presente nas especificações de QoS. Este parâmetro da qualidade de serviço é normalmente considerado durante a fase de projeto e implantação da rede e corresponde a um domínio de conhecimento bem discutido e relatado na literatura técnica. 3.1 CENÁRIO PARA QUALIDADE DE SERVIÇO (QoS) Numa rede IP a qualidade de serviço consiste num mecanismo fim-a-fim (host de origem a host de destino) de garantia de entrega das informações (pacotes). Assim sendo, a implementação da garantia de QoS pela rede implica em atuar nos equipamentos envolvidos na comunicação fim-a-fim visando o controle dos parâmetros de QoS. Os parâmetros (atrasos, jitter , dentre outros) que devem ser controlados visando a obtenção da qualidade de serviço não são, infelizmente, localizados num único equipamento ou componente da rede. A figura 3 ilustra um exemplo de situação onde na
20
rede tem-se equipamentos tipo LAN Switch , roteadores, gateways , pois passou da utilização da telefonia pública (comutação de circuitos) para a telefonia de Voz sobre IP (comutação de pacotes). Os mecanismos de QoS devem atuar nestes equipamentos de forma cooperada, juntamente com as camadas de protocolo e entidades. Uma das atribuições dos gerentes de Tecnologia da Informação (TI) é justamente a escolha e implementação adequada dos mecanismos de QoS discutidos adiante num cenário como o da figura 3.
Figura 3 - Equipamentos e componentes envolvidos na QoS O já se deve ter percebido o principal objetivo da QoS é priorizar o tráfego interativo sensível a retardo, em detrimento ao tráfego referente à transferência de arquivos, que não é sensível a retardo, como é possível perceber no modelo da figura 4 a seguir:
Figura 4 - Modelo para QoS 21
A qualidade de serviço deve ser fim-a-fim, ou seja, considerando o modelo acima, o tráfego tem que ser tratado inicialmente na rede local (LAN) de origem, depois no próprio roteador (controle de descarte de pacotes, por exemplo), posteriormente nas World Area Network – WAN (conexões de longa distância) e roteadores intermediários, no roteador destino, e finalmente na rede local destino. Os atrasos de comunicação e as perdas de pacotes influenciam na interatividade dos usuários e na qualidade da aplicação. Considerando números, se esta aplicação gera uma vazão (fluxo de dados) de 64 Kbps, mesmo a utilização de uma Linha Privada (LP) em rede WAN de 256 Kbps pode não ser suficiente. Neste caso, os atrasos e perdas decorrentes da operação podem prejudicar a qualidade da aplicação. Diz-se então que a aplicação exige uma qualidade de serviço da rede. Na uma telefonia pública atual o desperdício de banda é muito grande como mostra na figura 5, com uma utilização de 50 a 60% (por cento), apesar de não haver congestionamento, pois a banda é garantida.
Figura 5 – Características e utilização da telefonia pública Já na tecnologia IP existe uma alta eficiência de banda, pois a banda é compartilhada, e a utilização do meio é de 90 a 95% (por cento) com na figura 6, mas por outro lado, existem atrasos variáveis na entrega de pacotes, surgindo aí a necessidade de um controle rigoroso em serviços como o da seleção do tráfego de pacotes e a prioridade dos mesmos. 22
Figura 6 – Características e utilização da telefonia IP 3.2 VAZÃO A vazão (banda) é o parâmetro mais básico de QoS e é necessário para a operação adequada de qualquer aplicação. Em termos práticos as aplicações geram vazões que devem ser atendidas pela rede. O quadro 3 em seguida ilustra a vazão típica de algumas aplicações: Quadro 3 - Vazão Típica de Aplicações em Rede Aplicação
Vazão (típica) 1 Kbps a 50 Kbps
Aplicações Transacionais Quadro Branco (Whiteboard ) Voz
10 Kbps a 120 Kbps
Aplicações Web (WWW)
Transferência de Arquivos (Grandes) Vídeo (Streaming) Aplicação Conferência Vídeo MPEG
10 Kbps a 100 Kbps
10 Kbps a 500 Kbps 10 Kbps a 1 Mbps 100 Kbps a 1 Mbps
500 Kbps a 1 Mbps 1 Mbps a 10 Mbps
Aplicação Imagens Médicas
10 Mbps a 100 Mbps
Aplicação Realidade Virtual
80 Mbps a 150 Mbps
Fonte: Análise de Qualidade de Serviço em Redes [SILVA, 2004]
23
Como discutido, o atendimento do requisito vazão para a qualidade de serviço é um dos aspectos levados em conta no projeto da rede. 3.3 LATÊNCIA (ATRASO) A latência e o atraso são parâmetros importantes para a qualidade de serviço das aplicações. Ambos os termos podem ser utilizados na especificação de QoS, embora o termo "latência" seja convencionalmente mais utilizado para equipamentos e o termo "atraso" seja mais utilizado com as transmissões de dados (P. ex.: atrasos de transmissão, atrasos de propagação). De maneira geral, a latência da rede pode ser entendida como o somatório dos atrasos impostos pela rede e equipamentos utilizados na comunicação. Do ponto de vista da aplicação, a latência (atrasos) resulta em um tempo de resposta (tempo de entrega da informação – p. ex. pacotes) para a aplicação. Os principais fatores que influenciam na latência de uma rede são os seguintes: •
atraso de propagação (Propagation Delay );
•
velocidade de transmissão e
processamento nos equipamentos. O atraso de propagação corresponde ao tempo necessário para a propagação do sinal elétrico ou propagação do sinal óptico no meio sendo utilizado (fibras ópticas, satélite, coaxial e outros) e é um parâmetro imutável onde o gerente de rede não tem nenhuma influência. O quadro 4 em seguida ilustra a título de exemplo alguns valores para o atraso de propagação entre cidades numa rede WAN utilizando fibras ópticas como meio físico de comunicação. •
Quadro 4 - Atrasos de Propagação - Fibras Ópticas – Exemplos Trecho (Round Trip Delay )
Atraso de Propagação
Miami a São Paulo
100 mseg
New York a Los Angeles
50 mseg
Los Angeles a Hong Kong
170 mseg
Fonte: Análise de Qualidade de Serviço em Redes [SILVA, 2004] A velocidade de transmissão é um parâmetro controlado pelo gerente visando normalmente a adequação da rede à qualidade de serviço solicitada. Em se tratando de
24
redes locais (LANs), as velocidades de transmissão são normalmente bastante elevadas, tendendo a ser tipicamente superior à 10 Mbps dedicada por usuário (p. ex.: utilizando LAN Switches ). Em se tratando de redes de longa distância (Redes corporativas estaduais e nacionais, redes metropolitanas, intranets metropolitanas, etc.) as velocidades de transmissão são dependentes da escolha de tecnologia de rede WAN (Linhas privadas, Frame Relay , satélite, ATM, dentre outras). Embora exista obviamente a possibilidade de escolha da velocidade adequada para garantia da qualidade de serviço, observam-se neste caso restrições e/ ou limitações nas velocidades utilizadas, tipicamente devido aos custos mensais envolvidos na operação da rede. Além desse fator, observam-se também algumas restrições quanto à disponibilidade tanto da tecnologia quanto da velocidade de transmissão desejada. Em termos práticos, trabalha-se em WAN tipicamente com vazões da ordem de alguns megabits por segundo (Mbps) para grupos de usuários. O resultado das considerações discutidas é que a garantia de QoS é certamente mais crítica em redes metropolitanas (MAN) e redes de longa distância (WAN) pelo somatório de dois fatores, ambos negativos: •
trabalha-se com velocidades (vazão) mais baixas;
a latência (atrasos) é muito maior quando se compara com o cenário das redes locais. O terceiro fator que contribui para a latência da rede é a contribuição de atraso referente ao processamento realizado nos equipamentos. A título de exemplo, numa rede IP os pacotes são processados ao longo do percurso entre origem e destino por: •
•
roteadores (comutação de pacotes)
•
LAN Switches (comutação de quadros)
•
servidores de acesso remoto (RAS) (comutação de pacotes, outros)
firewalls (processamento no nível de pacotes ou no nível de aplicação) Considerando que a latência é um parâmetro fim-a-fim, os equipamentos finais (hosts ) também têm sua parcela de contribuição para o atraso. No caso dos hosts ,o atraso depende de uma série de fatores, a saber: •
•
capacidade de processamento do processador;
•
disponibilidade de memória;
•
mecanismos de cache;
•
processamento nas camadas de nível superior da rede (Programa de aplicação, camadas acima da camada IP, etc.); 25
Outros Em resumo, observe-se que os hosts são também um fator importante para a qualidade de serviço e, em determinados casos, podem ser um ponto crítico na garantia de QoS. Esta consideração é particularmente válida para equipamentos servidores (Servers ) que têm a tarefa de atender solicitações simultâneas de clientes em rede. •
3.4 JITTER O jitter é um outro parâmetro importante para a qualidade de serviço. No caso, o jitter é importante para as aplicações executando em rede cuja operação adequada depende de alguma forma da garantia de que as informações (pacotes) devem ser processadas em períodos de tempo bem definidos. Este é o caso, por exemplo, de aplicações de voz e fax sobre IP (VoIP) e aplicações de tempo real. Do ponto de vista de uma rede de computador, o jitter pode ser entendido como a variação no tempo e na seqüência de entrega das informações (p. ex.: pacotes) (Packet-Delay Variation ) devido à variação na latência (atrasos) da rede. Conforme discutido no item anterior, a rede e seus equipamentos impõem um atraso à informação (p. ex.: pacotes) e este atraso é variável devido a uma série de fatores, a saber: •
tempos de processamento diferentes nos equipamentos intermediários (roteadores, switches , etc.);
tempos de retenção diferentes impostos pelas redes públicas (Frame Relay , ATM, X.25, IP) e outros fatores ligados à operação da rede. A figura 7 ilustra o efeito do jitter entre a entrega de pacotes na origem e o seu processamento no destino. Caso houvesse uma taxa de transmissão constante com intervalo de 20 ms entre a transmissão de um pacote e outro tais pacotes deveriam chegar ao destino com intervalo de 20 ms. Porém como cada pacote pode trafegar na rede por diferentes rotas e diferentes meios esse tempo de chegada pode variar. Fato este que diminuiria a qualidade do serviço. •
26
Figura 7 - Variação de tempo da chegada dos pacotes no destino O jitter causa não somente uma entrega com periodicidade variável (Packet- Delay Variation ) como também a entrega de pacotes fora de ordem. Em princípio, o problema dos pacotes fora de ordem poderia ser resolvido com o auxílio de um protocolo de transporte como o TCP que verifica a seqüência das mensagens e faz as devidas correções. Entretanto, na prática tem-se que a grande maioria das aplicações multimídia optam por utilizar o UDP ao invés do TCP pela maior simplicidade e menor overhead deste protocolo. Nestes casos, o problema de sequenciamento deve ser resolvido por protocolos de mais alto nível normalmente incorporados à aplicação como, por exemplo, o RTP (Real Time Transfer Protocol ). O jitter introduz distorção no processamento da informação na recepção e deve ter mecanismos específicos de compensação e controle que dependem da aplicação em questão. Genericamente, uma das soluções mais comuns para o problema consiste na utilização de buffers (Técnica de "buffering "). 3.5 PERDAS As perdas de pacotes em redes IP ocorrem principalmente em função de fatores tais como: •
•
descarte de pacotes nos roteadores e switch routers (Erros, congestionamento, etc.); perda de pacotes devido à erros ocorridos na camada 2 (PPP - Point-to-Point Protocol, Ethernet, Frame Relay , ATM) durante o transporte dos mesmos.
27
De maneira geral, as perdas de pacotes em redes IP são um problema sério para determinadas aplicações como, por exemplo, a voz sobre IP. Neste caso específico, a perda de pacotes com trechos de voz digitalizada implica numa perda de qualidade eventualmente não aceitável para a aplicação. O que fazer em caso de perdas de pacotes é uma questão específica de cada aplicação em particular. Do ponto de vista da qualidade de serviço da rede (QoS) a preocupação é normalmente no sentido de especificar e garantir limites razoáveis (Taxas de Perdas) que permitam uma operação adequada da aplicação. 3.6 DISPONIBILIDADE A disponibilidade é um aspecto da qualidade de serviço abordada normalmente na fase de projeto da rede. Em termos práticos, a disponibilidade é uma medida da garantia de execução da aplicação ao longo do tempo e depende de fatores tais como: •
disponibilidade dos equipamentos utilizados na rede proprietária (Rede do cliente) (LAN, MAN ou WAN);
disponibilidade da rede pública, quando a mesma é utilizada (Operadoras de telecomunicações, carriers , ISPs - Internet Service Providers ). As empresas dependem cada vez mais das redes de computadores para a viabilização de seus negócios (comércio eletrônico, home-banking , atendimento online , transações online ) e, neste sentido, a disponibilidade é um requisito bastante rígido. A título de exemplo, requisitos de disponibilidade acima de 99% do tempo são comuns para a QoS de aplicações WEB, aplicações cliente/ servidor e aplicações de forte interação com o público, dentre outras. •
3.7 SEGURANÇA Segurança é um fator que sempre deve ser considerado essencialmente em redes corporativas, seja em aplicações de tempo-real ou não. Para manter a qualidade de serviço o acesso à rede deve ser permitido somente a pessoas autorizadas. Deve-se também evitar ataques denial-ofservice (DoS) colocando endereços IPs não válidos para os equipamentos de voz.
28
Como a rede utiliza o protocolo IP existem métodos de tornar as informações mais confiáveis e menos suscetíveis a ataques através da utilização de criptografia que já é suportada nativamente pela versão 6 do IP (IPv6). 3.8 CONFIABILIDADE Algumas providências devem ser tomadas em relação à confiabilidade da rede como um todo. Uma solução para aumentar a confiabilidade seria usar equipamentos e links redundantes. Isso deixaria a rede menos suscetível a falhas e aumentaria assim a qualidade do serviço.
29
4. QoS - ALTERNATIVAS TÉCNICAS Uma vez identificado os parâmetros relacionados com a qualidade de serviço das aplicações, discute-se os protocolos, mecanismos e algoritmos utilizados na implementação efetiva da qualidade de serviço. Para adicionar recursos de qualidade de serviços à pilha TCP/IP, dois modelos de classes de serviços para tráfego Internet estão sendo considerados e desenvolvidos pela IETF: o primeiro refere-se aos serviços diferenciados, denominado Differentiated Services (DIFFSERV ) ou ainda de Soft QoS , que provê um tratamento diferenciado, com preferência estatística, a determinados tipos de fluxo; e o segundo refere-se aos serviços integrados ou Integrated Services (INTSERV ), também chamado de Hard QoS , que fornece uma garantia absoluta na alocação dos recursos da rede. As alternativas IntServ e DiffServ não são concorrentes ou mutuamente exclusivas. Na realidade, estas são soluções complementares que podem ser utilizadas conjuntamente. Uma alternativa de uso conjunto das duas soluções seria a utilização do DiffServ no backbone de roteadores (core ), na medida em que é uma solução mais "leve" e o IntServ RSVP nas redes de acesso, na medida em que fornece um bom controle com granularidade dos requisitos de QoS das aplicações. Além dessas, existem outras alternativas técnicas básicas para a implantação de qualidade de serviço em redes IP, são as seguintes: •
MultiProtocol Label Switching (MPLS);
•
Subnet Bandwidth Management (SBM);
dimensionamento e soluções proprietárias. Todas as alternativas citadas, excetuando-se as soluções proprietárias, são iniciativas do IETF. O IETF está fortemente empenhado em propor um conjunto de soluções para os mecanismos de controle de QoS que garanta a interoperabilidade dos mesmos entre diferentes fornecedores. Isto se dá em função da importância das redes IP para o suporte de novas aplicações multimídia, tempo real, etc. Porém, não é o objetivo principal deste trabalho se aprofundar nos mesmos. Serão abordados mecanismos de controle e inibição de congestionamento, técnicas de controle de tráfego com classificação e priorização de fluxo. Além disso, são apresentadas algumas comparações entre as técnicas abordadas, mas tudo sem se prender às denominações e classificações dos modelos definidos pela IETF. •
30
4.1 CONTROLE E INIBIÇÃO DE CONGESTIONAMENTO Há vários mecanismos de enfileiramento para controle e prevenção de congestionamento em interfaces de roteadores (Ethernet , seriais, Frame Relay , etc.) e switches nível 3, aplicáveis tanto em redes WAN como em LAN. As principais são apresentadas a seguir. 4.1.1 FIFO - FIRST IN FIRST OUT Em geral, o controle de tráfego nas conexões seriais dos roteadores é implementado através de filas FIFO (o primeiro a entrar é o primeiro a sair). Uma fila FIFO é um mecanismo de armazenamento e repasse (store and forward ) que não implementa nenhum tipo de classificação. A ordem de chegada dos pacotes é que determina a alocação da banda, e o que chega primeiro é logo atendido. É o tratamento default da fila nos roteadores, já que não requer nenhuma configuração. O problema ocorre em tráfego de rajada, que pode causar longos atrasos em aplicações sensíveis ao tempo. Por isso, filas FIFO não servem para aplicações que requerem QoS. 4.1.2 ENFILEIRAMENTO FAIR QUEUEING No algoritmo de Enfileiramento Fair Queueing (enfileiramento justo), as mensagens são ordenadas em sessões, e, para cada sessão, é alocado um canal. A ordem na fila é realizada através do último bit que atravessa o canal. Essa operação provê uma alocação mais justa da banda entre os fluxos de dados. O algoritmo WFQ - Weighted Fair Queueing é uma implementação Cisco na qual é possível ponderar determinados tipos de fluxo. O algoritmo escalona o tráfego prioritário (interativo) para frente da fila, reduzindo o tempo de resposta. Ao mesmo tempo, compartilha o restante da banda com os outros tipos de fluxo de uma forma justa. O WFQ é dinâmico e se adapta automaticamente às mudanças das condições de tráfego, sendo bastante útil em conexões seriais de baixa velocidade até 2 Mbps. Por apresentar um desempenho superior à fila FIFO, a fila WFQ já vem préconfigurada nas interfaces seriais dos roteadores Cisco.
31
A classificação dos fluxos de dados pode ser realizada de diversas formas: por endereço fonte ou destino, por protocolo, pelo campo precedência IP, pelo par porta/ socket , etc. A quantidade de filas é configurável e a ponderação pode ser estabelecida por precedência IP, ou em conjunto com outros protocolos de QoS como o Resource reSerVation Protocol (RSVP), ou ainda em tráfego Frame Relay , como VoFR (Voice over Frame Relay ) por exemplo, através dos parâmetros Forward Explicit Congestion Notification (FECN), Backward Explicit Congestion Notification (BECN) e Discard Eligible (DE). 4.1.3 ENFILEIRAMENTO PRIORITY QUEUEING Numa fila com Enfileiramento Priority Queueing - PQ (enfileiramento prioritário), o tráfego de entrada é classificado em quatro níveis de prioridade: alta, média, normal e baixa (high, medium , normal e low ). Os pacotes não classificados são marcados, por default , como normal. Durante a transmissão, o tráfego classificado e marcado como prioritário tem preferência absoluta. Por isso, este método deve ser utilizado com cuidado, para evitar longos atrasos e aumento de jitter nas aplicações de menor prioridade. Num caso extremo, o tráfego de menor prioridade pode até nunca ser transmitido, se o de maior prioridade tomar toda a banda. Isso pode acontecer em conexões de baixa velocidade. Além disso, a fila default sempre tem que ser habilitada. Caso contrário, todo fluxo não classificado (sem uma correspondente lista de prioridade) também poderá não ser enviado. Há várias opções de classificação de tráfego numa fila PQ. A classificação pode ser por protocolo (p. ex. IP), por interface de entrada ou por lista de acesso. 4.1.4 ENFILEIRAMENTO CUSTOM QUEUEING O algoritmo da fila Custom Queueing (CQ) permite especificar uma percentagem da banda para uma determinada aplicação (alocação absoluta da banda). A banda reservada é compartilhada proporcionalmente, no percentual pré-definido, entre as aplicações e os usuários. O restante da banda é compartilhado entre os outros tipos de tráfego.
32
O algoritmo CQ controla o tráfego alocando uma determinada parte da fila para cada fluxo classificado. As filas são ordenadas ciclicamente num esquema round-robin , onde, para cada fila, é enviado a quantidade de pacotes referente à parte da banda alocada antes de passar para a fila seguinte. Associado a cada fila, há um contador configurável que estabelece quantos bytes devem ser enviados antes da passar para a próxima fila. Até 17 filas podem ser definidas, mas a fila zero é reservada para mensagens dos sistemas como sinalização, keep-alive , etc. A classificação CQ pode ser feita por endereço fonte ou destino, por protocolo (p. ex. IP), por precedência IP, por interface de entrada e ainda por listas de acesso. A seguir, apresenta-se algumas considerações sobre a escolha de qual método utilizar. De fato, estas são as diretrizes básicas nas considerações iniciais de um projeto VoIP, porém, na prática o que prevalecerá será o método e a configuração dos respectivos parâmetros que se enquadrem nas condições do projeto. Então se deve ter disponibilidade de banda nas conexões WAN, topologia do backbone , roteamento estático ou dinâmico, etc. e que produzir uma boa qualidade subjetiva do sinal de voz. 4.1.5 A DETECÇÃO RANDOM EARLY DETECTION (RED) A detecção Random Early Detection - RED (detecção randômica antecipada) é um mecanismo para prevenção e inibição de congestionamento ou congestion avoidance . O algoritmo monitora o tráfego antecipadamente utilizando as funções de controle de congestionamento TCP, descartando pacotes aleatoriamente e indicando para a fonte reduzir a taxa de transmissão, evitando assim situações de congestionamento antes que ocorra picos de tráfego. Quando habilitado numa interface, o RED começa a descartar pacotes a uma taxa que pode ser previamente configurada. WRED, ou Weighted RED, é uma implementação da Cisco que combina as funcionalidades do RED com a classificação de pacotes por precedência IP. Baseado nessa classificação, o WRED descarta pacotes seletivamente, descartando inicialmente os pacotes de menor prioridade, com diferentes pesos para cada classe. É possível desabilitar a classificação precedência IP e habilitar o descarte com base apenas no tamanho do buffer da fila; ou ainda utilizar o WRED em conjunto com o Resource reSerVation Protocol (RSVP) para se obter um descarte mais seletivo. Nesse
33
caso, antes que ocorra uma situação de congestionamento, os fluxos de menor prioridade nas sessões RSVP serão descartados antes dos outros de maior prioridade. WRED é útil em qualquer interface na qual a possibilidade de congestionamento seja eminente. Entretanto, é geralmente utilizado em roteadores centrais de backbone (core routers ), com a precedência IP habilitada pelos roteadores de acesso (edge routers ). 4.2 EFICIÊNCIA EM CONEXÕES Obter a melhor eficiência nas conexões com voz sobre IP significa, neste caso, fazer um melhor uso da banda com os protocolos associados às aplicações de voz, com uma boa qualidade. Utilizando protocolos de compressão de dados, pode-se obter uma maior economia de banda e, com tecnologias para fragmentação e interleaving , obtém-se uma melhor qualidade do sinal de voz. Os protocolos descritos a seguir realizam tais funções. 4.2.1 COMPRESSÃO RTP O protocolo Compressed Real-time Transport Protocol (CRTP) comprime o cabeçalho do pacote RTP, que transporta o tráfego de voz. A Figura 8 mostra formação de um pacote RTP. O campo de dados (payload ) de um pacote IP de voz é composto pelo pacote RTP, que transporta o sinal de voz propriamente dito, encapsulado num pacote UDP.
Figura 8 - Encapsulamento de pacote VoIP O tamanho do cabeçalho RTP é de 12 bytes , o do UDP de 8 bytes e do IP de 20 bytes , totalizando 40 bytes . Considerando o payload IP de 20 bytes , só de cabeçalho teríamos 66,66% da banda da conexão. Com isso surgiu o protocolo CRTP, que, na maior parte do tempo, consegue uma compressão de cabeçalho de 40 para 2 bytes , ou para 4 se considerarmos o checksum UDP. Essa compressão corresponde a uma redução de até 95% na sobrecarga (overhead ) referente aos cabeçalhos. 34
A operação CRTP é simples. O tráfego total destinado a uma determinada interface é classificado, e o que for RTP é separado para compressão. O tráfego RTP é, então, processado num compressor e colocado novamente na fila para ser transmitido. A compressão CRTP é bastante útil em conexões de baixa velocidade (64 Kbps, p. ex.), mas também possui desvantagens. Se for habilitada compressão RTP, o roteador só funcionará em process switch em vez de fast switch , o que, combinado com a sobrecarga da execução CRTP, pode causar queda de desempenho do mesmo. Portanto, o uso do CRTP não é sugerido em enlaces de alta velocidade, uma vez que a relação custo versus benefício pode não compensar. 4.2.2 FRAGMENTAÇÃO E INTERLEAVING No modelo apresentado na Figura 4, considere a existência de uma sessão File Transfer Protocol (FTP) entre os dois pontos. Se, no momento da chegada de um pacote de voz, o roteador estiver processando um grande pacote FTP, o sinal de voz para o receptor chegará com pausas e, subjetivamente, soará como soluços. Se as pausas forem demoradas, o sinal pode até perder a inteligibilidade. Isso acontece, principalmente, em conexões com grande Maximum Transmission Unit (MTU). Essa situação é bastante inadequada para tráfego sensível a retardo. As técnicas de fragmentação e interleaving , ou Link Fragmentation and Interleaving (LFI), amenizam esse problema. A fragmentação consiste em quebrar, ou fragmentar, grandes datagramas ("jumbogramas") em partes menores. Já as técnicas de interleaving intercalam os pacotes menores, incluindo os de voz, entre os "pedaços" do "jumbograma" para posterior transmissão. Essas técnicas são bastante úteis em enlaces de baixa velocidade, reduzindo o atraso e a variação deste, o chamado jitter . 4.3 CONFORMIDADE E POLICIAMENTO DE TRÁFEGO 4.3.1 GENERIC TRAFFIC SHAPING Generic Traffic Shaping , ou GTS como chamada, (em português conhecido como Conformidade de Tráfego) provê mecanismos para controle de tráfego utilizando
35
6 filtros conhecidos como token bucket , limitando o tráfego de saída de uma interface a uma determinada taxa. O tráfego classificado vai para um buffer limitador, sendo liberado sob regras pré-definidas de acordo uma política de controle de tráfego, que pode ser configurada pelo administrador ou derivada da interface. Conformidade de tráfego pode ser útil em vários casos. Por exemplo, para limitar o tráfego de rajada de forma a não prejudicar o tráfego prioritário, reduzindo assim a latência; ou, em situações de congestionamento, para limitar um determinado tipo de tráfego não sensível a retardo, como transferência de arquivos, eliminando possíveis gargalos. A GTS aplica-se apenas em interfaces de saída, com o uso de listas de acesso para classificar e selecionar o tráfego. Funciona com qualquer tecnologia de enlace (nível 2) como Frame Relay , ATM (Asyncronous Transfer Mode ), Switched Multimegabit Data Service (SMDS) e Ethernet .
4.3.2 POLICIAMENTO OU COMMITTED ACCESS RATE (CAR) O Committed Access Rate (CAR) é o método para policiamento e controle de tráfego IP que realiza, basicamente, duas funções para qualidade de serviço: •
gerenciamento de banda com limitação de taxa de acesso (policing ) - permite controlar a taxa máxima de transmissão ou recepção de dados de uma determinada interface. O tráfego CAR é transmitido ou recebido, enquanto os pacotes que excedem os limites pré-definidos, ou são descartados, ou são reclassificados com outra prioridade para retransmissão;
classificação de pacotes através de precedência IP ou de grupos de QoS (um rótulo interno do roteador utilizado para definição de classes - permite particionar a rede em múltiplas classes de serviços ou níveis de priorização). Para isso, utilizando também o mecanismo token bucket , o CAR examina o tráfego recebido na interface ou parte do tráfego selecionado pelos critérios das listas de acesso, compara a taxa de tráfego com a do token bucket e, de acordo com o resultado, •
oken Bucket é uma definição formal para taxa de transferência. Possui três componentes: um amanho de rajada em bits ( burst size), também chamado de committed burst (BC) que especifica o quanto pode ser enviado num determinado intervalo de tempo; uma taxa média (mean rate) em bps, também chamada de CIR (Committed Information Rate), que especifica o quanto de dados, na média, pode ser enviado por unidade de tempo; e um intervalo de tempo (TC ) em segundos, intervalo de medida que especifica o tempo por rajada. 6
T
36
toma uma ou várias ações. Ou seja, pode transmitir o pacote, descartá-lo ou reclassificálo com outro nível de prioridade, etc. Os tokens são inseridos no balde na mesma taxa CIR. A profundidade do balde é o tamanho da rajada (burst size ). Se houver tokens suficientes quando o tráfego chega ao balde, então o tráfego é dito estar em conformidade e a quantidade correspondente de tokens é removida. Se não houver tokens suficientes, então o tráfego é dito excessivo. Os critérios de seleção de tráfego podem ser baseados em todo tráfego IP, em precedência IP, em listas de acesso (padrão ou estendida), em endereço MAC ou, ainda, em grupos de QoS. O endereço MAC e a precedência IP podem ser definidos através de listas de acesso rate-limit . Com o CAR, pode-se limitar o tráfego por aplicação (Web , FTP, etc), por interface (p. ex., uma conexão serial a 2 Mbps, mas com acesso limitado em 512 Kbps), por endereço MAC (p. ex., controle de tráfego em Pontos de Troca de Tráfego (PTT)), ou pode-se classificar ou reclassificar todo o tráfego de entrada num backbone a partir dos roteadores de borda, para tratamento diferenciado em termos de qualidade de serviços. O quadro 5 abaixo apresenta as diferenças entre CAR e GTS: Quadro 5 - Comparação entre CAR e GTS CAR
GTS
Aplica-se em tráfego de entrada e de saída
Aplica-se apenas em tráfego de saída
Não "buferiza" nem molda tráfego
Molda e suaviza o tráfego
Pode marcar pacotes (ex: precedência IP)
Não possui essa funcionalidade
Em Frame Relay , não suporta FECN e nem Suporta FECN e BECN em Frame BECN Relay Suporta políticas em cascata
Não suporta essa funcionalidade
Não suporta uso com RSVP
Suporta RSVP quando usa WFQ
Suporta listas padrões e estendidas
Suporta apenas listas estendidas
Gerência o descarte entre o normal_burst e o Não suporta essa funcionalidade extended_burst Executa no modo distribuído (VIP do 7500)
Não suporta essa funcionalidade
Fonte: Qualidade de Serviço em VoIP II [SILVA, 2001]
37
5. VOZ SOBRE IP (VoIP) Durante a explosão da internet , nos anos 90, a rede pública telefônica de linha discada era amplamente utilizada para o fluxo de dados. Com o advento e a evolução dos canais de banda larga surgiu a possibilidade do tráfego de voz na rede de dados. Esse é o princípio de funcionamento da mais recente tecnologia surgida no mercado da telecomunicação, denominada telefonia IP (Internet Protocol ). Na figura 9 mostra-se a telefonia pública atual. Uma conexão de voz igual a 64 Kbps e um canal E1(G703/G704) igual a 30 conexões de voz.
PBX
PBX Telefonia
Pública
Figura 9 – Rede telefônica tradicional usa canais TDM para transporte da voz Já existem hoje alguns órgãos que padronizam o tráfego de voz sobre ATM, sobre IP e sobre Frame Relay , além de seus protocolos, como mostra o quadro abaixo, porém não serão dadas, no projeto, características desses órgãos e nem especificidades que venham a ocorrer em suas tecnologias, diferentes da tecnologia IP, apresentando no máximo algumas comparações entre as mesmas. [BASTOS, 1999] Quadro 6 – Comparação entre diferentes tecnologias e seus protocolos Voz
Sobre ATM
Sobre IP
Sobre FR
Órgão de Padronização
ATM Fórum
IMTC7
Frame Relay Forum
Padrões
AAL1/CES AAL2 AAL5
H.323 RTP MGCP SIP
FRF.11 FRF.12
Fonte: Voz sobre IP [BARROS, 1999]
7
International Multimedia Telecommunications Consortium (IMTC) é uma corporação fundada para promover a criação e adoção de padrões internacionais para "Multipoint videoconferencing "e "Document Conferencing ". 38
Quadro 7 – Comparativo das tecnologias de rede para a transmissão de voz Tecnologias de Rede
PSTN 8
Economia de custos
Baixo
Desempenho
Alto
Utilização mundial
Alto
Aplicações em potencial
Baixo
Frame Relay
Intranet Internet
(IP)
(IP)
ATM
Alto
Alto
Muito alto
Baixo
Alto
Moderado
Muito Baixo
Alto
Moderado Moderado
Alto
Baixo
Alto
Baixo
Baixo
Alto
Fonte: Fonte: Voz sobre IP [BARROS, 1999] Algumas empresas hoje de médio e grande porte possuem pontos de presença em várias cidades, estados e até países. Suas redes locais de computadores geralmente são interligadas através dos backbones das concessionárias de telecomunicações, formando assim uma única rede corporativa, utilizando na maior parte das vezes o protocolo IP. Essas redes são utilizadas, na maioria dos casos, para acesso a banco de dados, transferência de arquivos, envio de mensagens, etc. Sabe-se também que geralmente há um grande número de ligações telefônicas entre seus diversos pontos de presença, ocasionando assim um custo considerável. Com o objetivo de diminuir este custo e aproveitar uma possível ociosidade da rede, foi desenvolvida uma tecnologia, denominada VoIP (Voz sobre IP), que permite utilizar a rede IP para trafegar, além de dados, também voz e conseqüentemente reduzir de forma considerável, dependendo do caso, o custo com ligações telefônicas. Para que a voz seja transmitida através de uma rede IP, utilizando o protocolo UDP da camada de transporte, ela primeiramente deve ser codificada. Ou seja, deve-se transformar o sinal analógico da voz em um sinal digital para que o mesmo possa fazer parte do campo de dados de um pacote IP. Tal codificação é feita utilizando-se equipamentos especiais, que além de codificar também irão comprimir os dados. Tais dispositivos são chamados de coders . Os mais modernos além de comprimir ainda fazem supressão de silêncio e cancelamento de eco. A Figura 10 mostra o processo de codificação e empacotamento das mensagens. 8
Public Switched Telephone Network (Rede Comutada de Telefonia Pública) - é a rede de telecomunicações que torna possível chamadas telefônicas. 39
Figura 10 - Codificação e encapsulamento do fluxo de voz em pacotes IP. Atualmente, as empresas estão avaliando o transporte de voz sobre as redes IP para reduzir os custos de telefonia e fax, com a vantagem de utilização de aplicações multimídia avançadas. Os serviços de transmissão de voz sobre redes IP possibilitam a integração aos serviços de dados e vídeo, tornando realidade às convergências dos serviços. A tecnologia de voz sobre IP (VoIP) adota padrões internacionais. Os desafios encontrados pelos provedores de telecomunicações para liberar produtos comerciais estão começando a ser vencidos. Esses desafios incluem a interoperacionalidade entre redes, perda de pacotes, retardo (delay ), escalabilidade e confiabilidade. A Internet e as Intranet corporativas estão sendo habilitadas para transportar todo o tráfego de voz requerido pelas organizações. A tecnologia VoIP tem sido utilizada com o intuito de trazer grandes benefícios quando aplicada em redes privadas, pois sua utilização na Internet ainda não é confiável e não apresenta uma boa qualidade, devido ao alto tráfego de dados. O fato de a tecnologia VoIP ser ainda emergente não é um fator de inibição, pois existe uma grande aceitação do mercado para a mesma. 5.1 LIMITAÇÕES DAS REDES IP PARA TRANSMISSÃO DE VOZ As redes baseadas no protocolo IP oferecem algumas limitações para garantir uma qualidade de voz e estas surgem em virtude das redes baseadas em IP serem redes de comutação de pacotes, em contrapartida, as redes telefônicas convencionais são redes de comutação de circuitos.
40
A comutação de circuitos é uma técnica de comunicação, onde a principal característica é a necessidade de se estabelecer um caminho fim-a-fim, antes que qualquer dado possa ser enviado. É reservada estaticamente a largura de banda necessária com antecedência e o que não for utilizada em circuito alocado é simplesmente desperdiçada. A comutação de pacotes é uma técnica de comunicação, onde a largura de banda somente é usada quando é preciso e a banda não utilizada pode ser utilizada por outros pacotes entre origens e destinos não associados, pois os circuitos nunca são dedicados. [TANENABAUM, 1997] Nas redes de comutação de circuitos, um caminho fim a fim é estabelecido ao se efetuar a conexão entre o transmissor e o receptor. É estabelecida uma banda e demais recursos da rede, que por sua vez ficam dedicados somente durante àquela conexão, sem compartilhamento. Assim garante-se qualidade de serviço (QoS - Quallity of Service ), mas perde-se na eficiência dos recursos da rede, pois mesmo se não for transmitido nada na banda alocada, ela se encontrará inutilizada, pois não há compartilhamento de recursos. As redes de comutação de pacotes compartilham recursos entre os diversos usuários que desejam transmitir. E como não é alocado um caminho dedicado a uma conexão cada pacote pode percorrer uma rota diferente, ou seja, geralmente perde-se a seqüência dos pacotes transmitidos. Nessa rede também é preciso o processamento dos nós intermediários de uma conexão. Outra dificuldade para a voz, a qual exige cadência, está relacionado ao fato de as redes IP trabalharem com o "melhor esforço" (best effort ). Assim, todos os pacotes são tratados de forma igual, sem prioridades entre eles ou discriminação entre os diversos tipos de tráfegos. Quando um pacote chega na fila do roteador, FIFO (First In First Out ) primeiro que entra é o primeiro que sai, ele não pode "furar" fila. Se houver espaço nos buffers dos roteadores, o pacote é armazenado para transmissão e, caso contrário, ele é descartado. [DELFINO, 1999] Atrasos são outras barreiras para os pacotes de voz. Eles podem ser de dois tipos: fixos ou variáveis (jitter ). Os atrasos fixos causam desconforto na conversação e os variáveis, atrapalham a cadência na transmissão da voz. Os atrasos fixos podem ocorrer por diversos motivos: •
compressão: tempo gasto na codificação da voz;
•
entre processos: atraso em devido aos handoffs entre os roteadores da rede;
41
•
transmissão: limitações de velocidade dos enlaces;
•
rede: uma função da capacidade da rede;
•
buffer : em função do tamanho do buffer;
descompressão: tempo gasto na descompressão. Os atrasos variáveis são decorrentes do tráfego e do congestionamento da rede. Estes são causados principalmente pelo enfileiramento dos pacotes nos roteadores. Atrasos da ordem de 150ms (para alguns, 250ms) são considerados intoleráveis para transmissão de voz, pois causam perda de interatividade. Valores mais altos do que isto, porém, podem ser atingidos, em algumas situações, na Internet. •
5.1.1 FONTES DE ATRASO EM TRANSMISSÃO DE VOZ EM REDES DE PACOTE Não só os atrasos, mas também de fundamental consideração são as perdas existentes na rede. Para o tráfego de voz codificado sem compressão, elas não são tão importantes. Contudo, ao comprimirmos a voz, estaremos aumentando a sensibilidade em relação às perdas. Apesar do protocolo TCP tentar garantir a recuperação contra congestionamento e perdas, uma garantia maior só é obtida utilizando uma banda maior disponível, bem como uma melhoria no tempo de processamento dos nós. Outro problema a ser considerado é a escassez de banda. A conversação normal possui intervalos de silêncio, o que pode gerar um desperdício de recursos em se tratando de alocar uma possível banda fixa, como ocorre com a telefonia convencional. Para finalizar, é possível mencionar também como uma dificuldade que se afigura o uso do protocolo UDP como transporte para aplicação de voz. Este protocolo, que não efetua a reordenação, nem a recuperação por retransmissão, tem a vantagem de ser o mais adequado para se manter a cadência da conversação. Além do mais, existe alguma tolerância a perdas quando se trata da transmissão de voz. Contudo, o UDP é o tipo datagrama, mas não possui controle de congestionamento algum. Por isso, ele pode ser um emissor agressivo para a rede, gerando, assim, congestionamento. Em contraponto a todas essas dificuldades, serão mostradas a seguir as tecnologias que estão em desenvolvimento, ou já estão estabelecidas, que permitem contornar estes obstáculos. Para resolver os problemas relacionados ao congestionamento e atrasos, podemos empregar mecanismos de controle de congestionamento e atribuição de prioridades. A priorização pode ser mais eficiente, quando empregada com outras
42
técnicas que aceleram o fluxo dos pacotes de voz. Os algoritmos de priorização podem limitar dinamicamente o tamanho dos quadros de dados, se há presença de pacotes de voz, podendo assim se conseguir um enfileiramento de pacotes de dados à frente de qualquer pacote de voz. Consegue-se assim, diminuir os tempos de enfileiramento dos pacotes de voz, garantindo um bom desempenho por parte da transmissão de dados, caso o fluxo de voz não esteja em uso. Já quanto ao controle de congestionamento, alguns métodos como a priorização de pacotes UDP, estão emergindo para garantir o tráfego de voz fluindo suavemente. Além disso, os roteadores devem empregar técnicas de bufferização e ocultamento de erros, para compensar os atrasos e perdas de pacotes que ocorrem de forma inevitável. Buffer na extremidade receptora enfileiram uma pequena quantidade de pacotes, antes de sua execução, eliminando as variações de atrasos que podem ocorrer na rede. Podem ser implementados métodos de estimação do conteúdo de pacotes perdidos baseados nos pacotes previamente enviados, de forma a repor a informação ausente. Como forma de melhorar a banda deve-se empregar algoritmos de compressão de voz e supressão de silêncio. Com a compressão, consegue-se obter áudio de boa qualidade numa banda menor. Os algoritmos de compressão empregam a supressão de silêncio, eliminando as pausas, que ocupam até 40% da conversação telefônica, e ocupando a banda por outros pacotes quando intervalos de silêncio ocorrem. Entretanto, há que se levar em consideração que com a compressão, os pacotes de voz aumentam a sensibilidade a perdas, donde vemos a importância dos mecanismos que evitam tais características. Outro problema que pode irritar o ouvinte durante a conversação telefônica é o eco. Assim, deve-se empregar algoritmos de cancelamento de eco de forma a evitar tais incômodos. Os algoritmos mais modernos modelam padrões matemáticos da conversação humana e subtraem no caminho de transmissão. Para funcionar de forma eficiente, esta técnica deve ser empregada no mesmo roteador que faz a codificação de voz. Os mecanismos que estão implementados, ou são assuntos de pesquisa no ambiente Internet, para garantir QoS para a transmissão de voz são: •
Resource reSerVation Protocol (RSVP): primeiro padrão industrial para garantir QoS em redes heterogêneas. O RSVP é um protocolo de sinalização que tem a capacidade de requisitar um determinado nível de QoS através da rede. Ele
43
carrega o pedido pela rede visitando cada nó que a rede usa para carregar o fluxo. O RSVP deve ser implementado nó a nó, implicando em problemas de escalabilidade. •
•
•
Real Time Transport Protocol (RTP) e Real-Time Control Protocol (RTCP): O RTP é constituído por uma parte de dados e outra de controle, RTCP. Realiza a reconstrução de temporização, a detecção de perdas e identificação de conteúdo. O RTCP dá suporte a conferência em grupo, ou seja, identificação de fontes e suporte a roteadores de nível 2 (bridges ) para áudio e vídeo, também dá suporte a tradutores de multicast para unicast . Como a sobrecarga do uso do IP-UDP-RTP é grande, 40 octetos, é adotada a verão CRTP, com compressão de cabeçalho para um valor de 2 a 4 octetos. Suavização de Tráfego: Taxa Média = (Tamanho de Rajada) / (Intervalo). Por definição, a taxa de transmissão não excederá a taxa média. Política de escalonamento - Prioridades Weighted Fair Queuing (WFQ) e Random Early Detection (RED): O tráfego entrante é associado a uma fila. A fila com maior prioridade é servida até que se esvazie e assim pacotes nas outras filas vão sendo servidos. Os tráfegos críticos vão ficar com maior banda causando prejuízo aos outros tráfegos (starvation ). O WQF evita que o tráfego chegue a uma situação de starvation , pois ele divide a banda com "justiça". Esse mecanismo diminui o jitter . O RED é um algoritmo de prevenção contra congestionamento. Pode-se também implementar pesos (WRED) configurados no campo ToS (Type of Service ) do datagrama IP.
5.2 A ARQUITETURA DO PADRÃO H.323 O padrão H.323 do Internation Telecom Union (ITU-T)9 é um padrão que cobre diversos tipos de comunicação multimídia em redes locais que não provém QoS garantida. Este padrão prevê, entre outros [ITU-T RECOMMENDATION H.323, 1996]: •
•
algoritmos padrões de compressão que devem ser implementados de forma a garantir a compatibilidade, conhecidos como áudio codecs ou vocders; protocolos utilizados para o controle da chamada, estabelecimento dos canais de comunicação e negociação de qualidade de serviço;
9
Internation Telecom Union (ITU-T), organismo que define padrões para redes de computadores e telecomunicações. Estas redes incluem TCP/IP em cima de Ethernet, Fast Ethernet e Token Ring . 44
•
•
interoperabilidade com outros terminais de voz, como telefonia convencional, Rede Integrada de Serviços Digitais (RDSI), voz sobre ATM (Asynchronous (Asynchronous Transfer Mode ), e outros, permitindo assim a construção de gateways; ), elementos ativos do sistema e suas funções.
5.2.1 PILHA DE PROTOCOLOS Segundo [MONTEIRO, 2001], os pacotes de áudio, e vídeo e registro usam o protocolo UDP enquanto que os pacotes de dados e controle usam o protocolo TCP. O quadro 8 abaixo mostra a pilha de protocolos do H.323. Quadro 8 - Pilha de protocolos – H.323 Aplicações de Aplicações de Vídeo áudio G.711 G.723 G.728 G.729
Controle e Gerenciamento H.225.0
H.261 H.263
H.245
Canal RAS
Canal de Canal de Sinalização de Controle H.225 Chamada X.224 Classe 0 RTP UDP TCP Nível de Rede (IP) Nível de Enlace Nível Físico Fonte: Implementação de transporte robusto de voz em rede baseadas em protocolos IP [BARROS, 1999] RTCP
O protocolo H.323 utiliza em suas diversas funcionalidades de uma família de recomendações ITU-T: sinalização de chamada H.225.0, RAS H.225.0 e o controle de mídia H.245 [SERGIO, 2001]. O H.225.0 é usado em conjunto como o H.323 e fornece a sinalização para controle de chamada. Para fazer uma chamada de uma fonte para um receptor, um canal RAS H.225 é usado. Após o estabelecimento da chamada, o H.245 é usado para negociar o fluxo de mídia. Além dos protocolos citados acima hoje já se utiliza o protocolo H.335 para segurança, o H.246 para interoperabilidade com RTPC, e a série H.450.x para serviços suplementares. Todos os padrões fazem parte da série H de Recomendações. [SERGIO, 2000].
45
Aplicação e Áudio Codecs e Vídeo Codecs - utiliza o protocolo Real Time Control Protocol (RTP) para transmissão de pacotes. H.225.0: RAS Registration, Admission and Status – o canal RAS é usado para comunicação entre pontos finais e o gatekeeper ( componente que age como ponto componente central para todas as chamadas dentro de sua zona, além de provê controle de chamada entre estações). Uma vez que as mensagens RAS são enviadas utilizando-se o UDP (um protocolo não confiável), o uso de timeouts e retransmissão de mensagens é recomendado. Os procedimentos definidos por um canal RAS são: a) descoberta do gatekeeper : este é o processo utilizado pelos pontos finais para determinar o gatekeeper no qual eles devem se registrar; b) registro de ponto final: este é o processo pelo qual um ponto final junta-se uma zona e informa ao gatekeeper sobre seus endereços e de transporte; c) localização do ponto final: um ponto final ou gatekeeper que possui um endereço alias de um ponto final e deseja determinar suas informações de contato pode utilizar uma mensagem específica; d) mensagens: o canal RAS também é usado para transmissão de mensagens de admissão, mudança de largura de faixa, status e desligamento. RTP/RTCP Real Time Protocol / Real Time Control Protocol - usado para transporte do fluxo de pacotes multimídia, com características de tempo real, executando também funções de estatísticas de qualidade de serviços, mais detalhes sobre esses protocolos serão apresentados posteriormente. H.225.0: Sinalização Sinalização de chamada - o canal de sinalização de chamada é usado para carregar mensagens de controle H.225. Em redes que não possuem uma gatekeeper , as mensagens de sinalização de chamadas são passadas diretamente entre o ponto que chamou e o que foi chamado, utilizando-se um endereçamento de sinalização de chamada. Em redes que contem um gatekeeper , as trocas de mensagens de admissão iniciais são feitas entre o ponto que chama e o gatekeeper , através de mensagens de endereçamento RAS. H.245: Controle de conferência e mídia - o H.245 é o protocolo de controle de mídia que os sistemas H.323 utilizam depois que a fase de estabelecimento de chamada foi completada. O H.245 é usado para negociar e estabelecer todos os canais de mídia conduzidos pelo RTP/RTCP.
46
O H.245 é usado para possibilitar o uso de canais, o Q.931 é usado para a sinalização e o estabelecimento da chamada, o RTP é o protocolo de transporte em tempo real que carrega os pacotes de voz enquanto que o RAS é usado para interação com o gatekeeper . As funcionalidades oferecidas são as seguintes: a) determinação de mestre e do escravo: o H.245 designa um Controlador de Multiponto (MC) que é responsável pelo controle central em caos onde uma chamada é estendida a uma conferência.; b) troca de capacidades: o H.245 é usado para negociar as capacidades quando uma chamada é estabelecida. A troca de capacidades pode ocorrer em qualquer momento durante a chamada, portanto possibilitando renegociar a qualquer momento; c) controle do canal de mídia: após os pontos finais de uma conferência terem trocado capacidades, eles podem abrir e fechar um canal lógico l ógico de mídia; d) controle de conferência: em conferências, o H.245 fornece aos pontos finais anúncios mútuos e estabelece o modelo de fluxo de mídia entre todos os pontos finais. Q.931 – Mensagem trocadas entre terminais para sinalização de chamada (MCU) – o MCU é um ponto final da rede que fornece a Multipoint Control Unit capacidade de três ou mais terminais e gateways de participarem de uma conferência multiponto. O MCU consiste de um Controlador Multiponto (MC) e Processadores Multiponto (MP). O MC determina as capacidades comuns dos terminais usando o H.245, mas ele não executa a multiplexação de áudio, vídeo e dados. A multiplexação dos fluxos de mídia é feita pelo MP sobre o controle do MC. É importante observar ainda que os protocolos RTP, RTCP e RAS utilizam na camada de transporte de protocolo não orientado a conexão User Datagram Protocol (UDP), ao contrário da dupla H.245/Q.931, que utiliza o protocolo orientado a conexão TCP. A recomendação H.323 tem como uma de suas características a flexibilidade, pois pode ser aplicada tanto à voz, quanto a vídeo conferência e multimídia. Aplicações H.323 estão se tornando populares no mercado corporativo por várias razões, dentre elas pode-se citar:
47
a) o H.323 define padrões de Voz para uma infra-estrutura existente, além de ser projetada para compensar o efeito de latência em LANs, permitindo que os clientes possam usar aplicações de voz sem mudar a infra-estrutura de rede; b) as redes baseadas em IP estão ficando mais velozes, além da largura de banda para redes com arquitetura Ethernet estarem migrando de 10 Mbps para 100 Mbps, e a Gigabit Ethernet está fazendo progressos no mercado; c) o H.323 provê padrões de interoperabilidade entre LANs e outra redes; d) o fluxo e dados em redes podem ser administrados. Com o H.323, o gerente de rede pode restringir a quantidade de largura de banda disponível para conferências e voz. O suporte à comunicação Multicast também reduz exigências de largura de banda; e) a especificação H.323 tem o apoio de muitas empresas de comunicação e organizações, incluindo a Intel, Microsoft, Cisco e IBM. Os esforços destas companhias estão gerando um nível mais alto de consciência no mercado. De acordo com [NÓBREGA, 2001], a ITU-T propôs o padrão H.323, sendo mais difundido atualmente, especialmente por ser o precursor da Telefonia IP e ser o primeiro padrão a tratar deste tema. As principais características deste padrão são: a) especifica algoritmos padrões de compressão que devem ser implementados de forma a garantir compatibilidade, conhecidos como áudio codecs ou vocoders ; b) cria protocolos utilizados para o controle da chamada, estabelecimento dos canais de comunicação e negociação de qualidade de serviço; c) permite a interoperabilidade com outros terminais de voz, como telefonia convencional, Rede Integrada de Serviços Digitais (RDSI), voz sobre ATM e outros, permitindo assim a construção de gateways ; d) descreve elementos ativos do sistema e suas funções. Terminal H.323 – Computador onde está implementado o serviço de telefonia IP, atuando como terminal de serviço de telefonia IP, como terminal de voz, vídeo e dados, através de recursos multimídia. Esses são os clientes da Local Area Network – LAN (redes locais) que fornecem comunicação em tempo real e nas duas direções. Todos os terminais H.323 têm que suportar o H.245, Q.931, Registration Admission and Status (RAS) e Real Time Protocol (RTP).
48
Os terminais H.323 podem também incluir o protocolo de conferencia de dados T.120, codificadores de vídeo e suporte para Multipoint Control Unit (MCU). Um terminal H.323 pode comunicar com outro terminal, um gateway ou um MCU; Gateway H.323 – Elemento situado entre uma rede IP e outra de telecomunicações, como o sistema telefônico convencional (RTPC), rede integrada de serviços digitais (RDSI), rede de telefonia celular; de forma a permitir a interoperabilidade entre as duas redes. Um gateway H.323 é um ponto final da rede que fornece comunicação em tempo real nas duas direções entre terminais H.323 em uma rede IP e outros terminais ITU em uma rede comutada ou para outro gateway H.323. Eles executam a função de translação entre diferentes formatos de dados. Os gateways são opcionais em uma rede local (LAN) onde os terminais se comunicam diretamente, mas quando os terminais precisam se comunicar com um ponto final em outra rede, a comunicação se faz via gateway através dos protocolos H.245 e Q.931. – Ele é o componente mais importante de um sistema H.323 e Gatekeeper executa a função de gerente. Ele atua como ponto central para todas as chamadas dentro de sua zona (é a agregação do gatekeeper e dos terminais registrados nela), e fornece serviços aos pontos finais registrados. Algumas das funcionalidades que os gatekeepers fornecem são: a) tradução de endereços: tradução de um endereço alias (o endereço alias fornece um método alternativo de endereçamento de um ponto, ele pode ser um endereço de e-mail, um número telefônico ou algo similar) para um endereço de transporte. Isto é feito usando-se uma tabela de tradução que pode ser atualizada através de mensagens de registro; b) controle de admissão: o gatekeeper pode permitir ou negar acesso baseado em autorização de chamada, endereço de fonte e destino, etc; c) sinalização de chamada: o gatekeeper controla o processo de sinalização entre dois pontos finais que querem se conectar; d) autorização de chamada: o gatekeeper pode rejeitar chamadas de um terminal devido às falhas de autorização através do uso de sinalização H.225. As razões para rejeição poderiam ser acessos restritos durante alguns períodos de tempos ou acesso de certos terminais ou gateways ;
49
e) gerenciamento de largura de faixa: Controle do número de terminais que podem acessar simultaneamente a rede. Através do uso da sinalização H.225, o gatekeeper pode rejeitar chamadas de um terminal devido à limitação de largura de faixa; f) gerenciamento da chamada: O gatekeeper pode manter uma lista de chamadas H.323 em andamento. Essa informação pode ser necessária para indicar que um terminal chamado está ocupado, e fornecer informações para a função de gerenciamento de largura de faixa. 5.3 PROTOCOLOS PARA TEMPO REAL Existem protocolos na camada de aplicação que se propõem a melhorar a entrega de dados que devem ser transmitidos pelos aplicativos em tempo real, como por exemplo: áudio e vídeo interativos. Como uma conversação telefônica também acontece em tempo-real faz-se necessário à utilização de protocolos especiais para tempo-real que auxiliam (de forma a torná-lo mais eficaz) o processo de transmissão da voz. Podemos citar entre outros os protocolos RTP e RTCP. 5.3.1 REAL-TIME TRANSPORT PROTOCOL (RTP) O protocolo RTP provê serviços de entrega fim-a-fim para dados que possuem características de tempo-real. Suporta transferência de dados para múltiplos destinos, usando distribuição multicast e também possui habilidades como: reconstrução de sincronismo, detecção de perda de datagramas, segurança, entre outras. Porém não implementa as funcionalidades de garantia de qualidade de serviço e garantia de entrega. As aplicações geralmente usam o RTP juntamente com o UDP, porém pode ser usado com outros protocolos de transporte. A Figura 11 mostra como fica um pacote IP utilizando os protocolos ideais para a transmissão de voz.
Figura 11 - Dados RTP em um pacote IP
50
O campo payload type inclui o esquema de codificação usado pelo media gateway para digitalizar a voz. Isso auxilia o receptor a reconstruir a voz de acordo com o algoritmo especifico de codificação que foi utilizado pelo transmissor. 5.3.2 REAL-TIME TRANSPORT CONTROL PROTOCOL (RTCP) RTCP é um protocolo que pode ser usado juntamente com o RTP, porém sua utilização não é necessária para que o RTP funcione. Trata-se de um protocolo opcional cuja principal função é transmitir periodicamente pacotes de controle para os participantes de uma conversação com o objetivo de monitorar a qualidade de serviço e transportar informações úteis de tais participantes. Trata-se de um protocolo bastante utilizado em aplicações de vídeo-conferência. Embora as informações retornadas pelo RTCP não informem onde determinado problema está ocorrendo (somente informa que está ocorrendo um problema), elas podem servir como ferramenta para localizar o problema. Pois as informações podem ser geradas por diferentes gateways em uma rede. Isso ajuda a delimitar a área da rede em que o problema pode estar ocorrendo. A quantidade de largura de banda utilizada pelo RTCP deve ser pequena para que não atrapalhe no transporte dos dados (no caso a voz). Algumas especificações do IETF recomendam que a fração de largura de banda que deve ser usada pelo RTCP deve ser 5% da largura utilizada pelo RTP.
51
6. PROTOCOLO SIP E AS TENDÊNCIAS FUTURAS Neste capítulo, faz-se uma comparação entre o protocolo padrão atual o H.323 e um outro que vem ganhando força e confiabilidade o Session Iniciation Protocol mais comumente chamado de SIP. Assim, passam a existir dois padrões principais: H.323 e o SIP. O primeiro oficializado em 1996 pelo ITU-T, enquanto o SIP nasceu três anos depois, das mãos do IETF. Ambos foram criados com o mesmo objetivo: possibilitar o tráfego de voz e multimídia sobre IP. É importante lembrar que ao contrário de outros protocolos que se baseiam no modelo centralizado, o H.323 e o SIP utilizam a inteligência dos equipamentos na ponta. Mas as similaridades entre os dois param por aí. Aliás, há uma competição saudável dos protocolos. Como o H.323 tem mais tempo de estrada, está hoje em vantagem, sendo utilizado por grande parte das operadoras tradicionais do mercado VoIP. No entanto, o SIP vem ganhando cada vez mais espaço no setor, principalmente nos EUA e Europa, por sua facilidade de permitir o desenvolvimento de aplicações. Vale ainda frisar que o pouco tempo de vida do protocolo não significa imaturidade do mesmo. Muito pelo contrário. O fato de o SIP ser três anos mais novo que seu principal concorrente lhe dá vantagens, em termos de flexibilidade e pelo fato de rodar nos padrões da Internet. Na prática, um dos problemas sentidos nos projetos corporativos está exatamente nessa dificuldade de fazer com que equipamentos de marcas diferentes conversem entre si. Nesse sentido, o H.323 tende a perder espaço com o tempo, por ser um protocolo fechado. [TRADESYS, 2005] A tendência é que as empresas partam para o SIP, pois o protocolo é aberto e permite a criação de novas aplicações corporativas. O SIP é uma evolução natural do mundo de VoIP, pois permite uma interoperabilidade entre os dois protocolos. Os fornecedores, por seu lado, não ignoram tal tendência. Para abocanhar um pedaço do crescente mundo de voz sobre IP, os fabricantes vêm lançando produtos compatíveis com o SIP. A principal justificativa desses novos produtos é ter que lidar com um legado de equipamentos antigos, que rodam nativamente H.323, mas que, por outro lado, tendem a adotam ambientes compatíveis com aplicações mais avançadas rodando SIP. Portanto, considera-se que os padrões como complementares. A tendência é que, gradativamente, o H.323 saia de cena e o SIP seja largamente implementado por todas
52
as operadoras como o novo padrão de mercado. Independente do desfecho dessa batalha de protocolos, as empresas já estão sendo beneficiadas pela competição, a qual cria um leque mais extenso de produtos. 6.1 SIP X H.323 Uma das formas de definir o padrão mais adequado para o ambiente de cada empresa é avaliar, do ponto-de-vista técnico, os benefícios e as carências dos dois protocolos. na comparação de escalabilidade, por exemplo, em ambientes com alto tráfego de chamadas, o SIP exige menos ciclos de processamento para gerar a sinalização de mensagens. Com isso, o servidor tem condições de, teoricamente, manusear mais transações do que o H.323, que usa mensagens definidas no H.225 para ajustar o Gatekeeper a executar o balanceamento de carga. Para os que estão interessados em aplicações de videoconferência, por outro lado, o H.323 suporta inteiramente conferência de vídeo e dados. Os procedimentos estão alocados para fornecedor controle para as reuniões virtuais, assim como a sincronização de áudio e vídeo. Uma vantagem em relação ao SIP, que apresenta suporte limitado a imagens e não conta com protocolos de conferência de dados, com o T.120. Em compensação, o SIP sai na frente no quesito de segurança, ao utilizar autenticação por HTTP (Hypertext Transfer Protocol ), SSL (Secure Sockets Layer ) e PGP (Pretty Good Privacy ), sendo bastante escalável, termos esses que não serão explicados nesse trabalho, somente citados para efeito didático. Já o H.323 usa apenas o H.235 (Gateway to Gatekeeper ) como descritos anteriormente. Quadro 9 - Comparativo entre H.323 e SIP H.323
SIP
Arquitetura
O H.323 cobre quase todos os serviços, como capacidade de troca, controle de conferência, sinalização básica, QoS, registro e outros
O SIP é modular e cobre todas as sinalizações de chamada básica, locação de usuários e registro. Outras características estão separadas em um protocolo ortogonal.
Componentes
Terminal/Gateway Gatekeeper
Ua Servers
53
Protocolos
RAS/Q.931 H.245
SIP SDP
Transferência de chamadas
Sim
Sim
Captação de ligação
Sim
Sim
Chamada em espera
Sim
Sim
Indicação de chamada em Sim espera
Não
Finalização de chamada
Sim
Sim
Intrusão de chamada
Sim
Não
Sinalização Multicast
Sim, por meio de location Sim, por meio do group requests (LRQ) e auto invites (GRQ) gatekeeper discovery
Controle de chamadas de terceiros
Sim
Sim
Conferência
Sim
Sim
Grade quantidade de chamadas
O controle de chamadas H.323 pode ser implementado de vários modos. o Gateway tem capacidade para usar mensagens definidas no H.225, ajudando o Gatekeeper a executar o balanceamento de carga nos gateways .
O controle de chamada por ser implementado de vários modos. O SIP suporta N para N entre as UAs e servidores, também exige menos ciclos de CPU para gerar a sinalização de mensagens e com isso pode teoricamente manusear mais transações. O protocolo tem um método específico para balanceamento sob o mecanismo DNS SRV.
Internacionalização
Sim, o H.323 usa Unicode (BMPString com ASN.1) para algumas informações textuais (h323-id), mas geralmente tem poucos parâmetros
Sim, o SIP usa Unicode (ISO 10646-1), codificado como UTF-8 para todos os caracteres.
Segurança
Define mecanismos de segurança e facilidade de negociação com o H.235 e pode ainda usar SSL.
O SIP suporta autenticação de chamadas com mecanismos HTTP. A autenticação segura e encriptação é suportada por SSL/TSL.
54
Tarifação
Mesmo com o modelo de chamada direta do H.323, a capacidade de tarifar não é permitida porque o cliente informa ao Gatekeeper o começo e o fim da chamada via protocolo do RAS.
Se o proxy SIP quiser coletar informações de faturamento, não tem nenhuma escolha a não ser permanecer na chamada sinalizando o caminho para a duração inteira, de modo a captar quando termina.
Codecs
O H.323 suporta qualquer codec , proprietário ou padrão, não apenas os codecs da ITU-T. Os tipos de carga podem estar especificados estaticamente ou dinamicamente.
O SIP suporta qualquer codec IANA ou outro codec cujo nome mutuamente é concordado entre ambos. Os tipos de carga podem estar especificados estaticamente ou dinamicamente.
Divisão de chamada
O H.323 codifica mensagens em um formato binário compacto que combina com conexões banda larga e estreita
As mensagens SIP são codificadas no formato ASCII
Endereçamento
Mecanismo de endereçamento flexível, incluindo URL e E.164
O SIP apenas entende endereços do tipo URL
Conferência de vídeo e dados
O H.323 suporta inteiramente conferência de vídeo e dados. Os procedimentos estão alocados para fornecer controle para a conferência assim como a sincronização de áudio e vídeo.
O SIP tem suporte limitado para vídeo e não tem suporte para protocolos de conferência de dado com o T.120. O SIP não tem protocolos para controlar conferências e muito menos mecanismos de sincronização.
Fonte: O que é o protocolo SIP [TRADESYS, 2005]
55
7. CONCLUSÕES Existem outros mecanismos para controle de tráfego, inibição de congestionamento e técnicas de enfileiramento para qualidade de serviços, mas a maioria é similar ou derivada das tecnologias apresentadas nesse trabalho. Assim, com essas alternativas técnicas e protocolos, possibilitam um melhor gerenciamento do tráfego, integração das formas de comunicação com os serviços de TI, unificação das plataformas de voz e dados. Destaca-se aqui a contribuição dos fabricantes de roteadores e switches , que continuamente lhes agregam características específicas para uso do VoIP, garantindo dessa forma os benefícios diretos do VoIP sobre a telefonia convencional, reduzindo os custos de chamadas interurbanas e praticamente eliminando os de chamadas matriz-filialfilial, graças à inteligência dos switches e centrais telefônicas digitais das redes VoIP, que localizam o acesso mais próximo do destino da ligação e a completa com o custo de ligação local. Os custos com infra-estrutura são apenas uma fração do custo total para uma rede que adota recursos de telefonia. Ao utilizar a rede de dados existente para trafegar voz, as chamadas telefônicas têm custo muito menor, uma vez que não estão utilizando a rede pública de telefonia. Essa economia viabiliza o retorno do investimento em um curto espaço de tempo. O desenvolvimento e a expansão de uma nova tecnologia só acontecem a partir de uma justificativa clara e sustentável. O VoIP tem conseguido demonstrar benefícios para os usuários e deve se firmar seu sucesso a longo prazo. Os benefícios da tecnologia podem ser divididos dentro de quatro categorias: Redução de Custos: Apesar da redução de custos das chamadas de longa distância pelas companhias telefônicas, esse assunto é bastante popular para a introdução do VoIP. Os preços fixos para acesso a Internet podem se configurar numa excelente oportunidade para reduzir os custos de voz e fax. Estima-se que 70% dos custos de transmissão de fax entre os Estados Unidos e Ásia poderiam ser substituídos por FoIP (Fax over IP). Essas reduções de custos estão baseadas em evitar o uso das chamadas internacionais e estatuais usando a infra-estrutura da Internet do que a redução dos custos globais de um melhor compartilhamento dos equipamentos e rede pelos provedores de telecomunicações. Esse melhor compartilhamento levará uma redução de custos em larga escala para a voz.
56
Simplificação: A integração da infra-estrutura que suporta todas as formas de comunicação permitirá uma maior padronização e redução nos investimentos em equipamentos. Esta infra-estrutura compartilhada pode aperfeiçoar o uso da largura de banda e a minimização dos custos de redundância da topologia de rede. As diferenças nos padrões de uso de voz e dados oferecem oportunidades adicionais para melhor a eficiência das redes de comunicações. Consolidação: Uma vez que pessoas estão nas extremidades das redes, qualquer oportunidade para combinar operações, eliminar pontos de falhas e consolidar atividades que gerem custos. Nas empresas, o uso de sistema de gerenciamento de rede centralizado, monitorando voz e dados trazem excelentes benefícios tanto de redução de custos como de agilidade na determinação de problemas. Aplicação Avançada: Embora os serviços básicos de telefonia e fax sejam as aplicações iniciais do VoIP no longo prazo é esperado o uso de aplicações multimídia e aplicações multiserviços. Por exemplo, as soluções de e-commerce combinadas com acessos a Web e sendo atendido pelo call-center. A evolução da tecnologia VoIP, segundo a International Data Corporation – IDC (empresa no ramo da tecnologia da Informação e está presente em mais de 46 países) tomará grande parte do mercado. Ou seja, mesmo com a estabilização ou queda do mercado de telecomunicações, esses serviços crescem por substituir, com muito mais economia, as tradicionais opções de linhas de telefonia convencional. A tecnologia VoIP não causará o fim da utilização da telefonia convencional em ambientes corporativos, mas certamente será responsável por uma fatia considerável em ligações de longa distância. Assim, os investimentos em técnicas de qualidade de serviço como as apresentadas nesse trabalho (controle e inibição de congestionamento, compressão de RTP, fragmentação e policiamento de tráfego, etc.) são fundamentais para o atendimento tanto das grandes quanto das médias empresas. As de maior porte geralmente possuem departamentos de telecomunicações com capacidade de gerenciamento para acompanhar os níveis de serviço. No entanto, a pressão para diminuir custos de ligações tende aos poucos a transferir essa função à operadora. Já as de menor porte não possuem pessoal nem orçamento para essa finalidade e têm de conviver com o mínimo possível de problemas. Também surge nesse contexto o SIP, abordado nesse trabalho de forma superficial, mas que promete ter grande impacto na maneira como nos comunicaremos em tempo-real: com celulares ou telefones comuns, via mensagens instantâneas, ou
57
utilizando qualquer dispositivo baseado em IP. O SIP é um protocolo que pode ser composto e gerenciado em qualquer dessas sessões, independente do tipo de dispositivo utilizado (chamada telefônica, mensagens instantâneas, jogos, ou até em vídeo ao vivo). De fato, o potencial do SIP extrapola a sua simplicidade e flexibilidade e já é bastante utilizado em pesquisas substituindo de forma satisfatória o H.323. Conclui-se neste trabalho que a tecnologia de voz sobre IP, em tempo real pode ocorrer de maneira satisfatória dentro de áreas metropolitanas ou de redes corporativas. Como a estrutura da rede IP é bastante simples e utilizada no mundo todo, isso ajuda muito a perceber as vantagens que voz sobre IP pode proporcionar para as empresas, utilizando-a, por exemplo, para o serviço de voz. Entretanto quando distâncias maiores são consideradas, os problemas de degradação da qualidade de comunicação podem comprometer significativamente ou mesmo inviabilizar a realização da conversão. Nesse sentido, a QoS permitirá a oferta de gerenciamento e banda por demanda, além de outros serviços disponíveis no mercado, que está muito mais avançado nessa área.
58
8. REFERÊNCIAS BIBLIOGRAFIAS BASTOS, Pedro. Voz sobre IP. Wireless Brasil. http://www.wirelessbrasil.org/. Acessado em 18/11/2004. CRAIG, Southeren. Open H.323 project, [S.l.], http://www.openh323.org. Acessado em: 12/04/2005.
1999.
2001.
Disponível
em:
Disponível
em:
DOMINGUES, Miriam Lúcia Campos Serra. Protocolos de Dados para Conferências Multimídia. 2000. Dissertação de Mestrado (Ciências da Computação) – Universidade Federal do Rio Grande do Sul, Porto Alegre. MONTEIRO, Rafael Flister. Implementação de transporte robusto de voz em rede baseadas em protocolos IP. 2000. 85 f. (Dissertação de Mestrado Engenharia Elétrica) Universidade Federal de Minas Gerais, Belo Horizonte. NÓBREGA, Obionor. Um Algoritmo adaptativo de transporte para serviços de Voz sobre IP. Simpósio Brasileiro de Redes de Computadores. 2001 Curitiba Anais. Curitiba UFPR, 2001. REKHTER, Y., B. Moskowitz, D. Karrenberg, G. J. De Groot, E. Lear. Address Allocation for Private Internets . Internet RFC 1918, fevereiro 1996. SALVADOR, J. VoIP (Voice over Internet Protocols ). 2005 - Disponível em: http://www.aboriginesa.com.br/voip/modelo.asp. Acessado em 14/05/2005. SILVA, Adailton. Qualidade de Serviço em VoIP - Rede Nacional de Ensino e Pesquisa. Maio/2000 - Disponível em: http://www.rnp.br/newsgen - Acessado em 18/11/2004. SILVA, Adailton. Qualidade de Serviço em VoIP II - Rede Nacional de Ensino e Pesquisa. Março/2001 – Disponível em http://www.rnp.br/newsgen - Acessado em 19/03/2005. SILVA, Adailton. Tecnologias de Alta Velocidade, VoIP e Internet2 - IComNet Tecnologia da Informação – Disponível em: http://www.icomnetti.com/ – Acessado em 19/03/2005. SILVA, Antônio Eugênio. Avaliação dos Serviços CES e VLL para tráfego com taxa de bits constante em redes multisserviço. 2003. (Dissertação de Mestrado em Engenharia Elétrica) – Universidade de Brasília, Brasília/DF. SILVA, Dinailton José da. Análise de Qualidade de Serviço em Redes . 2004. (Dissertação de Mestrado em Ciência da Computação) – Universidade Estadual de Campinas.
59