Você está na página 1de 4

TRAFFICANALYSER: UMA FERRAMENTA DE ANÁLISE

DE TRÁFEGO PARA REDES IP

Hugo Machado Falcão


Universidade Federal de Ouro Preto
Departamento de Computação
Campus Morro do Cruzeiro s/n – Ouro Preto – Minas Gerais – Brasil

Osvaldo Ferreira Alves


Universidade Federal de Ouro Preto
Departamento de Computação
Campus Morro do Cruzeiro s/n – Ouro Preto – Minas Gerais – Brasil

Carlos Frederico Marcelo da Cunha Cavalcanti


Universidade Federal de Ouro Preto
Departamento de Computação
Campus Morro do Cruzeiro s/n – Ouro Preto – Minas Gerais – Brasil

RESUMO
A Internet passou a ser uma realidade na vida de uma grande quantidade de pessoas ao redor do mundo. Pode-se
verificar, no entanto, que o serviço proporcionado hoje em dia pela Internet não é adequado para atender à demanda de
aplicações avançadas tais como as baseadas em multimídia interativa. Aplicações avançadas somente poderão ser
oferecidas com a utilização de Qualidade de Serviço (QoS). O trabalho aqui apresentado tem por objetivo apresentar uma
nova ferramenta tanto para administradores de rede quanto para pesquisadores, voltada a análises sobre as taxas de vazão
na rede, atraso, jitter e perdas de pacotes e, principalmente, quanto à aplicação dos serviços de QoS em redes IP.

PALAVRAS-CHAVE
Internet, Qualidade de Serviço, Serviços Integrados, Serviços Diferenciados, Análise de Tráfego.

1. INTRODUÇÃO
Quando a atual arquitetura de rede da Internet foi idealizada, todos os pacotes possuíam a mesma prioridade
na rede e o serviço provido foi denominado posteriormente de Melhor-Esforço (BE-Best Effort) [Kilkki, K.,
1999]. Neste tipo de serviço, a largura de banda é compartilhada com todos os fluxos de dados provenientes
das aplicações dos usuários, não havendo assim qualquer garantia sobre as taxas de vazão de cada fluxo,
atraso ou do atendimento de outros requisitos referentes à Qualidade de Serviço (QoS). Desta forma, quando
as taxas de utilização da rede são elevadas, pacotes são descartados sem que haja nenhuma distinção entre
eles. Entretanto, muitas aplicações necessitam que sejam garantidos certos níveis de qualidade de serviço
para funcionarem adequadamente.
Observando tal contexto e associando-o com o crescimento da utilização dos sistemas computacionais em
todo o mundo, pode-se perceber a necessidade de garantir qualidades de serviços distintas de acordo com a
natureza da aplicação. Aplicações colaborativas e de grupo, aplicações multimídia, aplicações de tempo real,
entre outras, requisitam níveis de serviço que o serviço de Melhor-Esforço não pode garantir. A maioria das
aplicações citadas envolve a transferência de múltiplos tipos de mídia (dados, voz, vídeo, gráficos, etc.) que

465
Conferência IADIS Ibero-Americana WWW/Internet 2004

exigem níveis de QoS diferentes de uma aplicação com correio eletrônico. Quatro parâmetros são de
relevância para definir a QoS em uma rede: o atraso (delay), a variação do atraso (jitter), a vazão e a perda .
Mas como garantir que está havendo realmente uma diferenciação entre os fluxos provenientes das muitas
classes de aplicações em caso de congestionamento na rede? Como avaliar se a rede está realmente
garantindo níveis de atraso, jitter, vazão e perda baseada no serviço estabelecido? É com esta indagação e
motivados pelo fato de existirem poucas ferramentas desenvolvidas pela comunidade cientifica na plataforma
Microsoft Windows que avalie qualidade de serviço da Internet, é que o presente trabalho está sendo
desenvolvido. A maioria das ferramentas similares disponibilizadas pela comunidade cientifica está na
plataforma UNIX. Além desse diferencial, a ferramenta proposta, denominada Trafficanalyzer, difere das
demais por ser orientada, desde a sua concepção, a análise do tráfego da rede baseada nos parâmetros de
qualidade de serviço, inclusive reconhecendo agregados de dados marcados pelo campo DSCP.

