A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Controle de Tráfego no Linux por Felipe Massia Pereira Carlos Augusto Froldi out/2005 Instituto de Computação – UNICAMP.

Apresentações semelhantes


Apresentação em tema: "Controle de Tráfego no Linux por Felipe Massia Pereira Carlos Augusto Froldi out/2005 Instituto de Computação – UNICAMP."— Transcrição da apresentação:

1 Controle de Tráfego no Linux por Felipe Massia Pereira Carlos Augusto Froldi {massia,carlos}@las.ic.unicamp.br out/2005 Instituto de Computação – UNICAMP

2 Controle de tráfego Controle de tráfego (TC) é o nome dado ao conjunto de sistemas de enfileiramento (queueing) e mecanismos pelos quais os pacotes são recebidos e transmitidos em um roteador.

3 Controle de tráfego – Conceitos  Fila (queue) – é um buffer finito onde ítens ficam aguardando por uma ação ou serviço.  Shaping – é o ato de “atrasar” o envio de pacotes de forma que o tráfego fique limitado a uma taxa pré- definida.  Scheduling – é o ato de escalonar ou re-ordenar os pacotes a serem enviados.  Classifying – é o mecanismo pelo qual pacotes são separados de forma a terem tratamentos diferentes.  Policing – é o mecanismo pelo qual o tráfego pode ser limitado.

4 Controle de tráfego no Linux  Filas (queues) – são as “qdiscs” do linux  Shaping – são as “classes” que oferecem a capacidade de “shaping”  Scheduling – um qdisc oferece funcionalidades de um escalonador  Classifying – a classificação é feita dentro de um “filter” através de um “classificador”  Policing – implementado como parte de um filter

5 Controle de tráfego no Linux - Qdisc  São filas de saída dos pacotes  Também exerce a função de escalonador de pacotes  Existem dois tipos no Linux: - classless: não podem conter classes definidas pelo usuário - classfull: podem possuir subclasses definidas pelo usuário, permitem a separação e atribuição de taxas para diferentes fluxos de dados

6 Controle de tráfego no Linux - Qdisc  Exemplo de qdisc classless: Pfifo_Fast: qdisc padrão do linux, baseado no FIFO, porém com três filas internas onde o tráfego pode ser priorizado a partir do TOS contido nos pacotes.  Exemplo de qdisc classfull: HTB (hierachical token bucket): utiliza o conceito de “balde de fichas” combinado com um sistema de classes e filtros, possibilitando a utilização de um controle de tráfego (será utilizado em nosso experimento).

7 HTB – Conceitos importantes  Class: as classes só existem dentro de um qdisc e são uma forma de se dividir o tráfego.  Filter: utilizados para separar o tráfego em classes dentro de uma qdisc (pode também exercer a função de “policer” de acordo com as configurações do fluxo classificado).  Classificadores: dentro de um filtro, um classificador é utilizado para identificar características dos pacotes (o U32 é um dos principais classificadores do linux e será utilizado no experimento, com ele pode-se identificar campos do cabeçalho de um datagrama IP, portas de origem/destino e até mesmo protocolos como TCP, UDP ou ICMP, etc)

8 Utilizando o tc para controlar tráfego  O comando “tc”, que faz parte do pacote iproute2, é utilizado no linux para configurar o controle de tráfego  Forma geral do comando é: #tc opções OBJETO parâmetros  Os objetos do comando são: qdiscs, class e filter

9 Utilizando o tc para controlar tráfego Adicionando um qdisc root e classes com o tc: # tc qdisc add dev eth0 root handle 1: htb default 30 # tc class add dev eth0 root classid 1:0 htb rate 6mbit # tc class add dev eth0 parent 1:0 classid 1:10 htb rate 2mbit # tc class add dev eth0 parent 1:0 classid 1:20 htb rate 1mbit # tc class add dev eth0 parent 1:0 classid 1:30 htb rate 512kbit

10 Utilizando o tc para controlar tráfego Adicionando filtros com o tc: # tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 10.1.1.0/24 flowid 1:10 # tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 10.1.2.0/24 flowid 1:20 # tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32 match ip src 10.1.3.0/24 flowid 1:30

11 Referência bibliográfica Linux advanced Routing & Traffic Control HOWTOLinux advanced Routing & Traffic Control HOWTO - ht tp://www.lartc.org/


Carregar ppt "Controle de Tráfego no Linux por Felipe Massia Pereira Carlos Augusto Froldi out/2005 Instituto de Computação – UNICAMP."

Apresentações semelhantes


Anúncios Google