05-Quality of Servic

29
Calidad de Servicios Calidad de Servicios 1 1 Calidad de Servicio QOS Calidad de Servicio QOS Calidad de Servicio QOS Calidad de Servicio Quality of service M M ó ó dulo 3 dulo 3

Transcript of 05-Quality of Servic

Page 1: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 11

Calidad de Servicio QOSCalidad de Servicio QOSCalidad de Servicio QOS

Calidad de Servicio Quality of service

MMóódulo 3dulo 3

Page 2: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 22

Calidad de Servicio QOSCalidad de Servicio QOS

Calidad de servicio no es limitar sino Calidad de servicio no es limitar sino ecualizar.ecualizar.

Calidad de servicio es racionalizar el Calidad de servicio es racionalizar el recurso de ancho de banda de la manera recurso de ancho de banda de la manera mas efectivamas efectiva

Se priorizan cierto flujo con respecto a Se priorizan cierto flujo con respecto a otrootro

Page 3: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 33

Calidad de Servicio QOSCalidad de Servicio QOSLa calidad de servicio se realiza por medio La calidad de servicio se realiza por medio de dropeo de paquetes.de dropeo de paquetes.Es este caso el protocoo TCP reenviara un Es este caso el protocoo TCP reenviara un paquete dropeado; no se perderpaquete dropeado; no se perderááinformaciinformacióón.n.El q.o.s. trabaja con un mecanismo de El q.o.s. trabaja con un mecanismo de encolamiento, esperando por salir por la encolamiento, esperando por salir por la interfaz de salida.interfaz de salida.Hay interfaces virtuales como globalHay interfaces virtuales como global--in, in, globalglobal--out y globalout y global--total. total.

Page 4: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 44

Calidad de Servicio QOSCalidad de Servicio QOSSolo una disciplina de queue puede Solo una disciplina de queue puede haber por interfazhaber por interfazLas queues controlan la velocidad y el Las queues controlan la velocidad y el orden de los paquetes por la interfaz de orden de los paquetes por la interfaz de salida, esperando el turno para salir.salida, esperando el turno para salir.Hay 2 manera de clasificar las disciplinas Hay 2 manera de clasificar las disciplinas de acuerdo a como influyen al flujode acuerdo a como influyen al flujo

* Tipo schedulers: PFIFO * Tipo schedulers: PFIFO –– BFIFO BFIFO –– SFQSFQ* Tipo shaper: PCQ * Tipo shaper: PCQ -- HTBHTB

Page 5: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 55

Calidad de Servicio QOSCalidad de Servicio QOS

Schedulers: Schedulers: Deciden que colas hay que procesar y en que orden. Deciden que colas hay que procesar y en que orden. Funciona con FIFO, como una cola de banco, cuando la cola se Funciona con FIFO, como una cola de banco, cuando la cola se llena los paquetes siguientes son dropeados.llena los paquetes siguientes son dropeados.Estas disciplinas limitan el nEstas disciplinas limitan el núúmero de paquetes que esperan no mero de paquetes que esperan no la velocidad.la velocidad.

Shapers: Shapers: Disciplinas basadas en la limitaciDisciplinas basadas en la limitacióón por velocidad.n por velocidad.

Page 6: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 66

Calidad de Servicio QOSCalidad de Servicio QOSPFIFO y BFIFO:PFIFO y BFIFO:Disciplina basada en FIFO (Disciplina basada en FIFO (first infirst in--first outfirst out), no ), no cambian el orden de los paquetes, sino que cambian el orden de los paquetes, sino que acumulan de acuerdo al limite definido.acumulan de acuerdo al limite definido.Si la queue esta llena los paquetes restantes son Si la queue esta llena los paquetes restantes son dropeados.dropeados.Grandes queues incrementan la latencia.Grandes queues incrementan la latencia.

PFIFOPFIFO: queue limitada por paquetes: queue limitada por paquetesBFIFOBFIFO: queue limitada por bytes: queue limitada por bytes

NOTA: Usar FIFO para enlaces no congestionadosNOTA: Usar FIFO para enlaces no congestionados

Page 7: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 77

