SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Content Delivery Networks

    Caio Guimarães Souza
   Rodolfo Henrique Carvalho
Distribuição de conteúdo na Internet

  Agentes
     Usuário
     Provedor de conteúdo
        Proprietário de conteúdo
        Distribuidores de conteúdo
Distribuição de conteúdo na Internet

  Expectativas do usuário
     Desempenho
     Disponibilidade
     Segurança
     Anonimato
     Acessibilidade
     Personalização / relevância
     Privacidade
Distribuição de conteúdo na Internet

  Expectativas do proprietário de conteúdo
     Escalabilidade
     Flexibilidade
     Lucratividade
     Segurança
     Controle
     Gerenciabilidade
     Diversidade (usuários e dispositivos)
     Personalização de serviço
     Diferenciação
Distribuição de conteúdo na Internet

  Obstáculos para uma boa distribuição
    Latência e falta de garantia de qualidade de serviço
        Links lentos
        Backbones de tráfego lento
        Grande quantidade de hops
        Distância física
Distribuição de conteúdo na Internet

  Exemplo: infraestrutura de fotos do Facebook (maio 2007)
     1,7 bilhão de fotos de usuário (160 TB)
     2,2 bilhões de amigos marcados em fotos
     60 milhões de fotos adicionadas por semana (5 TB)
     3 bilhões de imagens servidas por dia
     100 mil imagens servidas por segundo em picos




        http://www.facebook.com/blog.php?post=2406207130
Distribuição de conteúdo na Internet

  Problema: alcançar, simultaneamente,
     otimização de distribuição de conteúdo
     satisfação de expectativas do usuário
     satisfação de expectativas do provedor de conteúdo


  Uma solução: CDN
Content Delivery Network (CDN)

"Um CDN representa um grupo de servidores geograficamente
dispersos implantados para facilitar a distribuição de
informação gerada por provedores de conteúdo de maneira
oportuna e eficiente."
                                                     (Held, 2006)
Funcionamento de um CDN

 Arquitetura




           http://ww2.cs.mu.oz.au/~apathan/CDNs.html
Funcionamento de um CDN

 Fluxo básico




           http://ww2.cs.mu.oz.au/~apathan/CDNs.html
Funcionamento de um CDN
 Página típica com conteúdo servido por um CDN




          http://ww2.cs.mu.oz.au/~apathan/CDNs.html
Funcionamento de um CDN

 Tipos de conteúdo providos




          http://ww2.cs.mu.oz.au/~apathan/CDNs.html
Elementos básicos de um CDN

 Servidores de origem

 Servidores de cache

 Balanceadores de carga / redirecionadores
Servidores de origem

  Fonte original do conteúdo

  Onde o conteúdo pode ser alterado

  Cópias do conteúdo são transferidas para servidores de
  cache
Servidores de cache

  Armazenam parte do conteúdo dos servidores de origem
  localmente


  Com CDN, a comunicação cliente-servidor é divida em:
     comunicação cliente / servidor de cache
     comunicação servidor de cache / servidor origem
Servidores de cache

  O conteúdo a ser cacheado pode ser:
     Total
     Parcial


  Se parcial, os critério de seleção desse conteúdo podem
  ser:
     Empírico
     Baseado em popularidade
     Baseado em correlação (sessão de usuário, URL, ...)
Servidores de cache
  Alguns métodos de "terceirização de conteúdo" são:
     Método cooperativo baseado em push
     Método não-cooperativo baseado em pull
     Método cooperativo baseado em pull

                       Pull                  Push
 Protocolo de automático           FTP, SFTP, rsync,
 transferência                     WebDAV, Amazon S3,
                                   ...

              praticamente não    flexível
      +       requer configuração
              falta de flexibilidade requer configuração
      -
Servidores de cache

  Alguns métodos de atualização de cache são:
     Atualização periódica
     Propagação de atualização
     Atualização sob demanda
     Invalidação
Servidores de cache

  O problema das réplicas de servidores Web
     Objetivo
         Maximizar o desempenho percebido pelo cliente
         Minimizar o custo de infraestrutura

     Alguns algoritmos foram propostos (Greedy, Tree-based
     replicas ...)
