• Nenhum resultado encontrado

Roteamento de Fluxos de Vídeo ao Vivo em Redes Par-a-Par

N/A
N/A
Protected

Academic year: 2021

Share "Roteamento de Fluxos de Vídeo ao Vivo em Redes Par-a-Par"

Copied!
12
0
0

Texto

(1)

Roteamento de Fluxos de V´ıdeo ao Vivo em Redes Par-a-Par

Heterogˆeneas

Thiago H. Silva1, Vin´ıcius F. S. Mota1 1Departamento de Ciˆencia da Computac¸˜ao

Universidade Federal de Minas Gerais (UFMG) 31.270-010 – Belo Horizonte – MG – Brasil

{thiagohs, vfsmota}@dcc.ufmg.br

Abstract. It is remarkable the increasing popularity of mobile devices, and the Peer-to-Peer live streaming aplications on the Internet. However, few studies have been developed to make possible the interoperability beetwen cell pho-nes and computers, in the same live streaming network. With that in mind, this work show and discuss two algorithms to contribute with that subject. We have verified that both algorithms have a good performance when, in the same network, the number of computers is equal or superior to cell phones, and that the algorithm defined as “Algorithm 2” is superior to the algorithm defined as “Algorithm 1”.

Resumo. ´E not´avel a popularizac¸˜ao dos dispositivos m´oveis e dos servic¸os de transmiss˜ao de v´ıdeo ao vivo Par-a-Par na Internet. Na literatura, no entanto, poucos estudos est˜ao sendo desenvolvidos para possibilitar a interoperabili-dade entre computadores e dispositivos m´oveis, numa mesma rede de trans-miss˜ao de fluxo de v´ıdeo ao vivo. Com isso em mente, esse trabalho apresenta e discute dois algoritmos para contribuir nesse aspecto. Constatamos, atrav´es de simulac¸˜ao, que ambos os algoritmos propostos apresentam bom resultados quando, numa mesma rede, o n´umero de computadores ´e igual ou superior ao n´umero de celulares, e que o algoritmo denominado “Algoritmo 2” foi superior ao algoritmo denominado “Algoritmo 1”.

1. Introduc¸˜ao

O consumo de conte´udo como seriados de TV, pequenos v´ıdeos (como os dispon´ıveis no YouTube [you 2008]), animac¸˜oes e outras aplicac¸˜oes que geram tr´afego atrav´es do consumo de v´ıdeo j´a representam mais de 60% de todo tr´afego da Internet e a tendˆencia ainda aponta para um elevado crescimento [cac 2008].

A aplicac¸˜ao de arquiteturas Par-a-Par (P2P) para troca de arquivos tem se tornado extremamente popular, representando boa parte do tr´afego da Internet. Recentemente pode-se observar o surgimento de uma nova aplicac¸˜ao que se torna cada vez mais popular, denominada transmiss˜ao de v´ıdeo ao vivo em arquiteturas Par-a-Par.

Atualmente existem v´arias arquiteturas propostas para esse tipo de transmiss˜ao, que podem ser classificadas de acordo com suas topologias: baseadas em ´arvores e ba-seadas em malha. Apesar desses sistemas se diferenciarem em sua arquitetura, a grande maioria possue um ponto em comum: assume-se que todos os Pares s˜ao capazes de atuar de forma homogˆenea, ou seja, n˜ao suportam heterogeneidade na rede.

(2)

Nesse trabalho, considera-se que o termo heterogˆeneo e suas derivac¸˜oes s˜ao re-ferentes a Pares que apresentam limitac¸˜oes entre si, sendo incapazes de realizar algumas tarefas de outros Pares. Dispositivos m´oveis podem ser considerados heterogˆeneos em relac¸˜ao a um computador, pois, possuem v´arias limitac¸˜oes, como restric¸˜oes de hardware e outras, suficientes para essa classificac¸˜ao.

Na literatura nenhuma das arquiteturas existentes baseadas em P2P para trans-miss˜ao de fluxo de v´ıdeo ao vivo est´a completamente preparada para suportar e tratar o tipo de rede abordada neste trabalho. Considerando o contexto de transmiss˜ao de v´ıdeo ao vivo em arquiteturas P2P heterogˆeneas, as limitac¸˜oes entre um computador e um celular, por exemplo, podem n˜ao ser desejadas dependendo da forma como o overlay ´e gerado. Para isso, basta imaginar a situac¸˜ao de um celular retransmitindo um v´ıdeo para um com-putador. As chances de ocorrerem grandes atrasos nessa retransmiss˜ao s˜ao altas, j´a que os recursos de processamento dispon´ıveis nos celulares n˜ao permitem a execuc¸˜ao dessa tarefa de forma eficiente. Isso sem levar em considerac¸˜ao outros pontos como: todos celulares est˜ao atr´as de um NAT; custo para tr´afego de dados, entre outros.