Calidad de Servicio QOSCalidad de Servicio QOSSFQ: SFQ:

Esta disciplina no limita el trEsta disciplina no limita el trááfico, sino que ecualiza fico, sino que ecualiza el flujo (sesiones TCP y stream UDP) cuando el el flujo (sesiones TCP y stream UDP) cuando el enlace esta saturado.enlace esta saturado.Usar SFQ para enlaces congestionados y Usar SFQ para enlaces congestionados y asegurarnos que las conecciones no mueran por asegurarnos que las conecciones no mueran por falta de flujo.falta de flujo.

Consume poco CPU al igual que los basados en Consume poco CPU al igual que los basados en FIFOFIFO

Page 8: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 88

Calidad de Servicio QOSCalidad de Servicio QOSRED: Random Early Detect:RED: Random Early Detect:Es un gestor inteligente de flujo, no limita velocidad, pero cuaEs un gestor inteligente de flujo, no limita velocidad, pero cuando el ndo el enlace esta lleno, ecualiza las velocidades de los usuarios.enlace esta lleno, ecualiza las velocidades de los usuarios.Se utiliza para enlaces tipo backbone para evitar congestiSe utiliza para enlaces tipo backbone para evitar congestióón.n.

Si el tamaSi el tamañño del paquete medio se encuentra debajo del umbral mo del paquete medio se encuentra debajo del umbral míínimo nimo (red(red--minmin--threshold) el paquete no se dropearthreshold) el paquete no se dropearáá..Si el tamaSi el tamañño del paquete medio se encuentra arriba del umbral maximo o del paquete medio se encuentra arriba del umbral maximo (red(red--maxmax--threshold), todos los paquetes siguientes se dropearthreshold), todos los paquetes siguientes se dropearáán.n.Si el tamaSi el tamañño medio del paquete se encuentra entre los 2 umbrales se o medio del paquete se encuentra entre los 2 umbrales se bloquearbloquearáán de acuerdo a un cn de acuerdo a un cáálculo de probabilidad.lculo de probabilidad.““redred--limitlimit”” especifica el tamaespecifica el tamañño del paqueteo del paquete

Consume bastante CPU.Consume bastante CPU.

Page 9: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 99

Calidad de Servicio QOSCalidad de Servicio QOSPCQ: Per conecction queuePCQ: Per conecction queueEs una disciplina mejorada de SFQ que Es una disciplina mejorada de SFQ que puede limitar.puede limitar.

PCQ crea subqueues que se pueden PCQ crea subqueues que se pueden clasificar de acuerdo al srcclasificar de acuerdo al src--port, dstport, dst--port, srcport, src--address,dstaddress,dst--address.address.

Permite que con una sola regla se pueda Permite que con una sola regla se pueda ahorrar de hacer cientros de simples queues.ahorrar de hacer cientros de simples queues.

Page 10: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1010

Calidad de Servicio QOSCalidad de Servicio QOSHTB: Disciplina jerHTB: Disciplina jeráárquica que clasifican los rquica que clasifican los paquetes de acuerdo al limite que llegan.paquetes de acuerdo al limite que llegan.HTB tiene 3 propiedadesHTB tiene 3 propiedades

limitlimit--at: ancho de banda garantizado (CIR) (verde)at: ancho de banda garantizado (CIR) (verde)maxmax--limit: maximo de ancho de banda (MIR) (amarillo)limit: maximo de ancho de banda (MIR) (amarillo)priority: orden en el cual se puede prioriza una queue.priority: orden en el cual se puede prioriza una queue.

HTB puede tener prioridad:HTB puede tener prioridad:•• Prioridad 1 es la mayor, pero solo funciona cuando la Prioridad 1 es la mayor, pero solo funciona cuando la

cola esta en verde. Prioridad 8 es la por defecto.cola esta en verde. Prioridad 8 es la por defecto.•• Cuando una coleta alcanza el valor Cuando una coleta alcanza el valor ““limitlimit--atat”” cambian cambian

de verde a amarillo, y puede usar BW de la coleta de verde a amarillo, y puede usar BW de la coleta padre si no esta en rojo. padre si no esta en rojo.

