He estado buscando un nuevo enrutador 'núcleo' para colocar en nuestro nuevo bastidor que se colorea en un centro de datos cercano. Lo que he encontrado es la línea habitual de Cisco / Juniper / Brocade, con los puntos de precio poco atractivos habituales; y me preguntaba qué pasaría si usara un enrutador de software (como pfSense o una opción propietaria / comercial) en una caja decente de 2U y coloque algunas NIC en ella.
Mis requisitos para el enrutador son los siguientes:
- Ejecute BGP (obviamente) y pueda almacenar al menos una tabla de enrutamiento de Internet completa (~ 460,000 rutas), preferiblemente dos tablas de enrutamiento de Internet completas si decido realizar varias viviendas
- Tener un rendimiento de al menos 1 Gbps (más para escalabilidad, pero no importante en este momento)
Estos requisitos podrían ser manejados fácilmente por un enrutador de software decente en una caja decente con buenas NIC y> 2 GB de memoria, ¿no? Si es así, (aparte de la marca), ¿qué es lo que hace que los sistemas Cisco / Juniper / Brocade sean tan caros?
Respuestas:
Por nombrar algunas cosas: desarrollo, pruebas de mantenimiento y soporte de software y hardware y, por supuesto: marketing y ganancias. Además, estos proveedores usan ASIC dedicados para que el reenvío de paquetes (entre otras cosas) se realice en hardware en lugar de software. Básicamente, compra una caja que está optimizada para una tarea: enrutamiento, lo que significa que todo el código y el hardware han sido probados para eso.
Los enrutadores de software a menudo están bien, especialmente si no tiene un gran presupuesto o simplemente necesita construir una configuración de laboratorio. Sin embargo, si se encuentra con problemas, existe la posibilidad de que usted mismo se dé cuenta si es el software de enrutamiento, su hardware, el kernel u otra cosa. No digo que esto sea algo malo (algunos de estos proyectos tienen muchos usuarios activos), es solo algo a considerar.
Por cierto, un feed BGP completo tiene casi 450K prefijos IPv4 por ahora, y casi 13K IPv6. Si estuviera construyendo un enrutador de software, investigaría qué NIC usar y cómo optimizarlos y pondría mucho más de 2G de RAM en la caja.
fuente
Una ventaja de un enrutador de software es que el tamaño de RIB / FIB solo está limitado por la RAM en el hardware, que es barato y fácilmente actualizable. Los enrutadores ASIC a menudo tienen otras limitaciones, como el tamaño / asignación de TCAM. El rendimiento de enrutamiento de los enrutadores de software en el estadio GigE es comparable a los enrutadores basados en ASIC.
Una desventaja importante es que los enrutadores de software no son capaces de resistir los ataques DDoS en ningún sentido significativo: muchos paquetes pequeños significan muchos cambios de contexto y el enrutador morirá rápidamente por agotamiento de la CPU.
fuente
Si realmente desea utilizar una solución basada en software, optaría por la plataforma Vyatta. Puede ejecutar BGP por usted, así como ejecutar varios otros protocolos si es necesario. Echa un vistazo a Vyatta gratis vs pago que compara la versión gratuita con la versión paga.
fuente
Para su información, la mayoría de los demonios de enrutamiento de código abierto funcionan bien en el plano de control, pero la cantidad de rendimiento que obtendrá dependerá en gran medida de qué tan bien ajuste su sistema operativo y qué NIC decida poner en la caja. Estoy de acuerdo con la recomendación de mirar a Vyatta. BIRD y Quagga también son opciones, si también necesita la casilla para participar en un IGP además de BGP. Quagga / BIRD pueden hacer OSPF decentemente, pero AFAIK si necesita ISIS, muchos de los demonios de enrutamiento de código abierto todavía están trabajando en eso.
fuente