SlideShare une entreprise Scribd logo
1  sur  112
Télécharger pour lire hors ligne
Ana Luiza Bessa de Paula Barros Diniz




Um Serviço de Alocação Dinâmica de Banda
 Passante em Redes ATM para Suporte a
         Aplicações Multimídia




            Dissertação apresentada ao Departamento de
            Ciência da Computação do Instituto de Ciências
            Exatas da Universidade Federal de Minas Gerais,
            como requisito parcial para obtenção do grau de
            mestre em Ciência da Computação




                 Belo Horizonte

              26 de Março de 1998
i




                                     Ao
                    Marcio, meu marido,
               Barros e Laura, meus pais,
Barros Neto e Ana Carolina, meus irmãos.
ii



                            Agradecimentos
       Agradeço a Deus, em Quem sempre tive fé, e onde sempre busquei força e
perseverança. Agradeço, principalmente, por Sua presença constante.
       Agradeço esta vitória aos meus pais, que sempre foram exemplo de coragem e
dedicação. Nunca teria conseguido chegar aqui, se não fosse o apoio, carinho e amor a
mim dispensados. Com certeza, esta alegria que vivencio agora é deles também.
       Agradeço ao Marcio, meu marido e amigo, pelos momentos em que me
compreendeu e incentivou. Sua presença, sua força, seu apoio e seu amor, foram
fundamentais para que eu conseguisse alcançar este objetivo. Sua participação, nos
momentos mais difíceis, e sua alegria, nos momentos mais felizes, foram muito
importantes.
       Agradeço ao meu irmão, Barros Neto, e a minha irmã, Carol, pelo pensamento
positivo e torcida, em todos os momentos. Agradeço também a Andrea, pela força.
       Agradeço ao professor, amigo e orientador, José Marcos, pelo apoio, orientação,
incentivo e conhecimentos transmitidos.
       Agradeço ao professor Mauro Oliveira pelo apoio, motivação e incentivo, mesmo
antes do início deste trabalho e do curso de mestrado. Sua ajuda foi de extrema
importância.
       Agradeço ao Carlos, pela paciência e disponibilidade para explicar e tirar dúvidas.
       Agradeço ao professores e funcionários do DCC/UFMG.
       Agradeço ao Flávio, por sua grande ajuda e pelas ótimas discussões a cerca do
trabalho, que foram muito importantes.
       Agradeço ao Bráulio, pela amizade e ajuda fundamental na discussão de
problemas estatísticos.
       Agradeço aos amigos do laboratório, Patrícia, Patty, Fernando e Daniel, pelos
ótimos momentos que vivemos, em um ambiente alegre e descontraído. Agradeço pelo
companheirismo sempre presente entre nós.
       Agradeço aos amigos do mestrado, pelos dias de estudo e desespero que passamos
juntos e também pela nossa união. Sem esse apoio tudo teria sido muito mais difícil.
       Agradeço aos amigos da Quinta Feliz, por tantos bons momentos.
       Agradeço a Marisa, pelo apoio, incentivo e amizade.
       Agradeço a CAPES, agência financiadora deste trabalho.
iii



                                    Resumo
       Com o surgimento das aplicações multimídia, apareceram novos conceitos de
critérios de qualidade e requisitos de comunicação. Estas aplicações possuem mais de um
tipo de mídia integradas, como voz, dados, imagem e vídeo. Cada tipo de mídia possui
características e requisitos diferentes. Para que informações de uma aplicação multimídia
distribuída possam ser transmitidas através de uma rede, esta última deve prover garantias
que atendam aos requisitos de todas as mídias. Uma outra característica das aplicações
multimídia é que, algumas destas aplicações, como vídeo, por exemplo, possuem muitas
informações a serem transmitidas na rede e requerem uma grande capacidade de banda
passante. Para que uma rede suporte aplicações multimídia, ela deve oferecer garantias de
Qualidade de Serviço (QoS) e alta velocidade.
       A tecnologia de rede ATM (Asynchronous Transfer Mode) mostra-se uma forte
candidata para dar suporte a este tipo de aplicação. Esta tecnologia fornece garantias de
qualidade de serviço, através da implementação de classes de serviço e de um algoritmo
de controle de admissão de conexão (CAC). Com ATM, também é possível conseguir
velocidades de acesso da ordem de megabits por segundo.
       Para transmitir informações através de uma rede, com garantias de qualidade de
serviço, é necessário que, na fase de estabelecimento da conexão, a aplicação faça uma
negociação, com a rede, da qualidade de serviço desejada. Esta negociação pode ser
estática ou dinâmica. Na negociação estática, os valores dos parâmetros de qualidade são
definidos no início da transmissão e não podem ser alterados. Na negociação dinâmica,
estes parâmetros podem ser alterados durante a fase ativa da conexão.
       Este trabalho apresenta um serviço de negociação dinâmica de qualidade de
serviço para redes ATM. O serviço foi desenvolvido para dar suporte a transmissão de
dados de aplicações multimídia. O objetivo é prover um nível de qualidade de serviço ao
usuário, ao mesmo tempo que é atingido um bom desempenho da rede. Neste trabalho
estão envolvidos os conceitos básicos de aplicações multimídia, qualidade de serviço e
redes ATM. Estes conceitos são discutidos inicialmente. Depois é definido o serviço da
camada de negociação de QoS e é mostrado também o protocolo de negociação. A
estrutura do serviço de negociação      dinâmica e alguns aspectos de implementação
também são abordados. Por fim, são apresentados a execução dos testes e os resultados
obtidos.
iv



                                     Abstract
       With the emergence of multimedia applications, new concepts of quality standards
and communications requirements appeared. These applications have more than one type
of media integrated, like voice, data, image and video. Each type of media has different
features and requirements. In order to transmit information of a distributed multimedia
application through a network, the last one must provide warranties to support the
requirements of all medias. Another feature of multimedia applications is that, some of
media, like video for example, has too much information to be transmitted through a
network and require a high bandwidth capacity. To support multimedia applications, a
network must offer quality of service (QoS) warranties and high speed.
       ATM (Asynchronous Transfer Mode) network technology is one of the strongest
candidates to provide support for this kind of application. This technology provides
quality of service guarantees through the implementation of service classes and of a
Connection Admission Control (CAC) algorithm. It’s also possible to achieve high-speed
access (megabits per second) using ATM.
       In order to transmit information in the network with quality of service guarantees,
it’s necessary that, in the connection establishment phase, the application negotiate the
quality of service desired with the network. This negotiation can be either static or
dynamic. In the static negotiation, the values of the parameters of quality are defined in
the beginning of the transmission and can not be modified. In the dynamic negotiation,
these parameters can be modified during the active phase of the connection.
       This work presents a dynamic negotiation service of Quality of Service (QoS),
based on ATM networks. The service was developed to support data transmission of
multimedia applications. The goal is to guarantee a quality of service level to the user and
at the same time a better network performance. This work envolves the basic concepts of
multimedia applications, quality of service and ATM networks, which are discussed first.
After that, the QoS negotiation layer service is defined and the negotiation protocol is
also showed. The dynamic negotiation service structure and some implementation aspects
are discussed. Finally, the performance of the tests are shown and the results obtained are
presented.
v



                                                                  Sumário

CAPÍTULO 1

INTRODUÇÃO .............................................................................................................................................1
    1.1 MOTIVAÇÃO ..........................................................................................................................................2
CAPÍTULO 2

APLICAÇÕES MULTIMÍDIA E REQUISITOS DE COMUNICAÇÃO................................................6
    2.1 INTRODUÇÃO.........................................................................................................................................6
    2.2 CARACTERÍSTICAS DAS MÍDIAS..............................................................................................................7
    2.3 APLICAÇÕES MULTIMÍDIA ...................................................................................................................10
       2.3.1 Exemplos de Aplicações Multimídia ...........................................................................................11
    2.4 REQUISITOS DE COMUNICAÇÃO ...........................................................................................................14
    2.5 SISTEMAS MULTIMÍDIA........................................................................................................................17
    2.6 RESUMO DO CAPÍTULO ........................................................................................................................19
CAPÍTULO 3

QUALIDADE DE SERVIÇO .....................................................................................................................20
    3.1 INTRODUÇÃO.......................................................................................................................................21
    3.2 FUNÇÕES DE GERENCIAMENTO DE QOS ..............................................................................................24
    3.3 NEGOCIAÇÃO DE QOS .........................................................................................................................27
       3.3.1 Passos da negociação .................................................................................................................28
       3.3.2 Componentes do sistema envolvidos na negociação de QoS ......................................................29
    3.4 RENEGOCIAÇÃO...................................................................................................................................30
    3.5 RESUMO DO CAPÍTULO ........................................................................................................................32
CAPÍTULO 4

REDES ATM PARA TRANSMISSÃO DE APLICAÇÕES MULTIMÍDIA COM GARANTIAS DE
QOS ..............................................................................................................................................................33
    4.1 INTRODUÇÃO.......................................................................................................................................33
    4.2 T ECNOLOGIA ATM..............................................................................................................................36
    4.3 QUALIDADE DE SERVIÇO EM REDES ATM...........................................................................................41
       4.3.1 Reserva, Alocação e Dedicação de Recursos .............................................................................41
       4.3.2 Classes de Serviço ATM..............................................................................................................42
    4.4 CONTROLE DE ADMISSÃO DE CONEXÕES EM REDES ATM ..................................................................43
    4.5 RESUMO DO CAPÍTULO ........................................................................................................................46
CAPÍTULO 5

UM ESQUEMA DE NEGOCIAÇÃO DINÂMICA DE QOS ..................................................................48
    5.1 INTRODUÇÃO.......................................................................................................................................48
    5.2 RESUMO DO CAPÍTULO ........................................................................................................................50
CAPÍTULO 6

UM SERVIÇO DE NEGOCIAÇÃO DE QOS PARA UMA REDE ATM .............................................51
    6.1 INTRODUÇÃO.......................................................................................................................................51
vi


    6.2 SERVIÇO ..............................................................................................................................................52
       6.2.1 Diagramas de Tempo das Primitivas de Serviço ........................................................................54
    6.3 O SERVIÇO DA CAMADA ATM ............................................................................................................57
    6.4 O P ROTOCOLO DE NEGOCIAÇÃO..........................................................................................................59
       6.4.1 Descrição do Protocolo ..............................................................................................................59
    6.5 RESUMO DO CAPÍTULO ........................................................................................................................67
CAPÍTULO 7

PROJETO E IMPLEMENTAÇÃO DO SERVIÇO DE NEGOCIAÇÃO DINÂMICA EM UMA
REDE ATM..................................................................................................................................................69
    7.1 PROJETO ..............................................................................................................................................69
       7.1.1 Módulos ......................................................................................................................................69
       7.1.2 Estruturas de Dados ...................................................................................................................70
    7.2 IMPLEMENTAÇÃO ................................................................................................................................72
       7.2.1 Estrutura de Execução Real do Esquema de Negociação ..........................................................72
       7.2.2 Estrutura de Execução do Protótipo do Esquema de Negociação .............................................72
       7.2.3 Dificuldades Encontradas na Implementação ............................................................................73
       7.2.4 Algoritmos...................................................................................................................................74
    7.3 RESUMO DO CAPÍTULO ........................................................................................................................78
CAPÍTULO 8

TESTES E ANÁLISE DOS RESULTADOS.............................................................................................79
    8.1 INTRODUÇÃO.......................................................................................................................................79
    8.2 ELABORAÇÃO DOS TESTES ..................................................................................................................82
    8.3 ANÁLISE DOS RESULTADOS .................................................................................................................83
       8.3.1 Análise de Variância ...................................................................................................................83
       8.3.2 Análise de Regressão ..................................................................................................................92
    8.4 ANÁLISE DE VIABILIDADE DO ESQUEMA..............................................................................................94
    8.5 RESUMO DO CAPÍTULO ........................................................................................................................96
CAPÍTULO 9

CONCLUSÕES E TRABALHOS FUTUROS ..........................................................................................97
    9.1 INTRODUÇÃO.......................................................................................................................................97
    9.2 T RABALHOS FUTUROS .........................................................................................................................99
vii




                                               Índice de Figuras

FIGURA 1.1 - VARIAÇÃO NA CODIFICAÇÃO DE BANDA PASSANTE PARA VÍDEO ...............................................4
FIGURA 3.1 - NEGOCIAÇÃO TRIANGULAR.......................................................................................................28
FIGURA 4.1 - CLASSES DE SERVIÇO ATM, SUAS CARACTERÍSTICAS E RESPECTIVAS APLICAÇÕES                                                ...................43
FIGURA 4.2 - ESTABELECIMENTO DE UMA CONEXÃO ATRAVÉS DE UMA REDEATM ......................................46
FIGURA 5.1 - ARQUITETURA DA NEGOCIAÇÃO DE QOS...................................................................................49
FIGURA 5.2: BANDA ALOCADA X BANDA REAL .............................................................................................49
FIGURA 6.1 - ARQUITETURA DE NEGOCIAÇÃO DE QOS PARA UMA REDE ATM ..............................................52
FIGURA 6.2 - POSIÇÃO DA CAMADA DE NEGOCIAÇÃO DE QOS DENTRO DE UM ESQUEMA DE CAMADAS .......53
FIGURA 6.3 - ESTRUTURA INTERNA DA CAMADA DE NEGOCIAÇÃO DE QOS...................................................53
FIGURA 6.4 - DIAGRAMA DE TEMPO PARA A PRIMITIVA ESTABELECER_CONEXAO ........................................55
FIGURA 6.5 - DIAGRAMA DE TEMPO PARA A PRIMITIVA TERMINAR_CONEXAO .............................................55
FIGURA 6.6 - DIAGRAMA DE TEMPO PARA A PRIMITIVA MENOS_RECURSOS..................................................56
FIGURA 6.7 - DIAGRAMA DE TEMPO PARA A PRIMITIVA MAIS_RECURSOS .....................................................56
FIGURA 6.8 - DIAGRAMA DE TEMPO MOSTRANDO A ORDEM DE EXECUÇÃO DAS PRIMITIVAS E PDUS ...........57
FIGURA 6.9 - ORDEM DE EXECUÇÃO PARA TRANSMISSÃO .............................................................................59
FIGURA 6.10 - ORDEM DE EXECUÇÃO PARA RECEPÇÃO .................................................................................59
FIGURA 6.11 - ESQUEMA DOS CANAIS DE COMUNICAÇÃO ENTRE AS MÁQUINAS- 1 CANAL DE CONTROLE E
     VÁRIOS DE DADOS.................................................................................................................................61
FIGURA 6.12 - ESTRUTURA DO BUFFER DE DADOS DA FUNÇÃO PUTMSG ONDE SÃO TRANSMITIDAS AS
     PRIMITIVAS DE NEGOCIAÇÃO.................................................................................................................63
FIGURA 6.13 - MÁQUINA DE ESTADOS FINITOS DO NÓ CLIENTE ....................................................................66
FIGURA 6.14 - MÁQUINA DE ESTADOS FINITOS DO NÓ SERVIDOR..................................................................66
FIGURA 6.15 - MÁQUINA DE ESTADOS FINITOS DO NÓ INTERMEDIÁRIO.........................................................67
FIGURA 7.1 - ESTRUTURA DE EXECUÇÃO DO ESQUEMA DE NEGOCIAÇÃO......................................................72
FIGURA 7.2 - ESTRUTURA DE EXECUÇÃO DO PROTÓTIPO ...............................................................................73
FIGURA 7.3 - ALGORITMOS DE APOIO.............................................................................................................75
FIGURA 7.4 - ALGORITMO DO MÓDULO CLIENTE ...........................................................................................76
FIGURA 7.5 - ALGORITMO DO MÓDULO INTERMEDIÁRIO ...............................................................................77
FIGURA 7.6 - ALGORITMO DO MÓDULO SERVIDOR.........................................................................................78
FIGURA 8.1 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X QUANTIDADE DE NÓS ..................................84
FIGURA 8.2 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X CAPACIDADE DOS NÓS .................................85
FIGURA 8.3 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X QUANTIDADE DE PEDIDOS DE CONEXÃO......87
FIGURA 8.4 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X TEMPO DE SIMULAÇÃO ................................88
FIGURA 8.5 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X RESERVA MÍNIMA ........................................90
FIGURA 8.6 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X RESERVA MÁXIMA ......................................91
FIGURA 8.7 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO EM RELAÇÃO A RESERVA MÍNIMA ..................92
FIGURA 8.8 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO EM RELAÇÃO A RESERVA MÍNIMA E MÁXIMA.92
viii




                                          Índice de Tabelas

TABELA 2.1 - TAXAS DE BITS DE APLICAÇÕES DE ÁUDIO E VÍDEO ................................................................16
TABELA 3.1 - FASES DE UMA APLICAÇÃO E SUAS RESPECTIVAS FUNÇÕES DE GERENCIAMENTO DEQOS ........26
TABELA 4.1 - PARÂMETROS MULTIMÍDIA PARA TECNOLOGIAS DE REDES DE PACOTE DE LONGA DISTÂNCIA                                            ...40
TABELA 8.1 - MATRIZ COM VALORES UTILIZADOS NOS TESTES (QUADRADO LATINO)..................................82
TABELA 8.2 - ANÁLISE DE VARIÂNCIA DA QUANTIDADE DE NÓS EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO
            DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................................84
TABELA 8.3 - ANÁLISE DE VARIÂNCIA DA CAPACIDADE DO NÓS EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO
            DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................................85
TABELA 8.4 - ANÁLISE DE VARIÂNCIA DA QUANTIDADE DE PEDIDOS DE CONEXÃO EM RELAÇÃO AO
            PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ....................................................86
TABELA 8.5 - ANÁLISE DE VARIÂNCIA DO TEMPO DE SIMULAÇÃO EM RELAÇÃO AO PERCENTUAL DE
            REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................88
TABELA 8.6 - ANÁLISE DE VARIÂNCIA DA RESERVA MÍNIMA EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE
            PEDIDOS DE RENEGOCIAÇÃO ....................................................................................................89
TABELA 8.7 - ANÁLISE DE VARIÂNCIA DA RESERVA MÁXIMA EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE
            PEDIDOS DE RENEGOCIAÇÃO ....................................................................................................90
TABELA 8.8 - EQUAÇÃO DE REGRESSÃO DO PERCENTUAL DE REJEIÇÃO EM RELAÇÃO AOS PARÂMETROS:
            QUANTIDADE DE PEDIDOS DE CONEXÃO, TEMPO DE SIMULAÇÃO, RESERVA MÁXIMA, RESERVA
            MÍNIMA E CAPACIDADE DOS NÓS .............................................................................................94
