cancelar
Showing results for 
Search instead for 
Do you mean 

Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

Moderador

Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.


Hey pessoal!

Isso mesmo mais um PQC caindo do nada aqui no fórum! Desta vez não vai ser algo relacionado aos campeões. Hoje vamos para um lado mais técnico e conferir mais sobre o time da Riot Data Center e Riot Direct Networking/Software/System. Sim, este será um tópico bem específico, mas achei interessante para dar um pouco mais de contexto sobre algumas coisas que rolam lá na Riot Central e Global em relação a conexão e outras curiosidades.

Para quem não conhece o Ask Me Anything(AMA)/ Pergunte Qualquer Coisa(PQC), um indivíduo ou grupo que participou de uma experiência se dispõe para responder perguntas relacionadas ao assunto em pauta, pratica que é bem comum lá no Reddit. Como este conteúdo é feito apenas em Inglês pela Riot Central, achamos interessante trazer este tipo de informação para nossa região também.


Tivemos várias perguntas sobre servidores, como funcionam algumas estruturas, para o pessoal interessado ou que trabalha com isso acredito que vão curtir. Não foi feita a tradução inteira da discussão, pois alguns são piadas internas ou algo bem regional, também selecionamos apenas algumas discussões, por isso caso ainda tenha interesse no assunto, confira o post original do Reddit.