2. QUALIDADE DE SERVIÇO
Em resposta ao crescimento de demanda por qualidade de serviço na Internet, a Internet Engineering Task
Force (IETF) estabeleceu dois grupos de trabalhos com o objetivo de estender a arquitetura dos protocolos da
Internet para prover qualidade de serviço: Serviços Diferenciados (DiffServ) [Blake et al., 1998] e Serviços
Integrados (IntServ) [Braden et al., 1994].

2.1 Serviços Integrados


O Serviço Integrado (IntServ) estende a arquitetura da Internet partindo do princípio de que os recursos, para
garantir uma determinada Qualidade de Serviço, deverão ser alocados (reservados) para cada fluxo de dados.
Desta forma, todos os pacotes pertencentes a um determinado fluxo usarão os recursos previamente alocados.
Os recursos são reservados em todos os roteadores intermediários e no nó destino, usando protocolos de
sinalização (controle). A alocação de recursos implica, por exemplo, em reserva de tempo de CPU, memória
e banda na rede, para prover o serviço solicitado. Recursos que foram reservados devem ser atribuídos aos
pacotes do seu respectivo fluxo. Finalmente, as características de tráfego negociadas no momento em que os
recursos foram alocados devem ser monitoradas. Assim, existirá uma constante verificação de que as
premissas assumidas quanto às características do tráfego estarão sendo respeitadas durante o período de
conexão.
O protocolo RSVP (Resource Reservation Setup Protocol) [Zhang, L. et al, 1997] é uma implementação
baseada na arquitetura IntServ e foi desenvolvido como um protocolo de sinalização para reserva de banda.
Em RSVP, os recursos que um roteador necessita para processar e armazenar aumentam proporcionalmente
com o número de fluxos manipulados pelo roteador. A implementação de IntServ em redes com uma grande
quantidade de nós se mostra inviável, pelo fato de que os protocolos, na arquitetura IntServ, estarem
baseados em reserva de recursos por fluxo. Podemos citar, como exemplo, a implementação de IntServ em
uma rede grande em larga escala, como a Internet, com milhões de usuários e com vários fluxos por usuário.
Como cada nó possui um estado para cada fluxo, isto implica no uso de complexos roteadores com
considerável poder de processamento e memória, aumentando a complexidade do sistema. O poder de
processamento se faz necessário pois a tarefa de escalonamento dos pacotes para cada fluxo é complexa e
fundamental para a garantia da qualidade de serviço acordada.
Pela limitação da arquitetura IntServ para aplicações em redes com poucos nós, dizemos que ela não é
escalável e não possui a escalabilidade necessária para ser usada em uma rede como a Internet.

2.2 Serviços Diferenciados


A proposta de implementar QoS em redes IP usando Serviço Diferenciado (DiffServ) tenta evitar os
problemas encontrados na proposta da arquitetura de Serviço Integrado. A idéia do DiffServ [Blake et al.,
1998] [Kilkki, K., 1999] se baseia em reservar recursos para um conjunto de fluxos (denominado agregado
de fluxos) e não para um fluxo. Considerando os protocolos TCP/IP, um fluxo de dados é caracterizado pela
quíntupla (endereço fonte, endereço destino, protocolo, porta de origem, porta de destino). Um agregado é

466
TRAFFICANALYSER: UMA FERRAMENTA DE ANÁLISE DE TRÁFEGO PARA REDES IP