Autor: Ana Luiza Bessa de Paula Barros Diniz   Orientador: José Marcos Silva Nogueira
                                                                                           1




    Capítulo 1

    Introdução

    O desenvolvimento das tecnologias de transmissão de dados possibilitou o surgimento
    das redes de alta velocidade com capacidade de transportar informações na ordem de
    milhões de bits por segundo. A existência dessas redes tornou possível a implementação
    de aplicações que requisitassem grande capacidade de transmissão. Dentre estas
    aplicações, podem ser citadas, como das mais importantes, as aplicações multimídia.
            A maioria das aplicações utilizadas nas redes de dados atuais são pouco sensíveis
    a variações de banda e retardo. Os serviços de rede como correio eletrônico e
    transferência de arquivo podem executar com a quantidade de banda que é fornecida a
    eles. Serviços interativos, tais como login remoto, beneficiam-se pouco de valores de
    banda maiores. Esta aplicação envia apenas pequenos pacotes de dados e o maior
    benefício de ter muita banda disponível é reduzir a interferência de grandes pacotes sobre
    pequenos pacotes de dados, pois os pequenos levam menos tempo para serem
    transmitidos. A aplicação de sistema de arquivos distribuído (NFS - Network File System)
    se beneficia de um maior valor de banda. Ter uma rede com muita banda passante reduz o
    tempo para transmissão de dados do servidor para o cliente. No entanto, o aumento de
    banda passante para as aplicações citadas, faz apenas com que elas sejam executas mais
    rapidamente, mas não influencia no resultado ou na correção de suas execuções [Partr94].
            As aplicações multimídia geram vários tipos de informação, como texto, dados,
    voz, vídeo e imagem. Em uma transmissão multimídia, todas essas informações devem
    ser enviadas em um mesmo meio de comunicação. Por esse motivo, e pelo fato de alguns
    tipos de informação, como vídeo, por exemplo, possuírem muitos dados, a transmissão
    destas aplicações, requer uma grande capacidade de banda passante.
            Cada um desses tipos de informação possui requisitos diferentes, no que diz
    respeito a retardo de transmissão, taxa de erros, perda de dados e largura de banda.
    Assim, uma rede para transmitir uma aplicação multimídia deve oferecer garantias de
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                         2


   qualidade de serviço (QoS - Quality of Service), para que todas as informações
   transmitidas tenham seus requisitos atendidos.
           A negociação da qualidade de serviço consiste em fazer, no início de cada
   conexão, uma negociação dos parâmetros de transmissão necessários a cada tipo de
   aplicação e, a partir daí, tanto as aplicações como a rede devem obedecer aos requisitos
   de qualidade estabelecidos. Esse tipo de negociação, feito apenas no início da
   transmissão, pode ser chamado de negociação estática, pois os parâmetros acordados no
   estabelecimento da conexão continuam até que ela finalize.
           A negociação dinâmica da qualidade de serviço permite que os parâmetros de
   qualidade sejam alterados durante a fase ativa da conexão. Essa negociação pode ser feita
   para requisitar mais ou menos recursos. Dessa maneira, se uma aplicação estiver
   subutilizando recursos, ela pode liberá-los. Estes recursos podem ser reaproveitados por
   conexões que, em um determinado momento, exijam mais recursos ou até mesmo por
   aplicações que desejem iniciar uma transmissão. A utilização da negociação dinâmica
   possibilita uma melhor utilização do meio de transmissão.
           Uma rede, para transportar dados de aplicações multimídia, deve oferecer,
   portanto, alta velocidade de transmissão e garantias de qualidade de serviço. Nesse
   sentido, a tecnologia de rede ATM (Asynchronous Transfer Mode) tem-se mostrado como
   uma das mais promissoras.


   1.1 Motivação
   As redes ATM oferecem garantias de qualidade de serviço. Isto possibilita a transmissão
   de informações de aplicações multimídia, de forma que sejam atendidos todos os
   requisitos de qualidade de cada mídia (texto, voz, dados, imagem). A definição desses
   parâmetros é possível devido a existência do conceito de classes de serviço nas redes
   ATM.
           Para atender às classes de serviços, foi definida, no modelo de referência ATM,
   uma camada de adaptação (AAL - ATM Adaptation Layer), cuja função é justamente
   adaptar as características de cada aplicação ao funcionamento de outra camada, chamada
   ATM.
           As redes ATM atendem a um compromisso entre dois objetivos conflitantes.
   Garantir o desempenho para cada classe de serviço enquanto permite que a rede seja
   usada eficientemente, através da utilização de multiplexação estatística. Para tanto, é
   necessário desenvolver uma arquitetura de gerenciamento de banda passante sob a qual a
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                           3


    rede possa ser eficientemente utilizada e, enquanto isso, possa ser obtida uma QoS
    aceitável para todas as classes de serviço [LPF+97].
            Atualmente já existem esquemas de negociação de QoS em redes ATM, baseados
    na utilização das classes de serviços e da AAL. Nesses esquemas, antes de se iniciar a
    transmissão, informa-se à rede a qual classe de serviço pertencerá a aplicação sendo
    transmitida.
            O processo de negociação, no entanto, é estático, e muitas vezes não possibilita
    uma boa utilização da rede. Para tanto, foi idealizado o esquema de negociação dinâmica,
    no qual os parâmetros de QoS podem ser alterados no decorrer da sessão estabelecida.
            A alocação dinâmica de recursos, que possibilita a execução da renegociação
    dinâmica de QoS, foi proposta para superar dificuldades da alocação estática. A alocação
    dinâmica de banda passante, adapta-se à situação real e modifica dinamicamente a banda
    passante alocada. Este tipo de alocação necessita de funções avançadas para monitorar a
    situação da rede, alocar a banda passante e modificar seu valor [Saito97].
            De acordo com [Saito97], a alocação dinâmica de banda passante (controle de
    taxa de células da fonte), para taxas de pico de 150Mbps e 6Mbps, tem 60% e 35%,
    respectivamente, melhor utilização da banda passante que a alocação estática.
            A transmissão de informações de aplicações multimídia, como vídeo, requer
    muita banda passante. Geralmente são utilizados algoritmos de compressão nos arquivos
    de vídeo para que seus dados sejam transmitidos pela rede. Devido a compactação, a
    quantidade de dados que deve ser enviada para cada quadro de vídeo pode variar bastante.
    Essa variação apresenta um problema [Partr94], conforme mostrado a seguir.
            Este problema é exemplificado na figura 1.1 para uma sequência de cinco
    quadros. A linha mais forte mostra a quantidade de banda que um quadro necessita em
    um determinado momento e a linha pontilhada mostra a quantidade de banda que cada
    quadro tem disponível. Os quadros 2 e 4 necessitam de mais banda do que a alocada e os
    quadros 1, 3 e 5 não precisam de toda a banda que está alocada.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                             4




            Banda Passante




                                                         Tempo

                         Figura 1.1 - Variação na Codificação de Banda Passante para Vídeo


           Os codificadores de vídeo solucionam este problema da seguinte maneira: eles
   selecionam um valor de banda na qual as informações devem ser transmitidas (tendo
   como base a banda passante disponível dos circuitos virtuais e a qualidade desejada do
   sinal de vídeo). O vídeo então, é codificado tal que, quando a quantidade de dados de um
   quadro excede o valor de banda selecionada, são transmitidas informações o suficiente,
   para que se tenha uma imagem com qualidade razoável. Depois, quando existir um
   quadro que não necessite de toda a banda passante, são enviados, utilizando-se a banda
   restante destes quadros, dados para retocar a imagem e torná-la o mais próximo possível
   da imagem correta.
           Este problema ocorre quando as informações de um vídeo são transmitidas através
   de um canal que possui uma quantidade de banda alocada fixa. Uma solução para este
   problema é transmitir dados em um canal que permita a alocação dinâmica de banda
   passante. Isto proporciona uma melhor utilização do canal e uma melhor garantia de
   qualidade à aplicação de vídeo.
           O principal objetivo da negociação dinâmica (ou renegociação) é explorar o
   comportamento dinâmico de conexões multimídia para maximizar a utilização dos
   recursos e, como consequência, acomodar um maior número de conexões [GNN97].
           Não existem modelos de negociação dinâmica para redes ATM, padronizados
   pelo ATM Forum. A motivação deste trabalho foi o esquema desenvolvido como parte de
   um trabalho de pesquisa de tese de doutorado, conforme apresentado em [Goula98] e
   [GNN97]. Nestas referências, é proposto um esquema de negociação dinâmica de
Autor: Ana Luiza Bessa de Paula Barros Diniz   Orientador: José Marcos Silva Nogueira
                                                                                           5


    qualidade de serviço para aplicações multimídia. A partir daí então, surgiu a idéia de
    adaptá-lo para redes ATM e fazer uma implementação do esquema.
            Com um modelo de negociação dinâmica desenvolvido para redes ATM, é
    possível utilizar estas redes com uma melhor eficiência, possibilitando que as aplicações
    transmitidas através delas utilizem os recursos de acordo com suas necessidades e sejam
    atendidas o maior número possível de aplicações.
            Neste trabalho é mostrado, além do esquema de negociação dinâmica, uma
    pequena descrição sobre aplicações multimídia, qualidade de serviço e redes ATM. Isto é
    feito porque o esquema de negociação desenvolvido é destinado a aplicações multimídia.
    Estas aplicações, necessitam de uma determinada qualidade de serviço. Para transmitir
    dados destas aplicações, a rede deve oferecer garantias de qualidade de serviço e uma alta
    capacidade de banda passante, características encontradas na tecnologia ATM.
            O objetivo deste trabalho é implementar um esquema de negociação dinâmica em
    redes ATM para aplicações multimídia distribuídas. Para tanto, é definida uma
    arquitetura de negociação de QoS para uma rede ATM, que possui uma camada de
    negociação de QoS. A partir daí, é especificado, projetado e implementado o serviço
    prestado por esta camada às camadas superiores, que no caso, são as aplicações
    multimídia distribuídas. Por enquanto, o único parâmetro de QoS tratado pelo esquema é
    o de banda passante. A negociação de banda passante em uma rede ATM se dá através da
    reserva e alocação de recursos - no caso, a própria banda passante. Para executar o
    esquema em cada nó da rede ATM, é desenvolvido um conjunto de programas que
    funcionam como um CAC (Connection Admission Control).
            Nos capítulos 2, 3 e 4 é feita uma breve revisão sobre aplicações multimídia,
    qualidade de serviço e redes ATM, respectivamente. No capítulo 5 é mostrado o esquema
    de negociação que motivou a execução deste trabalho. No capítulo 6 é mostrada a
    arquitetura de negociação de QoS para uma rede ATM e a especificação do serviço e do
    protocolo da camada de negociação dinâmica de QoS. O capítulo 7 apresenta o projeto e
    aspectos de implementação do trabalho. No capítulo 8 é feita uma análise sobre o projeto
    e são mostrados os resultados obtidos. Neste capítulo, é apresentada também uma análise
    de viabilidade do sistema. No capítulo 9 encontram-se as conclusões e os possíveis
    trabalhos futuros.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                          6




   Capítulo 2

   Aplicações  Multimídia                                 e        Requisitos           de
   Comunicação
   Neste capítulo é feita uma revisão sobre aplicações multimídia e suas características e
   sobre as diversas mídias que estão presentes nestas aplicações. São analisados os recursos
   computacionais requeridos pelas aplicações multimídia e os requisitos de comunicação
   necessários de uma rede para que possa transmitir informações de aplicações deste tipo.


   2.1 Introdução
   As aplicações multimídia atuais integram vários tipos de mídia: texto, gráficos, imagens,
   vídeo e áudio [Fluck95].       Cada tipo de mídia possui características e requisitos de
   comunicação diferentes.
           Algumas das características de uma aplicação multimídia são [SLC95]: natureza
   do tráfego gerado, retardo máximo de transferência, variação estatística do retardo, vazão
   média e taxas aceitáveis de erro em bits ou em pacotes de dados.
           Uma das principais características é a natureza do tráfego gerado. Podem existir
   três tipos de classes de tráfego: tráfego com taxa de bits constante, onde a taxa média é
   igual a taxa de pico; tráfego em rajadas, que possui períodos onde as informações são
   geradas próximas à taxa de pico, intercalados com períodos nos quais a fonte não produz
   tráfego algum; tráfego contínuo com taxa variável, no qual existem variações na taxa de
   bits, durante todo o período de transmissão [SLC95].
           De acordo com o tipo de informação presente em uma mídia, esta pode ser
   definida como discreta ou contínua. Texto, gráfico e imagem são exemplos de mídias
   discretas, enquanto que áudio e vídeo são exemplos de mídias contínuas. O termo
   multimídia geralmente implica que pelo menos um tipo de mídia discreta esteja associado
   com informação de mídias contínuas [Fluck95].
           Este capítulo diz respeito não apenas às aplicações multimídia, propriamente
   ditas. Ele refere-se a estas aplicações, tendo como base os requisitos de comunicação que
   elas necessitam, ao terem suas informações transmitidas através de uma rede. Grande
Autor: Ana Luiza Bessa de Paula Barros Diniz     Orientador: José Marcos Silva Nogueira
                                                                                                7


    parte da literatura, que fala sobre multimídia, não aborda o aspecto da rede de
    transmissão, nem o ambiente distribuído. Devido a isso, este capítulo está baseado,
    basicamente, em três referências. Estas referências abordam o assunto multimídia,
    principalmente em relação ao aspecto dos requisitos de comunicação. Estas referências
    são: [Fluck95], [Lu96] e [SLC95]


    2.2 Características das mídias
    Cada mídia possui características e necessidades de desempenho distintas. Nesta seção
    são mostrados os principais tipos de mídia, suas características e seus requisitos.


            Texto


            O texto tem sido, historicamente, a principal forma de interação entre
    computadores e seres humanos. É também, juntamente com difusões armazenadas e
    filmes, a principal forma de comunicação assíncrona (comunicação adiada no tempo)
    entre humanos, através de livros, jornais, cartas e mais recentemente correio eletrônico.
            A mídia de texto pode ser representada de duas maneiras. Uma como texto não
    formatado, onde o número de caracteres disponíveis é limitado e em geral, o tamanho dos
    caracteres é fixo e estão disponíveis apenas uma forma e um estilo. A outra forma de
    representação é como texto formatado, onde o conjunto de caracteres é mais rico, com
    múltiplas fontes, tamanhos e capacidades de formatação [Fluck95].
            Na maior parte das aplicações, a mídia de texto caracteriza-se por tráfego em
    rajada. Não é tolerante a erros e o retardo máximo de transferência e a variação estatística
    do retardo não são características muito relevantes [SLC95].


            Gráficos


            O formato dos documentos de gráficos possui informações estruturais. Os objetos
    podem ser apagados, redesenhados, movidos ou terem seu tamanho alterado. São
    formados por objetos tais como linhas, curvas ou círculos. Estes objetos podem ser
    removidos, adicionados, movidos, diminuídos ou aumentados. Eles possuem atributos do
    tipo espessura, escala de cinza, cor ou padrões de preenchimento [Fluck95].
            A mídia gráfica é caracterizada pelo tráfego em rajadas com vazões médias
    chegando a algumas dezenas de megabits por segundo. Como em texto, o retardo máximo
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                           8


   e a variação estatística do retardo não são muito importantes. A taxa de erros de bits e de
   pacote depende do tipo de gráfico e também se foram utilizadas ou não técnicas de
   compressão ou compactação. Para gráficos no formato matricial e sem compressão, a taxa
   de erros de bits pode ser bem maior que a taxa de erros de pacotes. Para gráficos no
   formato vetorial, onde forem utilizadas técnicas de compressão, o erro em um único bit é
   intolerável. Um fato importante a ser considerado, em relação a taxa de erros, é saber se o
   gráfico será processado apenas pelo olho humano ou também pelo computador [SLC95].


           Imagens


           São conhecidas também como figuras e não contêm informação estrutural. As
   imagens de computador são representadas por mapas de bit (bitmaps). Um mapa de bit
   simples é uma matriz espacial de duas dimensões feita de elementos individuais
   chamados pixels. Gráficos ou textos podem ser representados ou armazenados como
   imagens, sendo convertidos para formato bitmap [Fluck95].
           Os requisitos de comunicação da mídia imagem são bem semelhantes daqueles
   para mídia gráfica. A mídia imagem também é caracterizada pelo tráfego em rajadas com
   vazões médias chegando a algumas dezenas de megabits por segundo. O retardo máximo
   e a variação estatística do retardo não são muito importantes. A taxa de erros de bits e de
   pacotes depende do tipo de imagem, se foram utilizadas ou não técnicas de compressão
   ou compactação, e se a imagem será processada apenas pelo olho humano ou também
   pelo computador [SLC95].


           Vídeo


           Tanto as imagens quanto os gráficos podem ser mostrados em uma tela de
   computador como uma sucessão de visões que criam uma impressão de movimento.
   Assim, podem ser chamados de imagens em movimento ou também figuras em
   movimento e gráficos em movimento ou também animação de computador [Fluck95].
           A característica de imagens ou gráficos em movimento é que todas as visões não
   são independentes. Elas são correlatas e em geral cada quadro é uma variante do quadro
   anterior. Pode-se entender por quadro como sendo uma visão completa e individual da
   tela do computador em um determinado instante, parte de uma sucessão de visões
   apresentadas. O retardo entre a aparição de dois quadros sucessivos é geralmente
   constante e o número de quadros mostrados por segundo é chamado de taxa de quadro.
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                            9


            Para que se tenha uma real impressão de movimento, a taxa de quadros deve ser
    acima de 16 quadros por segundo (qps). Filmes são mostrados a uma taxa de 24qps.
    Padrões da TV americana e japonesa atuais utilizam 30qps, enquanto o padrão europeu
    utiliza 25qps. Um dos muitos padrões de TV de alta definição (High-Definition
    Television - HDTV), opera a 60qps [Fluck95].
            A mídia de vídeo caracteriza-se por gerar um tráfego contínuo com taxa constante.
    Mesmo quando for executada alguma técnica de compactação ou compressão e o tráfego
    gerado ficar caracterizado como um tráfego com taxas variáveis, o sinal deve ser
    reproduzido no destino em uma taxa constante. O retardo de transferência máximo tem
    grande importância e a variação estatística do retardo deve ser compensada.
            A taxa de erros de bits pode ser maior que a taxa de erros de pacotes. Mesmo a
    taxa de erros de pacotes não é tão crítica, pois como a imagem não é estática, devem ser
    gerados vários quadros por segundo. A tolerância a taxa de erros é dependente da
    utilização de técnicas de compressão ou não, pois quando estas técnicas são utilizadas,
    um erro pode se propagar. Em quadros que contenham uma propagação de erro, o erro em
    um único bit pode ser intolerável enquanto quadros que não possuam propagação de erro
    podem tolerar erros de bits e de pacotes [SLC95].
            Existem cinco classes de qualidade para vídeo, são elas: televisão de alta
    definição (HDTV), televisão digital com qualidade de estúdio, televisão com qualidade
    de difusão, televisão com qualidade VCR (Videocassette Recorder) e qualidade de
    videoconferência de baixa velocidade.


            Áudio


            A mídia de áudio, assim como a mídia de vídeo, caracteriza-se por gerar um
    tráfego contínuo com taxa de bit constante. O tráfego gerado, caso não seja utilizada
    nenhuma técnica de compactação ou compressão, é do tipo CBR (Constant Bit Rate).
    Caso contrário, o tráfego pode ser caracterizado como VBR (Variable Bit Rate) ou até
    mesmo como em rajadas, no caso da voz com detecção de silêncio. Mesmo no caso do
    tráfego em rajadas, o sinal deve ser reproduzido no destino a uma taxa constante.
            A variação estatística do retardo deve ser compensada. A estratégia utilizada pelos
    algoritmos de compensação baseia-se fundamentalmente em assegurar uma reserva de
    pacotes antes de dar início ao processo de reprodução, introduzindo um retardo inicial a
    cada surto de voz [SLC95]. O retardo de transferência máximo é crítico, principalmente
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                           10


   no caso de conversações. Os problemas de retardo tornam-se críticos apenas para
   aplicações que exigem comunicação interativa em tempo real.
           A mídia de áudio tolera uma taxa de erros de bits ou de pacotes relativamente alta,
   pois os sinais de áudio possuem um alto grau de redundância. É importante, no entanto,
   que os pacotes não sejam muito grandes para não se perder muito tempo no
   empacotamento e consequentemente aumentar o retardo de transferência [SLC95].


   2.3 Aplicações Multimídia
   As aplicações multimídia possuem muitas características em comum com outros tipos de
   aplicações, mas também possuem características particulares. Dentre as principais
   características específicas podem ser citadas as seguintes [Fluck95]: podem necessitar de
   transmissão em tempo real de informação de mídia contínua (áudio e vídeo); o volume de
   dados trocados é substancial e muitas vezes considerável, devido a codificação de
   informação de mídia contínua; muitas aplicações são inerentemente distribuídas.
           As aplicações multimídia podem ser executadas em um sistema multimídia
   individual, no modo stand-alone, ou através de uma rede de computadores. Uma
   aplicação multimídia local utiliza apenas os recursos presentes no sistema local para
   oferecer os serviços multimídia e não faz uso da capacidade de armazenamento remoto.
   Exemplos desse tipo de sistema multimídia são: Treinamento individual baseado em
   computador (Individual computer-based training - CBT) e Educação individual baseada
   em computador (Individual computer-based education - CBE) [Fluck95]. Aplicações
   executadas através de uma rede de comunicação são ditas distribuídas. Duas razões
   principais para se ter aplicações multimídia distribuídas são:


        • Suporte a aplicações naturalmente distribuídas. Aplicações que oferecem serviços
           de comunicação à distância, como videoconferência, correio eletrônico multimídia
           e transmissão de pacotes de áudio e vídeo para vários nós de uma rede.


        • Implementação do modelo cliente-servidor. Para alguns sistemas multimídia, pode
           ser mais vantajoso utilizar recursos dos vários sistemas espalhados pela rede.
           Como exemplo destes recursos, pode ser citada a capacidade de armazenamento
           oferecida por um servidor para que os vários sistemas possam acessá-lo
           remotamente.
