Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 81 APLICABILIDADE DE QoS NOS RECURSOS DE TELECOMUNICAÇÕES EM AMBIENTES CORPORATIVOS Luiz Eduardo de Castilho Junior, Helton Molina Sapia Faculdade de Informática de Presidente Prudente (FIPP) da UNOESTE. E‐mail: [email protected] RESUMO O administrador de redes se depara com diversos problemas em um ambiente de redes corporativo, dentre estes, conexão com à Internet lenta ou ineficaz. Este tipo de problema ocorre geralmente devido ao aumento das aplicações que fazem uso da internet sem qualquer tipo de controle. Ao se deparar com tal situação, a solução adotada é aumentar o link de internet, que somente postergará o problema. A presente pesquisa propõe como solução implementar controle de banda por meio de QoS priorizando o tráfego das aplicações essenciais utilizadas em um ambiente corporativo. Para tal é montado um cenário virtual, que por meio do Software, utilizando desktops virtuais com sistemas operacionais devidamente configurados, como estações de trabalho Windows XP e um Firewall com a distribuição Unix OpenBSD 5.0. Assim, esta pesquisa busca apresentar uma solução aos problemas relacionados com o uso descontrolado de banda de comunicação. Palavras‐chave: QoS, Firewall, Priorização, Filas, OpenBSD. INTRODUÇÃO Formulação do Problema Hoje em dia é comum, para não dizer obrigatório, que ao adquirir um computador também é contratado algum plano de acesso à internet. Segundo dados do IBOPE Nielsen Online no segundo trimestre de 2011, 77,8 milhões de pessoas acessaram a Internet em algum ambiente (domicílios, trabalho, escolas, lan houses, entre outros, com um crescimento de 5,5% comparado ao segundo trimestre de 2010 e 20% maior ao segundo trimestre de 2009 (IBOPE, 2012). De acordo com esses dados, o acesso à internet nas Organizações aumentaram. Estes acontecimentos devem‐se pelo fato de muitas aplicações e serviços utilizarem‐se da internet para funcionar, como por exemplo, correio de e‐mail protocolos POP, SMTP, IMAP, HTTP e HTTPS, VOIP e demais aplicações. O controle quanto à utilização destes recursos não é levado em consideração e assim há casos em que a banda de internet disponível é totalmente utilizada. Entretanto, esta utilização nem sempre ocorre em conformidade com as necessidades da empresa e determinados softwares e ou aplicações menos importantes fazem uso da referida banda disponível de tal forma que aplicações essenciais não possam operar com o desempenho satisfatório. Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 82 OBJETIVO DA PESQUISA A pesquisa tem por objetivo realizar um estudo sobre a aplicação de qualidade de serviço (Quality of Service ‐ QoS) em redes de computadores com o intuito de implementar o controle de banda nas aplicações utilizadas em um ambiente corporativo. Garantindo desta forma que aplicações essenciais para o funcionamento da empresa tenham reserva de banda e/ou prioridade de pacotes para alcançar uma melhor utilização dos recursos de comunicação. JUSTIFICATIVA DA PESQUISA O aumento das aplicações que fazem uso da internet sem qualquer controle, gera a situação onde há lentidão nos acessos e no tráfego das informações, para resolver este problema as organizações tendem a contratar links de dados maiores para atender a demanda necessária. Esta é uma solução que resolve o problema em um primeiro momento, mas além de links maiores gerarem custo elevado tornando a contratação fora das possibilidades da empresa, nem sempre é uma solução viável, onde somente postergará o problema. Assim a priorização de pacotes, através da aplicação de QoS, pode ser implantada utilizando o sistema operacional OpenBSD, um sistema licenciado sob forma de software livre. Será testada e analisada uma solução baseada gerenciamento ativo de filas com priorização e reserva de banda. Todo o desenvolvimento da presente pesquisa possibilita o melhor entendimento a respeito dos protocolos, serviços e métodos comuns e essenciais presentes no ambiente de redes corporativo. DESENVOLVIMENTO DO TRABALHO Para demonstrar como as utilização de filas permite implantar QoS nos recursos de telecomunicação foi criado um cenário para a realização de testes de forma controlada. Para tal, foi definido o ambiente operacional onde todo o tráfego gerado é intermediado pelo Servidor Firewall com regras baseadas no ALTQ. Ajustes nos parâmetros de controle permitiram gerar gráficos para posterior análise. O cenário em questão tem como base o mínimo necessário quanto a recursos e serviços essenciais utilizados atualmente em pequenas empresas, SOHO (Small Oficce Home Oficce). O ALTQ Toda aplicação de QoS é feita através do ALTQ implantado ao PF. Partindo da premissa que o Firewall está devidamente configurado, com as interfaces levantadas, com endereços IP’s Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 83 corretos e a comunicação com as estações estão ocorrendo normalmente, é hora de configurar o ALTQ (OPENBSD, 2012a). Nesta pesquisa não será abordado o método de instalação do OpenBSD, para maiores informações, consulte o site oficial (OPENBSD, 2012b). Para habilitar o ALTQ é necessário utilizar as diretivas altq e queue. A diretiva altq habilita enfileiramento a uma interface de rede definindo a disciplina de filas e a quantidade de banda para esta interface. A diretiva queue determina como as filas definidas na diretiva ALTQ devem operar em relação à amplitude, prioridade e sub‐filas. A configuração do ALTQ é definida no arquivo pf.conf, que lança mão do uso de macros para as Interfaces do Firewall, Portas que os Serviços utilizam e Endereços IP’s dos Departamentos. Desta maneira há a possibilidade de adaptação de regras em outro ambiente facilmente, sendo necessário somente mudar os valores. Como dito, também há as macros contendo valores referente ás portas dos serviços VOIP e MSN. Note que há diferença na nomenclatura das filas e uma numeração de porta específica para cada tipo de serviço. Determinando o enfileiramento A construção das regras se faz em duas etapas sendo UPLOAD e DOWNLOAD, sendo que Upload diz respeito à saída dos datagramas provenientes da rede local com destino a internet e Download se refere aos datagramas vindos da Internet de acordo com o ip e porta de origem e destino. O enfileiramento de Upload é aplicado na interface externa ($if_ext) e possui banda de 1Mbps onde, cindo filas compõem o enfileiramento sendo quatro relacionadas à serviços da rede e uma padrão para navegação à internet. Para as filas de Upload está definido o agendador de prioridade (priq), isto se faz necessário, pois o que é levado em consideração é a prioridade da saída dos pacotes e não a banda que cada fila deverá utilizar. A última fila f_up_ack possui maior prioridade sobre as demais, pois esta fila está relacionada a pacotes TCP ACK. No contexto de transmissão de redes, pacotes TCP ACK são enviados pelo destino de forma a garantir que tais pacotes chegaram corretamente ou devem ser retransmitidos. Quando o Uplink (Upload) está saturado devido a outras comunicações enfileiradas, estes pacotes ack se perdem ou demoram muito para serem transmitidos. Portanto, uma vez priorizados tais pacotes, a taxa de transmissão torna‐se muito mais efetiva (BENZEDRINE, 2012). Todos os pacotes oriundos da internet com destino à rede local, de acordo com os Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 84 serviços definidos, sofrem enfileiramento na interface interna ($if_local). Para tal está definido banda total de 2Mbps para download, com agendador cbq que permite compartilhar a banda entre três serviços essenciais e três filas relacionadas à navegação na internet para os três departamentos definidos neste contexto. As filas f_dw_msn, f_dw_dns e f_dw_voip possuem largura de banda reservada, onde mesmo que por algum motivo toda a banda acabe sendo utilizada, a comunicação destes serviços não serão afetados. O cálculo para definir a banda a ser usada para o serviço VOIP leva em consideração o acesso simultâneo de três clientes VOIP usando 20Kbps de banda cada. As filas f_dw_chefe, f_dw_ti e f_dw_prd tem maior largura de banda definidas e de acordo com a opção borrow aplicada a elas, estas permitem emprestar banda da fila pai caso esteja ociosa. Todas as filas possuem prioridades aplicadas seguindo o mesmo conceito das filas de Upload. O enfileiramento é aplicado às regras de filtragem de saída das interfaces do firewall, ou seja, quando os pacotes saem para a internet e quando os mesmos retornam à rede local. Regras de filtragem com QoS aplicado Uma vez definida a política de enfileiramento, é necessário aplicá‐las às regras de filtragem definidas no arquivo principal do firewall. As regras de filtragem devem ser organizadas conforme os serviços disponibilizados. Para navegação na Internet há uma regra padrão de saída e, atribuída a esta, a fila padrão de saída juntamente com a fila relacionada aos pacotes TCP/ACK. É definido um nome de fila com a palavra chave queue, porém quando é especificado um segundo nome ele designará a fila que será usada para pacotes com ToS (Type of Service) de baixo atraso e para pacotes TCP/ACK sem payload, carga útil de dados (OPENBSD, 2012a). Em relação às regras de entrada, cada departamento possui bandas distintas e sendo necessárias regras separadas. Note que há uma regra permitindo entrada de pacotes pela interface externa do firewall, com destino ao ip externo (ip_wan) relacionada a porta específica e este é redirecionado ao ip do setor respectivo, efetuando assim o NAT quando os pacotes retornam ao emissor. Consecutivamente, há uma regra permitindo a entrada dos pacotes destinada ao setor em questão e assim aplicado o enfileiramento respectivo. Essa é uma adaptação que foi definida de forma possibilitar a implantação e testes do QoS na presente pesquisa, pois a ferramenta utilizada para gerar o fluxo tem a característica de enviar a comunicação em um único sentido, onde não se enquadra ao contexto de comunicação de dados em redes. Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 85 Simulando o fluxo de dados O ambiente da presente pesquisa é composto por uma rede local com três estações de trabalho, uma estação simulando a Internet e o servidor firewall entre as duas redes. Os testes de implantação são divididos em duas etapas, Upload e Download. Por se tratar de um ambiente virtualizado, utilizou‐se o software Iperf para simular os fluxos. Iperf e Jperf Iperf é um software de código aberto que permite gerar fluxo de largura pré‐definidas com base nos protocolos TCP e UDP, é possível definir diversos parâmetros como, tamanho dos datagramas IP, tempo de envio, perda de pacotes e Jitter: a variação do tempo de chegada dos pacotes (PETERS, 2008, p.164). É necessário executar uma instância cliente que se conectará ao servidor, por meio do endereço IP, e assim iniciar os fluxos. O Jperf segue o mesmo conceito do Iperf, porém com a única diferença de possuir ambiente gráfico (IPERF, 2012). Para o Upload o módulo servidor é executado de acordo o protocolo e a porta que efetuará a recepção dos dados, feito isso, nas estações é executado o módulo Cliente com os parâmetros de configuração necessários e equivalentes ao do módulo Servidor, parâmetros estes como endereço ip de destino, porta de destino, tempo de transmissão e formato de saída em bits. Já na etapa de download, o módulo servidor é executado em cada estação de trabalho ML1, ML2 e ML3. Na estação MI, é executado então o módulo cliente com as respectivas configurações, similar ao que ocorreu na etapa de upload, porém desta vez é usado o Iperf ao invés do Jperf. RESULTADOS OBTIDOS Análise do fluxo Uma vez montado o cenário, definido e implantado o QoS, é necessário uma forma de analisar se a configuração atingiu o objetivo esperado. Assim, há uma ferramenta disponível para OpenBSD que permite tal análise, o PFstat. Pfstat é uma ferramenta que constrói gráficos a partir dos logs gerados pelo PF, similar a ferramenta RRDtool. Com o PFstat é possível medir o rendimento da interface, a quantidade de pacotes bloqueados , comportamentos estranhos como ataques de DDoS, QoS, estados de conexões, entre outros valores que permitem ao administrador compreender os padrões de tráfego da rede (CALOMEL, 2012). Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 86 Gráficos representativos Para efeito de comparação a fim de expor se a implantação atingiu o objetivo esperado, é necessário simular uma situação em um ambiente de redes sem nenhum tipo de controle de banda. Figura 1. Gráfico de fluxo antes da implantação de QoS A figura apresenta o gráfico contendo o valor que cada fila consumiu de banda (Download) em um intervalo de vinte minutos de conexão. Note que nos primeiros cinco minutos (‐15 a ‐10) as filas começam aos poucos iniciarem comunicação e aproximadamente aos seis minutos em diante, todas as filas estão efetuando comunicação ao mesmo tempo e assim são forçadas a consumir aproximadamente o mesmo valor de banda. Figura 2. Gráfico de fluxo após da implantação de QoS A figura acima mostra a análise das conexões em um intervalo de 30 minutos. Note que os primeiros dezoito minutos (‐28 a ‐10) não há nenhum controle de banda e já aos dez minutos em diante, foi aplicado as regras de QoS estabelecidas. Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 Encontro de Ensino, Pesquisa e Extensão, Presidente Prudente, 22 a 25 de outubro, 2012 87 CONSIDERAÇÕES FINAIS Ao longo deste documento são apresentadas algumas características relativas aos problemas relacionados aos serviços comumente disponibilizados em um ambiente corporativo, onde normalmente utilizam mais banda de internet que o necessário. Com base neste cenário é analisada uma solução de QoS utilizando o Sistema Operacional de código aberto, o OpenBSD. Antes de implementar qualquer configuração, levantou‐se informações a respeito do funcionamento do ALTQ, incorporado ao PF. A utilização de um ambiente virtualizado contribuiu para o sucesso da implantação, uma vez que não são necessários equipamentos físicos, não se perdeu tempo e nem dinâmica na elaboração e implantação da solução apresentada. O OpenBSD por ser um sistema operacional com funcionamento leve porém robusto, possibilitou de forma eficiente aplicar o QoS e também por meio de softwares agregados, extrair resultados gráficos claros e concisos possibilitando ajustes e incorporações afim de garantir melhora continua da solução. Pode‐se concluir que a solução apresentada atende com êxito ao objetivo da presente pesquisa. REFERÊNCIAS BENZEDRINE. Prioritizing empty TCP ACKs with pf and ALTQ. Disponível em: < http://www.benzedrine.cx/ackpri.html>. Acesso em: 18 de maio de 2012 CALOMEL. Pfstat "how to" ( pfstat.conf ).Disponível em: <https://calomel.org/pfstat.html>. Acesso em: 11 de Abril de 2012 IBOPE. Pesquisa – Acesso a no internet Brasil. Disponível em: <http://www.ibope.com.br/calandraWeb/servlet/CalandraRedirect?temp=6&proj=PortaIIBOPE&p ub=T&nome=home_materia&db=caldb&docid=C2A2CAE41B62E75E83257907000EC04F>. Acesso em: 22 de Fevereiro de 2012. IPERF. Iperf Features. Disponível em: <http://iperf.fr/>. Acesso em 11 de Maio de 2012 PETERS, James Jitter. Fundamentos de VoIP. 2º Edição. Porto Alegre – RS/ Bookman, 2008. p. 164. OPENBSD. PF: Enfileiramento de Pacotes e Priorização. Disponível em: <http://openbsd.org/faq/pf/pt/queueing.html> Acesso em 3 de Maio de 2012a. OPENBSD. Guia de Instalação do OpenBSD 4.7. Disponível http://www.openbsd.org/faq/pt/faq4.html> Acesso em 28 de Maio de 2012b. Colloquium Exactarum, vol. 4, n. Especial, jul-dez, 2012 em: <