SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
01.00 – CDNs – Introdução




          Redes de Distribuição de Conteúdos




                     RDC/ISEL-DEETC-SRT
Introdução
• A Web surgiu enquanto forma de partilha de conteúdos e serviços
• Aumento de utilizadores e conteúdos, aumenta a necessidade de
  largura de banda necessária
• A maioria dos Web sites não consegue lidar com esta necessidade
• As Content Delivery Networks, surgiram para suprimir estas
  limitações – oferecem uma infra-estrutura e mecanismos para se
  poder escalar




                           RDC/ISEL-DEETC-SRT
Aplicações
•   Instituições académicas
•   Empresas de publicidade
•   Datacenters
•   ISPs
•   Lojas de música online
•   Operadores de telemóveis
•   Fabricantes de equipamento electrónico




                             RDC/ISEL-DEETC-SRT
Índice
• Fundamentos das CDNs
   –   Estado da arte
   –   Técnicas de replicação
   –   Gestão e entrega dos conteúdos
   –   Técnicas de caching
   –   Mecanismos de redireccionamento de pedidos
• Modelação e Performance de CDNs
• Aplicações e Plataformas Avançadas das CDNs
   –   CDNs dinâmicas
   –   Streaming cooperativo
   –   Serviços de vídeo em CDNs
   –   Disseminação de Informação em CDNs móveis
   –   Internetworking de CDNs
                               RDC/ISEL-DEETC-SRT
01.01 – CDNs – Fundamentos




         Redes de Distribuição de Conteúdos




                    RDC/ISEL-DEETC-SRT
Introdução
• Existe um constante desafio em desenvolver formas mais
  eficientes de entregar conteúdos aos utilizadores
• Situações de pico são criticas, por exemplo em alturas de
  incidentes mundiais
   – Os picos são conhecidos como flash crowds, ou efeito Slashdot
• Geração de um “hotspot” num determinado instante, devido à
  relevância do conteúdo

  Uma Content Delivery Network, é uma colecção de elementos de
rede, cooperantes entre si, existentes na Internet, onde o conteúdo é
 replicado em múltiplos servidores, de forma a permitir uma entrega
         eficaz e transparente do conteúdo aos utilizadores.

                               RDC/ISEL-DEETC-SRT
Introdução (2)
• As CDNs são uma forma de contornar as limitações de QoS que
  os utilizadores podem “sentir”.
• Fornecem serviços que melhoram a performance da rede,
  maximizando a largura de banda, acessibilidade e fiabilidade do
  conteúdo (através da replicação de dados).




                            RDC/ISEL-DEETC-SRT
Funcionalidades
• Serviços de redireccionamento de pedidos e entrega de conteúdos
   – Permite direccionar o pedido ao cache server mais próximo, usando mecanismos
     para ultrapassar a congestão
• Outsourcing de conteúdos e serviços de distribuição
   – Replica e/ou faz cache do conteúdo a partir da origem para servidores Web
     distribuídos
• Serviços de negociação de conteúdos
   – Para satisfazer a necessidade de um utilizador individual (ou grupo de
     utilizadores)
• Serviços de gestão
   – Para gerir os componentes de rede, efectuar o accounting e monitorizar e criar
     relatórios da utilização do conteúdo

  As CDNs estão em constante evolução, novos serviços/utilizações são
                     adicionados todos os dias.
                                   RDC/ISEL-DEETC-SRT
Modelo de uma CDN




                    RDC/ISEL-DEETC-SRT
Terminologia
• Entrega do conteúdo – refere-se à acção de servir o conteúdo aos pedidos vindos
  dos utilizadores
• Conteúdo – é o conjunto de recursos em formato digital que contêm duas partes
    – Dados codificados – dados estáticos, dinâmicos e contínuos
    – Metadata – descrição do conteúdo, permite a identificação, descoberta e gestão dos dados
      multimédia
• As CDNs podem ser vistas como uma nova camada do modelo OSI
    – Fornece serviços de rede baseando-se em protocolos da camada de aplicação, tais como o
      HTTP ou o RTSP/RTP.

• As 3 principais entidades numa CDN são:
    – Produtor/Fornecedor de conteúdos
    – Fornecedor da CDN
    – Utilizador final