Balanceadores de carga / redirecionadores

  O uso de múltiplos servidores (origem ou cache) pode ser
  motivado por, entre outros:
     Vantagem econômica sobre o uso de um número menor
     de servidores mais robustos
     Facilitar a obtenção de escalabilidade, disponibilidade e
     desempenho adequado


  O balanceamento de carga/redirecionamento é necessário
  para manter o sistema, à medida que cresce,
     Confiável
     Apto a expandir-se mais
Balanceadores de carga / redirecionadores

  Algumas técnicas de balanceamento/redirecionamento são
     Balanceamento de carga DNS
     Mapeamento de endereço IP
     Endereçamento por IP virtual
Balanceadores de carga / redirecionadores

  Alguns critérios para distribuir o tráfego entre dois ou mais
  servidores são:
     Alocação aleatória
     Alocação round-robin
     Alocação round-robin ponderada
Alguns dos principais CDNs no mundo

                                      Akamai
                                      CDNetworks
                                      Mirror Image
                                      Level 3
                                      LimeLight Networks
                                      LocalMirror

                                      Distribui
                                      Exceda
                                      Global Crossing
                                      Samba TechAdmotion


           http://ww2.cs.mu.oz.au/~apathan/CDNs.html e
       http://www.dirceupauka.com/opcoes-de-cdn-no-brasil
Preços de serviços CDN

  Alguns dos principais critérios para determinação de preços
  são:
     Custo de largura de banda
     Tamanho do conteúdo replicado em servidores
     delegados
     Número de servidores delegados
     Confiabilidade e estabilidade do sistema
     Questões de segurança relacionadas à entrega de
     conteúdo terceirizado

  Em 2004, o preço médio era, em dólares por gigabyte
  transferido:
      $1 para rádio na Internet
      $1,75 para streaming de vídeo
Conclusão: como o CDN soluciona o
problema proposto
  Otimização de distribuição de conteúdo
     Diminui o número de hops e redes atravessadas
     Evita links e backbones lentos
     Diminui a distância entre cliente e servidor de conteúdo
Conclusão: como o CDN soluciona o
problema proposto
  Satisfação de expectativas do usuário
     Disponibilidade e desempenho
         A minimização da latência e a melhoria da qualidade
         de serviço são garantidas pela distribuição ótima de
         conteúdo
Conclusão: como o CDN soluciona o
problema proposto
  Satisfação de expectativas do proprietário de conteúdo
     Escalabilidade
         Garantida por uma distribuição de tráfego adequada
     Flexibilidade e lucratividade
         Terceirização evita necessidade de investimento em
         infraestrutura complexa e cara
         Terceirização reduz os custos de gerenciar tal
         infraestrutura
         Exemplo: Facebook
Obrigado!

Perguntas?
Referências bibliográficas
  Beaver, D. Facebook Photos Infrastructure. Acesso em: 12/04/2011. Disponível em: <http:
  //www.facebook.com/blog.php?post=2406207130>

  Content delivery network. Acesso em: 12/04/2011. Disponível em: <http://en.wikipedia.
  org/wiki/Content_delivery_network>

  Hull, S. Content Delivery Networks: Web Switching for Security, Availability, and Speed.
  McGraw-Hill/Osborne, 2002.

  Held, G. A Practical Guide to Content Delivery Networks. Auerbach Publications, Taylor &
  Francis Group, 2006.

  Leers, W. Faster & more flexible CDN integration. DrupalCon Paris, 2009. Acesso em:
  12/04/2011. Disponível em: <http://www.slideshare.net/wimleers/faster-more-flexible-cdn-
  integration>

  Manikandan, V. M. Content Delivery Networks. 2008. 30 f. Dissertação (Mestrado em
  Engenharia de Software) – Department of Computer Science, Cochin University of Science
  & Technology, India.

  Pallis, G.; Vakali, A. Insight and Perspectives for Content Delivery Networks: Striking a
  balance between the costs for Web content providers and the quality of service for Web
  customers. Communications of the ACM, Jan. 2006. Vol. 49, No. 1

Weitere ähnliche Inhalte

Was ist angesagt?

Serviços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualServiços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualshsouza
 
