1 / 38

Exercícios

Exercícios. Prof. Edgard Jamhour Recursos de QoS no Roteador CBQ – Class Based Queuing Diff-Serv. 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. Identificando as Interfaces.

zan
Download Presentation

Exercícios

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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. • >status • 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-orderint (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-status 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-status 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-addresses 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 DSCP=001 • pacotes fora da classe mas abaixo do limite 0.5 a 1 Mbps • AÇÃO: marcação DSCP=002 • pacotes acima do limite-hard: > 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 rede 2 192.168.2.0/24 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 rede 4 192.168.4.0/24 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-classeq-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-classeredminimum-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-classered • 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-statusenabled • ou • config cbq.2 traffic-class.nome-da-classehistory-statusenabled • 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-class-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 50 Kbps bounded true UDP 2 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-outapplications http • traffic-class.http-returnaplications 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.2 cbq.3 Bancada 2 Bancada 1 requisicao Servidor UDP 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.2 cbq.3 Bancada 2 Bancada 1 requisicao Servidor UDP 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.prioridade0datalink-traffic-class-indices 0datalink-traffic-mask 0xe000parent root-input-tree • Regra para pacotes com prioridade 1 a 3 • config cbq.3 traffic-class.prioridade0datalink-traffic-class-indices 0x2000-0x6000datalink-traffic-mask 0xe000parent root-input-tree • Regra para pacotes com prioridade 4 a 7 • config cbq.3 traffic-class.prioridade0datalink-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.prioridade0datalink-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.<instance> admit-8021q-tagged-frames true • para rotear para dispositivos com VLANs ID que não estão configuradas no AP • config eth.<instance> admit-configured-vlans-only false • para remover tags de VLAN • config eth.<instance> strip-bridged-8021q-tags true • para verificar os parâmetros de VLAN da interface • show eth.<instance> 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 ...

More Related