Calidad de Servicio

Anuncio
Curso Selectivo Perfil Seguridad
Calidad de Servicio
TEMA 6
Calidad de Servicio en Redes VPN
♦
Introducción
♦
Conceptos previos
♦
Mecanismos específicas
♦
La compresión de datos
♦
Herramientas
♦
Flujos concurrentes DMVPN
♦
El Modular QoS CLI de Cisco
♦
Creación de políticas QoS con CLI
♦
Creación de políticas anidadas
♦
Criterios de clasificación
♦
Ejemplos de diseño
Introducción
♦ Control de ancho de banda
– ‘Policers’
•
•
•
•
Bajo consumo de memoria
Modelado de tráfico en diente de sierra
Permite medir velocidad y marcar tráfico
Cuando se usa como modelador de
tráfico, produce pérdida de paquetes
– Token-Bucket
• Medición de velocidad
• Eliminación de paquetes
– ‘Shapers’
• Mayor consumo de recursos
• Modelado de tráfico lineal
• No elimina paquetes
Mecanismos específicos
♦
♦
Cuando las necesidades de calidad de servicio son muy críticas, especialmente
para tráfico isócrono, es necesario recurrir a mecanismos de reserva estricta.
RSVP
–
Resource Reservation Protocol
•
♦
Reserva recursos en la red para flujos de datos unidireccionales
LFI
–
–
Fragmentación a nivel de enlace.
Diseñado especialmente para enlaces serie con mPPP
Compresión de datos
♦
Definición:
–
♦
Características:
–
–
–
♦
La compresión de datos reduce el tamaño de las tramas sobre un enlace. De este
modo se reduce el tiempo necesario para transmitir dicha trama. Utiliza un
esquema de compresión a ambos lados del enlace, que permite eliminar
caracteres de datos en la parte del emisor y reponerlos en el receptor
Produce enlaces de velocidad variable
Consumo de recursos
Las técnicas utilizadas estarán basadas en el uso de diccionarios
Tipos:
–
De cabeceras
–
Stacker
–
Predictor
–
•
•
IP/UDP cRTP 40:4
TCP Van Jacobson 40:3
•
Basado en el algoritmo Lempel-Ziv. Utiliza un diccionario codificado que sustituye
secuencias repetidas de caracteres
•
•
•
Intenta predecir la próxima secuencia de caracteres en la corriente de datos utilizando un
índice para localizar la secuencia en el diccionario de compresión.
Mayor consumo de memoria y menor consumo de CPU.
El más rápido.
MPPC
•
•
•
Funciona solo sobre PPP
Basado en el algoritmo Lempel-Ziv
La longitud máxima de un datagrama MPPC es similar al MTU de la interfaz PPP, con la
condición de no superar los 8192 bytes, puesto que ese es el tamañoi del buffer histórico
Compresión de datos
♦ Interfaces soportados
– FRF.9, para Frame Relay
– LAPB (Link Access Procedure Balanced)
– HDLC (High-Level Data Link Control)
– X.25
– PPP (Point-to-Point Protocol) con LZS, Predictor, y MPPC (Microsoft
Point-to-Point Compression)
– ISAKMP
♦ La compresión no siempre puede ser idónea, pudiendo verse
afectada por:
– La falta de estándares. Ambos extremos deben operar con el mismo
algoritmo
– Tipos de datos
• Algoritmos similares puede producir ratios de compresión diferentes. Ciertos
tipos de datos pueden ser menos comprimibles que otros, pudiéndose
alcanzar ratios de 6:1, aunque los promedios por regla general suelen estar
en 2-3:1
– Datos ya comprimidos
– Capacidad del procesador
Compresión de datos
♦ Compresión de datos encriptados
– Tradicionalmente, la compresión de datos siempre ocurre a nivel
2 y la encriptación a nivel3
– Los datos encriptados no pueden ser comprimidos, debido a que
por definición no producen patrones repetitivos
– LZS enviará los datos encriptados sin comprimir, ya que el
algoritmo aumentaría el volumen de los datos
– La solución a este problema es comprimir a nivel 3 mediante un
protocolo conocido com IPComp, antes del proceso de cifrado.
– IPComp se encuentra definido en la RFC 2393, y se negocia en la
fase ISAKMP de IPsec. Aunque puede ser negociado, se utiliza
normalmente el algoritmo de compresión LZS
Herramientas
♦
Nistnet
–
–
Es un software de emulación de red, que funciona sobre plataforma Linux.
Permite reproducir de forma controlada situaciones reales de comportamientos de red con el
objetivo de poder evaluar aplicaciones IP sensibles a determinados parámetros, como:
Retardos o latencias
Ancho de banda
Pérdidas de paquetes
Herramientas
NistNet
Software de libre distribución:
http://snad.ncsl.nist.gov/itg/nistnet/
Utilizado para la elaboración del modelo QoS QUASIMODO (1999)
Linux + NistNet
WAN
Servidor (iperf,ttcp)
LAN 1
–
–
–
LAN 2
♦
Servidor (iperf,ttcp)
Flujos Concurrentes en DMVPN
♦ Dos tipos de tráfico:
– IPSEC
• GRE
• Aplicaciones corporativas
• Correo corporativo
10.1.0.0/16
Ethernet0/1
R1
– NO IPSEC
ADSL
• Navegación
• Servicios Internet
Internet
ADSL
ADSL
R3
R5
10.2.0.0/16
10.3.0.0/16
ADSL
Serv. Correo Local
R4
10.3.0.0/16
Mecanismos de clasificación en VPN
♦
Por campo de precedencia
Campo Tos
P2
♦
P1
P0
T2
T1
T0
CU1
CU0
Por campo DSCP
Campo DSCP o DiffServ
DS5
Vers. IHL
TOS
Protocolo
Dirección Origen
DS2
DS1
DS0
CU1
CU0
Herencia de los bits QoS en las cabeceras de túnel GRE e IPSEC
Identificación
TOS
DS3
Longitud Total
‘Flag’
‘Offset’
Suma de control
Dirección Destino
Vers. IHL
GRE/IPSEC
TOS
Identificación
TOS
Protocolo
Dirección Origen
Longitud Total
‘Flag’
‘Offset’
Suma de control
Dirección Destino
Datos
♦
DS4
Mecanismos de clasificación en VPN
♦ Qos pre-classify
El encaminador crea una copia de la cabecera interior, y ejecuta su política
QoS basada en los campos de dicha cabecera.
Sin esta caracterísitica, el dispositivo de clasificación de paquetes solo puede
ver un único flujo encriptado, puesto que los paquetes que atraviesan el
mismo túnel tienen las mismas cabeceras y reciben el mismo tratamiento
en el evento de congestión
– Si se desea clasificar paquetes conforme a la cabecera interior, se debe
aplicar la política sobre la interfaz Tunel, sin el comando qos pre-classify
– Si se desea clasificar paquetes conforme a la cabecera externa, se debe
aplicar la política sobre la interfaz física sin el comando qos pre-classify
– Si se desea una clasificación basada en la cabecera interna, y luego
aplicarla sobre la interfaz física dado que puede ser un punto de
congestión, es necesario habilitar el comando qos pre-classify
El ‘Modular Qos CLI de Cisco’
♦
El ‘Modular QoS CLI’ permite al usuario la especificación de clases de tráfico
independientemente de las políticas QoS utilizadas
♦
Para su configuración se utiliza una interfaz en modo comando (CLI y
command line interface)
♦
Para su implementación es necesario realizar tres pasos:
–
Definir una clase de tráfico, mediante el comando class-map
–
Crear una política de servicio asociando la clase definida, a una o varias políticas
QoS, mediante el comando policy-map.
–
Enlazar la política de servicio a la interfaz correspondiente mediante el comando
service-policy
Modular Qos CLI, class-map
♦ class-map
– El comando class-map, se utiliza para definir una clase de tráfico.
Dicha clase debe contener tres elementos:
• Un nombre
• Una serie de comandos match
• Una instrucción que indique cómo evaluar dichos comandos
– Ejemplos:
class-map match-any hack
match protocol http url "*/cmd.exe*"
match protocol http url "*winnt/system*"
match protocol http url "*WINNT/*“
class-map match-all Masivo
match access-group 119
class-map match-all Congestion
match precedence 5
Modular Qos CLI, policy-map
♦
♦
♦
♦
policy-map
El comando policy-map se utiliza para asociar una clase de tráfico, definida
mediante el comando class-map, con una o más políticas QoS.
El resultado de esta asociación se denomina ‘política de servicio’.
Una política de servicio debe contener tres elementos:
–
–
–
Un nombre
Una o varias clases de servicio
Políticas QoS
Ejemplos:
policy-map CONGESTION
class class-default
police cir 1750000
conform-action transmit
exceed-action set-prec-transmit 5
violate-action set-prec-transmit 5
policy-map nivel
class AppGtt
priority percent 50 22000
class Interactivo
bandwidth percent 17
class Masivo
bandwidth percent 7
class class-default
bandwidth percent 1
–
–
El comando priority permite establecer una reserva estricta de caudal (tráfico isócrono)
El comando bandwith establece reservas no estrictas, permitiendo un mejor uso del
canal para tráfico de datos no isócrono
Modular Qos CLI, service-policy
♦
♦
♦
♦
♦
service-policy
El comando service-policy se utiliza para aplicar la política de servicio a la
interfaz.
Los cálculos de ratios y anchos de banda se realizan conforme a la capacidad de
la interfaz.
La suma de reservas de caudal mediante los camandos priority y bandwith no
pueden superar el 75% de la capacidad de la interfaz.
Ejemplos:
interface Ethernet0/0
…
service-policy input CONGESTION
service-policy output GLOBAL0
…
interface e1/1
…
service-policy output poliUA1
…
interface FastEthernet0
...
service-policy input MARK
service-policy output GLOBAL1
...
!
Modular QoS CLI, políticas anidadas
♦ Políticas anidadas
– Uso del comando service-police
Router(config)# policy-map child
Router(config-pmap)# class voice
Router(config-pmap-c)# priority 50
Router(config)# policy-map parent
Router(config-pmap)# class class-default
Router(config-pmap-c)# shape average 10000000
Router(config-pmap-c)# service-policy child
– Ejemplo con ‘policer’:
Modular Qos CLI, ejemplos
Control de congestión remota para tráfico
ascendente:
policy-map nivel
class AppUA
priority percent 50 22000
class Interactivo
bandwidth percent 17
class Masivo
bandwidth percent 7
class class-default
bandwidth percent 1
Ethernet0/1
Service-policy output GLOBAL1
re
m
ot
a
R1
sti
co
ng
e
mo
ta
Co
nt
ro
ld
e
re
es
tió
n
e
on
g
ol d
nt r
ld
ec
Co
ota
rem
tión
s
ge
con
ón
Frame-Relay 8Mbps
tro
policy-map GLOBAL1
class Avila
shape average 128000
service-policy nivel
class Ferrol
10.2.0.0/16
shape average 128000
service-policy nivel
class Pobla
shape average 128000
service-policy nivel
class slowboy
police cir 48000 bc 5250 be 10500
conform-action transmit
exceed-action drop
10.1.0.0/16
Co
n
♦
Avila
R3
Pobla
R5
10.3.0.0/16
Ferrol
Serv. Correo Local
R4
10.3.0.0/16
Rate-Limit
♦
♦
♦
Los ‘rate-limit’ de Cisco permiten implementar políticas basadas en ‘policers’.
Su aparición en IOS es anterior a MQC y se utilizan en aquellos interfaces que aún no
soportan MQC, o en enrutadores con recursos muy limitados.
Ejemplo:
interface Tunnel0
...
rate-limit output 64000 1875 3750 conform-action transmit exceed-action continue
rate-limit output access-group 115 8000 1875 3750 conform-action transmit exceed-action transmit
rate-limit output access-group 109 8000 1875 3750 conform-action transmit exceed-action transmit
rate-limit output 24000 1875 3750 conform-action transmit exceed-action drop
...
tunnel source ATM0.1
tunnel mode gre multipoint
tunnel key 12213
tunnel tos 2
tunnel protection ipsec profile VpnUA
!
interface ATM0.1 point-to-point
ip nat outside
...
rate-limit output 64000 1875 3750 conform-action transmit exceed-action continue
rate-limit output access-group 114 8000 1875 3750 conform-action transmit exceed-action transmit
rate-limit output 48000 1875 3750 conform-action transmit exceed-action drop
!
access-list 109 remark Control Remoto QoS
access-list 109 dynamic QoSUpOff permit ip any any
access-list 114 remark para distinguir el trafico que proviene del tunel (tunnel tos 2)
access-list 114 permit ip any any tos min-monetary-cost
access-list
access-list
access-list
access-list
access-list
115
115
115
115
115
dynamic Up3 permit ip any any
permit tcp 10.0.0.0 0.255.255.255 10.1.1.0 0.0.0.255 range 7020 7030
permit tcp 10.1.1.0 0.0.0.255 range 7020 7030 10.0.0.0 0.255.255.255
permit tcp host 10.1.1.14 10.0.0.56 0.255.255.7 eq cmd
permit tcp 10.0.0.56 0.255.255.7 eq cmd host 10.1.1.14
W0
100 Mbps LINK
FDX 100 Mbps
LINK
FDX
W1
W0
100 Mbps LINK
FDX 100 Mbps LINK
W0
100 Mbps
LINK
FDX
10/100 ETHERNET 0/0
CONSOLE
AUX
nivel
class AppUA priority 50% 22000
class Interactivo bandw 17%
class Masivo bandw 7%
class default bandw 1%
Cisco 2620
2000 Kbps
W1
CONGESTION
class default policer 1500000 set prec 5
2052 class Avila shape 128000 sp nivel
2060 class Zaragoza shape 128000 sp nivel
2061 class Logro shape 128000 sp nivel
2058 class Ferrol shape 128000 sp nivel
...
class default shape 128000 sp nivel
AUX
51
2K
12
8
ISP
nivel
class AppUA priority 50% 22000
class Interactivo bandw 17%
class Masivo bandw 7%
class default bandw 1%
GLOBAL0
pre 5 class Congestion shape 1500000
nbar class hack drop
2054 class slowboy police 48000
eth0
rQos
W1
W0
100 Mbps
LINK
10/100 ETHERNET 0/0
FDX
CONSOLE
AUX
Cisco 2620
GLOBAL1
prec 5 class Congestion shap 1500000
nbar class hack drop
2064 class slowboy police 48000
CONSOLE
Internet
2000 Kbps
Ejemplo con control
QoS local y remoto
FDX
10/100 ETHERNET 0/0
bp
s
Kb
AUX
s
Kbp
CONSOLE
512
bps
K
128
10/100 ETHERNET 0/0
ps
10/100 ETHERNE T 0/1
10/100 ETHERNE T 0/1
Cisco 2651
Cisco 2651
W1
2052 class Avila shape 256 sp nivel
2060 class Zaragoza shape 256 sp nivel
2061 class Logro shape 256 sp nivel
2058 class Ferrol shape 256 sp nivel
...
class default shape 550000 sp nivel
eth1
CONGESTION
class default policer 1500000 set prec 5
Central
Referencias
♦ Cisco Modular Quality of Service Command-Line Interface Overview
http://www.cisco.com/univercd/cc/td/doc/product/software/ios120/120newft/120limit/120xe/
120xe5/mqc/mcli.htm#wp1019660
♦ Modular QoS CLI (MQC) Three-Level Hierarchical Policer
http://www.cisco.com/en/US/products/sw/iosswrel/ps1839/products_feature_guide09186a00801
10bcd.html
♦ Reference Guide to Implementing Crypto and QoS
http://www.cisco.com/warp/public/105/crypto_qos.html
♦ National Institute of Standards and Technology
http://snad.ncsl.nist.gov/itg/nistnet/
Curso Selectivo Perfil Seguridad
FIN
Tema 6
Descargar