Windows Server 2012 - Além da virtualização
Windows Server 2012 - Além da virtualizaçãoWindows Server 2012 - Além da virtualização
Windows Server 2012 - Além da virtualizaçãoFabio Hara
 
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...eneck
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidorMarcia Abrahim
 
Novidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricNovidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricEvilázaro Alves
 
Ws2012r2 hyper v
Ws2012r2 hyper vWs2012r2 hyper v
Ws2012r2 hyper vFabio Hara
 
Maximize o Potencial do seu Datacenter com Citrix XenServer
Maximize o Potencial do seu Datacenter com Citrix XenServerMaximize o Potencial do seu Datacenter com Citrix XenServer
Maximize o Potencial do seu Datacenter com Citrix XenServerLorscheider Santiago
 
Apostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaApostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaDaniel Silveira
 
Acelerando sites e aplicacoes moveis com uma CDN
Acelerando sites e aplicacoes moveis com uma CDNAcelerando sites e aplicacoes moveis com uma CDN
Acelerando sites e aplicacoes moveis com uma CDNAmazon Web Services LATAM
 
Acelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNAcelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNJose Papo, MSc
 
Cliente e servidor
Cliente e servidorCliente e servidor
Cliente e servidorDavi Silva
 
Apostilas modelo cliente servidor
Apostilas   modelo cliente servidorApostilas   modelo cliente servidor
Apostilas modelo cliente servidorDaniel Silveira
 
windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntosFabio Hara
 
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de um
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de umWindows Server 2012 - O poder de multiplos servidores, a simplicidade de um
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de umFabio Hara
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançadoFabio Hara
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-VCDS
 
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.Amazon Web Services LATAM
 

Was ist angesagt? (20)

Serviços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtualServiços em nuvem para sua infraestrutura virtual
Serviços em nuvem para sua infraestrutura virtual
 
Windows Server 2012 - Além da virtualização
Windows Server 2012 - Além da virtualizaçãoWindows Server 2012 - Além da virtualização
Windows Server 2012 - Além da virtualização
 
Servidor web
Servidor webServidor web
Servidor web
 
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...
Desenvolvimento de Sistemas Cliente/Servidor - Estrutura de sistemas cliente ...
 
Arquitetura cliente servidor
Arquitetura cliente servidorArquitetura cliente servidor
Arquitetura cliente servidor
 
Novidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabricNovidades do Windows Azure AppFabric
Novidades do Windows Azure AppFabric
 
Ws2012r2 hyper v
Ws2012r2 hyper vWs2012r2 hyper v
Ws2012r2 hyper v
 
Maximize o Potencial do seu Datacenter com Citrix XenServer
Maximize o Potencial do seu Datacenter com Citrix XenServerMaximize o Potencial do seu Datacenter com Citrix XenServer
Maximize o Potencial do seu Datacenter com Citrix XenServer
 
Apostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaApostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiula
 
Acelerando sites e aplicacoes moveis com uma CDN
Acelerando sites e aplicacoes moveis com uma CDNAcelerando sites e aplicacoes moveis com uma CDN
Acelerando sites e aplicacoes moveis com uma CDN
 
Acelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNAcelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDN
 
Cliente e servidor
Cliente e servidorCliente e servidor
Cliente e servidor
 
Apostilas modelo cliente servidor
Apostilas   modelo cliente servidorApostilas   modelo cliente servidor
Apostilas modelo cliente servidor
 
windows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntoswindows server 2012 e windows 8 = melhores juntos
windows server 2012 e windows 8 = melhores juntos
 
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de um
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de umWindows Server 2012 - O poder de multiplos servidores, a simplicidade de um
Windows Server 2012 - O poder de multiplos servidores, a simplicidade de um
 
Hyper-V - avançado
Hyper-V - avançadoHyper-V - avançado
Hyper-V - avançado
 
Hyper-V
Hyper-VHyper-V
Hyper-V
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-V
 
Servidor WEB
Servidor WEBServidor WEB
Servidor WEB
 
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
AWS para terceiro setor - Sessão 3 - Protegendo seus dados.
 

Andere mochten auch

O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...
O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...
O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...Rodolfo Carvalho
 
Intro Dojo Rio Python Campus
Intro Dojo Rio Python CampusIntro Dojo Rio Python Campus
Intro Dojo Rio Python CampusRodolfo Carvalho
 