Page 11: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1111

Calidad de Servicio QOSCalidad de Servicio QOSEstados del HTB:Estados del HTB:

verde: la clase se encuentra en verde cuando no verde: la clase se encuentra en verde cuando no alcanzalcanzóó el valor el valor ““limitlimit--atat””

amarillo: cuando superamarillo: cuando superóó el valor de el valor de ““limitlimit--atat”” y y esta por debajo de esta por debajo de ““maxmax--limitlimit”” y puede tomar y puede tomar ancho de banda de la coleta padre si no esta ancho de banda de la coleta padre si no esta saturadasaturada

rojo: el valor actual ha superado el rojo: el valor actual ha superado el ““maxmax--limitlimit”” y y los paquetes son dropeados y no puede pedir los paquetes son dropeados y no puede pedir ancho de banda a la coleta padre.ancho de banda a la coleta padre.

Page 12: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1212

Calidad de Servicio QOSCalidad de Servicio QOS

Es la manera mEs la manera máás simple de limitar el s simple de limitar el trtrááfico por IP o por subred.fico por IP o por subred.Con una sola regla se puede limitar el Con una sola regla se puede limitar el TX/RX, burst y el total (tx+rx).TX/RX, burst y el total (tx+rx).Utiliza las intefaces Utiliza las intefaces ““globalglobal--outout”” y y ““globalglobal--inin””para limitar y trabaja con los paquetes tal para limitar y trabaja con los paquetes tal cual lo hace en cual lo hace en ““ip forwardip forward””PPPoE, PPP y HotSpot crean simple PPPoE, PPP y HotSpot crean simple queues dinqueues dináámicasmicas

Simples queuesSimples queues

Page 13: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1313

Calidad de Servicio QOSCalidad de Servicio QOS

ConfiguraciConfiguracióón de simple queuen de simple queueLas simple queues se crean en Las simple queues se crean en ““/queue simple/queue simple””

Propiedades:Propiedades:targettarget--ip:ip: limitacilimitacióón por IPn por IPinterfaceinterface: interface de salida (usar : interface de salida (usar ““allall””))tipo de queuetipo de queue: tipo de disciplinada para la queue: tipo de disciplinada para la queuelimitlimit--at,maxat,max--limitlimit: valores de CIR y MIR: valores de CIR y MIRprioridadprioridad: prioridad de la queue cuando esta en verde: prioridad de la queue cuando esta en verdetimetime: en el caso de establecer horarios de : en el caso de establecer horarios de

funcionamiento de la queue.funcionamiento de la queue.

Simples queuesSimples queues

Page 14: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1414

Calidad de Servicio QOSCalidad de Servicio QOS

Ejemplo:Ejemplo:configuraciconfiguracióón de una queue para 128kits/s Down y 64kits/s Upn de una queue para 128kits/s Down y 64kits/s Up../queue simple add target/queue simple add target--address=10.5.54.1/32 maxaddress=10.5.54.1/32 max--limit=65536/131072limit=65536/131072

Simples queuesSimples queues

Page 15: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1515

Calidad de Servicio QOSCalidad de Servicio QOS

Las queues tree se utilizan para hacer un manejo Las queues tree se utilizan para hacer un manejo sofisticado del ancho de banda.sofisticado del ancho de banda.Permite trabajar con protocolo, puertos, flujos, etc. Permite trabajar con protocolo, puertos, flujos, etc. Todo lo marcado en Todo lo marcado en ““/ip firewall mangle/ip firewall mangle””Permite tener jerarquias para hacer un QOS Permite tener jerarquias para hacer un QOS avanzado.avanzado.Se ejecutan antes que queue simple.Se ejecutan antes que queue simple.Tiene interfaces virtuales Tiene interfaces virtuales ““globalglobal--inin””, , ““globalglobal--outout”” y y ““globalglobal--totaltotal””

Queue treeQueue tree

Page 16: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1616

Calidad de Servicio QOSCalidad de Servicio QOS

ConfiguraciConfiguracióón de queue treen de queue treese configuran es se configuran es ““/queue tree/queue tree””Propiedades:Propiedades:

