web counter Descoberta alerta para falha no macOS: reiniciar é a única solução para o problema de rede que pode travar máquinas - Super Select
Home » Descoberta alerta para falha no macOS: reiniciar é a única solução para o problema de rede que pode travar máquinas
Tecnologia, Hardware e PC

Descoberta alerta para falha no macOS: reiniciar é a única solução para o problema de rede que pode travar máquinas

Usar um Mac como servidor pode ser uma proposta interessante, mas há algumas questões a serem consideradas. Apesar de suas raízes no Unix, o sistema operacional não é realmente projetado para funcionar sem parar, 24 horas por dia, 7 dias por semana. E configurar tudo isso pode ser um verdadeiro desafio. Um estudo recente revelou que se um Mac for mantido ligado por exatamente 49 dias, 17 horas, 2 minutos e 47 segundos, diversas funcionalidades começam a parar de funcionar, pois a pilha de rede TCP/IP entra em colapso.

Esse problema foi identificado pela equipe de pesquisadores que analisou uma frota de Macs usados para monitorar serviços do iMessage. Surpreendentemente, algumas máquinas deixaram de responder a conexões de rede sem aviso, embora ainda respondessem a comandos de ping. A situação se complicou ainda mais, pois essas máquinas mantinham suas conexões de rede, tornando o diagnóstico do problema bastante difícil. O que restou foi reiniciar os equipamentos para resolver a falha, sendo este um procedimento que muitos administradores de sistema evitam, já que se um problema aparece uma vez, pode surgir novamente em um momento inoportuno.

Quando a equipe testou novamente outros Macs que estavam prestes a atingir as 49,7 horas de atividade, um deles parou de criar novas conexões sem emitir qualquer erro. A investigação apontou que o responsável era um contador interno chamado “tcp_now”, que chegou ao seu limite, o que explica a falha. Esse contador é usado para rastrear o tempo desde a inicialização, trabalhando com milissegundos. Por ser um número inteiro sem sinal de 32 bits, seu valor máximo é 4.294.967.295, ou o equivalente a 49,7 dias.

Quando o sistema tenta limpar conexões TCP inativas, que ocorrem após 30 segundos, o estado de expiração é calculado considerando o número congelado, resultando em cálculos que ultrapassam o limite do inteiro de 32 bits. Isso leva ao acúmulo de portas temporárias, e o sistema acaba travando quando não há mais disponíveis. A velocidade com que isso acontece varia com a atividade da rede, mas em um ambiente profissional isso pode ocorrer rapidamente.

Atualmente, a única solução é reiniciar o Mac, embora a equipe esteja em busca de alternativas. A questão também é discutida em fóruns da comunidade Apple, o que indica um problema já reconhecido. Um padrão existente especifica o que deve acontecer quando o contador tcp_now atinge seu limite, mas a implementação no kernel da Apple está incorreta. Espera-se que essa questão seja corrigida em breve, preferencialmente antes de completar as 49,7 dias desde a identificação do problema.

Membro da Super Select:

Marcelo Vangrey

A minha jornada como Vangrey no universo dos games começou em 1994 com um Mega Drive e o incrivel Mortal Kombat 2! Seguida pelo Super Nintendo no universo dos lendários cartuchos 16in1 com Top Gear e companhia! Em 1998, conquistou seu primeiro PLAY 1 novamente com Mortal Kombat, dessa vez o MK4, e a partir daí, continuou explorando diversas plataformas. Comprando e vendendo, já passei por: Game Boy Color, PS2, PSP, PS3, Nintendo DS, 3DS, Xbox 360, PS4, PS4 Pro, PS5, Nintendo Switch 1 e 2, e pra finalizar - o Steam Deck =)

Adicionar comentário

Clique aqui para postar um comentário