Calculo de link
Autor: Patrick Brandão
E-mail: contato@tmsoft.com.br
Copyright: Proibida a cópia ou reprodução do conteúdo ou parte dele, exceto se o nome do autor, e-mail e este aviso constarem na cópia.

Uma pergunta feita com muita frequencia por pessoas que desejam iniciar uma rede ou um provedor de internet é: Qual o tamanho indicado para o link de internet?

Irei expor abaixo alguns fatores fundamentais que devem ser usados para analisar a demanda e a dimensão do link.

Nota importante: todos os valores de links são dados em kbit/s, que é a notação correta. Transferencia de arquivos e medições via software/aplicativo são dadas em kbytes. 1 byte equivale a 8 bits, para se obter o valor em kbytes, deve-se dividir o valor em bits por 8.
Um link de 1024kbit/s provê o equivalente a 128KBytes em uma tranferência de arquivos, no máximo, em aplicações reais não se deve ignorar o overhead.

O principio de tudo e os calculos básicos

Quando a internet começou a ser distribuida para usuários residenciais por meio de conexões discadas, o tipo de conteúdo acessado na internet era moldado para esse tipo de conexão, algumas características marcantes dessa época:

- as páginas de internet usavam poucas imagens e raramente ultrapassavam 30Kbytes de texto html.
- não existia plug-in de flash, tampouco videos sob demanda.
- não existia spam
- não existia P2P
- não existia orkut, Youtube, entre outras bobagens, MSN era fora de moda e o ICQ só transferia texto.
- os arquivos enviados em anexo eram pequenos.
- os usuários eram pacientes e sabiam alguma coisa sobre computador.
- e o mais importante: internet era opção e luxo.

Uma conexão discada atingia no máximo 52Kbits por segundo (ou 6,5 Kbytes por segundo de download). A média era 48Kbits por usuário.
Quem tinha dinheiro conseguia pagar ISDN, e conseguia 128kbit/s usando 2 linhas.
Ao navegar na internet, um usuário esperava de 2 a 10 segundos para uma página ser carregada, e demorava em média 30 segundos para lê-la.

No tempo que ele estava "processando" o conteúdo adquirido, o elo entre ele e a internet ficava ocioso. O pulso cobrado pela ligação poderia sair caro na conta telefonica.
Sendo assim, se o provedor de internet, por sua vez, tambem estivesse conectado a internet ou backbone com um link de 48kbit/s e atendesse apenas esse cliente, o link externo ficaria ocioso por 80% do tempo, ou 100% ocioso na maior parte do dia. Considerando que todos os usuários de internet possuiam o mesmo perfil de navegação, o provedor poderia com um link de 48kbits, atender outros 10 clientes de 48kbits, aproveitando assim a ociosidade do link. Caso mais de um usuário iniciasse um download, haveria uma divisão natural da velocidade, ficando cada um com uma parcela justa do link principal do provedor.

Então, o provedor com um link de 48kbit/s poderia atender 10 usuários conectados a 48kbit/s cada um, e nem por isso a internet ficaria ruim. Esse calculo de usuários on-line recebe uma notação: 10: (dez para um).

Considerando que na época apenas 10% dos clientes cadastrados ficavam on-line simultaneamente no horário comercial, o provedor poderia ter 100 clientes e continuar oferecendo internet de qualidade.

Se os 20 usuários se conectassem e iniciassem um download, cada um seria limitado 5% da velocidade contratada. Esses "5%" seriam a garantia de link.
Se os 10 usuários se conectassem e iniciassem um download, cada um seria limitado 10% da velocidade contratada. Esses "10%" seriam a garantia de link.
Se os 5 usuários se conectassem e iniciassem um download, cada um seria limitado 20% da velocidade contratada. Esses "20%" seriam a garantia de link.
Assim, a garantia de link que um provedor pode oferecer é obtido atravéz da função:
garantia = 100 x (velocidade_do_link / (usuarios_on_line x velocidade_unitária))
A velocidade unitária é a menor velocidade vendida, mas considere o seguinte exemplo:

- um provedor vende acessos de 64kbit/s e 128kbit/s, atravéz de ISDN.
- no horário de pico há on-line: 40 usuários de 64k e 80 usuários de 128k.
- em vez de considerar que há 120 usuários on-line, devemos utilizar, para o cálculo, com base na menor velocidade, que há 200 usuários on-line, uma vez que cada usuário de 128k consome o dobro de um usuário de 64k.
Se o provedor em questão tivesse um link de 1 Megabit/s, a função de garantia ficaria assim:
Função: garantia = 100 x (velocidade_do_link / (usuarios_on_line x velocidade_unitária))

Variáveis: velocidade_do_link = 1024 kbit/s usuário_on_line = 200 velocidade_unitária = 64 kbit/s
Resolvendo: garantia = 100 x (1024 / (200 x 64)) garantia = 100 x (1024 / 12800) garantia = 100 x 0,08 garantia = 8
Resultado: o provedor só pode garantir ao usuário final 8% da velocidade vendica com base no horário comercial.
Se o dono do provedor, baseando-se na estátistica dos últimos meses, constatasse que apenas 25% dos usuários ficam on-line simultaneamente, ele poderia adquirir até 800 clientes cadastrados com um link de 1 Mega (1024 kbit/s). Porém a notação em questão é de 16:1, considerada alta para um link de 1 Mbit/s.

Garantias inferiores a 5% tentem a colocar um provedor de internet em estado crítico.
Garantias acima de 50% indicam ociosidade no link, e boa qualidade no fornecimento de internet.

Para dimensionar o tamanho necessário de link baseando-se na quantida de clientes que deseja atender, as únicas variáveis necessárias são: quantidade média de usuários on-line no horário de pico e a garantia de link que deseja oferecer. Use a função abaixo:
Função: velocidade_link = (garantia_de_link / 100) x (media_de_usuários_on_line x velocidade_unitária)

Variáveis: media_de_usuários_on_line = 500 garantia_de_link = 15 (%) velocidade_unitária = 128 kbit/s
Resolvendo: velocidade_link = (15 / 100) x (500 x 128) velocidade_link = 0.15 x 64000 velocidade_link = 9600
Assim, para atender a 500 usuários com velocidades de 128kbit/s garantindo 15% de banda, o provedor necessitará de um link de 9.6 Megabit/s.
Se a garantia fosse reduzida para 5%, o link necessário seria de 3.2 Megabit/s.

Para se obter a notação usada numa rede, use a função abaixo:
Função:
unidades_reais = (velocidade_link / velocidade_unitária)
notação = (media_de_usuários_on_line / unidades_reais)


Variáveis: media_de_usuários_on_line = 500 velocidade_link = 3200 kbit/s velocidade_unitária = 128 kbit/s
Resolvendo: unidades_reais = (3200 / 128) unidades_reais = 25 notação = 500 / 25 notação = 20
Resultado: Um link de 3.2 Mbit/s fornece 25 unidades reais de 128kbit/s, em cada unidade real de 128kbit/s há 20 clientes, logo a notação do nosso provedor exemplo é de 20:1 (vinte para um) - um pouco superfaturado!

Em uma boa notação, iniciando em 8:1, coloque 2 notações a cada 1 Mbit de link. Exemplo:
Link de 1 Mbit/s: 8:1
Link de 2 Mbit/s: 10:1
Link de 4 Mbit/s: 14:1

A cálculo de garantia é redundante em relação ao cálculo de notação, use o que gostar mais.

Questões importantes da atualidade

As notações e funções utilizadas foram inventadas na época da internet discada, hoje um usuário de internet tem tendencias bem diferentes, e os tipos de serviços oferecidos na internet aumentam consideravelmente sua permanencia on-line, e o consumo de banda aumenta significativamente.

Um exemplo prático: Assistir um video no youtube com exibição em tempo real requer banda de 600kbit/s. Um usuário de 300Kbit/s quer assistir um vídeo de 90 segundos, isso significa que, para assistir o video todo, ele consumirá 100% dos 300kbit/s por um intervalo de 180 segundos (3 minutos).
Provedores tem, em média, links de 4 megabit/s, assim, basta que 14 usuários de 300kbit/s assistam videos simultaneamente para que 100% do link principal seja comprometido.
Se nesse momento outros usuários estiverem utilizando a internet para outros fins e gerando fluxo de dados, os usuários televisivos terão que aguardar muito mais ara assistir seus videos, porem manterão o máximo de consumo disponível na rede até que o video seja exibido.

