P2P-Limit: Uma Arquitetura para o Gerenciamento de Tráfego Peer-to-Peer em Backbones de Alta Velocidade



Documentos relacionados
TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

Interconexão de redes locais. Repetidores. Pontes (Bridges) Hubs. Pontes (Bridges) Pontes (Bridges) Existência de diferentes padrões de rede

Protocolo. O que é um protocolo? Humano: que horas são? eu tenho uma pergunta

PROJETO DE REDES

Funcionalidade Escalabilidade Adaptabilidade Gerenciabilidade

Introdução ao Modelos de Duas Camadas Cliente Servidor

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

Roteamento e Comutação

Entendendo como funciona o NAT

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS

Gerenciamento de Redes de Computadores. Resolução de Problemas

Como medir a velocidade da Internet?

Evolução na Comunicação de

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

Um Driver NDIS Para Interceptação de Datagramas IP

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Componentes de um sistema de firewall - I

O modelo ISO/OSI (Tanenbaum,, 1.4.1)

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Arquitetura de Rede de Computadores

Segurança em Sistemas de Informação Tecnologias associadas a Firewall

Comm5 Tecnologia Protocolo MI. Protocolo. Família MI

FIREWALL. Prof. Fabio de Jesus Souza. Professor Fabio Souza

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira

Firewall. Alunos: Hélio Cândido Andersson Sales

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Objetivos: i) Verificar o impacto de loops em redes locais ii) Configurar o protocolo STP para remover loops da rede

CA Nimsoft Monitor Snap

SISTEMAS DISTRIBUÍDOS

Márcio Leandro Moraes Rodrigues. Frame Relay

Capítulo 7 CAMADA DE TRANSPORTE

Roteamento e Comutação

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014.

CAMADA DE REDE. UD 2 Aula 3 Professor João Carneiro Arquitetura de Redes 1º e 2º Semestres UNIPLAN

Universidade de Brasília

DarkStat para BrazilFW

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Nome dos Alunos

REDE DE COMPUTADORES

Manual SAGe Versão 1.2 (a partir da versão )

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa

UFF-Fundamentos de Sistemas Multimídia. Redes de Distribuição de Conteúdo (CDN)


SIMULADOR DE ROTEAMENTO DE PACOTES (V. 3 20/05/2010)

Revisão. Karine Peralta

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de Página

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Auditoria e Segurança da Informação GSI536. Prof. Rodrigo Sanches Miani FACOM/UFU

2 Diagrama de Caso de Uso

Redes de Computadores

Programação para Web Artefato 01. AT5 Conceitos da Internet

Prefixo a ser comparado Interface Senão 3

IW10. Rev.: 02. Especificações Técnicas

Cap 03 - Camada de Aplicação Internet (Kurose)

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

Plano de Gerenciamento do Projeto

Comm5 Tecnologia Manual de utilização da família MI. Manual de Utilização. Família MI

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

Omega Tecnologia Manual Omega Hosting

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

Prof. Samuel Henrique Bucke Brito

3 SCS: Sistema de Componentes de Software

Quadro de consulta (solicitação do mestre)

ISO/IEC 12207: Gerência de Configuração

Prof. Samuel Henrique Bucke Brito

Aula 01 Introdução ao Gerenciamento de Redes

Plataforma Sentinela

Sistemas Distribuídos

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.

PÉGASUS (ETHERNET POCKET) STUDIO V1.00 MANUAL DE INSTALAÇÃO E OPERAÇÃO

Fundamentos de Redes de Computadores. Elementos de Redes Locais

Software de segurança em redes para monitoração de pacotes em uma conexão TCP/IP

FTP Protocolo de Transferência de Arquivos

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Segurança de Rede Prof. João Bosco M. Sobral 1

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

PARANÁ GOVERNO DO ESTADO

Prof. Wilton O. Ferreira Universidade Federal Rural de Pernambuco UFRPE 1º Semestre / 2012

Capítulo 9: Listas de Controle de Acesso

Capítulo 4 - Roteamento e Roteadores

2013 GVDASA Sistemas Cheques 1

3 Qualidade de serviço na Internet

REDE DE COMPUTADORES

Segurança da Informação

Prof. Samuel Henrique Bucke Brito

Faculdade Anhanguera de São Caetano do Sul

Programando em PHP. Conceitos Básicos

Arquitetura dos Sistemas de Informação Distribuídos

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

Prof.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais

Firewalls. Firewalls

Noções de. Microsoft SQL Server. Microsoft SQL Server

Segurança em Sistemas de Informação. Agenda. Conceitos Iniciais

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima

Transcrição:

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência P2P-Limit: Uma Arquitetura para o Gerenciamento de Tráfego Peer-to-Peer em Backbones de Alta Velocidade Rafael da Rosa Righi 1, Guilherme Eliseu Rhoden 1, Augusto Castelan Carlson 1, Edison Tadeu Lopes Melo 1, Guilherme de Melo Baptista Domingues 2 1 Ponto de Presença da RNP em Santa Catarina (PoP-SC) Núcleo de Processamento de Dados Universidade Federal de Santa Catarina Trindade, Florianópolis. Caixa Postal 476, CEP 88010-970 SC Brasil 2 Diretoria de Operações da Rede Nacional de Ensino e Pesquisa (RNP) Estrada Dona Castorina, 110, Rio de Janeiro. CEP 22460-320 RJ Brasil {rafael,rhoden}@pop-sc.rnp.br, {carlson,melo}@npd.ufsc.br, guilherme@rnp.br Abstract. The popularization of Peer-to-Peer applications had brought some consequences for the network infrastructures of organizations. The main consequences are the large use of available bandwidth and the poor network resource distribution among users. Measuring and managing this computing paradigm became essential and also a challenge to network administrators. This paper presents an architecture capable to identify, monitor and control existing Peer-to-Peer traffic in the network edge. The solution developed reduces the amount of P2P communications in the organization and contributes for the existence of more efficient and fair networks. Resumo. A popularização das aplicações Peer-to-Peer trouxe várias conseqüências para as infraestruturas de rede das organizações. Entre as principais está o uso demasiado da largura de banda disponível e a má distribuição dos recursos de rede entre os usuários. Mensurar e gerenciar este paradigma de computação tornou-se essencial e um desafio aos administradores de rede. Este artigo apresenta uma arquitetura capaz de identificar, monitorar e controlar o tráfego Peer-to-Peer existente na topologia. A solução desenvolvida reduz a quantidade de comunicações P2P da organização e contribui para a existência de redes mais justas e eficazes. 1. Introdução As redes Peer-to-Peer (P2P) são sistemas distribuídos sem controle centralizado nos quais a aplicação que é executada em cada elemento é equivalente em funcionalidade. Os participantes da rede P2P podem agir simultaneamente como clientes ou servidores de recursos. Eles constroem uma rede virtual sobre as redes existentes atualmente (por exemplo, a Internet) e colaboram uns com os outros em tarefas específicas, tais como o compartilhamento de arquivos [Loo, 2003]. Este artigo apresenta a arquitetura P2P-Limit que possui como finalidade gerenciar o tráfego P2P presente nas organizações. Seus benefícios principais são a redução das comunicações P2P, a otimização do controle de banda disponível na organização e a contabilização concreta deste paradigma de computação na topologia de 104