Levamos em considerac¸˜ao dispositivos m´oveis devido a sua grande popularidade atualmente. Estima-se que o n´umero de celulares em uso no mercado mundial seja mais de 2,1 bilh˜oes e ainda as previs˜oes indicam boas expectativas de crescimento [cia 2008]. Como a popularizac¸˜ao dos dispositivos m´oveis ´e relativamente recente, a demanda por novas aplicac¸˜oes e servic¸os ´e grande, tornando a pesquisa em distribuic¸˜ao de conte´udo para esse tipo de dispositivo, particularmente v´ıdeo ao vivo, desej´avel.

Com isso, os principais objetivos deste trabalho s˜ao apresentar e avaliar algoritmos que visam melhorar a qualidade da overlay gerada, para transmiss˜ao de v´ıdeo ao vivo em arquiteturas P2P heterogˆeneas, bem como, aumentar a satisfac¸˜ao dos usu´arios que possam utilizar dispositivos sem fio no sistema. Os algoritmos propostos neste trabalho podem ser aplicados, a princ´ıpio, com qualquer algoritmo j´a definido para gerac¸˜ao de overlays baseadas em estruturas de ´arvores. Isso ´e particularmente interessante, pois, possibilita de forma simples adaptar v´arios agoritmos para gerac¸˜ao de overlay destinada `a transmiss˜ao de fluxo de v´ıdeo, oferecendo melhor interoperabilidade entre, por exemplo, computadores e celulares.

A organizac¸˜ao do resto deste documento se divide da seguinte forma: Na sec¸˜ao 2 introduziremos uma vis˜ao geral do estado da arte sobre transmiss˜ao de v´ıdeo na Internet. Algumas caracter´ısticas relevantes dos telefones celulares s˜ao descritas em 3. Na sec¸˜ao 4 falaremos sobre a arquitetura utilizada neste trabalho. Na sec¸˜ao 5, apresentaremos os algorimos propostos. Na sec¸˜ao 6 ser´a descrito o experimento que avaliou os algoritmos propostos, cujos resultados s˜ao apresentados na sec¸˜ao 7. Por fim, na sec¸˜ao 8 s˜ao apresen-tadas algumas considerac¸˜oes finais.

2. Estado da arte

Na literatura existem v´arias t´ecnicas para transmiss˜ao de v´ıdeo/´audio armazenado, bem como ao vivo, na Internet. Essas t´ecnicas podem ser divididas em trˆes classes: baseadas em arquitetura cliente/servidor, baseadas em redes overlay e baseadas em redes Par-a-Par. As arquiteturas cliente/servidor tradicionais que realizam transmiss˜ao de v´ıdeo/´audio unicast claramente n˜ao escalam para muitos usu´arios, pois cada usu´ario exige o estabelecimento de um fluxo independente. Na tentativa de tratar esse problema,

(3)

v´arios algoritmos de compartilhamento de fluxo de v´ıdeo armazenado foram propostos [Rocha et al. 2005]. Com esses algoritmos ´e poss´ıvel atingir escalabilidade no n´umero de usu´arios.

Nos sistemas que se baseiam em redes overlay [Chawathe et al. ], v´arios servido-res s˜ao instalados pela rede e atuam como roteadoservido-res multicast na camada de aplicac¸˜ao. Esses servidores s˜ao distribu´ıdos estrategicamente na rede, garantindo que uma rede de alta qualidade para transmiss˜ao de v´ıdeo/´audio seja formada.

J´a os sistemas baseados em P2P possuem alta escalabilidade sem a necessidade de servidores dedicados para isso, ao contr´ario das redes overlay. Recentemente v´arios sistemas para transmiss˜ao de v´ıdeo ao vivo em arquiteturas P2P foram propostos e podem ser classificados com relac¸˜ao a suas topologias de redes: topologia baseada em ´arvores e em malha, como veremos adiante.

Topologia baseada em ´arvores [Deshpande et al. 2002, Tran et al. 2004, Castro et al. 2003, Kosti´c et al. 2003]: Nessa topologia os Pares formam uma estru-tura hier´arquica que se assemelha a uma ´arvore ou um conjunto de ´arvores (floresta). O conte´udo ent˜ao ´e transmitido do Par raiz (origem) para os Pares pertencentes a essa estrutura.

Topologia baseada em malhas [Hefeeda et al. 2003, Zhang et al. 2005]: As topo-logias baseadas em malhas surgiram para tratar alguns problemas das topotopo-logias baseadas em ´arvores, tratando principalmente as quest˜oes de n´os que n˜ao contribuem com o com-partilhamento de recursos e a recepc¸˜ao de conte´udo por um ´unico n´o.

A discuss˜ao se uma arquitetura baseada em ´arvores ou baseada em malhas ´e a mais indicada para transmiss˜ao de v´ıdeo P2P ao vivo ainda n˜ao est´a encerrada. Ambas as arquiteturas mostraram sua relevˆancia e sucesso, mas nenhuma delas completaram todos desafios atribu´ıdos a essas redes [Venkataraman and Francis 2006, J. Liu 2007].

Os trabalhos que mais se relacionam com nossa proposta s˜ao [Diaz et al. 2007] e [Meng-Ting Lu 2007]. Os autores de [Diaz et al. 2007] criaram um experimento simples para simular uma transmiss˜ao de fluxo de v´ıdeo envolvendo celular. Aquele trabalho difere da nossa proposta pois: consideramos uma rede P2P para transmiss˜ao de fluxo de v´ıdeo ao vivo; propomos e avaliamos algoritmos de roteamento para uma rede P2P de transmiss˜ao de v´ıdeo ao vivo, com interoperabilidade entre computadores e celulares; realizamos os testes numa rede que possu´ıa entrada e sa´ıda dinˆamica de n´os.

J´a em [Meng-Ting Lu 2007] os autores apresentam um sistema que utiliza v´arias t´ecnicas, incluindo MDC (Multiple Description Coding), que seria capaz de tratar v´arios casos de heterogeneidade, incluindo diferenc¸as de largura de banda de Internet e a cooperac¸˜ao entre computadores e dispositivos m´oveis. No entanto, as t´ecnicas empre-gadas naquele trabalho s˜ao complexas e n˜ao triviais de serem reproduzidas.

3. Particularidades dos Telefones Celulares

Os aparelhos celulares, que s˜ao os principais dispositivos m´oveis de estudo desse trabalho, apresentam as seguintes caracter´ısticas:

1. Custo associado ao tr´afego de Dados: Existe ainda um custo elevado para o tr´afego de dados em uma rede de telefonia celular.

(4)

2. Protec¸˜oes de rede: Todos os celulares participam de uma rede que utiliza o recurso de NAT.

3. Transmiss˜ao de baixa confiabilidade: Segundo testes de transmiss˜ao de fluxo v´ıdeo realizado por [Diaz et al. 2007], observa-se que em algumas situac¸˜oes, como por exemplo, quando existe mobilidade dos n´os, a qualidade da transmiss˜ao degrada proporcionalmente com relac¸˜ao `a velocidade. Al´em disso, o processo est´a sujeito a todos os problemas associados `as transmiss˜oes sem fio.

4. Limitac¸˜ao de recursos: Mem´oria e poder de processamento ainda s˜ao baixos. Essas caracter´ısticas podem contribuir negativamente para o sistema caso conside-rarmos um celular sendo transmissor de conte´udo. Como por exemplo, poderia incentivar o comportamento malicioso devido ao custo associado ao tr´afego de dados, bem como, poderia gerar atrasos desnecess´arios devido `as limitac¸˜oes dos aparelhos e a baixa confia-bilidade da rede utilizada, aumento da complexidade do sistema para lidar com a quest˜ao do NAT, entre outros.

