Guia de medidas de firewall hardware


Introducción


La siguiente guia de medidas del hardware ha sido escrita inicialmente y principalmente para el producto pfSense®.
Pero es posible extender estos conceptos tambien para Zeroshell, ipCop, ipFire, y en parte tambien con monowall.
Mas adelante trataremos algunos conceptos tecnicos para explicar y motivar nuestras conclusiones mensionadas en la tabla Dimensionamento istantaneo.
Cuando el usuario-navegador no quiera leer toda la parte tecnica puede saltar de inmediato a: Dimensionamiento inmediato.

Para dimensionar un firewall hardware basado en pfSense® desde la version 2.0 en adelante es necesario tener en cuenta 2 factores principales:

  1. Rendimiento requerido - Throughput
  2. Características o paquetes adicionales de pfSense® utilizados

Estos 2 factores influencian principalmente RAM, CPU, Disco Duro y cantidad de NIC. Debajo encontrara a dispocision nuestra experincia en dimensionar el hardware de los equipos.

1. Consideraciones rendimiento requerido - Throughput


Por definicion se entiende por throughput de un canal de comunicacion a su capacidad de trasmicion efectiva utilizada.

El throughput no se puede confundir con la capacidad del link. La capacidad de throughput se exprime en bit/s, mientras la primera exprime la frequencia maxima de trasmicion a la cual los datos pueden viajar, el throughput es un indice de efectivo utilizo de la capacidad del link. El throughput es la cantidad de datos trasmitidos en una unidad de tiempo y depende de cuanta informacion es introducida en el canal de trasmicion.

Es importante determinar el throughput de una red antes de la instalacion de un firewall pfSense® porque esto determinara el tipo de CPU para utilizar y en ciertos casos el tipo de NIC.
Si es necesario menos de 10 Mbps entonces es posible utilizar los requisitos minimos para el hardware. Por throughput superiores aconsejamos de seguir el dimensionamento sujerido en la tabla a continuacion, basada en test efectivamente realizado en el campo. La tabla aqui abajo ha sido pensada para evitar el maximo nivel de carga en el hardware y asi no llegar a ciertos problemas

Requisitos minimos de sistema para pfSense® desde la version 2.0 en adelante:


CPU No menos di 100 MHz
RAM 128 MB
Instalación en Disco Duro (Hard Disk)/td> 1 GB
incorporado Compact Flash da 512 MB

Dimensionamento pfSense® - Throughput

Throughput: Mbps Requisitos hardware aconsejados Producto aconsejado Rumorosidad
1-10 Mbps No menos de 500 MHz CPU Single Core Entry level Nada
11-150 Mbps No menos de 1000 MHz CPU Single Core ASUTM Casi nada
51-350 Mbps No menos de 1.4 GHz CPU Single/Dual Core Microcluster Media con ventiladores standard
Baja con Kit Silent
100-750 Mbps No menos de 1.8 GHz CPU Dual Core AUTM5 - Microcluster Media con ventiladores standard
Baja con Kit Silent
750 + Mbps No menos de 1,8 GHz Dual Core.
NIC Intel
APUTM - Microcluster Media con ventiladores standard
Baja con Kit Silent

2. Características o paquetes adicionales de pfSense® utilizados


Muchas características de pfSense® influencian considerablemente el dimensionamento de el hardware.

VPN: el uso costante del servicio VPN hace crecer mucho los requisitos de la CPU. La encriptación y descifrado de los paquetes aumenta la carga sobre la CPU. El numero de conexiones es un factor menos preocupante del throughput.
  • CPU di 266 MHz soporta aproximadamente 4 Mbps de tráfico IPsec
  • CPU di 500 MHz soporta aproximadamente 10-15 Mbps di tráfico IPsec
  • CPU Xeon di nuova generazione supportano 100 Mbps di tráfico IPsec
Las tarjetas que soportan la criptografia reducen considerablemente el cargo en la CPU.

Squid – Squidguard – control del tráfico en salida a travez de proxy:lo dos paquetes utilizan mucho sea la CPU que escrituras en el disco. Por este motivo se aconseja NO UTILIZARLOS con productos Entry level y el utilizo de AUTM y AUTM2 con dispositivos DOM.
Para este tipo de trabajo se aconseja el uso de AUTM, AUTM2 y Microcluster con SSD o discos clasicos.
Sin embargo es posible el uso optimizado solo con el paquete SQUID con productos entry level a condición que se desactive todo tipo de escritura en el disco y con fuerte disminucion del rendimiento

Captive Portal: Ambientes con cientos de conexiones requieren mucha CPU. Con referencia a la tabla del throughput serà necesario aumentar los usuarios de un 15-20% para optener la plataforma recomendada.

