Tecnologias que permitem a distribuição em escala do YouTube?

34

O Youtube, como sabemos, é enorme. Tem milhares de usuários simultâneos transmitindo pelo menos 2 megabytes por vídeo. Obviamente, isso significa muito tráfego ... demais para qualquer servidor.

Quais tecnologias de rede permitem o envio de 4 bilhões de vídeos por dia?

    
por user1034912 13.03.2012 / 06:24

5 respostas

51

Dimensionamento no backend

Em uma configuração muito simples, uma entrada DNS vai para um IP que pertence a um servidor. Todo mundo em todo o mundo vai para essa única máquina. Com tráfego suficiente, é demais para lidar muito antes de você chegar ao tamanho do YouTube. Em um cenário simples, adicionamos um balanceador de carga. O trabalho do balanceador de carga é redirecionar o tráfego para vários servidores de backend enquanto aparece como um servidor.

Com tantos dados quanto o YouTube, seria demais esperar que todos os servidores pudessem veicular todos os vídeos, por isso temos outra camada de indireção a ser adicionada: sharding . Em um exemplo inventado, um servidor é responsável por tudo que começa com "A", outro possui "B" e assim por diante.

Movendo a borda para mais perto

Eventualmente, porém, a largura de banda se torna intensa e você está movendo MUITOS dados para uma sala. Então, agora que somos super populares, saímos da sala. As duas tecnologias que importam aqui são redes de distribuição de conteúdo e Anycasting .

Onde eu tenho esses grandes arquivos estáticos sendo solicitados em todo o mundo, paro de apontar links diretos para meus servidores de hospedagem. O que eu faço em vez disso é colocar um link para o meu servidor CDN. Quando alguém pede para ver um vídeo, eles perguntam ao meu servidor CDN por ele. O CDN é responsável por já ter o vídeo, pedindo uma cópia do servidor de hospedagem, ou redirecionando-me. Isso varia de acordo com a arquitetura da rede.

Como isso é útil para o CDN? Bem, um IP pode realmente pertencer a muitos servidores que estão em muitos lugares em todo o mundo. Quando o seu pedido deixa o seu computador e vai para o seu ISP, o seu router mapeia o melhor caminho (o mais curto, o mais rápido, o menor custo ... qualquer que seja a métrica) para esse IP. Freqüentemente, para um CDN, ele estará na ou perto da rede Camada 1 mais próxima.

Então, solicitei um vídeo do YouTube. A máquina real em que foi armazenada é pelo menos iad09s12.v12.lscache8.c.youtube.com e tc.v19.cache5.c.youtube.com . Esses aparecem na fonte da minha página que estou vendo e foram fornecidos por alguma forma de servidor de indexação. Agora, do Maine, descobri que o servidor tc19 estava em Miama, na Flórida. De Washington, encontrei o servidor tc19 em San Jose, Califórnia.

    
por 13.03.2012 / 06:49
23

Várias técnicas são usadas para sites grandes.

www.youtube.com - > qualquer número de endereços IP

Vamos ver no DNS:

www.youtube.com is an alias for youtube-ui.l.google.com.
youtube-ui.l.google.com has address 74.125.226.14
youtube-ui.l.google.com has address 74.125.226.0
youtube-ui.l.google.com has address 74.125.226.1
youtube-ui.l.google.com has address 74.125.226.2
youtube-ui.l.google.com has address 74.125.226.3
youtube-ui.l.google.com has address 74.125.226.4
youtube-ui.l.google.com has address 74.125.226.5
youtube-ui.l.google.com has address 74.125.226.6
youtube-ui.l.google.com has address 74.125.226.7
youtube-ui.l.google.com has address 74.125.226.8
youtube-ui.l.google.com has address 74.125.226.9
youtube-ui.l.google.com has IPv6 address 2001:4860:800f::88

Então, o site www.youtube.com pode acessar vários endereços IP.

endereços IP anycasted

Um único IP pode ser tratado por qualquer número de sistemas autônomos (uma rede na internet) simultaneamente. Por exemplo, muitos dos servidores DNS raiz, bem como o servidor 8.8.8.8 DNS do Google, estão em qualquer ponto do mundo. A ideia é que, se você está nos EUA, você acessa a rede dos EUA e, no Reino Unido, acessa a rede do Reino Unido.

mídia proveniente de servidor diferente