Por esses motivos acreditamos que uma distinc¸˜ao na nossa rede, entre computa-dores e dispositivos m´oveis ´e ben´efica. Tamb´em acreditamos que celulares sendo folhas (n´o folha apenas recebe conte´udo e nunca repassa), na ´arvore de transmiss˜ao, ´e desej´avel.

4. A Arquitetura Utilizada

Depois de entender os aspectos espec´ıficos das arquiteturas P2P tradicionais de trans-miss˜ao de v´ıdeo ao vivo, e identificar os compromissos de incorporar dispositivos m´oveis nessas arquiteturas, chegamos `a conclus˜ao que uma estrutura poss´ıvel para suportar a interoperabilidade entre computadores e celulares seria a baseada em ´arvore.

Caso uma arquitetura em malha fosse adotada, todos n´os participantes deveriam necessariamente atuar como emissores e receptores da transmiss˜ao. E isso, como abor-dado na sec¸˜ao anterior, n˜ao ´e desejado. A Figura 1(a) ilustra o que aconteceria, caso um celular fosse inserido em uma arquitetura em malha. Como podemos observar, apenas o celular consegue acessar os computadores, mas os computadores n˜ao conseguem aces-sar o celular, pois ele se localiza atr´as de um NAT. Mesmo assim o sistema funcionaria, p´orem, isso degradaria a qualidade do servic¸o.

Um trabalho divulgado recentemente faz uma an´alise de um sistema para trans-miss˜ao de v´ıdeo ao vivo baseado em arquitetura P2P em estrutura de malha denominado Coolstream+, que ´e baseado no Coolstream[Zhang et al. 2005], e est´a em funcionamento na Internet. Aquele estudo mostrou que existe um n´umero significante de usu´arios que est˜ao atr´as de NATs, cerca de 45% dos usu´arios [Li et al. 2007]. Segundo os autores de [Li et al. 2007], esse fato ´e respons´avel por v´arios problemas naquele sistema, como baixo ´ındice de contribuic¸˜ao dos Pares, entre outros. Como todos os celulares se localizam atr´as de um NAT, a inclus˜ao dos mesmos numa arquitetura de malha faria aumentar esse problema, podendo ainda inviabilizar o sistema. Por esse motivo, acreditamos que uma arquitetura baseada em ´arvore, para tratar as situac¸˜oes propostas, seja mais interessante.

A Figura 1(b) mostra a organizac¸˜ao da arquitetura utilizada neste trabalho. A ar-quitetura ´e composta por um n´o denominado raiz, respons´avel por transmitir um fluxo de v´ıdeo ao vivo. Esse n´o raiz somente repassa conte´udo, nunca recebendo transmiss˜oes. Um n´o com bom n´ıvel de recursos (como capacidade de processamento, mem´oria prin-cipal e banda de conex˜ao) ´e denominado aqui n´o Convencional. Esse tipo de n´o pode

(5)

(a) Arquitetura em malha com a inclus˜ao de um celular (b) Arquitetura utilizada Figura 1. Arquiteturas

receber e repassar conte´udo (s˜ao consumidores e distribuidores). Por ´ultimo, n´os de ca-pacidade limitada formam uma classe de n´os aqui denominada M´ovel, que apenas recebe conte´udo e nunca o repassa, ou seja, esses n´os s˜ao apenas consumidores.

Todo n´o, como observado na Figura 1(b), possui uma camada denominada “ca-mada P2P”, que implementa o algoritmo respons´avel por garantir a interoperabilidade en-tre computadores e dispositivos m´oveis. Toda comunicac¸˜ao enen-tre as camadas de aplicac¸˜ao e de transporte passa pela “camada P2P”. Essa camada tamb´em possui a func¸˜ao de reali-zar multicast na camada de aplicac¸˜ao. O n´o servidor somente envia conte´udo, enquanto n´os do tipo Convencional podem receber e enviar conte´udo, assim eles s˜ao consumidores (c) e distribuidores (d), e por fim, um n´o do tipo M´ovel apenas recebe conte´udo.

A “camada P2P” adota diversas pol´ıticas e primitivas, que s˜ao respons´aveis pela organizac¸˜ao e manutenc¸˜ao da estrutura de distribuic¸˜ao de conte´udo utilizada. Es-ses padr˜oes s˜ao utilizados em diversas situac¸˜oes como, por exemplo, na construc¸˜ao e manutenc¸˜ao da ´arvore de transmiss˜ao. Eles ainda s˜ao utilizados para forc¸ar um cli-ente a se desligar e conectar a um n´o terceiro, para tratamento de falhas e outros. Em [Deshpande et al. 2002] foram realizadas v´arias an´alises de diferentes pol´ıticas em arqui-tetura baseada em ´arvore, e delas, utilizamos as que apresentaram melhores resultados.

5. Os Algoritmos

Em nossas decis˜oes sempre consideramos as implicac¸˜oes de dispositivos m´oveis traba-lhando em conjunto com computadores. Tais quest˜oes foram importantes para o de-senvolvimento dos dois novos algoritmos. Ambos os algoritmos possuem as seguintes premissas:

Definic¸˜oes:

1. N˜ao permitem que clientes do tipo M´ovel recebam pedidos de conex˜ao. 2. S˜ao pr´oprios para arquiteturas baseadas em ´arvores.

3. Possuem o objetivo de manter os pares do tipo M´ovel sempre como folhas da ´arvore de transmiss˜ao.

4. Todos os n´os do tipo Convencional da rede possuem um n´umero arbitr´ario de cli-entes ao qual eles podem atender, se esse n´umero n˜ao foi atingido o n´o se encontra no estado N˜ao Saturado.

(6)

Comportamentos:

O algoritmo representado na Figura 2 define o comportamento que os algoritmos propostos possuem para v´arias situac¸˜oes.

Figura 2. Comportamento em comum dos algoritmos propostos

Como foi observado nessas premissas, para manter os dispositivos m´oveis como folhas as vezes s˜ao realizadas desconex˜oes dos celulares, com intuito de ceder lugar a um computador. O que difere os dois protocolos ´e a forma de se re-conectar na ´arvore de transmiss˜ao, ap´os essa desconex˜ao.

Algoritmo 1:

Ap´os o momento de desconex˜ao, o Algoritmo 1 redireciona o celular para o n´o servidor (n´o fonte), utilizando o mesmo princ´ıpio de entrada no sistema. Caso n˜ao en-contre nenhum n´o para se conectar, o n´o do tipo M´ovel volta para o servidor raiz a fim de recomec¸ar o processo de procura por um n´o N˜ao Saturado.

A Figura 3 mostra o Algoritmo 1 em atuac¸˜ao. Nessa figura a situac¸˜ao “A” re-presenta uma ´arvore de transmiss˜ao com todos os dispositivos m´oveis sendo folhas. “B” representa um momento de desconex˜ao de um n´o do tipo M´ovel da ´arvore de transmiss˜ao; X estava com sua capacidade de consumidores atingida e recebeu uma nova requisic¸˜ao de Y, assim X desconecta o dispositivo m´ovel afim de deix´a-lo como folha. E por ´ultimo em “C”, o dispositivo m´ovel passa a ser folha novamente depois da desconex˜ao, para isso ele ´e redirecionado ao servidor raiz que em seguida o redireciona para um de seus Pares, esse processo acontece at´e que o celular ache um n´o dispon´ıvel para se conectar.

Caso o n´o do tipo M´ovel n˜ao encontre nenhum computador dispon´ıvel para se conectar, a premissa ´e de que ele deva voltar ao n´o raiz para recomec¸ar sua busca.

Figura 3. Funcionamento do Algoritmo 1

Algoritmo 2:

Assim que um n´o ´e desconectado do sistema, o Algoritmo 2 redireciona o Par desconectado para o n´o ao qual ele cedeu o seu lugar. A Figura 4 mostra o funcionamento

(7)

deste algoritmo. A situac¸˜ao “A” dessa figura representa a ´arvore com todos dispositivos m´oveis sendo folha. Em “B” ´e poss´ıvel observar o momento que um n´o que estava com sua capacidade de consumidores atingida e recebeu uma nova solicitac¸˜ao. Podemos ob-servar em “C” que o celular n˜ao ´e desconectado imediatamente, ele permanece conectado, mas agora em um estado tempor´ario at´e que o Par que ele cedeu lugar (Y) se conecte no seu lugar. Quando o n´o Y se conecta, o n´o do tipo M´ovel ´e redirecionado diretamente a ele, como pode ser observado na situac¸˜ao “D” dessa figura.

Figura 4. Funcionamento do Algoritmo 2

6. O Experimento

Nossos experimentos foram baseados em simulac¸˜ao. O simulador utilizado foi o J-SIM [j-s 2008]. Foram utilizadas 3 topologias diferentes, cada uma contendo 100 n´os. Essas topologias foram geradas utilizando o gerador de topologias GT-ITM [Zegura et al. 1996], no entanto, as topologias n˜ao s˜ao importantes no experimento uma vez que, n˜ao consideramos delay nem limitac¸˜oes de banda. Assumimos que os links que conectam os dispositivos sem fio na topologia gerada n˜ao adicionam perdas ou problemas extras. Os clientes do tipo Convencional foram configurados para aceitar 3 descendentes, e ´e assumido que eles teriam capacidade de banda suficiente para atendˆe-los. A durac¸˜ao da transmiss˜ao foi de 15 minutos, a uma taxa de transmiss˜ao de 25 pacotes por segundo. A probabilidade de perdas de pacotes foi de 1%.

Todos os Pares entravam no sistema no intervalo de 2 minutos. Consideramos uma probabilidade de desconex˜ao volunt´aria do sistema sendo: 3 n´os a cada 5 minutos. A probabilidade de a transmiss˜ao ter uma falha era de 1 n´o a cada 30 minutos. Os valores de alguns parˆametros foram utilizados de forma emp´ırica, enquanto outros foram baseados em [Deshpande et al. 2002].

O objetivo principal do experimento ´e avaliar qual seria o impacto de incorpo-rar os protocolos propostos em um algoritmo de gerac¸˜ao de ´arvores de transmiss˜ao. Para isso utilizamos um algoritmo de gerac¸˜ao de ´arvore simples como o proposto em [Deshpande et al. 2002]. Escolhemos esse algoritmo pela sua simplicidade, no entanto, seria poss´ıvel utilizar algoritmos que levassem em considerac¸˜ao pontos interessantes como RTT, na formac¸˜ao da overlay, e isso sem grandes alterac¸˜oes dos resultados en-contrados.

Para avaliar nosso algoritmo utilizamos as m´etricas: • Perda de pacotes

(8)

• Altura m´axima m´edia da ´arvore gerada

A m´etrica N´umero de Redirecionamentos ´e referente a todo tipo de redireciona-mento que um Par pode sofrer. Redirecionaredireciona-mentos acontecem quando: um n´o do tipo M´ovel cede seu lugar para um n´o do tipo Convencional; algum n´o perde contato com seu n´o m˜ae; e para realizar procuras por n´os N˜ao Saturados para se conectar. Essa m´etrica ´e ´util, pois o n´umero de redirecionamentos possue influˆencia direta na qualidade da trans-miss˜ao.

7. Resultados

Foram realizados trˆes conjuntos de experimentos com configurac¸˜oes diferentes, cada um desses experimentos foram executados nas trˆes topologias geradas. Na primeira configurac¸˜ao uma rede com mais computadores do que celulares foi considerada. J´a se-gunda configurac¸˜ao representa um caso equilibrado, mesmo n´umero de celulares e com-putadores, e a terceira representa uma rede com mais celulares do que computadores.

Em cada um desses conjuntos de experimentos executamos trˆes testes diferen-tes: a) simulando a interoperabilidade entre computadores e dispositivos m´oveis sem a utilizac¸˜ao de nenhum dos algoritmos propostos (que ser´a denominado aqui como Hi-pot´etico), b) utilizando o Algoritmo 1 e c) utilizando o Algoritmo 2.

O caso Hipot´etico assume que os celulares n˜ao utilizam o recurso de NAT, que eles n˜ao sofrem de limitac¸˜oes de mem´oria e processamento, que a rede utilizada por eles n˜ao oferece perdas adicionais, e que n˜ao existe tendˆencia de baixa permanˆencia no sistema devido ao custo relativo ao tr´afego de dados na rede. Com isso, os resultados da situac¸˜ao “a” servem apenas como base de comparac¸˜ao com os algoritmos propostos, represen-tando aqui, apenas para efeitos de comparac¸˜ao, um caso ´otimo que n˜ao necessariamente aconteceria na pr´atica.

Todos os resultados mostrados levam em considerac¸˜ao os resultados encontrados para todas as topologias utilizadas. Em todas as situac¸˜oes um cliente do tipo Convencional sempre era considerado a fonte de distribuic¸˜ao.

Experimento 1: Foram definidas 80 m´aquinas como sendo clientes do tipo Con-vencional e 20 m´aquinas sendo clientes do tipo M´ovel.

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 CDF Perdas (%) Hipotético Algoritmo 1 Algoritmo 2

(a) CDF de perdas, exp. 1

0 0.2 0.4 0.6 0.8 1 0 5 10 15 20 25 CDF Redirecionamento Hipotético Algoritmo 1 Algoritmo 2 (b) CDF de redirec., exp. 1 Figura 5. Resultados do experimentos 1

Na Figura 5(a) calculamos a CDF (Cumulative Distribution Function) referente `a porcentagem de perdas constatadas no experimento. Podemos observar que o Algo-ritmo 2 gera menos perdas que o AlgoAlgo-ritmo 1. Pode-se ainda perceber que nessa situac¸˜ao