Grandes tablas de Estado: Cada elemento de la tabla de estado requiere 1KB. La tabla de estado, quando esta llena tiene 10.000 elementos, entonces aproximadamente 10MB de RAM. Para tablas de estado mas grandes, con cientos de miles de conexiones sera necesario determinar una memoria RAM mas adecuada.

Packages: muchos paquetes aumentan significativamente la cantidad de RAM utilizada. Por ejemplo SNORT y NTOP no deberian ser instalados en plataformas hardware con menos de 512 MB de RAM.

Version de pfSense® de instalar


Es de destacar la diferencia entre dos tipos de instalacion que es posible efectuar con pfSense® sobre diferentes equipos:

  • La Solucion integrada (firewall Entry Level) No permite la escritura de los file de registro en la memoria (Compact Flash o DOM) y de todos modos se recomienda de no hacerlo. En esta version No es posible instalar algunos paquetes adicionales de pfSense®.
  • La solucion que se instala en el hard disk (normalmente con las soluziones Appliance UTM o superiores) tiene la posibilidad de salvar los files de registro en su interno. En esta version es posible instalar todos los paquetes adicionales previstos para pfSense®.


3. Profundización sobre chipset de la tarjeta de red


La elección de una tarjeta de red es fundamental para quien esta proyectando un sistema de media/grande dimencion.
Como pueden notar de la descripcion de los productos, precisamos siempre muy bien si los aparatos integran en su interno chipset Intel o Realtek.

El chipset Realtek tiene menos rendimiento del chipset Intel y es adapto principalmente para cargos de trabajo menos intensos. Sin embargo, para una empresa que no requiere throughput elevados es siempre la elección ideal.

Il chipset Intel envez ofrece mayores rendimiento en casos de intenso tráfico: ofrece infatti tantas características avanzadas como la gestion de las colas y desde la version de pfSense® 2.2 en adelante ofrece tambien un suporto mejorado al multi-core. Esto se traduce en un throughput mas elevado con menos carga al CPU.
Con este fin hemos publicado un informe sobre la optimización de los NIC Intel a travez el tuning del driver e delle impostazioni. Precisamos que hasta hoy nuestros equipos no tienen necesidad de optimización. Nosotros la inserimos de todos modos por completitud.

En caso piensen que vuestro equipo tenga problemas de rendimiento derivado de los NIC pueden utilizar esta guia para el diagnóstico del problema.

4. Dimensionamiento segun la rumorosidad de los equipos


Para brindar el producto adecuado es necesario pensar a donde sera colocado el firewall.
Si el equipo sera colocado cerca a personas que trabajan, sera necesario escojer un equipo con bajo nilvel de ruido o sera necesario la compra de un particular kit silent!
Aqui debajo esta reportada una tabla con datos indicativos sobre la rumorosidad de los aparatos:
Grupo aparato Nivel de ruido
Entry Level Nivel 0 (completamente fan less)
ASUTM Nivel 1 (ruido casi imperceptible)
AUTM5/Microcluster + Kit Silent Nivel 3 (ruido perceptible de 2 / 3 metros)
AUTM5/Microcluster/APUTM Nivel 5 (ruido audible de 4 / 5 metros)

Notes of the designers on the noise:
a device that dissipates heat well will surely last longer and will be more stable and reliable!
That's why our high-end devices are designed so that the airflow invest and cool internal components.

5. Cuando Se debe utilizar el MicroCluster?


El Microcluster es un aparato 2U, compuesto por 2 cajones que contienen, cada uno, un sistema hardware completamente independiente.
En particular, a travez pfSense® se puede obtener un verdadero y propio Cluster activo pasivo configurado para obtener alta fiabilidad entre los 2 cajones que se convierten en nudos del Cluster.
Los otros Sistemas Operativos no tiene (esperemos solo por ahora) una funcion como el CARP de pfSense® pero pueden ser de todos modos configurados en modo tal que el usuario pueda apagar manualmente uno de los dos sistemas y prender el otro. Entonces podemos decir que se trata de un sistema Cluster que en caso de pfSense® es automatico y en caso de otros Sistemas Operativos es manual. Tal sistema debería ser utilizado en ambientes donde la alta fiabilidad es obligatoria

6. Dimensionamiento instantáneo


En base a nuestras experiencias hemos creado una clasifica de instalaciones realizadas en los ultimos años. Esta clasifica no es solo el fruto de la experiencia madurada en la instalacion del firewall, sino tambien en la evolucion tecnologica que el usuario pide el equipo durante los años de utilizo.

Los resultados están vinculados por ejemplo a la evolucion tecnologica que cada empresa/ente padece o pide en los años por diferentes exijencias. Por ejemplo las pequeñas empresas piden inicialmente la instalacion de un simple firewall. Normalmente no pasa mucho tiempo para pedidos como para el VPN, filtrado de contenidos o reglas de navegacion.

Po esto en base al numero de "equipos activos" (osea de equipos conectados ad internet) hermos preparado la siguiente tabla que tiene cuenta de los conceptos tratados en esta pagina:

