Tendo enfrentado (e resolvido) problemas em duas redes domésticas nos últimos tempos, estou chegando à conclusão que o usuário doméstico de Internet está mesmo condenado ao eterno sofrimento.
Links ruins, equipamentos de banda-base mal configurados (e.g. o caso do ADSL2+ versus ADSL2) e, conforme tenho constatado, os roteadores WiFi destinados a este merado consumidor.
Segue uma lista de características que fazem toda a diferença na experiência de uso da Internet, mas ninguém verifica antes de comprar, até nós mesmos macacos-velhos da área acabamos esquecendo:
Cache DNS
Para quem é leigo: DNS é uma espécie de "lista telefônica" da Internet, onde endereços como www.bla.com.br viram um endereço IP como 200.215.89.83. Por baixo dos panos, toda comunicação utiliza endereços numéricos. Como ninguém quer memorizar números, o DNS é de extrema importância.
O provedor de acesso à Internet provê o serviço DNS, mas consultá-los a cada acesso toma tempo. Além disso, a falha mais comum em links residenciais é justamente o DNS, que fica lento ou simplesmente falha.
Muitos roteadores baratinhos simplesmente repassam o endereço do DNS do provedor para cada computador da rede doméstica. Funciona, mas fica meio "pastoso", lento, porque cada consulta DNS tem de atravessar metade do país.
Um bom router faz cache DNS, ou seja, ele intermedia as consultas DNS das máquinas locais e consulta o provedor apenas quando não sabe a resposta.
Como as pessoas tendem a acessar sempre os mesmos serviços, há um enorme ganho aparente de velocidade (na verdade, o ganho real é na latência). Além disso, pequenas falhas no DNS do provedor vão passar desapercebidas.
Ideal mesmo é rodar um servidor DNS autônomo na rede local. É assim que Deus quer que você use DNS, e você deixa de depender do DNS do provedor! Infelizmente, é uma alternativa quase inviável para usuários leigos porque envolve atualização periódica da lista de "root servers".
Se seu router WiFi faz cache DNS, já é uma grande coisa. (Aceito sugestões de marcas e modelos. Como meus roteadores são todos "mexidos" com DD-WRT, não sei como os modelos "baunilha" atendem neste e noutros requisitos.)
Número de conexões simultâneas
Num router WiFi comercial, é quase impossível descobrir o número máximo de conexões simultâneas. E é um item de suma importância, em particular se você é um pirata^W usuário contumaz de P2P, Torrent, ou de Skype; ou tem muita gente pendurada na sua rede doméstica. Ou tudo isso ao mesmo tempo!
Esses dias, durante o trabalho, meio sem querer, consultei as estatísticas do meu router. Eu, sozinho, estava usando 7% da capacidade (que é de 4096 conexões simultâneas). Usando apenas um notebook e um smartphone. Se o outro computador estivesse ligado, e normalmente está, os números seriam ainda maiores. (E eu *não* sou usuário costumeiro de P2P, tirante Skype.)
Considerando que routers um poquinho mais antigos (que ainda são vendidos como novos em alguns lugares) suportam 512 conexões simultâneas, isto significa que ele mal dá conta de duas pessoas na rede. Se forem três pessoas, problemas esquisitos começam a acontecer.
O sintoma é um "enjôo generalizado" da Internet: lentidão, sites que às vezes abrem e às vezes não, sendo que isso acontece apenas com mais gente pendurada na rede ou quando o Torrent está rodando.
Alguns vírus abrem grande número de conexões. Aí, por melhor que seja o router, ele não vai dar conta. Mas se o router tiver boas ferramentas de administração, ainda faz a diferença, pois pelo menos torna fácil determinar onde está o galho.
No futuro distante, espera-se que a adoção do IPv6 vá eliminar o NAT, e com isso desaparece este limite de conexões simultâneas imposto pelo roteador. Mas, daqui até lá, é bom arrumar um router decente.
Instablidade do firmare
É perdoável que um router WiFi barato não faça cache DNS. Por outro lado, o número de conexões simultâneas deveria ser mais claramente listado nas especificações. E é criminoso por parte de um fabricante de routers meter nele um firmware com problemas primários.
Mas, infelizmente, é o que mais há por aí, routers com firmware ruim, que travam só porque o usuário abriu e-mail e Skype quase ao mesmo tempo...
Vamos combinar que realmente não é fácil desenvolver um sistema operacional com suporte decente e estável a TCP/IP. É resultado de anos de desenvolvimento e testes. No frigir dos ovos, só existem duas opções de sistema decente para rede: alguma variante de Linux, ou alguma variante de BSD. Alguns diriam que só há mesmo uma opção: BSD. Outros diriam que sistemas dedicados como o IOS da Cisco ainda "se salvam".
Isto eu constatei empiricamente. Há muitos anos atrás, eu ganhava a vida instalando servidores Linux, aqueles famosos "faz-tudo", não raro usando um PC velho . Você botava 40 usuários compartilhando uma ADSL de 1 mega, e funcionava bem. Aí você tem uma ADSL de 2 mega em casa e vive dando problemas, e a velocidade está sempre "pastosa".
A culpa é daquele seu roteador barato, rodando um sistema operacional proprietário, obscuro, mal testado.
Noutro nível, também vejo que dispositivos comerciais "parrudos", como firewalls ou balanceadores de carga via de regra têm um coração Linux ou BSD. (Aliás, o mesmo acontece com celulares, tablets, computadores...)
A justificativa oficial é que sistemas proprietários usam menos memória. O que eu não entendo é: qual a vantagem monetária de fabricar um router com 8MB de RAM em vez de 32MB? Ou mesmo 128MB? Tornar um produto quase imprestável para que custe 5% mais barato...
Bem, e como se defender? O cara da loja não vai te deixar levar o roteador para fazer um teste decente. O jeito é buscar informações de outros usuários, ou pegar emprestado de alguém para brincar. Outro jeito é escolher um modelo que aceite DD-WRT ou Tomato (variantes de Linux), o que corta o problema pela raiz.
Matando mosca com tiro de canhão
Os firmwares WRT/Tomato da vida, baseados em Linux, atendem aos requisitos que enumerei antes: tem cache DNS, suportam bom número de conexões simultâneas (desde que o router tenha bastante RAM) e são muito estáveis.
Uma coisa chata é que são ambientes Linux completamente diferentes do "normal". Coisas como atualizar o sistema ou compilar um pacote a partir do código-fonte, triviais no Linux convencional, podem ser incrivelmente complicadas nas variantes para router Não só complicadas, mas também cheias de pajelanças e truques mágicos.
Na minha "senzala digital", eu usava o DD-WRT como router e era bom, mas me aborreci tentando fazer IPv6 funcionar nele, e acabei comprando um netbook para fazer as vezes de roteador. O chifrudinho WiFi continua lá, rodando DD-WRT, mas apenas na função de access point. (Não fui tabajara a ponto de usar o netbook como access point...)
Reconheço que esta é uma solução inviável para o usuário doméstico leigo, devido à necessidade de manutenção e suporte, mas ainda é a que proporciona melhor experiência de navegação.
Na minha "outra" rede, uso um roteador WiFi "chipado" com DD-WRT, também com bons resultados, muito melhor que o router Edimax 6204Wlg que ele substituiu.
Se você for rico, compre um roteador WiFi de qualidade profissional, e provavelmente não terá incômodos. Imagino que os AirPort da Apple também sejam bons, pelo menos quem os possui não reclama (talvez porque rodam BSD? :)
Outras coisas a evitar na rede doméstica
WDS: é coisa do capeta! É tentador e parece funcionar num teste preliminar, mas na prática vive dando problemas, e inclusive alguns computadores parecem ter incompatibilidade com esta tecnologia.
Se precisar distribuir o sinal wireless por uma área muito grande, digne-se a "trilhar o caminho estreito da retidão" e puxe um cabo de rede. Palavra de quem já tentou usar WDS duas vezes e desistiu duas vezes.
Ficar mexendo nos parâmetros wireless para tentar aumentar o alcance: você vai cometer erros e "sair do ar" muitas vezes antes de chegar a uma configuração -- que melhorará marginalmente, mas não resolverá, seu problema.
Conclusão
Infelizmente, como eu disse antes, não estou em condições de recomendar esta ou aquela marca/modelo de roteador. Nem mesmo os roteadores "chipados" à venda no Mercado Livre passaram muita confiança. Comentários esclarecedores são bem-vindos.
Os fabricantes continuam "embolando" o processo de seleção de um modelo que aceite DD-WRT ou Tomato. Até atualizações menores (tipo v6 x v6.1) podem impedir a troca de firmware.