• Edge/Surrogate server – servidor da CDN que replica ou faz cache dos conteúdos
• Web cluster – conjunto de servidores de edge



                                        RDC/ISEL-DEETC-SRT
Componentes




              RDC/ISEL-DEETC-SRT
Conteúdos/serviços fornecidos por uma CDN




                     RDC/ISEL-DEETC-SRT
Evolução
• Inicialmente tentou-se modificar a arquitectura da Web melhorando no hardware do
  servidor Web – aumentando o número de processadores, memória, espaço em disco,
  etc…
     – Leva a que num ponto no tempo tenhamos de andar a trocar de servidores Web constantemente
• Caching Proxies, introduzidos pelos ISPs para benificar utilizadores com larguras de
  banda reduzidas
     – De alguma forma o pedido do utilizador tem de ir parar às webcaches, que já contêm os dados armazenados e
       não precisam assim de os ir buscar ao servidor de origem
     – Hierarquia de Caching Proxies (locais, regionais, internacionais)
• Server farms – conjuntos de servidores com o mesmo conteúdo, que atendem os
  pedidos dos clientes
     – Usa-se um L4-L7 switch para redireccionar os pedidos dos clientes (baseando-se no URL, tipo de conteúdo,
       utlizador, etc.)
• O 9/11 foi um impulsionador nesta área, começaram nesta altura a surgir RFCs do IETF,
  bem como outras organizações que tentam normalizar as redes de distribuição de
  conteúdos:
     – Broadband Services Forum
     – ICAP Forum
     – Internet Streaming Media Alliance
•   A maioria das CDNs são proprietárias e privadas – operadas por empresas


                                               RDC/ISEL-DEETC-SRT
Evolução (2)




               RDC/ISEL-DEETC-SRT
Sistemas relacionados
• Vários sistemas partilham funcionalidades com as CDNs:
   – Data grids
      • Ambiente de computação intensiva, usado para manipulação de grandes
        quantidades de dados
      • Funcionalidades básicas:
          – Mecanismo de alta performance para transferência de dados
          – Mecanismo escalável de recoberta e gestão de réplicas
   – Distributed databases
      • Colecção de dados distribuída em por diferentes locais físicos, ligados por uma rede
        de dados
   – Redes Peer-2-Peer
      • Desenhadas para partilha de recursos entre computadores sem a existência de uma
        autoridade centralizada
      • Tarefas distribuidas


                                    RDC/ISEL-DEETC-SRT
Sistemas relacionados – Comparação




                     RDC/ISEL-DEETC-SRT
Estado da arte – CDNs comerciais
• Akamai
   – Formada a partir de um grupo do MIT, dedicada a resolver o problema das flash crowds
   – Cria múltiplas caches a partir do servidor de origem, o número de réplicas aumenta
     automaticamente em alturas de maior afluência
   – Redirecciona os clientes para o servidor mais próximo através de servidores de DNS
     especializados
   – Calcula o servidor mais próximo a partir do BGP, cruzando esta informação com “traceroutes”
   – Fornece conteúdo sobre HTTP ou HTTPS
   – Suporta streaming multimédia
• Edgestream
   – Vocacionada para streaming
   – Aplicações embebidas
   – Baseada em módulos cliente-servidor
        • Do lado do clientes o módulo é integrado com o Windows Media Player ou Real Player
• Limelight
   – Usa mecanismos baseados em DNS e BGP tal como a Akamai
• Mirror Image
   – Usa o DNS para redireccionar para um servidor mais próximo, se esse servidor não tiver o
     conteúdo o cliente é redireccionado (através de HTTP) para o servidor original.


                                            RDC/ISEL-DEETC-SRT
Estado da arte – CDNs Académicas
• Uso de P2P generalizado em CDNs académicas
• Lida facilmente com picos e falhas de nós
• CoDeeN
   – Sistema de proxies P2P – garante a premissa de que a performance é melhor
     assim do que na maioria dos sites
   – Rede de proxies abertos
   – O cliente acede a um dos proxies que caso não tenha os dados tenta obtê-los a
     partir de outros proxies, em ultima instância do servidor original
• Coral
   – O objectivo é efectuar mirrors de sites web
   – Para um utilizador usar a CoralCDN, basta adicionar “.nyud.net:8090” ao link
     para um site que se imagine que tenha bastante tráfego
   – Um cliente ao fazer isto é redireccionado para a webcache mais próxima
       • Usa proxies HTTP
       • DNS especializado


                                   RDC/ISEL-DEETC-SRT