Observação: Pessoal que estiver interessado em fazer parte da equipe da Riot envolvendo este assunto, eles possuem várias vagas (:
https://www.riotgames.com/en/work-with-us/disciplines/engineering



Malgrimor:
Ao se deparar com novos sistemas de jogo como o Clash que forçam grandes cargas nos servidores de saguão e jogo, vocês consideram expandir os servidores, ou tentam melhorar o software já existente para suportar mais conexões?


RiotAkov:
Novos sistemas como o Clash ou URF possuem seus problemas característicos, assim são várias combinações diferentes de “alavancas” que vamos ter que puxar para ficarem estáveis. Raramente existe uma solução como “comprar novos hamsters” ou “arrumar o código”, é mais uma mistura de ajustar variáveis para resolver e prever problemas que podem acontecer.



Burningcookies:
Qual é o envolvimento do seu time na hora de executar eventos como o mundial/msi/finais?


Laslow21:
Eu tive a honra de ajudar o time de esports durante este último Worlds na Coreia e ano retrasado na China! Seus sistemas são completamente independentes do servidor normal e a conectividade também difere para os jogadores profissionais. Dito isso, nossa equipe da Riot Direct ajuda com a internet no local onde vai acontecer o evento, providenciando a “rede de transporte” (backbone) para fazer com que a transmissão do evento ocorra sem erros. Possuímos um backbone bem confiável que se conecta ao redor do planeta, e nos ajuda na transmissão de vídeos em alta qualidade. Você talvez se lembre que anunciamos que não seria necessário viajar para o Mundial este ano, sendo este um dos motivos para conseguir cumprir esta promessa. Conseguimos obter uma banda de alta qualidade no local do evento semanas antes dele ocorrer.



Varrock:
1. Vocês conhecem um programa chamado Haste? Resumindo, ele melhora consideravelmente o ping independente de onde você está durante as sessões de jogos. Vocês utilizam algo parecido com o que eles fazem? É possível melhorar o ping desta forma em um futuro próximo mais do que já está?
2. Qual o motivo do servidor LAN estar localizado em Miami, FL?


RiotKorensky:
1. Nós conhecemos o Haste e já nos comunicamos bastante em diversas ocasiões para resolver vários problema de conexão e rotas. Não queremos copiar o trabalho que eles fazem, pois é o produto deles. Fazemos o que podemos para tornar nosso roteamento nativo o mais otimizado possível para nosso jogo e jogadores utilizando métodos mais tradicionais, enquanto a Haste e outros serviços de VPN por mais que sejam excelentes em diversos aspectos infelizmente podem ser bloqueados por vários motivos.

2. Miami foi nossa escolha inicial, tendo em vista a proximidades dos cabos submarinos que conectam o Estados Unidos com os outros países. Nós já exploramos outras alternativas em diferentes regiões, mas geralmente realizar esta mudança física de servidores sempre causa problemas para alguns invocadores enquanto melhora para outros. Continuamos neste esforço de trabalhar em parceria com grandes provedoras em locais como o México, onde infelizmente nossas tentativas para melhorar a conexão provaram ser difíceis.



Neville_Lynwood:
O quão frequente os desenvolvedores de terceiros (third parties) complicam o seu trabalho? No sentido de o quão frequente uma atualização de sistema operacional, atualização de driver de conexão, ou uma alteração de rotas de provedoras, etc, impactam em seus trabalhos?


Laslow21:
Do nosso ponto de vista de NetEng/SysEng as atualizações de sistemas operacionais não nos afetam, outros times precisam cuidar dessas coisas. Agora, provedoras de internet com problemas em suas redes realmente percebemos e sentimos! Diferente de outros tipos de tráfegos de internet como Netflix ou Reddit, como todos sabem, League é bem sensível a instabilidades de rede devido seu ambiente em tempo real. Então quando uma provedora de internet grande ou provedor de backbone sofre com rompimento de fibras ou problemas internos de rotas, nós tentamos intervir ajudando com o que podemos. Grande parte das vezes não temos muito o que fazer, mas em alguns casos somos capazes de rotear o tráfego em torno desta provedora específica, desta forma configuramos um protocolo de roteamento (chamado de BGP) para ignorar um certo ASN (nome dados às provedoras na internet). Nosso backbone foi feito propositalmente para ser redundante e normalmente receber conexões de diversas provedoras, com finalidade de nos proteger. Mas em algumas áreas não possuímos esta opção. Nós definitivamente damos nosso melhor no “front” e no “back-end” para evitar qualquer tipo de problema. Imagine você recebendo uma mensagem as 3 horas da manhã, pois uma região acabou de duplicar o ping devido uma troca de rotas! Como jogadores nós sabemos que isso é horrível, então mesmo com sono vamos pular no problema e tentar ajudar onde der.



Dailand:
Hey queria fazer uma pergunta, não os culpo se não é possível melhorar isso, mas adoraria uma explicação sobre. Minha conexão é realmente beeeem ruim, então é comum eu ter que trocar minha conexão para uma de celular enquanto jogo. Quando faço isso, sou desconectado do discord e de outros serviços por 1 ou 2 segundos no máximo, porém no LoL tenho que aguardar trinta segundos até um minuto para voltar ao jogo, gostaria de saber o motivo.


RiotKorensky:
Quando você troca de conexão, você estará entrando em nossos servidores com um novo endereço de IP. Já que o jogo utiliza o protocolo UDP como camada de transporte e ser um serviço sem conexão (pois não há a necessidade de manter um relacionamento longo entre o cliente e servidor), o servidor do jogo vai continuar enviando respostas para o seu antigo endereço de IP até que seja determinado que você foi desconectado, e uma sessão em prioridade entendeu que deve ser enviado os novo dados (isso é uma grande simplificação do processo atual, e sim, existem formas de melhorar isso, entretanto não é nada comum jogadores trocarem de IP no meio da partida).



Luzac:
Quais eventos no jogo e esports que fazem os servidores sofrerem mais?


Laslow21:
Qualquer tipo de evento especial (qualquer um que você possa imaginar) vai criar um grande estresse nos servidores. URF é definitivamente o maior de todos. O começo das temporadas de ranqueadas e final também afetam. Por isso sempre estamos monitorando os sistemas, observando a capacidade do servidor para saber quando está chegando na zona de perigo.



XcessiveAssassin:
Não é muito bem uma questão, mas lembro uns anos atrás (na quinta pré temporada ou fim da quarta temporada) durante o natal, os servidores estava absurdamente lotados. Estou falando de uma fila de 10000 pessoas. Gostaria de saber qual a reação e procedimentos de vocês neste tipo de situação.


RiotAgulot:
A primeira coisa que fazemos em situações críticas assim é não entrar em pânico. É bem fácil se perder no momento, percebendo que esses 10000 jogadores dependem de você para aliviar o quadro. Dito isso, temos times e planos preparados para lidar com o problema descrito. Nosso NOC (Network Operation Center / Centro de Operações de Rede) administram estas ocorrências e devo dizer que ficaram bons nisso. Nós algumas vezes criamos uma “sala de guerra” para solucionar problemas complexo, sempre com chamadas de vídeo acontecendo enquanto todos trabalham, ajuda muito ter várias pessoas focadas em um único problema.



FlameMLK:
Vocês utilizam ferramentas internas ou possuem softwares de terceiros para monitorar os dados?


Laslow21:
Utilizamos ambos. Depende do que estamos tentando monitorar, para um tipo de informação podemos ir para algo já pronto ou um programa que criamos aqui se for necessário dados específicos e customizações. Cada time pode atuar de formas diferentes, mas tentamos colocar todos os tipos de monitoramento em um único sistema para o nosso NOC trabalhar. Um salve para o pessoal do NOC, eles fazem um belo trabalho 24/7.



FuchsGewand:
Sempre me perguntei o motivo dos servidores não serem localizados em seus respectivos países (exemplo o servidor da Rússia fica na Alemanha).

Como é feito este planejamento de servidores para as regiões?

Vocês já trabalharam com a ideia de dividir a região NA em dois servidores separados, tentando melhorar o ping para as duas regiões?

Última questão, no pior dos casos envolvendo tempestades ou servidores danificados, vocês possuem planos elaborados para evitar que uma região fique dias sem uma correção?


RiotAkov:
Existem diversos fatores levamos em conta na hora de escolher um datacenter, também há várias decisões não intuitivas em relação a conexão. Em vários países as operadoras mais dominantes não cooperam e nem fazem o pareamento (peer) de conexão. Isso significa que se colocarmos nosso servidores nesta região, apenas metade dos invocadores vão ter uma conexão estável. Então faz sentido localizar os servidore mais próximos a um ponto onde nós podemos nos conectar ao máximo de provedoras possíveis.

Claro que há muito mais do que isso por trás da decisão, mas conforme você comentou a localização não é o fisicamente mais próximo.

Os piores quadros sempre estão em nossos planos e imaginações, então dependendo do que acontecer conseguimos corrigir rapidamente. Com estas estratégias e planos de prontidão, situações de furacões se aproximando ao datacenter cria mais cautela, assim precavendo para qualquer tipo de recuperação de dados até caso dos servidores terminarem debaixo da água.



iEcstasy:
Quais habilidades mais importantes que um Engenheiro de Sistema e Rede deve desenvolver em sua carreira? (Sou um Engenheiro Junior de Sistemas e Redes com 6 meses de experiência até então).


ritoBlueMoosto:
Honestamente a habilidade que você deve saber é “saber como aprender”. Esta indústria se move rapidamente, geralmente pegamos sistemas velhos que devem receber novas tecnologias em pouco tempo. A capacidade de identificar o que você precisa aprender hoje, entender este conteúdo para aplicá-la no amanhã logo em seguida, e continuar repetindo este processo é inestimável para essa indústria.
Pessoalmente prefiro trabalhar com alguém que queria ser um time e estar disposto a aprender, do que alguém que sabia tudo e seja chato / inconveniente.
Estas são algumas habilidades interpessoais, agora habilidades técnicas: se você for um engenheiro de sistema, tenha pelo menos o entendimento básico de Redes e como ela funciona. Realmente ajuda quando você for identificar problemas e dar uma evidência concreta de que o problema é relacionado a conexões, ao invés de assumir que seja algo e deixar na dúvida.
Outras habilidades técnicas: Cloud é a tendência atual, estar à vontade com esta tecnologia realmente vai dar uma bela ajuda no seu currículo. E por fim, automação. Se você conseguir deixar o computador fazendo o trabalho tedioso e complicado, você terá mais tempo no seu trabalho para fazer coisas mais divertidas ou algo que você quer.



Brainfrezza:
Algumas dúvidas:
- Qual o motivo do meu ping/fps piorar quando eu jogo ARAM e não quando jogo Summoner’s Rift, tendo em vista que as lutas são parecidas ou até maiores que as do ARAM? Sempre tive este problema até mesmo com troca de hardware, queria saber o motivo disso acontecer.
- O quão descentralizado sua equipe está? Vocês possuem dois “centros” (Dublin e Los Angeles) ou mais?
- Sua organização de cabos e boa (cable management)?
- Como é o consumo de café no escritório?


wr4ithL0rd:
Vou comentar o lado que eu conheço Smiley Happy
- Nossas novas prateleiras de servidores estão bem limpas. Todos os cabos possuem etiquetas em ambas as pontas, twinax, cobres (copper) e força estão separadas e grudadas com velcro nos respectivos canais de cabos.

- Falando a verdade, nosso consumo de café é bem alto. Faço coleção copos de café na minha mesa e depois de um tempo elas começam a se empilhar e ficam parecendo com torres de jenga.



RiotAgulot:
Todos os jogos, independente do tipo são colocados no mesmo servidor, realmente não acredito que tenham alterado isso em meu conhecimento.

Alguns times são mais “descentralizado” que outros. Nosso time especificamente é bem descentralizado. Eu trabalho no escritório de St Louis, e ao mesmo tempo outros funcionários do meu time estão espalhados pelo mundo, fazendo umas contagens temos mais engenheiros fora de LA do que no próprio escritório de LA.



Bouwer2100:
Como vocês melhoram o ping dos jogadores e até onde isso é possível, também levando em consideração se a conexão de alguém for ruim? Vocês resolvem isso criando códigos mais eficientes, melhoram a velocidade do servidor ou o que?


RiotAkov:
Temos um time dedicado para expandir o alcance de nossas redes, tentando aliviar o tráfego de jogadores da internet para chegar cada vez mais rápido na rede da Riot. Isso nos ajuda a evitar problemas gerais que acontecem na internet. Ao aumentar a qualidade de conexão (perda de pacotes/jitter), e como estão utilizando nossas redes, podemos otimizar o caminho e deixá-lo o mais curto possível, assim reduzindo a sua latência. Nós já fizemos parcerias com várias provedoras em cidades do mundo todo tentando criar a melhor experiência possível.

Em relação ao software, passamos um bom tempo criando pilhas de protocolos (network stack) o mais resiliente possível a interrupções e perdas de pacotes, porém sempre será um processo em constante evolução.



Swagflag:
Isso é praticamente perfeito.
Eu estou trabalhando como um Engenheiro de Monitoramento Live Ops já faz um pouco mais de um ano agora para uma empresa grande, mas estou meio incerto se estou qualificado para a posição de Técnico de NOC que está aberta, quais qualificações e ferramentas eu devo aprender antes de enviar minha aplicação?


ritoBlueMoosto:
Se você possui experiência como um engenheiro de monitoramento, então possivelmente você já está apto a virar qualquer tipo de NOC. Nosso NOC se esforça para não reinventar a roda, utilizando o padrão da indústria de ferramentas e técnicas.

Honestamente se você acha que está qualificado, ou até possui um pouco de incerteza, apenas envie o seu currículo. Isso vale para qualquer profissão, não só a Riot. Entrevista é um músculo que deve ser exercitado. Se você aplicar e for contratado, boa! Mas caso não tenha sido aceito, terá experiência e fará melhor na próxima entrevista (no caso da Riot são 6 meses de intervalo entre as entrevistas).



Benzaw:
Hey pessoal, obrigado pelo PQC.
Vocês podem esclarecer um pouco mais quais partes do League são hospedadas em infraestruturas diferentes? Por exemplo, temos o servidor de chat, saguão, seleção de campeão, jogo, etc.
Qual plataforma de virtualização (virtualization platform) vocês utilizam?
Qual o maior problema que vocês já enfrentaram?


Laslow21:
Hey Benzaw!

Estes serviços podem estar combinados na mesma infraestrutura ou em sistemas diferentes. Alguns podem estar em servidores bare-metal ou virtualizado. Tudo isso depende de como o serviço foi construído, já que os requisitos de conexão/latência foram determinados pelos desenvolvedores. Sei que é uma resposta bem genérica, mas realmente depende de muitos fatores.

Nós utilizamos diversas plataformas como - VMWare, Docker, k8s, etc. Mais uma vez mais uma resposta bem vazia, mas novamente, depende do que estamos trabalhando.

O maior problema que enfrentei foi um que eu mesmo causei. Pessoalmente causei uma queda no servidor EU, cometi um erro e direcionei via protocolo de roteamento todo o tráfego de uma maneira muito abaixo do ideal. Por sorte não durou muito tempo, mas me senti horrível, pois sei muito bem o que é receber aquele botão de “tentando reconexão”. Assumi o erro e comuniquei o caso, meu time apareceu para ajudar e tudo foi corrigido rapidamente.



WhiteKnightC:
Qual o motivo de várias pessoas no servidor LAS parecem possuir problemas com o ping? Pessoalmente nunca tive problemas, exceto na época da S3.


RiotKorensky:
Existe um terreno bem complicado em sua região com um backbone/fibras que cruzam outros países. Possuímos múltiplos caminhos que cruzam o Chile, passando pelos Andes até a Argentina, algumas vezes estes caminhos podem sofrer diferentes problemas em horários iguais. Algo que pode impactar no ping de jogador para jogador.



Aí ficamos com mais um Saiu no Reddit! Espero que tenham curtido, lembrando mais uma vez, caso queiram conferir a discussão na integra, não deixem de conferir a discussão original do Reddit.

Então é isso pessoal, até a próxima!


10 RESPOSTAS
Dragão

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

"Minha conexão é realmente beeeem ruim, então é comum eu ter que trocar minha conexão para uma de celular enquanto jogo"
Mas que raio de internet é essa que é pior que o 3G do celular? '-'
#VoltaBoards!!!

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

Riot BR é uma piada.


Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

Fico imaginando como conseguiram colocar uma quantidade de time no clash, deveria sair uma quantidade X, tipo um grafico, e como conseguiram reativa-lo, resumindo a quantidade de pessoas.
Aronguejo

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

máximo respeito ao "Laslow21" por assumir o erro e ajudar a concertar.


P.S. Ser Sup é ser mãe, ser filho é ser rebelde !
- I'm the best Sup. I really am, sue me! -





Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

@Eu Amo Paizuri O que raios Riot BR tem a ver com isso ?

 



Moderador

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.


@EngShady  escreveu:
"Minha conexão é realmente beeeem ruim, então é comum eu ter que trocar minha conexão para uma de celular enquanto jogo"
Mas que raio de internet é essa que é pior que o 3G do celular? '-'

Vesh, já passei por algumas dessas quando meu modem estava "quebrado", era só ter mais de duas conexões e ela começava a cair, 4g do celular, adaptador de wi-fi era a única forma de jogar ):

 

Aronguejo

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

Complementando algumas perguntas com informações do Brasil:

- Fazemos peering com todas as operadoras consideradas de grande porte segundo a ANATEL (Algar, Net, Oi, Vivo & Tim);
- No Brasil, é muito comum fibras se romperem todos os dias. Isso acontece, pois é quase impossível colocar os cabos debaixo da terra já que temos barreiras naturais por todo território (por isso histórias como: "idosa foi cuidar do jardim e cavou o cabo de fibra são comuns");
- Eu tomo muito café e SEMPRE SEM AÇÚCAR;

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

@Talles L Martins  É uma piada pq ela só presta pra isso, pra tradução.



Acadêmico de Piltover

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

"Meu cachorro cavou o quintal e derrubou o LoLzinho"
Fico imaginando o quão bizarro é ouvir isso hahahaha



Oiê, eu sou o Prometeus! Conheça meu canal! Smiley Happy

Re: Saiu no Reddit! - PQC - Equipes da Riot Data Center e Riot Direct Networking/Software/System.

@Eu Amo Paizuri É, o único impacto que eles tem é no servidor br em si.