Workshop de Gerência e Operação de Redes e Serviços 2005 rede. O controle do tráfego P2P tem sido tema de diversos trabalhos científicos, sendo os principais apresentados na Seção 2. O diferencial deste trabalho é a abordagem dada a identificação e controle do volume P2P. A principal decisão de projeto da arquitetura P2P-Limit é a opção pelo não bloqueio das aplicações P2P. O motivo fundamental para esta escolha baseia-se no fato das aplicações P2P modernas detectarem a topologia de rede onde estão inseridas e, quando observam que suas portas de comunicação padrão estão bloqueadas por firewalls ou outros dispositivos de segurança, passam a utilizar meios alternativos para sobrepor as barreiras e garantir a comunicação P2P (por exemplo, transporte de mensagens sobre HTTP, XML e SOAP). Portanto, o bloqueio das portas conhecidas de tráfego P2P não garante uma exclusão completa deste gênero de aplicações. O P2P-Limit utiliza uma série de componentes para efetivar seus objetivos. Destacam-se nesta arquitetura de monitoração e controle os elementos responsáveis pela contabilização dos pacotes Internet transmitidos na topologia, representado pelo NetFlow, e pela identificação do tráfego P2P em trânsito no perímetro de rede analisado, designado pelo detector de intrusões (IDS) Snort. Este documento está organizado em 6 seções. A Seção 2 exibe os principais trabalhos relacionados à gerência de tráfego P2P e discute suas qualidades e desvantagens. A Seção 3 apresenta a arquitetura P2P-Limit e especifica como seus elementos colaboram entre si para garantir a redução do tráfego P2P e a otimização do uso da largura de banda na organização. A Seção 4 expõe o protótipo desenvolvido e as tecnologias utilizadas neste processo. Os resultados obtidos e as análises realizadas estão representados na Seção 5. O artigo encerra na Seção 6 com a conclusão, a qual concentra as idéias fundamentais alcançadas no decorrer desta pesquisa. 2. Trabalhos Relacionados A utilização de redes Peer-to-Peer, principalmente para o compartilhamento de arquivos, cresceu drasticamente nos últimos anos [Izal et al., 2004]. O uso abusivo destas aplicações acarreta no alto consumo da largura de banda das organizações e congestionamento dos enlaces, ocasionando um impacto negativo na rede. Desta forma, percebeu-se a necessidade de gerenciar o tráfego P2P em trânsito [Sen e Wang, 2004]. Com o intuito de amenizar os problemas surgidos com o compartilhamento de arquivos em redes Peer-to-Peer, diversas metodologias foram propostas na literatura, tanto para identificar o tráfego, como para controlá-lo. O primeiro desafio para se poder aplicar um controle do tráfego Peer-to-Peer efetivo é a sua identificação. O trabalho de [Leibowitz et al., 2004] desenvolve uma arquitetura de cache P2P onde um elemento, de forma transparente, intercepta todas as conexões P2P da organização. Este elemento verifica, antes de abrir uma comunicação externa, se não pode atender as requisições dos clientes P2P com arquivos que estão em cache. Esta abordagem consegue bons resultados, porém possui o seguinte ponto negativo: o componente que realiza o cache identifica as comunicações P2P baseado apenas nos números de porta padrões das aplicações de compartilhamento de arquivos mais comuns. O trabalho de [Karagiannis et al., 2003] afirma que entre 30 e 70 por cento do tráfego P2P não é reconhecido apenas pelo monitoramento das portas padrões das 105

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência aplicações. A pesquisa de [Karagiannis et al., 2003] estudou o comportamento das diversas redes P2P e formulou heurísticas capazes de detectar as comunicações Peer-to- Peer simples e sofisticadas - aquelas que utilizam mecanismos diferenciados como o transporte de dados sobre o protocolo HTTP para sobrepor os limites impostos por firewalls e outros mecanismos de proteção. Este enfoque é eficiente, porém necessita a construção de mais heurísticas sempre que novos sistemas Peer-to-Peer são lançados. O trabalho de [Hamada et al., 2004] concentrou-se em analisar e identificar o tráfego da rede Gnutella. Ele utilizou simuladores de rede para recriar os padrões do tráfego P2P e concluiu que, na maioria das vezes, 40 por cento da largura de banda de um backbone de alta velocidade é despendida com as comunicações Peer-to-Peer. A maior desvantagem do trabalho de [Hamada et al., 2004] é que o estudo se baseou em uma rede P2P que está em desuso, em detrimento de outras como o BitTorrent e Edonkey. [Broido et al., 2004] reafirma a necessidade de utilizar meios mais robustos para identificar o tráfego P2P como a verificação do corpo da mensagem, já que a análise baseada em portas não permite a identificação completa deste tipo de tráfego. A arquitetura P2P-Limit utiliza as experiências dos trabalhos relacionados para gerenciar, monitorar e controlar o tráfego Peer-to-Peer. Nossa abordagem identifica redes P2P simples e sofisticadas, pois independe do número das portas utilizadas pelas aplicações P2P. Na identificação do tráfego P2P optou-se para essa função o servidor Snort, o qual utiliza assinaturas para detectar padrões de comunicação na rede. Este sistema e suas assinaturas são constantemente atualizados, fato que justifica a sua utilização em detrimento de heurísticas na identificação do tráfego P2P. Salienta-se que na arquitetura P2P-Limit apenas são policiados os usuários que consomem altas taxas de largura de banda (1Mbps ou mais) e que também são utilizadores de aplicações P2P do tipo compartilhamento de arquivos. 3. Arquitetura P2P-Limit Esta seção apresenta a solução de gerência de tráfego Peer-to-Peer: P2P-Limit. Ela está divida em três etapas. A primeira preocupa-se em descrever a arquitetura desenvolvida e os principais objetivos almejados. Na Seção 3.2 são especificados os componentes que formam o P2P-Limit e suas particularidades. A última etapa compreende o funcionamento do P2P-Limit, apresentando as interações entre seus elementos. 3.1 Objetivos, Descrição e Características O objetivo do P2P-Limit é identificar, mensurar, monitorar e controlar o tráfego Peerto-Peer presente em uma organização. Pretende-se diminuir o volume do tráfego P2P, de forma que o enlace de comunicação não fique congestionado e os demais usuários não sejam prejudicados em suas conexões habituais, como o acesso a informações hipertexto e os serviços como voz sobre IP e videoconferência. O P2P-Limit utiliza um método dinâmico para identificar os usuários de aplicações P2P, ou seja, ele não detecta as aplicações P2P somente através das portas comuns usadas por elas. Como mencionado na Seção 1, esta decisão de projeto deve-se ao fato de as aplicações P2P possuírem mecanismos para reconhecer e sobrepor ambientes de rede protegidos, como aqueles que adotam firewalls e tradutores de endereços de rede. Portanto, deve existir na arquitetura algum componente capaz de identificar o tráfego P2P sem se apoiar nas portas padrão empregadas pelas aplicações. 106

