Exerc - PowerPoint PPT Presentation

1 / 38
About This Presentation
Title:

Exerc

Description:

Exerc cios Prof. Edgard Jamhour Recursos de QoS no Roteador CBQ Class Based Queuing Diff-Serv CBQ: Class-Based Queuing Class-Based Tree Identificando as ... – PowerPoint PPT presentation

Number of Views:63
Avg rating:3.0/5.0
Slides: 39
Provided by: EdgardJ
Category:

less

Transcript and Presenter's Notes

Title: Exerc


1
Exercícios
  • Prof. Edgard Jamhour
  • Recursos de QoS no Roteador
  • CBQ Class Based Queuing
  • Diff-Serv

2
CBQ Class-Based Queuing
  • Class-Based Tree

Root 100 Mbps
TCP 60 Mbps
ICMP 0 Mbps
UDP 40 Mbps
HTTP 30 Mbps
FTP 30 Mbps
3
Identificando as Interfaces
  • A numeração adotada pelo roteador depende dos
    protocolos adicionados a cada interface.
  • gtstatus
  • Slot 1.1 Tcom T1 Driver
  • cbq.1
  • frame-relay.1
  • Slot 2.1 Ethernet Driver
  • cbq.2
  • eth.1
  • ip.1

4
Sentido
  • As regras se aplicam de forma diferente de acordo
    com o sentido do pacote.
  • Existe uma árvore diferente para cada sentido em
    cada porta do roteador.

Outbound root-output-tree
Inbound root-input-tree
ROTEADOR
CBQ.3
CBQ.2
Inbound root-input-tree
Outbound root-output-tree
5
Comandos Sintaxe Básica
  • config cbq.2
  • traffic-class.nome-da-classe-filho (e.g. tcp)
  • parent nome-da-classe-pai (e.g.
    root-input-tree)
  • ... definições da classe ...
  • per-classification-order int (default 100)
  • bandwidth-allocation banda-em-bps (e.g. 500000)
  • bounded true/false (permite ou não ultrapassar o
    limite alocado)
  • maxbandwidth banda-em-Mbps (limite máximo)

6
Criação de uma Classe Filho
classe-pai
100.000.000 (100 Mbps) bounded true
classe-filha pre-order 1
classe-filha pre-order 2
50.000.000 (50 Mbps) bounded false maxbandwidth
80.000.000
50.000.000 (50 Mbps) bounded true
7
Ativação do CBQ
  • Ativação da classificação dos pacotes que entram
    pela interface associada ao cbq.2 do roteador
  • config cbq.2 traffic-class.root-input-treerow-sta
    tus active
  • Ativação da classificação dos pacotes que saem
    pela interface associada ao cbq.2 do roteador
  • config cbq.2 traffic-class.root-output-treerow-st
    atus active

8
Verificação e Alteração
  • Toda a árvore de um cbq
  • show cbq.2 traffic-filters summary
  • Uma árvore (classe) específica
  • show cbq.2 nome-da-classe
  • Apagando um classe específica
  • delete cbq.2 traffic-filter.nome-da-classe

9
Opções de Filtro
  • Endereços IP
  • src-ip-addresses ip1-ip2 dst-ip-addresses ip3-ip4
  • (e.g.) src-ip-addresses 192.168.0.1-192.168.0.100
  • (e.g.) dst-ip-addresses 192.168.0.1,192.168.0.7
  • Portas
  • src-ports p1-p2 dst-port p3-p4
  • (e.g.) src-ports 1024-65535
  • (e.g.) src-ports 110,143
  • Protocols (sigla ou número)
  • protocols sigla-ou-número
  • (e.g.) protocols tcp,udp
  • (e.g.) protocols 6-17

10
Exemplos
  • Regra para subrede
  • config cbq.1 traffic-class.bancada1src-ip-address
    es 192.168.1.0-192.168.1.20 parent
    root-input-tree
  • Regra para protocolo
  • config cbq.2 traffic-class.udp protocols
    udpparent root-input-treebandwidth-allocation 0
    bounded true.

11
Operadores
  • O operador default é and, isto é, apenas os
    pacotes que atendem todos os critérios de filtro
    de uma classe são classificados
  • config cbq.1 traffic-class.httpserver
    src-ip-addresses 192.168.1.2 protocols tcp
    operator and
  • No caso do operador or, basta que um critério
    seja satisfeito
  • config cbq.1 traffic-class.httpserver
    src-ip-addresses 192.168.1.2 protocols tcp
    operator or

12
Operação com Diff-Serv
  • A operação com Diff-Serv implica na criação de
    classes que
  • 1) Efetuam a classificação de pacotes baseado no
    campo TOS (DSCP)
  • 2) Remarcam o campo TOS (DSCP) baseando em dois
    critérios
  • a) Adequação aos critério de classificação de uma
    classe
  • b) Empréstimo ou não de banda da classe pai.