um conjunto de fluxos que são tratados pela rede de uma forma única, isto é, como uma agregação de fluxos
que são processados da mesma maneira pela rede.
DiffServ baseia-se na definição de classes de qualidade de serviço. Fluxos com requisitos de QoS
similares são agregados em uma mesma classe e, portanto, recebem o mesmo tratamento. Em DiffServ, cada
pacote é diferenciado alterando-se o estado dos bits do campo denominado DS byte do cabeçalho de IP. O DS
byte nada mais é do que a redefinição do octeto TOS (Type Of Service) na versão 4 de IP e do octeto Traffic
Class da versão 6. Dos oito bits do campo DS byte, seis são denominados DSCP (Differentiated Services
CodePoint) e são usados para definir o tratamento que será dado em cada pacote por cada roteador.
Em Serviços Diferenciados, todos os pacotes dos usuários de uma mesma classe usam os recursos
alocados para aquela classe de qualidade de serviço. Assim, os recursos que possibilitam o envio de pacotes
com um determinado nível de qualidade de serviço são compartilhados por todos os pacotes que estão
marcados como sendo da mesma classe. Esse conceito não assegura que as restrições de qualidade de serviço
dos fluxos sejam absolutamente garantidas, como feito nos protocolos de reserva fim-a-fim propostos na
arquitetura de Serviços Integrados, porém, permite que garantias de qualidade de serviço sejam
implementadas em redes com grande quantidade de nós.

3. A FERRAMENTA
A ferramenta aqui proposta, denominada Trafficanalyzer consta de dois módulos: o módulo TrafficGen e
TrafficCheck. O módulo TrafficGen gera pacotes IP de acordo com o padrão estabelecido e o TrafficCheck
verifica quanto do tráfego gerado chegou ao destinatário. A ferramenta considera, tanto na geração quanto na
análise, o campo DSCP (Differentiated Services CodePoint). Assim, é possível verificar se as garantias de
qualidade de serviço estão corretamente implementadas, mensurando-se o atraso, jitter, vazão e perda de
pacotes de uma forma dinâmica. Esta ferramenta é adequada para fazer a conferência de resultados
encontradas em simulações, visto que o tráfego gerado por TrafficGen é inserido na rede real e coletado e
analisado por TrafficCheck. O módulo TrafficGen é baseado na biblioteca Libnet [Libnet Project] e o módulo
TrafficCheck é baseado na biblioteca Libpcap [Tcpdump Project]. Pelo fato dos autores constatarem a
necessidade deste tipo de ferramenta no ambiente MS-Windows, Trafficanalyzer está sendo desenvolvido
nativamente neste ambiente.
A tabela 1 mostra a comparação das funcionalidades da ferramenta batizada de Trafficanalyzer com
algumas ferramentas disponíveis para a comunidade acadêmica. Mgen e NetPerf são programas que
permitem a análise do desempenho da rede que podem ser encontrados em [Mgen Project] e [NetPerf
Project].
Tabela 1. Comparação entre ferramentas.
Funcionalidades Mgen NetPerf TrafficAnalyser
Especificação do campo TOS Não Sim Sim
Especificação do endereço de destino Sim Sim Sim
Especificação da taxa de transferência Sim Sim Sim
Identificação do fluxo Não Sim Sim
Variação do atraso (jitter) Não Sim Sim
Cálculo da vazão Sim Não Sim
Número de pacotes a serem gerados Não Sim Sim
Cálculo da média de atraso Não Sim Não
Geração de tráfego em rajadas Sim Sim Não
Geração de tráfego de fundo Não Não Sim

Outra versatilidade proposta na ferramenta aqui descrita é o suporte de pacotes baseado em rótulos do
protocolo MPLS (Multi-Protocol Label Switching) [Rosen et al, 2001] [Davie, B et al, 2002]. Isto dará, ao
administrador de rede, a quantidade de fluxo encaminhado através do protocolo MPLS em determinado
ponto da rede.

467
Conferência IADIS Ibero-Americana WWW/Internet 2004