Autor: Ana Luiza Bessa de Paula Barros Diniz       Orientador: José Marcos Silva Nogueira
                                                                                                  11




              As   aplicações    multimídia    distribuídas   podem     ser    apresentacionais   ou
    conversacionais. As aplicações apresentacionais fornecem acesso remoto a documentos
    multimídia. Estes documentos podem estar armazenados digitalmente em um ou mais
    dispositivos de armazenamento de alta capacidade (computadores servidores) e os
    usuários podem recuperar a informação multimídia em tempo real de servidores
    multimídia através de uma rede de banda larga para os seus dispositivos de apresentação
    [HBD96]. As aplicações conversacionais envolvem tipicamente comunicação multimídia
    em tempo real. Podem ainda ser classificadas em serviços sob demanda ou de difusão
    [VKBG94]. Muitas aplicações possuem aspectos apresentacionais e conversacionais.


    2.3.1 Exemplos de Aplicações Multimídia

    Alguns exemplos de aplicações multimídia são videoconferência, correio eletrônico
    multimídia, vídeo-sob-demanda e filme-sob-demanda. Estas aplicações são mostradas a
    seguir.


              Videoconferência


              A videoconferência tem como principal objetivo proporcionar uma comunicação
    de alta velocidade entre parceiros remotos, através da transmissão de áudio e vídeo, para
    melhorar o trabalho colaborativo [Lu96]. A videoconferência pode se dar entre duas
    partes, como na videofonia, ou entre muitas partes, como na distribuição de vídeo, mas
    nas duas formas implica em comunicação bidirecional. As principais características da
    videoconferência são as seguintes [Fluck95]:


         • Grupos. Envolve pelo menos um grupo de pessoas em uma das localizações. Os
              participantes podem tanto estar em um escritório utilizando sistemas desktop
              quanto em salas de reuniões, mas em ambos os casos existirão muitas pessoas que
              devem aparecer.


         • Documentos. Geralmente é necessário que ocorra troca de documentos entre os
              participantes. Documentos podem estar na forma de papel, visível em um lugar
              tipo quadro-negro ou no formato eletrônico.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                       12


        • Comunicação de grupo. A quantidade de sistemas que podem participar depende
           se a conferência é simétrica ou assimétrica. Em uma conferência simétrica, as
           contribuições são balanceadas entre todos os participantes. Em conferências
           assimétricas, alguns participantes são menos ativos que outros, e pode ser
           suportada uma dúzia de participantes.


        • Compromisso entre resolução e movimento. Exceto no caso de existirem
           documentos, a resolução pode ser de média qualidade.


        • Qualidade de som. Este requisito é muito importante em videoconferência, pois a
           identificação de quem está falando em um dado momento ajuda os participantes a
           identificarem a parte ativa. Uma outra razão desta importância é que o som deve
           ter qualidade suficiente para ser amplificado por alto-falantes.


           Correio eletrônico multimídia


           O correio eletrônico é uma aplicação que permite aos usuários fazer a
   composição, troca, leitura, armazenamento, recuperação e manipulação de mensagens de
   computador. Estas mensagens são representadas em uma forma digital e manipuladas por
   computadores. Uma mensagem multimídia possui uma parte de áudio ou vídeo misturada
   com qualquer outro tipo de informação. O correio multimídia apareceu em 1992 com a
   adoção do padrão correio multimídia da Internet, chamado MIME (Multipurpose Internet
   Mail Extensions).
           Em relação ao armazenamento, cada minuto de áudio, com o mais comum e
   menos eficiente esquema de codificação, requer 500Kbytes. Sequências de vídeo para
   correio multimídia são geralmente de qualidade VCR e, no melhor caso de compressão,
   um     minuto de vídeo requer 10Mbytes [Fluck95]. Portanto, o tamanho do correio
   multimídia deve ser limitado. Sequências de vídeo devem ser extremamente pequenas e
   as sequências de áudio devem ser limitadas a poucas dúzias de segundos.


           Telemedicina


           Aplicação multimídia importante, especialmente em casos de emergência e
   localizações remotas. Em telemedicina, todos os dados de pacientes são registrados e
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                         13


    armazenados eletronicamente. Instituições e equipamentos médicos são conectados
    através de uma rede multimídia. A telemedicina provê as seguintes funções [Lu96]:


         • Consulta instantânea com médicos experientes através do uso de áudio e vídeo de
            alta qualidade.


         • Acesso a registros de pacientes em qualquer lugar e a qualquer momento por
            pessoal médico em caso de emergência.


         • Acesso a informações em todo o mundo tal como disponibilidade e necessidade
            de um tipo especial de sangue ou órgãos.


            Vídeo-sob-demanda


            O termo vídeo-sob-demanda, abreviado como VOD (Video-on-demand), engloba
    uma grande quantidade de aplicações onde os usuários podem requisitar o acesso a
    servidores de vídeo de imagens estáticas ou em movimento. Algumas características deste
    tipo de aplicação são citadas a seguir [Fluck95].


         • Vídeo-sob-demanda não diz respeito apenas a vídeo em movimento, também
            engloba a demanda a imagens estáticas.


         • A definição não especifica onde o servidor está localizado nem quem o opera.
            VOD pode ser um serviço corporativo provido em um site dentro de uma
            organização, bem como pode ser um serviço público.


         • A definição não especifica o nível de interação que o usuário pode se beneficiar,
            uma vez que a sessão esteja estabelecida.


         • VOD não implica em qualquer tipo específico de vídeo em movimento. Apesar do
            principal campo de aplicação ser a distribuição de filmes, aplicações de VOD
            cobrem todo tipo de sequências de vídeo.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                            14


        • A definição diz que o usuário pode requisitar uma imagem ou figura               em
           movimento a qualquer tempo, mas ela não diz que o usuário pode vê-la a qualquer
           tempo.


           Filme-sob-demanda


           Filme-sob-demanda, abreviado como MOD (Movie-on-demand), é um serviço
   público de vídeo-sob-demanda oferecido a usuários residenciais ou clientes de hotéis,
   onde o objeto acessado é um filme armazenado [Fluck95]. O objetivo do MOD é
   substituir dois serviços convencionais com um produto melhorado.


        • O serviço pay-per-view (PPV). A melhoria seria o fato de se oferecer uma maior
           quantidade de filmes que possam ser escolhidos e que o usuário possa requisitar e
           assistir a qualquer momento.


        • O serviço de aluguel de fita de vídeo. A idéia é eliminar a busca e retorno da fita a
           locadora, eliminando a manipulação física da fita.


           Para filme-sob-demanda, uma qualidade equivalente a de videocassete VHS,
   requer uma taxa de transmissão de apenas 1,5Mbps, o que é compatível com a velocidade
   T1. Implementações existentes do padrão de compressão de vídeo MPEG-2 (Motion
   Picture Expert Group) operam a 6Mbps com uma qualidade ligeiramente superior a
   qualidade de TV de difusão. É esperado que se consiga uma taxa na ordem de 4Mbps
   para este tipo de qualidade. Muitos operadores estão planejando canais de 6 ou 7Mbps
   para suas infra-estruturas. Várias técnicas de compressão podem ser usadas para TV
   digital com qualidade de difusão, mas o padrão MPEG-2 tem surgido como uma
   tecnologia geral, multi-vendedor [Fluck95].
           As aplicações multimídia distribuídas constituem o enfoque deste trabalho.
   Dentro deste tipo de aplicação, o sistema desenvolvido no trabalho tem como objetivo
   atender aplicações do tipo vídeo-sob-demanda.


   2.4 Requisitos de Comunicação
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                         15


    Aplicações multimídia são caracterizadas por manipular mídia contínua e suportar uma
    variedade de mídias e seus relacionamentos temporais. Isto impõe novos requisitos aos
    sistemas de comunicação e sistemas-fim [HBD96].
            As informações das aplicações distribuídas devem ser transmitidas através de uma
    rede. Para cada tipo de mídia existem requisitos de comunicação específicos. Para que
    uma sub-rede de comunicação possa transmitir dados de aplicações multimídia em tempo
    real e mídia contínua, ela deve disponibilizar alguns características de desempenho. As
    principais destes características são [Fluck95] [Lu96]:


         • Vazão. Quantidade de bits que a rede é capaz de transmitir em um determinado
            período de tempo. Algumas aplicações necessitam de uma capacidade de
            armazenamento e de banda passante muito grande, como mostra a tabela 2.1.


         • Retardo. Tempo gasto para a emissão do primeiro bit de um bloco de dados pelo
            transmissor e sua recepção pelo receptor. Um valor aceitável de retardo é
            dependente da aplicação. Áudio e vídeo digital são mídias contínuas dependentes
            do tempo, conhecidas como dinâmicas ou isócronas. Para que a apresentação
            destas mídias tenha uma qualidade razoável, as amostras de áudio e vídeo devem
            ser recebidas e apresentadas em intervalos regulares.


         • Variação do retardo. Variação no tempo do retardo de transmissão da rede. É um
            dos principais parâmetros para suportar mídias dependentes do tempo. Para uma
            boa apresentação de mídias contínuas, a variação do retardo deve ser muito
            pequena. Os requisitos de retardo e variação do retardo devem ser garantidos
            durante toda a sessão de comunicação. Grande parte das redes, protocolos de
            transporte, sistemas operacionais e escalonamento de discos atuais não fornecem
            tal garantia. Portanto, os hospedeiros e organização das redes atuais não são
            apropriados para aplicações multimídia.


         • Taxa de erros. Parâmetro que mede a capacidade da rede em termos de alteração,
            perda, duplicação ou entrega fora de ordem, dos dados. Em dados de áudio e
            vídeo pode-se tolerar algum erro ou perda, pois estes podem passar despercebidos
            pelo usuário. Quando são utilizadas técnicas de compressão, a taxa de erros
            permitida é menor, pois um erro em um bit pode causar erro de descompressão de
            muitos bits. Um outro parâmetro de medida de erro é a taxa de perda de pacote. O
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                             16


           requisito para taxa de erros de pacote é mais rigoroso que para taxa de erros de bit,
           pois a perda de pacotes pode afetar a decodificação de uma imagem.


                    Aplicações                         Taxa de Dados (kbits/s)
                    Telefone digital                   64
                    Rádio digital                      1.024
                    Áudio-CD                           1.411,2
                    DAT                                1.536
                    Vídeo qualidade VHS                54.000
                    Vídeo qualidade TV                 216.000
                    HDTV                               864.000
                        Tabela 2.1 - Taxas de Bits de Aplicações de Áudio e Vídeo


           Para suporte a aplicações de recuperação e de distribuição, os principais critérios
   exigidos de uma rede são: capacidade para comunicação de grupo e capacidade para fazer
   cache de documentos [Fluck95].


        • Capacidade de comunicação de grupo. Capacidade da rede para replicar, em certos
           pontos internos, os dados emitidos por uma fonte. Dados replicados devem ser
           passados a frente para os receptores-fim, que são parte do grupo. Esta capacidade
           é desenvolvida para evitar ou minimizar que segmentos das redes sejam
           atravessados por múltiplas cópias dos mesmos dados.


        • Capacidade para fazer cache de documentos. Consiste, para o sistema local
           envolvido, em aguardar solicitações do usuário, atendê-las e manter uma cópia de
           parte específica da informação solicitada. Algoritmos apropriados mantêm apenas
           o sub-conjunto das partes que possuem a maior probabilidade de serem solicitadas
           pelos sistemas locais.


           Em relação às redes de comunicação, existem ainda duas características
   importantes no transporte de dados de aplicações multimídia. Estas características são:
   isocronismo e qualidade de serviço (QoS).
           Para o suporte a aplicações multimídia utilizando transmissão em tempo real, uma
   característica particularmente importante é a de isocronismo. O termo isocronismo refere-
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                             17


    se ao processo onde os dados devem ser entregues dentro de certos limites de tempo. Por
    exemplo, streams multimídia requerem um mecanismo de transporte isócrono para
    assegurar que os dados sejam entregues tão rápido quanto eles são apresentados e
    assegurar que o áudio seja sincronizado com o vídeo.
            Aplicações isócronas, ou sensíveis ao tempo, tais como vídeo, requerem muita
    banda passante e baixo retardo fim-a-fim [Miller94]. Uma conexão de rede fim-a-fim é
    dita isócrona se a taxa de bits da conexão é garantida e se o valor da variação do retardo é
    também garantido e pequeno. Aplicações multimídia distribuídas são isócronas por
    natureza e portanto, possuem limitações de tempo.
            A outra característica de rede importante, é a de Qualidade de Serviço (QoS).
    Dados multimídia requerem diversos requisitos de qualidade dos sistemas multimídia.
    Estes requisitos, dependendo da aplicação, muitas vezes são ditos rigorosos. O conceito
    de QoS é baseado no fato de que, nem todas as aplicações, necessitam do mesmo
    desempenho da rede pela qual estão trafegando. As aplicações podem indicar os seus
    requisitos específicos para a rede, antes de realmente ser iniciada a transmissão dos
    dados. QoS é uma medida de quão bom é um serviço, como apresentado para o usuário. É
    expressa em uma linguagem compreensível pelo usuário e manifesta, através de uma
    quantidade de parâmetros, valores subjetivos e objetivos.
            Portanto, para que informações de aplicações multimídia possam ser transmitidas
    através de uma rede, com uma qualidade aceitável para o usuário, a rede deve atender, de
    maneira satisfatória, e de acordo com cada mídia, os seguintes requisitos: vazão, retardo,
    variação do retardo, taxa de erros, capacidade de comunicação de grupo, capacidade para
    fazer cache de documentos, isocronismo e garantias de QoS.




    2.5 Sistemas Multimídia
    Um sistema multimídia oferece uma função ou um conjunto de funções particulares a
    uma aplicação multimídia. Uma aplicação multimídia é o uso específico, por um usuário
    ou grupo de usuários, de um dado sistema multimídia. Um exemplo de sistema
    multimídia é uma estação de trabalho equipada com dispositivos de áudio e vídeo. Um
    exemplo de função, ou aplicação multimídia, é uma videoconferência [Fluck95].
            Os sistemas multimídia distribuídos podem ser classificados em um número de
    classes. O ITU (International Telecommunications Union) identifica quatro classes
    básicas de serviços ou aplicações distribuídas. Estas quatro classes são [Lu96]:
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                         18




        • Serviços coversacionais. Implicam a interação entre um usuário humano e outro
           usuário humano ou sistema. Esta classe inclui serviços interpessoais, como
           videoconferência e videofonia. Inclui também serviços como televigilância e
           telecompras.


        • Serviços de mensagens. Cobrem a troca de dados multimídia que não são de
           tempo real ou assíncronos, através de caixas de correio eletrônico.


        • Serviços de recuperação. Cobre todos os tipo de acesso a servidores de
           informação multimídia. Tipicamente, o usuário envia um pedido para o servidor e
           a informação solicitada é entregue ao usuário em tempo real. Vídeo-sob-demanda
           é um exemplo deste serviço.


        • Serviços de distribuição. Cobrem serviços onde a informação é distribuída por
           iniciativa de um servidor. Um exemplo deste serviço é uma difusão de programa
           de TV.


           Existem alguns objetivos que um sistema multimídia deve atender. Estes
   objetivos são [Lu96]:


        • O sistema deve ter recursos suficientes para suportar aplicações multimídia. Cada
           subsistema deve ter tipos e quantidade de recursos para suportar múltiplas
           aplicações simultaneamente. Um sistema-fim deve estar apto a processar múltiplas
           aplicações. Redes, servidores e dispositivos de armazenamento devem estar aptos
           a suportar um número de sessões ou fluxos simultaneamente.


        • O sistema deve estar apto a utilizar os recursos disponíveis de maneira eficiente.
           Os recursos de uma sistema são compartilhados por várias aplicações. Estes
           recursos devem ser compartilhados de uma maneira eficiente, tal que um número
           máximo de aplicações possa ser suportado com uma determinada quantidade de
           recursos.
Autor: Ana Luiza Bessa de Paula Barros Diniz   Orientador: José Marcos Silva Nogueira
                                                                                           19


         • O sistema deve estar apto a garantir os requisitos de QoS das aplicações. Os
            recursos devem ser compartilhados eficientemente pelas diversas aplicações, e
            estas aplicações devem conseguir a qualidade de serviço requisitada. Portanto, um
            importante desafio para os sistemas multimídia é usar os recursos de uma maneira
            eficiente e ao mesmo tempo garantir a QoS para cada aplicação.


         • O sistema deve ser escalável. Uma arquitetura de comunicação deve ser escalável
            e extensível para conseguir fornecer aumento nos requisitos dos usuários e atender
            novas demandas. A escalabilidade refere-se a habilidade do sistema em adaptar-se
            a mudanças no número de usuários a serem suportados e a quantidade de
            informação a ser armazenada e processada.


            A partir desta análise, pode-se concluir portanto que, os sistemas de computação e
    comunicação multimídia devem suportar e prover o seguinte: compressão de dados para
    reduzir a demanda por espaço de armazenamento e banda de transmissão; um sistema
    operacional, protocolo de transporte e escalonador de disco direcionados para multimídia,
    que forneçam as garantias de retardo e variação de retardo apropriadas; estações de
    trabalho de alto desempenho e redes de alta velocidade para manipular altas taxas de bits
    sob limitações de tempo; e mecanismos globais de especificação e garantia de QoS
    [Lu96].


    2.6 Resumo do Capítulo
    Neste capítulo foram analisados os diversos tipos de mídia existentes em um sistema
    multimídia. Dentre as mídias apresentadas podemos citar texto, gráficos, imagens, vídeo
    e áudio. Para cada tipo de mídia foram mostradas suas características principais e os
    requisitos de comunicação exigidos por cada uma.
            Foram apresentados também os sistemas multimídia e as aplicações multimídia,
    descrevendo o que são e mostrando suas principais características. As aplicações
    multimídia podem ser executadas de forma individual ou através de uma rede de
    computadores, as quais são chamadas aplicações distribuídas. Como exemplos de
    aplicações multimídia foram mostrados videoconferência, correio eletrônico multimídia,
    vídeo-sob-demanda e filme-sob-demanda. O enfoque deste trabalho são as aplicações
    multimídia distribuídas, dentre as quais a aplicação tomada como base foi a de vídeo-sob-
    demanda.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                         20


           Depois foram discutidos os requisitos de comunicação, necessários a uma rede,
   para transmitir informações de aplicações multimídia. Os principais destes requisitos são
   vazão, retardo, variação do retardo e taxa de erros. Para suporte a aplicações de
   recuperação e de distribuição, é necessário que uma rede possua capacidade de
   comunicação de grupo e de fazer cache de documentos. Outras duas funções de rede
   importantes são isocronismo, principalmente para transmissão de tempo real, e garantia
   de qualidade de serviço.




   Capítulo 3

   Qualidade de Serviço
