5. Transmissão escalável de media

 

 

   A Internet é em primeiro lugar um meio de um para um. As únicas ligações suportadas na Internet são entre dois computadores, não há um conceito de “transmissão” na Internet como um todo. De facto, o termo unicast tem sido utilizado para descrever a função da Internet de enviar media só para um utilizador. Qualquer webcast é simplesmente muitos unicasts, um para cada espectador. Cada um destes unicasts usa mais largura de banda na fonte da transmissão, atravessa todos os engarrafamentos presentes no caminho até à fonte da transmissão, e usa capacidade de processamento adicional no servidor de media para essa transmissão.

   Desde que a Internet se tornou uma tendência geral a meio da década de 1990, muitas grandes tecnologias foram criadas para abordar o problema da transmissão escalável de media (grandes audiências na ordem dos milhares ou dos milhões).

 

 

5.1. Multicast

 

   A meio da década de 1990 apareceu o multicast e o Mbone (Multimedia Backbone). Multicast permite todas as máquinas na mesma rede (usando router) partilharem e receberem apenas uma cópia de uma transmissão de media em directo.

Figura 5.1.1 – Multicast permite múltiplas máquinas partilharem e receberem apenas uma cópia de uma transmissão em directo

 

   Basicamente, poderia fazer com que a Internet beneficiasse de algumas das eficiências desfrutadas pela rádio ou pela televisão. E foi uma funcionalidade padrão da Internet metida em todos os routers. No entanto, era uma funcionalidade opcional; por defeito a maioria dos routers tinham o multicasting desligado. No entanto, o Mbone consistia numa técnica onde as pessoas se ligavam ao backbone multimédia criado por esta rede, por routers activados por multicast. Essencialmente, uma empresa que queria estar no Mbone, mas cujo ISP não estava, podia fazer um “túnel” pelo seu ISP para o Mbone. O problema era o facto de na altura, um T-1 ser bastante caro, a banda larga ser rara, e o multicast ser uma maneira de rapidamente gastar largura de banda. Não havia incentivos financeiros por parte dos ISPs para permitir uma característica que promovia aplicações de grande largura de banda.

   Existe uma subtil ironia nos webcasts de multimédia, como a rádio na Internet, que são hoje amaldiçoados pela popularidade: os custos com a largura de banda aumentam em função das audiências, em vez de serem um grande custo fixo como numa transmissão de rádio offline. Uma Internet adequadamente activada com multimédia com multicast routing pode resolver isto. No entanto, o multicast tal como é concebido ainda não satisfaz as necessidades das contabilidades financeiras que dariam aos ISPs o incentivo para activá-lo. Para além disto, é uma proposta de “tudo ou nada”; alguns routers com multicast não ajudam muito, é preciso uma maioria (quase todos) para fazer a diferença.

   Apesar de tudo, o trabalho em protocolos multicast continua ainda hoje e têm o seu nicho em redes empresariais. O multicast pode ser utilizado com eficácia para reduzir a quantidade de largura de banda usada numa empresa para webcasts em directo. Dentro da empresa a relativamente alta largura de banda (100 a 1000 Mbps) combinada com a capacidade de controlar o funcionamento da rede end-to-end fazem do multicast uma escolha prática.

 

 