Workshop de Gerência e Operação de Redes e Serviços 2005 A Figura 1 apresenta a arquitetura principal do P2P-Limit. Observa-se nos dois extremos os elementos Netflow (coletor) e o Snort. No centro estão presentes o GerenteP2P e o Roteador utilizado no processo de controle do tráfego. Os quatro elementos apresentados anteriormente compõem os componentes fundamentais. Além destes, estão incorporados no P2P-Limit os elementos Lista Branca e Histórico das Políticas aplicadas no roteador. Os componentes são especificados na Seção 3.2. Netflow BandaExcesso Usuários P2P Snort Opções de Execução Gerente P2P - Integração - Gerenciamento WEB Iniciar Parar Lista Branca Histórico Ambiente de Controle P2P Roteador Figura 1. Arquitetura para a gerência de tráfego P2P-Limit 3.2 Componentes A seguir, são apresentados os componentes da arquitetura P2P-Limit: 3.2.1 Coletor de Fluxos NetFlow O NetFlow é uma funcionalidade suportada por diferentes fabricantes de roteadores (por exemplo, Cisco). Ele é responsável por exportar dados de cada fluxo IP que passou por uma das interfaces do roteador. Esses dados possuem um formato próprio, entendido por um coletor de fluxos. As informações que compõem um fluxo são os IPs origem e destino, as portas origem e destino, o protocolo IP e a quantidade de bytes do fluxo. A função principal do Netflow no P2P-Limit é identificar os usuários que mais consomem largura de banda, independente de serem usuários de aplicações Peer-to- Peer ou não. 3.2.2 Snort Sistema de Detecção de Intrusão Baseado em Rede O Snort é um sistema de detecção de intrusão utilizado para identificar diversos tipos de ataques à infraestrutura de rede. Sua principal função na arquitetura P2P-Limit é utilizar assinaturas específicas de sistemas Peer-to-Peer de compartilhamento de arquivos para identificar os usuários deste gênero de aplicações na topologia de rede. A Figura 2 exibe um exemplo de assinatura utilizada pelo IDS Snort. Neste caso, observa-se que o objetivo da assinatura é detectar a transferência de dados entre pares da rede BitTorrent. Figura 2. Exemplo de assinatura utilizada pelo Snort 107

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência 3.2.3 Gerente P2P O Gerente P2P é o componente núcleo do P2P-Limit. Suas funções principais são: (i) interagir com os elementos NetFlow e Snort e obter respectivamente a lista dos usuários que mais consomem largura de banda e daqueles identificados como utilizadores de aplicações Peer-to-Peer para o compartilhamento de arquivos; (ii) verificar quais entidades (identificados por endereços de rede IP únicos) são simultaneamente utilizadores de banda em excesso e usuários de aplicações P2P; (iii) pesquisar a Lista Branca a fim de perceber se existe algum endereço de rede que não deve ser controlado, mesmo sendo identificado nas duas listas anteriores; (iv) armazenar em um banco de dados a listagem dos usuários presentes nas listas adquiridas com o NetFlow e Snort e que não façam parte da Lista Branca; (v) elaborar uma lista de controle de acesso compreensível pelo roteador principal da organização e aplicá-la ao mesmo. A finalidade da lista de controle de acesso aplicada ao roteador é incluir os endereços de rede dos usuários policiados em um controlador de taxa de transmissão 1. 3.2.4 Roteador No contexto do P2P-Limit, o roteador é quem recebe os endereços de rede que serão controlados, ou seja, que irão compor a lista de controle de acesso. Esta, por sua vez, está associada ao controlador de taxa de transmissão, que possibilita que todos os clientes policiados sejam inseridos em um canal compartilhado de tamanho especificado pelo administrador da rede. 3.2.5 Componentes Secundários Os componentes secundários são a Lista Branca e o Histórico. O componente Lista Branca determina quais endereços de rede não devem sofrer controle, mesmo quando forem selecionados pelo Gerente P2P como sendo provenientes de utilizadores de aplicações P2P e de grande taxa de largura de banda. O componente Histórico possibilita manter uma relação de quais endereços de rede foram policiados em determinado momento e as aplicações P2P associadas a cada um deles (por exemplo, endereço 150.162.x.x foi selecionado pelo Gerente P2P no dia 01/12/2004 às 14:00 horas). Uma das formas utilizadas para representar este elemento é através de um banco de dados. 3.3 Funcionamento Esta seção apresenta como os elementos do P2P-Limit interagem para garantir os objetivos da arquitetura. A Figura 3 exibe o fluxograma de funcionamento da solução definida para gerenciar o tráfego P2P de uma organização. Os processos 1 e 2 desta figura repassam informações para o processo seguinte, o qual relaciona os endereços de rede que encontram-se em ambas as listas, ou seja, que são caracterizados como usuários de aplicações P2P e, simultaneamente, como utilizadores de banda em excesso. O valor limite para que seja identificado o uso em excesso do canal de comunicação é estipulado pelo administrador da rede no componente que interage com o NetFlow. 1 Em roteadores Cisco esta funcionalidade chama-se CAR Commit Access Rate. Ela permite limitar o tráfego em uma interface baseado em diversos critérios, como as listas de controle de acesso. 108