13
Sintaxe para Re-Marcação TOS
  • config cbq.2 nome-da-classe-filho
  • parent nome-da-classe-pai
  • bandwidth-allocation bps
  • bounded true/false maxbandwidth bps
  • tos-value byte tos-mask byte
  • marcação de pacotes dentro da banda estipulada
  • tos-borrow-value byte tos-borrow-mask byte
  • marcação de pacotes fora da banda estipulada

14
Exemplo
  • SLA para o cliente da sub-rede 192.168.1.0/24
  • pacotes dentro da classe 0.5 Mbps
  • AÇÃO marcação DSCP001
  • pacotes fora da classe mas abaixo do limite 0.5 a
    1 Mbps
  • AÇÃO marcação DSCP002
  • pacotes acima do limite-hard gt 1 Mbps
  • AÇÃO descartados

15
Remarcação
capacidade do link
Acima da Banda Máxima
Descarte
maxbandwidth
Zona de Empréstimo
DSCP 002
bandwidth-allocation
Zona Normal
DSCP 001
0 bps
16
Exercício
1
2
192.168.1.1
rede 1
192.168.1.0/24
1
192.168.2.2
192.168.2.1
192.168.2.0/24
2
rede 2
192.168.5.1/30
192.168.3.1
rede 3
192.168.5.2/30
192.168.3.0/24
3
192.168.3.2
192.168.4.1
192.168.4.0/24
rede 4
4
17
Exercício Marcação dos pacotes
  • se a origem for o computador 1
  • banda 500 bps
  • bounded false
  • até 500 bps, marcar DSCP 1
  • acima de 500 DSCP 2
  • se a origem for o computador 2
  • banda 500 bps
  • bounded false
  • até 500 bps, marcar DSCP 1
  • acima de 500 DSCP 2

root-input-tree
18
Exercício Traffic Shaping na Saída
  • se DSCP 1
  • banda 1000 bps
  • bounded true 2000 bps
  • se DSCP 2
  • banda 500 bps
  • bounded true 500 bps

root-output-tree
19
Exercício Traffic Shaping na Entrada
  • se DSCP 1
  • banda 1000 bps
  • bounded true 2000 bps
  • se DSCP 2
  • banda 500 bps
  • bounded true 500 bps

root-input-tree
20
Q-Elasticity Factor
  • Por default, cada classe do CBQ possui um buffer
    para 100 pacotes.
  • Esse valor pode ser alterado através do comando
  • config cbq.2 traffic-class.nome-da-classe
    q-elasticity-factor 1000

21
Configuração do RED
  • Por default, o CBQ não implementa RED.
  • RED é controlado pelo parâmetro
    red-minimum-queue-value (valor default 0
    desativado)
  • O valor pode ser alterado pelo comando
  • config cbq.2 traffic-class.nome-da-classe
    redminimum-queue-value 3
  • esse comando iniciará o processo de descarte
    quando o número médio de pacotes no buffer for
    superior a 3.

22
Monitorando RED
  • show cbq.2 traffic-class.nome-da-classe red
  • Mostra
  • pacotes descartados por RED (não inclui os
    descartados por estouro de buffer)
  • probabilidade do próximo pacote ser descartado da
    classe.

23
Monitorando as Classes
  • Por default, as estatísticas estão desabilitadas
  • config cbq.2 cbq-history-status enabled
  • ou
  • config cbq.2 traffic-class.nome-da-classe
    history-status enabled
  • show cbq.2 traffic-classes history
  • ou
  • show cbq.2 traffic-class.nome-da-classe history

24
Criação Automática de Classes
  • Para gerar classes automáticas por IP de origem
    ou destino.
  • config cbq.2 traffic-class.nome-da-classeauto-cl
    ass-enabled trueauto-class-child-bw-allocation
    1000auto-class-child-max-bw-alloc
    2000auto-class-child-bounded true/false
  • dest-ip-addresses 192.168.1.1-192.168.1.10
  • ou
  • scr-ip-addresses 192.168.1.1-192.168.1.10
  • parent root-output-treebandwidth-allocation
    10000

25
Agrupamento de IPs
  • Para criar classes com IPs agrupados por faixas,
    incluir no final do comando as diretivas
  • Agrupamento pelo IP de origem
  • auto-class-child-src-ip-divisor int (e.g. 4)
  • Agrupamento pelo IP de destino
  • auto-class-child-dest-ip-divisor int (e.g. 4)

26
Exercício
root input tree cbq 2
TCP 1
100 Kbps bounded true
UDP 2
50 Kbps bounded true
outros 100
50 Kbps bounded true
100 Kbps
10 Kbps 50 kbps bounded false
5 Kbps 20 kbps bounded false
...
Ip1
IpN
Ip1
IpN
...
computadores da bancada classificação automática
27
Operação Stateful
  • Configuração stateful cria regras dinâmicas,
    limitando a resposta para a porta da aplicação
    cliente

