Estabilidade e continuidade em conexões 3G usando o "ping"

Publicado por j g meinhardt em 17/03/2011

[ Hits: 22.233 ]

 


Estabilidade e continuidade em conexões 3G usando o "ping"



Para todos aqueles que sofrem com instabilidade e, mesmo corte de sinal usando modem Banda Larga 3G, a solução caseira mesmo antes de começar a "futricar" nas configurações e talvez até piorar a situação possivelmente seja partir para o uso do "ping".

Já faz muito tempo que não precisava usar o velho "ping" para manter o sinal ou garantir alguma largura de banda decente, como nos tempos da internet por conexão discada com modem 33,3 ou 56kbps.

Agora com a volta do uso das conexões discadas para os modems Banda Larga 3G, além do problema da disponibilidade de sinal 3G variando por localidade, e muitas vezes só se consegue conectar com EDGE (2G). A conexão, dependendo da densidade de tráfego, não é constante e inclusive há cortes frequentes de sinal.

Já havia pensado em usar o velho comando ping -i mais parâmetro de tempo mais o nome de um site conhecido (exemplo: ping -i 15 google.com), mas não estava seguro se funcionaria bem.

Quando havia começado a usar o modem Banda Larga 3G, sofri um monte até conseguir fazê-lo funcionar bem no Linux. Li algo publicado no GDH, de autoria do Carlos Morimoto, e fui pesquisar novamente.

Não encontrei o mesmo artigo que havia lido anteriormente, porém encontrei outro onde o autor sugere o uso do "ping" para solucionar problema parecido porém em conexões wifi. Como tudo isto é sinal de rádio frequência, resolvi experimentar e deu certo.

Já estou usando a conexão 3G que estava cortando o sinal a cada 3 a 5 minutos de uso, por mais de 3 horas, sem problemas. Abaixo segue a um trecho do artigo de Carlos Morimoto onde ele exemplifica muito bem a situação embora falando de wifi:

Apesar disso, existe uma solução muito simples para o problema: basta impedir que a placa entre em modo de economia de energia, mantendo a conexão sempre ativa. A forma mais simples de fazer isso é usar o comando "ping" para enviar pacotes para um endereço qualquer a cada 15 segundos. Abra um terminal e rode o comando:

ping -i 15 google.com (o google.com pode ser substituído por outro endereço qualquer)

Para que ele seja executado automaticamente durante o boot, resolvendo o problema definitivamente, use os dois comandos abaixo, que criam um script dentro da pasta /etc/rc5.d:

# echo 'ping -i 15 google.com &' > /etc/rc5.d/S99ping
# chmod +x /etc/rc5.d/S99ping

Mantendo o ping ativo, a conexão se torna bastante estável, mesmo ao conectar em redes com encriptação WPA. Você pode deixar o note ligado durante vários dias, mesmo sem usar a rede e a conexão se mantém aberta, pronta para usar.

O único inconveniente é que manter a placa ativa o tempo todo causa um pequeno aumento no consumo, reduzindo a autonomia das baterias em cerca de 10 minutos.


Ao buscar novamente o artigo completo para adicionar o link não consegui localizar o mesmo, de maneira que fica aqui a citação da fonte:

Guia do Hardware - GDH Press
Autor: Carlos Morimoto

Outras dicas deste autor

Playlist contendo todos os vídeos do canal no YouTube

Como consegui criar um primeiro robot em NTSL - Nelogica Trend System Language

Cronograma de lançamentos sidux 2010

Comunidade sidux Linux

Instalação do MetaTrader 5 em Linux Mint - Robots Localização - Vídeo Nr 21

Leitura recomendada

Fazendo Upload no Git pelo Terminal

Segurança no Iptables

Removendo a identificação do servidor e do Squid do rodapé

Instalando o navegador Opera no Kurumin

Removendo o Namoroka e instalando o Firefox 3.5

  

Comentários
[1] Comentário enviado por removido em 17/03/2011 - 16:09h

Muito interessante isso.
No tempo que usava conexão 3G, era tudo perfeito nos primeiros 3 meses de uso, depois virou um problemão.
Acontecia mesmo os problemas relatados em sua dica.
Antes soubesse sobre o 'ping', e claro, tivesse uma dica como esta.

Uma 'arma' a favor dos usuários de 3G.
Ótima Dica, Jorge.

[2] Comentário enviado por removido em 18/03/2011 - 20:40h

concordo com as observações do Izaias, utilizo dessas manhas, mas não como serviço e sim como tarefa via 'cron', basta observar em algumas das minhas screens com Conky que o comando ping será visto, excelente dica e favoritada.

um abraço!

[3] Comentário enviado por gnumoksha em 29/03/2011 - 04:55h

Muito interessante a dica. Aos que a utilizaram, pergunto: a melhora foi significativa? O que ocorre mais: a perca de sinal da operadora ou a placa entrar em modo de economia de energia?

[4] Comentário enviado por meinhardt_jgbr em 29/03/2011 - 10:00h