Workshop de Gerência e Operação de Redes e Serviços 2005 Logo após o P2P-Limit conhecer quais os endereços de rede que se encaixam nas duas listas anteriores ele pesquisa a Lista Branca. Ele verifica se algum endereço selecionado para ser policiado está incluso nesta lista. Caso o endereço esteja na Lista Branca, este será automaticamente excluído do processo de controle. Do contrário, ele necessariamente fará parte do conjunto de endereços de rede controlados. A próxima etapa consiste em registrar as informações dos clientes selecionados na base de dados. Os dados armazenados são: endereço IP, data e hora de inclusão no sistema, aplicações P2P associadas ao cliente. Neste momento, dois últimos processos ainda precisam ser executados: (i) a geração da lista de controle de acesso e; (ii) sua aplicação no dispositivo roteador. Identificar Usuários P2P (1) Identificar Grandes Consumidores de Banda (2) Relacionar listas (1) e (2) Analisar a Lista Branca Registrar Histórico dos endereços controlados Gerar Lista de Controle de Acesso Dinâmica Aplicar Lista de Controle no Roteador Figura 3. Fluxograma do funcionamento do P2P-Limit 4. Protótipo Desenvolvido A solução para a gerência de tráfego Peer-to-Peer foi especificada, desenvolvida e implantada no Ponto de Presença da RNP em Santa Catarina (PoP-SC). O processo de elaboração do P2P-Limit começou em meados de julho de 2004 e atualmente existe um produto em efetiva operação. A Seção 4.1 descreve o ambiente onde a implementação do P2P-Limit está inserida. As Seções 4.2 e 4.3 especificam, respectivamente, a implementação dos componentes do P2P-Limit e as decisões de projeto executadas. 4.1 Ambiente de Implantação A Figura 4 apresenta a topologia de rede utilizada no processo de implementação do P2P-Limit. O ambiente é composto por subredes (clientes), roteadores, comutadores (switches) e servidores. O comutador presente na Figura 4 é um Catalyst 3750 da Cisco com suporte à camada 3 do modelo de referência OSI. Os clientes se conectam ao PoP-SC basicamente de duas formas: através do comutador de distribuição (Catalyst 3750) ou através de circuitos virtuais ATM que chegam até o roteador principal (BB3-SC). A conexão entre o Catalyst 3750 e o BB3- SC é realizada através de duas interfaces FastEthernet que possibilitam, teoricamente, uma comunicação de até 200Mbps em cada sentido com o roteador. No comutador de distribuição é realizada a função espelhamento de portas. O objetivo desse espelhamento é redirecionar todo tráfego das interfaces que ligam o comutador de distribuição com o roteador BB3-SC para uma porta adicional de monitoramento; conectado a esta porta está o servidor Snort. 109

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência Figura 4. Ambiente onde o P2P-Limit foi implantado 4.2 Implementação A implementação da arquitetura P2P-Limit envolveu várias etapas. As principais foram a construção do Gerente P2P e dos módulos auxiliares. No contexto do P2P-Limit, a função dos módulos auxiliares é repassar as informações obtidas com os servidores Snort e Netflow para o Gerente P2P. A seguir são descritos os detalhes de implementação do Gerente P2P e da comunicação entre ele e os demais módulos. 4.2.1 Construção do Módulo BandaExcesso O objetivo principal deste módulo é fornecer ao Gerente P2P uma lista formatada dos endereços de rede que excederam a largura de banda estipulada pelo administrador do sistema. Ele lê o arquivo de extensão HTML gerado pelo Netflow, o qual classifica os endereços IP que mais transferem pacotes e dados na topologia de rede. Na implementação do P2P-Limit somente são filtrados os computadores que estão enviando 1Mbps ou mais para fora do PoP-SC. As ferramentas utilizadas na elaboração deste componente foram: html2text, grep, awk e sort. Ele foi desenvolvido através de roteiros do interpretador de comandos (shell script). O BandaExcesso está agendado no sistema operacional para executar periodicamente a cada 5 minutos. A Figura 5 expõe o resultado da execução deste módulo. Estas informações serão relevantes para o Gerente P2P nas etapas futuras. Figura 5. Exemplo de resultado fornecido pelo BandaExcesso 110

Workshop de Gerência e Operação de Redes e Serviços 2005 4.2.2 Construção do Módulo UsuariosP2P O objetivo deste módulo é interagir com o servidor Snort, adquirir a lista de todos os endereços de rede identificados como usuários de aplicações Peer-to-Peer e entregá-la ao Gerente P2P. No servidor Snort existe um elemento que percorre os registros armazenados (oriundos das assinaturas detectadas no canal de comunicação) e gera a listagem de todos os endereços IP envolvidos com o tráfego P2P. A detecção de tráfego Peer-to-Peer na rede está relacionada à qualidade e à quantidade de assinaturas que detectam esse tipo de comunicação. Atualmente as assinaturas utilizadas no PoP-SC para caracterizar este tipo de tráfego são em número de 18 regras. A Tabela 1 mostra as redes P2P detectadas e a distribuição das regras entre elas. Tabela 1. Relação entre as redes P2P detectadas e números de regras no Snort Redes P2P Número de Regras BitTorrent 2 Edonkey 2 FastTrack (kazaa/morpheus) 2 Gnutella 3 Napster 9 Total de redes: 6 Total de regras: 18 4.2.3 Construção do Gerente P2P Contribuição Principal A parte funcional do ambiente é controlada pelo Gerente P2P, que faz a integração entre os dados fornecidos pelo Netflow e pelo Snort para realizar o policiamento dos usuários P2P que estão consumindo elevadas taxas de largura banda. Além disso, ele é responsável por pesquisar a base chamada Lista Branca a fim de encontrar os endereços de rede que não devem sofrer policiamento no roteador e por armazenar um histórico das modificações de configuração realizadas. O Gerente P2P em funcionamento no PoP-SC está estável, foi escrito utilizandose a linguagem Perl GerenteP2P.pl, pode acessar o banco de dados MySQL diretamente e aplica (atualiza) as políticas de controle de tráfego Peer-to-Peer no roteador. O PoP-SC emprega dois tipos de policiamento P2P: o dinâmico e o estático. O policiamento dinâmico é aquele executado pela arquitetura P2P-Limit. Ele é chamado de dinâmico, pois a arquitetura identifica, mensura e controla as comunicações Peer-to-Peer por si só, sem a intervenção de administradores ou configurações escritas diretamente no roteador. Por sua vez, o policiamento estático também utiliza o conceito de listas de controle de acesso e controlador de taxa de transmissão; porém em sua lista de controle de acesso não estão presentes endereços de rede a serem policiados, mas sim números de porta padrões utilizados pelas aplicações Peer-to-Peer. Os dois modos de policiamento complementam-se. O programa GerenteP2P.pl pode receber dois diferentes argumentos. Seus nomes são: iniciar controle e parar controle. O GerenteP2P.pl é chamado com o parâmetro iniciar a cada cinco minutos no intervalo das 7:00 as 22:59 horas. Este 111

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência procedimento é relacionado ao policiamento dinâmico, ou seja, ele ativa o programa GerenteP2P.pl e atualiza de forma dinâmica os endereços policiados. O GerenteP2P.pl é executado com o argumento parar às 23:05 horas. O objetivo desta operação é desabilitar os policiamentos Peer-to-Peer estático e dinâmico. O ambiente está configurado para não realizar policiamento Peer-to-Peer das 23:00 até as 6:58 horas do próximo dia. O policiamento dinâmico executado pelo GerenteP2P.pl, logo após conhecer quais endereços de rede devem ser efetivamente policiados no roteador, constrói uma lista de controle de acesso no mesmo formato utilizado pelo sistema operacional do roteador e a aplica através de um comando telnet. A Figura 6 apresenta um exemplo de lista de controle de acesso gerada pelo P2P-Limit, a qual será utilizada pelo controlador de taxa de transmissão. O objetivo deste último elemento é, no caso do PoP-SC, criar um canal compartilhado de 2Mbps para todos os usuários de aplicações P2P. Access-list 199 remark Banda OUT 3.6M access-list 199 permit ip host 150.162.X.69 any access-list 199 remark Banda OUT 2.3M access-list 199 permit ip host 150.162.X.80 any access-list 199 remark Banda OUT 1.9M access-list 199 permit ip host 200.18.X.1 any... Figura 6. Exemplo de lista de controle de acesso aplicada ao roteador A aplicação das listas de controle de acesso exige a configuração prévia do controlador de taxa de transmissão (Rate-Limit) no roteador. A Figura 7 exibe como este elemento foi configurado no contexto do PoP-SC. Observa-se que existe uma associação entre o elemento controlador de taxa de transmissão e as listas de controle de acesso. Rate-limit input access-group 199 2000000 3000 6000 conform-action transmit exceed-action drop Figura 7. Configuração do controlador de taxa no roteador Para melhorar o ambiente existem atualmente mais dois controladores de taxa ativos com a função de limitar tráfego da rede P2P Edonkey (ACL 198) [Tutschku, 2004] e BitTorrent [Qiu e Srikant, 2004] (ACL 197). Essas políticas estão aplicadas no sentido de tráfego dos clientes para redes externas. Assim, todo o cliente que tenha alguma aplicação P2P sofre de forma transparente a ação desses dois controladores. Em nossa arquitetura dá-se o nome de policiamento estático a esta ação. Percebe-se, que os dois controladores de taxas estáticos unidos ao dinâmico são responsáveis por uma solução prática para minimizar o problema do tráfego P2P. 4.3 Decisões de Projeto A principal decisão do projeto é não bloquear o tráfego Peer-to-Peer, mas sim filtrá-lo de modo a não exceder o limite estabelecido como máximo para esse tipo de aplicação. Em nosso caso, foi determinado que os usuários de aplicações P2P entrariam em um canal compartilhado de 2Mbps. Outra decisão importante foi estabelecer os períodos que o P2P-Limit estará ativo na topologia de rede do PoP-SC. No período entre as 7:00 e às 22:59 horas o 112

Workshop de Gerência e Operação de Redes e Serviços 2005 controle permanece ativado. O controle fica desativado (sem intervir no tráfego P2P) entre as 23:00 horas do dia atual e às 6:59 horas do próximo. 5. Resultados O P2P-Limit entrou em operação no PoP-SC no segundo semestre de 2004. Desde então, ele tem colaborado para minimizar o tráfego P2P transmitido dos clientes do PoP-SC em direção ao backbone principal da RNP. Como mencionado, a função do P2P-Limit em nosso ambiente de alta velocidade é controlar apenas o tráfego P2P em excesso que sai do PoP-SC. A aplicação do P2P-Limit no PoP-SC trouxe vários resultados positivos. A Figura 8 exibe o comportamento do tráfego Peer-to-Peer sem a aplicação do P2P-Limit. Observa-se nesta figura que o tráfego P2P enviado (sentido positivo do gráfico) pelos clientes do PoP-SC - instituições de ensino e pesquisa - atingiu o máximo de 72Mbps. A Figura 9 apresenta a utilização da largura de banda P2P com o controle de tráfego P2P ativo. Verifica-se nesta figura as seguintes características: (i) ela exibe um período onde está acionado controle e outro onde não existe intervenção neste tipo de tráfego; (ii) o tráfego P2P transmitido (enviado) pelo PoP-SC foi reduzido para cerca de 6Mbps; (iii) comparando-se com a Figura 8, pode-se afirmar que houve uma redução de aproximadamente 75% no consumo de banda no horário em que o policiamento está ativo. Figura 8. Uso da largura de banda P2P sem controle Como mencionado na Seção 4.2, foram definidos no desenvolvimento do P2P- Limit dois tipos de monitoramento: o estático e o dinâmico. Reforçando, o controle dinâmico é o aplicado pelo P2P-Limit e nele os endereços de rede identificados como utilizadores banda em excesso (acima de 2Mbps) e também de aplicações P2P do tipo compartilhamento de arquivos são inseridos em uma lista de controle de acesso (nº 199), que por sua vez, está associada a um controlador de taxa de transmissão específico. Para o monitoramento estático foram construídas duas listas de controle de acesso (n os 197 e 198) que especificam as portas padrões utilizadas pelas redes BitTorrent e Edonkey. A Figura 10 relaciona o comportamento dos três controladores de taxa de transmissão. O eixo positivo do gráfico mostra os três canais de 2Mbps alocados para o tráfego Peer-to-Peer no PoP-SC. Os canais estão na maioria do tempo totalmente 113

