Ops: Constelação de satélites OneWeb sai do ar por 36h
A OneWeb, fornecedora de Internet via satélite ficou quase 36 horas fora do ar. Motivo? Esqueceram do ano bissexto... Ops: Constelação de satélites OneWeb sai do ar por 36h
A OneWeb começou em 2012, como uma empresa fornecedora de acesso Internet via satélite para o segmento B2B, com satélites em órbitas médias, por volta de 1200km de altitude, cobrindo uma área bem grande. Hoje a constelação está completa, com 654 satélites, mas nem sempre foi assim.
- Amazon contrata 83 lançamentos em foguetes que nunca voaram
- UE: satélites IRIS² vão demorar, e custarão o dobro do previsto
A empresa passou por diversos percalços, incluindo falta de investimentos, que a fizeram declarar falência em 2020. No final a OneWeb foi resgatada por investidores indianos, franceses e o Governo do Reino Unido,
Em 2022, o azar da OneWeb se manifestou novamente; um lote de satélites estava pra ser lançado de Baikonur, no Afeganistão, quando os russos resolveram invadir a Ucrânia. Moscou então exigiu que os ingleses garantissem que os 36 satélites da OneWeb que seriam lançados não fossem usados para fins militares.
Londres se recusou a fornecer essa garantia, o que empacou o processo e no final os satélites foram dados como perdidos. Ao menos o seguro pagou.
Sem Ariane 5 ou Soyuz, a OneWeb teve que apelar para a SpaceX, para lançar seu último bloco de satélites. Sem problema em ajudar a “concorrência”, afinal dinheiro é dinheiro.
Só que não se faz uma constelação de satélites só com satélites, e o proverbial azar da Eutelsat OneWeb apareceu para demonstrar isso.
Na virada de 2024 para 2025, a rede, que atende Américas e partes da Ásia e da Europa, saiu do ar. Silêncio. Kaput.
Desesperados, os técnicos começaram a fuçar, até descobrir um grave problema de sincronização: Os relógios nos satélites não batiam com os relógios em terra, o software de controle, que depende de sincronia na casa de milissegundos, não se entendia com os satélites.
Se você alguma vez mudou a data do computador para muito no passado ou no futuro, e descobriu que um monte de sites não abria por problema com os certificados de segurança, têm uma leve noção do que aconteceu.
Aparentemente o software de controle não sabia que 2024 teve 366 dias, e “virou” o ano 24h mais cedo, zoneando completamente a sincronização, pois os algoritmos que calculam os hashes de criptografia dependem de um valor de data bem preciso.
36 horas depois do problema ter aparecido, o sistema estava parcialmente restaurado, mas a reputação (e o ouvido, provavelmente o fiofó também) dos programadores responsáveis nunca mais serão os mesmos) .
O pior é que esse tipo de erro é razoavelmente comum. Em Fevereiro de 2024 bombas de gasolina em toda a Nova Zelândia pararam de funcionar, por não identificarem o ano bissexto.
A culpa, sempre, é dos programadores, que acreditam que lidar com tempo é coisa simples, e não se preocupam em tratar exceções. Como dica, esta excelente lista de falsidades que programadores acreditam sobre Tempo:
- Sempre há 24 horas em um dia;
- Fevereiro sempre tem 28 dias;
- Qualquer período de 24 horas sempre começará e terminará no mesmo dia (ou semana, ou mês);
- Uma semana sempre começa e termina no mesmo mês;
- Uma semana (ou um mês) sempre começa e termina no mesmo ano;
- A máquina em que um programa é executado sempre estará no fuso horário GMT;
- Ok, isso não é verdade. Mas pelo menos o fuso horário em que um programa tem que ser executado nunca mudará;
- Bem, certamente nunca haverá uma mudança no fuso horário em que um programa tem que ser executado na produção;
- O relógio do sistema sempre será definido para o horário local correto;
- O relógio do sistema sempre será definido para um horário que não seja muito diferente do horário local correto;
- Se o relógio do sistema estiver incorreto, ele pelo menos sempre estará atrasado por um número consistente de segundos;
- O relógio do servidor e o relógio do cliente sempre serão definidos para o mesmo horário;
- Ok, mas o horário no relógio do servidor e o horário no relógio do cliente nunca seriam diferentes por uma questão de décadas;
- Se o relógio do servidor e o relógio do cliente não estiverem sincronizados, eles estarão pelo menos sempre fora de sincronia por um número consistente de segundos;
- O relógio do servidor e o relógio do cliente usarão o mesmo fuso horário;
- O relógio do sistema nunca será definido para um horário que esteja no passado distante ou no futuro distante;
- O tempo não tem começo nem fim;
- Um minuto no relógio do sistema tem exatamente a mesma duração que um minuto em qualquer outro relógio.
What's Your Reaction?