• Nenhum resultado encontrado

Algoritmos Distribuídos na Computação Móvel

4.3. Software versus Computação Móvel

4.3.3. Algoritmos Distribuídos na Computação Móvel

Normalmente, há uma dificuldade em se executar diretamente algoritmos distribuídos clássicos num ambiente de computação móvel. Isso se deve ao fato de que tais algoritmos não consideram a mobilidade nem a restrição de recursos desses computadores, por essa razão é necessário aplicar outros princípios de projeto de algoritmos distribuídos [44].

Alguns dos algoritmos distribuídos que tem sido estudado recentemente para a computação móvel são: definição de mecanismos de ordenação de eventos,

propagação de informação em uma rede comunicação, controle de concorrência, coordenação entre processos e comunicação em grupos (multicasting).

Bancos de dados também são influenciados pela presença de usuários moveis, novos paradigmas de transação devem ser desenvolvidos de forma a tratar usuários que se movimentam e s desconectam durante a realização de uma transação. Deve-se criar mecanismos, como, por exemplo, uso de cache e manutenção da consistência de dados, para o tratamento de consultas quando a unidade móvel se encontra desconectada da rede comunicação. Deve-se criar consultas que sejam otimizadas visando a economia de energia e não a quantidade de informação transmitida.

Esta postura tem levado ao desenvolvimento de esquemas de processamento que permitam a migração de tarefas que consomem grande quantidade de energia, de unidade moveis a estações fixas, com o resultado retornado posteriormente para unidade móvel. Normalmente, isto tem sido feito através de agentes móveis. Também têm sido desenvolvidas técnicas para tratamento de falta de energia na unidade móvel, o que permite que dados críticos existentes na memória principal possam ser deslocados para uma região de memória estática quando vai acabar a energia disponível. Este é um caso típico de projeto de sistema considerando a utilização de hardware e software simultaneamente (hardware/software co-design).

Para mostrar quais os aspectos que devem ser considerados nos projetos de algoritmos distribuídos na computação móvel, criamos a Tabela 4.b. que relaciona o agente motivador e o tema que deve ser discutido. Que em síntese faz um sumário dos principais fatores que afetam o projeto de algoritmos.

Tabela 4.b. - Fatores versus Questões.

Fator Questão a ser considerada

Mobilidade ?? A topologia do sistema é dinâmica

Conservação de energia ?? Deve ser um requisito de projeto de hardware quanto de software Características do meio

de comunicação

?? Largura de banda limitada;

?? Altas taxas de bits errados e sinal-ruído.

Custo de comunicação ?? Custo por localizar a unidade móvel + Custo comunicação que é depende das características de enlace sem fio num determinado momento;

?? Transmissão consome mais energia que recepção;

?? Tarifação do meio normalmente é função do tempo da conexão e não do número de mensagens transmitidas.

Modo típico de operação

?? Modo “doze” para economizar energia;

?? Ao receber uma mensagem o computador móvel entra no modo normal de operação. Conexão com a rede

fixa

?? Depende do cliente (aplicação): conectado, conectado às vezes ou tipicamente desconectado;

?? As desconexões são mais freqüentes do que na rede fixa.

Escalabilidade ?? Distância entre os clientes (processos ou nodos) é totalmente variável;

?? Algoritmos que funcionam para poucos clientes devem funcionar para um número arbitrário de clientes.

Configuração dos clientes

?? Geralmente são heterogêneos com capacidade e recursos diferentes;

?? Comparadas com as estações de rede fixa, as unidades móveis possuem menos capacidade e recursos.

4.4. Resumo do Capítulo

Este capítulo apresentou de maneira abrangente os sistemas celulares suas tecnologias e serviços disponíveis, juntamente com os fatores relacionados ao desenvolvimento de projetos de hardware e software, tais como: mobilidade, variação nas condições de comunicação e gerenciamento de energia. Problemas relacionados com a computação móvel também foram abordados, entre eles: serviços de informação, gerência de dados, protocolos para suporte e algoritmos distribuídos. O próximo capítulo tem como objetivo identificar as principais funções e estruturas de provisão de QoS.

Capítulo 5

Qualidade de Serviço

O objetivo desse capítulo é caracterizar os serviços e identificar as principais funções e estruturas de provisão de qualidade de serviço (QoS - Quality of Service). Desta forma espera-se facilitar a compreensão das simulações efetuadas utilizando os critérios de QoS aos cenários identificados. Inicialmente, abordamos o conceito de QoS descrevendo como se pode garantir a qualidade de serviços e suas aplicações. Como a QoS é diferenciada nas redes fixas e móveis, estas características serão tratadas distintamente em seções posteriores.

A QoS é fundamental para diversos tipos de aplicações, sobretudo as multimídias, pois é desejável que haja um sincronismo entre as diversas mídias [93]. A exemplo a vídeo-conferência, o som deve estar sincronizado com a imagem, ou seja, deve haver sincronia entre o som das palavras e os movimentos dos lábios das pessoas.

Os atuais avanços tecnológicos na área de redes de computadores têm propiciado um crescente aumento das taxas de transmissão, tornando possível falar mais amplamente em qualidade de serviço, pois tradicionalmente o que se tem em redes é o modelo do melhor esforço (best-effort) [6], no qual a grande preocupação reside em entregar os dados corretamente para a outra entidade participante da comunicação.

Outras aplicações podem negociar com a rede a probabilidade de queda da conexão, não se preocupando com a velocidade de transmissão nem com o sincronismo, mas desejando-se que a conexão tenha um certo grau de confiabilidade. Isto é interessante principalmente em redes móveis sem fio nas quais as quedas de conexões são freqüentes.

Pode-se notar, a partir desses exemplos que o estudo de QoS depende do contexto no qual se está inserido, ou seja, além de se analisar os requisitos de QoS em redes de computadores, deve ser levado em consideração se a rede é fixa, móvel sem fio, ou um misto dos dois tipos de redes, o que é mais provável quando se tem uma parte móvel envolvida.

Como se pode perceber, a definição de QoS é um tanto subjetivo [84], podendo variar de aplicação para aplicação de acordo com as características desejadas para o serviço oferecido pela rede. Porém, de alguma forma, esta subjetividade inicial deve ser traduzida em parâmetros a serem negociados entre as aplicações e a rede. A seguir iremos discutir como garantir a QoS desejada.