X WGRS - Novas Redes, Novos Serviços, Novos Desafios, Novas Soluções de Gerência preenchidos, o que indica que os 2Mbps alocados para cada classe são utilizados e há um excedente que é descartado. Figura 9. Uso da largura de banda P2P com o P2P-Limit ativado Figura 10. Monitoramento pelo AMIQ dos canais compartilhados A taxa descartada representada no eixo negativo da Figura 10 não é grande (ela deveria ser dez vezes maior do que esta mostrado). Isso se deve principalmente às características de transmissão do protocolo TCP, que se adapta ao tamanho do canal disponibilizado para as aplicações P2P, diminuindo gradativamente a vazão dos fluxos. Para o gerenciamento da arquitetura P2P-Limit foi desenvolvida uma interface Web (http://www.pop-sc.rnp.br/site/p2p/) que reproduz continuamente, na forma de gráficos e estatísticas, o comportamento e as taxas de transmissão de tráfego P2P. 6. Conclusão O crescimento e o amadurecimento das aplicações Peer-to-Peer trouxeram consigo uma maior utilização da largura de banda das organizações. A partir deste cenário, tornou-se necessária a criação de técnicas que minimizem a utilização do tráfego Peer-to-Peer, possibilitando uma melhor distribuição do canal de comunicação entre os usuários da rede. Esse trabalho apresentou a arquitetura P2P-Limit, a qual contribui para reduzir o tráfego P2P existente em organizações. Ele exibe também uma abordagem prática que pode ser reutilizada em outras topologias e estruturas de comunicação. 114

Workshop de Gerência e Operação de Redes e Serviços 2005 Na engenharia de tráfego conduzida pelo P2P-Limit vários componentes executam em paralelo, o que auxilia para a boa adaptação do P2P-Limit em redes de alta velocidade. Entre os principais componentes da arquitetura estão o IDS Snort, responsável por detectar quais computadores estão utilizando aplicações P2P e o Netflow, o qual contabiliza os fluxos que passam pelo roteador. Os resultados obtidos com a implantação da arquitetura P2P-Limit no PoP-SC são satisfatórios. Houve uma redução da largura de banda enviada pelos clientes do PoP-SC de 75%, o que corresponde a grandeza de 35Mbps. Comparando os resultados apresentados na seção 5 com o trabalho de [Karagiannis et al., 2003], observa-se uma taxa de redução de tráfego P2P superior, já que este diminuiu as conexões P2P em cerca de 60%. O sistema de monitoramento do P2P-Limit possibilita aos administradores visualizar o volume de tráfego P2P presente no segmento de rede e o conteúdo das listas de controle de acesso aplicadas ao roteador. Referências Broido, A., Karagiannis, T., Faloutsos, M. e Claffy K. (2004) Transport Layer Identification of P2P Traffic, In Proceedings of the 4 th ACM SIGCOMM Conference on Internet Measurement, pages 121-134. Taormina, Sicily, Italy. Hamada, T., Chujo, K. e Yang X. (2004) Peer-to-Peer Traffic in Metro Networks: Analysis, Modeling and Policies, In: IEEE/IFIP Network Operations and Management Symposium, 2004 (NOMS), pages 425 438. Seul, Korea. Izal, M., Urvoy-Keller, J., Biersack, E., Felber, P., Hamra, A. e Gracé-Erice, L. (2004) Dissecting BitTorrent: Five Months in a Torrent s LifeTime, Lecture Notes in Computer Science - 5th International Workshop Passive and Active Network Measurement. Vol. 3015, pp. 1-11. Karagiannis, T., Broido, A., Brownlee, N. e Faloutsos M. (2003) File-sharing in the Internet: A characterization of P2P traffic in the backbone, Technical Report, November, 2003. Available at http://www.cs.ucr.edu/~tkarag. Leibowitz, N., Bergman, A., Bem-Shaul, R. e Shavit, A. (2002) Are File Swapping Networks Cacheable? Characterizing P2P Traffic, In Proceedings of the 7 th International Workshop on Web Content Caching and Distribution (WCW 02). Boulder, Colorado, USA. Loo, A. (2003) The Future of Peer-to-Peer Computing, Communications of ACM, 46(9):57-61. Qiu, D., Srikant R. (2004) Modeling and Performance Analysis of BitTorrent-Like Peer-to-Peer Networks, Proceedings of the 2004 conference on Applications, technologies, architectures, and protocols for computer communications, pages 367 378. Portland, Oregon, USA. Sen, S. e Wang, J. (2004) Analyzing Peer-to-Peer Traffic Across Large Networks, IEEE/ACM Transactions on Networking, 12(2):219-232. Tutschku, K. (2004) A Measurement-based Traffic Profile of the Edonkey Filesharing Service, Lecture Notes in Computer Science - 5th International Workshop Passive and Active Network Measurement. Vol. 3015, pp. 12 21. 115