flow (detectado) - http
servidor
cliente
1010
80
counterflow - httpEstablished (automático)
28
Opções de Filtro Stateful
  • applications sigla
  • http, ftp, allICMP, etc.
  • httpEstablised, ftpEstablished,
    allICMPEstablished, etc
  • traffic-class.http-out applications http
  • traffic-class.http-return aplications
    httpEstablished

29
Applicações Statefull
  • allTcp, allTcpEstablished
  • allUdp, allUdpEstablished
  • allIcmp, allIcmpEstablished
  • ftp, ftpEstablished
  • http, httpEstablished
  • telnet, telnetEstablished
  • dns, dnsEstablished
  • ssh, sshEstablished
  • h323Control, h323ControlEstablished,
  • h323Audio, h323AudioEstablished,
  • etc ..

30
Exemplo
  • config cbq.2 traffic-class.requisicao
  • protocols udp dest-ports 1081 parent
    root-input-tree
  • config cbq.3 traffic-class.resposta
  • protocols allUdp src-ports 1081 parent
    root-input-tree ( ERRADO )
  • config cbq.3 traffic-class.resposta
  • applications allUdpEstablished src-ports 1081
    parent root-input-tree

roteador
cbq.3
cbq.2
Bancada 2
Bancada 1
Servidor UDP
requisicao
1081
cliente
resposta
31
Exercício
  • Construa a arvore CBQ para as seguintes regras
  • Bancada1 pode abrir conexões TCP (porta 80) na
    bancada 2, mas não o contrário.
  • Bancada2 pode abrir conexões UDP na bancada 1
    (porta 53), mas não o contrário.

roteador
cbq.3
cbq.2
Bancada 2
Bancada 1
Servidor UDP
requisicao
cliente
resposta
32
Integração de QoS com VLANs
  • O mapeamento de condições para os campos da VLAN
    é feito através dos parâmetros
  • datalink-traffic-indice e datalink-traffic-mask

máscara 0xe000
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
prioridade
CFI
VLAN ID
máscara 0x0ffff
33
Exemplos de mapeamento de prioridade
  • Regra para pacotes com prioridade 0
  • config cbq.3 traffic-class.prioridade0
    datalink-traffic-class-indices
    0datalink-traffic-mask 0xe000parent
    root-input-tree
  • Regra para pacotes com prioridade 1 a 3
  • config cbq.3 traffic-class.prioridade0
    datalink-traffic-class-indices
    0x2000-0x6000datalink-traffic-mask 0xe000parent
    root-input-tree
  • Regra para pacotes com prioridade 4 a 7
  • config cbq.3 traffic-class.prioridade0
    datalink-traffic-class-indices
    0x8000-0xe000datalink-traffic-mask 0xe000parent
    root-input-tree

34
Exemplos de mapeamento de VLAN
  • Regra para pacotes pertencentes as VLANs de 1 a
    10 e 14.
  • config cbq.3 traffic-class.prioridade0
    datalink-traffic-class-indices
    0x01-0x0a,0x0edatalink-traffic-mask
    0x0ffffparent root-input-tree

35
Preparando o Roteador
  • para aceitar quadros com tags de VLAN
  • config eth.ltinstancegt admit-8021q-tagged-frames
    true
  • para rotear para dispositivos com VLANs ID que
    não estão configuradas no AP
  • config eth.ltinstancegt admit-configured-vlans-only
    false
  • para remover tags de VLAN
  • config eth.ltinstancegt strip-bridged-8021q-tags
    true
  • para verificar os parâmetros de VLAN da interface
  • show eth.ltinstancegt vlan

36
Preparando o Roteador
  • 1) É necessário criar uma sub-interface para cada
    VLAN tratada pelo roteador
  • stack slot.4.1 cbq.3 eth.2 eth.2.new ip.new
  • 2) Use o comando status para verificar o novo id
    da interface. Elas serão criadas na seqüência
  • eth.2.1, eth.2.2, etc.
  • ip.2.1, ip.2.3, etc.
  • 3) Atribua um código de VLAN a nova instância.
    Exemplo
  • config eth.2.1 vlan-id 12
  • 4) Atribua o endereço IP e as rotas.

37
Observação
  • Quadros com VLAN IDs configurados no roteador
    serão enviados para interface correspondente.
  • Quadros sem VLAN IDs ou com VLAN IDs que não
    existam no roteador, serão enviados para
    interface integral e.g. eth.2
  • Use os comandos abaixo para a porta do switch
    onde o roteador está conectado
  • set trunk 1/19 dot1q
  • set port vlan-binding-mode 1/19
    bind-to-configured

38
Comandos Úteis
  • reset defaults
  • add ip.2 address.192.168.2.1
  • show ip. address-table summary
  • add ip static-route.192.168.1.0 ...
Write a Comment
User Comments (0)
About PowerShow.com