Академический Документы
Профессиональный Документы
Культура Документы
Agenda
Cisco Network Foundation Protection (NFP)
Planos de los dispositivos de red
SLOW PATH
ROUTE PROCESSOR
“punt”
FAST PATH
CEF
Planos de Control y Datos
CoPP – Control Plane Policing
MQC
(Cisco IOS Modular QoS CLI)
• Class-map
• Policy-map
• Service-policy
a) ACL
b) Class-map
c) Policy-map
Routing: BGP (TCP/179), OSPF, y EIGRP. LDP (TCP/646) and MSDP (TCP/639) may also be required
(implementation specific). (IS-IS cannot be classified, however, as it is not an IP protocol).
Normal: Todo otro tráfico menos esencial que podría ser conveniente limitar (rate-limit): ICMP (Time-
Exceeded, Echo-Request, Echo-Reply, Packet-too-big, Port-unreachable, etc). Tráfico GRE, IPsec, etc.
No deseado: Tráfico explícitamente pernicioso y/o malicioso: IP fragments (no deben aparecer nunca en
el plano de control), algunos segmentos TCP RESET, y otros ataques reconocidos, como SQL-Slammer.
Catch-All-IP: La clase que recoge todo el trafico remanente, destinado al RP, que no ha tenido match en
las otras clases. Evita que este tráfico termine en la clase class-default (ya veremos la razón)
• No significa inspección
• No utilizar “log” ni “log-input” en las ACLs utilizadas con MQC para CoPP
• Tener presente el uso deny/permit:
deny no match continúa
permit match sale
Política CoPP – 1a: ACL (routing)
En la MQC, class-map define el nombre de la clase. Incluye una o más cláusulas match para indicar los
mecanismos de clasificación utilizados para incluir tráfico dentro de la clase:
• match access-group = ACL (std, ext, numeradas o nombradas). Algunas versiones no admiten nombres.
• match ip dscp / match ip precedence = campo TOS/DSCP
• match protocol arp = tráfico ARP
SINTAXIS
R (config)# class-map [match-any | match-all] class-name
R (config-cmap)# match [access-group | protocol | ip prec | ip dscp]
Política CoPP – 1b: Class-Map (config)
En la MQC, policy-map define el nombre de una política de servicio. Incluye una o más cláusulas class para
especificar el nombre de las clases definidas, y las acciones de tráfico aplicables a cada una:
SINTAXIS
R (config)# policy-map <nombre de la política>
R (config-pmap)# class <nombre de la clase>
R (config-pmap-c)# police [cir | rate ] conform-action [transmit | drop] exceed-action [transmit | drop]
………………………………………………… ……………………………….
…………………………………………..class class-default
Se recorren todas las clases de la política hasta encontrar un match, y sale. Todo tráfico que no satisface
ninguna clase es parte de la class-default.
!
policy-map COPP_PM
class INDESEABLE_CM
police 8000 1500 1500 conform-action drop exceed-action drop
class ROUTING_CM
police 1000000 50000 50000 conform-action transmitexceed-action transmit
class MGMT_CM
police 100000 20000 20000 conform-action transmit exceed-action drop
class NORMAL_CM
police 50000 5000 5000 conform-action transmit exceed-action drop
class CATCHALLIP_CM
police 50000 5000 5000 conform-action transmit exceed-action drop
class class-default
police 8000 1500 1500 conform-action transmit exceed-action transmit
!
Política CoPP – 2: Aplicación Policy-Map
R(config)# control-plane
R(config-control-plane)# service-policy input COPP_PM
Política CoPP – 3: Verificación Policy-Map
R#show running-config
R#show access-list
R#show class-map
R#show policy-map
R#debug control-plane ?
all All events on all control-plane interfaces
host All events on control-plane host interface
log Control-plane packet logging events
management-interface management-interface events
port-filtering TCP/IP Port filtering events
queue-thresholding TCP/IP protocol queue-thresholding events
<cr>
Política CoPP – 3: Verificación Policy-Map
COMANDOS SHOW
R#sho running-config ip access-list extended CATCHALLIP_ACL
class-map match-all ROUTING_CM ip access-list extended INDESEABLE_ACL
match access-group name ROUTING_ACL ip access-list extended MGMT_ACL
class-map match-all MGMT_CM ip access-list extended NORMAL_ACL
match access-group name MGMT_ACL ip access-list extended ROUTING_ACL
class-map match-all NORMAL_CM !
match access-group name NORMAL_ACL control-plane host
class-map match-all INDESEABLE_CM !
match access-group name INDESEABLE_ACL control-plane
class-map match-all CATCHALLIP_CM service-policy input COPP_PM
match access-group name MATCHALLIP_ACL
!
policy-map COPP_PM
class INDESEABLE_CM
police 8000 1000 1000 conform-action drop exceed-action drop violate-action drop
class ROUTING_CM
police 8000 1000 2000 conform-action transmit exceed-action transmit violate action transmit
class MGMT_CM
police 8000 1000 2000 conform-action transmit exceed-action drop violate-action drop
class NORMAL_CM
police 8000 1000 2000 conform-action transmit exceed-action drop violate-action drop
class CATCHALLIP_CM
police 8000 1000 2000 conform-action transmit exceed-action drop violate-action drop
class class-default
police 8000 1000 2000 conform-action transmit exceed-action transmit violate-action transmit
Política CoPP – 4: Tuning Policy-Map
ACLs
Verificar los hits!
CLASS-MAPs
Agrupar el tráfico de manera que pueda visualizarse el impacto de cada uno, si es necesario “abrir” en clases.
# show policy-map control-plane
Class-map: MGMT_CM (match-all)
29 packets, 2610 bytes
5 minute offered rate 0 bps, drop rate 0 bps
Match: access-group name MGMT_ACL
police:
cir 8000 bps, bc 1000 bytes, be 2000 bytes
conformed 29 packets, 2610 bytes; actions:
transmit
exceeded 0 packets, 0 bytes; actions:
drop
violated 0 packets, 0 bytes; actions:
drop
conformed 0 bps, exceed 0 bps, violate 0 bps
POLICY-MAPs
Al prinicipio pueden configurarse todas las acciones como transmit (en lugar de drop) para verificar el impacto de
cada límite.
Funcionamiento del policing
Release Modification
Características de Control Plane Protection
• CCPr requiere CEF. CoPP puede trabajar sin CEF. 12.4(4)T CPPr
• Sólo para trayectos entrantes IPv4
• No soporta co configuración directa de ACLs (sólo a través de CM/PM/SP) Modular QoS CLI (MQC)
• La funciones PORT-FILTER y QUEUE THRESHOLDING sólo soportan protocolos basados en TCP/IP.
• No funciona en plataformas distribuidas ni switching
• Son enviados a la subinterface CEF-EXCEPTION: Paquetes IP con opciones y con TTL<=1.
• Algunos servicios pueden no ser detectados automáticamente por el PORT.FILTER (es decir que no
aparecen listados en la salida del comando: “show control-plane host open ports”. Si es así se deben
agregar manualmente en la class-map port-filter activa para que sean desbloqueados.
• No existen restricciones sobre las políticas de policing del control-plane agregado (CoPP). Sólo que las
nuevas políticas configuradas en la subinterface host no procesan el tráfico ARP, el cual es enviado al Cef-
exception y agreggate.
MQC
(Cisco IOS Modular QoS CLI)
• Class-map
• Policy-map
• Service-policy
CPPr – Control Plane Policing
MQC
(Modular QoS CLI)
• Class-map
• Policy-map
• Service-policy