Desenvolvimento Web com TurboGears e DOSVOX
Desenvolvimento Web com TurboGears e DOSVOXDesenvolvimento Web com TurboGears e DOSVOX
Desenvolvimento Web com TurboGears e DOSVOXRodolfo Carvalho
 
Building and Deploying containerized Python Apps in the Cloud
Building and Deploying containerized Python Apps in the CloudBuilding and Deploying containerized Python Apps in the Cloud
Building and Deploying containerized Python Apps in the CloudRodolfo Carvalho
 
Python deployments on OpenShift 3
Python deployments on OpenShift 3Python deployments on OpenShift 3
Python deployments on OpenShift 3Rodolfo Carvalho
 
Composing WSGI apps and spellchecking it all
Composing WSGI apps and spellchecking it allComposing WSGI apps and spellchecking it all
Composing WSGI apps and spellchecking it allRodolfo Carvalho
 
The Go features I can't live without
The Go features I can't live withoutThe Go features I can't live without
The Go features I can't live withoutRodolfo Carvalho
 
The Go features I can't live without, 2nd round
The Go features I can't live without, 2nd roundThe Go features I can't live without, 2nd round
The Go features I can't live without, 2nd roundRodolfo Carvalho
 

Andere mochten auch (19)

Redes livres de escala
Redes livres de escalaRedes livres de escala
Redes livres de escala
 
Intro Dojo Rio
Intro Dojo RioIntro Dojo Rio
Intro Dojo Rio
 
O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...
O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...
O CPAN tem as ferramentas que você precisa para fazer TDD em Perl, o Coding D...
 
Pyndorama
PyndoramaPyndorama
Pyndorama
 
Comunicação
ComunicaçãoComunicação
Comunicação
 
Intro Dojo Rio Python Campus
Intro Dojo Rio Python CampusIntro Dojo Rio Python Campus
Intro Dojo Rio Python Campus
 
TDD do seu jeito
TDD do seu jeitoTDD do seu jeito
TDD do seu jeito
 
Pyndorama
PyndoramaPyndorama
Pyndorama
 
Redes livres de escala
Redes livres de escalaRedes livres de escala
Redes livres de escala
 
Desenvolvimento Web com TurboGears e DOSVOX
Desenvolvimento Web com TurboGears e DOSVOXDesenvolvimento Web com TurboGears e DOSVOX
Desenvolvimento Web com TurboGears e DOSVOX
 
Concurrency in Python4k
Concurrency in Python4kConcurrency in Python4k
Concurrency in Python4k
 
Building and Deploying containerized Python Apps in the Cloud
Building and Deploying containerized Python Apps in the CloudBuilding and Deploying containerized Python Apps in the Cloud
Building and Deploying containerized Python Apps in the Cloud
 
Python deployments on OpenShift 3
Python deployments on OpenShift 3Python deployments on OpenShift 3
Python deployments on OpenShift 3
 
Python in 15 minutes
Python in 15 minutesPython in 15 minutes
Python in 15 minutes
 
Coding Kwoon
Coding KwoonCoding Kwoon
Coding Kwoon
 
Composing WSGI apps and spellchecking it all
Composing WSGI apps and spellchecking it allComposing WSGI apps and spellchecking it all
Composing WSGI apps and spellchecking it all
 
Pykonik Coding Dojo
Pykonik Coding DojoPykonik Coding Dojo
Pykonik Coding Dojo
 
The Go features I can't live without
The Go features I can't live withoutThe Go features I can't live without
The Go features I can't live without
 
The Go features I can't live without, 2nd round
The Go features I can't live without, 2nd roundThe Go features I can't live without, 2nd round
The Go features I can't live without, 2nd round
 

Ähnlich wie CDN: Rede de entrega de conteúdo otimiza distribuição e satisfaz usuários e provedores

Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...Amazon Web Services LATAM
 
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWSBuilding blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWSAmazon Web Services LATAM
 
Webinar: Serviço de Distribuição de Conteúdo da AWS
Webinar: Serviço de Distribuição de Conteúdo da AWS Webinar: Serviço de Distribuição de Conteúdo da AWS
Webinar: Serviço de Distribuição de Conteúdo da AWS Amazon Web Services LATAM
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebRafael Chagas
 
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...PotiLivre Sobrenome
 