5.2. Redes de entrega de conteúdos

 

   Em 1997, a Internet expandiu-se para o grande público. Muitas pessoas previam que a Internet parasse repentinamente devido ao crescimento do tráfego. A escalabilidade da Internet para websites estava em causa e muitos acreditavam que o crescimento de aplicações de streaming de media podia acabar com uma Internet funcional.

   Uma grande parte do problema era devido às ineficientes transmissões de grandes quantidades de dados. À medida que os dados viajavam entre os principais ISPs em importantes pontos de trocas, engarrafamentos e problemas de tráfego impediam os dados de passarem, mesmo quando havia muita largura de banda no destino e na fonte.

   A fonte dos conteúdos tinha muita largura de banda. Os consumidores tinham largura de banda suficiente para receberem os conteúdos. O problema estava em enviar os dados para a extremidade da rede onde estavam os consumidores, nos ISPs de banda estreita ou de banda larga. Uma solução já em uso era alojar conteúdo em diferentes localizações e utilizadores no servidor mais local. Redes de entrega de conteúdos (CDNs) conceberam uma maneira de automatizar o processo, e distribuir automaticamente o conteúdo a estes servidores na extremidade da rede. Esta solução funciona muito bem para páginas web e para o chamado conteúdo estático, com gráficos e grandes ficheiros de media. Tudo o que podia estar num servidor de web beneficiou desta abordagem.

   Se um servidor de web está localizado em Nova Iorque, mas tem utilizadores em Londres, a CDN copia os ficheiros estáticos para esse sítio para um servidor local em Londres. No entanto o atraso a recuperar estes é grande. A página HTML principal pode ainda estar alojada num servidor em Nova Iorque, mas todos os grandes ficheiros (gráficos, ficheiros multimédia, …) são alojados em Londres em máquinas operadas por essa CDN. A CDN opera muitos servidores em diferentes locais em todo o Mundo, podendo aumentar escalabilidade assim como reduzir o atraso. Alguns servidores de web que apenas têm de servir páginas HTML, mas podem descarregar gráficos e multimédia servindo centenas de servidores em todo o Mundo, podem aumentar para milhões de utilizadores onde anteriormente estavam limitados a dezenas de milhares. Para media estático, as CDNs são um conceito provado. Para aplicações que permitem pre-caching de conteúdo (enviar os ficheiros para servidores de extremidade antes que sejam pedidos) antes que a procura chegue, as CDNs são uma boa solução.

   No entanto, as CDNs falharam em abordar adequadamente as necessidades do media em tempo real. Estações de rádio, webcasts de vídeo em directo e aplicações semelhantes têm problemas semelhantes de escala, mas não acabam com a mesma abordagem CDN.

   Para distribuir áudio ou vídeo em tempo real a milhares ou a milhões de consumidores por servidores de extremidade, é necessário conseguir enviar o ficheiro media para esses servidores em tempo real. Como já foi referido anteriormente a perda de pacotes e atrasos inibem isto. Se o stream está a ser gerado agora (como num concerto em directo) e pacotes são perdidos no caminho para um servidor de extremidade, todos os que estiverem ligados a esse servidor perdem pacotes.

   Algumas CDNs tentam minorar isto enviando a stream para os servidores de extremidade, múltiplas vezes por caminhos diferentes (na esperança que um dos streams chegue intacto). Outras CDNs exploraram ir à volta da Internet e usar satélites para enviar o espectáculo para cada servidor de extremidade da CDN, uma boa ideia na teoria, mas bastante dispendiosa na realidade. Os webcasts importantes em directo, de concertos e eventos para grandes audiências usando tecnologias CDN têm sido desde espectaculares fracassos a sucessos qualificados. E mesmo as mais destacadas CDNs tiveram que repetidamente reconfigurar o seu streaming contínuo de descarregamento de áudio para torná-los estáveis e funcionais.

   Parece que as CDNs são desafiadas apenas pelos streams de media em directo e conseguem entregar on-demand e downloaded media. No entanto, o problema é mais do que conseguir enviar conteúdo do servidor para a extremidade; mesmo com redes de extremidade, há barreiras na rede entre o servidor de extremidade e o cliente.

 

   Ao usar-se uma CDN, as páginas web parecem rápidas, porque são pequenas e não interessa ao utilizador se o download da página estática é feito num ou dois segundos. Para áudio e vídeo já é diferente. Mesmo para streams indirectos, a perda de pacotes entre um servidor de extremidade e o cliente pode ser um obstáculo na entrega de media.

   O termo “último quilómetro” tem sido utilizado para descrever a parte da rede que liga o utilizador final à Internet. O “último quilómetro” engloba o modem dialup, o modem de cabo, DSL, ou acesso wireless entre o utilizador final, até à sede do ISP e até à fonte de conectividade do ISP à Internet.

   Há vários pontos de falha entre o servidor de extremidade e o consumidor, por DSL, modem de cabo ou dialup. Em muitos casos, existe uma “nuvem” onde os frames (pacotes) são enviados do edifício local ou onde os fios vão até à fonte da largura de banda do ISP. Estas nuvens são frequentemente partilhadas entre vários ISPs concorrentes e podem criar engarrafamentos com o tráfego do consumidor para a Internet. Por exemplo, uma ligação por modem DSL pode ter capacidade para uma transferência de dados de 1,5 Mbps, mas durante um período de pico “tempestuoso” a nuvem transporta, de modo fiável, apenas 200 Kbps de tráfego ao consumidor. E como a ligação é apenas tão rápida quanto a sua ligação intermédia mais lenta, o tráfego entre dois pontos (o nó de extremidade e o backbone do ISP) pode afectar da mesma forma a entrega de media em tempo real.

   As CDNs têm definitivamente um lugar no puzzle de entrega de conteúdos, mas transferir media em tempo real na Internet continua a ser um desafio para os construtores de infra-estruturas da Internet.

 

 