Futurologia
• Conteúdo Dinâmico
   – Criação de técnicas para replicar as formas de criação do conteúdo
     dinâmico
   – Alguns fornecedores de CDNs comerciais já o fazem
• Web services
   – Replicação de web services
• CDN adaptativa para streaming multimédia
• CDN dinâmica para redes móveis
• Internetworking de CDNs




                                RDC/ISEL-DEETC-SRT

Más contenido relacionado

Similar a CDNs – Introdução

Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebRafael Chagas
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internetMarco Pinheiro
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02DP7
 
Latinoware 2012 - Desenvolvendo Interfaces com Holy
Latinoware 2012 - Desenvolvendo Interfaces com HolyLatinoware 2012 - Desenvolvendo Interfaces com Holy
Latinoware 2012 - Desenvolvendo Interfaces com HolyDextra
 
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...Leandro Guimarães
 
Ws2012r2 hyper v
Ws2012r2 hyper vWs2012r2 hyper v
Ws2012r2 hyper vFabio Hara
 
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoTchelinux
 
Windows Azure Pack - Visão Geral
Windows Azure Pack - Visão GeralWindows Azure Pack - Visão Geral
Windows Azure Pack - Visão GeralFabio Hara
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Marcelo Dieder
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)elliando dias
 
19-Sistemas Distribuidos.pptx
19-Sistemas Distribuidos.pptx19-Sistemas Distribuidos.pptx
19-Sistemas Distribuidos.pptxRoberto Aragy
 
Cloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaCloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaRicardo Martins ☁
 
Infraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webInfraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webIgor Herson
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfssuser1198af
 
Técnicas de Programação para a Web
Técnicas de Programação para a WebTécnicas de Programação para a Web
Técnicas de Programação para a WebLuiz Cláudio Silva
 

Similar a CDNs – Introdução (20)

Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na Web
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internet
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02
 
Latinoware 2012 - Desenvolvendo Interfaces com Holy
Latinoware 2012 - Desenvolvendo Interfaces com HolyLatinoware 2012 - Desenvolvendo Interfaces com Holy
Latinoware 2012 - Desenvolvendo Interfaces com Holy
 
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...
Latinoware2012 - Desenvolvendo interfaces WEB com HOLY de forma prática e efi...
 
Ws2012r2 hyper v
Ws2012r2 hyper vWs2012r2 hyper v
Ws2012r2 hyper v
 
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
 
Windows Azure Pack - Visão Geral
Windows Azure Pack - Visão GeralWindows Azure Pack - Visão Geral
Windows Azure Pack - Visão Geral
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)
 
Content Delivery Networks
Content Delivery NetworksContent Delivery Networks
Content Delivery Networks
 
Ass - RIA
Ass - RIAAss - RIA
Ass - RIA
 
19-Sistemas Distribuidos.pptx
19-Sistemas Distribuidos.pptx19-Sistemas Distribuidos.pptx
19-Sistemas Distribuidos.pptx
 
Aula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computingAula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computing
 
Cloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à práticaCloud & AWS: Da teoria à prática
Cloud & AWS: Da teoria à prática
 
CDN
CDNCDN
CDN
 
Infraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações webInfraestruturas enxutas para aplicações web
Infraestruturas enxutas para aplicações web
 
Data center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdfData center MCSBRC2010-slides.pdf
Data center MCSBRC2010-slides.pdf
 
Técnicas de Programação para a Web
Técnicas de Programação para a WebTécnicas de Programação para a Web
Técnicas de Programação para a Web
 
Como funciona a Internet
Como funciona a InternetComo funciona a Internet
Como funciona a Internet
 

Más de elliando dias

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slideselliando dias
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScriptelliando dias
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structureselliando dias
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de containerelliando dias
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Librarieselliando dias
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!elliando dias
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Webelliando dias
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduinoelliando dias
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorceryelliando dias
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Designelliando dias
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makeselliando dias
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.elliando dias
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebookelliando dias
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Studyelliando dias
 

Más de elliando dias (20)

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
 
Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
 
Ragel talk
Ragel talkRagel talk
Ragel talk
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
 
Rango
RangoRango
Rango
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
 