CDNs – Introdução
CDNs – IntroduçãoCDNs – Introdução
CDNs – Introduçãoelliando dias
 
Introdução S3 e Cloudfront
Introdução S3 e CloudfrontIntrodução S3 e Cloudfront
Introdução S3 e CloudfrontMichel Pereira
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infosimples
 
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...Otimizando o desempenho de transferência de arquivos e diretórios entre servi...
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...Joao Galdino Mello de Souza
 
Infraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webInfraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webIgor Herson
 
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...Amazon Web Services LATAM
 
Pense Aberto, Pense Linux
Pense Aberto, Pense LinuxPense Aberto, Pense Linux
Pense Aberto, Pense Linuxaviram
 
Melhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSMelhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSAmazon Web Services LATAM
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalAmazon Web Services LATAM
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud ComputingFrederico Madeira
 
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...Amazon Web Services LATAM
 

Ähnlich wie CDN: Rede de entrega de conteúdo otimiza distribuição e satisfaz usuários e provedores (20)

Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
Usando Amazon CloudFront para aumentar performance, disponibilidade e cache n...
 
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWSBuilding blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
Building blocks #4 - Rede de entrega de conteúdo (CDN) na AWS
 
Aceleracao+conteudo+dinamico
Aceleracao+conteudo+dinamicoAceleracao+conteudo+dinamico
Aceleracao+conteudo+dinamico
 
Webinar: Serviço de Distribuição de Conteúdo da AWS
Webinar: Serviço de Distribuição de Conteúdo da AWS Webinar: Serviço de Distribuição de Conteúdo da AWS
Webinar: Serviço de Distribuição de Conteúdo da AWS
 
Whole Site Delivery with Amazon CloudFront
Whole Site Delivery with Amazon CloudFrontWhole Site Delivery with Amazon CloudFront
Whole Site Delivery with Amazon CloudFront
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na Web
 
Integrando infraestruturas híbridas
Integrando infraestruturas híbridas Integrando infraestruturas híbridas
Integrando infraestruturas híbridas
 
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...
Implementando Distribuicao de Sistemas WEB Com NGINX - Fernando Henrique Eise...
 
CDNs – Introdução
CDNs – IntroduçãoCDNs – Introdução
CDNs – Introdução
 
Introdução S3 e Cloudfront
Introdução S3 e CloudfrontIntrodução S3 e Cloudfront
Introdução S3 e Cloudfront
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)
 
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...Otimizando o desempenho de transferência de arquivos e diretórios entre servi...
Otimizando o desempenho de transferência de arquivos e diretórios entre servi...
 
Infraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webInfraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações web
 
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...
AWS Storage Day - Novidades em Nuvem Híbrida, Edge Computing e Transferência ...
 
Pense Aberto, Pense Linux
Pense Aberto, Pense LinuxPense Aberto, Pense Linux
Pense Aberto, Pense Linux
 
Melhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWSMelhores práticas de workloads Microsoft na AWS
Melhores práticas de workloads Microsoft na AWS
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
Deep dive em aceleração de entrega de conteúdo, APIs e Aplicações utilizando ...
 
Computacao em nuvem
Computacao em nuvemComputacao em nuvem
Computacao em nuvem
 

Mehr von Rodolfo Carvalho

Go 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX GoGo 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX GoRodolfo Carvalho
 
OpenShift Overview - Red Hat Open School 2017
OpenShift Overview - Red Hat Open School 2017OpenShift Overview - Red Hat Open School 2017
OpenShift Overview - Red Hat Open School 2017Rodolfo Carvalho
 
OpenShift Overview - Red Hat Open House 2017
OpenShift Overview - Red Hat Open House 2017OpenShift Overview - Red Hat Open House 2017
OpenShift Overview - Red Hat Open House 2017Rodolfo Carvalho
 
Automation with Ansible and Containers
Automation with Ansible and ContainersAutomation with Ansible and Containers
Automation with Ansible and ContainersRodolfo Carvalho
 

Mehr von Rodolfo Carvalho (7)

Go 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX GoGo 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX Go
 
OpenShift Overview - Red Hat Open School 2017
OpenShift Overview - Red Hat Open School 2017OpenShift Overview - Red Hat Open School 2017
OpenShift Overview - Red Hat Open School 2017
 
OpenShift Overview - Red Hat Open House 2017
OpenShift Overview - Red Hat Open House 2017OpenShift Overview - Red Hat Open House 2017
OpenShift Overview - Red Hat Open House 2017
 
Automation with Ansible and Containers
Automation with Ansible and ContainersAutomation with Ansible and Containers
Automation with Ansible and Containers
 
Go 1.8 Release Party
Go 1.8 Release PartyGo 1.8 Release Party
Go 1.8 Release Party
 
A Tour of Go - Workshop
A Tour of Go - WorkshopA Tour of Go - Workshop
A Tour of Go - Workshop
 
XMPP
XMPPXMPP
XMPP
 

CDN: Rede de entrega de conteúdo otimiza distribuição e satisfaz usuários e provedores

  • 1.
  • 2. Content Delivery Networks Caio Guimarães Souza Rodolfo Henrique Carvalho
  • 3. Distribuição de conteúdo na Internet Agentes Usuário Provedor de conteúdo Proprietário de conteúdo Distribuidores de conteúdo
  • 4. Distribuição de conteúdo na Internet Expectativas do usuário Desempenho Disponibilidade Segurança Anonimato Acessibilidade Personalização / relevância Privacidade
  • 5. Distribuição de conteúdo na Internet Expectativas do proprietário de conteúdo Escalabilidade Flexibilidade Lucratividade Segurança Controle Gerenciabilidade Diversidade (usuários e dispositivos) Personalização de serviço Diferenciação
  • 6. Distribuição de conteúdo na Internet Obstáculos para uma boa distribuição Latência e falta de garantia de qualidade de serviço Links lentos Backbones de tráfego lento Grande quantidade de hops Distância física
  • 7. Distribuição de conteúdo na Internet Exemplo: infraestrutura de fotos do Facebook (maio 2007) 1,7 bilhão de fotos de usuário (160 TB) 2,2 bilhões de amigos marcados em fotos 60 milhões de fotos adicionadas por semana (5 TB) 3 bilhões de imagens servidas por dia 100 mil imagens servidas por segundo em picos http://www.facebook.com/blog.php?post=2406207130
  • 8. Distribuição de conteúdo na Internet Problema: alcançar, simultaneamente, otimização de distribuição de conteúdo satisfação de expectativas do usuário satisfação de expectativas do provedor de conteúdo Uma solução: CDN
  • 9. Content Delivery Network (CDN) "Um CDN representa um grupo de servidores geograficamente dispersos implantados para facilitar a distribuição de informação gerada por provedores de conteúdo de maneira oportuna e eficiente." (Held, 2006)
  • 10. Funcionamento de um CDN Arquitetura http://ww2.cs.mu.oz.au/~apathan/CDNs.html
  • 11. Funcionamento de um CDN Fluxo básico http://ww2.cs.mu.oz.au/~apathan/CDNs.html
  • 12. Funcionamento de um CDN Página típica com conteúdo servido por um CDN http://ww2.cs.mu.oz.au/~apathan/CDNs.html
  • 13. Funcionamento de um CDN Tipos de conteúdo providos http://ww2.cs.mu.oz.au/~apathan/CDNs.html
  • 14. Elementos básicos de um CDN Servidores de origem Servidores de cache Balanceadores de carga / redirecionadores
  • 15. Servidores de origem Fonte original do conteúdo Onde o conteúdo pode ser alterado Cópias do conteúdo são transferidas para servidores de cache
  • 16. Servidores de cache Armazenam parte do conteúdo dos servidores de origem localmente Com CDN, a comunicação cliente-servidor é divida em: comunicação cliente / servidor de cache comunicação servidor de cache / servidor origem
  • 17. Servidores de cache O conteúdo a ser cacheado pode ser: Total Parcial Se parcial, os critério de seleção desse conteúdo podem ser: Empírico Baseado em popularidade Baseado em correlação (sessão de usuário, URL, ...)
  • 18. Servidores de cache Alguns métodos de "terceirização de conteúdo" são: Método cooperativo baseado em push Método não-cooperativo baseado em pull Método cooperativo baseado em pull Pull Push Protocolo de automático FTP, SFTP, rsync, transferência WebDAV, Amazon S3, ... praticamente não flexível + requer configuração falta de flexibilidade requer configuração -
  • 19. Servidores de cache Alguns métodos de atualização de cache são: Atualização periódica Propagação de atualização Atualização sob demanda Invalidação
  • 20. Servidores de cache O problema das réplicas de servidores Web Objetivo Maximizar o desempenho percebido pelo cliente Minimizar o custo de infraestrutura Alguns algoritmos foram propostos (Greedy, Tree-based replicas ...)
  • 21. Balanceadores de carga / redirecionadores O uso de múltiplos servidores (origem ou cache) pode ser motivado por, entre outros: Vantagem econômica sobre o uso de um número menor de servidores mais robustos Facilitar a obtenção de escalabilidade, disponibilidade e desempenho adequado O balanceamento de carga/redirecionamento é necessário para manter o sistema, à medida que cresce, Confiável Apto a expandir-se mais
  • 22. Balanceadores de carga / redirecionadores Algumas técnicas de balanceamento/redirecionamento são Balanceamento de carga DNS Mapeamento de endereço IP Endereçamento por IP virtual
  • 23. Balanceadores de carga / redirecionadores Alguns critérios para distribuir o tráfego entre dois ou mais servidores são: Alocação aleatória Alocação round-robin Alocação round-robin ponderada
  • 24. Alguns dos principais CDNs no mundo Akamai CDNetworks Mirror Image Level 3 LimeLight Networks LocalMirror Distribui Exceda Global Crossing Samba TechAdmotion http://ww2.cs.mu.oz.au/~apathan/CDNs.html e http://www.dirceupauka.com/opcoes-de-cdn-no-brasil
  • 25. Preços de serviços CDN Alguns dos principais critérios para determinação de preços são: Custo de largura de banda Tamanho do conteúdo replicado em servidores delegados Número de servidores delegados Confiabilidade e estabilidade do sistema Questões de segurança relacionadas à entrega de conteúdo terceirizado Em 2004, o preço médio era, em dólares por gigabyte transferido: $1 para rádio na Internet $1,75 para streaming de vídeo
  • 26. Conclusão: como o CDN soluciona o problema proposto Otimização de distribuição de conteúdo Diminui o número de hops e redes atravessadas Evita links e backbones lentos Diminui a distância entre cliente e servidor de conteúdo
  • 27. Conclusão: como o CDN soluciona o problema proposto Satisfação de expectativas do usuário Disponibilidade e desempenho A minimização da latência e a melhoria da qualidade de serviço são garantidas pela distribuição ótima de conteúdo
  • 28. Conclusão: como o CDN soluciona o problema proposto Satisfação de expectativas do proprietário de conteúdo Escalabilidade Garantida por uma distribuição de tráfego adequada Flexibilidade e lucratividade Terceirização evita necessidade de investimento em infraestrutura complexa e cara Terceirização reduz os custos de gerenciar tal infraestrutura Exemplo: Facebook
  • 30. Referências bibliográficas Beaver, D. Facebook Photos Infrastructure. Acesso em: 12/04/2011. Disponível em: <http: //www.facebook.com/blog.php?post=2406207130> Content delivery network. Acesso em: 12/04/2011. Disponível em: <http://en.wikipedia. org/wiki/Content_delivery_network> Hull, S. Content Delivery Networks: Web Switching for Security, Availability, and Speed. McGraw-Hill/Osborne, 2002. Held, G. A Practical Guide to Content Delivery Networks. Auerbach Publications, Taylor & Francis Group, 2006. Leers, W. Faster & more flexible CDN integration. DrupalCon Paris, 2009. Acesso em: 12/04/2011. Disponível em: <http://www.slideshare.net/wimleers/faster-more-flexible-cdn- integration> Manikandan, V. M. Content Delivery Networks. 2008. 30 f. Dissertação (Mestrado em Engenharia de Software) – Department of Computer Science, Cochin University of Science & Technology, India. Pallis, G.; Vakali, A. Insight and Perspectives for Content Delivery Networks: Striking a balance between the costs for Web content providers and the quality of service for Web customers. Communications of the ACM, Jan. 2006. Vol. 49, No. 1