Autor: Ana Luiza Bessa de Paula Barros Diniz   Orientador: José Marcos Silva Nogueira
                                                                                           21


    Neste capítulo são mostrados alguns conceitos que estão envolvidos na definição de
    qualidade de serviço (QoS). São descritas as funções de gerenciamento de QoS e, dentre
    estas funções, são destacadas as de negociação e renegociação de QoS.


    3.1 Introdução
    O conceito de qualidade de serviço, no que tange as redes de comunicação, deriva do fato
    de que, nem todas as aplicações transmitidas em uma rede, possuem os mesmos
    requisitos de desempenho. Assim, cada aplicação, antes de iniciar uma transmissão, pode
    indicar quais os parâmetros de qualidade que atendem às suas necessidades.
            A qualidade de serviço (QoS) pode ser descrita sob vários pontos de vista. Para
    pesquisadores trabalhando com codificação de vídeo, QoS é uma medida subjetiva da
    qualidade do canal. Outros podem ver QoS como uma necessidade das redes fornecerem
    limites de desempenho e ainda outros podem ver QoS em termos de disponibilidade da
    rede na presença de falha [Jung96].
            Para o usuário da aplicação, QoS é vista como um conjunto de características,
    como por exemplo, a qualidade da imagem em termos de nitidez ou a qualidade do áudio.
    Para a rede, essas características são traduzidas para um conjunto de parâmetros, como
    banda passante necessária para transmissão das informações, retardo máximo permitido e
    taxa de erros aceitável pelo tipo de informação sendo transmitida.
            De acordo com [VKBG94], qualidade de serviço, para um sistema distribuído,
    pode ser definida como: “O conjunto das características qualitativas e quantitativas de um
    sistema multimídia distribuído, necessárias para alcançar a funcionalidade necessária de
    uma aplicação”.
            Uma definição que considera o ponto de vista tanto da aplicação quanto do
    sistema é dada em [Lu96], na qual “QoS é uma especificação qualitativa e quantitativa de
    uma necessidade da aplicação, que um sistema multimídia deve satisfazer para obter a
    qualidade desejada para a aplicação”. Tendo como base esta definição, existem dois
    aspectos de QoS: as aplicações especificam os requisitos de QoS e os sistemas fornecem
    garantias de QoS.
            A noção de QoS foi utilizada inicialmente em comunicações de dados para
    caracterizar o desempenho de transmissão de dados em relação a confiabilidade, retardo e
    vazão [Lu96]. Os parâmetros de QoS dos sistemas atuais, como OSI (Open Systems
    Interconnection) e ITU (International Telecommunication Union), permitem a
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                        22


   especificação de alguns requisitos de usuário. Estes requisitos, no entanto, quase nunca
   são suportados pelas redes.
           No modelo de referência OSI os parâmetros de QoS são classificados em dois
   grupos principais: o grupo de parâmetros orientados a desempenho e o grupo de
   parâmetros não orientados a desempenho [CCG+93]. Este modelo tem um número de
   parâmetros que descrevem a velocidade e confiabilidade de uma transmissão. Alguns
   destes parâmetros são vazão, retardo de transmissão, taxa de erros e probabilidade de
   falha no estabelecimento de conexão. Estes parâmetros não atendem a todas os requisitos
   de qualidade de uma comunicação multimídia e são utilizados apenas no nível de
   transporte. Para comunicações multimídia, a QoS deve ser especificada e garantida fim-a-
   fim, em todos os níveis. Portanto, as aplicações multimídia necessitam de um novo
   modelo de QoS [Lu96].
           O ITU-T define QoS como “O efeito coletivo do desempenho de um serviço, o
   qual determina o grau de satisfação de um usuário do serviço” [ISO92]. O próprio ITU
   reconheceu a necessidade de permitir a configuração de QoS em redes ATM
   (Asynchronous Transfer Mode) e, para tanto, definiu um conjunto de parâmetros. O
   conceito de QoS em redes ATM é aplicado a três níveis de controle: nível de controle de
   camada, nível de conexão e nível de controle de célula.
           Para que uma arquitetura forneça garantias de QoS é necessário que ela possua os
   seguintes elementos [Lu96]:


        • Um mecanismo de especificação de QoS para que as aplicações definam seus
           requisitos;


        • Controle de admissão para determinar se uma nova aplicação deve ser admitida
           sem afetar a QoS de outras aplicações já existentes;


        • Um processo de negociação de QoS tal que possa ser atendido o maior número
           possível de aplicações;


        • Alocação e escalonamento de recursos para alcançar o requisito de QoS das
           aplicações aceitas;


        • Policiamento de tráfego para garantir que as aplicações gerem dados de acordo
           com a quantidade especificada na negociação.
Autor: Ana Luiza Bessa de Paula Barros Diniz   Orientador: José Marcos Silva Nogueira
                                                                                           23




            Os elementos citados acima são fundamentais para que seja oferecida uma
    garantia de QoS. Juntamente com estes elementos, podem ser citados outros três
    elementos necessários para alcançar requisitos de qualidade de aplicações multimídia.
    Estes outros elementos são: um mecanismo de renegociação de QoS, para que as
    aplicações possam mudar os valores acordados na especificação inicial; a QoS fornecida
    às conexões existentes deve ser monitorada para que seja tomada alguma atitude no caso
    de violação da QoS garantida; e finalmente, devem ser utilizadas técnicas de
    escalabilidade e de degradação graciosa da QoS para prover serviços satisfatórios às
    aplicações multimídia.
            A qualidade de serviço conseguida por um usuário depende de todos os
    componentes envolvidos em um sistema: o sistema operacional, o sistema de transporte
    (por exemplo, uma ligação lenta diminui a vazão) ou a aplicação (por exemplo, o banco
    de dados possui apenas imagens de baixa qualidade) [VKBG94].
            Para a transmissão de informações de aplicações multimídia, em particular mídia
    contínua, é essencial que a qualidade de serviço seja garantida em todo o sistema,
    incluindo a plataforma de sistema distribuído, o sistema operacional, os dispositivos dos
    sistemas-fim, o sub-sistema de comunicação, o protocolo de transporte e a rede. É
    necessário também que o protocolo tenha suporte a negociação de QoS fim-a-fim,
    renegociação, indicação de degradações de QoS e coordenação sobre as múltiplas
    conexões relacionadas [CCG+93] [ACH98].
            As garantias de QoS fim-a-fim só podem ser alcançadas quando todos os
    subsistemas do sistema de comunicação fornecerem garantias de QoS em seus níveis
    locais. Estes subsistemas incluem redes, protocolos de transporte, arquitetura do sistema-
    fim e um servidor multimídia [Lu96].
            As diversas aplicações multimídia possuem diferentes características e cada
    aplicação necessita de qualidades de serviço diferentes. Como exemplo, podem ser
    citadas algumas aplicações em conjunto com suas necessidades [DG94]:


         • Vídeo Compactado. Aplicação com taxa de bits variável, que requer um baixo
            retardo para um serviço interativo. Existe um requisito para sincronização de
            fluxos de áudio e vídeo relacionados ou objetos de texto. A tolerância de erro e
            perda depende da aplicação.
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                           24


        • Áudio não compactado de alta fidelidade. Aplicação com taxa de bits constante,
           sensível a perda de dados.


        • Transmissão de voz digital. Serviço interativo que requer baixo retardo. Se não
           houver compressão da voz digital, a transmissão terá uma taxa de bits constante
           com a presença de pausas (o serviço pára em alguns instantes e depois continua).
           Erro ou perda de dados são aceitáveis, mas podem causar problemas.


   3.2 Funções de Gerenciamento de QoS
           Existem três níveis de garantia de qualidade de serviço. Estes níveis são: garantia
   determinística, estatística e best-effort [HBD96] [Lu96]. Algumas características destes
   tipos de garantia são discutidas a seguir.


        • Garantia determinística. Também conhecida como garantia forte. Neste tipo de
           garantia, a qualidade especificada pelo usuário deve ser atendida sempre. É
           fornecido um limite para cada parâmetro e este limite deve ser atendido em 100%
           dos casos. Os recursos normalmente são reservados para a aplicação com base no
           pior caso e mesmo que os recursos não estejam sendo usados em um determinado
           momento, eles não podem ser alocados para outras conexões. Por esta razão, este
           tipo de garantia é mais cara em termos de recursos dos sistemas.


        • Garantia estatística. Também conhecida como garantia fraca. Neste tipo de
           garantia, a qualidade especificada pelo usuário deve ser atendida apenas para uma
           certa percentagem especificada. É dado um valor para cada parâmetro e é então
           garantido que apenas uma parte das conexões será atendida tendo como limite o
           valor determinado. Este tipo de garantia utiliza os recursos dos sistemas de uma
           maneira mais eficiente, pois a utilização dos recursos é baseada em multiplexação
           estatística, onde os recursos não utilizados por uma aplicação podem ser utilizados
           por outras aplicações. É difícil de implementar devido à natureza dinâmica do
           tráfego e da utilização de recursos das aplicações.


        • Best Effort. É baseada na não garantia ou em garantia parcial. Não provê nenhuma
           garantia e a aplicação é executada com a quantidade de recursos que estiver
Autor: Ana Luiza Bessa de Paula Barros Diniz    Orientador: José Marcos Silva Nogueira
                                                                                         25


            disponível. A maioria dos sistemas de computação atuais operam desta maneira,
            sobretudo os que utilizam a Internet.


            São utilizados diferentes tipos de garantia para diferentes tipos de tráfego. Em
    alguns casos, uma conexão pode usar diferentes níveis de garantia para diferentes
    parâmetros de QoS [Lu96].
            Quando uma conexão é solicitada, o provedor do serviço deve estabelecer uma
    sessão com a QoS desejada, controlar essa sessão durante sua fase ativa e terminar a
    sessão quando for solicitado por um dos usuários ou devido a problemas no provedor do
    serviço, como por exemplo, congestionamento da rede. Para que os requisitos de QoS das
    aplicações multimídia sejam atendidos, as fases de estabelecimento, manutenção e
    finalização de uma sessão devem possuir funções de gerenciamento [HBK+95].
            As funções de gerenciamento de QoS normalmente são distribuídas através dos
    diversos componentes do sistema e envolvem a reserva de recursos nesses componentes
    [HBK+95]. As funções de gerenciamento mostradas na tabela 3.1 são descritas em
    seguida.




    Fases                                           Funções de gerenciamento de QoS
                                                    Especificação da QoS
                                                    Mapeamento da QoS
        Estabelecimento                             Negociação da QoS
                                                    Reserva de Recurso
                                                    Contabilização da QoS
                                                    Monitoração da QoS
                                                    Renegociação da QoS
                                                    Alocação Dinâmica de Recurso
        Manutenção                                  Policiamento da Fonte
                                                    Adaptação da QoS
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                          26


                                                      Contabilização da QoS
                                                      Mapeamento da QoS
       Finalização                                    Finalização da QoS
    Tabela 3.1 - Fases de uma aplicação e suas respectivas funções de gerenciamento de
                  QoS


   1. Especificação e mapeamento de QoS. Funções de mapeamento são necessárias para
       fazer a tradução entre os parâmetros de QoS externos, vistos pelo usuário, e os
       parâmetros internos, vistos pelo sistema (vazão, retardo, variação do retardo).


   2. Negociação de QoS e reserva de recurso. Permite encontrar uma configuração de
       sistema que atenda aos requisitos de QoS do usuário. No caso da negociação ser aceita,
       e os componentes suportarem um nível de QoS específico, cada componente deve
       dedicar recursos para suportar a QoS desejada.


   3. Monitoração de QoS e policiamento da fonte. Permite fazer uma análise constante da
       QoS fornecida por todo o sistema e/ou por cada componente do sistema. Essa
       atividade envolve as funções de detectar e notificar qualquer violação da QoS e
       armazenar informação.


   4. Adaptação da QoS. Oferece alternativas de configuração para os casos em que os
       parâmetros de usuário não são aceitos no processo de negociação. No caso de haver
       mudanças no ambiente, o processo de adaptação deve fornecer uma degradação suave
       ao serviço. Em muitas situações pode ser preferível degradar um pouco a qualidade do
       serviço, violando os parâmetros de QoS negociados, a finalizá-lo.


   5. Renegociação da QoS. O processo de renegociação pode ser iniciado pelo usuário ou
       pelo sistema de comunicação. A renegociação iniciada pelo usuário, permite que este
       solicite uma melhor qualidade para o seu serviço, ou a degradação do mesmo com o
       objetivo de baixar o custo. Por outro lado, a renegociação iniciada pelo sistema de
       comunicação, ocorre geralmente devido a falta de recursos (como, por exemplo,
       congestionamento na rede) e tem o objetivo de reduzir a qualidade oferecida, para que
       os serviços não sejam interrompidos. Esse processo será iniciado quando o processo de
       adaptação automática não tiver sucesso.
Autor: Ana Luiza Bessa de Paula Barros Diniz     Orientador: José Marcos Silva Nogueira
                                                                                                  27


    6. Contabilização da QoS. A contabilização determina o custo efetivo de um serviço
       requisitado por um usuário. A contabilização de QoS é uma atividade complexa,
       devido a grande variedade de QoS requisitada pelas aplicações multimídia
       distribuídas. A contabilização de QoS deve ser baseada pelo menos no valor de QoS
       requisitado pelo usuário, senão todos os usuários exigirão a melhor QoS para todas as
       aplicações.


    7. Finalização da QoS. Quando uma aplicação finaliza, todos os componentes que lhe
       fornecem QoS, devem liberar seus recursos reservados e, para tanto, estes
       componentes devem receber notificações quando as aplicações são finalizadas.


            Dentre as funções de gerenciamento de qualidade de serviço descritas acima, as de
    maior importância para este trabalho são as funções de negociação e renegociação.


    3.3 Negociação de QoS
    Em um sistema de computação, a qualidade de serviço pode ser negociada entre os
    diversos participantes de uma comunicação. Em um serviço orientado a conexão com
    ligação ponto-a-ponto, os participantes da negociação são o usuário que inicia a conexão,
    o usuário destino daquela conexão e o serviço provedor da comunicação. Todas as
    negociações são baseadas nas primitivas request, indication, response e confirm [DG94].
            Quando um serviço multimídia é oferecido em um sistema distribuído, a
    negociação com o usuário é feita através da execução de um protocolo de negociação
    envolvendo os diferentes componentes do sistema. De acordo com o número de usuários
    participantes, existem três tipos de negociação: unilateral, bilateral e triangular [DG94].
            Na negociação triangular (figura 3.1) o usuário solicitante do serviço sugere um
    valor para o parâmetro de QoS na primitiva request (valor sugerido). O valor sugerido
    pode ser diminuído pelo provedor do serviço antes de ser passado ao usuário destino na
    primitiva indication. O usuário destino pode também diminuir o valor do parâmetro e
    retorná-lo na primitiva response. O provedor do serviço passa então esse valor, sem
    alterá-lo, para o usuário de origem na primitiva confirm. Esse valor é considerado o valor
    do parâmetro de QoS selecionado [DG94].
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                               28



                                  Request       Indication      Response        Confirm

        Valor do parâmetro
              de QoS                  QoS_req
                                                      QoS_ind
                                                                     QoS_resp       QoS_conf


                             Usuário Chamador                              Usuário Chamado
                                        Figura 3.1 - Negociação Triangular


                   A negociação bilateral é executada apenas entre os dois usuários do serviço e o
   provedor do serviço não pode modificar os valores dos parâmetros propostos.
                   Na negociação unilateral nem o provedor do serviço nem o usuário destino podem
   modificar o valor do parâmetro de QoS requisitado pelo usuário solicitante.


   3.3.1 Passos da negociação

   Em um processo de negociação de qualidade de serviço podem ser destacados três passos
   principais [HBK+95]:


   1. Definição dos requisitos do usuário. O usuário é o principal agente no processo de
       negociação da qualidade de serviço, que acontece no estabelecimento de uma conexão
       ou no processo de renegociação. Os requisitos de QoS são primeiramente definidos em
       parâmetros a nível de usuário, os quais devem posteriormente ser traduzidos para
       parâmetros internos correspondentes.


   2. Seleção de uma configuração funcional. Nesse passo deve ser feita a escolha de uma
       configuração funcional apropriada, dentre as possíveis configurações que podem ser
       consideradas, com base no serviço requisitado e nos parâmetros QoS especificados.


   3. Seleção de uma configuração física. As principais fases desse processo de seleção são:
       alocação funcional para componentes do sistema físico, refinamento da configuração
       funcional, otimização das alocações de recursos e comprometimento de recursos.
Autor: Ana Luiza Bessa de Paula Barros Diniz     Orientador: José Marcos Silva Nogueira
                                                                                           29



    3.3.2 Componentes do sistema envolvidos na negociação de
          QoS

    Para que um sistema de computação ofereça o serviço de negociação de QoS, é
    necessário que vários componentes do sistema estejam envolvidos no processo. Alguns
    destes componentes são a rede de alta velocidade, o protocolo de transporte, o dispositivo
    de apresentação e o servidor multimídia. Estes componentes são descritos a seguir.


    1. Rede de alta velocidade. Para suportar a transferência de aplicações multimídia, as
       redes de comunicação devem ser capazes de transferir vários tipos de mídias com
       diferentes QoS. Essa rede deve ser capaz de suportar taxas de transferência constantes
       e variáveis, transportar informações com diferentes taxas de transmissão (variando de
       dezenas de bits por segundo a milhões de bits por segundo), suportar serviços de
       comunicação de grupo e de difusão, transmitir informações de mídias diferentes da
       mesma maneira (sem fazer distinção em relação a natureza da informação) e suportar
       mecanismos de gerenciamento de banda passante.
                Alguns parâmetros de QoS, básicos para a transmissão de aplicações
       multimídia, devem ser oferecidos na interface de rede. Esses parâmetros são:


         − Retardo. Retardo introduzido pelo componente de rede para transportar uma
            unidade de dados da informação a ser transmitida. É contabilizado a partir da
            interface fonte de transmissão até a interface destino.
         − Confiabilidade. Indica se o serviço é confiável ou não. Em caso de um serviço não
            confiável, deve ser indicado um valor para a taxa de perda.
         − Variação do retardo. Diferença entre o retardo mínimo e o retardo máximo.
         − Vazão. Quantidade de unidades de dados transferidas em um determinado período
            de tempo.
         − Tipo de garantia. Permite especificar se parâmetros como vazão, retardo e
            variação do retardo são suportados com alguma garantia ou pelo melhor esforço.
         − Custo. Custo que a rede cobra de seus clientes. Pode ser expresso em termos de
            tempo de utilização ou unidades de dados transferidas, ou ainda uma combinação
            dos dois.


    2. Protocolo de transporte. A execução dos protocolos de comunicação podem introduzir
       retardo e variação do retardo na transmissão. Para suportar a QoS requerida por uma
Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98
                                                                                          30


       aplicação, é necessária uma garantia da velocidade de execução do protocolo de
       transporte. Portanto, os parâmetros de vazão, retardo e variação do retardo devem ser
       limitados no nível de transporte. Os parâmetros de QoS para a interface do protocolo
       de transporte são os mesmos para a interface de rede.


   3. Dispositivo de apresentação. A atividade de passar os dados de uma aplicação
       multimídia para o dispositivo de apresentação pode introduzir diferentes valores de
       retardo e variação do retardo. Dessa maneira, o dispositivo utilizado deve fornecer
       garantias para suportar o retardo e a variação do retardo solicitados.


   4. Servidor multimídia. Fornece armazenamento confiável e coerente de documentos
       multimídia, bem como acesso concorrente a esses documentos e seus componentes. O
       servidor de banco de dados está presente no processo de negociação de QoS para
       fornecer informação sobre sua condição de satisfazer o nível de QoS requisitado.




   3.4 Renegociação
   As comunicações multimídia normalmente não possuem um comportamento estático e,
   durante uma sessão ativa, necessitam alterar os parâmetros de QoS que foram negociados
   no início da transmissão, no processo de admissão da conexão. A mudança nos
   parâmetros de QoS pode se dar por várias razões. Algumas destas razões são [Lu96]: o
   usuário inicialmente requisitou uma sessão com uma alta qualidade e durante esta sessão
   ele deseja diminuir a qualidade devido ao custo; o usuário requisitou inicialmente uma
   baixa qualidade para um canal de vídeo e, durante a transmissão, decide aumentar a
   qualidade; o usuário solicitou no início da transmissão uma sessão com um canal de
   vídeo e um canal de áudio e durante o processo de comunicação é necessário um canal
   extra para acessar um banco de dados multimídia.
           Portanto, é necessário prover mecanismos de renegociação de QoS para atender a
   mudanças nos parâmetros de qualidade acordados no início da transmissão. Algumas
   vezes pode não ser possível aumentar a qualidade atual, pois em um determinado
   momento o sistema pode não possuir recursos disponíveis.
           A função de renegociação permite alterar os parâmetros de QoS estabelecidos na
   fase de negociação. Essa alteração possibilita que aplicações que não possuam uma QoS
   constante durante seu tempo de execução possam alterar seus requisitos, liberando
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw
Banda passante no pw

