Estoy construyendo un servidor para que actúe como un enrutador de borde BGP para mi enlace ascendente de 100mbps en ISP.
Necesito estas características:
1) Emparejamiento / enrutamiento BGP de doble pila (al menos 100 Mbps, tal vez más). 2) Potencial de alimentación completa de Internet BGP. 3) Algunas funciones básicas de ACL.
El hardware es L3426 / 8G ram. NIC estará a bordo del puerto dual Broadcom 5716.
He trabajado mucho con Linux antes y parece que es capaz de manejar 100mbps, pero escuché que FreeBSD es más rápido en materia de redes. ¿Cuál debo usar? ¿Y tenemos algunos números de referencia de rendimiento por ahí?
Salud.
linux
networking
performance
bgp
petrus
fuente
fuente
Respuestas:
Hemos hecho exactamente esto para la infraestructura crítica durante muchos años. Tomamos tres fuentes completas de BGP ascendente a través de Quagga
bgpd
y utiliza una enorme cantidad de 658 MB de RAM para ejecutar todo el sistema. Para este propósito, Debian es mucho más sólido que otros sistemas operativos en nuestra experiencia (y también necesita menos actualizaciones de seguridad con su mínima huella de instalación, lo que provoca muchos menos reinicios que los otros dos sistemas operativos que hemos probado). Utilizamos Ksplice, por lo que solo arrancamos para actualizaciones críticas de paquetes. No se preocupe en absoluto por la compatibilidad con otros proveedores en su ISP ... RIPE the RIR use Quagga!Sorprendentemente, el hardware no es tan importante, se trata de las NIC. Las CPU rápidas básicamente significan que los prefijos se cargan más rápido si actualiza las sesiones (suponiendo que tenga un GB de RAM y se carguen en la memoria), por lo que un Quad Core de nivel de entrada está excesivamente especificado. Pasamos mucho tiempo probando diferentes NIC y, en nuestra experiencia, las mejores son las tarjetas Intel que usan el
igb
controlador (por aproximadamente £ 100 / NIC usamos el: 82576, ET Dual Port Server Adapter) con ele1000
segundo. Hay algunas consideraciones como la forma en que sus NIC de entrada y salida hablan con la placa base, pero para sub 250Mbps probablemente no se dará cuenta si usa estas NIC. Repelimos un sofisticado ataque UDP DDoS utilizando esta arquitectura (utilizó los paquetes UDP más pequeños que los enrutadores tienen dificultades para manejar). Tenga en cuenta que poder procesar la mayor cantidad de paquetes es lo que más le preocupa y no necesariamente el rendimiento, medido en Mbps. Por muy poco dinero, hemos especificado un enrutador multihomed Gigabit que puede manejar paquetes de tamaño estándar de Internet, es decir, funcionamiento normal, ¡hasta 850Mbps!Comencé con Cisco (
bgpd
la configuración es casi idéntica, por lo que si tiene experiencia con el kit de Cisco es una transición realmente rápida), pero porque Linux es muy maleable (por ejemplo, puede agregar algunos scripts de bajo recurso a sus enrutadores). para ayudar con los informes y el administrador), en mi humilde opinión, es increíblemente poderoso (y subestimado) para este tipo de configuración. No puede equivocarse mucho leyendo algunos de los archivos de la lista de correo de Nanog si todavía tiene alguna duda o necesita más ayuda.Esto debería ayudarlo a comenzar bastante rápido en Debian: Tutorial de Easy Quagga
fuente
tc
después de la curva de aprendizaje inicial de tc. Sin embargo, una advertencia es que ejecutar IPtables en su cuadro de reenvío reduce significativamente el rendimiento del kernel durante los ataques de lo que hemos visto.Ambas son plataformas capaces. Ejecute algo sólido como Debian o Centos, en un buen hardware de calidad de servidor. Asegúrese de especificar servidores con NIC de servidor Intel, son mucho mejores que Broadcomm para la estabilidad.
En cuanto a BSD vs Linux, es fácil. Elija el que sea más competente.
fuente
He visto viejos Celerons manejando 80-90Mb / s de tráfico normal en una configuración Debian / Quagga con 3 alimentaciones completas sin siquiera sudar. Sin embargo, el calificador allí es el tráfico "normal", principalmente HTTP / SMTP y DNS. Las mismas máquinas cayeron de bruces durante situaciones DDOS en las que los paquetes por segundo fueron a números ridículos de paquetes principalmente UDP.
Normalmente no es el ancho de banda del que normalmente debe preocuparse, sino el PPS que manejará.
Desafortunadamente, no puedo ayudarlo con el BSD de Linux VS para el rendimiento del enrutamiento, parte de la pregunta, pero no debería hacer ninguna diferencia en el hardware actual para algunas conexiones de 100Mb.
fuente
Quagga (Zebra) funciona tanto en Linux como en BSD. El rendimiento de red de Linux no es peor que el de BSD. Por lo tanto, debe considerar criterios adicionales para elegir la plataforma.
fuente
Punto de datos:
Estoy ejecutando un par de servidores Dell R200 en Fedora, uno de los cuales ha visto un pico de 500 Mbps con NAT, iptables, LVS, quagga, bgpd a través de un enlace 1GigE. A 100 Mbps, cualquier hardware moderno debería funcionar bien. Para manejar tablas completas, debe poder consultar los requisitos de RAM correspondientes de Cisco o Juniper e ir desde allí. 1 GB de RAM debería ser suficiente incluso sin filtrado. Mis enrutadores funcionan con 2 GB configurados, pero solo estoy tomando rutas predeterminadas.
fuente