QoS Megis Spanish Ryohnosuke
QoS Megis Spanish Ryohnosuke
QoS Megis Spanish Ryohnosuke
1
uke.co m/
Preguntas y Respuestas
P: Es posible priorizar el trafico por tipo para cada cliente mientras se limita por cada
usuario en el mismo router?
R: Si !
P: Qu necesito para lograrlo?
R: Necesitaras:
1. Diagrama de flujo de paquete
2. HTB (rbol de colas)
3. Mangle
4. PCQ
5. Lista de direcciones (Address list)
2
uke.co m/
Mangle
Mangle le permite marcar los paquetes IP con marcas especiales.
Estas marcas son utilizadas por otras funciones del propio router, como el enrutamiento
(routing) o el QoS (Quality of Service)
Adems, la implementacin de mangle se utiliza para modificar algunos campos en el
encabezado IP como TOS (DSCP) y TTL.
Doble QoS
Es posible marcar y ajustar el trfico dos veces en el mismo router:
Mangle cad ena Prerouting Para un primer marcado
Global-in HTB Para el primer ajuste
Mangle cad ena Forward o Postrouting Para un segundo marcado
El doble QoS solamente se puede usar mediante el rbol de colas (Queue Tree)
5
uke.co m/
6
uke.co m/
Conclusiones
Usaremos mangle y el rbol de colas para:
Marcar trafico por tipo de trafico y en la cadena de mangle prerouting
Priorizar y limitar el trafico por tipo en Global-In HTB
Remarcar el trafico por clientes en la cadena Forward de mangle
Limitar el trafico por cliente en la interfaz HTB
Es necesario mantener la cantidad de reglas en mangle y colas al mnimo para
8
uke.co m/
Limitaciones de cliente
Tenemos una lnea ADSL de +/- 40 Mbps
Tenemos ms de 400 clientes y 3 tipos conexiones diferentes:
Empresarial (4Mbps/1Mbps)
Estndar (750Kbps/250Kbps)
Bsica (375Kbps/125Kbps)
PCQ
Per Connection Queue es un tipo de cola capaz de dividir
el trafico en sub-flujos basados en los clasificadores
seleccionados
Cada sub-flujo pasara a travs de la cola FIFO con el
tamao de la cola especificado por la opcin pcq-limit y
maximal rate, especificadas por la opcin pcq-rate.
9
uke.co m/
uke.co m/
1
0
PCQ Parte 2
Para asegurar que cada sub-flujo PCQ representa un cliente particular, necesitamos
crear 2 tipos diferentes de PCQ:
PCQ_upload Direccin de origen como clasificador
PCQ_download Direccin de destino como clasificador
PCQ repartir el trfico disponible igualmente entre las sub colas hasta que el pcqrate sea alcanzado (si se ha especificado)
uke.co m/
1
1
uke.co m/
1
2
uke.co m/
1
3
uke.co m/
1
4
uke.co m/
1
5
uke.co m/
1
6
Dnde?
uke.co m/
1
7
Marcado de paquetes
Use la accin connection-mark para clasificar todas las conexiones basadas en clientes
de la lista de direcciones
Use la accin packet-mark para clasificar todo el trfico basado en marcas de
conexin.
Preguntas que te hars.
Qu velocidad debera de disponer para un cliente empresarial si descargo desde
un cliente bsico?
Aun tienes el trfico sin marcar?
uke.co m/
1
8
uke.co m/
1
9
uke.co m/
2
0
uke.co m/
2
1
http://www.ryoh nos
uke.co m/
2
2
uke.co m/
2
3
/queue tree
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=Total_download packet-mark=""
parent=ether1-gateway priority=1
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=basic_client_download packetmark=Basic_client_traffic parent=Total_download priority=8 queue=PCQ_down_375k
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=standard_client_download packetmark=Standard_client_traffic parent=Total_download priority=8 queue=PCQ_down_375k
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=bussiness_client_download packetmark=Bussiness_client_traffic parent=Total_download priority=8 queue=PCQ_down_375k
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=Total_upload packet-mark=""
parent=ether2-master-local priority=8
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=basic_client_upload packetmark=Basic_client_traffic parent=Total_upload priority=8 queue=PCQ_up-125k
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=standard_client_upload
packet-mark=Standard_client_traffic parent=Total_upload priority=8 queue=PCQ_up-125k
add burst-limit=0 burst-threshold=0 burst-time=0s disabled=no limit-at=0 max-limit=0 name=bussiness_client_upload packetmark=Bussiness_client_traffic parent=Total_upload priority=8 queue=default
http://www.ryoh nos
uke.co m/
2
4
uke.co m/
2
5
uke.co m/
2
6
Ajustes PCQ
Hay ~340 clientes de clase bsica para:
pcq_limit = 40
pcq_total_limit = 7000 (~20*340)(~ 15Mb)
Hay ~40 clientes de clase estndar para:
pcq_limit = 30
pcq_total_limit = 1000 (~20*40)(~ 2Mb)
Hay ~20 clientes de clase empresarial para:
pcq_limit = 20 (!!!)
pcq_total_limit = 500 (~20*20)(~ 1Mb)
uke.co m/
2
7
Priorizacin de trfico
Disponemos de una lnea ADSL de ~40Mbps/5Mbps
Tenemos problemas con las comunicaciones on-line (video, audio, VoIP, juegos)
Tareas:
Priorizar el trfico
uke.co m/
2
8
PeroDnde?
uke.co m/
2
9
YComo?
uke.co m/
3
0
Prioridades
Crear marcas de paquete (packet-mark) en la cadena Prerouting de mangle para la
priorizacin del trfico en la cola Global-In.
Servicios prioritarios (Prioridad=1)
Solicitudes de usuario (Prioridad=3)
Servicios de comunicacin (Prioridad=5)
Servicios de descarga (Prioridad=7)
Servicios P2P (Prioridad=8)
uke.co m/
3
1