flow: flujo a encolarflow: flujo a encolarlimitlimit--at y maxat y max--limit: CIR y MIR para la coletalimit: CIR y MIR para la coletaparent: interfaz de salida o coleta padre parent: interfaz de salida o coleta padre (interfaces (interfaces

virtuales)virtuales)

Tipo de queue: tipo de disciplinaTipo de queue: tipo de disciplinaPriority: prioridad de la coletaPriority: prioridad de la coleta

Queue treeQueue tree

Page 17: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1717

Calidad de Servicio QOSCalidad de Servicio QOSEjemplo de queue tree:Ejemplo de queue tree:

marcar todo trmarcar todo trááfico con destino :2000 (test de fico con destino :2000 (test de ancho de banda) con la marca down_btancho de banda) con la marca down_bt

marcar el resto del trafico como down_allmarcar el resto del trafico como down_all

/ip firewall mangle add chain=prerouting dst/ip firewall mangle add chain=prerouting dst--port=2000 port=2000 \\.. protocol=tcp action=mark.. protocol=tcp action=mark--packet packet \\.. new.. new--packetpacket-- mark=mark=””down_btdown_bt”” passthrough=nopassthrough=no

/ip firewall mangle add chain=prerouting action/ip firewall mangle add chain=prerouting action--markmark--packetpacket\\ .. new.. new--packetpacket--mark=down_all packetmark=down_all packet--mark=!down_bt mark=!down_bt \\.. passthrough=no.. passthrough=no

Page 18: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1818

Calidad de Servicio QOSCalidad de Servicio QOS

Cree una queue Cree una queue para todo el trpara todo el trááfico fico con el parent con el parent correcto.correcto.

Cree 2 subqueues Cree 2 subqueues con los distintos con los distintos flujos creadosflujos creados

Page 19: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 1919

Calidad de Servicio QOSCalidad de Servicio QOS

Page 20: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2020

Calidad de Servicio QOSCalidad de Servicio QOSCuando no hay tráfico especial trabaja la queue down_all

Cuando se genera tráfico especial trabajan ambas queue

Page 21: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2121

Calidad de Servicio QOSCalidad de Servicio QOSBurst es un mecanismo para permitir rate mas altos Burst es un mecanismo para permitir rate mas altos que los limitados en maxque los limitados en max--limit durante cierto tiempo.limit durante cierto tiempo.

Burst tiene varias propiedades:Burst tiene varias propiedades:

burstburst--limit: es el limite maximo que alcanzarlimit: es el limite maximo que alcanzarááburstburst--time: tiempo que tendrtime: tiempo que tendráá el burstel burstburstburst--threshold: umbral donde empieza a limitarthreshold: umbral donde empieza a limitarmaxmax--limit: MIRlimit: MIR

Page 22: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2222

Calidad de Servicio QOSCalidad de Servicio QOSEjemplo de Burst:Ejemplo de Burst:

Estos son los valores definidos Estos son los valores definidos para hacer un http download.para hacer un http download.

MaxMax--limit=256000klimit=256000kburstburst--time=8s, time=8s, burstburst--threshold=192000 kthreshold=192000 kburstburst--limit=512000.klimit=512000.k

Al inicio el promedio de datos sobre los 8 segundos es 0bps porque antes de aplicar la regla de queue no hay tráfico. Despues el promedio de rate es menor a 192bkps, el burst sigue. Despues del primer segundo el promedio es (0+0+0+0+0+0+0+512)/8=64kbps, el cual es menor al burst-threshold. Despues del segundo segundo, el promedio de rate es (0+0+0+0+0+0+512+512)/8=128kbps. Despues del tercer segundo viene el punto de inflexión cuando el promedio supera el burst-threshold. En este momento el burst es deshabilitado y el rate cae al max-limit (256kbps)

Page 23: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2323

Calidad de Servicio QOSCalidad de Servicio QOS

Ejemplos de PCQEjemplos de PCQSirve para ecualizar el trSirve para ecualizar el trááfico fico de acuerdo a la clasificacide acuerdo a la clasificacióón n que se le definique se le definióó..

