Técnicas para Sistemas de Vídeo sob Demanda Escaláveis
|
|
- Giovana Bardini Rocha
- 8 Há anos
- Visualizações:
Transcrição
1 Técnicas para Sistemas de Vídeo sob Demanda Carlo K. S. Rodrigues,2, Luiz J. H. Filho 2 & Rosa M. 2 Centro de Desenvolvimento de Sistemas Departamento de Ciência e Tecnologia Exército Brasileiro QGEx - Bloco G - 2 Piso - Ala Norte CEP Brasília - DF - Brasil Fone: +55 (6) FAX: +55 (6) {carloleber}@gmail.com.br 2 Programa de Engenharia e Sistemas de Computação - PESC/COPPE Universidade Federal do Rio de Janeiro CEP CxP Rio de Janeiro - RJ - Brasil Fone: +55 (2) FAX: +55 (2) {ljhfilho rosam }@land.ufrj.br Abstract This wor introduces the novel bandwidth sharing technique denoted as Merge Interativo (). Additionally, two new policies for exploiting the client s buffering capability are also proposed: Unique Buffer (UB) and Precise Buffer (PB). Throughout trace-driven simulations, using worloads generated from real multimedia servers, we validate our proposals and carry out detailed competitive analyses with other proposals in the literature. Our results show that combining the technique with the buffering policies maes it possible to achieve quite significant overall reductions at average bandwidth, pea bandwidth and system complexity. Keywords: Video on Demand, Multicast, Multimedia, Buffering, Bandwidth sharing Resumo Este trabalho apresenta a nova técnica de compartilhamento de banda chamada Merge Interativo (). Também são propostas duas novas políticas de gerência de buffer: Unique Buffer (UB) e Precise Buffer (PB). Por meio de simulações, usando cargas geradas a partir de servidores de multimídia reais, validamos nossas propostas e realizamos detalhadas análises competitivas com outras propostas da literatura. Os resultados mostram que combinando a técnica com as políticas de gerência de buffer podemos obter otimizações significativas nos Este trabalho é parcialmente financiado pelo CNPq e Faperj. valores de banda média, pico de banda e complexidade do sistema. Palavras-chave: Vídeo sob Demanda, Multicast, Multimídia, Buffering, Compartilhamento de banda. INTRODUÇÃO Os sistemas de vídeo sob demanda (VoD Video on Demand) com interatividade têm recebido crescente atenção nos últimos anos. Idealmente, para implementar esses sistemas, o servidor deve alocar um canal de transmissão de dados exclusivo para cada cliente, permitindo a emulação de ações de interatividade de um aparelho comum de DVD (Digital Video Disc). Entretanto, como a banda do servidor é um recurso limitado, esta implementação é inviável quando muitos usuários simultâneos precisam ser atendidos. Para fins de análise, vemos o aumento da escalabilidade desses sistemas em duas direções: técnicas de compartilhamento de banda [26, 25, 22, 3] e estratégias (políticas) de gerência de buffer [, 2, 2]. Existe uma significativa diversidade de técnicas de compartilhamento de banda na literatura. Os trabalhos de [4,, 3], por exemplo, têm uma implementação bem simples, baseada na localização do canal que transmite a informação (unidade, bloco, etc.) mais próxima àquela de fato solicitada pelo cliente. As técnicas de [7, ] discutem a união de fluxos em andamento no sistema. A idéia é abrir um fluxo para atender a toda ação de intera-
2 tividade do cliente, e a união de fluxos é conseguida pela escuta concomitante de dois fluxos. A proposta de [2] utiliza uma taxa de transmissão duas vezes maior que a normal para permitir a união de fluxos. Os trabalhos de [8, 2, 22, 24, 25] são mais recentes e baseiam-se nos paradigmas de acesso seqüencial Patching e Hierarchical Stream Merging (HSM) [6, 3]. Estas técnicas diferenciam-se entre si na condição de que a estrutura de união de fluxos tem um determinado número de níveis permitidos. Por exemplo, quando são permitidos três níveis, um dado cliente pode escutar um outro cliente que, por sua vez, escuta um outro cliente do sistema, constituindo assim uma árvore de altura três [5]. Em relação às estratégias de gerência de buffer, as duas abordagens mais utilizadas na literatura são: Simple Buffer (SB) [28, 8, 27] e Complete Buffer (CB) [2, 24, 22, 25, 27]. A primeira tem por principal finalidade permitir a sincronização da escuta de dois fluxos simultâneos que transmitem o mesmo objeto. O tamanho do buffer local do cliente é determinado pelo tempo de escuta simultânea permitido para o cliente, e nunca precisa ser maior que a metade da duração total do objeto [5]. O primeiro fluxo é utilizado para transmitir as informações (unidades de dados) que o cliente precisa visualizar instantaneamente. Já o segundo fluxo transmite unidades de dados que são visualizadas a partir de um instante futuro. As unidades de dados do segundo fluxo são armazenadas em buffer local. No instante em que a unidade de dados do primeiro fluxo alcançar a primeira unidade de dados armazenada em buffer (proveniente do segundo fluxo), o cliente deixa de escutar o primeiro fluxo e passa a ler diretamente de seu buffer. O primeiro fluxo pode então ser extinto, redundando em economia de banda do sistema. O segundo fluxo permanece ativo e tendo suas unidades de dados armazenadas em buffer local. Já a abordagem Complete Buffer (CB) fundamentase na idéia de que o comportamento interativo do cliente o faz naturalmente realizar acessos a unidades de dados anteriormente já visualizadas. Sendo isso verdade, a otimização de banda pode ser conseguida ao se permitir que as unidades de dados transmitidas pelo servidor sejam permanentemente armazenadas em buffer local durante uma mesma sessão, i.e., enquanto o cliente estiver visualizando o objeto em uma mesma sessão, os dados de seu buffer local não são removidos. Quando o cliente realiza uma requisição para uma dada unidade de dados do objeto, primeiramente é verificado se a unidade de dados solicitada já não está em buffer local. Se a resposta for afirmativa, o cliente é atendido localmente, sem abertura de um novo fluxo e sem a tentativa de realizar compartilhamento com qualquer outro fluxo. Nessa estratégia o tamanho do buffer local é igual ao tamanho do objeto. Este trabalho apresenta a nova técnica de compartilhamento de banda Merge Interativo (). Esta técnica é baseada no paradigma de HSM [6, 3]. Também temos a apresentação de duas novas estratégias de gerência de buffer: Unique Buffer (UB) e Precise Buffer (PB). A primeira fundamenta-se na idéia de empregar um único buffer compartilhado por todos os clientes de uma rede local que desejam assistir a um mesmo objeto, e a segunda é baseada na condição de se verificar a quantidade de informação já disponível em buffer local para então decidir sobre abertura e extinção de fluxos no sistema. Por meio de simulações, validamos as nossas propostas e realizamos análises comparativas detalhadas com outros trabalhos da literatura, utilizando diferentes métricas de performance. Dentre outras constatações, os resultados obtidos mostram principalmente que, em comparação com as abordagens mais convencionais, podemos obter otimizações no intervalo de 5% 98% em valores médio de banda, pico de banda e complexidade do sistema. O restante deste trabalho tem a seguinte organização. A Seção 2 revisa as mais recentes propostas de técnicas de compartilhamento de banda baseadas nos paradigmas de Patching e de HSM. A nova técnica Merge Interativo () está na Seção 3. As novas estratégias de gerência de buffer UB e PB estão na Seção 4. A Seção 5 traz os mais importantes resultados de simulação então obtidos. Por último, as conclusões e as propostas para trabalhos futuros constituem a Seção COMPARTILHAMENTO DE BANDA Considere um grupo de clientes recebendo fluxos de dados relativos a um objeto multimídia armazenado em um servidor através de uma rede de comunicação. O objeto é dividido em unidades de dados u de mesmo tamanho e de duração de uma unidade de tempo. A rede tem multicast implementado (camada IP ou camada de aplicação). Os clientes têm acesso não-seqüencial, i.e., podem realizar ações de interatividade. O cliente possui buffer local capaz de armazenar pelo menos metade do objeto requisitado e sua banda corresponde a duas vezes a taxa de exibição desse objeto. Por fim, os fluxos de dados transmitem (individualmente) na mesma taxa de exibição do objeto. Doravante, salvo informado diferentemente, assumimos estas suposições no restante deste texto [5, 2, 22, 8, 5]. A seguir revisamos os algoritmos de operação de quatro das mais recentes técnicas de compartilhamento de banda que consideram o serviço imediato com interatividade: PI [2, 5],, PIC [24] e CT [3]. As três primeiras são baseadas no paradigma de Patching e a última no paradigma de HSM. Estas técnicas são utilizadas no estudo comparativo que realizamos mais adiante e esta decisão deu-se por serem técnicas recentes e assim conseguirem agregar simultaneamente dois aspectos essenci-
3 ais: máxima eficiência e simplicidade. 2.. TÉCNICA PATCHING INTERATIVO PI Na técnica Patching Interativo (PI) a chegada de uma requisição é o único evento que pode provocar uma união de fluxos no sistema. Seja u W a unidade de dados do objeto correspondente ao tamanho da janela ótima W da técnica Patching original [4, 7], (p. ex., se W = 2 s e o objeto é dividido em unidades de s cada, então u W = 2), e seja S W um fluxo multicast que transmite, no instante da chegada da requisição, uma unidade de dados anterior ou igual à u W. Para efeito de análise, assuma que uma requisição ocorre para uma dada unidade u r do objeto. A tomada de decisões neste algoritmo se dá em função de dois casos: u r = e u r, onde representa a primeira (inicial) unidade do objeto. Caso : u r = Se S W existe e está transmitindo uma unidade de dados posterior à u r, então a requisição é atendida pelo mesmo e as unidades eventualmente perdidas (patch) são enviadas através de um fluxo unicast. Se S W não existe então um novo fluxo multicast é aberto para atender a requisição. Caso 2: u r Neste caso inicialmente é verificado se existe um fluxo multicast S before, i.e., um fluxo transmitindo uma unidade de dados anterior à u r dentro de um limiar de tempo δ before. Se este fluxo existe, então a requisição é atendida pelo mesmo. Caso contrário, é verificado se existe um fluxo multicast S after, i.e., um fluxo transmitindo uma unidade de dados posterior à u r e dentro de um limiar de tempo δ after. Se este fluxo existe então o servidor informa ao cliente para escutar S after e abre um novo fluxo unicast para transmitir as unidades inicialmente perdidas (patch). Por outro lado, se S after não existe, então um novo fluxo multicast S new é aberto para servir a requisição por u r PATCHING INTERATIVO EFICIENTE Semelhante à técnica PI, a chegada de uma requisição também é o único evento que provoca a união de fluxos na técnica Patching Interativo Eficiente (). A seguir descrevemos sua operação. Evento Único: Requisição para unidade u r. Inicialmente busca-se um fluxo multicast S before, i.e., um fluxo transmitindo uma unidade de dados igual ou anterior à u r, dentro de um limiar de tempo δ before. Ou seja, S before pode estar transmitindo desde a unidade u r δ before até a unidade u r. Se S before existe, então a requisição é atendida pelo mesmo. Se S before não existe, é verificado se existe um fluxo multicast S after, i.e., um fluxo transmitindo uma unidade de dados posterior à u r, dentro de um limiar de tempo δ after. Ou seja, S after pode estar transmitindo desde a unidade u r + até a unidade u r + δ after. Se S after existe, o servidor diz ao cliente para escutá-lo e abre um fluxo unicast (i.e., um patch) para transmitir as unidades perdidas inicialmente. Se S after não existe, um novo fluxo multicast S new é aberto para servir a requisição por u r. É ainda verificado se existe um fluxo multicast S merge, i.e., um fluxo transmitindo uma unidade de dados anterior à u r, dentro de um limiar de tempo δ merge. O fluxo S merge não pode possuir patches associados a ele, pois um dos objetivos é manter a estrutura de união de fluxos em no máximo dois níveis. Se S merge existe, então o fluxo S new é o seu alvo e os clientes de S merge devem escutar também o fluxo S new para que, eventualmente, S merge se una ao fluxo S new. Caso S merge não exista, então nada mais precisa ser feito. Note que o algoritmo de é mais elaborado que o de PI por introduzir o conceito do fluxo S merge, o que cria a expectativa de uma maior otimização de banda dado que é uma possibilidade a mais para a união de fluxos PATCHING INTERATIVO COMPLETO PIC A técnica Patching Interativo Completo (PIC) é mais elaborada que PI e por possuir três eventos para união de fluxos, conforme explicamos a seguir. Evento : Requisição para a unidade u r. Nesta situação o algoritmo procede de forma semelhante ao de com a diferença básica de que, em vez de buscar por um único fluxo S merge, busca-se por um conjunto de fluxos desse tipo. Evento 2: Término de um fluxo S j que é o fluxo alvo de um outro fluxo multicast S i. Em outras palavras, S j termina antes de ser alcançado por S i. Os clientes de S i então tornam-se órfãos (i.e., não possuem mais fluxo a alcançar) e os conteúdos respectivamente armazenados em seus buffers, devido à escuta de S j, são descartados. O servidor busca por um outro fluxo que transmite uma unidade de dados posterior àquela atual do fluxo S i e dentro do limiar de tempo δ merge. Seja S subs este fluxo. Se este fluxo existe, então ele torna-se o novo alvo de S i. Caso S subs também termine antes de ser alcançado por S i, o processo de busca por um outro fluxo S subs é repetido. Evento 3: Término de todos os eventuais fluxos de patch associados a um fluxo S source.
4 Nesta situação o servidor tenta localizar um fluxo S merge que transmite uma unidade de dados posterior àquela do fluxo S source e dentro de um limiar de tempo δ merge. Se este fluxo existe, então ele torna-se alvo de S source. Ou seja, os clientes de S source passam a escutar também o fluxo S merge de tal sorte que S source e S merge possam ser unidos mais à frente TÉCNICA CLOSEST TARGET CT A técnica Closest Target (CT), por ser baseada no paradigma HSM, tem um mecanismo de tentativa de compartilhamento de dados bem exaustivo. São considerados os três eventos descritos a seguir para união de fluxos no sistema. Evento : Requisição para a unidade u r. O servidor abre um novo fluxo multicast S new para atender esta requisição. Simultaneamente, o servidor também tenta localizar um outro fluxo em andamento no sistema que esteja transmitindo uma unidade de dados posterior à u r, sem considerar qualquer limiar de tempo. Seja S t este fluxo. Se S t existe então o cliente de S new também vai escutá-lo de tal sorte que S new e S t possam, eventualmente, ser unidos mais à frente. Evento 2: Término de um fluxo S j que é o fluxo alvo de um outro fluxo S i. Neste caso o tratamento é análogo ao descrito no EVENTO 2 de PIC, sendo que aqui não se utiliza limiar de tempo para busca do substituto de S j. Evento 3: União do fluxo S i e seu alvo S j. Seja S m o fluxo resultante desta união. Os eventuais conteúdos dos buffers dos clientes de S m, que originalmente eram clientes de S j, são descartados e o servidor imediatamente busca no sistema por um fluxo que esteja transmitindo uma unidade de dados posterior àquela do fluxo S m, sem considerar qualquer limiar de tempo. Seja S t este fluxo. Se S t existe então os clientes de S m vão escutá-lo também de tal sorte que S m e S t possam ser unidos mais à frente. Note que na técnica CT sempre buscamos por um fluxo para ser simultaneamente escutado com aquele que está efetivamente servindo a requisição por u r. Além disso, há ainda o fato de não haver qualquer limiar de tempo restritivo para a busca por fluxos no sistema, aumentando as chances de localização de fluxos alvos. Os Eventos e 3 desta técnica dão à árvore de união de fluxos a característica de ter uma altura ilimitada. Por exemplo, um fluxo S, recém aberto para atender a requisição por u r, pode ter como alvo um outro fluxo S 2 que, por sua vez, já pode ter como alvo um outro fluxo S 3, constituindo assim uma estrutura de profundidade três. 3. NOVA TÉCNICA: MERGE INTERA- TIVO Aqui apresentamos a nova técnica Merge Interativo (). Assim como CT, esta nova técnica é baseada no paradigma de HSM e tem sua estrutura de união de fluxos com profundidade ilimitada (i.e., número de níveis ou altura ilimitada). Os três eventos descritos a seguir são considerados para a união de fluxos no sistema. Evento : Requisição para unidade u r do objeto. Imediatamente abre-se um novo fluxo S new para atender esta requisição. Simultaneamente, o servidor busca por um fluxo em andamento no sistema que esteja transmitindo uma unidade de dados posterior à u r. Seja S t este fluxo. Se S t existe, então o cliente de S new também vai escutá-lo de tal sorte que S new e S t possam ser unidos mais à frente. Evento 2: Término de um fluxo S j que é o fluxo alvo de um outro fluxo S i. Nesta situação, S j termina antes de ser alcançado por S i. Os clientes de S i ficam órfãos (i.e., não possuem mais fluxo a alcançar) e os conteúdos armazenados em seus buffers, devido à escuta de S j, são descartados. O servidor busca um outro fluxo que transmite uma unidade de dados posterior àquela atual do fluxo S i. Seja S subs este fluxo. Se S subs existe, ele se torna alvo de S i. Caso S subs termine antes de ser alcançado por S i, a busca por um outro fluxo S subs é repetida. Evento 3: União do fluxo S i e seu alvo S j. Seja S m o fluxo resultante. O servidor imediatamente busca por um fluxo que esteja transmitindo uma unidade de dados posterior àquela do fluxo S m. Seja S t este fluxo. Se S t existe, os clientes de S m, que originalmente pertenciam ao fluxo S i, vão também escutá-lo para eventualmente se unir a ele. Já os clientes de S m, que originalmente pertenciam ao fluxo S j, não são afetados. Caso S t não exista, nada precisa ser feito. A principal diferença entre a técnica e a técnica CT é que em não há a união de grupos de clientes pertencentes a fluxos distintos na ocorrência do Evento 3. A discussão a seguir justifica essa diferença para fins de se tentar obter uma maior otimização de uso da banda do sistema. Suponha que um fluxo S i se una com seu alvo S j. Seja S m o fluxo resultante desta união. Considere que S j já tivesse um fluxo alvo S antes de ser alcançado por S i. Na técnica CT, conforme já explicado, um fluxo alvo para S m é selecionado e toda informação (i.e., unidades de dados do objeto) recebida pelos clientes originalmente 2
5 pertencentes à S j (enquanto estavam escutando S antes da ocorrência da união) é simplesmente descartada. Para um acesso seqüencial, esta decisão de descarte não aumenta a banda do servidor (embora impacte na banda do cliente), pois esta mesma informação precisa ser retransmitida para atender os clientes originalmente pertencentes ao fluxo S i. Por outro lado, para um acesso nãoseqüencial (i.e., com interatividade), esta decisão pode aumentar a banda do servidor, pois a informação descartada não é mais necessariamente retransmitida conforme explicamos a seguir. Assuma que, logo após a união dos fluxos S i e S j, resultando no fluxo S m, todos os clientes originalmente pertencentes à S i decidam, por exemplo, realizar um salto para trás (ou para frente) do atual ponto em exibição do objeto. Se os clientes originalmente pertencentes à S j descartarem a informação em buffer (recebida de S ), como ocorre na técnica CT, esta mesma informação precisará ser retransmitida novamente, não por causa dos clientes originalmente pertencentes à S i, mas por causa dos clientes originalmente pertencentes à S j. A decisão de descarte nesta situação é então indevida, pois os clientes de S j já tinham esta informação em buffer antes da união. Para resolver isso, na técnica, conforme já explicamos, um fluxo alvo S t é então selecionado e designado exclusivamente para os clientes de S m que originalmente pertenciam à S i, e os clientes que originalmente pertenciam à S j não são afetados, i.e., não fazem descarte de dados e continuam tendo S como fluxo alvo. Note que S t pode ser um fluxo diferente de S, pois os clientes têm um acesso não-seqüencial e assim podem, portanto, abrir fluxos de dados em qualquer instante e em qualquer unidade de dados do objeto que está sendo visualizado. Assim, em temos a possibilidade de um mesmo fluxo com diferentes grupos de clientes associados, cada grupo com um fluxo alvo distinto. No entanto, é preciso dizer que existem duas situações específicas que podem favorecer a técnica CT em relação à técnica. A primeira situação relaciona-se ao fato de que o eventual novo fluxo alvo S t, designado para os clientes de S i depois que S i se une à S j, pode estar relativamente mais próximo ao fluxo S j do que aquele originalmente designado para o próprio S j. Por exemplo, admita que, antes da união de S i com S j, o fluxo alvo de S j, que é o fluxo S, esteja à distância de 2 unidades de dados. Admita que imediatamente antes da união de S i com S j, um novo fluxo S t é aberto no sistema e este está à distância de apenas 3 unidades de S j. Considere que neste instante ocorre a união de S i com S j, resultando no fluxo S m. Considerando este cenário, analisemos a seguir o que ocorre nas técnicas e CT. Na técnica CT, todos os clientes de S m (originalmente pertencentes à S i ou S j ) são beneficiados pelo fato da identificação do novo alvo indicar o fluxo mais próximo S t. Na técnica, os clientes de S m, originalmente pertencentes à S i, são beneficiados pela identificação do fluxo mais próximo S t ; entretanto, os clientes de S m, originalmente pertencentes à S j, permanecem tendo S como fluxo alvo. Nesta situação, CT pode apresentar uma melhor otimização de banda que, pois o fluxo alvo mais próximo atende indistintamente a todos os clientes de S m. Note que uma maior proximidade do fluxo alvo leva a um menor número de fluxos no sistema, pois o fluxo que tenta alcançar o alvo pode ser extinto mais cedo. A segunda situação é descrita a seguir. Na técnica, se os clientes de S j não possuem um fluxo alvo, estes clientes ainda permanecerão sem um fluxo alvo mesmo após a união de S i com S j. Na técnica CT, isso não ocorre, pois o fluxo alvo é escolhido para todos os clientes de S m, independentemente de originalmente pertencerem à S i ou à S j. Contudo, este fato, não traz considerável vantagem para CT. A explicação é que, devido à operação intrínseca do paradigma de HSM (abertura e busca por fluxos de forma exaustiva) e ainda à condição de termos interatividade, a probabilidade de um cliente não ter um fluxo alvo associado é praticamente desprezível. 4. NOVAS GERÊNCIAS DE BUFFER 4.. ESTRATÉGIA UNIQUE BUFFER A proposta Unique Buffer (UB) aproveita o efeito conjunto das requisições para um mesmo objeto devido aos vários clientes existentes no sistema e localizados em uma mesma rede local. O cliente deixa de ter um buffer local exclusivo, passando a existir apenas um buffer único compartilhado localizado em um nó (rede) de acesso para atendimento de todos os clientes que desejam assistir a um mesmo objeto. As solicitações de um cliente no instante t podem então se beneficiar de quaisquer solicitações ocorridas em instantes anteriores a t. Dessa forma, dois efeitos são percebidos: (i) o cliente se beneficia de suas próprias requisições anteriores, assim como na proposta original de CB, e (ii) o cliente se beneficia de requisições anteriores e provenientes de outros clientes. O tamanho do buffer único é igual ao tamanho do objeto. A Figura ilustra um sistema no qual um servidor armazena n objetos de interesse de um total de j clientes (C,..., C j ), localizados remotamente em uma mesma rede local. Este clientes estão conectados à Internet por meio de uma rede (nó) de acesso, que possui um conjunto de buffers únicos (b,..., b ) e tem implementada a estratégia UB. A expectativa é um alto grau de otimização da banda B do servidor. Em geral, para fins de justificativa de projeto, temos que j n. Os valores de n e j estão atrelados a situações reais. O valor de pode ser definido como o número de objetos mais freqüentemente requisitados (i.e., populares) 3
6 e estimado a partir da distribuição Zipf, que diz que a probabilidade de selecionar o objeto de categoria β é igual a (β α n x= x ), onde α é denominado de α sewfactor da distribuição [8]. Os buffers são alocados dinamicamente segundo as requisições dos clientes. Quando todos os buffers estiverem alocados, as requisições de outros objetos são atendidas por meio de um buffer convencional e local do cliente. A Figura 2 ilustra os segmentos de dados armazenados em um dos buffers devido a escuta de três fluxos distintos, realizadas por três clientes que vêem o mesmo objeto simultaneamente. O fluxo S refere-se ao cliente C, o fluxo S 2 ao cliente C 2, e o fluxo S 3 deve-se ao cliente C 3. As unidades armazenadas no buffer podem ser indistintamente utilizadas por qualquer um dos j clientes do sistema que queiram assistir ao mesmo objeto neste instante de tempo. O compartilhamento eficiente de um buffer único, por todos os clientes de uma rede local que desejam assistir a um mesmo objeto, exige o uso de métodos específicos de acesso ao buffer. Isto porque é provável termos mais de um cliente realizando acesso simultaneamente. Esta questão pode ser modelada como o Problema do Produtor/Consumidor [29]. A princípio, vemos duas abordagens para sua solução. A primeira é uma proposta denominada de Software Transactional Memory [9], a qual baseia-se em conceitos da área de bancos de dados para controle de acesso, criando noções de atomicidade, consistência e isolamento de transações. A segunda, mais comum, relaciona-se à utilização de conceitos como semáforos e/ou travas (locs) para o controle de acesso. Na estratégia UB, o armazenamento de unidades de dados no buffer único é dinâmico, ou seja, é determinado pelo acesso dos clientes às unidades do objeto que está sendo visualizado. Diferentemente de técnicas baseadas no emprego de proxies, na estratégia UB não há necessidade de cópias de partes ou de todo o objeto do servidor multimídia sem que o cliente tenha requisitado, também não há premissa de uso de quaisquer tipos de codificação em camadas (layer-encoded streaming) visando a melhor adaptação de qualidade dos fluxos. Uma análise competitiva mais detalhada com técnicas baseadas em proxies é considerada em trabalhos futuros ESTRATÉGIA PRECISE BUFFER A principal motivação da estratégia PB está na tentativa de evitar que a fragmentação de informação no buffer local do cliente comprometa a otimização do sistema. A fragmentação se dá quando a informação armazenada apresenta-se em pequenos segmentos espaçados entre si, fazendo com que na maioria das vezes o cliente não seja atendido por apenas um único segmento e, assim, necessite entrar em um ciclo de leitura: ora a partir de buffer local, ora a partir de fluxos do sistema. Isso cria uma maior dificuldade para o compartilhamento de dados, pois os fluxos passam a ter uma menor duração [23, 22]. Evitando os malefícios da fragmentação, podemos ainda esperar que haja uma minimização da variabilidade dos requisitos de banda (traffic smoothing []) e do overhead [5, 25] do servidor para o tratamento das mensagens entre clientes e servidor, que se traduz em menor complexidade do sistema e é avaliada nos experimentos adiante. Na proposta PB, a requisição somente é atendida na condição de que o tamanho da informação contígua em buffer (i.e., número de unidades consecutivas), a partir da unidade de dados requisitada, seja suficiente para evitar que o cliente entre no ciclo de leitura descrito no último parágrafo. Seja então δ B a variável que designa esse tamanho. A Figura 2 ilustra esta estratégia para um cliente que requisita a unidade u r, sendo que ele já tem armazenado desde a unidade u r até a unidade u r2. Quando u r2 u r δ B, a informação é utilizada para servir o cliente. Por outro lado, quando u r2 u r < δ B, a informação é ignorada e o cliente deve escutar fluxos de dados do servidor. 5. AVALIAÇÃO DE PERFORMANCE 5.. MÉTRICAS As principais métricas de performance aqui utilizadas são: consumo médio da banda, valor de pico da banda, distribuição da banda, razões competitivas e trabalho médio. Consumo médio e valor de pico da banda são duas métricas bastante freqüentes em experimentos comparativos. Já a distribuição da banda torna-se importante pelo fato de considerarmos em nossos experimentos a interatividade dos clientes. Isto faz com que a banda possa variar significativamente ao longo do tempo. Conseqüentemente, o simples cômputo do valor médio ou do valor de pico não permitem uma análise mais detalhada das técnicas. As razões competitivas [6] aqui utilizadas são assim definidas [24]: RMax = max( P [Banda>]tec P [Banda>] tec2 ) e RMin = min( P [Banda>] tec P [Banda>] tec2 ), para todo inteiro desde que P [Banda > ] 4 (por precisão da simulação), onde Banda é medida em número de canais simultâneos em uso no sistema, e tec refere-se à técnica em relação a qual queremos comparar a técnica tec 2. Note que estas razões representam um meio eficiente de quantificar a diferença entre as respectivas distribuições de banda de duas técnicas tec e tec 2 que desejamos comparar. O trabalho médio é utilizado para analisar a complexidade do sistema e é definido conforme mostrado a seguir [24]. Ele é função do número médio de mensagens recebidas pelo servidor e das operações executadas para o tratamento das mesmas. A operação de maior custo é a 4
7 Servidor de VoD Repositório com n objetos Interface de Rede Canais (Fluxos S) Internet com multicast Rede (nó) de acesso Unique Buffers b Clientes da rede C Memória Banda B do Servidor b C j Figura. Sistema de vídeo sob demanda. Unique Buffer (UB) Precise Buffer (PB) Fluxo S devido ao cliente C play point u play point δ q δ p u p u p2 Caso () : Buffer do cliente unidade requisitada pelo cliente δ B Fluxo S 2 devido u ur ur 2 ao cliente C 2 play point u u q u q2 Fluxo S 3 devido ao cliente C 3 u δ f u f Caso (2) : unidade requisitada pelo cliente δ B Unique Buffer Buffer do cliente u ur ur 2 δ f δ q δ p Figura 2. Estratégia Unique Buffer; Estratégia Precise Buffer. busca por um fluxo multicast. Faz-se então a análise de pior caso e admite-se que a operação de busca seja executada em tempo O(n), onde n é o número de fluxos multicast em andamento no sistema. O servidor pode receber quatro tipos de mensagens: requisição para uma unidade de dados (DR), requisição para o término de uma união de fluxos (MR), requisição para o término de patch (PR), e requisição para fim de exibição (LR). A Tabela sintetiza as complexidades de tempo relativas às operações devido a cada tipo de mensagem, onde O(C) denota uma complexidade de tempo constante; a Tabela apresenta as equações para calcular o trabalho médio (detalhes em [24]). Os valores de n, E[DR], E[MR], E[P R], e E[LR] são obtidos a partir do modelo de simulação CARGAS Consideramos quatro cargas sintéticas. Cada uma refere-se a um cenário de avaliação distinto no qual um objeto multimídia está sendo transmitido. Estas cargas são obtidas por meio de um gerador proposto no trabalho de [22] e referem-se aos servidores multimídia eteach, MANIC e Universo Online UOL [2, 9]. Os dois primeiros servidores são de ensino a distância e o último é um servidor de conteúdo. O gerador de carga sintética utilizado tem como entrada um trace real de sessões para um dado objeto com uma certa taxa de requisições. Sua saída é um trace sintético com estatísticas semelhantes àquelas do trace original. Sucintamente, descrevemos sua idéia a seguir. O gerador inicialmente constrói um modelo de transição de estado, onde cada estado corresponde a um segmento de 5
8 Tabela. Complexidade de tempo e trabalho médio do servidor Técnica DR MR PR LR Técnica Fórmulas Patching O(n) O(C) O(C) Patching E[DR] n + E[P R] + E[LR] PI O(n) O(C) O(C) PI E[DR] n + E[P R] + E[LR] O(n) O(C) O(C) O(C) E[DR] n + E[MR] + E[P R] + E[LR] PIC O(2n) O(n) O(n) O(n) PIC E[DR] 2n + (E[MR] + E[P R] + E[LR]) n O(2n) O(n) O(n) E[DR] 2n + (E[MR] + E[LR]) n CT O(2n) O(n) O(n) CT E[DR] 2n + (E[MR] + E[LR]) n Complexidade de tempo Trabalho médio tamanho fixo do objeto. As probabilidades de início de uma sessão em cada segmento, assim como as probabilidades de transição entre os estados, são calculadas a partir do trace real. Um trace de sessões é então produzido assumindo o início de sessão sendo dado por um processo de Poisson [2, 9], e o comportamento do cliente dentro de cada sessão é extraído a partir das características do cenário (trace) real. O cliente pode executar as seguintes ações de interatividade: Play, Stop, Pause/Resume, Jump Forwards e Jump Bacwards. As principais estatísticas das cargas sintéticas estão na Tabela 2. Para garantir um significativo espectro de análise, escolhemos cargas estatisticamente diferentes. Na Carga eteach (Worload ), o número de ações Jump Bacwards é bem razoável, resultando em localidade de acesso, i.e., ocorre um grande número de retornos a unidades de dados anteriormente já visualizadas pelo cliente, o que deve favorecer às estratégias de gerência de buffer onde o cliente armazena todos os dados transmitidos pelo servidor. Outro aspecto interessante é que a maioria das unidades de dados são acessadas como primeira unidade do segmento. Seja X a variável aleatória que representa a primeira unidade acessada pelo cliente quando este faz um movimento, ou seja, quando requisita um novo segmento. Ter uma unidade i como a primeira unidade de um segmento significa que a variável aleatória X assume o valor i. Por último, a distribuição de acesso a unidades é aproximadamente uniforme. Em relação à Carga MANIC- (Worload 2), o nível de interatividade (i.e., nr. de requisições por sessão) é relativamente baixo. Também a distribuição de acesso não é uniforme e apenas 24 unidades são acessadas como a primeira do segmento. Já na Carga MANIC-2 (Worload 3), poucas unidades são efetivamente acessadas como primeiras unidades do segmento. Existe ainda alguma uniformidade na distribuição de acesso. Finalmente, para a Carga UOL (Worload 4) há significativa localidade de acesso e a primeira unidade do objeto é bastante requisitada (popular) RESULTADOS E ANÁLISE Os resultados de simulação são obtidos usando a ferramenta Tangram-II [2]. Esta ferramenta constitui-se em um ambiente de modelagem e experimentação de sistemas computacionais/comunicações, desenvolvido na Universidade Federal do Rio de Janeiro (UFRJ), com participação de UCLA/USA, com propósitos de pesquisa e educação. Este ambiente combina uma interface de usuário sofisticada em um paradigma de orientação a objeto e novas técnicas de solução para análise de performance e disponibilidade. O usuário especifica um modelo em termos de objetos que interagem por meio de um mecanismo de troca de mensagens. Um vez que o modelo seja compilado, pode ser resolvido analiticamente, se for Maroviano ou pertencer a uma classe de modelos não Marovianos, ou resolvido via simulação. É possível obter soluções tanto para estado estacionário como para estado transiente. Para facilidade de entendimento organizamos a apresentação dos resultados em duas seções distintas. A Seção 5.3. dedica-se aos resultados provenientes da análise competitiva entre as técnicas de compartilhamento de banda: Patching, PI, CT,, PIC e. A Seção dedica-se aos experimentos com as estratégias de gerência de buffer SB, CB, UB e PB Análise das técnicas de compartilhamento: Salvo informado diferentemente, aqui consideramos δ after = δ merge, e fazemos δ before = s. Estas suposições são respaldadas nos resultados obtidos em [24, 25]. Devido a restrições de espaço, não ilustramos todos os experimentos realizados (resultados completos estão em [23]). Inicialmente analisamos as técnicas baseadas em Patching (i.e., PI, e PIC) no intuito de obtermos aquela de melhor performance. Em seguida, de forma análoga, avaliamos as técnicas baseadas em HSM (i.e., CT e ). Finalmente, temos uma análise competitiva considerando a mais eficiente técnica de cada paradigma. Também em nossas análises consideramos apenas os dois tipos mais comuns de gerência de buffer: Simple Buffer (SB) e Complete Buffer (CB). Em todas as cargas consideradas, PI, e PIC apresentam melhor performance que a clássica técnica Patching. Este resultado já era esperado, pois Patching é um esquema para acesso seqüencial e, portanto, não é capaz de lidar eficientemente com a interatividade dos clientes. Esta superioridade em performance é quantificada por 6
9 P[ Banda > ] Carlo K. S. Rodrigues, Luiz J. H. Filho e Rosa M. Tabela 2. CARGAS SINTÉTICAS Estatística eteach MANIC- MANIC-2 UOL Tamanho do objeto T ( s) Tamanho da unidade de dados ( s) Nr. médio de requisições em T Nr. total de requisições Nr. médio de requisições por sessão Tamanho médio do Segmento L ( s) Desvio padrão de L ( s) Coef. de variação de L Nr. de valores diferentes da v.a. X SB PI-SB PIC-SB Figura 3. CCDF para -SB, PIC-SB e PI-SB em MANIC-. meio das razões competitivas computadas: RM in =. e RM ax [2.2, ]. As técnicas e PIC têm performances semelhantes em todas as cargas e são ambas, de forma geral, mais eficientes que PI. Esta superioridade em performance é quantificada por meio das razões competitivas computadas: RMin [.5,.] e RMax [.6, 25.8]. Também para ilustrar este fato apresentamos a distribuição (CCDF) da banda para -SB, PIC-SB e PI-SB na Figura 3. Isto favorece enormemente por ter uma implementação bem mais simples que PIC. Nestas avaliações usamos δ after = 5% da janela ótima W de Patching [7, 4], entretanto, enfatizamos que as observações então feitas são válidas independentemente do valor absoluto de δ after no intervalo de % de W ou L. Valores fora deste intervalo se mostram ineficientes. Ao compararmos e CT, notamos que, na maioria dos cenários, é mais eficiente que CT quando usamos a estratégia de gerência buffer CB e, de forma contrária, quando usamos a gerência SB, a técnica CT torna-se mais eficiente que. Este resultado está embasado na diferença de com relação à CT. Em linhas gerais, quando usamos CB, existe uma tendência de termos um menor número de fluxos ativos no sistema e daí uma menor probabilidade de selecionar novos fluxos alvos, em substituição a fluxos alvos originais, que de fato venham a prover economia de banda. Para ilustrar este ponto temos as Figuras 4, 4 e 4. Nas duas primeiras figuras temos a distribuição (CCDF) da banda quando usamos CB nas Cargas UOL e eteach, respectivamente, onde vemos a vantagem de sobre CT. Na última figura temos o caso de emprego da gerência SB na Carga eteach. A performance é justamente contrária: CT é mais eficiente que. Agora, desde que a implementação de CB é relativamente simples e vantajosa, devido à eventual economia de banda que pode ser atingida, decorre como conclusão natural que é uma melhor escolha para a maioria dos cenários examinados. Por fim, comparamos a técnica mais eficiente no paradigma de Patching com a mais eficiente no paradigma de HSM: técnicas e, respectivamente. Em todas as cargas, tem melhor performance que. Este fato é ilustrado nas Figuras 5, 5 e 5. Para efeito de justiça, nesta análise utilizamos os valores ideais (obtidos experimentalmente) do parâmetro δ after, explicitados nas próprias figuras em função do valor percentual da janela ótima W de Patching (a saber: δ before =. s e δ after = δ merge = 7. s, s, 27.9 s e 29.3 s para as Cargas eteach, MANIC-, MANIC-2 e UOL, respectivamente. Análises para derivação desses valores estão em [24, 25].) A título de ilustração, as Figuras 6 e 6 trazem as reduções (%) em relação ao consumo médio de banda e aos valores de pico de banda, respectivamente, registrados por e em relação à técnica Patching-SB. As reduções são de fato, como já esperado, bem expressivas, tanto para o consumo médio de banda (3% 68%), como para o valor de pico (8% 62%). A maior eficiência de sobre é, contudo, acompanhada por uma maior complexidade de sistema, avaliada por meio da métrica trabalho médio realizado pelo servidor. Nos experimentos realizados, esta métrica chega a ser mais que uma ordem de grandeza maior para. Resultados semelhantes foram apresentados em [24] para a técnica CT em comparação com a técnica. No entanto, se utilizarmos δ before 3% (3 5%) de T, a técnica -SB (-CB) torna-se bastante competitiva com 7
10 P[ Banda > ] P[ Banda > ] P[ Banda > ] Carlo K. S. Rodrigues, Luiz J. H. Filho e Rosa M. P[ Banda > ] CT-CB CB P[ Banda > ] CT-CB CB P[ Banda > ] SB CT-SB Figura 4. CCDF para -CB e CT-CB em UOL; CCDF para -CB e CT-CB em eteach; CCDF para -SB e CT-SB em eteach SB/4%.4 -SB CB/7%.6.5 -CB CB/5%.5.4 -CB Figura 5. Distribuição de banda para -SB e -SB em eteach, -CB e -CB em MANIC-, -CB e -CB em MANIC-2. relação a -SB (-CB) em todas as cargas, exceto para UOL. Notamos ainda que, para tornar mais eficiente que, o valor experimental obtido para δ before é sempre maior no caso de uso da gerência de buffer CB do que no caso da gerência SB. Isso é explicado pelo fato de que, quando usamos CB, existe uma tendência de termos um menor número de fluxos no sistema e, portanto, uma maior dificuldade para efetuar o compartilhamento de dados. Esta condição favorece à técnica por ter um mecanismo de busca mais exaustivo que. Por fim, a Figura 6 faz uma síntese gráfica comparativa entre -SB e -SB considerando dois resultados: (i) o trabalho médio em função do nível de interatividade (número médio de requisições por sessão) e (ii) o valor de δ before para o qual temos praticamente a mesma distribuição de banda em ambas as técnicas. Note que, conforme o nível de interatividade aumenta, o trabalho médio de também aumenta enquanto que a descontinuidade introduzida por δ before diminui. Comportamento semelhante é obtido também para o caso de gerência CB. Este resultado geral mostra portanto que, apesar de ser de fato a técnica de melhor performance, pode ser vista como uma técnica competitiva para cargas em que o nível de interatividade é relativamente alto Análise das Estratégias de Buffer: Aqui consideramos as estratégias de gerência de buffer SB, CB, UB e PB empregadas em conjunto com as técnicas de compartilhamento de banda e, por serem estas as mais eficientes, conforme observado nos experimentos anteriores. Especialmente em relação à técnica, utilizamos valores ideais (obtidos experimentalmente) para seus respectivos parâmetros δ e já indicados na seção anterior. Para fins de facilidade de entendimento e organização, resolvemos realizar dois conjuntos distintos de experimentos, conforme apresentado a seguir. CONJUNTO : Análise Competitiva entre SB, CB, PB e UB Aqui assumimos δ B = L, onde L é o tamanho médio do segmento do objeto requisitado pelo cliente quando este faz uma requisição ao servidor. O valor de L (Tabela 2) pode ser estimado dinamicamente por medição durante a operação ou a partir de logs de clientes [25, 23, 22, 2, 9]. Valor Médio e Valor de Pico. As Figuras 7 e 8 resumem os resultados obtidos considerando estas métricas. A estratégia UB é notadamente a de melhor desempenho, pois reduz significativamente os requisitos de banda média e valor de pico de banda, comparativamente às outras estratégias. Os requisitos de banda média são inferiores a canal para todas as cargas consideradas. As reduções chegam até 98% em relação à SB. A estratégia SB é a menos eficiente. Ainda notamos alguma equivalência nos resultados provenientes do uso de CB e PB. No que se refere aos valores médios de banda, a diferença entre CB e PB, mantém-se inferior a canal; em relação aos valores de pico, a maior diferença entre CB e PB ocorre na Carga MANIC-2, onde registramos, com a técnica, uma diferença aproximada de oito canais em favor de PB. Já as reduções de CB e/ou PB em relação à SB chegam a até 43,% (valor médio) e a apenas,9% (valor de pico), onde evidencia-se uma menor influência sobre esta última 8
11 Redução de Banda (%) Redução de Pico (%) trabalho médio de -SB trabalho médio de -SB δbefore (segundos) MANIC- UOL MANIC-2 eteach SIMPLE BUFFER MANIC- UOL MANIC-2 eteach COMPLETE BUFFER MANIC- UOL MANIC-2 eteach MANIC- UOL MANIC-2 eteach SIMPLE BUFFER COMPLETE BUFFER Nível de interatividade Figura 6. Otimizações de e em relação à Patching-SB na banda média e no valor de pico; Trabalho para -SB e -SB. Banda Media 2 5 Carga eteach Banda Media 2 5 Carga MANIC- Banda Media 2 5 Carga MANIC-2 Banda Media 2 5 Carga UOL (d) Figura 7. Valor da Banda Média: eteach; MANIC-; MANIC-2; (d) UOL. métrica. Trabalho. Conforme podemos observar na Figura 9, a estratégia UB é aqui também a mais eficiente. As reduções chegam a até duas ordens de grandeza em relação à SB. Considerando CB e PB, podemos observar que, apesar da proximidade dos valores em ordem de grandeza, a estratégia PB mostra-se geralmente mais eficiente que CB, pois apenas na Carga MANIC- não ocorre redução no valor desta métrica. Por exemplo, para MANIC-2 e técnica, o valor obtido por PB é aproximadamente três vezes menor que aquele de CB. As reduções de CB com relação à SB não são expressivas. Há inclusive casos desfavoráveis, onde observamos aumentos. Estes casos são aqueles em que possivelmente ocorre a fragmentação da informação em buffer. Por fim, as reduções de PB em relação à SB são um pouco mais atrativas. Por exemplo, para UOL e técnica, o valor relativo à PB é aproximadamente duas vezes menor que aquele registrado para SB. Distribuição. Os resultados desta métrica também confirmam que UB é a mais eficiente. A distribuição complementar (CCDF) para a estratégia UB aparece sempre bem destacada das demais. A probabilidade do números de canais usados pelo servidor ser maior do que 2 é menor do que. para a grande maioria das cargas, enquanto que, para as outras estratégias de gerência de buffer, esta probabilidade é maior que.7 na maioria dos cenários. Também, a partir das curvas da distribuição, observamos que SB é a estratégia menos eficiente. Para as estratégias CB e PB, os resultados aparecem divididos e não há significativa diferença entre elas. Por exemplo, para a técnica, observamos que na Carga eteach, CB mostra-se mais eficiente; por outro lado, na Carga MANIC-2, PB é mais eficiente. Alguns desses experimentos são ilustrados na Figura. CONJUNTO 2: Análise do Parâmetro δ B de PB Aqui variamos o valor de δ B em função de L e observamos as distribuições complementares da banda do servidor. Também consideramos o valor de δ B em função do tamanho do objeto inteiro T. Observe que, quando δ B, PB torna-se equivalente à CB; por outro lado, quando δ B T, PB torna-se equivalente à SB. O objetivo é então verificar a existência de um valor no intervalo [; T] que otimize a performance de PB e ainda estimar esse valor como função de L. Para efeito de maior clareza e organização da análise, assumimos então dois casos: δ B L e δ B < L. No primeiro, não conseguimos verificar quaisquer otimizações. Isso revela que o tamanho médio do segmento L é possivelmente um valor upper bound para as cargas examinadas. No segundo caso e considerando a maioria das cargas, alguma otimização foi produzida. Inclusive, houve situações em que PB passou a ser mais eficiente que CB. O valor ideal de δ B L estabeleceu-se no intervalo de 25% 5% de L. Isso evidencia a importância da determinação do valor ideal de δ B para o emprego da técnica PB. Alguns resultados destes experimentos são ilustrados na Figura. Em síntese, considerando ambos conjuntos de experimentos, constatamos que: (i) a estratégia UB é a mais eficiente. As otimizações produzidas são bem expressivas, revelando um padrão de comportamento semelhante en- 9
12 Pico de Banda Carga eteach Pico de Banda Carga MANIC- Pico de Banda Carga MANIC-2 Pico de Banda Carga UOL (d) Figura 8. Valor de Pico da Banda: eteach; MANIC-; MANIC-2; (d) UOL. Carga eteach Carga MANIC- Carga MANIC-2 Carga UOL Trabalho Trabalho Trabalho Trabalho.... (d) Figura 9. Trabalho (complexidade): eteach; MANIC-; MANIC-2; (d) UOL. tre clientes independentes que assistem a um mesmo objeto; (ii) as estratégias CB e PB apresentam certa semelhança nos resultados obtidos, exceto para a métrica trabalho. Isto significa que PB tem uma menor complexidade de sistema que CB. A complexidade é estimada em função do número de mensagens trocadas entre clientes e servidor e das operações para tratamento das mesmas pelo servidor; (iii) a estratégia PB é possível de ser otimizada determinando-se um valor ideal para o parâmetro δ B, o qual na maioria das cargas utilizadas estabeleceu-se no intervalo de 25% 5% de L; (iv) a estratégia SB é a mais simples, mas também é, em geral, a de performance mais sofrível. Esta desvantagem tende a tornar-se inclusive mais acentuada em cenários com alto nível de interatividade por parte dos clientes; (v) os valores de otimização que registramos enaltecem a importância do uso das estratégias de gerência de buffer. 6. CONCLUSÕES Neste trabalho apresentamos a nova técnica de compartilhamento de banda Merge Interativo (), cuja concepção baseia-se no paradigma de HSM. Também propomos duas novas estratégias de gerência de buffer para sistemas de VoD interativos: Unique Buffer (UB) e Precise Buffer (PB). Por meio de simulações, utilizando cargas sintéticas obtidas de servidores reais, validamos nossas propostas e realizamos análises competitivas com outras propostas da literatura. Os resultados finais, os quais englobaram diferentes métricas de comparação de performance, mostraram principalmente que: () a nova técnica é de fato a de maior eficiência, no entanto, o paradigma de Patching pode tornar-se bastante atrativo com a introdução de pequenas descontinuidades no serviço de atendimento de requisições; (2) a estratégia de gerência de buffer UB é a mais eficiente, porém, pela maior simplicidade, as estratégias PB e CB também são consideradas competitivas. Em relação a outras propostas da literatura, alcançamos otimizações de 5% 98% em valores médio de banda, pico de banda e complexidade do sistema. Como trabalhos futuros, podemos citar: () análise detalhada do desempenho da estratégia UB quando comparada ao uso de um proxy, (2) avaliação das estratégias propostas usando outras cargas sintéticas, (3) desenvolvimento de modelos analíticos para a análise de técnicas de compartilhamento de banda em ambientes com interatividade e, por fim, (4) desenvolvimento de novas técnicas de compartilhamento de banda conjuntamente com estratégias de gerência de buffer obedecendo ao paradigma P2P (Peer-to-Peer), criando um ambiente de transmissão distribuído. Referências [] E. L. Abram-Profeta and K. G. Shin. Providing unrestricted VCR functions in multicast video-ondemand servers. In Proc. of IEEE ICMCS, pages 66 75, Austin, Texas, June 998. [2] J. M. Almeida, J. Krueger, D. L. Eager, and M. K. Vernon. Analysis of educational media server worloads. In Proc. th Int l Worshop Networ and Operating Systems Support for Digital Audio and Video (NOSSDAV ), pages 2 3, June 2. 2
13 P[Banda > ] Carga eteach () SB PB CB. UB P[Banda > ] Carga MANIC - () SB e PB.6.5 CB UB P[Banda > ] Carga MANIC-2 () SB.5.4 CB.3 PB.2. UB P[Banda > ] Carga UOL () SB.5.4 PB.3 CB.2. UB (d) Figura. Distribuição (CCDF): eteach; MANIC-; MANIC-2; (d) UOL. P[Banda > ] δ.4 Β = %L=.3 %T (CB).2 δ Β = 25%L=..35%T Carga eteach () δ Β > 5% T = 932% L (SB) δ Β =%L= 5.37%T (PB) P[Banda > ] δb = 25%L= 7.4%T δb = %L= %T (CB) Carga MANIC- () δb > 5%L = 4.25%T (SB e PB) P[Banda > ] δ B = %T= %L (CB) Carga eteach () δ B > 932%L = 5%T (SB) δ B = 5%L= 2.69%T δ B =%L = 5.37%T (PB) P[Banda > ] %L=.22%T.2. δ B = 5%L= 6%T Carga MANIC-2 () δ B > 46%L= 5%T (SB) δ B = %L = %T (CB) δ B =%L= 2%T (PB) (d) Figura. Distribuição (CCDF): eteach; MANIC-; eteach; (d) MANIC-2. [3] K. C. Almeroth and M. H. Ammar. The use of multicast delivery to provide a scalable and interactive video-on-demand service. IEEE Journal on Selected Areas in Communications, 4(5): 22, August 996. [4] R. O. Baner and et al. Method of providing videoon-demand with VCR-lie functions. U. S. Patent , 994. [5] A. Bar-Noy, G. Goshi, R. E. Ladner, and K. Tam. Comparison of stream merging algorithms for media-on-demand. In Proc. Multimedia Computing and Networing (MMCN 2), pages 8 25, San Jose, CA, January 22. [6] A. Borodin and R. El-Yaniv. On-line computation and competitive analysis. Cambridge University Press, The Pitt Building, Trumpington Street, Cambridge, United Kingdom, 998. [7] Y. Cai, K. Hua, and K. Vu. Optimizing patching performance. In Proc. S/ACM Conference on Multimedia Computing and Networing, pages 24 25, January 999. [8] S.-H. Gary Chan and Edward Chang. Providing scalable on-demand interactive video service by means of multicast and client buffering. In Proc. IEEE ICC, pages 5, Helsini, June 2. [9] C. Costa, I. Cunha, A. Borges, C. Ramos, M. Rocha, J. M. Almeida, and B. Ribeiro-Neto. Analyzing client interactivity in streaming media. In Proc. 3th ACM Int l World Wide Web Conference, pages , May 24. [] A. Dan, D. Sitaram, P. Shahabuddin, and D. Towsley. Channel allocation under batching and VCR control in movie-on-demand servers. Journal of Parallel and Distributed Computing, 3(2):68 79, November 995. [] E. de Souza e Silva, R. M., Berthier A. Ribeiro-Neto, and S. V. A. Campos. Performance issues of multimedia applications. In Performance Evaluation of Complex Systems: Techniques and Tools, Performance 22, Tutorial Lectures, pages , London, UK, 22. Springer-Verlag. [2] E. de Souza e Silva and Rosa M.. The Tangram-II Environment. In Proc.th Int l Conference TOOLS2, pages , 2. [3] D. Eager, M. Vernon, and J. Zahorjan. Optimal and efficient merging schedules for video-ondemand servers. In Proc. 7th ACM Int l Multimedia Conference (ACM Multimedia 99), pages 99 22, November 999. [4] L. Gao and D. Towsley. Supplying instantaneous video-on-demand services using controlled multicast. In Proc. IEEE Multimedia Computing Systems, pages 7 2, June 999. [5] M. L. Gorza. Uma técnica de compartilhamento de recursos para transmissão de vídeo com alta interatividade e experiemntos. Tese de mestrado, UFF, Departamento de Ciência da Computação, Dezembro 23. [6] K. A. Hua, Y. Cai, and S. Sheu. Patching: A multicast technique for true video-on-demand services. In 2
14 Proc. 6th ACM Int l Multimedia Conference (ACM MULTIMEDIA 98), pages 9 2, 998. [7] W. Liao and V. O. K. Li. The split and merge protocol for interactive video-on-demand. IEEE Multimedia, 4(4):5 62, Oct 997. [8] Huadong Ma and K. G. Shin. A new scheduling scheme for multicast true VoD service. Lecture Notes in Computer Science, 295:78 75, 2. [9] V. J. Marathe, M. F. Spear, C. Heriot, A. Acharya, D. Eisenstat, W. N. Scherer III, and M. L. Scott. Lowering the overhead of nonblocing software transactional memory. In Worshop on Languages, Compilers, and Hardware Support for Transactional Computing (TRANSACT), 26. [27] C. K. S. Rodrigues and R. M.. Buffering para otimização de sistemas interativos de VoD. In XXV Simpósio Brasileiro de Redes de Computadores (SBRC27), pages , Belém, PA, Brasil, Maio 27. [28] S. Viswanathan and T. Imielinsi. Pyramid broadcasting for video-on-demand service. In Proc. S Multimedia Computing and Networing Conference, pages 66 77, February 995. [29] I. Yang and W. Moloney. Concurrent reading and writing with replicated data objects. In CSC 88: Proceedings of the 988 ACM sixteenth annual conference on Computer science, pages 44 47, New Yor, NY, USA, 988. ACM Press. [2] B. C. M. Netto. Patching interativo: Um novo método de compartilhamento de recursos para transmissão de vídeo com alta interatividade. Tese Mestrado, UFRJ, COPPE/PESC, Fevereiro 24. [2] W. Wing-Fai Poon and Kwo-Tung Lo. Design of multicast delivery for providing VCR functionality in interactive video-on-demand systems. IEEE Transactions on Broadcasting, 45():4 48, March 999. [22] M. Rocha, M. Maia, I. Cunha, J. Almeida, and S. Campos. Scalable Media Streaming to Interactive Users. In MULTIMEDIA 5: Proceedings of the 3th annual ACM international conference on Multimedia, Singapore, November 25. [23] C. K. S. Rodrigues. Mecanismos de compartilhamento de recursos para aplicações de mídia contínua na Internet. Tese de Doutorado, UFRJ, COPPE/PESC, Abril 26. [24] C. K. S. Rodrigues and R. M.. Novas técnicas de compartilhamento de banda para servidores de vídeo sob demanda com interatividade. In XXIII Simpósio Brasileiro de Redes de Computadores (SBRC25), Fortaleza, CE, Brasil, Maio 25. [25] C. K. S. Rodrigues and R. M.. Técnicas para sistemas de vídeo sob demanda escaláveis. In XXIV Simpósio Brasileiro de Redes de Computadores (SBRC26), pages , Curitiba, PR, Brasil, Maio 26. [26] C. K. S. Rodrigues and R. M.. Bandwidth usage distribution of multimedia servers using patching. Computer Networs, 5(3): , February
Técnicas para Sistemas de Vídeo sob Demanda Escaláveis
Técnicas para Sistemas de Vídeo sob Demanda Escaláveis Carlo Kleber da S. Rodrigues, Rosa Maria Meri Leão Universidade Federal do Rio de Janeiro COPPE/PESC, Rio de Janeiro RJ 294-972, CxP 685, Brazil {leber,rosam}@land.ufrj.br
Leia mais4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?
Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor remoto esteja associado. 2. Estabelecer
Leia maisSISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA
SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis
Leia maisManual SAGe Versão 1.2 (a partir da versão 12.08.01)
Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação
Leia mais2 Atualidade de uma base de dados
2 Atualidade de uma base de dados Manter a atualidade de uma base de dados é um problema que pode ser abordado de diferentes maneiras. Cho e Garcia-Molina [CHO] definem esse problema da seguinte forma:
Leia maisMultiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação
Multiplexadores Permitem que vários equipamentos compartilhem um único canal de comunicação Transmissor 1 Receptor 1 Transmissor 2 Multiplexador Multiplexador Receptor 2 Transmissor 3 Receptor 3 Economia
Leia maisNotas da Aula 17 - Fundamentos de Sistemas Operacionais
Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.
Leia mais4 Segmentação. 4.1. Algoritmo proposto
4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário
Leia maisTrabalhos Relacionados 79
Trabalhos Relacionados 79 6 Avaliação e Testes Neste capítulo são apresentados alguns testes que foram realizados com o a solução de Gerenciamento de Mobilidade (API SIP User Agent) e com o sistema publish/subscribe
Leia maisISO/IEC 12207: Gerência de Configuração
ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que
Leia mais4 Avaliação Econômica
4 Avaliação Econômica Este capítulo tem o objetivo de descrever a segunda etapa da metodologia, correspondente a avaliação econômica das entidades de reservas. A avaliação econômica é realizada a partir
Leia mais3 SCS: Sistema de Componentes de Software
3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário
Leia mais4 Arquitetura básica de um analisador de elementos de redes
4 Arquitetura básica de um analisador de elementos de redes Neste capítulo é apresentado o desenvolvimento de um dispositivo analisador de redes e de elementos de redes, utilizando tecnologia FPGA. Conforme
Leia mais1 INTRODUÇÃO Internet Engineering Task Force (IETF) Mobile IP
1 INTRODUÇÃO Devido ao crescimento da Internet, tanto do ponto de vista do número de usuários como o de serviços oferecidos, e o rápido progresso da tecnologia de comunicação sem fio (wireless), tem se
Leia mais5 Resultados. 1 Os resultados apresentados foram obtidos com 1 rodada do simulador.
5 Resultados A dificuldade em modelar analiticamente o comportamento de sistemas celulares hierarquizados faz com que grande parte dos estudos de desempenho destes sistemas seja baseada em simulações.
Leia mais3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.
Entregue três questões de cada prova. Prova de 2011-02 1. Descreva duas maneiras de estabelecer uma conexão entre processos na camada de transporte sem o conhecimento da porta (TSAP) ao qual o servidor
Leia maisArquitetura de Rede de Computadores
TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador
Leia maisFATEC Cruzeiro José da Silva. Ferramenta CRM como estratégia de negócios
FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Cruzeiro SP 2008 FATEC Cruzeiro José da Silva Ferramenta CRM como estratégia de negócios Projeto de trabalho de formatura como requisito
Leia maisMinistério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul
QUESTÃO: 29 Além da alternativa a estar correta a alternativa e também pode ser compreendida como correta. Segundo a definição de diversos autores, a gerência de falhas, detecta, isola, notifica e corrige
Leia maisSistemas Distribuídos
Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor
Leia mais5 Mecanismo de seleção de componentes
Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações
Leia maisIFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Leia mais3 Classificação. 3.1. Resumo do algoritmo proposto
3 Classificação Este capítulo apresenta primeiramente o algoritmo proposto para a classificação de áudio codificado em MPEG-1 Layer 2 em detalhes. Em seguida, são analisadas as inovações apresentadas.
Leia maisGerenciamento de Memória
Gerenciamento de Memória Prof. Dr. José Luís Zem Prof. Dr. Renato Kraide Soffner Prof. Ms. Rossano Pablo Pinto Faculdade de Tecnologia de Americana Centro Paula Souza Tópicos Introdução Alocação Contígua
Leia maisPodemos encontrar uma figura interessante no PMBOK (Capítulo 7) sobre a necessidade de organizarmos o fluxo de caixa em um projeto.
Discussão sobre Nivelamento Baseado em Fluxo de Caixa. Item aberto na lista E-Plan Podemos encontrar uma figura interessante no PMBOK (Capítulo 7) sobre a necessidade de organizarmos o fluxo de caixa em
Leia maisProjeto de Sistemas I
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o
Leia maisProcessos de Desenvolvimento de Software
Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e
Leia maisCOMPUTADORES NAS EMPRESAS Cloud Computing Prof. Reginaldo Brito
COMPUTADORES NAS EMPRESAS Prof. Reginaldo Brito Os computadores são essenciais para enfrentar o desafio da concorrência global, na qual as empresas precisam ser eficientes e ágeis e tem de produzir produtos
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS Modelo cliente e servidor Slide 2 Nielsen C. Damasceno Modelos Cliente - Servidor A principal diferença entre um sistema centralizado e um sistema distribuído está na comunicação
Leia maisMódulo 4. Construindo uma solução OLAP
Módulo 4. Construindo uma solução OLAP Objetivos Diferenciar as diversas formas de armazenamento Compreender o que é e como definir a porcentagem de agregação Conhecer a possibilidade da utilização de
Leia mais28/9/2010. Paralelismo no nível de instruções Processadores superescalares
Arquitetura de Computadores Paralelismo no nível de instruções Processadores superescalares Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Processadores superescalares A partir dos resultados
Leia mais5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS. 5.1 - Os Programas de Avaliação
36 5. EXPERIÊNCIAS E ANÁLISE DOS RESULTADOS 5.1 - Os Programas de Avaliação Programas de avaliação convencionais foram utilizados para análise de diversas configurações da arquitetura. Estes programas
Leia maisProf.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais
Sistemas Operacionais Prof.: Roberto Franciscatto Capítulo 1.2 Aspectos Gerais Estrutura do Sistema Operacional Principais Funções do Sistema Operacional Tratamento de interrupções e exceções Criação e
Leia maisIMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET
1 IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET Daniel da Silva Carla E. de Castro Franco Diogo Florenzano Avelino daniel.silva1@ext.mpsa.com
Leia maisPrefixo a ser comparado Interface 1 0 10 1 111 2 Senão 3
PEL/FEN Redes de Computadores 015/1 Segunda Lista de Exercícios Prof. Marcelo Gonçalves Rubinstein 1) Descreva os principais serviços providos pela camada rede. ) Cite as diferenças entre datagrama e circuito
Leia maisEntendendo como funciona o NAT
Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços
Leia maisMÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos
MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada
Leia maisBACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia
O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar
Leia maisDadas a base e a altura de um triangulo, determinar sua área.
Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares
Leia maisXDOC. Solução otimizada para armazenamento e recuperação de documentos
XDOC Solução otimizada para armazenamento e recuperação de documentos ObJetivo Principal O Que você ACHA De ter Disponível Online todos OS Documentos emitidos por SUA empresa em UMA intranet OU Mesmo NA
Leia maisPRIMAVERA RISK ANALYSIS
PRIMAVERA RISK ANALYSIS PRINCIPAIS RECURSOS Guia de análise de risco Verificação de programação Risco rápido em modelo Assistente de registro de riscos Registro de riscos Análise de riscos PRINCIPAIS BENEFÍCIOS
Leia maisGerência de Processador
Gerência de Processador Prof. Edwar Saliba Júnior Junho de 2009 Unidade 03-003 Gerência de Processador 1 Introdução Com o surgimento dos sistemas multiprogramáveis, onde múltiplos processos poderiam permanecer
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisProf.: Roberto Franciscatto. Capítulo 1.1 Introdução
Sistemas Operacionais Prof.: Roberto Franciscatto Capítulo 1.1 Introdução Tipos de Sistemas Operacionais Sistemas Monoprogramáveis / Monotarefa Voltados tipicamente para a execução de um único programa.
Leia maisSERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA
SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA Muitas organizações terceirizam o transporte das chamadas em seus call-centers, dependendo inteiramente
Leia maisPlano de Continuidade de Negócios
Plano de Continuidade de Negócios Objetivo Contingenciar situações e incidentes de segurança que não puderam ser evitados. Deve ser eficaz como um pára-quedas reserva o é em um momento de falha do principal,
Leia maisEngenharia de Software
Universidade São Judas Tadeu Profª Dra. Ana Paula Gonçalves Serra Engenharia de O Processo Uma Visão Genérica Capítulo 2 (até item 2.2. inclusive) Engenharia de - Roger Pressman 6ª edição McGrawHill Capítulo
Leia mais)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR
6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,
Leia maisVisualizando um vídeo através do Servidor de Streaming
Visualizando um vídeo através do Servidor de Streaming Função do Servidor de Streaming Quando existem muitos usuários acessando remotamente uma câmera para realizar a visualização ao vivo ou fazer gerenciamento,
Leia maisNa medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.
1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade
Leia maisPLANEJAMENTO DA MANUFATURA
58 FUNDIÇÃO e SERVIÇOS NOV. 2012 PLANEJAMENTO DA MANUFATURA Otimizando o planejamento de fundidos em uma linha de montagem de motores (II) O texto dá continuidade à análise do uso da simulação na otimização
Leia maisPARANÁ GOVERNO DO ESTADO
A COMUNICAÇÃO NA INTERNET PROTOCOLO TCP/IP Para tentar facilitar o entendimento de como se dá a comunicação na Internet, vamos começar contando uma história para fazer uma analogia. Era uma vez, um estrangeiro
Leia maisCapítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho
20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam
Leia maisCurso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento
Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento Professor Rene - UNIP 1 Roteamento Dinâmico Perspectiva e histórico Os protocolos de roteamento dinâmico são usados
Leia maisCHECK - LIST - ISO 9001:2000
REQUISITOS ISO 9001: 2000 SIM NÃO 1.2 APLICAÇÃO A organização identificou as exclusões de itens da norma no seu manual da qualidade? As exclusões são relacionadas somente aos requisitos da sessão 7 da
Leia mais2. Representação Numérica
2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos
Leia maisIntrodução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Leia mais3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio
32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio
Leia maisCOMO EXPLORAR OS BENEFÍCIOS DOS INDICADORES DE DESEMPENHO NA GESTÃO DE UM CSC. Lara Pessanha e Vanessa Saavedra
COMO EXPLORAR OS BENEFÍCIOS DOS INDICADORES DE DESEMPENHO NA GESTÃO DE UM CSC Lara Pessanha e Vanessa Saavedra A utilização de indicadores de desempenho é uma prática benéfica para todo e qualquer tipo
Leia maisAulas 22 & 23. Controle de Fluxo e de Congestionamento. Eytan Modiano MIT
Aulas 22 & 23 Controle de Fluxo e de Congestionamento Eytan Modiano MIT 1 Controle de Fluxo Controle de fluxo: mecanismo fim a fim para controlar o tráfego entre fonte e destinatário. Controle de congestionamento:
Leia maisAnálise de Sistemas. Visão Geral: Orientação a Objetos. Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br
Análise de Sistemas Visão Geral: Orientação a Objetos Prof. José Honorato Ferreira Nunes Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br Resumo: VISÃO GERAL: Modelagem de sistemas
Leia maisFuncionalidades do Sistema de Negociação de Créditos de Carbono. Anexo VIII
Anexo VIII Este Manual do Usuário possui caráter informativo e complementar ao Edital do Leilão de Venda de Reduções Certificadas de Emissão nº 001/2012, promovido pela Prefeitura da Cidade de São Paulo
Leia maisALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA
ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do
Leia maisSistemas de Gestão Ambiental O QUE MUDOU COM A NOVA ISO 14001:2004
QSP Informe Reservado Nº 41 Dezembro/2004 Sistemas de Gestão O QUE MUDOU COM A NOVA ISO 14001:2004 Material especialmente preparado para os Associados ao QSP. QSP Informe Reservado Nº 41 Dezembro/2004
Leia maisAssociação Paralelo Ativo e Passivo Vantagens e Benefícios
Associação Paralelo Ativo e Passivo Vantagens e Benefícios Departamento de Pesquisa e Desenvolvimento - CP Eletrônica S.A. Rua da Várzea 379 CEP:91040-600 - Porto Alegre RS - Brasil Fone: (51)21312407
Leia maisMÓDULO 6 INTRODUÇÃO À PROBABILIDADE
MÓDULO 6 INTRODUÇÃO À PROBBILIDDE Quando estudamos algum fenômeno através do método estatístico, na maior parte das vezes é preciso estabelecer uma distinção entre o modelo matemático que construímos para
Leia maisSimulação Computacional de Sistemas, ou simplesmente Simulação
Simulação Computacional de Sistemas, ou simplesmente Simulação Utilização de métodos matemáticos & estatísticos em programas computacionais visando imitar o comportamento de algum processo do mundo real.
Leia maisSECRETARIA DE ESTADO DA EDUCAÇÃO SUPERINTENDÊNCIA DE EDUCAÇÃO DIRETORIA DE TECNOLOGIA EDUCACIONAL PORTAL DIA A DIA EDUCAÇÃO Natel Marcos Ferreira
SECRETARIA DE ESTADO DA EDUCAÇÃO SUPERINTENDÊNCIA DE EDUCAÇÃO DIRETORIA DE TECNOLOGIA EDUCACIONAL PORTAL DIA A DIA EDUCAÇÃO Natel Marcos Ferreira Movimento 1. Nível de ensino: Ensino Médio 2. Conteúdo
Leia maisMRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior
MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de
Leia maisPROJETO DE REDES www.projetoderedes.com.br
PROJETO DE REDES www.projetoderedes.com.br Curso de Tecnologia em Redes de Computadores Disciplina: Redes I Fundamentos - 1º Período Professor: José Maurício S. Pinheiro AULA 2: Transmissão de Dados 1.
Leia maisNovas Técnicas de Compartilhamento de Banda para Servidores de Vídeo sob Demanda com Interatividade
Novas Técnicas de Compartilhamento de Banda para Servidores de Vídeo sob Demanda com Interatividade Carlo Kleber da S. Rodrigues, Rosa Maria Meri Leão Universidade Federal do Rio de Janeiro, COPPE/PESC
Leia maisRegistro e Acompanhamento de Chamados
Registro e Acompanhamento de Chamados Contatos da Central de Serviços de TI do TJPE Por telefone: (81) 2123-9500 Pela intranet: no link Central de Serviços de TI Web (www.tjpe.jus.br/intranet) APRESENTAÇÃO
Leia maisMODELO CLIENTE SERVIDOR
SISTEMAS DISTRIBUÍDOS Modelo Cliente Servidor Modelo que estrutura um S.O. como um grupo de processos cooperantes, chamados servidores, que oferecem serviços a processos usuários, denominados clientes;
Leia mais04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais
Leia maisTeleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010
Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010 Prof. Silvana Rossetto (DCC/IM/UFRJ) 1 13 de julho de 2010 Questões 1. Qual é a diferença fundamental entre um roteador
Leia mais1. Avaliação de impacto de programas sociais: por que, para que e quando fazer? (Cap. 1 do livro) 2. Estatística e Planilhas Eletrônicas 3.
1 1. Avaliação de impacto de programas sociais: por que, para que e quando fazer? (Cap. 1 do livro) 2. Estatística e Planilhas Eletrônicas 3. Modelo de Resultados Potenciais e Aleatorização (Cap. 2 e 3
Leia maisSistemas Operacionais Processos e Threads
Sistemas Operacionais Processos e Threads Prof. Marcos Monteiro, MBA http://www.marcosmonteiro.com.br contato@marcosmonteiro.com.br 1 Estrutura de um Sistema Operacional 2 GERÊNCIA DE PROCESSOS Um processo
Leia maisArquitetura de Computadores. Sistemas Operacionais IV
Arquitetura de Computadores Sistemas Operacionais IV Introdução Multiprogramação implica em manter-se vários processos na memória. Memória necessita ser alocada de forma eficiente para permitir o máximo
Leia maisCurso: Redes II (Heterogênea e Convergente) Tema da Aula: Controle de Congestionamento
Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Controle de Congestionamento Professor Rene - UNIP 1 Revisão... Segmento A unidade de dados trocada entre as entidades de transporte é denominada
Leia mais1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Leia mais6 Construção de Cenários
6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.
Leia mais1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.
O software de tarifação é uma solução destinada a rateio de custos de insumos em sistemas prediais, tais como shopping centers. O manual do sistema é dividido em dois volumes: 1) MANUAL DO INTEGRADOR Este
Leia maisExercícios Teóricos Resolvidos
Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar
Leia maisA memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande
A memória é um recurso fundamental e de extrema importância para a operação de qualquer Sistema Computacional; A memória trata-se de uma grande região de armazenamento formada por bytes ou palavras, cada
Leia maisProf. Antonio Torres antonioctorres@gmail.com @_antonioctorres. Fundamentos de Sistemas Operacionais UNIP/2015
Prof. Antonio Torres antonioctorres@gmail.com @_antonioctorres Fundamentos de Sistemas Operacionais UNIP/2015 Disciplinas FUNDAMENTOS DE SISTEMAS OPERACIONAIS Horários Quarta-feira Fundamentos de Sistemas
Leia maisSubcamada MAC. O Controle de Acesso ao Meio
Subcamada MAC O Controle de Acesso ao Meio Métodos de Acesso ao Meio As implementações mais correntes de redes locais utilizam um meio de transmissão que é compartilhado por todos os nós. Quando um nó
Leia maisEAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS
EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS Relatório Nº 03/2013 Porto Alegre, 22 de Agosto de 2013. ANÁLISE DE SOLUÇÕES: # RAID 1: O que é: RAID-1 é o nível de RAID que implementa o espelhamento
Leia maisGerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto
Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento
Leia maisEngenharia de Software II: Definindo Projeto III. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br
Engenharia de Software II: Definindo Projeto III Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Sumário Explorando as Áreas de Conhecimento de Gerenciamento de Projeto Entendendo como Projetos Acontecem
Leia mais5 Estudo de caso: utilizando o sistema para requisição de material
61 5 Estudo de caso: utilizando o sistema para requisição de material A fim de avaliar as características da arquitetura proposta e a corretude da implementação, realizamos experiências com cenários de
Leia maisTRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 5-1. A CAMADA DE TRANSPORTE Parte 1 Responsável pela movimentação de dados, de forma eficiente e confiável, entre processos em execução nos equipamentos conectados a uma rede de computadores, independentemente
Leia maisBalanceamento de Carga
40 4. Balanceamento de Carga Pode-se entender por balanceamento de carga uma política a ser adotada para minimizar tanto a ociosidade de utilização de alguns equipamentos quanto a super utilização de outros,
Leia maisSimulação Transiente
Tópicos Avançados em Avaliação de Desempenho de Sistemas Professores: Paulo Maciel Ricardo Massa Alunos: Jackson Nunes Marco Eugênio Araújo Dezembro de 2014 1 Sumário O que é Simulação? Áreas de Aplicação
Leia maisHá dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:
Comunicação em uma rede Ethernet A comunicação em uma rede local comutada ocorre de três formas: unicast, broadcast e multicast: -Unicast: Comunicação na qual um quadro é enviado de um host e endereçado
Leia mais