CDNs – Introdução

  • 1. 01.00 – CDNs – Introdução Redes de Distribuição de Conteúdos RDC/ISEL-DEETC-SRT
  • 2. Introdução • A Web surgiu enquanto forma de partilha de conteúdos e serviços • Aumento de utilizadores e conteúdos, aumenta a necessidade de largura de banda necessária • A maioria dos Web sites não consegue lidar com esta necessidade • As Content Delivery Networks, surgiram para suprimir estas limitações – oferecem uma infra-estrutura e mecanismos para se poder escalar RDC/ISEL-DEETC-SRT
  • 3. Aplicações • Instituições académicas • Empresas de publicidade • Datacenters • ISPs • Lojas de música online • Operadores de telemóveis • Fabricantes de equipamento electrónico RDC/ISEL-DEETC-SRT
  • 4. Índice • Fundamentos das CDNs – Estado da arte – Técnicas de replicação – Gestão e entrega dos conteúdos – Técnicas de caching – Mecanismos de redireccionamento de pedidos • Modelação e Performance de CDNs • Aplicações e Plataformas Avançadas das CDNs – CDNs dinâmicas – Streaming cooperativo – Serviços de vídeo em CDNs – Disseminação de Informação em CDNs móveis – Internetworking de CDNs RDC/ISEL-DEETC-SRT
  • 5. 01.01 – CDNs – Fundamentos Redes de Distribuição de Conteúdos RDC/ISEL-DEETC-SRT
  • 6. Introdução • Existe um constante desafio em desenvolver formas mais eficientes de entregar conteúdos aos utilizadores • Situações de pico são criticas, por exemplo em alturas de incidentes mundiais – Os picos são conhecidos como flash crowds, ou efeito Slashdot • Geração de um “hotspot” num determinado instante, devido à relevância do conteúdo Uma Content Delivery Network, é uma colecção de elementos de rede, cooperantes entre si, existentes na Internet, onde o conteúdo é replicado em múltiplos servidores, de forma a permitir uma entrega eficaz e transparente do conteúdo aos utilizadores. RDC/ISEL-DEETC-SRT
  • 7. Introdução (2) • As CDNs são uma forma de contornar as limitações de QoS que os utilizadores podem “sentir”. • Fornecem serviços que melhoram a performance da rede, maximizando a largura de banda, acessibilidade e fiabilidade do conteúdo (através da replicação de dados). RDC/ISEL-DEETC-SRT
  • 8. Funcionalidades • Serviços de redireccionamento de pedidos e entrega de conteúdos – Permite direccionar o pedido ao cache server mais próximo, usando mecanismos para ultrapassar a congestão • Outsourcing de conteúdos e serviços de distribuição – Replica e/ou faz cache do conteúdo a partir da origem para servidores Web distribuídos • Serviços de negociação de conteúdos – Para satisfazer a necessidade de um utilizador individual (ou grupo de utilizadores) • Serviços de gestão – Para gerir os componentes de rede, efectuar o accounting e monitorizar e criar relatórios da utilização do conteúdo As CDNs estão em constante evolução, novos serviços/utilizações são adicionados todos os dias. RDC/ISEL-DEETC-SRT
  • 9. Modelo de uma CDN RDC/ISEL-DEETC-SRT
  • 10. Terminologia • Entrega do conteúdo – refere-se à acção de servir o conteúdo aos pedidos vindos dos utilizadores • Conteúdo – é o conjunto de recursos em formato digital que contêm duas partes – Dados codificados – dados estáticos, dinâmicos e contínuos – Metadata – descrição do conteúdo, permite a identificação, descoberta e gestão dos dados multimédia • As CDNs podem ser vistas como uma nova camada do modelo OSI – Fornece serviços de rede baseando-se em protocolos da camada de aplicação, tais como o HTTP ou o RTSP/RTP. • As 3 principais entidades numa CDN são: – Produtor/Fornecedor de conteúdos – Fornecedor da CDN – Utilizador final • Edge/Surrogate server – servidor da CDN que replica ou faz cache dos conteúdos • Web cluster – conjunto de servidores de edge RDC/ISEL-DEETC-SRT
  • 11. Componentes RDC/ISEL-DEETC-SRT
  • 12. Conteúdos/serviços fornecidos por uma CDN RDC/ISEL-DEETC-SRT
  • 13. Evolução • Inicialmente tentou-se modificar a arquitectura da Web melhorando no hardware do servidor Web – aumentando o número de processadores, memória, espaço em disco, etc… – Leva a que num ponto no tempo tenhamos de andar a trocar de servidores Web constantemente • Caching Proxies, introduzidos pelos ISPs para benificar utilizadores com larguras de banda reduzidas – De alguma forma o pedido do utilizador tem de ir parar às webcaches, que já contêm os dados armazenados e não precisam assim de os ir buscar ao servidor de origem – Hierarquia de Caching Proxies (locais, regionais, internacionais) • Server farms – conjuntos de servidores com o mesmo conteúdo, que atendem os pedidos dos clientes – Usa-se um L4-L7 switch para redireccionar os pedidos dos clientes (baseando-se no URL, tipo de conteúdo, utlizador, etc.) • O 9/11 foi um impulsionador nesta área, começaram nesta altura a surgir RFCs do IETF, bem como outras organizações que tentam normalizar as redes de distribuição de conteúdos: – Broadband Services Forum – ICAP Forum – Internet Streaming Media Alliance • A maioria das CDNs são proprietárias e privadas – operadas por empresas RDC/ISEL-DEETC-SRT
  • 14. Evolução (2) RDC/ISEL-DEETC-SRT
  • 15. Sistemas relacionados • Vários sistemas partilham funcionalidades com as CDNs: – Data grids • Ambiente de computação intensiva, usado para manipulação de grandes quantidades de dados • Funcionalidades básicas: – Mecanismo de alta performance para transferência de dados – Mecanismo escalável de recoberta e gestão de réplicas – Distributed databases • Colecção de dados distribuída em por diferentes locais físicos, ligados por uma rede de dados – Redes Peer-2-Peer • Desenhadas para partilha de recursos entre computadores sem a existência de uma autoridade centralizada • Tarefas distribuidas RDC/ISEL-DEETC-SRT
  • 16. Sistemas relacionados – Comparação RDC/ISEL-DEETC-SRT
  • 17. Estado da arte – CDNs comerciais • Akamai – Formada a partir de um grupo do MIT, dedicada a resolver o problema das flash crowds – Cria múltiplas caches a partir do servidor de origem, o número de réplicas aumenta automaticamente em alturas de maior afluência – Redirecciona os clientes para o servidor mais próximo através de servidores de DNS especializados – Calcula o servidor mais próximo a partir do BGP, cruzando esta informação com “traceroutes” – Fornece conteúdo sobre HTTP ou HTTPS – Suporta streaming multimédia • Edgestream – Vocacionada para streaming – Aplicações embebidas – Baseada em módulos cliente-servidor • Do lado do clientes o módulo é integrado com o Windows Media Player ou Real Player • Limelight – Usa mecanismos baseados em DNS e BGP tal como a Akamai • Mirror Image – Usa o DNS para redireccionar para um servidor mais próximo, se esse servidor não tiver o conteúdo o cliente é redireccionado (através de HTTP) para o servidor original. RDC/ISEL-DEETC-SRT
  • 18. Estado da arte – CDNs Académicas • Uso de P2P generalizado em CDNs académicas • Lida facilmente com picos e falhas de nós • CoDeeN – Sistema de proxies P2P – garante a premissa de que a performance é melhor assim do que na maioria dos sites – Rede de proxies abertos – O cliente acede a um dos proxies que caso não tenha os dados tenta obtê-los a partir de outros proxies, em ultima instância do servidor original • Coral – O objectivo é efectuar mirrors de sites web – Para um utilizador usar a CoralCDN, basta adicionar “.nyud.net:8090” ao link para um site que se imagine que tenha bastante tráfego – Um cliente ao fazer isto é redireccionado para a webcache mais próxima • Usa proxies HTTP • DNS especializado RDC/ISEL-DEETC-SRT
  • 19. Futurologia • Conteúdo Dinâmico – Criação de técnicas para replicar as formas de criação do conteúdo dinâmico – Alguns fornecedores de CDNs comerciais já o fazem • Web services – Replicação de web services • CDN adaptativa para streaming multimédia • CDN dinâmica para redes móveis • Internetworking de CDNs RDC/ISEL-DEETC-SRT