Modelo firewallN. de equipos activos
Entry leveldesde 1 a 8 equipos
ASUTM o Microclusterdesde 8 a 35 equipos
Microclusterdesde 20 a 55 equipos
AUTM5 o Microclusterdesde 40 a 150 equipos
APUTM o Microclusterdesde 60 a 300 equipos


7. Analisis del rendimiento de los equipos


NO VPN
BRIDGE NAT
TCP UDP TCP UDP
Banda Banda Jitter Banda Banda Jitter
ALIX 86,60 Mbps 87,10 Mbps 0,123 ms 86,57 Mbps 88,40 Mbps 0,122 ms
APU 474,00 Mbps 735,00 Mbps 0,028 ms 474,00 Mbps 535,00 Mbps 0,037 ms
ASUTM 595,00 Mbps 653,00 Mbps 0,033 ms 595,00 Mbps 535,00 Mbps 0,037 ms
MICROCLUSTER 754,50 Mbps 735,00 Mbps 0,024 ms 551,20 Mbps 560,00 Mbps 0,035 ms
APUTM 939,00 Mbps 784,00 Mbps 0,029 ms 942,00 Mbps 784,00 Mbps 0,025 ms


OPEN VPN
AES128 AES256 Blowfish
TCP UDP TCP UDP TCP UDP
Banda Banda Jitter Banda Banda Jitter Banda Banda Jitter
ALIX 13,43 Mbps 18,00 Mbps 0,052 ms 12,30 Mbps 16,00 Mbps 0,048 ms 14,67 Mbps 20,00 Mbps 0,095 ms
APU 68,20 Mbps 60,00 Mbps 0,055 ms 58,63 Mbps 55,00 Mbps 0,073 ms 79,33 Mbps 68,40 Mbps 0,057 ms
ASUTM 62,77 Mbps 75,50 Mbps 0,038 ms 56,10 Mbps 65,30 Mbps 0,064 ms 71,93 Mbps 87,10 Mbps 0,040 ms
MICROCLUSTER 80,20 Mbps 94,10 Mbps 0,026 ms 69,40 Mbps 80,25 Mbps 0,042 ms 97,10 Mbps 114,80 Mbps 0,040 ms
APUTM 135,24 Mbps 121,74 Mbps 0,024 ms 116,16 Mbps 106,88 Mbps 0,031 ms 153,79 Mbps 138,41 Mbps 0,029 ms


IPSec
AES128 AES256 Blowfish128 3DES
TCP UDP TCP UDP TCP UDP TCP UDP
Banda Banda Jitter Banda Banda Jitter Banda Banda Jitter Banda Banda Jitter
ALIX 15,27 Mbps 16,00 Mbps 0,105 ms 13,73 Mbps 14,00 Mbps 0,116 ms 14,10 Mbps 15,00 Mbps 0,106 ms 8,62 Mbps 9,00 Mbps 0,089 ms
APU 49,00 Mbps 70,00 Mbps 0,061 Mbps 45,60 Mbps 54,20 Mbps 0,028 ms 44,60 Mbps 58,20 Mbps 0,083 ms 26,53 Mbps 32,00 Mbps 0,051 ms
ASUTM 60,13 Mbps 67,20 Mbps 0,042 ms 56,03 Mbps 63,20 Mbps 0,049 ms 56,87 Mbps 66,10 Mbps 0,057 ms 34,43 Mbps 37,10 Mbps 0,042 ms
MICROCLUSTER 74,22 Mbps 80,40 Mbps 0,079 ms 68,60 Mbps 73,50 Mbps 0,064 ms 69,70 Mbps 71,30 Mbps 0,074 ms 37,80 Mbps 40,00 Mbps 0,023 ms
APUTM 109,54 Mbps 106,77 Mbps 0,039 ms 103,72 Mbps 96,06 Mbps 0,035 ms 105,99 Mbps 95,01 Mbps 0,039 ms 62,82 Mbps 54,86 Mbps 0,024 ms


IPSec
AES128 AES256 3DES
TCP UDP TCP UDP TCP UDP
Banda Banda Jitter Banda Banda Jitter Banda Banda Jitter
ALIX 15,27 Mbps 16,00 Mbps 0,105 ms 13,73 Mbps 14,00 Mbps 0,116 ms 8,62 Mbps 9,00 Mbps 0,089 ms
ALIX + Card (*) 48,33 Mbps 39,10 Mbps 0,061 ms 48,07 Mbps 39,10 Mbps 0,078 ms 48,57 Mbps 39,10 Mbps 0,049 ms
Gain [%] 216,50% 144,38% 41,90% 250,11% 179,29% 32,76% 463,46% 334,44% 44,94%

Mbps = MegaBytes por segundo.
ms = micro segundos.

(*) Estas medidas fueron tomadas usando el módulo hardware de compresión.