Contenu connexe

Similaire à Banda passante no pw

Fabio virtualizacao (1)
Fabio   virtualizacao (1)Fabio   virtualizacao (1)
Fabio virtualizacao (1)
gsabatke
 
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
Bruno Arueira
 
Redes Produtivas Digitais Inteligentes: conceitos estruturantes
Redes Produtivas Digitais Inteligentes: conceitos estruturantesRedes Produtivas Digitais Inteligentes: conceitos estruturantes
Redes Produtivas Digitais Inteligentes: conceitos estruturantes
Carlos Nepomuceno (Nepô)
 

Similaire à Banda passante no pw (20)

Arquiteturas de Distribuição de Vídeos Na Internet
Arquiteturas de Distribuição de Vídeos Na InternetArquiteturas de Distribuição de Vídeos Na Internet
Arquiteturas de Distribuição de Vídeos Na Internet
 
Fabio virtualizacao (1)
Fabio   virtualizacao (1)Fabio   virtualizacao (1)
Fabio virtualizacao (1)
 
Boas práticas e desafios para publicação de dados na Web
Boas práticas e desafios para publicação de dados na WebBoas práticas e desafios para publicação de dados na Web
Boas práticas e desafios para publicação de dados na Web
 
Boas práticas para publicação de dados na Web
Boas práticas para publicação de dados na WebBoas práticas para publicação de dados na Web
Boas práticas para publicação de dados na Web
 
Search the Best Measure for QoE, by Failure Caused by IP Networks
Search the Best Measure for QoE, by Failure Caused by IP NetworksSearch the Best Measure for QoE, by Failure Caused by IP Networks
Search the Best Measure for QoE, by Failure Caused by IP Networks
 
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
Camada de Serviços: Uma abordagem alternativa de acesso a objetos de domínio ...
 
TCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para InternetTCC Tecnologia em Sistemas para Internet
TCC Tecnologia em Sistemas para Internet
 
Estudo da Qualidade de Voz em Redes IP
Estudo da Qualidade de Voz em Redes IP Estudo da Qualidade de Voz em Redes IP
Estudo da Qualidade de Voz em Redes IP
 
Monografia Utilizando Software como Serviço na Contabilidade
Monografia Utilizando Software como Serviço na ContabilidadeMonografia Utilizando Software como Serviço na Contabilidade
Monografia Utilizando Software como Serviço na Contabilidade
 
1144
11441144
1144
 
Redes4
Redes4Redes4
Redes4
 
Controle de seguranca_da_informacao_nas_aplicacoes
Controle de seguranca_da_informacao_nas_aplicacoesControle de seguranca_da_informacao_nas_aplicacoes
Controle de seguranca_da_informacao_nas_aplicacoes
 
TCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdfTCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdf
 
Redes Produtivas Digitais Inteligentes: conceitos estruturantes
Redes Produtivas Digitais Inteligentes: conceitos estruturantesRedes Produtivas Digitais Inteligentes: conceitos estruturantes
Redes Produtivas Digitais Inteligentes: conceitos estruturantes
 
Comparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
Comparação de Tecnologias para Web - JBoss Seam e Ruby on RailsComparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
Comparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
 
dq
dqdq
dq
 
Projeto de Conclusão de Curso - Anderson Nascimento / Mariana Benedett
Projeto de Conclusão de Curso - Anderson Nascimento / Mariana BenedettProjeto de Conclusão de Curso - Anderson Nascimento / Mariana Benedett
Projeto de Conclusão de Curso - Anderson Nascimento / Mariana Benedett
 
Comparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
Comparação de Tecnologias para Web - JBoss Seam e Ruby on RailsComparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
Comparação de Tecnologias para Web - JBoss Seam e Ruby on Rails
 
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
 
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
[BPM Day Três Poderes 2014 – Brasília] RNP – Atendimento Integrado de Serviços
 

