Mikrotik – Simple Queues and Queue Tree

Si te pareció útil. Comparte

Simple Queues

Una manera sencilla de controlar el tráfico de nuestra red es utilizar simple queue. Como su nombre lo indica son simples reglas de prioridad por IP.

Estas reglas te permiten establecer un límite de ancho de banda para 1 o varios equipos definiendo su IP aquí:

Por cierto, esto se encuentra en el menú izquierdo dentro de Queues-> Simple queues. Como siempre haciendo clic en el icono “+”.

Esta regla tiene por nombre prueba, que usualmente puede ser el nombre del equipo como “Servidor”, “Router oficina”, “Gerencia”, etc y estamos estableciendo que el máximo de subida y bajada para la IP 192.168.1.25 (que pueden ser varias dentro de una sola regla) es de 5M. También una opción muy útil se encuentra en la pestaña de avanzado:

Limit At se utilizada para certificar que este equipo tendrá por lo menos x Megas de bajada o subida. Se puede utilizar juntamente con Max Limit para equilibrar el máximo y el mínimo.

Se utilizan estas queues para generar gráficos aquí (https://blog.zenitx.com/mikrotik-graficar-el-consumo-de-mi-red/) si te interesa

Queue Tree

Queue tree es lo mismo que simple queue pero por servicio. Es decir, se establece un mínimo y máximo (dependiendo de tus necesidades) pero por servicio en vez de IP.

Por ejemplo, puede establecer un máximo de consumo para el tráfico HTTP y HTTPS pero establecer prioridad para todo lo que sea RDP (Escritorio Remoto). Usualmente también es recomendable dar prioridad al trafico DNS y si quieres ICMP, ya que son muy livianos y lo importante en este tipo de comunicación es la velocidad.

Primero se deben crear las reglas necesarias en mangle para realizar un marcado de paquetes apropiado, que es el cerebro de todo lo que se hará después:

Adjunto Script con el cual se crearon las reglas de la imagen. Esto es solo el comienzo y puede ser adaptado a las necesidades de cada plataforma:

add action=mark-connection chain=forward comment=RX 
in-interface-list="Redes WAN" new-connection-mark=rx-con passthrough=yes

add action=mark-packet chain=forward connection-mark=rx-con
new-packet-mark=rx-pkt passthrough=yes

add action=mark-connection chain=prerouting comment=TX in-interface-list="Redes LAN"
new-connection-mark=tx-con passthrough=yes

add action=mark-packet chain=prerouting connection-mark=tx-con new-packet-mark=tx-pkt passthrough=yes

add action=mark-packet chain=forward comment=DNS connection-mark=rx-con new-packet-mark=dns-rx-pkt passthrough=no port=53 protocol=tcp

add action=mark-packet chain=forward connection-mark=tx-con new-packet-mark=dns-tx-pkt passthrough=no port=53 protocol=tcp

add action=mark-packet chain=forward comment=UDP connection-mark=rx-con new-packet-mark=udp-rx-pkt passthrough=no protocol=udp

add action=mark-packet chain=forward connection-mark=tx-con new-packet-mark=udp-tx-pkt passthrough=no protocol=udp

add action=mark-packet chain=forward comment="HTTP - HTTPS" connection-bytes=0-1000000 new-packet-mark=http-rx-pkt packet-mark=rx-pkt passthrough=no port=80,443 protocol=tcp

add action=mark-packet chain=forward connection-bytes=0-1000000 new-packet-mark=http-tx-pkt packet-mark=tx-pkt passthrough=no port=80,443 protocol=tcp

add action=mark-packet chain=forward comment="HTTP - HTTPS Downloads" connection-bytes=1000000-0 connection-mark=rx-con new-packet-mark=http-downloads-pkt passthrough=no port=80,443 protocol=tcp

add action=mark-packet chain=forward connection-bytes=1000000-0 connection-mark=tx-con new-packet-mark=http-uploads-pkt passthrough=no port=80,443 protocol=tcp

add action=mark-packet chain=forward comment=Other new-packet-mark=other-rx-pkt packet-mark=rx-pkt passthrough=no

add action=mark-packet chain=forward new-packet-mark=other-tx-pkt packet-mark=tx-pkt passthrough=no

En este ejemplo se marcaron las conexiones de bajada y subida. Luego discriminando por puerto se marcan los paquetes de DNS, RDP, HTTP, etc. Aunque hay muchas maneras de hacerlo a mí me gusta hacerlo así porque es más ordenado.

Luego de hacer todas las marcas que necesitemos en el mangle debemos establecer las reglas en el queue tree. Creando un grupo general y dividiendo en subidas y bajadas así:

Las reglas individuales se agregan especificando la marca de paquete que queremos establecer el máximo del trafico:

Dependiendo de la topología de tu red quizás sea más conveniente utilizar Simple Queue o Queue Tree. Incluso puedes hacer una mezcla de ambas. Esto evita que un solo equipo se consuma todo el ancho de banda y también equilibrar el consumo por servicio, este tipo de configuración puede ayudarte a ver Netflix y jugar online al mismo tiempo gracias a la priorización de paquetes, ya que jugar online es poco peso, pero rápido y Netflix es todo lo contrario.

Si conoces otra aplicación para queue tree o tienes algún aporte por favor dejarlo en los comentarios.

¡Que tengas un buen dia!

Written By José Miguel Concha Parra

Deja un comentario