5.3. Funcionamento de redes Peer-to-Peer (P2P)

 

   Quando os consumidores começaram a utilizar a Internet, existia uma distinção marcada entre servidores e clientes. Servidores eram estações de trabalho baseadas em Unix; os clientes eram PCs lentos ligados via modem. Hoje o mundo é radicalmente diferente. Servidores são PCs que correm uma variedade de sistemas operativos incluindo Windows, Linux e Mac OS X. Os utilizadores têm ligações DSL e por cabo de banda larga em computadores rápidos que deixam sempre ligados. Peer-to-peer (P2P) é um paradigma de funcionamento de rede que explora a nova realidade dos utilizadores já não serem cidadãos de segunda. O termo peer (não confundir com rede de peering referido anteriormente) descreve uma máquina numa rede também capaz de servir conteúdos de consumo.

   O funcionamento de rede P2P pode ser utilizado numa variedade de tarefas, obviamente incluindo partilha de música, mas para este trabalho interessa a entrega de media. O P2P utiliza os consumidores de conteúdos como servidores, e fá-lo de maneira automática: Os peers só começam a encontrar outros peers que tenham o conteúdo apropriado, em vez de terem de ir ao servidor fonte de media. A parte complicada de usar funcionamento de rede peer é o facto de adicionar falta de fiabilidade e aleatoriedade a um problema já propício a erros e com pouca fiabilidade, a entrega de media em tempo real. P2P destacou-se quando começou a transmitir ficheiros media, porque qualquer pessoa que faça download de um ficheiro torna-se instantaneamente outra fonte, e (assumindo que os utilizadores deixam as máquinas ligadas) outras pessoas à procura de um ficheiro podem obtê-lo de utilizadores anteriores do ficheiro.

   O P2P fornece normalmente poupanças nos custos, porque descarrega a procura de largura de banda nos utilizadores. O mais interessante é o facto do funcionamento de rede P2P também fornecer maior escalabilidade como a CDN, porque são essencialmente muitos nós pequenos de extremidade.

 

   Têm sido usadas diferentes abordagens de P2P na entrega de conteúdos para resolver uma variedade de problemas diferentes de entrega de conteúdos. O mais famoso uso de P2P envolve reduzir custos de banda larga para downloads de áudio ou vídeo on-demand (Napster). Outro uso famoso de técnicas P2P tem sido na entrega eficaz de emissões em directo a público na Internet ou numa intranet empresarial de maneira semelhante ao multicasting, mas implementado em software.

   Às vezes as redes P2P são apenas consideradas uma extensão da tecnologia CDN com nós de menor largura de banda. Outras vezes, as redes P2P são consideradas como uma maneira mais tradicional de balancear o uso de recursos (largura de banda, conectividade e tempo de processamento) na Internet.

 

 

5.4. O estigma da distribuição P2P de media

 

   Enquanto as CDNs existem desde finais da década de 1990 e são uma maneira respeitada e estabelecida de entregar conteúdos com fiabilidade, as tecnologias P2P carregam uma espécie de estigma por causa do seu uso exaustivo em aplicações de pirataria de software e de música [4]. No entanto, é um facto inegável que as redes P2P representam uma porção substancial de tráfego de Internet, incluindo a distribuição de áudio e vídeo. Deste modo, enquanto os principais editores e vendedores de media podem estar relutantes em considerar a tecnologia P2P, distribuidores de conteúdos para adultos, anunciantes na Internet e editores de videojogos já estão a experimentar e a usar distribuição P2P de media.

   Muitas empresas de tecnologia P2P evitam usar o termo P2P na sua procura de mercado de distribuição de media. Utilizam termos como funcionamento de rede outer edge, grelha, malha e downloads distribuídos para promover as suas técnicas e evitar as conotações controversas do P2P.

   Tal como as CDNs, as redes P2P não são concebidas para inter operar. Assim como cada CDN faz as coisas um bocado diferentes e crias a sua própria rede proprietária de distribuição, os vendedores de P2P criam as suas próprias redes privadas e seguras para distribuição de media.

   Um dos grandes problemas do P2P (não é um problema de transporte) é que colocar cópias permanentes ou temporárias de media por toda a Internet não é muitas vezes o efeito desejado, especialmente quando a media é cara de criar como a música e o vídeo. Para além dos problemas legais óbvios criados por aplicações que utilizam o P2P para partilhar ficheiros livremente e com qualquer um, as várias aplicações P2P seguras e fechadas ainda criam cópias parciais efémeras por toda a Internet. Os fornecedores de conteúdos gostavam de ter o melhor de dois mundos, as grandes poupanças nos custos da distribuição P2P assim como o controlo centralizado disponível nas tradicionais abordagens de cliente de servidor e CDN. As soluções P2P que têm como objectivo os grandes fornecedores de conteúdos conseguiram fornecer encriptação, fragmentação de ficheiros, segurança, controlo e de modo geral fazem as soluções P2P parecer exactamente como as CDNs, simples a um preço muito mais baixo e potencialmente um nível mais profundo de eficiência de funcionamento de rede.