No caso da conexão com a qual tinha problemas, ocorriam duas coisas, uma era a oscilação do sinal chegando inclusive à queda total e corte da ligação e a outra, devido a característica intrínseca do gerenciador de ligações de rede, o sistema periodicamente fazia a varredura (scan) das redes disponíveis, física (cabeada), wifi (publica porém com autenticação obrigatória) e a discada 3G. Mesmo desabilitando a rede wifi que por ser insegura e requerendo pagamento extra não me interessava usar, acredito que ao fazer esta varredura o sistema se não cortava a conexão 3G, pelo menos balançava bastante a conexão terminando por derruba-la.

Ao passar a usar o ping -i terminou imediatamente o problema.

Não vejo necessidade de usar em caráter permanente a alternativa de ativação automática de algum script para iniciar junto com o sistema pois a condição de conexão oscilante e propensa a cortes no meu caso não é constante. Ocorre eventualmente em viagens, dependendo do provedor 3G/2G (EDGE) ou wifi de hoteis ou hot-spots. No caso daqueles que enfrentam esta situação de forma permanente, esta será uma solução.

No meu caso, a melhora foi significativa.

[5] Comentário enviado por gnumoksha em 01/04/2011 - 00:14h

Em:

"...devido a característica intrínseca do gerenciador de ligações de rede, o sistema periodicamente fazia a varredura (scan) das redes disponíveis, física (cabeada), wifi (publica porém com autenticação obrigatória) e a discada 3G."

o que é o gerenciador de ligações de rede? Qual sistema que faz a varredura?

O uso que voce faz do modem 3G compreende utilizar a conexão em diversos locais (diferentes) ?

[6] Comentário enviado por meinhardt_jgbr em 01/04/2011 - 14:07h

O gerenciador de ligações ou conexões de rede é um aplicativo com interface gráfica (GUI) que serve para gerir e permitir a configuração facilitada dos tipos de rede para os quais foi desenvolvido. Ha algum tempo atrás, os Gerenciadores de Conexões podiam gerir apenas rede física (cabeada) e wifi. Hoje, como no caso do Debian 6.0 Squeeze na alternativa com GNOME, vem por padrão com o Miniaplicativo Gerenciador de Redes 0.8.1 onde podem facilmente ser habilitados e configurados, rede física (cabeada), wifi ou 3G e outras conexões discadas.
O site deste gerenciador está em: http://www.gnome.org/projects/NetworkManager/

Antes eram necessários mais de um aplicativo para cobrir todas as redes.

O Gerenciador de rede vai depender da distribuição (distro) usada. Cada distro tem a sua preferencia ou aquele gerenciador que funciona melhor.

Quanto a quem faz a varredura, não posso afirmar com segurança, pois não conheço as entranhas do sistema.

