Sei sulla pagina 1di 45

PCC y Balanceo de Carga en

Mikrotik RouterOS
Por Freddy Bohorquez Quevedo
Objetivo
Conocer y comprender el funcionamiento del
Balanceo de Carga por Conexiones (PCC en
RouterOS)

Comparar los distintos mtodos de Balanceo


de Carga y sus mbitos de aplicacin prctica.

2
Contenido

Introduccin

Mtodos de Balanceo

PCC: Per Connection Classifier

Laboratorio

3
Cuida de los pequeos gastos;
un pequeo agujero hunde un
barco.

Benjamin Franklin; poltico, cientfico e Inventor.

4
Balanceo de Carga
Tcnica que distribuye carga de trabajo en
dos o ms enlaces de red.

Permite maximizar el rendimiento,


minimizar el tiempo de respuesta y evitar la
sobrecarga.

Mltiples enlaces de red balanceados, en


lugar de enlaces simples, incrementan la
disponibilidad: redundancia.
5
Mtodos de Balanceo
ECMP (Equal Cost Multi-Path).
Firewall marking y policy routing.
Bonding.
NTH (N-esimo).
PCC Per Connection Classifier.

6
ECMP (Equal Cost Multi-Path)
Utiliza varios gateway con el mismo costo.
Simple de implementar.
Balanceo persistente por conexin.
No se puede controlar la forma de balanceo.
No funciona con puertas de enlace iguales.
Failover automtico.
Mismo gateway puede estar varias veces.

7
ECMP (Equal Cost Multi-Path)

8
Firewall marking y policy routing
Fcil de implementar
Se tiene control exacto del Internet
trfico
No dinmico (problemas de ISP1 ISP2

escalabilidad)
Router

9
Bonding
Fcil de implementar.
Redundancia automtica con failover.
Es necesario controlar ambos extremos del
enlace.

10
NTH (N-th)
Cada regla tiene su propio contador.
De cada M paquetes inspeccionados (every)
hace match con el N-esimo paquete.

11
PCC: Per Connection Classifier
Opcin tipo match usada normalmente en
mangle.
PCC matcher permite clasificar el trfico en
flujos similares.
Puede mantener los paquetes en un flujo
especfico basado en parmetros.
Conjunto de opciones: src-address, src-port,
dst-address, dst-port no del todo excluyentes
entre si.
12
PCC: Per Connection Classifier

13
PCC: funcin Hash
Funcin computable mediante un algoritmo.

Determinista: Misma cadena de entrada


devuelve el mismo valor hash.
14
PCC: Aritmtica modular
Algoritmo PCC usa divisin modular.
Divisin de nmeros enteros:

R (valor que nos interesa) suele llamarse


residuo o resto y se escribe como:

Ejemplos:
127 mod 2 = 1
151567 mod 5 = 2 15
PCC: Funcionamiento (match)

16
PCC: ValuesToHash
both-addresses|both-ports|dst-address-and-
port|src-address|src-port|both-addresses-
and-ports|dst-address|dst-port|src-
address-and-port

17
PCC: Dnde se encuentra?

18
PCC: Ejemplo 1
Clasificacin con 2 flujos simtricos requiere 2
reglas:

19
PCC: Ejemplo 2
Para clasificacin de 2 flujos asimtricos de
2M y 1M se requerirn 3 reglas:

20
PCC: Ejemplo 2
En general si se tienen n flujos de a1, a2,... ,
an velocidades siendo ai enteros.
Se tendrn m reglas donde m=mcm(a1, a2,... ,
an).
Cada flujo tendr m/ai reglas (i=1,2,,n)
Se deben realizar consideraciones prcticas
para no incrementar el nmero de reglas
(mayor tiempo de procesamiento)
21
Ejercicio
Se tiene 3 WAN con 4,5Mbps, 3Mbps y
9Mbps. Cuntas reglas recomendara para
clasificar el trfico con PCC y cules para cada
WAN? .
Similar considerando 7 Mbps, 6 Mbps y 3
Mbps respectivamente.

22
Balanceo de carga usando PCC
Escenario:

23
Pasos Requeridos
Configuracin base:
Direcciones IP.
Default gateways.
Enmascaramiento.
Configuracin Mangle.
Configuracin tablas de enrutamiento.

24
Configuracin Base
/interface ethernet
set 0 name=ISP1
set 1 name=ISP2
set 4 name=LAN

/ip address
add address=192.168.0.1/24 interface=LAN
add address=10.111.0.2/24 interface=ISP1
add address=10.112.0.2/24 interface=ISP2

/ip route
add gateway=10.111.0.1 distance=1 check-gateway=ping
add gateway=10.112.0.1 distance=2 check-gateway=ping

/ip firewall nat


add chain=srcnat out-interface=ISP1 action=masquerade
add chain=srcnat out-interface=ISP2 action=masquerade

25
Polticas de Enrutamiento
Mtodo que permite crear polticas distintas
para trficos diferenciados mediante tablas de
enrutamiento personalizadas.
En RouterOS las tablas de enrutamiento se
crean:
Por cada tabla especificada en /ip route rule.
Por cada routing-mark en mangle.
El trfico marcado es asignado de forma
automtica a la tabla de enrutamiento
correspondiente.
26
routing-mark
Atributo asignado a cada paquete (seguido en conntrack).
routing-mark se cambia con un action en /ip
firewall mangle antes de cualquier decisin de
enrutamiento:
chain prerouting para todo el trfico entrante.
chain output para el trfico saliente del router.
Cada nueva routing-mark tiene su propia tabla de
enrutamiento del mismo nombre.
De forma predeterminada, todos los paquetes tienen la
marca de enrutamiento main.

27
Mangle: Trfico a redes conectadas
Las rutas conectadas slo estn disponibles en
la tabla main.
Debemos asegurarnos que el trfico a estas
redes permanezca en la tabla main (no-
mark).
Esto permite la comunicacin adecuada entre
clientes conectados local y remotamente.

28
Mangle: Conexiones remotas

Conexiones iniciadas desde una interface


pblica, deben responderse por esa misma
interface.
Marcar estas conexiones para luego ponerlas
en la tabla de enrutamiento adecuada.

29
Mangle: PCC
Para reducir el consumo de recursos y el
tiempo de procesamiento se identifican las
conexiones (no-mark o new).
Primero se identifica el trfico (PCC) y con
action se marca la conexin.

30
Mangle: Marcado de rutas
Segundo, en cada paquete de la conexin
se procede al mark-routing.

31
Route: Tabla de Enrutamiento
Se agrega las rutas por defecto en la tabla de
enrutamiento correspondiente:

32
Consideracin de excepciones
De acuerdo a la configuracin propuesta en
PCC, se aplican polticas de enrutamiento
especificas para los paquetes originados en la
LAN, esto puede traer problemas.
Un enfoque simple y extensible consiste en
crear primero una lista de direcciones que
contenga todas las redes locales, incluidas las
redes de enlace WAN, y luego aceptar todo el
trfico entre redes en la lista de direcciones.
33
Solucin: excepciones con accept

Address list:

Reemplazar las reglas accept por:

34
Balanceo: comparacin

35
Laboratorio
Configuracin previa:

36
/system reset-configuration no-defaults=yes

37
Configuracin Previa
SSID: aulapcc11 psk:MikroTik
Para tener la segunda wan:
Interface->+->PPPoE Client
Solapa General->Interface:wlan1
Solapa Dial Out->User:alumnoXY, Password:
MikroTik, Add default route: No

38
Laboratorio
Capturar la primera conexin de un grupo de 3. Primero para 3/0:
1) IP, Firewall, Mangle +
2) solapa General->cadena prerouting->in-interface lan,
Connection Mark->no-mark
3) solapa Advanced->PCC->dst address:3/0
4) solapa Extra->Dst. Address Type,Address Type->Local, Invert
5) solapa Action->New Connection Mark c1
6) Activar el Passthrough
Definir 2 juegos de reglas similares, ahora para PCC con 3/1 y 3/2 y c2
Asociar las conexiones c1, a la marca de ruteo r1
1) IP->Firewall->Mangle->+
2) ->solapa General->cadena prerouting
3) ->in-interface lan, conection mark c1
3) ->solapa Action->Mark Routing r1
4) Desactivar el Passthrough
Definir una regla similar, ahora para c2 con r2

39
Laboratorio
Definir dos gateways, que guen el flujo r1 por el proveedor, y r2 por el otro:
1) IP,Route,+,0.0.0.0/24,Gateway 10.1.1.254,Routing Mark r1
2) IP,Route,+,0.0.0.0/24,Gateway 10.1.2.254,Routing Mark r2
Masquerade con out-interface para cada WAN

Test:
Verifique con ping desde su laptop que llega a
diferentes IP address y con tracer /
traceroute la salida por diferentes gateway.
En Windows: tracert h 2 w 1 d <host>
En Linux: traceroute n w 1 q 2 <host>

Use el archivo de IPs aleatorias para hacer una


prueba ms extensa.
40
Resultados esperados
Traza 1: r1=25 r2=58 media= 27.67
Traza 2: r1=148 r2=285 media=144.33

Pueden usar algn comando para contar


traza1.bat > log1.txt

Windows: find /C "10.1.2.254" log1.txt


Linux: cat log1.txt | grep 10.1.2.254 | wc -l

41
Rememoremos
Balanceo de Carga
Diferentes problemas-diferentes soluciones
PCC solucin propietaria de Mikrotik
Laboratorio

42
Material de Consulta
Manual:PCC - MikroTik Wiki.
http://wiki.mikrotik.com/wiki/Manual:PCC
Load Balancing Using PCC & RouterOS - MUM
US12 - MikroTik, Steve Discher.
MikroTik RouterOS Workshop Load Balancing
Best Practice. Las Vegas, MUM USA 2011,
Jnis Meis

43
www.themegallery.com
45

Potrebbero piacerti anche