Outro grande vilão é o P2P. Protocolos de compartilhamento de arquivos como E-mule, Bittorrent são usados para fazer downloads de videos, músicas entre outros, em sua maioria ilegal. Ao iniciar o uso desses aplicativos, os usuários tendem a desenvolver um tipo de comportamento obsessivo-compulsivo por downloads, os efeitos colaterais para o provedor de internet são:
- Aumento significativo de permanencia on-line, influenciando drasticamente o calculo de garantia de banda.
- Consumo de 100% da banda vendida ao cliente por todo o tempo que ele estiver on-line.

Soluções para contornar fatores de risco no consumo de link

- Proxy-cache HTTP
Vantagem: Software capaz de armazenar sites e seus componentes (imagens e scripts) no servidor (disco ou ram). Garante que no segundo acesso a um mesmo conteúdo por qualquer cliente da rede, o conteúdo armazenado em cache seja enviado, em vez de buscá-lo na internet, economizando o consumo de link.
Desvantagem: aplica-se apenas ao protocolo HTTP. Raramente consegue ganhos superiores a 40% no protocolo HTTP.

- Proxy-cache HTTP especial
Vantagem: Permite que o proxy-cache HTTP faça cache de conteúdo dinâmico, como videos, atualizações de softwares (Windows, Anti-virus, etc..). Softwares mais comuns: Super-Cache (comercial, presente no MyAuth3), cachevideos.com (GNU/GPL), ThunderCache (GNU/GPL).

- Controle de conexões TCP simultaneas
Vantagem: Usuários normais abrem 10 janelas no windows, no máximo 20. Isso significa entre 20 e 60 conexões TCP (alguns sites tem banners, javascript, flash para outros sites). Softwares de P2P abrem no mínimo 50 conexões por arquivo, o que significa que o usuário de P2P precisa de muitas conexões TCP para baixar os arquivos. Limitar cada cliente a 70 conexões TCP fará com que o software de P2P não consiga estabelecer todas as conexões necessárias, e os downloads serão realizados em baixa velocidade.
Desvantagem: Quando o limite de conexões for atingido, as novas conexões são recusadas, um cliente com virus ou spyware consumirá essas conexões, e o cliente não conseguirá usar a internet.

- Controle de volume
O controle de volume é com certeza é o futuro de todo provedor de internet. Todas as operadores que oferecem acesso a internet com 3G já a utilizam.
Vantagem: Nessa técnica cada usuário tem o volume de tráfego controlado pelo servidor do provedor, e após ultrapassar esse volume, o acesso é negado ou o cliente é reduzido a uma velocidade bem inferior a contratada. A técnica tende afetar apenas os usuários que consomem muita banda, pois atingirão o limite rapidamente, enquanto que os usuários normais raramente chegarão perto de consumir o volume proposto. Normalmente o limite fica entre 2 Gigabytes por mês.
Desvantagem: Limita a venda de internet a pessoa física, uma vez que pessoa juridica consegue chegar ao limite mesmo utilizando internet para fins profissionais.


Quando aumentar o link

Uma arma indispensável para um provedor de internet é o controle estatístico. Ter em sua frente uma tela com indicadores de consumo, estatísticas de uso do link principal e do perfil de navegação dos usuários e entendê-los garantirá ações eficientes para oferecer uma boa conexão ao usuário final.

Acompanhe o gráfico de consumo do link constantemente, um indicador que seu link já atingiu o limite é se ele ficar quadrado no horário comercial, haverá a formação uma planície no alto da montanha, quanto mais larga for essa planície, mais crítica estará a situação.

No gráfico a seguir, o link é de 14 megabit/s e não há formação de planície, o que indica que o link ainda suporta mais clientes.

Agora, acompanhando o mesmo link num gráfico que aborda o último ano:

Podemos ver que o consumo há 7 meses era em torno de 6 mbit/s, e cresceu 4 megabit/s até o mês atual.
Nessa projeção o provedor atingirá 100% de consumo de link (14 megabit/s) nos próximos 6 meses.