Si configura pcqSi configura pcq--rate 0 cada rate 0 cada subqueue utilizarsubqueue utilizaráá el maxel max--limit, sino limit, sino cada subqueue tendrcada subqueue tendráá el valor el valor maximo definido en rate.maximo definido en rate.

Page 24: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2424

Calidad de Servicio QOSCalidad de Servicio QOS

Con pcqCon pcq--rate=128krate=128k

Pcq-down con max-limit=512k

PcqPcq--down con down con maxmax--limit=512klimit=512k

128k128k128k

128k128k128k

128k128k128k

128k128k128k

128k128k128k

128k128k128k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

En este ejemplo se ve un pcq para 2,4 y 7 En este ejemplo se ve un pcq para 2,4 y 7 usuarios en una misma coleta.usuarios en una misma coleta.

Page 25: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2525

Calidad de Servicio QOSCalidad de Servicio QOSCon pcqCon pcq--rate=0rate=0

Pcq-down con max-limit=512k

PcqPcq--down con down con maxmax--limit=512klimit=512k

512k512k512k 256k256k256k

256k256k256k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

73k73k73k

En este ejemplo se ve un pcq para 1,2 y En este ejemplo se ve un pcq para 1,2 y 7 usuarios en una misma coleta.7 usuarios en una misma coleta.

Page 26: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2626

Calidad de Servicio QOSCalidad de Servicio QOS

Cuando se utiliza una red masquerade, es Cuando se utiliza una red masquerade, es necesario marcar primero la coneccinecesario marcar primero la coneccióón y n y luego marcar el flujo de esa conecciluego marcar el flujo de esa coneccióón.n.

Es necesario hacer el marcado en el chain Es necesario hacer el marcado en el chain prerounting, sino no trabajarprerounting, sino no trabajaráá el control de el control de ancho de banda.ancho de banda.

Page 27: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2727

Calidad de Servicio QOSCalidad de Servicio QOSControl de trControl de trááfico P2Pfico P2P

Mikrotik RouterOS ya tiene incluido patrones Mikrotik RouterOS ya tiene incluido patrones para detectar el trpara detectar el trááfico P2Pfico P2PLos nuevos programas p2p utilizan Los nuevos programas p2p utilizan encriptaciencriptacióón una vez establecida la coneccin una vez establecida la coneccióón, n, por lo que no se puede detectar el flujo de por lo que no se puede detectar el flujo de trtrááfico.fico.Se pueden dropear todos los p2p pero no se Se pueden dropear todos los p2p pero no se pueden limitar todos!pueden limitar todos!

Page 28: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2828

Calidad de Servicio QOSCalidad de Servicio QOSLos pasos para hacer la limitaciLos pasos para hacer la limitacióón del trn del trááfico p2p son:fico p2p son:

•• Marcar la conecciMarcar la coneccióón con la opcin con la opcióón p2p=alln p2p=all--p2pp2p•• Marcar el flujo de la conecciMarcar el flujo de la coneccióón anteriorn anterior•• Crear queue con:Crear queue con:

PcqPcq--in con clasificaciin con clasificacióón dstn dst--address y un rate de 128kaddress y un rate de 128kPcqPcq--out con clasificacion srcout con clasificacion src--address y un rate de 64kaddress y un rate de 64k

•• Crear una queue tree con el flujo p2p y la clasificaciCrear una queue tree con el flujo p2p y la clasificacióón n pcq correspondiente.pcq correspondiente.

/queue type add name=up kind=pcq pcq-classifier=src-address pcq-rate=64000/queue type add name=down kind=pcq pcq-classifier=dst-address pcq-rate=128000

/ip firewall mangle add p2p=all-p2p action=passthrough mark-flow=p2p

/queue tree add parent=public flow=p2p queue=up/queue tree add parent=local flow=p2p queue=down

Page 29: 05-Quality of Servic

Calidad de ServiciosCalidad de Servicios 2929

Calidad de Servicio QOSCalidad de Servicio QOS

Preguntas...Preguntas...

Recuerde leer el manual de MikrotikRecuerde leer el manual de MikrotikHay ejemplos en el wiki de mikrotikHay ejemplos en el wiki de mikrotik