Banda passante no pw

  • 1. Ana Luiza Bessa de Paula Barros Diniz Um Serviço de Alocação Dinâmica de Banda Passante em Redes ATM para Suporte a Aplicações Multimídia Dissertação apresentada ao Departamento de Ciência da Computação do Instituto de Ciências Exatas da Universidade Federal de Minas Gerais, como requisito parcial para obtenção do grau de mestre em Ciência da Computação Belo Horizonte 26 de Março de 1998
  • 2. i Ao Marcio, meu marido, Barros e Laura, meus pais, Barros Neto e Ana Carolina, meus irmãos.
  • 3. ii Agradecimentos Agradeço a Deus, em Quem sempre tive fé, e onde sempre busquei força e perseverança. Agradeço, principalmente, por Sua presença constante. Agradeço esta vitória aos meus pais, que sempre foram exemplo de coragem e dedicação. Nunca teria conseguido chegar aqui, se não fosse o apoio, carinho e amor a mim dispensados. Com certeza, esta alegria que vivencio agora é deles também. Agradeço ao Marcio, meu marido e amigo, pelos momentos em que me compreendeu e incentivou. Sua presença, sua força, seu apoio e seu amor, foram fundamentais para que eu conseguisse alcançar este objetivo. Sua participação, nos momentos mais difíceis, e sua alegria, nos momentos mais felizes, foram muito importantes. Agradeço ao meu irmão, Barros Neto, e a minha irmã, Carol, pelo pensamento positivo e torcida, em todos os momentos. Agradeço também a Andrea, pela força. Agradeço ao professor, amigo e orientador, José Marcos, pelo apoio, orientação, incentivo e conhecimentos transmitidos. Agradeço ao professor Mauro Oliveira pelo apoio, motivação e incentivo, mesmo antes do início deste trabalho e do curso de mestrado. Sua ajuda foi de extrema importância. Agradeço ao Carlos, pela paciência e disponibilidade para explicar e tirar dúvidas. Agradeço ao professores e funcionários do DCC/UFMG. Agradeço ao Flávio, por sua grande ajuda e pelas ótimas discussões a cerca do trabalho, que foram muito importantes. Agradeço ao Bráulio, pela amizade e ajuda fundamental na discussão de problemas estatísticos. Agradeço aos amigos do laboratório, Patrícia, Patty, Fernando e Daniel, pelos ótimos momentos que vivemos, em um ambiente alegre e descontraído. Agradeço pelo companheirismo sempre presente entre nós. Agradeço aos amigos do mestrado, pelos dias de estudo e desespero que passamos juntos e também pela nossa união. Sem esse apoio tudo teria sido muito mais difícil. Agradeço aos amigos da Quinta Feliz, por tantos bons momentos. Agradeço a Marisa, pelo apoio, incentivo e amizade. Agradeço a CAPES, agência financiadora deste trabalho.
  • 4. iii Resumo Com o surgimento das aplicações multimídia, apareceram novos conceitos de critérios de qualidade e requisitos de comunicação. Estas aplicações possuem mais de um tipo de mídia integradas, como voz, dados, imagem e vídeo. Cada tipo de mídia possui características e requisitos diferentes. Para que informações de uma aplicação multimídia distribuída possam ser transmitidas através de uma rede, esta última deve prover garantias que atendam aos requisitos de todas as mídias. Uma outra característica das aplicações multimídia é que, algumas destas aplicações, como vídeo, por exemplo, possuem muitas informações a serem transmitidas na rede e requerem uma grande capacidade de banda passante. Para que uma rede suporte aplicações multimídia, ela deve oferecer garantias de Qualidade de Serviço (QoS) e alta velocidade. A tecnologia de rede ATM (Asynchronous Transfer Mode) mostra-se uma forte candidata para dar suporte a este tipo de aplicação. Esta tecnologia fornece garantias de qualidade de serviço, através da implementação de classes de serviço e de um algoritmo de controle de admissão de conexão (CAC). Com ATM, também é possível conseguir velocidades de acesso da ordem de megabits por segundo. Para transmitir informações através de uma rede, com garantias de qualidade de serviço, é necessário que, na fase de estabelecimento da conexão, a aplicação faça uma negociação, com a rede, da qualidade de serviço desejada. Esta negociação pode ser estática ou dinâmica. Na negociação estática, os valores dos parâmetros de qualidade são definidos no início da transmissão e não podem ser alterados. Na negociação dinâmica, estes parâmetros podem ser alterados durante a fase ativa da conexão. Este trabalho apresenta um serviço de negociação dinâmica de qualidade de serviço para redes ATM. O serviço foi desenvolvido para dar suporte a transmissão de dados de aplicações multimídia. O objetivo é prover um nível de qualidade de serviço ao usuário, ao mesmo tempo que é atingido um bom desempenho da rede. Neste trabalho estão envolvidos os conceitos básicos de aplicações multimídia, qualidade de serviço e redes ATM. Estes conceitos são discutidos inicialmente. Depois é definido o serviço da camada de negociação de QoS e é mostrado também o protocolo de negociação. A estrutura do serviço de negociação dinâmica e alguns aspectos de implementação também são abordados. Por fim, são apresentados a execução dos testes e os resultados obtidos.
  • 5. iv Abstract With the emergence of multimedia applications, new concepts of quality standards and communications requirements appeared. These applications have more than one type of media integrated, like voice, data, image and video. Each type of media has different features and requirements. In order to transmit information of a distributed multimedia application through a network, the last one must provide warranties to support the requirements of all medias. Another feature of multimedia applications is that, some of media, like video for example, has too much information to be transmitted through a network and require a high bandwidth capacity. To support multimedia applications, a network must offer quality of service (QoS) warranties and high speed. ATM (Asynchronous Transfer Mode) network technology is one of the strongest candidates to provide support for this kind of application. This technology provides quality of service guarantees through the implementation of service classes and of a Connection Admission Control (CAC) algorithm. It’s also possible to achieve high-speed access (megabits per second) using ATM. In order to transmit information in the network with quality of service guarantees, it’s necessary that, in the connection establishment phase, the application negotiate the quality of service desired with the network. This negotiation can be either static or dynamic. In the static negotiation, the values of the parameters of quality are defined in the beginning of the transmission and can not be modified. In the dynamic negotiation, these parameters can be modified during the active phase of the connection. This work presents a dynamic negotiation service of Quality of Service (QoS), based on ATM networks. The service was developed to support data transmission of multimedia applications. The goal is to guarantee a quality of service level to the user and at the same time a better network performance. This work envolves the basic concepts of multimedia applications, quality of service and ATM networks, which are discussed first. After that, the QoS negotiation layer service is defined and the negotiation protocol is also showed. The dynamic negotiation service structure and some implementation aspects are discussed. Finally, the performance of the tests are shown and the results obtained are presented.
  • 6. v Sumário CAPÍTULO 1 INTRODUÇÃO .............................................................................................................................................1 1.1 MOTIVAÇÃO ..........................................................................................................................................2 CAPÍTULO 2 APLICAÇÕES MULTIMÍDIA E REQUISITOS DE COMUNICAÇÃO................................................6 2.1 INTRODUÇÃO.........................................................................................................................................6 2.2 CARACTERÍSTICAS DAS MÍDIAS..............................................................................................................7 2.3 APLICAÇÕES MULTIMÍDIA ...................................................................................................................10 2.3.1 Exemplos de Aplicações Multimídia ...........................................................................................11 2.4 REQUISITOS DE COMUNICAÇÃO ...........................................................................................................14 2.5 SISTEMAS MULTIMÍDIA........................................................................................................................17 2.6 RESUMO DO CAPÍTULO ........................................................................................................................19 CAPÍTULO 3 QUALIDADE DE SERVIÇO .....................................................................................................................20 3.1 INTRODUÇÃO.......................................................................................................................................21 3.2 FUNÇÕES DE GERENCIAMENTO DE QOS ..............................................................................................24 3.3 NEGOCIAÇÃO DE QOS .........................................................................................................................27 3.3.1 Passos da negociação .................................................................................................................28 3.3.2 Componentes do sistema envolvidos na negociação de QoS ......................................................29 3.4 RENEGOCIAÇÃO...................................................................................................................................30 3.5 RESUMO DO CAPÍTULO ........................................................................................................................32 CAPÍTULO 4 REDES ATM PARA TRANSMISSÃO DE APLICAÇÕES MULTIMÍDIA COM GARANTIAS DE QOS ..............................................................................................................................................................33 4.1 INTRODUÇÃO.......................................................................................................................................33 4.2 T ECNOLOGIA ATM..............................................................................................................................36 4.3 QUALIDADE DE SERVIÇO EM REDES ATM...........................................................................................41 4.3.1 Reserva, Alocação e Dedicação de Recursos .............................................................................41 4.3.2 Classes de Serviço ATM..............................................................................................................42 4.4 CONTROLE DE ADMISSÃO DE CONEXÕES EM REDES ATM ..................................................................43 4.5 RESUMO DO CAPÍTULO ........................................................................................................................46 CAPÍTULO 5 UM ESQUEMA DE NEGOCIAÇÃO DINÂMICA DE QOS ..................................................................48 5.1 INTRODUÇÃO.......................................................................................................................................48 5.2 RESUMO DO CAPÍTULO ........................................................................................................................50 CAPÍTULO 6 UM SERVIÇO DE NEGOCIAÇÃO DE QOS PARA UMA REDE ATM .............................................51 6.1 INTRODUÇÃO.......................................................................................................................................51
  • 7. vi 6.2 SERVIÇO ..............................................................................................................................................52 6.2.1 Diagramas de Tempo das Primitivas de Serviço ........................................................................54 6.3 O SERVIÇO DA CAMADA ATM ............................................................................................................57 6.4 O P ROTOCOLO DE NEGOCIAÇÃO..........................................................................................................59 6.4.1 Descrição do Protocolo ..............................................................................................................59 6.5 RESUMO DO CAPÍTULO ........................................................................................................................67 CAPÍTULO 7 PROJETO E IMPLEMENTAÇÃO DO SERVIÇO DE NEGOCIAÇÃO DINÂMICA EM UMA REDE ATM..................................................................................................................................................69 7.1 PROJETO ..............................................................................................................................................69 7.1.1 Módulos ......................................................................................................................................69 7.1.2 Estruturas de Dados ...................................................................................................................70 7.2 IMPLEMENTAÇÃO ................................................................................................................................72 7.2.1 Estrutura de Execução Real do Esquema de Negociação ..........................................................72 7.2.2 Estrutura de Execução do Protótipo do Esquema de Negociação .............................................72 7.2.3 Dificuldades Encontradas na Implementação ............................................................................73 7.2.4 Algoritmos...................................................................................................................................74 7.3 RESUMO DO CAPÍTULO ........................................................................................................................78 CAPÍTULO 8 TESTES E ANÁLISE DOS RESULTADOS.............................................................................................79 8.1 INTRODUÇÃO.......................................................................................................................................79 8.2 ELABORAÇÃO DOS TESTES ..................................................................................................................82 8.3 ANÁLISE DOS RESULTADOS .................................................................................................................83 8.3.1 Análise de Variância ...................................................................................................................83 8.3.2 Análise de Regressão ..................................................................................................................92 8.4 ANÁLISE DE VIABILIDADE DO ESQUEMA..............................................................................................94 8.5 RESUMO DO CAPÍTULO ........................................................................................................................96 CAPÍTULO 9 CONCLUSÕES E TRABALHOS FUTUROS ..........................................................................................97 9.1 INTRODUÇÃO.......................................................................................................................................97 9.2 T RABALHOS FUTUROS .........................................................................................................................99
  • 8. vii Índice de Figuras FIGURA 1.1 - VARIAÇÃO NA CODIFICAÇÃO DE BANDA PASSANTE PARA VÍDEO ...............................................4 FIGURA 3.1 - NEGOCIAÇÃO TRIANGULAR.......................................................................................................28 FIGURA 4.1 - CLASSES DE SERVIÇO ATM, SUAS CARACTERÍSTICAS E RESPECTIVAS APLICAÇÕES ...................43 FIGURA 4.2 - ESTABELECIMENTO DE UMA CONEXÃO ATRAVÉS DE UMA REDEATM ......................................46 FIGURA 5.1 - ARQUITETURA DA NEGOCIAÇÃO DE QOS...................................................................................49 FIGURA 5.2: BANDA ALOCADA X BANDA REAL .............................................................................................49 FIGURA 6.1 - ARQUITETURA DE NEGOCIAÇÃO DE QOS PARA UMA REDE ATM ..............................................52 FIGURA 6.2 - POSIÇÃO DA CAMADA DE NEGOCIAÇÃO DE QOS DENTRO DE UM ESQUEMA DE CAMADAS .......53 FIGURA 6.3 - ESTRUTURA INTERNA DA CAMADA DE NEGOCIAÇÃO DE QOS...................................................53 FIGURA 6.4 - DIAGRAMA DE TEMPO PARA A PRIMITIVA ESTABELECER_CONEXAO ........................................55 FIGURA 6.5 - DIAGRAMA DE TEMPO PARA A PRIMITIVA TERMINAR_CONEXAO .............................................55 FIGURA 6.6 - DIAGRAMA DE TEMPO PARA A PRIMITIVA MENOS_RECURSOS..................................................56 FIGURA 6.7 - DIAGRAMA DE TEMPO PARA A PRIMITIVA MAIS_RECURSOS .....................................................56 FIGURA 6.8 - DIAGRAMA DE TEMPO MOSTRANDO A ORDEM DE EXECUÇÃO DAS PRIMITIVAS E PDUS ...........57 FIGURA 6.9 - ORDEM DE EXECUÇÃO PARA TRANSMISSÃO .............................................................................59 FIGURA 6.10 - ORDEM DE EXECUÇÃO PARA RECEPÇÃO .................................................................................59 FIGURA 6.11 - ESQUEMA DOS CANAIS DE COMUNICAÇÃO ENTRE AS MÁQUINAS- 1 CANAL DE CONTROLE E VÁRIOS DE DADOS.................................................................................................................................61 FIGURA 6.12 - ESTRUTURA DO BUFFER DE DADOS DA FUNÇÃO PUTMSG ONDE SÃO TRANSMITIDAS AS PRIMITIVAS DE NEGOCIAÇÃO.................................................................................................................63 FIGURA 6.13 - MÁQUINA DE ESTADOS FINITOS DO NÓ CLIENTE ....................................................................66 FIGURA 6.14 - MÁQUINA DE ESTADOS FINITOS DO NÓ SERVIDOR..................................................................66 FIGURA 6.15 - MÁQUINA DE ESTADOS FINITOS DO NÓ INTERMEDIÁRIO.........................................................67 FIGURA 7.1 - ESTRUTURA DE EXECUÇÃO DO ESQUEMA DE NEGOCIAÇÃO......................................................72 FIGURA 7.2 - ESTRUTURA DE EXECUÇÃO DO PROTÓTIPO ...............................................................................73 FIGURA 7.3 - ALGORITMOS DE APOIO.............................................................................................................75 FIGURA 7.4 - ALGORITMO DO MÓDULO CLIENTE ...........................................................................................76 FIGURA 7.5 - ALGORITMO DO MÓDULO INTERMEDIÁRIO ...............................................................................77 FIGURA 7.6 - ALGORITMO DO MÓDULO SERVIDOR.........................................................................................78 FIGURA 8.1 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X QUANTIDADE DE NÓS ..................................84 FIGURA 8.2 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X CAPACIDADE DOS NÓS .................................85 FIGURA 8.3 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X QUANTIDADE DE PEDIDOS DE CONEXÃO......87 FIGURA 8.4 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X TEMPO DE SIMULAÇÃO ................................88 FIGURA 8.5 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X RESERVA MÍNIMA ........................................90 FIGURA 8.6 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO X RESERVA MÁXIMA ......................................91 FIGURA 8.7 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO EM RELAÇÃO A RESERVA MÍNIMA ..................92 FIGURA 8.8 - PERCENTUAL DE REJEIÇÃO DE RENEGOCIAÇÃO EM RELAÇÃO A RESERVA MÍNIMA E MÁXIMA.92
  • 9. viii Índice de Tabelas TABELA 2.1 - TAXAS DE BITS DE APLICAÇÕES DE ÁUDIO E VÍDEO ................................................................16 TABELA 3.1 - FASES DE UMA APLICAÇÃO E SUAS RESPECTIVAS FUNÇÕES DE GERENCIAMENTO DEQOS ........26 TABELA 4.1 - PARÂMETROS MULTIMÍDIA PARA TECNOLOGIAS DE REDES DE PACOTE DE LONGA DISTÂNCIA ...40 TABELA 8.1 - MATRIZ COM VALORES UTILIZADOS NOS TESTES (QUADRADO LATINO)..................................82 TABELA 8.2 - ANÁLISE DE VARIÂNCIA DA QUANTIDADE DE NÓS EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................................84 TABELA 8.3 - ANÁLISE DE VARIÂNCIA DA CAPACIDADE DO NÓS EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................................85 TABELA 8.4 - ANÁLISE DE VARIÂNCIA DA QUANTIDADE DE PEDIDOS DE CONEXÃO EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ....................................................86 TABELA 8.5 - ANÁLISE DE VARIÂNCIA DO TEMPO DE SIMULAÇÃO EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ...............................................................................88 TABELA 8.6 - ANÁLISE DE VARIÂNCIA DA RESERVA MÍNIMA EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ....................................................................................................89 TABELA 8.7 - ANÁLISE DE VARIÂNCIA DA RESERVA MÁXIMA EM RELAÇÃO AO PERCENTUAL DE REJEIÇÃO DE PEDIDOS DE RENEGOCIAÇÃO ....................................................................................................90 TABELA 8.8 - EQUAÇÃO DE REGRESSÃO DO PERCENTUAL DE REJEIÇÃO EM RELAÇÃO AOS PARÂMETROS: QUANTIDADE DE PEDIDOS DE CONEXÃO, TEMPO DE SIMULAÇÃO, RESERVA MÁXIMA, RESERVA MÍNIMA E CAPACIDADE DOS NÓS .............................................................................................94
  • 10. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 1 Capítulo 1 Introdução O desenvolvimento das tecnologias de transmissão de dados possibilitou o surgimento das redes de alta velocidade com capacidade de transportar informações na ordem de milhões de bits por segundo. A existência dessas redes tornou possível a implementação de aplicações que requisitassem grande capacidade de transmissão. Dentre estas aplicações, podem ser citadas, como das mais importantes, as aplicações multimídia. A maioria das aplicações utilizadas nas redes de dados atuais são pouco sensíveis a variações de banda e retardo. Os serviços de rede como correio eletrônico e transferência de arquivo podem executar com a quantidade de banda que é fornecida a eles. Serviços interativos, tais como login remoto, beneficiam-se pouco de valores de banda maiores. Esta aplicação envia apenas pequenos pacotes de dados e o maior benefício de ter muita banda disponível é reduzir a interferência de grandes pacotes sobre pequenos pacotes de dados, pois os pequenos levam menos tempo para serem transmitidos. A aplicação de sistema de arquivos distribuído (NFS - Network File System) se beneficia de um maior valor de banda. Ter uma rede com muita banda passante reduz o tempo para transmissão de dados do servidor para o cliente. No entanto, o aumento de banda passante para as aplicações citadas, faz apenas com que elas sejam executas mais rapidamente, mas não influencia no resultado ou na correção de suas execuções [Partr94]. As aplicações multimídia geram vários tipos de informação, como texto, dados, voz, vídeo e imagem. Em uma transmissão multimídia, todas essas informações devem ser enviadas em um mesmo meio de comunicação. Por esse motivo, e pelo fato de alguns tipos de informação, como vídeo, por exemplo, possuírem muitos dados, a transmissão destas aplicações, requer uma grande capacidade de banda passante. Cada um desses tipos de informação possui requisitos diferentes, no que diz respeito a retardo de transmissão, taxa de erros, perda de dados e largura de banda. Assim, uma rede para transmitir uma aplicação multimídia deve oferecer garantias de
  • 11. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 2 qualidade de serviço (QoS - Quality of Service), para que todas as informações transmitidas tenham seus requisitos atendidos. A negociação da qualidade de serviço consiste em fazer, no início de cada conexão, uma negociação dos parâmetros de transmissão necessários a cada tipo de aplicação e, a partir daí, tanto as aplicações como a rede devem obedecer aos requisitos de qualidade estabelecidos. Esse tipo de negociação, feito apenas no início da transmissão, pode ser chamado de negociação estática, pois os parâmetros acordados no estabelecimento da conexão continuam até que ela finalize. A negociação dinâmica da qualidade de serviço permite que os parâmetros de qualidade sejam alterados durante a fase ativa da conexão. Essa negociação pode ser feita para requisitar mais ou menos recursos. Dessa maneira, se uma aplicação estiver subutilizando recursos, ela pode liberá-los. Estes recursos podem ser reaproveitados por conexões que, em um determinado momento, exijam mais recursos ou até mesmo por aplicações que desejem iniciar uma transmissão. A utilização da negociação dinâmica possibilita uma melhor utilização do meio de transmissão. Uma rede, para transportar dados de aplicações multimídia, deve oferecer, portanto, alta velocidade de transmissão e garantias de qualidade de serviço. Nesse sentido, a tecnologia de rede ATM (Asynchronous Transfer Mode) tem-se mostrado como uma das mais promissoras. 1.1 Motivação As redes ATM oferecem garantias de qualidade de serviço. Isto possibilita a transmissão de informações de aplicações multimídia, de forma que sejam atendidos todos os requisitos de qualidade de cada mídia (texto, voz, dados, imagem). A definição desses parâmetros é possível devido a existência do conceito de classes de serviço nas redes ATM. Para atender às classes de serviços, foi definida, no modelo de referência ATM, uma camada de adaptação (AAL - ATM Adaptation Layer), cuja função é justamente adaptar as características de cada aplicação ao funcionamento de outra camada, chamada ATM. As redes ATM atendem a um compromisso entre dois objetivos conflitantes. Garantir o desempenho para cada classe de serviço enquanto permite que a rede seja usada eficientemente, através da utilização de multiplexação estatística. Para tanto, é necessário desenvolver uma arquitetura de gerenciamento de banda passante sob a qual a
  • 12. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 3 rede possa ser eficientemente utilizada e, enquanto isso, possa ser obtida uma QoS aceitável para todas as classes de serviço [LPF+97]. Atualmente já existem esquemas de negociação de QoS em redes ATM, baseados na utilização das classes de serviços e da AAL. Nesses esquemas, antes de se iniciar a transmissão, informa-se à rede a qual classe de serviço pertencerá a aplicação sendo transmitida. O processo de negociação, no entanto, é estático, e muitas vezes não possibilita uma boa utilização da rede. Para tanto, foi idealizado o esquema de negociação dinâmica, no qual os parâmetros de QoS podem ser alterados no decorrer da sessão estabelecida. A alocação dinâmica de recursos, que possibilita a execução da renegociação dinâmica de QoS, foi proposta para superar dificuldades da alocação estática. A alocação dinâmica de banda passante, adapta-se à situação real e modifica dinamicamente a banda passante alocada. Este tipo de alocação necessita de funções avançadas para monitorar a situação da rede, alocar a banda passante e modificar seu valor [Saito97]. De acordo com [Saito97], a alocação dinâmica de banda passante (controle de taxa de células da fonte), para taxas de pico de 150Mbps e 6Mbps, tem 60% e 35%, respectivamente, melhor utilização da banda passante que a alocação estática. A transmissão de informações de aplicações multimídia, como vídeo, requer muita banda passante. Geralmente são utilizados algoritmos de compressão nos arquivos de vídeo para que seus dados sejam transmitidos pela rede. Devido a compactação, a quantidade de dados que deve ser enviada para cada quadro de vídeo pode variar bastante. Essa variação apresenta um problema [Partr94], conforme mostrado a seguir. Este problema é exemplificado na figura 1.1 para uma sequência de cinco quadros. A linha mais forte mostra a quantidade de banda que um quadro necessita em um determinado momento e a linha pontilhada mostra a quantidade de banda que cada quadro tem disponível. Os quadros 2 e 4 necessitam de mais banda do que a alocada e os quadros 1, 3 e 5 não precisam de toda a banda que está alocada.
  • 13. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 4 Banda Passante Tempo Figura 1.1 - Variação na Codificação de Banda Passante para Vídeo Os codificadores de vídeo solucionam este problema da seguinte maneira: eles selecionam um valor de banda na qual as informações devem ser transmitidas (tendo como base a banda passante disponível dos circuitos virtuais e a qualidade desejada do sinal de vídeo). O vídeo então, é codificado tal que, quando a quantidade de dados de um quadro excede o valor de banda selecionada, são transmitidas informações o suficiente, para que se tenha uma imagem com qualidade razoável. Depois, quando existir um quadro que não necessite de toda a banda passante, são enviados, utilizando-se a banda restante destes quadros, dados para retocar a imagem e torná-la o mais próximo possível da imagem correta. Este problema ocorre quando as informações de um vídeo são transmitidas através de um canal que possui uma quantidade de banda alocada fixa. Uma solução para este problema é transmitir dados em um canal que permita a alocação dinâmica de banda passante. Isto proporciona uma melhor utilização do canal e uma melhor garantia de qualidade à aplicação de vídeo. O principal objetivo da negociação dinâmica (ou renegociação) é explorar o comportamento dinâmico de conexões multimídia para maximizar a utilização dos recursos e, como consequência, acomodar um maior número de conexões [GNN97]. Não existem modelos de negociação dinâmica para redes ATM, padronizados pelo ATM Forum. A motivação deste trabalho foi o esquema desenvolvido como parte de um trabalho de pesquisa de tese de doutorado, conforme apresentado em [Goula98] e [GNN97]. Nestas referências, é proposto um esquema de negociação dinâmica de
  • 14. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 5 qualidade de serviço para aplicações multimídia. A partir daí então, surgiu a idéia de adaptá-lo para redes ATM e fazer uma implementação do esquema. Com um modelo de negociação dinâmica desenvolvido para redes ATM, é possível utilizar estas redes com uma melhor eficiência, possibilitando que as aplicações transmitidas através delas utilizem os recursos de acordo com suas necessidades e sejam atendidas o maior número possível de aplicações. Neste trabalho é mostrado, além do esquema de negociação dinâmica, uma pequena descrição sobre aplicações multimídia, qualidade de serviço e redes ATM. Isto é feito porque o esquema de negociação desenvolvido é destinado a aplicações multimídia. Estas aplicações, necessitam de uma determinada qualidade de serviço. Para transmitir dados destas aplicações, a rede deve oferecer garantias de qualidade de serviço e uma alta capacidade de banda passante, características encontradas na tecnologia ATM. O objetivo deste trabalho é implementar um esquema de negociação dinâmica em redes ATM para aplicações multimídia distribuídas. Para tanto, é definida uma arquitetura de negociação de QoS para uma rede ATM, que possui uma camada de negociação de QoS. A partir daí, é especificado, projetado e implementado o serviço prestado por esta camada às camadas superiores, que no caso, são as aplicações multimídia distribuídas. Por enquanto, o único parâmetro de QoS tratado pelo esquema é o de banda passante. A negociação de banda passante em uma rede ATM se dá através da reserva e alocação de recursos - no caso, a própria banda passante. Para executar o esquema em cada nó da rede ATM, é desenvolvido um conjunto de programas que funcionam como um CAC (Connection Admission Control). Nos capítulos 2, 3 e 4 é feita uma breve revisão sobre aplicações multimídia, qualidade de serviço e redes ATM, respectivamente. No capítulo 5 é mostrado o esquema de negociação que motivou a execução deste trabalho. No capítulo 6 é mostrada a arquitetura de negociação de QoS para uma rede ATM e a especificação do serviço e do protocolo da camada de negociação dinâmica de QoS. O capítulo 7 apresenta o projeto e aspectos de implementação do trabalho. No capítulo 8 é feita uma análise sobre o projeto e são mostrados os resultados obtidos. Neste capítulo, é apresentada também uma análise de viabilidade do sistema. No capítulo 9 encontram-se as conclusões e os possíveis trabalhos futuros.
  • 15. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 6 Capítulo 2 Aplicações Multimídia e Requisitos de Comunicação Neste capítulo é feita uma revisão sobre aplicações multimídia e suas características e sobre as diversas mídias que estão presentes nestas aplicações. São analisados os recursos computacionais requeridos pelas aplicações multimídia e os requisitos de comunicação necessários de uma rede para que possa transmitir informações de aplicações deste tipo. 2.1 Introdução As aplicações multimídia atuais integram vários tipos de mídia: texto, gráficos, imagens, vídeo e áudio [Fluck95]. Cada tipo de mídia possui características e requisitos de comunicação diferentes. Algumas das características de uma aplicação multimídia são [SLC95]: natureza do tráfego gerado, retardo máximo de transferência, variação estatística do retardo, vazão média e taxas aceitáveis de erro em bits ou em pacotes de dados. Uma das principais características é a natureza do tráfego gerado. Podem existir três tipos de classes de tráfego: tráfego com taxa de bits constante, onde a taxa média é igual a taxa de pico; tráfego em rajadas, que possui períodos onde as informações são geradas próximas à taxa de pico, intercalados com períodos nos quais a fonte não produz tráfego algum; tráfego contínuo com taxa variável, no qual existem variações na taxa de bits, durante todo o período de transmissão [SLC95]. De acordo com o tipo de informação presente em uma mídia, esta pode ser definida como discreta ou contínua. Texto, gráfico e imagem são exemplos de mídias discretas, enquanto que áudio e vídeo são exemplos de mídias contínuas. O termo multimídia geralmente implica que pelo menos um tipo de mídia discreta esteja associado com informação de mídias contínuas [Fluck95]. Este capítulo diz respeito não apenas às aplicações multimídia, propriamente ditas. Ele refere-se a estas aplicações, tendo como base os requisitos de comunicação que elas necessitam, ao terem suas informações transmitidas através de uma rede. Grande
  • 16. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 7 parte da literatura, que fala sobre multimídia, não aborda o aspecto da rede de transmissão, nem o ambiente distribuído. Devido a isso, este capítulo está baseado, basicamente, em três referências. Estas referências abordam o assunto multimídia, principalmente em relação ao aspecto dos requisitos de comunicação. Estas referências são: [Fluck95], [Lu96] e [SLC95] 2.2 Características das mídias Cada mídia possui características e necessidades de desempenho distintas. Nesta seção são mostrados os principais tipos de mídia, suas características e seus requisitos. Texto O texto tem sido, historicamente, a principal forma de interação entre computadores e seres humanos. É também, juntamente com difusões armazenadas e filmes, a principal forma de comunicação assíncrona (comunicação adiada no tempo) entre humanos, através de livros, jornais, cartas e mais recentemente correio eletrônico. A mídia de texto pode ser representada de duas maneiras. Uma como texto não formatado, onde o número de caracteres disponíveis é limitado e em geral, o tamanho dos caracteres é fixo e estão disponíveis apenas uma forma e um estilo. A outra forma de representação é como texto formatado, onde o conjunto de caracteres é mais rico, com múltiplas fontes, tamanhos e capacidades de formatação [Fluck95]. Na maior parte das aplicações, a mídia de texto caracteriza-se por tráfego em rajada. Não é tolerante a erros e o retardo máximo de transferência e a variação estatística do retardo não são características muito relevantes [SLC95]. Gráficos O formato dos documentos de gráficos possui informações estruturais. Os objetos podem ser apagados, redesenhados, movidos ou terem seu tamanho alterado. São formados por objetos tais como linhas, curvas ou círculos. Estes objetos podem ser removidos, adicionados, movidos, diminuídos ou aumentados. Eles possuem atributos do tipo espessura, escala de cinza, cor ou padrões de preenchimento [Fluck95]. A mídia gráfica é caracterizada pelo tráfego em rajadas com vazões médias chegando a algumas dezenas de megabits por segundo. Como em texto, o retardo máximo
  • 17. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 8 e a variação estatística do retardo não são muito importantes. A taxa de erros de bits e de pacote depende do tipo de gráfico e também se foram utilizadas ou não técnicas de compressão ou compactação. Para gráficos no formato matricial e sem compressão, a taxa de erros de bits pode ser bem maior que a taxa de erros de pacotes. Para gráficos no formato vetorial, onde forem utilizadas técnicas de compressão, o erro em um único bit é intolerável. Um fato importante a ser considerado, em relação a taxa de erros, é saber se o gráfico será processado apenas pelo olho humano ou também pelo computador [SLC95]. Imagens São conhecidas também como figuras e não contêm informação estrutural. As imagens de computador são representadas por mapas de bit (bitmaps). Um mapa de bit simples é uma matriz espacial de duas dimensões feita de elementos individuais chamados pixels. Gráficos ou textos podem ser representados ou armazenados como imagens, sendo convertidos para formato bitmap [Fluck95]. Os requisitos de comunicação da mídia imagem são bem semelhantes daqueles para mídia gráfica. A mídia imagem também é caracterizada pelo tráfego em rajadas com vazões médias chegando a algumas dezenas de megabits por segundo. O retardo máximo e a variação estatística do retardo não são muito importantes. A taxa de erros de bits e de pacotes depende do tipo de imagem, se foram utilizadas ou não técnicas de compressão ou compactação, e se a imagem será processada apenas pelo olho humano ou também pelo computador [SLC95]. Vídeo Tanto as imagens quanto os gráficos podem ser mostrados em uma tela de computador como uma sucessão de visões que criam uma impressão de movimento. Assim, podem ser chamados de imagens em movimento ou também figuras em movimento e gráficos em movimento ou também animação de computador [Fluck95]. A característica de imagens ou gráficos em movimento é que todas as visões não são independentes. Elas são correlatas e em geral cada quadro é uma variante do quadro anterior. Pode-se entender por quadro como sendo uma visão completa e individual da tela do computador em um determinado instante, parte de uma sucessão de visões apresentadas. O retardo entre a aparição de dois quadros sucessivos é geralmente constante e o número de quadros mostrados por segundo é chamado de taxa de quadro.
  • 18. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 9 Para que se tenha uma real impressão de movimento, a taxa de quadros deve ser acima de 16 quadros por segundo (qps). Filmes são mostrados a uma taxa de 24qps. Padrões da TV americana e japonesa atuais utilizam 30qps, enquanto o padrão europeu utiliza 25qps. Um dos muitos padrões de TV de alta definição (High-Definition Television - HDTV), opera a 60qps [Fluck95]. A mídia de vídeo caracteriza-se por gerar um tráfego contínuo com taxa constante. Mesmo quando for executada alguma técnica de compactação ou compressão e o tráfego gerado ficar caracterizado como um tráfego com taxas variáveis, o sinal deve ser reproduzido no destino em uma taxa constante. O retardo de transferência máximo tem grande importância e a variação estatística do retardo deve ser compensada. A taxa de erros de bits pode ser maior que a taxa de erros de pacotes. Mesmo a taxa de erros de pacotes não é tão crítica, pois como a imagem não é estática, devem ser gerados vários quadros por segundo. A tolerância a taxa de erros é dependente da utilização de técnicas de compressão ou não, pois quando estas técnicas são utilizadas, um erro pode se propagar. Em quadros que contenham uma propagação de erro, o erro em um único bit pode ser intolerável enquanto quadros que não possuam propagação de erro podem tolerar erros de bits e de pacotes [SLC95]. Existem cinco classes de qualidade para vídeo, são elas: televisão de alta definição (HDTV), televisão digital com qualidade de estúdio, televisão com qualidade de difusão, televisão com qualidade VCR (Videocassette Recorder) e qualidade de videoconferência de baixa velocidade. Áudio A mídia de áudio, assim como a mídia de vídeo, caracteriza-se por gerar um tráfego contínuo com taxa de bit constante. O tráfego gerado, caso não seja utilizada nenhuma técnica de compactação ou compressão, é do tipo CBR (Constant Bit Rate). Caso contrário, o tráfego pode ser caracterizado como VBR (Variable Bit Rate) ou até mesmo como em rajadas, no caso da voz com detecção de silêncio. Mesmo no caso do tráfego em rajadas, o sinal deve ser reproduzido no destino a uma taxa constante. A variação estatística do retardo deve ser compensada. A estratégia utilizada pelos algoritmos de compensação baseia-se fundamentalmente em assegurar uma reserva de pacotes antes de dar início ao processo de reprodução, introduzindo um retardo inicial a cada surto de voz [SLC95]. O retardo de transferência máximo é crítico, principalmente
  • 19. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 10 no caso de conversações. Os problemas de retardo tornam-se críticos apenas para aplicações que exigem comunicação interativa em tempo real. A mídia de áudio tolera uma taxa de erros de bits ou de pacotes relativamente alta, pois os sinais de áudio possuem um alto grau de redundância. É importante, no entanto, que os pacotes não sejam muito grandes para não se perder muito tempo no empacotamento e consequentemente aumentar o retardo de transferência [SLC95]. 2.3 Aplicações Multimídia As aplicações multimídia possuem muitas características em comum com outros tipos de aplicações, mas também possuem características particulares. Dentre as principais características específicas podem ser citadas as seguintes [Fluck95]: podem necessitar de transmissão em tempo real de informação de mídia contínua (áudio e vídeo); o volume de dados trocados é substancial e muitas vezes considerável, devido a codificação de informação de mídia contínua; muitas aplicações são inerentemente distribuídas. As aplicações multimídia podem ser executadas em um sistema multimídia individual, no modo stand-alone, ou através de uma rede de computadores. Uma aplicação multimídia local utiliza apenas os recursos presentes no sistema local para oferecer os serviços multimídia e não faz uso da capacidade de armazenamento remoto. Exemplos desse tipo de sistema multimídia são: Treinamento individual baseado em computador (Individual computer-based training - CBT) e Educação individual baseada em computador (Individual computer-based education - CBE) [Fluck95]. Aplicações executadas através de uma rede de comunicação são ditas distribuídas. Duas razões principais para se ter aplicações multimídia distribuídas são: • Suporte a aplicações naturalmente distribuídas. Aplicações que oferecem serviços de comunicação à distância, como videoconferência, correio eletrônico multimídia e transmissão de pacotes de áudio e vídeo para vários nós de uma rede. • Implementação do modelo cliente-servidor. Para alguns sistemas multimídia, pode ser mais vantajoso utilizar recursos dos vários sistemas espalhados pela rede. Como exemplo destes recursos, pode ser citada a capacidade de armazenamento oferecida por um servidor para que os vários sistemas possam acessá-lo remotamente.
  • 20. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 11 As aplicações multimídia distribuídas podem ser apresentacionais ou conversacionais. As aplicações apresentacionais fornecem acesso remoto a documentos multimídia. Estes documentos podem estar armazenados digitalmente em um ou mais dispositivos de armazenamento de alta capacidade (computadores servidores) e os usuários podem recuperar a informação multimídia em tempo real de servidores multimídia através de uma rede de banda larga para os seus dispositivos de apresentação [HBD96]. As aplicações conversacionais envolvem tipicamente comunicação multimídia em tempo real. Podem ainda ser classificadas em serviços sob demanda ou de difusão [VKBG94]. Muitas aplicações possuem aspectos apresentacionais e conversacionais. 2.3.1 Exemplos de Aplicações Multimídia Alguns exemplos de aplicações multimídia são videoconferência, correio eletrônico multimídia, vídeo-sob-demanda e filme-sob-demanda. Estas aplicações são mostradas a seguir. Videoconferência A videoconferência tem como principal objetivo proporcionar uma comunicação de alta velocidade entre parceiros remotos, através da transmissão de áudio e vídeo, para melhorar o trabalho colaborativo [Lu96]. A videoconferência pode se dar entre duas partes, como na videofonia, ou entre muitas partes, como na distribuição de vídeo, mas nas duas formas implica em comunicação bidirecional. As principais características da videoconferência são as seguintes [Fluck95]: • Grupos. Envolve pelo menos um grupo de pessoas em uma das localizações. Os participantes podem tanto estar em um escritório utilizando sistemas desktop quanto em salas de reuniões, mas em ambos os casos existirão muitas pessoas que devem aparecer. • Documentos. Geralmente é necessário que ocorra troca de documentos entre os participantes. Documentos podem estar na forma de papel, visível em um lugar tipo quadro-negro ou no formato eletrônico.
  • 21. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 12 • Comunicação de grupo. A quantidade de sistemas que podem participar depende se a conferência é simétrica ou assimétrica. Em uma conferência simétrica, as contribuições são balanceadas entre todos os participantes. Em conferências assimétricas, alguns participantes são menos ativos que outros, e pode ser suportada uma dúzia de participantes. • Compromisso entre resolução e movimento. Exceto no caso de existirem documentos, a resolução pode ser de média qualidade. • Qualidade de som. Este requisito é muito importante em videoconferência, pois a identificação de quem está falando em um dado momento ajuda os participantes a identificarem a parte ativa. Uma outra razão desta importância é que o som deve ter qualidade suficiente para ser amplificado por alto-falantes. Correio eletrônico multimídia O correio eletrônico é uma aplicação que permite aos usuários fazer a composição, troca, leitura, armazenamento, recuperação e manipulação de mensagens de computador. Estas mensagens são representadas em uma forma digital e manipuladas por computadores. Uma mensagem multimídia possui uma parte de áudio ou vídeo misturada com qualquer outro tipo de informação. O correio multimídia apareceu em 1992 com a adoção do padrão correio multimídia da Internet, chamado MIME (Multipurpose Internet Mail Extensions). Em relação ao armazenamento, cada minuto de áudio, com o mais comum e menos eficiente esquema de codificação, requer 500Kbytes. Sequências de vídeo para correio multimídia são geralmente de qualidade VCR e, no melhor caso de compressão, um minuto de vídeo requer 10Mbytes [Fluck95]. Portanto, o tamanho do correio multimídia deve ser limitado. Sequências de vídeo devem ser extremamente pequenas e as sequências de áudio devem ser limitadas a poucas dúzias de segundos. Telemedicina Aplicação multimídia importante, especialmente em casos de emergência e localizações remotas. Em telemedicina, todos os dados de pacientes são registrados e
  • 22. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 13 armazenados eletronicamente. Instituições e equipamentos médicos são conectados através de uma rede multimídia. A telemedicina provê as seguintes funções [Lu96]: • Consulta instantânea com médicos experientes através do uso de áudio e vídeo de alta qualidade. • Acesso a registros de pacientes em qualquer lugar e a qualquer momento por pessoal médico em caso de emergência. • Acesso a informações em todo o mundo tal como disponibilidade e necessidade de um tipo especial de sangue ou órgãos. Vídeo-sob-demanda O termo vídeo-sob-demanda, abreviado como VOD (Video-on-demand), engloba uma grande quantidade de aplicações onde os usuários podem requisitar o acesso a servidores de vídeo de imagens estáticas ou em movimento. Algumas características deste tipo de aplicação são citadas a seguir [Fluck95]. • Vídeo-sob-demanda não diz respeito apenas a vídeo em movimento, também engloba a demanda a imagens estáticas. • A definição não especifica onde o servidor está localizado nem quem o opera. VOD pode ser um serviço corporativo provido em um site dentro de uma organização, bem como pode ser um serviço público. • A definição não especifica o nível de interação que o usuário pode se beneficiar, uma vez que a sessão esteja estabelecida. • VOD não implica em qualquer tipo específico de vídeo em movimento. Apesar do principal campo de aplicação ser a distribuição de filmes, aplicações de VOD cobrem todo tipo de sequências de vídeo.
  • 23. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 14 • A definição diz que o usuário pode requisitar uma imagem ou figura em movimento a qualquer tempo, mas ela não diz que o usuário pode vê-la a qualquer tempo. Filme-sob-demanda Filme-sob-demanda, abreviado como MOD (Movie-on-demand), é um serviço público de vídeo-sob-demanda oferecido a usuários residenciais ou clientes de hotéis, onde o objeto acessado é um filme armazenado [Fluck95]. O objetivo do MOD é substituir dois serviços convencionais com um produto melhorado. • O serviço pay-per-view (PPV). A melhoria seria o fato de se oferecer uma maior quantidade de filmes que possam ser escolhidos e que o usuário possa requisitar e assistir a qualquer momento. • O serviço de aluguel de fita de vídeo. A idéia é eliminar a busca e retorno da fita a locadora, eliminando a manipulação física da fita. Para filme-sob-demanda, uma qualidade equivalente a de videocassete VHS, requer uma taxa de transmissão de apenas 1,5Mbps, o que é compatível com a velocidade T1. Implementações existentes do padrão de compressão de vídeo MPEG-2 (Motion Picture Expert Group) operam a 6Mbps com uma qualidade ligeiramente superior a qualidade de TV de difusão. É esperado que se consiga uma taxa na ordem de 4Mbps para este tipo de qualidade. Muitos operadores estão planejando canais de 6 ou 7Mbps para suas infra-estruturas. Várias técnicas de compressão podem ser usadas para TV digital com qualidade de difusão, mas o padrão MPEG-2 tem surgido como uma tecnologia geral, multi-vendedor [Fluck95]. As aplicações multimídia distribuídas constituem o enfoque deste trabalho. Dentro deste tipo de aplicação, o sistema desenvolvido no trabalho tem como objetivo atender aplicações do tipo vídeo-sob-demanda. 2.4 Requisitos de Comunicação
  • 24. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 15 Aplicações multimídia são caracterizadas por manipular mídia contínua e suportar uma variedade de mídias e seus relacionamentos temporais. Isto impõe novos requisitos aos sistemas de comunicação e sistemas-fim [HBD96]. As informações das aplicações distribuídas devem ser transmitidas através de uma rede. Para cada tipo de mídia existem requisitos de comunicação específicos. Para que uma sub-rede de comunicação possa transmitir dados de aplicações multimídia em tempo real e mídia contínua, ela deve disponibilizar alguns características de desempenho. As principais destes características são [Fluck95] [Lu96]: • Vazão. Quantidade de bits que a rede é capaz de transmitir em um determinado período de tempo. Algumas aplicações necessitam de uma capacidade de armazenamento e de banda passante muito grande, como mostra a tabela 2.1. • Retardo. Tempo gasto para a emissão do primeiro bit de um bloco de dados pelo transmissor e sua recepção pelo receptor. Um valor aceitável de retardo é dependente da aplicação. Áudio e vídeo digital são mídias contínuas dependentes do tempo, conhecidas como dinâmicas ou isócronas. Para que a apresentação destas mídias tenha uma qualidade razoável, as amostras de áudio e vídeo devem ser recebidas e apresentadas em intervalos regulares. • Variação do retardo. Variação no tempo do retardo de transmissão da rede. É um dos principais parâmetros para suportar mídias dependentes do tempo. Para uma boa apresentação de mídias contínuas, a variação do retardo deve ser muito pequena. Os requisitos de retardo e variação do retardo devem ser garantidos durante toda a sessão de comunicação. Grande parte das redes, protocolos de transporte, sistemas operacionais e escalonamento de discos atuais não fornecem tal garantia. Portanto, os hospedeiros e organização das redes atuais não são apropriados para aplicações multimídia. • Taxa de erros. Parâmetro que mede a capacidade da rede em termos de alteração, perda, duplicação ou entrega fora de ordem, dos dados. Em dados de áudio e vídeo pode-se tolerar algum erro ou perda, pois estes podem passar despercebidos pelo usuário. Quando são utilizadas técnicas de compressão, a taxa de erros permitida é menor, pois um erro em um bit pode causar erro de descompressão de muitos bits. Um outro parâmetro de medida de erro é a taxa de perda de pacote. O
  • 25. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 16 requisito para taxa de erros de pacote é mais rigoroso que para taxa de erros de bit, pois a perda de pacotes pode afetar a decodificação de uma imagem. Aplicações Taxa de Dados (kbits/s) Telefone digital 64 Rádio digital 1.024 Áudio-CD 1.411,2 DAT 1.536 Vídeo qualidade VHS 54.000 Vídeo qualidade TV 216.000 HDTV 864.000 Tabela 2.1 - Taxas de Bits de Aplicações de Áudio e Vídeo Para suporte a aplicações de recuperação e de distribuição, os principais critérios exigidos de uma rede são: capacidade para comunicação de grupo e capacidade para fazer cache de documentos [Fluck95]. • Capacidade de comunicação de grupo. Capacidade da rede para replicar, em certos pontos internos, os dados emitidos por uma fonte. Dados replicados devem ser passados a frente para os receptores-fim, que são parte do grupo. Esta capacidade é desenvolvida para evitar ou minimizar que segmentos das redes sejam atravessados por múltiplas cópias dos mesmos dados. • Capacidade para fazer cache de documentos. Consiste, para o sistema local envolvido, em aguardar solicitações do usuário, atendê-las e manter uma cópia de parte específica da informação solicitada. Algoritmos apropriados mantêm apenas o sub-conjunto das partes que possuem a maior probabilidade de serem solicitadas pelos sistemas locais. Em relação às redes de comunicação, existem ainda duas características importantes no transporte de dados de aplicações multimídia. Estas características são: isocronismo e qualidade de serviço (QoS). Para o suporte a aplicações multimídia utilizando transmissão em tempo real, uma característica particularmente importante é a de isocronismo. O termo isocronismo refere-
  • 26. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 17 se ao processo onde os dados devem ser entregues dentro de certos limites de tempo. Por exemplo, streams multimídia requerem um mecanismo de transporte isócrono para assegurar que os dados sejam entregues tão rápido quanto eles são apresentados e assegurar que o áudio seja sincronizado com o vídeo. Aplicações isócronas, ou sensíveis ao tempo, tais como vídeo, requerem muita banda passante e baixo retardo fim-a-fim [Miller94]. Uma conexão de rede fim-a-fim é dita isócrona se a taxa de bits da conexão é garantida e se o valor da variação do retardo é também garantido e pequeno. Aplicações multimídia distribuídas são isócronas por natureza e portanto, possuem limitações de tempo. A outra característica de rede importante, é a de Qualidade de Serviço (QoS). Dados multimídia requerem diversos requisitos de qualidade dos sistemas multimídia. Estes requisitos, dependendo da aplicação, muitas vezes são ditos rigorosos. O conceito de QoS é baseado no fato de que, nem todas as aplicações, necessitam do mesmo desempenho da rede pela qual estão trafegando. As aplicações podem indicar os seus requisitos específicos para a rede, antes de realmente ser iniciada a transmissão dos dados. QoS é uma medida de quão bom é um serviço, como apresentado para o usuário. É expressa em uma linguagem compreensível pelo usuário e manifesta, através de uma quantidade de parâmetros, valores subjetivos e objetivos. Portanto, para que informações de aplicações multimídia possam ser transmitidas através de uma rede, com uma qualidade aceitável para o usuário, a rede deve atender, de maneira satisfatória, e de acordo com cada mídia, os seguintes requisitos: vazão, retardo, variação do retardo, taxa de erros, capacidade de comunicação de grupo, capacidade para fazer cache de documentos, isocronismo e garantias de QoS. 2.5 Sistemas Multimídia Um sistema multimídia oferece uma função ou um conjunto de funções particulares a uma aplicação multimídia. Uma aplicação multimídia é o uso específico, por um usuário ou grupo de usuários, de um dado sistema multimídia. Um exemplo de sistema multimídia é uma estação de trabalho equipada com dispositivos de áudio e vídeo. Um exemplo de função, ou aplicação multimídia, é uma videoconferência [Fluck95]. Os sistemas multimídia distribuídos podem ser classificados em um número de classes. O ITU (International Telecommunications Union) identifica quatro classes básicas de serviços ou aplicações distribuídas. Estas quatro classes são [Lu96]:
  • 27. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 18 • Serviços coversacionais. Implicam a interação entre um usuário humano e outro usuário humano ou sistema. Esta classe inclui serviços interpessoais, como videoconferência e videofonia. Inclui também serviços como televigilância e telecompras. • Serviços de mensagens. Cobrem a troca de dados multimídia que não são de tempo real ou assíncronos, através de caixas de correio eletrônico. • Serviços de recuperação. Cobre todos os tipo de acesso a servidores de informação multimídia. Tipicamente, o usuário envia um pedido para o servidor e a informação solicitada é entregue ao usuário em tempo real. Vídeo-sob-demanda é um exemplo deste serviço. • Serviços de distribuição. Cobrem serviços onde a informação é distribuída por iniciativa de um servidor. Um exemplo deste serviço é uma difusão de programa de TV. Existem alguns objetivos que um sistema multimídia deve atender. Estes objetivos são [Lu96]: • O sistema deve ter recursos suficientes para suportar aplicações multimídia. Cada subsistema deve ter tipos e quantidade de recursos para suportar múltiplas aplicações simultaneamente. Um sistema-fim deve estar apto a processar múltiplas aplicações. Redes, servidores e dispositivos de armazenamento devem estar aptos a suportar um número de sessões ou fluxos simultaneamente. • O sistema deve estar apto a utilizar os recursos disponíveis de maneira eficiente. Os recursos de uma sistema são compartilhados por várias aplicações. Estes recursos devem ser compartilhados de uma maneira eficiente, tal que um número máximo de aplicações possa ser suportado com uma determinada quantidade de recursos.
  • 28. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 19 • O sistema deve estar apto a garantir os requisitos de QoS das aplicações. Os recursos devem ser compartilhados eficientemente pelas diversas aplicações, e estas aplicações devem conseguir a qualidade de serviço requisitada. Portanto, um importante desafio para os sistemas multimídia é usar os recursos de uma maneira eficiente e ao mesmo tempo garantir a QoS para cada aplicação. • O sistema deve ser escalável. Uma arquitetura de comunicação deve ser escalável e extensível para conseguir fornecer aumento nos requisitos dos usuários e atender novas demandas. A escalabilidade refere-se a habilidade do sistema em adaptar-se a mudanças no número de usuários a serem suportados e a quantidade de informação a ser armazenada e processada. A partir desta análise, pode-se concluir portanto que, os sistemas de computação e comunicação multimídia devem suportar e prover o seguinte: compressão de dados para reduzir a demanda por espaço de armazenamento e banda de transmissão; um sistema operacional, protocolo de transporte e escalonador de disco direcionados para multimídia, que forneçam as garantias de retardo e variação de retardo apropriadas; estações de trabalho de alto desempenho e redes de alta velocidade para manipular altas taxas de bits sob limitações de tempo; e mecanismos globais de especificação e garantia de QoS [Lu96]. 2.6 Resumo do Capítulo Neste capítulo foram analisados os diversos tipos de mídia existentes em um sistema multimídia. Dentre as mídias apresentadas podemos citar texto, gráficos, imagens, vídeo e áudio. Para cada tipo de mídia foram mostradas suas características principais e os requisitos de comunicação exigidos por cada uma. Foram apresentados também os sistemas multimídia e as aplicações multimídia, descrevendo o que são e mostrando suas principais características. As aplicações multimídia podem ser executadas de forma individual ou através de uma rede de computadores, as quais são chamadas aplicações distribuídas. Como exemplos de aplicações multimídia foram mostrados videoconferência, correio eletrônico multimídia, vídeo-sob-demanda e filme-sob-demanda. O enfoque deste trabalho são as aplicações multimídia distribuídas, dentre as quais a aplicação tomada como base foi a de vídeo-sob- demanda.
  • 29. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 20 Depois foram discutidos os requisitos de comunicação, necessários a uma rede, para transmitir informações de aplicações multimídia. Os principais destes requisitos são vazão, retardo, variação do retardo e taxa de erros. Para suporte a aplicações de recuperação e de distribuição, é necessário que uma rede possua capacidade de comunicação de grupo e de fazer cache de documentos. Outras duas funções de rede importantes são isocronismo, principalmente para transmissão de tempo real, e garantia de qualidade de serviço. Capítulo 3 Qualidade de Serviço
  • 30. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 21 Neste capítulo são mostrados alguns conceitos que estão envolvidos na definição de qualidade de serviço (QoS). São descritas as funções de gerenciamento de QoS e, dentre estas funções, são destacadas as de negociação e renegociação de QoS. 3.1 Introdução O conceito de qualidade de serviço, no que tange as redes de comunicação, deriva do fato de que, nem todas as aplicações transmitidas em uma rede, possuem os mesmos requisitos de desempenho. Assim, cada aplicação, antes de iniciar uma transmissão, pode indicar quais os parâmetros de qualidade que atendem às suas necessidades. A qualidade de serviço (QoS) pode ser descrita sob vários pontos de vista. Para pesquisadores trabalhando com codificação de vídeo, QoS é uma medida subjetiva da qualidade do canal. Outros podem ver QoS como uma necessidade das redes fornecerem limites de desempenho e ainda outros podem ver QoS em termos de disponibilidade da rede na presença de falha [Jung96]. Para o usuário da aplicação, QoS é vista como um conjunto de características, como por exemplo, a qualidade da imagem em termos de nitidez ou a qualidade do áudio. Para a rede, essas características são traduzidas para um conjunto de parâmetros, como banda passante necessária para transmissão das informações, retardo máximo permitido e taxa de erros aceitável pelo tipo de informação sendo transmitida. De acordo com [VKBG94], qualidade de serviço, para um sistema distribuído, pode ser definida como: “O conjunto das características qualitativas e quantitativas de um sistema multimídia distribuído, necessárias para alcançar a funcionalidade necessária de uma aplicação”. Uma definição que considera o ponto de vista tanto da aplicação quanto do sistema é dada em [Lu96], na qual “QoS é uma especificação qualitativa e quantitativa de uma necessidade da aplicação, que um sistema multimídia deve satisfazer para obter a qualidade desejada para a aplicação”. Tendo como base esta definição, existem dois aspectos de QoS: as aplicações especificam os requisitos de QoS e os sistemas fornecem garantias de QoS. A noção de QoS foi utilizada inicialmente em comunicações de dados para caracterizar o desempenho de transmissão de dados em relação a confiabilidade, retardo e vazão [Lu96]. Os parâmetros de QoS dos sistemas atuais, como OSI (Open Systems Interconnection) e ITU (International Telecommunication Union), permitem a
  • 31. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 22 especificação de alguns requisitos de usuário. Estes requisitos, no entanto, quase nunca são suportados pelas redes. No modelo de referência OSI os parâmetros de QoS são classificados em dois grupos principais: o grupo de parâmetros orientados a desempenho e o grupo de parâmetros não orientados a desempenho [CCG+93]. Este modelo tem um número de parâmetros que descrevem a velocidade e confiabilidade de uma transmissão. Alguns destes parâmetros são vazão, retardo de transmissão, taxa de erros e probabilidade de falha no estabelecimento de conexão. Estes parâmetros não atendem a todas os requisitos de qualidade de uma comunicação multimídia e são utilizados apenas no nível de transporte. Para comunicações multimídia, a QoS deve ser especificada e garantida fim-a- fim, em todos os níveis. Portanto, as aplicações multimídia necessitam de um novo modelo de QoS [Lu96]. O ITU-T define QoS como “O efeito coletivo do desempenho de um serviço, o qual determina o grau de satisfação de um usuário do serviço” [ISO92]. O próprio ITU reconheceu a necessidade de permitir a configuração de QoS em redes ATM (Asynchronous Transfer Mode) e, para tanto, definiu um conjunto de parâmetros. O conceito de QoS em redes ATM é aplicado a três níveis de controle: nível de controle de camada, nível de conexão e nível de controle de célula. Para que uma arquitetura forneça garantias de QoS é necessário que ela possua os seguintes elementos [Lu96]: • Um mecanismo de especificação de QoS para que as aplicações definam seus requisitos; • Controle de admissão para determinar se uma nova aplicação deve ser admitida sem afetar a QoS de outras aplicações já existentes; • Um processo de negociação de QoS tal que possa ser atendido o maior número possível de aplicações; • Alocação e escalonamento de recursos para alcançar o requisito de QoS das aplicações aceitas; • Policiamento de tráfego para garantir que as aplicações gerem dados de acordo com a quantidade especificada na negociação.
  • 32. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 23 Os elementos citados acima são fundamentais para que seja oferecida uma garantia de QoS. Juntamente com estes elementos, podem ser citados outros três elementos necessários para alcançar requisitos de qualidade de aplicações multimídia. Estes outros elementos são: um mecanismo de renegociação de QoS, para que as aplicações possam mudar os valores acordados na especificação inicial; a QoS fornecida às conexões existentes deve ser monitorada para que seja tomada alguma atitude no caso de violação da QoS garantida; e finalmente, devem ser utilizadas técnicas de escalabilidade e de degradação graciosa da QoS para prover serviços satisfatórios às aplicações multimídia. A qualidade de serviço conseguida por um usuário depende de todos os componentes envolvidos em um sistema: o sistema operacional, o sistema de transporte (por exemplo, uma ligação lenta diminui a vazão) ou a aplicação (por exemplo, o banco de dados possui apenas imagens de baixa qualidade) [VKBG94]. Para a transmissão de informações de aplicações multimídia, em particular mídia contínua, é essencial que a qualidade de serviço seja garantida em todo o sistema, incluindo a plataforma de sistema distribuído, o sistema operacional, os dispositivos dos sistemas-fim, o sub-sistema de comunicação, o protocolo de transporte e a rede. É necessário também que o protocolo tenha suporte a negociação de QoS fim-a-fim, renegociação, indicação de degradações de QoS e coordenação sobre as múltiplas conexões relacionadas [CCG+93] [ACH98]. As garantias de QoS fim-a-fim só podem ser alcançadas quando todos os subsistemas do sistema de comunicação fornecerem garantias de QoS em seus níveis locais. Estes subsistemas incluem redes, protocolos de transporte, arquitetura do sistema- fim e um servidor multimídia [Lu96]. As diversas aplicações multimídia possuem diferentes características e cada aplicação necessita de qualidades de serviço diferentes. Como exemplo, podem ser citadas algumas aplicações em conjunto com suas necessidades [DG94]: • Vídeo Compactado. Aplicação com taxa de bits variável, que requer um baixo retardo para um serviço interativo. Existe um requisito para sincronização de fluxos de áudio e vídeo relacionados ou objetos de texto. A tolerância de erro e perda depende da aplicação.
  • 33. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 24 • Áudio não compactado de alta fidelidade. Aplicação com taxa de bits constante, sensível a perda de dados. • Transmissão de voz digital. Serviço interativo que requer baixo retardo. Se não houver compressão da voz digital, a transmissão terá uma taxa de bits constante com a presença de pausas (o serviço pára em alguns instantes e depois continua). Erro ou perda de dados são aceitáveis, mas podem causar problemas. 3.2 Funções de Gerenciamento de QoS Existem três níveis de garantia de qualidade de serviço. Estes níveis são: garantia determinística, estatística e best-effort [HBD96] [Lu96]. Algumas características destes tipos de garantia são discutidas a seguir. • Garantia determinística. Também conhecida como garantia forte. Neste tipo de garantia, a qualidade especificada pelo usuário deve ser atendida sempre. É fornecido um limite para cada parâmetro e este limite deve ser atendido em 100% dos casos. Os recursos normalmente são reservados para a aplicação com base no pior caso e mesmo que os recursos não estejam sendo usados em um determinado momento, eles não podem ser alocados para outras conexões. Por esta razão, este tipo de garantia é mais cara em termos de recursos dos sistemas. • Garantia estatística. Também conhecida como garantia fraca. Neste tipo de garantia, a qualidade especificada pelo usuário deve ser atendida apenas para uma certa percentagem especificada. É dado um valor para cada parâmetro e é então garantido que apenas uma parte das conexões será atendida tendo como limite o valor determinado. Este tipo de garantia utiliza os recursos dos sistemas de uma maneira mais eficiente, pois a utilização dos recursos é baseada em multiplexação estatística, onde os recursos não utilizados por uma aplicação podem ser utilizados por outras aplicações. É difícil de implementar devido à natureza dinâmica do tráfego e da utilização de recursos das aplicações. • Best Effort. É baseada na não garantia ou em garantia parcial. Não provê nenhuma garantia e a aplicação é executada com a quantidade de recursos que estiver
  • 34. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 25 disponível. A maioria dos sistemas de computação atuais operam desta maneira, sobretudo os que utilizam a Internet. São utilizados diferentes tipos de garantia para diferentes tipos de tráfego. Em alguns casos, uma conexão pode usar diferentes níveis de garantia para diferentes parâmetros de QoS [Lu96]. Quando uma conexão é solicitada, o provedor do serviço deve estabelecer uma sessão com a QoS desejada, controlar essa sessão durante sua fase ativa e terminar a sessão quando for solicitado por um dos usuários ou devido a problemas no provedor do serviço, como por exemplo, congestionamento da rede. Para que os requisitos de QoS das aplicações multimídia sejam atendidos, as fases de estabelecimento, manutenção e finalização de uma sessão devem possuir funções de gerenciamento [HBK+95]. As funções de gerenciamento de QoS normalmente são distribuídas através dos diversos componentes do sistema e envolvem a reserva de recursos nesses componentes [HBK+95]. As funções de gerenciamento mostradas na tabela 3.1 são descritas em seguida. Fases Funções de gerenciamento de QoS Especificação da QoS Mapeamento da QoS Estabelecimento Negociação da QoS Reserva de Recurso Contabilização da QoS Monitoração da QoS Renegociação da QoS Alocação Dinâmica de Recurso Manutenção Policiamento da Fonte Adaptação da QoS
  • 35. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 26 Contabilização da QoS Mapeamento da QoS Finalização Finalização da QoS Tabela 3.1 - Fases de uma aplicação e suas respectivas funções de gerenciamento de QoS 1. Especificação e mapeamento de QoS. Funções de mapeamento são necessárias para fazer a tradução entre os parâmetros de QoS externos, vistos pelo usuário, e os parâmetros internos, vistos pelo sistema (vazão, retardo, variação do retardo). 2. Negociação de QoS e reserva de recurso. Permite encontrar uma configuração de sistema que atenda aos requisitos de QoS do usuário. No caso da negociação ser aceita, e os componentes suportarem um nível de QoS específico, cada componente deve dedicar recursos para suportar a QoS desejada. 3. Monitoração de QoS e policiamento da fonte. Permite fazer uma análise constante da QoS fornecida por todo o sistema e/ou por cada componente do sistema. Essa atividade envolve as funções de detectar e notificar qualquer violação da QoS e armazenar informação. 4. Adaptação da QoS. Oferece alternativas de configuração para os casos em que os parâmetros de usuário não são aceitos no processo de negociação. No caso de haver mudanças no ambiente, o processo de adaptação deve fornecer uma degradação suave ao serviço. Em muitas situações pode ser preferível degradar um pouco a qualidade do serviço, violando os parâmetros de QoS negociados, a finalizá-lo. 5. Renegociação da QoS. O processo de renegociação pode ser iniciado pelo usuário ou pelo sistema de comunicação. A renegociação iniciada pelo usuário, permite que este solicite uma melhor qualidade para o seu serviço, ou a degradação do mesmo com o objetivo de baixar o custo. Por outro lado, a renegociação iniciada pelo sistema de comunicação, ocorre geralmente devido a falta de recursos (como, por exemplo, congestionamento na rede) e tem o objetivo de reduzir a qualidade oferecida, para que os serviços não sejam interrompidos. Esse processo será iniciado quando o processo de adaptação automática não tiver sucesso.
  • 36. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 27 6. Contabilização da QoS. A contabilização determina o custo efetivo de um serviço requisitado por um usuário. A contabilização de QoS é uma atividade complexa, devido a grande variedade de QoS requisitada pelas aplicações multimídia distribuídas. A contabilização de QoS deve ser baseada pelo menos no valor de QoS requisitado pelo usuário, senão todos os usuários exigirão a melhor QoS para todas as aplicações. 7. Finalização da QoS. Quando uma aplicação finaliza, todos os componentes que lhe fornecem QoS, devem liberar seus recursos reservados e, para tanto, estes componentes devem receber notificações quando as aplicações são finalizadas. Dentre as funções de gerenciamento de qualidade de serviço descritas acima, as de maior importância para este trabalho são as funções de negociação e renegociação. 3.3 Negociação de QoS Em um sistema de computação, a qualidade de serviço pode ser negociada entre os diversos participantes de uma comunicação. Em um serviço orientado a conexão com ligação ponto-a-ponto, os participantes da negociação são o usuário que inicia a conexão, o usuário destino daquela conexão e o serviço provedor da comunicação. Todas as negociações são baseadas nas primitivas request, indication, response e confirm [DG94]. Quando um serviço multimídia é oferecido em um sistema distribuído, a negociação com o usuário é feita através da execução de um protocolo de negociação envolvendo os diferentes componentes do sistema. De acordo com o número de usuários participantes, existem três tipos de negociação: unilateral, bilateral e triangular [DG94]. Na negociação triangular (figura 3.1) o usuário solicitante do serviço sugere um valor para o parâmetro de QoS na primitiva request (valor sugerido). O valor sugerido pode ser diminuído pelo provedor do serviço antes de ser passado ao usuário destino na primitiva indication. O usuário destino pode também diminuir o valor do parâmetro e retorná-lo na primitiva response. O provedor do serviço passa então esse valor, sem alterá-lo, para o usuário de origem na primitiva confirm. Esse valor é considerado o valor do parâmetro de QoS selecionado [DG94].
  • 37. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 28 Request Indication Response Confirm Valor do parâmetro de QoS QoS_req QoS_ind QoS_resp QoS_conf Usuário Chamador Usuário Chamado Figura 3.1 - Negociação Triangular A negociação bilateral é executada apenas entre os dois usuários do serviço e o provedor do serviço não pode modificar os valores dos parâmetros propostos. Na negociação unilateral nem o provedor do serviço nem o usuário destino podem modificar o valor do parâmetro de QoS requisitado pelo usuário solicitante. 3.3.1 Passos da negociação Em um processo de negociação de qualidade de serviço podem ser destacados três passos principais [HBK+95]: 1. Definição dos requisitos do usuário. O usuário é o principal agente no processo de negociação da qualidade de serviço, que acontece no estabelecimento de uma conexão ou no processo de renegociação. Os requisitos de QoS são primeiramente definidos em parâmetros a nível de usuário, os quais devem posteriormente ser traduzidos para parâmetros internos correspondentes. 2. Seleção de uma configuração funcional. Nesse passo deve ser feita a escolha de uma configuração funcional apropriada, dentre as possíveis configurações que podem ser consideradas, com base no serviço requisitado e nos parâmetros QoS especificados. 3. Seleção de uma configuração física. As principais fases desse processo de seleção são: alocação funcional para componentes do sistema físico, refinamento da configuração funcional, otimização das alocações de recursos e comprometimento de recursos.
  • 38. Autor: Ana Luiza Bessa de Paula Barros Diniz Orientador: José Marcos Silva Nogueira 29 3.3.2 Componentes do sistema envolvidos na negociação de QoS Para que um sistema de computação ofereça o serviço de negociação de QoS, é necessário que vários componentes do sistema estejam envolvidos no processo. Alguns destes componentes são a rede de alta velocidade, o protocolo de transporte, o dispositivo de apresentação e o servidor multimídia. Estes componentes são descritos a seguir. 1. Rede de alta velocidade. Para suportar a transferência de aplicações multimídia, as redes de comunicação devem ser capazes de transferir vários tipos de mídias com diferentes QoS. Essa rede deve ser capaz de suportar taxas de transferência constantes e variáveis, transportar informações com diferentes taxas de transmissão (variando de dezenas de bits por segundo a milhões de bits por segundo), suportar serviços de comunicação de grupo e de difusão, transmitir informações de mídias diferentes da mesma maneira (sem fazer distinção em relação a natureza da informação) e suportar mecanismos de gerenciamento de banda passante. Alguns parâmetros de QoS, básicos para a transmissão de aplicações multimídia, devem ser oferecidos na interface de rede. Esses parâmetros são: − Retardo. Retardo introduzido pelo componente de rede para transportar uma unidade de dados da informação a ser transmitida. É contabilizado a partir da interface fonte de transmissão até a interface destino. − Confiabilidade. Indica se o serviço é confiável ou não. Em caso de um serviço não confiável, deve ser indicado um valor para a taxa de perda. − Variação do retardo. Diferença entre o retardo mínimo e o retardo máximo. − Vazão. Quantidade de unidades de dados transferidas em um determinado período de tempo. − Tipo de garantia. Permite especificar se parâmetros como vazão, retardo e variação do retardo são suportados com alguma garantia ou pelo melhor esforço. − Custo. Custo que a rede cobra de seus clientes. Pode ser expresso em termos de tempo de utilização ou unidades de dados transferidas, ou ainda uma combinação dos dois. 2. Protocolo de transporte. A execução dos protocolos de comunicação podem introduzir retardo e variação do retardo na transmissão. Para suportar a QoS requerida por uma
  • 39. Dissertação de Mestrado em Ciência da Computação - DCC/UFMG - 26/03/98 30 aplicação, é necessária uma garantia da velocidade de execução do protocolo de transporte. Portanto, os parâmetros de vazão, retardo e variação do retardo devem ser limitados no nível de transporte. Os parâmetros de QoS para a interface do protocolo de transporte são os mesmos para a interface de rede. 3. Dispositivo de apresentação. A atividade de passar os dados de uma aplicação multimídia para o dispositivo de apresentação pode introduzir diferentes valores de retardo e variação do retardo. Dessa maneira, o dispositivo utilizado deve fornecer garantias para suportar o retardo e a variação do retardo solicitados. 4. Servidor multimídia. Fornece armazenamento confiável e coerente de documentos multimídia, bem como acesso concorrente a esses documentos e seus componentes. O servidor de banco de dados está presente no processo de negociação de QoS para fornecer informação sobre sua condição de satisfazer o nível de QoS requisitado. 3.4 Renegociação As comunicações multimídia normalmente não possuem um comportamento estático e, durante uma sessão ativa, necessitam alterar os parâmetros de QoS que foram negociados no início da transmissão, no processo de admissão da conexão. A mudança nos parâmetros de QoS pode se dar por várias razões. Algumas destas razões são [Lu96]: o usuário inicialmente requisitou uma sessão com uma alta qualidade e durante esta sessão ele deseja diminuir a qualidade devido ao custo; o usuário requisitou inicialmente uma baixa qualidade para um canal de vídeo e, durante a transmissão, decide aumentar a qualidade; o usuário solicitou no início da transmissão uma sessão com um canal de vídeo e um canal de áudio e durante o processo de comunicação é necessário um canal extra para acessar um banco de dados multimídia. Portanto, é necessário prover mecanismos de renegociação de QoS para atender a mudanças nos parâmetros de qualidade acordados no início da transmissão. Algumas vezes pode não ser possível aumentar a qualidade atual, pois em um determinado momento o sistema pode não possuir recursos disponíveis. A função de renegociação permite alterar os parâmetros de QoS estabelecidos na fase de negociação. Essa alteração possibilita que aplicações que não possuam uma QoS constante durante seu tempo de execução possam alterar seus requisitos, liberando