Antes de chegarmos aos detalhes sobre como implementar uma gateway inteligente com suporte para múltiplos circuitos de acesso à Internet, interessa ver quais os pré-requisitos para implementar um acesso de qualidade.
As nossas sugestões para acessos ADSL são as seguintes:
- hardware certificado
- bridged mode
- QoS
Começando pelo hardware: desde que este tipo de equipamento se tornou uma commodity nasceram como cogumelos diferente marcas e modelos dos mais diversos fabricantes, com o respectivo decréscimo de preço e o lamentável descréscimo de fiabilidade.
Por esta razão,
a atitude amadora habitual de "vou comprar ali um modem à FNAC" deverá ser a primeira a morrer se o objectivo é prestar um serviço fiável. A nova atitude deverá ser "vou comprar ali um modem à FNAC, optando preferencialmente por um modelo dos oferecidos por um operador e fazer testes de certificação, findos os quais comprarei uma pilha de modems exactamente iguais para garantir a repetibilidade do processo".
(uma desilução para os que pensaram que iríamos criticar a FNAC)
Os modelos fornecidos pelos operadores de telecomunicações têm habitualmente boa qualidade, pois o próprio operador já efectou testes e ao contrário do que se pensa funcionam independentemente da rede do operador desde que em bridged mode.
A importância do bridged mode resume-se a três factos:
- o modem passa a executar uma tarefa simples (bridging) deixando a parte complexa para o kernel Linux, o qual funciona sem problemas de estabilidade
- o IP público fica directamente acessível à gateway Linux com toda a flexibilidade que isso acarreta
- a configuração torna-se independente do equipamento uma vez que todos os modems em bridging se comportam da mesma maneira (isto permite fazer subsituições de equipamento sem nenhuma alteração na gateway o que minimiza a demora e os riscos da substituição)
Finalmente, falemos um pouco do QoS (Quality of Service), expressão aproximadamente equivalente a Traffic Shapping, Diffserv ou como melhor se diria em portugês: tráfego diferenciado.
Quando se partilha um acesso à Internet é habitual haver falta de largura de banda, períodos de consumo em burst e tráfego heterogéneo.
Sem uma configuração com trágego diferenciado na gateway os utilizadores que façam downloads ou uploads em volume irão facilmente inviabilizar o trabalho dos que necessitam de fazer navegação web ou usar sessões interactivas de shell. Isto acontece porque quando a linha fica saturada (no sentido up, down ou ambos) formam-se filas de espera de pacotes no equipamento as quais podem demorar vários segundos a ser processadas, deixando que efectivamente o tráfego não urgente (downloads/uploads) degrade a performance do tráfego urgente (entenda-se tráfego urgente aquele face ao qual o utilizador espera uma resposta imediata para prosseguir, tal como navegação web ou utilização de sessões ssh).
A atitude amadora de "resolução" é-nos certamente familiar ("parem lá com os downloads que não se consegue trabalhar" / "ninguém aqui está a fazer downloads, se não queres trabalhar não inventes"). A forma eficaz de resolver o problema é a configuração correcta na gateway.
Felizmente o kernel de Linux permite-nos fazer configurações muitíssimo sofisticadas e este nível, com um gigantesco impacto na usabilidade do acesso.Ficam aqui algumas referências interessantes sobre este tema:
ADSL OptimizerADSL Bandwidth-Management HOWTOe um script que permite resolver o problema em casos simples:
HTB_shaper_basic.shNota:
Este assunto já tinha sido abordado nesta
apresentação, onde foram referidos alguns exemplos de equipamento certificado.