Uma das etapas do meu trabalho de conclusão de curso é simular um link de internet em um pc-gateway entre dois hosts, como na ilustração mais abaixo.
Neste ambiente serão executados simulações de tráfego VoIP e colhidas informações estatísticas para análise de desempenho das configurações de QoS em rede do PABX. Para isto irá-se utilizar um
Linux configurado como roteador e nele simular um link de internet, adicionando latência, delay, jitter e traffic shapping ao tráfego roteado por ele.
O pc-gateway possui duas interfaces, eth0 e eth1, onde a interface eth0 está diretamente ligada a um desktop Linux, que irá executar o cliente da ferramenta de benchmark, e a interface eth1 está diretamente ligada ao PABX que irá executar o servidor da ferramenta de benchmark. Ambos, desktop e PABX, estão em sub-redes diferentes e possuem como roteador padrão o pc-gateway.
Para simular o link de internet irá-se configurar o
netem, que é uma disciplina de escalonamento de pacotes no kernel do Linux que possibilita simular:
- delay;
- perda;
- jitter;
- corrupção de pacote;
- duplicação de pacotes; e
- reordenação de pacotes.
Antes de usar o netem
O netem provê a funcionalidade de emulação de tráfego de rede para testes de protocolos, com ele é possível simular delay, perda, duplicação de pacotes e reordenação de pacotes etc.
Para utilizar o netem é preciso habilitar o suporte no
kernel do Linux e instalar utilitário tc do pacote
iproute2.
Para adicionar suporte no kernel ao netem habilite as opções:
- CONFIG_NET
- CONFIG_NET_SCHED
- CONFIG_NET_SCH_NETEM
Para habilitar no menuconfig:
Networking support --->
Networking options --->
[*] QoS and/or fair queueing --->
<*> Network emulator (NETEM)
O iproute2 faz parte da maioria das distribuições Linux, para instalá-lo no Fedora
GNU/Linux execute o seguinte comando:
# yum -y install iproute2