Rede e o metaverso
Aqui, Rede é definida como “o provisionamento de conexões persistentes em tempo real, alta largura de banda e transmissão de dados descentralizada por provedores de backbone, as redes, centros de troca e serviços que roteiam entre eles, bem como aqueles que gerenciam ‘última milha’ dados aos consumidores.
As três áreas principais da rede — largura de banda, latência e confiabilidade — são provavelmente os facilitadores do Metaverso menos interessantes para a maioria dos leitores. No entanto, suas restrições e crescimento moldam como projetamos os produtos e serviços do Metaverse, quando podemos usá-los e o que podemos (e talvez nunca possamos) fazer.
Largura de banda
A largura de banda é comumente considerada como ‘velocidade’, mas na verdade é a quantidade de dados que pode ser transmitida em uma unidade de tempo. Os requisitos para o Metaverso são muito maiores do que a maioria dos aplicativos e jogos da Internet, e além de muitas conexões modernas. A melhor maneira de entender isso é por meio do Microsoft Flight Simulator .
O Microsoft Flight Simulator é a simulação de consumidor mais realista e expansiva da história. Inclui 2 trilhões de árvores renderizadas individualmente, 1,5 bilhão de edifícios e quase todas as estradas, montanhas, cidades e aeroportos em todo o mundo … todos parecem ‘reais’, porque são baseados em digitalizações de alta qualidade da coisa real. Mas para conseguir isso, o Microsoft Flight Simulator requer mais de 2,5 petabytes de dados — ou 2,5 milhões de gigabytes. Não há como um dispositivo de consumidor (ou a maioria dos dispositivos corporativos) armazenar essa quantidade de dados.
E mesmo que pudesse, o Microsoft Flight Simulator é um serviço ao vivo que se atualiza para refletir o clima do mundo real (incluindo velocidade e direção do vento precisas, temperatura, umidade, raid e iluminação) e tráfego aéreo. Você pode literalmente voar em furacões e tempestades do mundo real , enquanto segue os aviões comerciais IRL em sua rota de vôo exata.
O Microsoft Flight Simulator funciona armazenando uma quantidade central de dados em seu dispositivo local (que também executa o jogo, como qualquer jogo de console e ao contrário de serviços de streaming de jogos baseados em nuvem como o Stadia). Mas quando os usuários estão online, a Microsoft transmite imensos volumes de dados para o dispositivo do jogador local conforme a necessidade. Pense nisso como um piloto do mundo real faria. Quando eles sobem uma montanha ou fazem uma curva, novas informações de luz fluem em suas retinas, revelando e esclarecendo o que está lá pela primeira vez. Antes disso, eles não têm nada além do conhecimento de que algo estará lá.
Muitos jogadores pensam que isso é o que acontece em todos os videogames multijogador online. Mas, na verdade, a maioria dos serviços de jogo envia apenas dados posicionais, dados de entrada do jogador (por exemplo, atirar, lançar bomba) e dados de nível de resumo (por exemplo, jogadores que permaneceram em uma batalha real) para jogadores individuais. Todos os dados de ativos e renderização já estão em seu dispositivo local, daí os tempos brutais de download e instalação, além do uso do disco rígido.
Ao enviar dados de renderização conforme a necessidade, os jogos podem ter uma diversidade muito maior de itens, ativos e ambientes. E eles podem fazer isso sem exigir downloads e instalações que atrasem o jogo, lote de atualização ou enormes discos rígidos do usuário. Como resultado, muitos jogos agora estão adotando esse modelo híbrido de informações armazenadas localmente mais streaming de dados. No entanto, essa abordagem é mais importante para plataformas com foco no metaverso. Roblox , por exemplo, precisa (e se beneficia mais de) ativos, itens e diversidade ambiental do que um título como Mario Kart ou Call of Duty .
Conforme a complexidade e a importância da simulação virtual aumentam, a quantidade de dados que precisa ser transmitida aumentará. Pelo menos por enquanto, o Roblox se beneficia do fato de que uma série de pré-fabricados e ativos subjacentes são amplamente reaproveitados e levemente personalizados. Diante disso, o Roblox está basicamente transmitindo dados sobre como ajustar itens baixados anteriormente. Mas, eventualmente, a plataforma virtual vai querer um número quase infinito de permutações e criações (quase todas as quais não será capaz de prever totalmente).
As plataformas virtuais de geminação (também conhecidas como ‘mirrorworlds’), como o Microsoft Flight Simulator , já precisam recriar a diversidade quase infinita (e comprovável) do mundo real. Isso significa enviar muito mais dados (ou seja, mais pesados) do que ‘nuvem escura aqui’ ou ‘uma nuvem escura que é 95% como a nuvem escura C-95’. Em vez disso, é uma nuvem escura exatamente como esta. E, o que é crucial, esses dados estão mudando em tempo real.
Este último ponto é fundamental. Se quisermos interagir em um ambiente virtual grande, em tempo real, compartilhado e persistente, precisaremos receber uma superabundância de dados transmitidos pela nuvem.
(Um desses não é real)
Compare o ‘mundo real’ com o mapa de Fortnite . Todos na terra estão na mesma ‘simulação’, ao mesmo tempo e com total permanência. Se eu cortar uma árvore, essa árvore está irrevogavelmente perdida para todos. Quando você joga Fortnite , é apenas por meio de uma versão fixa e pontual do mapa. E tudo o que você faz nesse mapa é compartilhado apenas com alguns usuários e por um curto período de tempo antes de ser redefinido. Cortar uma árvore? Ele será redefinido em 1–25 minutos e, para começo de conversa, só foi desativado para até 99 outros usuários. O mapa só muda realmente quando a Epic Games envia uma nova versão. E se a Epic Games quisesse enviar seu mundo para todo mundo, eles estariam selecionando seuuniverso, desconsiderando o deles, e fixando o seu universo em um ponto específico do tempo. Para muitas experiências virtuais, isso é bom. Vai servir para muitas experiências específicas do Metaverso também. Porém, algumas experiências (se não as mais importantes) exigirão persistência em todos os usuários e em todos os momentos.
O streaming de dados em nuvem também é essencial se quisermos alternar perfeitamente entre diferentes mundos virtuais. Fortnite ‘s Travis Scott concerto envolveu facilmente transportar os jogadores do mapa do núcleo do jogo para as profundezas de um nunca antes visto oceano, em seguida, a um nunca antes visto planeta, e em seguida, profunda para o espaço exterior. Para conseguir isso, a Epic enviou todos esses mundos de jogo aos usuários dias a horas antes do evento por meio de um Fortnite padrãopatch (isso, é claro, significava que se os usuários não tivessem baixado e instalado a atualização antes do início do evento, eles não poderiam participar dela). Então, durante cada set piece, o dispositivo de cada jogador carregava a próxima set piece em segundo plano. Este sistema funciona incrivelmente bem, mas requer que um editor saiba para quais mundos um usuário irá a seguir e com bastante antecedência. Se você quiser escolher, e escolher entre uma ampla gama de destinos, você deve fazer o download de todas as opções possíveis (o que não é possível) ou transmiti-las na nuvem.
Além de dados ambientais aumentados, há dados incrementais do jogador. Quando você vê seu amigo no Fortnite hoje, o servidor Fortnite só precisa enviar informações sobre onde seu amigo está e o que ele está tentando fazer; as animações (por exemplo, recarregar um rifle de assalto ou cair) já estão carregadas no seu dispositivo e só precisam ser executadas. Mas quando você tem uma captura de movimento em tempo real mapeada para o avatar do seu amigo, essas informações detalhadas também precisam ser enviadas. Junto com todo mundo. Se você quiser assistir a um arquivo de vídeo dentro deste jogo, como o Fortnite às vezes oferece, então isso também precisa ser transmitido dentro de um mundo virtual. Ouça o áudio espacial de uma multidão? Mesmo. Sentir um transeunte acariciar o ombro do seu macacão háptico? Mesmo.
Muitos jogadores já lutam com largura de banda e congestionamento de rede para jogos online que requerem apenas dados posicionais e de entrada. O Metaverso apenas intensificará essas necessidades. A boa notícia é que a penetração da banda larga e a largura de banda estão melhorando consistentemente em todo o mundo. A computação, que será discutida com mais detalhes na Seção 3, também está melhorando e pode ajudar a substituir a transmissão de dados restrita ao prever o que deve ocorrer até o ponto em que os dados ‘reais’ podem ser substituídos.
Latência
O maior desafio na rede também é o menos compreendido: latência. Latência se refere ao tempo que os dados levam para viajar de um ponto a outro e voltar. Em comparação com a largura de banda da rede (acima) e a confiabilidade (abaixo), a latência é normalmente considerada o KPI menos importante. Isso ocorre porque a maior parte do tráfego da Internet é unilateral ou assíncrono. Não importa se leva 100ms ou 200ms ou até mesmo atrasos de dois segundos entre o envio de uma mensagem do WhatsApp e o recebimento de um recibo de leitura. Também não importa se leva 20 ms ou 150 ms ou 300 ms depois de clicar no botão de pausa do YouTube até o vídeo parar. Ao assistir ao Netflix, é mais importante que o stream seja reproduzido continuamente do que imediatamente. Para isso, a Netflix atrasa artificialmente o início de um stream de vídeo para que o download do seu dispositivo seja feito antes do momento em que você está assistindo. Dessa maneira,
Mesmo as chamadas de vídeo, que são conexões síncronas e persistentes, têm uma tolerância relativamente alta para latência. O vídeo é o elemento menos importante das chamadas e, portanto, o áudio, que é o dado “mais leve”, geralmente é priorizado pelo software de videochamada se houver uma falha na rede. E se a sua latência aumentar temporariamente — mesmo ao ponto de segundos, não milissegundos — o software pode salvá-lo aumentando a velocidade de reprodução do seu backlog de áudio e editando rapidamente as pausas. Além disso, é fácil para os participantes gerenciarem a latência — você apenas aprende a esperar um pouco.
Os jogos multiplayer online AAA mais envolventes, no entanto, requerem baixa latência. Isso ocorre porque a latência determina a rapidez com que um jogador recebe as informações (por exemplo, onde um jogador está, se uma granada foi lançada ou uma bola de futebol chutada) e com que rapidez sua resposta é transmitida aos outros jogadores. Em outras palavras, a latência determina se você ganha ou perde, mata ou acaba morto. É por isso que a maioria dos jogos modernos são jogados a 2–4 × a taxa de quadros média do vídeo e por que adotamos rapidamente esses aumentos, mesmo quando resistimos a uma taxa de quadros mais alta para o vídeo tradicional. É necessário para o desempenho.
O limite humano para latência é incrivelmente baixo em jogos de vídeo, especialmente em comparação com outras mídias. Considere, por exemplo, vídeo tradicional versus videogame. A pessoa média nem percebe se o áudio está fora de sincronia com o vídeo, a menos que chegue mais de 45 ms antes do tempo ou mais de 125 ms atrasado (170 ms no total). Os limites de aceitabilidade são ainda maiores, com 90ms de antecedência e 185ms de atraso (275ms). Com botões digitais, como um botão de pausa do YouTube, só pensamos que nossos cliques falharam se não virmos uma resposta após 200–250 ms. Em jogos AAA, os jogadores ávidos ficam frustrados com 50ms e mesmo os não-jogadores se sentem impedidos com 110ms. Os jogos não podem ser jogados a 150 ms. Subespaçodescobre que, em média, um aumento ou diminuição de 10 ms na latência reduz ou aumenta o tempo de jogo semanal em 6%. Essa é uma exposição extraordinária — e nenhuma outra empresa enfrenta.
Com as bandas acima em mente, vamos examinar a latência média globalmente. Nos Estados Unidos, o tempo médio de ida e volta para dados enviados de uma cidade para outra e de volta é de 35 ms. Muitos pares excedem isso, especialmente cidades com alta densidade e picos de demanda intensos (por exemplo, São Francisco a Nova York durante a noite). Depois, há o tempo de trânsito da ‘cidade para o usuário’, que é particularmente propenso a lentidão. Cidades, bairros ou condomínios densos podem ficar congestionados facilmente. E se você estiver jogando via celular, a tecnologia 4G hoje tem em média outros 40ms. E se você mora fora do centro de uma grande cidade, seus dados podem ter que viajar mais 160 quilômetros e em uma infraestrutura de rede fixa antiquada e mal mantida. Globalmente, a latência média de entrega varia de 100–200ms entre as cidades.
Ver em tamanho real
Para geenciar a latência, a indústria de jogos online desenvolveu várias soluções parciais e hacks. No entanto, nenhuma escala muito bem.
Por exemplo, a maioria dos jogos multijogador de alta fidelidade é ‘feita’ em torno das regiões do servidor. Ao minimizar a lista de jogadores para aqueles que vivem no Nordeste dos Estados Unidos, ou Europa Ocidental, ou Sudeste Asiático, os editores de jogos são capazes de minimizar a latência em uma base geográfica. Como jogar é uma atividade de lazer e normalmente é jogado com um a três amigos, esse agrupamento funciona bem o suficiente. Afinal, é improvável que você jogue com alguém a vários fusos horários de distância. E você realmente não se importa onde seus oponentes desconhecidos (com quem você normalmente nem consegue falar) vivem, de qualquer maneira. Ainda assim, a Subspace descobriu que cerca de três quartos de todas as conexões de internet no Oriente Médio estão fora dos níveis de latência jogáveis para jogos multiplayer dinâmicos, enquanto nos Estados Unidos e na Europa, um quarto está. Isso reflete principalmente as limitações da infraestrutura de banda larga,
Os jogos online multiplayer também usam soluções de ‘código de rede’ para garantir a sincronização e consistência e manter os jogadores jogando. O código de rede baseado em atraso dirá ao dispositivo de um jogador (por exemplo, um PlayStation 5) para atrasar artificialmente a renderização das entradas de seu proprietário até que as entradas do jogador mais latente (ou seja, de seu oponente) cheguem. Isso vai incomodar os jogadores com memória muscular sintonizada com baixa latência, mas funciona. O netcode de reversão é mais sofisticado. Se as entradas de um oponente forem atrasadas, o dispositivo de um jogador continuará com base no que esperava que acontecesse. Se descobrir que o oponente fez algo diferente, o dispositivo tentará desenrolar as animações em andamento e depois reproduzi-las ‘corretamente’.
Essas soluções funcionam bem para jogos 1v1 (por exemplo, lutadores 2D), para pequenos soluços de latência (por exemplo, ± 40ms) e títulos com uma gama limitada de ações altamente previsíveis (por exemplo, um jogo de direção, um lutador 2D). Mas à medida que expandimos para experiências mais focadas no Metaverso com mais jogadores, maiores variações na latência e cenários mais dinâmicos, essas soluções degradam. É difícil prever de forma coerente e correta uma dúzia de jogadores, e ‘revertê-los’ de uma forma sem interrupções. Em vez disso, faz mais sentido simplesmente desconectar um jogador lento. E embora uma videochamada tenha muitos participantes, apenas um realmente importa por vez e, portanto, há uma latência ‘central’. Em um jogo, obter as informações certas de todos os jogadores é importante e a latência aumenta.
A baixa latência não é um problema para a maioria dos jogos. Títulos como Hearthstone ou Words with Friends são baseados em turnos ou assíncronos, enquanto outros sucessos como Honor of Kings ou Candy Crush não precisam de entradas com pixels perfeitos nem com precisão de milissegundos. Na verdade, são apenas títulos de ação rápida como Fortnite , Call of Duty e Forza que exigem baixa latência. Esses tipos de jogos são lucrativos, mas representam uma pequena porção do mercado total de jogos pelos títulos produzidos — e uma parcela ainda menor do tempo total do jogo.
No entanto, embora o Metaverso não seja um jogo AAA de rápida contração, sua natureza social e importância desejada significa que exigirá baixa latência. Pequenos movimentos faciais são incrivelmente importantes para a conversa humana — e somos incrivelmente sensíveis a pequenos erros e problemas de sincronização (daí o problema do vale misterioso em CGI). Os produtos sociais também dependem de sua onipresença. Imagine se o FaceTime ou o Facebook não funcionassem, a menos que seus amigos ou familiares estivessem em um raio de 500 milhas, por exemplo. Ou apenas quando você estava em casa. E se quisermos explorar mão de obra estrangeira ou à distância no mundo virtual, precisamos muito mais do que apenas excesso de largura de banda.
Infelizmente, a latência é o mais difícil e o mais lento de corrigir de todos os atributos de rede. Parte do problema decorre, conforme mencionado acima, de como poucos serviços e aplicativos precisam de entrega de latência ultrabaixa. Isso restringe o caso de negócios para qualquer operadora de rede ou rede de entrega de conteúdo focada em latência (CDN) — e o caso de negócios aqui já está desafiado e em contenda com as leis fundamentais da física.
Em 11.000–12.500 km, leva 40–45ms de luz para viajar de Nova York a Tóquio ou Mumbai. Isso atende a todos os limites de baixa latência. No entanto, embora a maior parte do backbone da Internet seja de fibra ótica, o cabo de fibra ótica fica cerca de 30% abaixo da velocidade da luz, pois raramente fica no vácuo (+ perda é normalmente 3,5 dB / km). Cabos de cobre e coaxiais apresentam degradação de latência ainda pior à distância e largura de banda mais limitada, o que significa maiores riscos de congestionamento e atraso na entrega. Esses cabos ainda constituem a maior parte daqueles encontrados em interiores de edifícios residenciais e comerciais, bem como em bairros.
Além disso, nenhum desses cabos é colocado em linha reta. E o que normalmente pensamos como ‘o backbone da Internet’ é, na verdade, uma federação frouxa de redes privadas, nenhuma das quais entrega totalmente um pacote de dados (ou tem o incentivo de trocar trechos para um concorrente com um ou dois segmentos mais rápidos). Como resultado, a distância de rede entre um par de servidores, ou um servidor e um cliente, pode ser substancialmente maior do que sua distância geográfica. Além disso, o congestionamento da rede pode resultar no encaminhamento do tráfego ainda menos diretamente para garantir uma entrega confiável e contínua, em vez de minimizar a latência. É por isso que a latência média de Nova York a Tóquio é mais de 4 × o tempo que a luz leva para viajar entre as duas cidades e 4 a 6 × de Nova York a Mumbai.
É extremamente caro e difícil atualizar ou retransmitir qualquer infraestrutura baseada em cabo, especialmente se o objetivo for minimizar a distância geográfica. Também requer uma aprovação regulatória / governamental considerável, normalmente em vários níveis. É mais fácil consertar a conexão sem fio, é claro. E o 5G certamente ajuda, pois reduz em média 20–40 ms do 4G (e promete latência de até 1 ms). No entanto, isso ajuda apenas nas últimas centenas de metros de transmissão de dados. Depois que seus dados chegam à torre, você retorna aos backbones tradicionais.
Starlink, a empresa de constelação de Internet via satélite da SpaceX, promete fornecer serviço de Internet de alta largura de banda e baixa latência nos Estados Unidos e, eventualmente, no resto do mundo. Mas isso não resolve a latência ultrabaixa, especialmente em grandes distâncias. Embora o Starlink alcance 18–35 ms de tempo de viagem de sua casa ao satélite e de volta, isso se estende quando os dados têm que ir de Nova York a Los Angeles e voltar. Afinal, isso requer retransmissão por meio de vários satélites. Em alguns casos, o Starlink ainda exacerba as distâncias de viagem. De Nova York à Filadélfia tem cerca de 160 quilômetros em linha reta e potencialmente 125 quilômetros por cabo, mas mais de 700 quilômetros ao viajar para um satélite em órbita baixa e voltar para baixo. Além disso, o cabo de fibra ótica apresenta muito menos perdas do que a luz transmitida pela atmosfera, especialmente em dias nublados. As áreas densas da cidade também são barulhentas e, portanto, sujeitas a interferências. Em 2020, Elon Musk enfatizou que a Starlink está focada “nos clientes mais difíceis de atender que [as empresas de telecomunicações] de outra forma teriam dificuldade para alcançar”. Nesse sentido, traz mais para o Metaverso, ao invés de impulsionar aqueles que já participam.
Tecnologias, linhas de negócios e serviços totalmente novos estão sendo desenvolvidos para atender à necessidade crescente de aplicativos de largura de banda em tempo real. A Subspace (Divulgação: empresa de portfólio), por exemplo, implanta hardware em centenas de cidades para desenvolver ‘mapas meteorológicos’ para localização de caminhos de rede de baixa latência, opera uma pilha de rede que coordena as necessidades de um aplicativo de baixa latência com muitos terceiros partes que compõem esse caminho, e até construiu uma rede óptica que se une em várias redes de fibra para encurtar ainda mais a distância entre os servidores e minimizar o uso de cabeamento sem fibra.
Enquanto isso, rapidamente oferece um CDN otimizado para aplicativos de baixa latência, em vez de apenas fornecer confiabilidade e largura de banda. A empresa usa uma abordagem de ‘infraestrutura como código’ que permite aos clientes personalizar quase todos os aspectos dos clusters de computação de ponta da empresa, promete que um aplicativo de software pode limpar e substituir todo o conteúdo em cache em todos esses clusters globalmente em 150 ms, e que pode armazenar em cache e acelerar transações de blockchain individuais em tempo real.
Confiabilidade
A confiabilidade é bastante óbvia. Nossa capacidade de mudar para trabalho e educação virtuais depende diretamente da qualidade confiável do serviço. Isso abrange tanto o tempo de atividade geral quanto a consistência de outros atributos, como largura de banda de download / upload e latência. Para muitos dos que ‘vivem online’ hoje, muito do que foi dito acima pode parecer alarmista. O Netflix transmite em 1080p ou até 4K perfeitamente na maioria das vezes! No entanto, serviços como o Netflix alavancam soluções de confiabilidade que não funcionam bem para jogos ou aplicativos específicos do Metaverso.
Serviços de vídeo não ao vivo como o Netflix recebem todos os arquivos de vídeo horas ou meses antes de serem disponibilizados ao público. Isso permite que eles realizem análises extensivas para reduzir (ou ‘compactar’) os tamanhos dos arquivos, analisando os dados do quadro para determinar quais informações podem ser descartadas. Os algoritmos da Netflix vão “assistir” a uma cena com céu azul e decidir que, se a velocidade da internet de um espectador cair, 500 tons diferentes de azul podem ser simplificados para 200, 50 ou 25. A análise do streamer faz isso até mesmo em uma base contextual — reconhecer que cenas de diálogo podem tolerar mais compressão do que cenas de ação mais rápida. Esta é a codificação multipass. Conforme discutido anteriormente, o Netflix também usa largura de banda sobressalente para enviar vídeo ao dispositivo de um usuário antes que seja necessário — portanto, se houver uma queda temporária na conectividade ou aumento na latência, o usuário final não experimenta nenhuma mudança. Além disso, a Netflix pré-carregará o conteúdo nos nós locais; então, quando você pede o mais novo episódio deStranger Things , na verdade fica a apenas alguns quarteirões de distância. Isso não é possível para vídeo ou dados criados ao vivo, que, conforme acima, também precisam chegar mais rápido. É por isso que é mais difícil transmitir em nuvem 1 GB do Stadia do que 1 GB do Netflix.
Portanto, embora seu objetivo não seja necessariamente competitivo por natureza, devemos pensar no Metaverso como elevando os requisitos para todos os aspectos da rede — latência, confiabilidade / resiliência e largura de banda — para os jogos multiplayer AAA. Não importa o quão poderoso seja o seu dispositivo (consulte hardware e computação) se ele não puder receber todas as informações de que precisa em tempo hábil.
Originalmente escrito por: Matthew Ball