Lightweight, Payload-Based Traffic Classification: An Experimental Evaluation Leve, Classificação de Tráfego Baseada em Carga: Uma Evolução Exprimental F. Risso, M. Baldi, O. Morandi and A. Baldini, P. Monclus Dipartimento di Automatica e Informatica Politecnico di Torino Torino, Italy ICC 2008 - IEEE International Conference on Communications Apresentado por Joilson Alves Junior Gerência de Redes - Mestrado em Informática - UFPR ROTEIRO Introdução Processos de classificação de tráfego baseado em carga Métodos de verificação baseado em carga Classificação de protocolo X aplicação Processos avaliados Metodologia Resultados Conclusões INTRODUÇÃO Classificação eficiente de tráfego é fundamental para o gerenciamento das redes. Sabendo a natureza do tráfego os administradores de redes podem controlar os fluxos aplicando regras de QoS e Firewall. Com a quantidade crescente de tráfego, a escalabilidade é um problema para as abordagens existentes quanto a classificação. Muitos métodos já foram propostos e aplicados. Como por exemplo: Métodos de analise de carga; Métodos estatísticos. INTRODUÇÃO Métodos de análise de carga são bons, porém exigem muitos recursos de processamento e memória e não analisam tráfegos criptografados. Métodos estatísticos são promissores para superar as limitações anteriores, mas não são adequadas para grande quantidade de protocolos existentes. Geralmente são capazes de distinguir apenas entre tráfego web e peer-to-peer. Não classificam, ou classificam poucas aplicações peer-to-peer. Exemplo: Se aplicação é Kazza; Se aplicação é Skype; Se aplicação é Gnutella. INTRODUÇÃO A precisão da classificação (em termos de falsos positivos e falsos negativos) é muitas vezes abaixo dos limites normalmente aceitáveis. Por estas razões, a maioria dos produtos disponíveis hoje são baseados em métodos baseados em carga. Métodos baseados em carga são capazes de proporcionar resultados mais precisos. Mecanismos de classificação de tráfego futuros, provavelmente utilizarão o que tem de melhor nos dois métodos. O presente artigo tem por objetivo comparar dois métodos de análise baseados em carga. Processos de classificação de trafego baseado em carga. Quanto mais complexo o método, mais memória e processamento são necessários. Processos de classificação de trafego baseado em carga. Payload-based classification methods se diferenciam pelo método de tratamento utilizado para a classificação de tráfego, que podem ser uma ou mais técnicas . PBFS : Possui um mecanismo de verificação com base em dados de camada de aplicação, inspeciona partes do pacote ou apenas fluxos. (Signature-based method, Verification Syntactical) MBPS : Analisa a aplicação e todo o pacote que está sendo transmitido; Interpreta exatamente o que cada aplicativo transmite e recebe. (Signature-based method, Verification Syntactical, Protocol Conformance) Metodos de verificação Baseado em Carga O trafego pode ser classificado de quatro formas diferentes: Signature-based method. Visa a localização de algumas assinaturas no âmbito da carga na camada de aplicação. Ex.: Um pacote HTTP começa com um comando seguido pela URL e a versão do protocolo, enquanto a maioria dos pacotes P2P começam com um campo que contém o tamanho da carga útil. Verification Syntactical. Verifica a exatidão dos dados transmitidos a partir do ponto de vista sintático (por exemplo, uma suposta carga HTTP deve conter cabeçalhos HTTP). Protocol Conformance. Refere-se a conformidade do protocolo, por exemplo: Uma solicitação HTTP GET de um cliente é seguido por uma resposta válida do servidor. Semantic of the Data. Refere-se à semântica dos dados, por exemplo, a possibilidade de verificar se uma imagem do objeto transferido pelo Protocolo HTTP é, de fato, uma imagem, ou alguma outra forma de conteúdo. Classificação de Protocolo X Aplicação. Muitas aplicações definem os seus próprios protocolos e portas, mas às vezes usam outros já existentes para se beneficiarem. Classificação de Protocolo X Aplicação Alguns dos métodos de verificações apresentados são uma solução para a classificação de protocolos. Mas pode não ser adequado para a classificação do aplicativo. Que é o que o usuário espera de um sistema de classificação.(Kazaa,HTTP,Gnutella). Por exemplo: O protocolo de verificação de conformidade (Protocol Conformance) irá falhar no caso de um tráfego P2P trocadas através do protocolo HTTP. Obs. Vai classificar com http mas é p2p. Processos Avaliados Tecnologias mais sofisticadas permitem a obtenção de resultados mais precisos. O custo em termos de memória e poder de processamento é alto. Qual é o custo em termos de precisão ao se deslocar de uma tecnologia mais sofisticada para uma mais simples? A fim de responder esta questão, serão comparadas e avaliadas as tecnologias: PBFS - Packet-Based per Flow State (Leve) MBPS - Message-Based per Flow State (stateful) Tecnologia Avaliadas Os testes visam avaliar os parâmetros mostrados na figura abaixo, principalmente o número de protocolos que são classificados por uma determinada tecnologia, a precisão e a integralidade da classificação. Metodologia Os dados foram capturados no link que conecta a universidade à Internet. Um conjunto de aplicativos foram usados repetindo várias vezes conexões e transferências de dados, mudando "aleatoriamente" endereços IP, portas e algumas peculiaridades da aplicação. Dados capturados foram pré-processados, a fim de descartar pacotes pertencentes a uma sessão que começou antes do início da captura. Além disso, foram descartados todos os pacotes que pertenceram a sessões que estavam inativas por mais de 5 minutos. Resultados Cobertura (Coverage) Tecnologia MBPS , implementada no aplicativo SCE da cisco suporta 600 protocolos em nível de aplicação. Ex: Kazaa,HTTP, FTP,RTP,Gnutella,Edonkey, etc. Tecnologia PBFS, implementada no aplicativo NetPDL suporta 100 protocolos em nível de aplicação. Precisão ( Accuracy) Falsos Positivos : 100% de precisão para o MBPS. Falsos Positivos : Bem próximo de 100% para o PBFS. Falsos negativos : Bem próximo de 100% para MPBS E PBFS. Resultados NetBee é uma tecnologia PBFS Robustez (Robustness) MBPS não é robusto. Não suporta perdas de pacotes. Em simulações com perdas de pacotes o PBFS foi mais preciso. Teve menos problemas com falsos positivos e falsos negativos. Resultados Integridade (Completeness) 97% do tráfego foi classificado. O tráfego não classificado era criptografado. Resultados Escalabilidade (Scalability) PBFS e MBPS apresentaram problemas de classificação em links de alta velocidade/demanda. Conclusões Este trabalho traz duas contribuições: Primeiro, ele apresenta as características dos métodos de classificação de carga. Segundo, ele compara duas tecnologias diferentes levando em consideração os seguintes parâmetros: Cobertura; Robustez; Precisão; Integridade; Escalabilidade. Conclusões Do trabalho podemos concluir que as duas tecnologia são bem parecidas nos parâmetros avaliados, devendo-se levar em consideração o consumo de CPU e memória para escolha. No momento de escolhermos uma aplicação para análise de tráfego, podemos escolher a NetBee. Que é uma tecnologia baseada em PBFS.