(9)

os Algoritmos 1 e 2 obtiveram um resultado similar `a configurac¸˜ao Hipot´etica, ou seja, apresentaram bom desempenho.

Em seguida calculamos a CDF do n´umero de vezes que os clientes do tipo M´ovel foram redirecionados neste teste, como pode ser observado na Figura 5(b). Nota-se que o Algoritmo 2 tamb´em foi superior ao Algoritmo 1 nessa m´etrica.

Por ´ultimo calculamos o grau m´aximo m´edio da altura da ´arvore. Esse resultado pode ser observado na Figura 6(a). Como se pode constatar, o Algoritmo 2 gerou uma ´arvore de transmiss˜ao com distˆancia m´axima da raiz menor que o Algoritmo 1, o que ´e bastante desej´avel. 0 2 4 6 8 10 0 100 200 300 400 500 600 700 800 900

Altura Máxima Média

Tempo (s)

Hipotético Algoritmo 1 Algoritmo 2

(a) Distˆancia m´ax. raiz, exp. 1

0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 CDF Perdas (%) Hipotético Algoritmo 1 Algoritmo 2 (b) CDF de perdas, exp. 2 Figura 6. Resultados dos experimentos 1 e 2

Experimento 2: Definimos 50 m´aquinas como sendo clientes do tipo Convenci-onal e 50 m´aquinas sendo clientes do tipo M´ovel.

Na Figura 6(b) observa-se a porcentagem de perdas obtidas no final do experi-mento. Como pode ser observado o Algoritmo 2 foi superior ao Algoritmo 1, e assim como no experimento anterior ambos os algoritmos propostos apresentam ´ındices de perdas aceit´aveis. Com relac¸˜ao ao n´umero de redirecionamentos provenientes de cada

0 0.2 0.4 0.6 0.8 1 0 5 10 15 20 25 30 35 40 CDF Redirecionamento Hipotético Algoritmo 1 Algoritmo 2

(a) CDF de redirec., exp. 2

0 2 4 6 8 10 0 100 200 300 400 500 600 700 800 900

Altura Máxima Média

Tempo (s)

Hipotético Algoritmo 1 Algoritmo 2

(b) Distˆancia m´ax. raiz, exp. 2 Figura 7. Resultados do experimento 2

situac¸˜ao observa-se, Figura 7(a), que com o Algoritmo 1 o n´umero de redirecionamentos comparando com o Algoritmo 2 foi maior.

Por fim, calculamos o grau m´aximo m´edio da altura da ´arvore. Observa-se que com relac¸˜ao aos resultados anteriores, Figura 7(b), a situac¸˜ao Hipot´etica continua gerando uma ´arvore de transmiss˜ao com distˆancia m´axima m´edia da raiz bem semelhante, o que de

(10)

certa forma j´a era esperado. Nota-se tamb´em que os Algoritmos 1 e 2 geraram ´arvores de transmiss˜ao menores, mas que o Algoritmo 2 ainda ´e superior nesse sentido comparado com o Algoritmo 1.

Experimento 3: Definimos 20 m´aquinas como sendo clientes do tipo Convencio-nal e 80 m´aquinas sendo clientes do tipo M´ovel.

0 0.2 0.4 0.6 0.8 1 0 20 40 60 80 100 120 CDF Perdas (%) Hipotético Algoritmo 1 Algoritmo 2

(a) CDF de perdas, exp. 3

0 0.2 0.4 0.6 0.8 1 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 CDF Redirecionamento Hipotético Algoritmo 1 Algoritmo 2 (b) CDF de redirec., exp 3 Figura 8. Resultados do experimento 3

Na Figura 8(a) pode-se observar a CDF da porcentagem de perdas que o experi-mento apresentou para cada uma das situac¸˜oes analisadas. Nesse experiexperi-mento como j´a se era esperado alguns clientes do tipo M´ovel n˜ao conseguiria se conectar, devido ao baixo n´umero de clientes do tipo Convencional. Clientes que apresentaram 100% de perdas representam clientes que n˜ao conseguiram um n´o N˜ao Saturado para se conectar. Nota-se que o desempenho desse experimento com relac¸˜ao aos algoritmos propostos foi insatis-fat´orio, apresentando uma diferenc¸a enorme ao caso Hipot´etico.

A contagem do n´umero de redirecionamentos apresentados neste experimento pode ser observada na Figura 8(b). Observa-se que os Algoritmos 1 e 2 tiveram um alto n´umero de redirecionamentos. Isso pode ser explicado pelo fato de os clientes estarem configurados para nunca desistir de encontrar um n´o para se conectar. Como nesse ex-perimento v´arios clientes n˜ao localizariam um Par N˜ao Saturado, foram realizadas v´arias tentativas de conex˜ao at´e o fim do experimento.

0 2 4 6 8 10 0 100 200 300 400 500 600 700 800 900

Altura Máxima Média

Tempo (s)

Hipotético Algoritmo 1 Algoritmo 2

Figura 9. Dist ˆancia m ´ax. raiz, exp 3

Com relac¸˜ao `a distˆancia m´axima m´edia at´e a raiz, podemos observar na Figura 9 que o Algoritmo 2 foi respons´avel por uma ´arvore, com altura m´edia m´axima, menor do que a gerada pelo caso Hipot´etico, e que o Algoritmo 1 apresentou uma ´arvore de tamanho

(11)

m´aximo equivalente `a situac¸˜ao Hipot´etica. Isso pode ser explicado pelo alto n´umero de redirecionamentos de ambos os Algoritmos, e tamb´em pelo fato de alguns clientes n˜ao conseguirem se conectar.

8. Considerac¸˜oes finais e trabalhos futuros

Observamos que uma arquitetura favor´avel para a interoperabilidade entre computadores e celulares ´e a baseada em ´arvores. Como foi mostrado ´e interessante que os dispositivos m´oveis sejam tratados como folhas em uma ´arvore de transmiss˜ao. Foram realizados testes com um algoritmo gerador de overlay que produzia apenas uma ´arvore simples de transmiss˜ao. Por´em, a princ´ıpio, os algoritmos propostos podem ser aplicados em conjunto com qualquer algoritmo de gerac¸˜ao de overlay baseada em ´arvores.

Nos testes realizados, observamos que os algoritmos propostos apresentam bons resultados quando o n´umero de computadores ´e maior ou igual ao n´umero de celulares. Podemos observar uma tendˆencia de piora de resultados quando a discrepˆancia entre ce-lulares e computadores aumenta favoravelmente aos cece-lulares na rede analisada. Tamb´em constatamos que o Algoritmo 2 se mostrou mais eficiente que o Algoritmo 1.

A princ´ıpio, os algoritmos propostos s˜ao recomendados apenas quando se tem um n´umero maior ou equivalente de clientes do tipo Convencional com relac¸˜ao aos clientes do tipo M´ovel. Apesar de acreditarmos que na pr´atica o n´umero de dipositivos m´oveis seria inferior `a computadores numa mesma rede de transmiss˜ao de fluxo de v´ıdeo ao vivo, ´e interessante estudar formas para aumentar a eficiˆencia dos algoritmos quando o n´umero desses dispositivos ´e superior ao n´umero de clientes do tipo Convencional.

Em trabalhos futuros temos interesse em realizar experimentos com uma escala maior de n´os. Bem como, realizar testes com um prot´otipo, que j´a vem sendo desenvol-vido, em ambiente real.

Referˆencias

(http://www.cachelogic.com/, 2008). cachelogic. cachelogic.

(http://www.cia.gov/library/publications/the-world-factbook/rankorder/2151rank.html, 2008). CIA World Factbook 2007. CIA.

(http://www.j-sim.org/, 2008). j-sim. j-sim.

(http://www.youtube.com/, 2008). YouTube. YouTube.

Castro, M., Druschel, P., Kermarrec, A., Nandi, A., Rowstron, A., and Singh, A. (2003). SplitStream: High-bandwidth content distribution in a cooperative environment. Pro-ceedings of SOSP.

Chawathe, Y., McCanne, S., and Brewer, E. An architecture for internet content distri-bution as an infrastructure service. Unpublished, available at http://www. cs. berkeley. edu/yatin/papers.

Deshpande, H., Bawa, M., and Garcia-Molina, H. (2002). Streaming Live Media over a Peer-to-Peer Network. Stanford database group technical report (2002).

Diaz, A., Merino, P., Panizo, L., and Recio, A. (2007). Experimental analysis of peer-to-peer streaming in cellular networks. Advanced Networking and Applications, 2007. AINA’07. 21st International Conference on, pages 784–791.

(12)

Hefeeda, M., Habib, A., Botev, B., Xu, D., and Bhargava, B. (2003). PROMISE: peer-to-peer media streaming using CollectCast. Proceedings of the eleventh ACM internatio-nal conference on Multimedia, pages 45–54.

J. Liu, Sanjay G. Rao, B. L.-H. Z. (2007). Opportunities and challenges of peer-to-peer internet video broadcast. in (invited) Proceedings of the IEEE, Special Issue on Recent Advances in Distributed Multimedia Communications.

Kosti´c, D., Rodriguez, A., Albrecht, J., and Vahdat, A. (2003). Bullet: high bandwidth data dissemination using an overlay mesh. ACM SIGOPS Operating Systems Review, 37(5):282–297.

Li, B., Xie, S., Keung, G., Liu, J., Stoica, I., Zhang, H., and Zhang, X. (2007). An empirical study of the coolstreaming+ system. Selected Areas in Communications, IEEE Journal on, 25(9):1627–1639.

Meng-Ting Lu, Jui-Chieh Wu, K.-J. P. H. P. Y. J. C. H. (2007). Design and evaluation of a p2p iptv system for heterogeneous networks. In in IEEE Transactions on Multimedia. IEEE.

Rocha, M., Maia, M., ´Italo Cunha, Almeida, J., and Campos, S. (2005). Scalable media streaming to interactive users. In MULTIMEDIA ’05: Proceedings of the 13th annual ACM international conference on Multimedia, pages 966–975, New York, NY, USA. ACM.

Tran, D., Hua, K., and Do, T. (2004). A peer-to-peer architecture for media streaming. Selected Areas in Communications, IEEE Journal on, 22(1):121–133.

Venkataraman, J. and Francis, P. (2006). Chunkyspread: Multi-tree unstructured peer-to-peer multicast. in Proc. 5th International Workshop on Peer-to-Peer Systems.

Zegura, E., Calvert, K., and Bhattacharjee, S. (1996). How to model an internetwork. INFOCOM’96. Fifteenth Annual Joint Conference of the IEEE Computer Societies. Networking the Next Generation. Proceedings IEEE, 2.

Zhang, X., Liu, J., Li, B., and Yum, T. (2005). CoolStreaming/DONet: A Data-Driven Overlay Network for Efficient Live Media Streaming. Proceedings of IEEE INFO-COM, 3:13–17.

Referências

Documentos relacionados

Os principais objectivos definidos foram a observação e realização dos procedimentos nas diferentes vertentes de atividade do cirurgião, aplicação correta da terminologia cirúrgica,

psicológicos, sociais e ambientais. Assim podemos observar que é de extrema importância a QV e a PS andarem juntas, pois não adianta ter uma meta de promoção de saúde se

In this work, improved curves are the head versus flow curves predicted based on the correlations presented in Table 2 and improved by a shut-off head prediction

Segundo o mesmo autor, a animação sociocultural, na faixa etária dos adultos, apresenta linhas de intervenção que não se esgotam no tempo livre, devendo-se estender,

Conforme refere Chiavenato (2000, p.82), os clientes são os elementos que compram ou adquirem os produtos ou serviços prestados, ou seja, absorvem as saídas e os

Rosângela Costa Araújo CARTA DE APRESENTAÇÃO AOS PAIS OU RESPONSÁVEIS Salvador, ____ de ______________ de 2011 Senhores pais, mães ou responsáveis, Estou realizando uma pesquisa

Esta compreensão, obtida a partir da análise da evolução histórica da filosofia do direito efetuada na seção precedente, permite traçar a distinção principal

Por último, la Convención Americana sobre Derechos Humanos (en adelante CADH) en el art. Toda persona tiene derecho a la libertad de pensamiento y de expresión. Este