Só porque você está em www.youtube.com , isso não significa que todo o conteúdo tenha que vir do mesmo servidor. Neste site, os recursos estáticos são fornecidos a partir de sstatic.net em vez de serverfault.com .

Por exemplo, se assistirmos a Escravo Leia PSA de Kaley Cuoco achamos que a mídia é servida por v10.lscache5.c.youtube.com .

várias conexões de internet

Garanto que o Youtube tem mais de uma conexão com a Internet. Apesar de todas as outras técnicas, mesmo se o Youtube fosse realmente um único site e um único servidor, ele poderia, em teoria, ter conexões com todas as outras redes às quais servia vídeo. No mundo real, isso não é possível, é claro, mas considere a ideia.

Qualquer uma ou todas essas ideias (e mais!) podem ser usadas para oferecer suporte a uma Rede de fornecimento de conteúdo . Leia este artigo se você quiser saber mais.

    
por 13.03.2012 / 06:42
12

Você está errado em imaginar que o YouTube (também conhecido como Google) tenha apenas um servidor; esta inforgraphic pode ajudar a ilustrar a escala do sistema que suporta esse serviço.

Mesmo que você tenha apenas um ponto de presença, pode ter absolutamente mais de um servidor por trás de um único nome e até IP, usando ferramentas como balanceadores de carga e tudo mais.

O Google, no entanto, tem muitos pontos de presença e usa ferramentas como o AnyCast - uma técnica para publicar o mesmo IP em vários lugares na Internet e ter pessoas encaminhadas para o pool de servidores mais próximo que possui - para apoiar a infra-estrutura.

    
por 13.03.2012 / 06:27
3

Vou falar um pouco sobre o lado da rede: o Google tem um Point of Presence (PoP) em 73 datacenters exclusivos em todo o mundo (sem incluir os seus próprios). Eles são membros de 69 trocas únicas na Internet . O Google está em mais datacenters e pontos de troca de Internet do que outras redes listadas no peeringdb.

A capacidade total de troca de internet do Google é de > 1,5Tbps, e essa de 1,5Tbps é reservada para redes com > 100Mbps de tráfego com o Google, mas menos do que eu acho em torno de 2-3Gbps. Depois de ter 'volume suficiente' , você é movido para o peering privado (PNI).

Além do peering no Exchange Internet e do peering privado (com o AS15169), o YouTube também opera uma rede de trânsito: o AS43515, e outra rede que eu suponho ser para o peering / estouro pago, o AS36040. O Google também opera os servidores Google Global Cache , para que os ISPs implantem ainda mais localmente em sua rede. (Dados de peeringdb, bgp.he.net).

Com base na minha experiência, acredito que o YouTube usa muito mais do que apenas geolocalização por IP ou Anycast para escolher um local para veicular vídeos.

O Google executa uma enorme rede de backbone global, eles possuem fibra escura , eles têm cabos submarinos financiados . O volume de tráfego gerado pelo YouTube é enorme! Eu acho que o YouTube tem um volume de tráfego de pico de > 12Tbps. O Google representa pelo menos 7% (e provavelmente > 10%) de todos os tráfego de internet do domínio.

Então, para realmente responder à sua pergunta, de uma perspectiva de rede, para escalar como o YouTube, você precisa fazer um grande investimento em sua rede - da fibra no solo ao equipamento WDM e aos roteadores. Você precisa colocar o conteúdo e a rede o mais próximo possível de seus usuários. Isso geralmente significa peering, IXs e talvez um pouco de trânsito. Você precisa ser capaz de informar de forma inteligente aos usuários de onde obter o conteúdo para manter o tráfego o mais distribuído e barato possível. E, claro, você tem que ter uma enorme infraestrutura de servidores para armazenar, processar, converter e entregar 4 bilhões de visualizações por dia!

Se você está curioso sobre o lado do servidor, eu escrevi uma postagem no blog que divide algumas das imagens de datacenter lançadas recentemente.

    
por 23.04.2013 / 01:27
2

Se você quiser saber mais sobre os sistemas de grande escala e as tecnologias que essas empresas usam, a melhor fonte agora é link

As maiores empresas como Google ou Akamai, elas sempre têm componentes que eles escreveram / criaram por si mesmos. (por exemplo, a Akamai desenvolveu um servidor web para seus serviços)

    
por 13.03.2012 / 08:43