Posso dizer entretanto que no caso deste aplicativo padrão na versão com Gnome do Debian 6.0 Squeeze, o gerenciador periodicamente verifica a redes disponíveis para conexão (faz portanto a varredura ou escaneia as interfaces físicas das redes disponíveis no seu computador. No caso deste NoteBook (NoBo), como o padrão de uso é com rede física, esta é a primeira alternativa que ele verifica a disponibilidade (faz a varredura) para poder oferecer a alternativa de troca de rede para aquela que for mais rápida. Se o Pc tiver placa wifi interna ou estiver com uma placa espetada, ele vai varrer também esta alternativa. Quando decidi buscar uma solução para o caso do meu NoBo em viagem, estava em um hotel onde existe a disponibilidade apenas de rede wifi, autenticada com chave, porém do tipo publico, aberto, sem segurança nenhuma, além de ser cobrada a parte. Isto não me interessava além de que normalmente nos horários de pico de uso fica muito lenta.
Preferia usar a rede 3G. Com isto, desmarquei as redes habilitadas que neste caso seriam a rede fisica e a wifi. A cada nova varredura das redes ou dos dispositivos de rede disponíveis, passava pela cabeada, não encontrava nada, seguia adiante pela wifi e avisava que estava disponível e voltava a conectar para deixar a meu critério conectar ou não.

A cada varredura destas, por alguma razão senão derrubava minha conexão 3G, baixava muito a sua velocidade. Além disto, eu precisava clicar sobre o ícone do gerenciador e voltar a desabilitar a conexão wifi, ou avisar ao sistema que naquele momento não me interessava conectar ao wifi. Isto era uma saco!!!!

A partir do momento que passei a usar o ping -i 15 mais o end de site de busca, acabou o problema, pois o ping não dava folga à conexão 3G para permitir ao gerenciador re-habilitar o wifi, conectar, fazer a leitura das características da rede e avisar a disponibilidade da conexão.

Resolveu portanto o meu problema. Também experimentei com NetBook conectado a rede wifi cujo sinal oscilava muito. Novamente o ping via terminal resolveu o problema e estabilizou o sinal.

Quanto ao uso do 3G, sou obrigado a carregar um modem 3G e fazer conexão nos mais diversos locais que visito pois muitas vezes esta é a única alternativa para poder acessar os serviços web-mail e portanto poder responder as mensagens recebidas de clientes e contatos profissionais.

O 3G porém nestes casos na verdade fica sendo um 2G (EDGE) de muito mais baixa velocidade, porém funciona melhor do que não ter nada.


[7] Comentário enviado por gnumoksha em 03/04/2011 - 00:52h

Obrigado pelo comentario completo.

Desconhecia essa caracteristica do NetworkManager no debian. Essa varredura ocorria em intervalos regulares? De quanto tempo?

No meu caso nao utilizo interface grafica e, consequentemente, o networkmanager do gnome; ainda assim ocorrem varias quedas de sinal, tanto completamente quanto de 3G para 2G. Utilizei o ping mas parece que nao surtiu efeito.

[8] Comentário enviado por meinhardt_jgbr em 06/04/2011 - 10:24h

Estou neste momento novamente em viagem a trabalho e precisei lançar mão do ping -i no terminal para evitar a desconexão do modem 3G.

Como estou em local onde é possivel a conexão 3G em vez de apenas 2G (EDGE), pensei que devido a melhor qualidade, não seria necessário.

Embora tendo desabilitado a conexão wifi disponível no hotel porém paga como extra e sem características de segurança de nenhum nível, o Network Manager, a cada 5 minutos voltava a "xeretar" as conexões disponíveis e re-habilitar o wifi por conta própria. Com isto se não derrubava a conexão 3G, no mínimo deixava muito lenta. Acredito que possa ser algum bug no mesmo ou simplesmente uma característica do aplicativo, pois poucos devem enfrentar este tipo de situação. Por isto ninguém deve reclamar e a coisa segue sem modificações.

Pelo menos encontrei a solução com o uso do ping -i .

A idéia do programador do Network Manager de definir uma ampla varredura das redes disponíveis não é ruim, pois permite que você como usuário fique informado periódicamente daquilo que está disponível e fazer a troca caso seja conveniente. Deveria entretanto dispor de um parametro de configuração que permitisse suspender a varredura qando o usuário não desejar que isto ocorra.

Isto ão deve estar implementado porque a grande maioria dos usários não está dando a menor pelota, quer apenas espetar o modem 3G e sair navegando. Caso ocorra algum problema como este, preferem ou por falta de conhecimento ou curiosidade culpar a operadora 3G do que tentar encontrar a causa.

[9] Comentário enviado por meinhardt_jgbr em 09/08/2011 - 20:22h

Como poderia ser logico de se esperar, após 5 meses depois da publicação da dica acima, porém agora em plena Sao Paulo, com conexão 3G de boa qualidade, sou obrigado a lançar mão novamente do ping no terminal para conseguir não só estabilizar a conexão mas também mante-la ativa. Já nem lembrava mais como fazer, sendo preciso reler o conteúdo acima para lograr uma boa conexão.

[10] Comentário enviado por removido em 25/01/2013 - 15:26h


[9] Comentário enviado por meinhardt_jgbr em 09/08/2011 - 20:22h:

Como poderia ser logico de se esperar, após 5 meses depois da publicação da dica acima, porém agora em plena Sao Paulo, com conexão 3G de boa qualidade, sou obrigado a lançar mão novamente do ping no terminal para conseguir não só estabilizar a conexão mas também mante-la ativa. Já nem lembrava mais como fazer, sendo preciso reler o conteúdo acima para lograr uma boa conexão.


Oi, jorge.

Faço minhas suas palavras.

Além da conexão DSL, estou também com o 3G da Claro.
Utilizei a dica para estabilizar conexão no notebook. Quando a conexão ficava ociosa, vivia caindo após determinado tempo.

Agora sim, testada na prática!

Parabéns!

[11] Comentário enviado por meinhardt_jgbr em 25/03/2013 - 15:48h

Devido a este mesmo fato, mantenho agora na Área de Trabalho (Desktop), atalho para esta dica para poder apenas relembrar e ficar fácil copiar e colar em um terminal aberto, o comando ping, sem precisar tentar relembrar a sintaxe correta.
Dependendo da gravidade do caso, tenho também usado parâmetros de tempo menores que os 15 segundo da dica original, para ficar "chamando" a conexão com maior frequencia. Para isto basta alterar o ultimo numero (15), por um valor menor.

ex:
$ ping -i 15 google.com
$ ping -i 10 google.com
$ ping -i 8 google.com
$ ping -i 4 google.com

[12] Comentário enviado por meinhardt_jgbr em 25/04/2014 - 01:51h

Mais um ano após a ultima revisão desta dica, a mesma ainda continua válida. Tenho usado com relativa frequencia principalmente em hotéis com serviço de acesso wifi. Esta tem sido a única forma de manter a minha conexão ativa e com melhor estabilidade. Já não tiro mais da área de trabalho o atalho para o arquivo de texto com os parâmetros listados no post anterior.

[13] Comentário enviado por meinhardt_jgbr em 08/02/2021 - 14:33h

Em pleno 2021, esta dica continua válida e funcionando bem.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts