Je construis un serveur pour agir en tant que routeur de frontière BGP pour ma liaison montante de 100 Mbps dans ISP.
J'ai besoin de ces fonctionnalités:
1) Peering / routage BGP à double pile (au moins 100 Mbps, peut-être plus). 2) Flux BGP Internet complet potentiel. 3) Quelques fonctionnalités ACL de base.
Le matériel est un vérin L3426 / 8G. La carte réseau sera intégrée au Broadcom 5716 à double port.
J'ai beaucoup travaillé avec Linux auparavant et il semble être capable de gérer 100 Mbps, mais j'ai entendu que FreeBSD est plus rapide sur les choses en réseau. Lequel devrais-je utiliser? Et avons-nous des chiffres de référence de performance?
À votre santé.
linux
networking
performance
bgp
petrus
la source
la source
Réponses:
Nous faisons exactement cela pour les infrastructures critiques depuis de nombreuses années. Nous prenons trois flux BGP complets en amont via Quagga
bgpd
et il utilise un énorme 658 Mo de RAM pour exécuter l'ensemble du système. À cet effet, Debian est beaucoup plus solide que les autres OS selon notre expérience (et il a également besoin de moins de mises à jour de sécurité avec son empreinte d'installation minimale, provoquant beaucoup moins de redémarrages que les deux autres OS que nous avons essayés). Nous utilisons Ksplice , nous ne démarrons donc que pour les mises à jour critiques des packages. Ne vous inquiétez pas du tout de la compatibilité avec les autres fournisseurs de votre FAI ... RIPE the RIR use Quagga!Étonnamment, le matériel n'est pas si important, il s'agit uniquement des cartes réseau. Les processeurs rapides signifient simplement que les préfixes se chargent plus rapidement si vous actualisez les sessions (en supposant que vous avez un Go de RAM et qu'ils se chargent en mémoire), donc un Quad Core d'entrée de gamme est massivement sur-spécifié. Nous avons passé beaucoup de temps à essayer différentes cartes réseau et, selon notre expérience, les meilleures cartes Intel utilisent le
igb
pilote (pour environ 100 £ / carte réseau, nous utilisons le: 82576, ET Dual Port Server Adapter) avec lee1000
venant en second. Il y a quelques considérations comme la façon dont vos NIC d'entrée et de sortie communiquent avec la carte mère, mais pour les sous 250Mbps, vous ne remarquerez probablement pas si vous utilisez ces NIC. Nous avons repoussé une attaque DDoS UDP sophistiquée en utilisant cette architecture (elle a utilisé les plus petits paquets UDP que les routeurs ont du mal à gérer). Gardez à l'esprit que vous pouvez traiter le plus grand nombre de paquets et pas nécessairement le débit, mesuré en Mbps. Pour très peu d'argent, nous avons spécifié un routeur multirésident Gigabit qui peut gérer des paquets de taille Internet standard, c'est-à-dire un fonctionnement normal, jusqu'à 850 Mbps!J'ai commencé avec Cisco (
bgpd
la configuration de est presque identique, donc si vous avez de l'expérience avec le kit Cisco, c'est une transition très rapide) mais parce que Linux est tellement malléable (par exemple, être capable d'ajouter quelques scripts à faibles ressources à vos routeurs pour aider avec les rapports et l'administration) à mon humble avis, il est incroyablement puissant (et sous-estimé) pour ce type de configuration. Vous ne pouvez pas vous tromper en lisant certaines des archives de la liste de diffusion Nanog si vous avez encore un doute ou si vous avez besoin d'aide.Cela devrait vous permettre de démarrer assez rapidement sur Debian: Tutoriel Easy Quagga
la source
tc
la courbe d'apprentissage initiale de tc. Un avertissement est cependant que l'exécution d'IPtables sur votre boîte de transfert réduit considérablement les performances du noyau lors des attaques par rapport à ce que nous avons vu.Ce sont deux plates-formes capables. Exécutez quelque chose de solide comme Debian ou Centos, sur un matériel de bonne qualité serveur. Assurez-vous de spécifier des serveurs avec des cartes réseau Intel Server, ils sont bien meilleurs que Broadcomm pour la stabilité.
En ce qui concerne BSD vs Linux, c'est facile. Choisissez celui avec lequel vous êtes le plus compétent.
la source
J'ai vu de vieux Celerons gérer 80 à 90 Mo / s de trafic normal sur une configuration Debian / Quagga avec 3 flux complets sans même casser une sueur. Cependant, le qualificatif est un trafic "normal", principalement HTTP / SMTP et DNS. Les mêmes machines sont tombées à plat sur leur visage lors de situations DDOS où les paquets par seconde sont allés à un nombre ridicule de paquets principalement UDP.
Ce n'est normalement pas la bande passante dont vous devez normalement vous inquiéter, mais le PPS que vous manipulerez.
Malheureusement, je ne peux pas vous aider sur le Linux VS BSD pour le routage des performances partie de la question, mais cela ne devrait pas faire de différence sur le matériel actuel pour quelques connexions de 100 Mo.
la source
Quagga (Zebra) fonctionne à la fois sur Linux et BSD. Les performances de mise en réseau de Linux ne sont pas pires que celles de BSD. Donc, il vous reste à considérer des critères supplémentaires pour choisir la plate-forme.
la source
Point de données:
J'exécute une paire de serveurs Dell R200 sur Fedora, dont l'un a vu un pic de 500 Mbps avec NAT, iptables, LVS, quagga, bgpd sur une liaison 1GigE. À 100 Mbps, tout matériel moderne devrait bien fonctionner. Pour gérer des tables complètes, vous devriez pouvoir consulter les exigences de RAM correspondantes de Cisco ou de Juniper et y aller. 1 Go de RAM devrait suffire même sans filtrage. Mes routeurs fonctionnent avec 2 Go configurés mais je ne prends que des routes par défaut.
la source