4. CONCLUSÃO
A Internet é uma rede em constante evolução. Novas aplicações, como as colaborativas e de grupo,
aplicações multimídia, aplicações de tempo real, exigem níveis de qualidade da rede bem superiores aos
providos pelo serviço de Melhor-Esforço. O conceito de Qualidade de Serviço (QoS - Quality of Service) está
diretamente ligado à identificação e quantificação destes níveis. Verifica-se que existe uma necessidade de
diferenciar o tratamento do fluxo de dados de aplicações “exigentes”, das demais aplicações com o objetivo
de atender as restrições impostas e otimizar os recursos existentes em uma rede. Foram propostas duas
extensões à arquitetura da Internet: Serviços Integrados e Serviços Diferenciados.
Foi apresentada a concepção da ferramenta Trafficanalyzer que consta de dois módulos: o módulo
TrafficGen e TrafficCheck. O primeiro é baseado na biblioteca Libnet e o segundo é baseado na biblioteca
Libpcap. Trafficanalyzer está sendo desenvolvido nativamente no ambiente MS-Windows. A ferramenta
considera, tanto na geração quanto na análise, o campo DSCP (Differentiated Services CodePoint).
Espera-se que esta ferramenta contribua para o amadurecimento da concepção e desenvolvimento de
ferramentas geradoras e analisadoras de tráfego de redes com garantias de qualidade de serviço para o
ambiente MS-Windows. Com a utilização desta ferramenta, administradores de redes e pesquisadores da área
terão uma ferramenta capaz de avaliar com clareza o comportamento e configuração de uma rede, podendo
inferir com maior segurança sobre aspectos de relevância, como vazão, taxa de perdas, gargalos e políticas de
QoS aplicadas. Espera-se, que ao finalizar a implementação de todas as funcionalidades propostas,
Trafficanalyzer seja uma ferramenta robusta para a geração de tráfego para redes IP com suporte a QoS.

AGRADECIMENTO
A Deus, sem o qual nada disso seria possível e ao Laboratório de Redes de Computadores do Departamento
de Computação da Universidade Federal de Ouro Preto.

REFERÊNCIAS
Blake, S. et al, 1998, RFC2475: An Architecture for Differentiated Services. [Internet] Avaliable from:
http://www.apps.ietf.org/rfc/rfc2475.txt [Accessed June 1st, 2004]
Braden, R.; Clark, D. and Shenker, S., 1994, RFC1633: Integrated Services in the Internet Architecture: an Overview.
Avaliable from: http://www.apps.ietf.org/rfc/rfc1633.txt [Accessed June 1st, 2004]
Comer, D. E., 2000. Internetworking with TCP/IP Vol. 1, Principles, Protocols, and Architecture – 4th edition, Prentice
Hall, New Jersey, USA.
Davie, B. et al, 2002, RFC3270: MPLS Support of Differentiated Services. [Internet] Avaliable from:
http://www.apps.ietf.org/rfc/rfc3270.txt [Accessed June 1st, 2004]
Kilkki, K., 1999. Differentiated Services for the Internet, Macmillian Technology Series, Indianapolis, USA.
Libnet Project. [Internet] Avaliable from: http://www.packetfactory.net/projects/libnet [Accessed June 1st, 2004]
Mgen Project. [Internet] Avaliable from: http://mgen.pf.itd.nrl.navy.mil/mgen.html [Accessed June 1st, 2004]
Netperf Project. [Internet] Avaliable from: http://www.netperf.org/ [Accessed June 1st, 2004]
Nichols, K. et al, 1998, RFC2474: Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6
Headers. [Internet] Avaliable from: http://www.apps.ietf.org/rfc/rfc2474.txt [Accessed June 1st, 2004]
Rosen, E, Viswanathan , A, Callon, R.Viswa, 2001, RFC3031: Multiprotocol Label Switching Architecture [Internet]
Avaliable from: http://www.apps.ietf.org/rfc/rfc3031.txt [Accessed June 1st, 2004]
Tcpdump Project. [Internet] Avaliable from: http://www.tcpdump.org [Accessed June 1st, 2004]
Zhang, L. et al, 1997, RFC2205: Resource ReSerVation Protocol (RSVP) - Version 1 Functional Specification [Internet]
Avaliable from: http://www.apps.ietf.org/rfc/rfc2205.txt [Accessed June 1st, 2004]

468

Você também pode gostar