Estou construindo um servidor para atuar como um roteador de borda BGP para meu uplink de 100mbps no ISP.
Eu preciso desses recursos:
1) Peering / roteamento BGP de pilha dupla (pelo menos 100 Mbps, talvez mais). 2) Potencial feed completo da Internet BGP. 3) Algumas funcionalidades básicas da ACL.
O hardware é ram L3426 / 8G. A placa de rede estará integrada na porta dupla Broadcom 5716.
Eu trabalhei bastante com o Linux antes e parece ser capaz de lidar com 100mbps, mas ouvi dizer que o FreeBSD é mais rápido em coisas de rede. Qual devo usar? E temos alguns números de benchmark de desempenho por aí?
Felicidades.
linux
networking
performance
bgp
petrus
fonte
fonte
Respostas:
Fizemos exatamente isso em infraestrutura crítica por muitos anos. Tomamos três feeds BGP upstream completos através do Quagga's
bgpd
e ele usa 658 MB de RAM para executar todo o sistema. Para esse propósito, o Debian é muito mais sólido do que outros sistemas operacionais em nossa experiência (e também precisa de menos atualizações de segurança com seu espaço mínimo de instalação, causando muito menos reinicializações do que os outros dois sistemas operacionais que tentamos). Como usamos o Ksplice , inicializamos apenas para atualizações críticas de pacotes. Não se preocupe em tudo sobre a compatibilidade com outros fornecedores no seu ISP ... RIPE o uso RIR Quagga!Surpreendentemente, o hardware não é tão importante, é tudo sobre as NICs. As CPUs rápidas basicamente significam que os prefixos são carregados mais rapidamente se você atualizar as sessões (supondo que você tenha um GB de RAM e elas sejam carregadas na memória), de modo que um Quad Core básico seja excessivamente especificado. Passamos muito tempo tentando diferentes NICs e, em nossa experiência, as melhores são as placas Intel que usam o
igb
driver (por cerca de £ 100 / NIC, usamos o: 82576, adaptador de servidor de porta dupla ET) com oe1000
chegando em segundo. Existem algumas considerações, como a maneira como as NICs de entrada e saída conversam com a placa principal, mas para sub-250 Mbps, você provavelmente não notará se as usar. Repelimos um ataque sofisticado de UDP DDoS usando essa arquitetura (ela usou os menores pacotes UDP que os roteadores lutam para manipular). Lembre-se de poder processar o maior número de pacotes é o que mais preocupa e não necessariamente a taxa de transferência, medida em Mbps. Por muito pouco dinheiro, especificamos um roteador de hospedagem múltipla Gigabit que pode lidar com pacotes de tamanho padrão da Internet, ou seja, operação normal, até 850Mbps!Comecei com a Cisco (
bgpd
a configuração é quase idêntica o suficiente, por isso, se você tem experiência com o kit da Cisco, é uma transição muito rápida), mas porque o Linux é muito maleável (por exemplo, poder adicionar alguns scripts de baixo recurso aos roteadores) para ajudar com relatórios e administração), o IMHO o torna incrivelmente poderoso (e subestimado) para esse tipo de configuração. Você não pode errar ao ler alguns dos arquivos da lista Nanog Mailing se ainda tiver alguma dúvida ou precisar de mais ajuda.Isso deve ajudar você a começar rapidamente no Debian: Easy Quagga Tutorial
fonte
tc
a curva de aprendizado inicial da tc. Uma palavra de aviso, no entanto, é que a execução de tabelas de IP na sua caixa de encaminhamento reduz significativamente o desempenho do kernel durante ataques do que vimos.Ambas são plataformas capazes. Execute algo sólido como o Debian ou o Centos, em um bom hardware de servidor. Certifique-se de especificar servidores com NICs de servidor Intel, eles são muito melhores que o Broadcomm para estabilidade.
No que diz respeito ao BSD x Linux, é fácil .. Escolha o que for mais competente.
fonte
Eu já vi Celerons antigos lidando com 80-90Mb / s de tráfego normal em uma configuração Debian / Quagga com 3 feeds completos sem nem mesmo suar a camisa. No entanto, o qualificador existe tráfego "normal", principalmente HTTP / SMTP e DNS. As mesmas máquinas caíram na cara durante situações DDOS em que os pacotes por segundo foram para números ridículos principalmente de pacotes UDP.
Normalmente, não é a largura de banda com a qual você normalmente precisa se preocupar, mas o PPS com o qual você estará lidando.
Infelizmente, não posso ajudá-lo no Linux VS BSD para rotear parte da questão do desempenho, mas isso não deve fazer nenhuma diferença no hardware comum para algumas conexões de 100 Mb.
fonte
O Quagga (Zebra) funciona no Linux e no BSD. O desempenho de rede do Linux não é pior que o do BSD. Portanto, você deve considerar critérios adicionais para escolher a plataforma.
fonte
Ponto de dados:
Estou executando um par de servidores Dell R200 no Fedora, um dos quais obteve pico de 500 Mbps com NAT, iptables, LVS, quagga, bgpd em um link 1GigE. A 100 Mbps, qualquer hardware moderno deve funcionar bem. Para lidar com tabelas completas, você deve consultar os requisitos de RAM correspondentes da Cisco ou Juniper e partir daí. 1 GB de RAM deve ser suficiente, mesmo sem filtragem. Meus roteadores rodam com 2 GB configurados, mas estou apenas tomando rotas padrão.
fonte