Pode um computador médio configurado como um roteador suportar qualquer número de usuários (clientes conectados)? [fechadas]

1

Estou planejando instalar um roteador para uma quantidade bastante grande de usuários (50-100), e descobri que os roteadores domésticos são muito instáveis para esse grande número de dispositivos.
Ao pesquisar, encontrei este relatório sobre o tipo de roteador da Cisco que devo usar em função do número de clientes conectados .

Mas tenho um computador que não estou usando no momento e suas especificações não são ruins:

  • Intel i5.
  • 8 GB de RAM.
  • Disco rígido SSD de 128 GB para o sistema operacional.
  • Disco rígido adicional padrão para dados.

Eu já consegui instalar o Ubuntu Linux Server com Zentyal , e parecia trabalhar durante meses como um roteador com NAT e outros recursos extras (firewall, balanceamento de carga, estatísticas ... etc). Eu queria saber se isso vai fazer o trabalho desta vez em vez de precisar comprar dispositivos Cisco tão caros (> 1.500USD para 50 clientes).

Então, minhas perguntas são:

  • Um computador decente pode ser configurado como um roteador de gateway (eu preferiria que funcionasse como um servidor NAT e DHCP pelo menos) que suportaria um grande número de computadores conectados? Quantos?
  • Se você adicionar Firewall, Traffic Shaping, Port Forwarding, VPN ou outros serviços extras , diminuiria o número de computadores conectados suportados? Quanto?

Nota:

  • Não estamos falando de clientes sem fio. Apenas conexões por cabo .
por Sopalajo de Arrierez 17.11.2015 / 00:41

2 respostas

2

Eu usei um antigo Pentium 4 3GHz com 2 GB de RAM como um roteador + firewall para mais de 500 usuários com uplinks gigabit full-duplex em todas as direções (nós até tivemos serviço de internet de 1 Gbps), e ele nunca deu uma batida.

O equipamento da Cisco é robusto, mas não muito poderoso, considerando quão odiosos são seus termos e preços. Então, eu não ficaria assustado com os números que eles estão descartando como diretrizes de provisionamento.

Se você quiser fazer qualquer coisa além do roteamento puro (firewall, NAT, DHCP, etc.) na mesma caixa, fique longe do Linux. O Iptables / netfilter é um desastre. Eu usaria o OpenBSD bruto, ou uma distribuição de firewall baseada em BSD como o OPNsense ou o pfSense.

    
por 17.11.2015 / 08:15
2

Se você só precisa fazer roteamento, então tudo se resume a uma pergunta: quantos pacotes por segundo o processador pode processar.

Para fazer o teste de carga, você pode colocar um switch em cada lado e conectar alguns computadores a cada switch para gerar tráfego. Em seguida, meça o número de pacotes pelos quais você pode passar. Você deve realizar pelo menos três medições - uma com pacotes de tamanho mínimo, uma com pacotes de tamanho máximo e outra com uma mistura representativa.

Isso lhe dará medições de quanto tráfego ele pode manipular. Quantos usuários ele pode manipular depende de quanto tráfego cada usuário precisa.

A desvantagem comparada a um roteador real é que ele terá que fazer todo o roteamento na CPU, o que pode se tornar um gargalo. Mas, desde que você saiba como pode lidar com mais pacotes por segundo do que o necessário, isso não será um problema.

Depois de adicionar tarefas que exigem processamento adicional, os requisitos de CPU e memória serão aumentados. Essas tarefas podem ser NAT, firewall, DPI, proxy, etc. Isso tornará mais difícil testar sua configuração porque o tempo de processamento de cada pacote variará muito mais do que se você precisasse de roteamento.

Em alguns casos, essas tarefas avançadas podem dar ao seu computador uma vantagem em comparação a um roteador real. O roteador real tem um chip especializado para rotear pacotes e nada mais. Se a maioria dos pacotes a serem roteados exigir processamento muito complicado para esse chip especializado, o roteador perderá sua vantagem. E então tudo se resume à CPU, e seu computador pode ter uma CPU mais poderosa do que o roteador que você estaria usando.

Qualquer processamento com estado vai tornar a situação ainda mais complicada. Qualquer funcionalidade de NAT, firewall e proxy geralmente é implementada de maneira estável. Para esses, a quantidade de memória é importante, e importa por quanto tempo o estado é mantido na memória. Todo roteador com manipulação de pacotes com monitoração de estado é um obstáculo à confiabilidade. Não há uma resposta única sobre como superar esses obstáculos.

Nenhum dos requisitos mencionados exigiria qualquer quantidade significativa de armazenamento. Para confiabilidade, eu teria a inicialização da máquina a partir de um RAID-1 entre as duas unidades. Quanto ao desempenho, isso não deve fazer diferença, uma vez que, assim que a máquina inicializa, dificilmente deve tocar novamente no armazenamento.

A execução de um servidor DHCP não exigirá muita potência de processamento. Com todos os outros requisitos que você já tem, adicionar um servidor DHCP é uma tarefa tão pequena que você provavelmente não notará qualquer diferença nos requisitos da máquina.

    
por 17.11.2015 / 09:07