• Nenhum resultado encontrado

PROCESSAMENTO ADAPTATIVO DE CONSULTAS EM REDES DE SENSORES SEM FIO

N/A
N/A
Protected

Academic year: 2021

Share "PROCESSAMENTO ADAPTATIVO DE CONSULTAS EM REDES DE SENSORES SEM FIO"

Copied!
138
0
0

Texto

(1)

ARETUSA MARIA ALMEIDA LOPES

PROCESSAMENTO ADAPTATIVO DE CONSULTAS

EM REDES DE SENSORES SEM FIO

Fortaleza

2006

(2)

Livros Grátis

http://www.livrosgratis.com.br

(3)

FUNDAÇÃO EDSON QUEIROZ

UNIVERSIDADE DE FORTALEZA – UNIFOR

ARETUSA MARIA ALMEIDA LOPES

PROCESSAMENTO ADAPTATIVO DE CONSULTAS

EM REDES DE SENSORES SEM FIO

Dissertação apresentada ao Curso de Mestrado em Informática Aplicada da Universidade de Fortaleza como requisito parcial para a obtenção do Título de Mestre em Ciências da Computação.

Orientador: Prof. Dr. Angelo Roncalli Alencar Brayner

Fortaleza

2006

(4)

ARETUSA MARIA ALMEIDA LOPES

PROCESSAMENTO ADAPTATIVO DE CONSULTAS

EM REDES DE SENSORES SEM FIO

Data de Aprovação: ___________________

Banca Examinadora:

_____________________________________

Prof. Angelo Roncalli Alencar Brayner, Dr.-ing.

(Presidente da Banca)

_____________________________________

Prof. Javam de Castro Machado, Dr.

(Universidade Federal do Ceará - UFC)

____________________________________

Prof. André Luís Vasconcelos Coelho, Dr.

(Universidade de Fortaleza - UNIFOR)

(5)

LOPES, ARETUSA MARIA ALMEIDA

Processamento Adaptativo de Consultas em Redes de

Sensores Sem Fio [Fortaleza] 2006

135p., 29,7 cm (MIA/UNIFOR, M. Sc, Ciência da Computação, 2006) Dissertação de Mestrado – Universidade de Fortaleza, MIA

1. Banco de Dados

2. Processamento Adaptativo de Consultas

3. Redes de Sensores Sem Fio

(6)

Ao Magno, meu marido, e

Rafael e Maristela, meus pais.

(7)

AGRADECIMENTOS

A Deus por me dar forças para concretizar meus objetivos e coragem para enfrentar os obstáculos.

Aos meus pais, Rafael e Maristela, que me ensinaram a buscar meus sonhos guardando valores essenciais como perseverança e honestidade.

Ao meu marido e amigo, Magno, por sua compreensão e incentivo na realização de meus objetivos.

Aos meus irmãos, Ranniere e Rafael, pelo apoio e presteza que sempre me dispensaram.

Ao professor Ângelo Brayner, pelo seu excelente trabalho de orientação que possibilitou a concretização desta dissertação.

Ao amigo Ricardo Vasconcelos, que trabalhou incansavelmente na implementação das propostas apresentadas neste trabalho.

Ao professor Ronaldo Menezes por suas importantes sugestões na revisão dos textos e idéias aqui incluídos.

Aos amigos, Marcos Câmara, Fábio Bezerra, Fernando Parente, Gabriel Júnior, Sergiana Freitas, Gabriela Teles, Nadja Helene e Karol Castro pelo apoio e ajuda.

Ao SERPRO (Serviço Federal de Processamento de Dados) pelo apoio durante o andamento do mestrado.

E a todas as pessoas que contribuíram, direta ou indiretamente, para a realização deste trabalho, meus sinceros agradecimentos.

(8)

Resumo da Dissertação apresentada ao MIA/UNIFOR como parte dos requisitos necessários para a obtenção do título de Mestre em Ciência da Computação.

PROCESSAMENTO ADAPTATIVO DE CONSULTAS EM

REDES DE SENSORES SEM FIO

Aretusa Maria Almeida Lopes Novembro / 2006

Orientador: Dr.-Ing. Ângelo Roncalli Alencar Brayner Programa: Ciência da Computação

Uma Rede de Sensores Sem Fio (RSSF) consiste de grupos de nós-sensores que coletam dados do meio ambiente, como forma de prover informações a respeito de um ou mais fenômenos físicos. Em uma RSSF, os nós-sensores agem colaborativamente, de modo que os dados são passados de um nó para o outro da rede, até alcançarem uma estação-base, requisitante da informação. Estratégias de processamento de consultas destinadas a extrair dados de uma RSSF deveriam ser capacitadas a lidar com as sérias restrições de recursos dos nós da rede: (i) limitada capacidade de processamento, armazenamento e disponibilidade de energia dos nós-sensores; e (ii) limitada disponibilidade de memória principal das estações-base. Esta dissertação propõe um mecanismo para realizar o processamento adaptativo de consultas em RSSFs, a qual consiste em ajustar o processamento da consulta à disponibilidade de recursos dos nós da rede. Adicionalmente, também são investigados caminhos para a especificação de consultas declarativas e modelagens de dados, no contexto das RSSFs. Desta forma, esta dissertação explora o uso da tecnologia de banco de dados como instrumento para prover um uso mais eficiente dos recursos físicos das RSSFs, bem como tornar os detalhes físicos destas redes “transparentes” ao usuário.

(9)

Abstract of Thesis presented to MIA/UNIFOR as a partial fulfillment of the requirements for the degree of Master of Science Computer

ADAPTIVE QUERY PROCESSING IN

WIRELESS SENSOR NETWORKS

Aretusa Maria Almeida Lopes November / 2006

Advisor: Dr.-Ing. Ângelo Roncalli Alencar Brayner Department: Computing Science

A Wireless Sensor Network (WSN) consists of groups of sensor nodes which collect data from the environment in order to provide information about one or more physical phenomena. In a WSN, sensor nodes act in a collaborative way. Collected data are passed from sensor to sensor until the base station is reached, which is responsible for the information request. Query processing strategies responsible for extracting data from a WSN should be able to deal with serious node resource constraints: (i) limited processing capability, memory and battery power of the sensor nodes; and (ii) limited main memory availability of the base stations. This dissertation proposes an approach to perform adaptive query processing in WSNs, which consists in adjusting query processing according to node resource availability. In addition, approaches to specify declarative queries and data models are also investigated in the context of WSNs. Thus, this dissertation exploits database technology as an instrument to provide a higher efficient use of WSN physical resources, as well as to make physical network details “transparent” to users.

(10)

SUMÁRIO

LISTA DE FIGURAS...xiii LISTA DE TABELAS...xv Capítulo Página 1 INTRODUÇÃO 1.1 Motivação...16 1.2 Objetivos...18 1.3 Estrutura do trabalho...19

2 REDES DE SENSORES SEM FIO 2.1 Introdução...20 2.2 Nós-sensores...21 2.2.1 Arquitetura do nó-sensor...21 2.2.2 Nós-sensores inteligentes...23 2.2.2.1 PicoNodes...23 2.2.2.2 µamps...25 2.2.2.3 MicaMotes...26 2.2.2.4 WINS...27

2.3 Aspectos de redes de sensores sem fio (RSSFS)...28

2.3.1 Consumo de energia...28 2.3.2 Tolerância a falhas...30 2.3.3 Sensoriamento...31 2.3.4 Processamento...31 2.3.5 Topologia...33 2.3.6 Escalabilidade...33 2.3.7 Comunicação... ...34 2.3.8 Roteamento...35 2.3.8.1 Flooding...37 2.3.8.2 Gossiping...37 2.3.8.3 SPIN...38 2.3.8.4 SMECN...……..39

(11)

2.3.8.5 SAR...39

2.3.8.6 LEACH...40

2.3.8.7 Directed diffusion...40

2.4 Considerações finais...41

3 PROCESSAMENTO DE CONSULTAS EM REDES DE SENSORES SEM FIO 3.1 Introdução... 42

3.2 Sistemas de fluxos de dados... 42

3.2.1 Adaptabilidade... 44 3.2.2 Aproximação de resultados... 45 3.2.2.1 Histogramas...45 3.2.2.2 Wavelets...45 3.2.2.3 Sliding Windows...……...46 3.2.2.4 Punctuations...47 3.2.2.5 Sketches...…...47 3.2.2.6 Sampling...48

3.2.3 Pesquisas acadêmicas em processamento de fluxos de dados...48

3.3 Sistemas de fluxo de dados para RSSFs...50

3.3.1 Armazenamento temporário de dados em RSSFs... ...50

3.3.2 Modelo de dados para fluxos de dados em RSSFs...52

3.3.3 Processamento de consultas em RSSFs...54

3.3.3.1 Agregação de dados em RSSFs...55

3.3.3.2 Aproximação de resultados em RSSFs... 57

3.3.4 Linguagens de consultas aplicáveis a RSSFs... 59

3.3.4.1 Linguagem aquisicional TinyDB... 60

3.3.4.2 CQL...61

3.3.4.3 GSQL...62

3.3.4.4 SQTL...63

3.3.5 Pesquisas acadêmicos em processamento de dados em RSSFs..64

3.3.5.1 SINA...64

3.3.5.2 Cougar...64

3.3.5.3 TinyDB...65

(12)

4 UMA ESTRATÉGIA PARA O PROCESSAMENTO DISTRIBUÍDO DE CONSULTAS EM REDES DE SENSORES SEM FIO

4.1 Introdução...68

4.2 RSSFs com topologia Scale-free...68

4.3 Modelo de dados proposto...72

4.4 Aplicação-exemplo...73

4.5 SNQL- Uma linguagem de consultas para RSSFs...74

4.5.1 Especificação...76

4.5.2 Suporte à agregação de dados...79

4.5.3 Análise comparativa com outras linguagens...81

4.6 Processamento de consultas...83 4.6.1 Análise...84 4.6.2 Decomposição...84 4.6.3 Processamento de fragmentos...85 4.6.4 Processamento final...86 4.7 Considerações finais...86

5 ADAGA – AGREGAÇÃO DE DADOS EM RSSFs 5.1 Introdução...88

5.2 Propriedade do algoritmo ADAGA...88

5.3 Estágios do algoritmo ADAGA...90

5.4 Monitoramento de recursos dos nós-sensores...93

5.5 Estratégia de roteamento de pacotes ...98

5.6 Análise...102

5.7 Considerações finais...106

6 ADAPT – OPERADOR ADAPTATIVO DE JUNÇÃO 6.1 Introdução...107

6.2 Propriedades do algoritmo ADAPT...107

6.3 Estágios do algoritmo ADAPT...109

6.4 Estratégia para evitar duplicações de resultados...117

6.5 Análise...120

(13)

7 CONCLUSÃO E TRABALHOS FUTUROS...125 REFERÊNCIAS BIBLIOGRÁFICAS...129

(14)

LISTA DE FIGURAS

Figura Página

2.1 Componentes de um nó-sensor inteligente... 22

2.2 PicoNode, nó-sensor desenvolvido na Universidade da Califórnia... 24

2.3 µAMPS, nó-sensor desenvolvido no MIT...………. 26

2.4 Mica2, nó sensor desenvolvido na Universidade da Califórnia... 27

2.5 WINS, nó-sensor desenvolvido na Universidade da Califórnia... 28

2.6 Exemplo de agregação em rede... 32

4.1 Arquitetura simplificada de uma RSSF de organização scale-free... 69

4.2 Generalização de uma RSSF com organização scale-free... 71

4.3 Modelo de dados para aplicações executadas sobre RSSFs... 72

4.4 Modelo de dados - aplicação em biocomplexidade ambiental... 73

4.5 Exemplo de consulta escrita em SNQL... 78

4.6 Estratégia admitida para o processamento de consultas em RSSFs... 83

5.1 Estágios do algoritmo ADAGA... 92

5.2 Agregação em rede utilizando dois diferentes valores de SEND INTERVAL... 93

5.3 Função de ajuste do valor de SEND INTERVAL à disponibilidade de energia... 95

5.4 Função de ajuste do valor de SENSE INTERVAL à disponibilidade de memória... 96

5.5 Distorções nos resultados da consulta, devido à reprodução de pacotes e uso da agregação em rede... 99

5.6 Agregação em rede aplicada pelo algoritmo ADAGA... 101

5.7 Consulta utilizada para avaliação dos resultados produzidos por ADAGA.. 103

5.8 (a) Resultados obtidos para o cálculo da média de temperaturas coletadas. (b) Quantidade de detecções computadas para o cálculo da média de temperaturas... 104

(15)

5.10 Volume de dados produzidos, considerando diferentes funções de

agregação... 106

6.1 Conversão de pacotes de dados em tabelas armazenadas em área temporária na estação-base... 110

6.2 Primeiro estágio: comparação entre tuplas de partições correspondentes, alocadas em memória, pertencentes às duas relações envolvidas na operação de junção... 112

6.3 Situação da alocação de tuplas após o envio de dados para disco... 112

6.4 Políticas de escolha de partições-vítimas. (a) Política adotada no algoritmo XJoin. (b) Política adotada no algoritmo ADAPT... 114

6.5 Segundo estágio: comparação entre tuplas em disco de uma partição com as tuplas em memória da partição correspondente da outra relação.. 115

6.6 Terceiro estágio: comparação entre tuplas em disco de uma partição com as tuplas, em memória e em disco, da partição correspondente da outra relação... 116

6.7 Envio de partição para disco e geração da tabela de controle... 118

6.8 Propriedades exploradas na tabela de controle adotada por ADAPT... 119

(16)

LISTA DE TABELAS

Tabela Página

3.1 Aspectos que diferenciam SBDs e SFDs...... 43

3.2 Exemplo de aplicação da técnica de Wavelets... 46

3.3 Tipos de consulta comuns em aplicações executadas em RSSFs... 59

3.4 Cláusulas definidas para a linguagem aquisicional proposta no TinyDB... 60

3.5 Operadores adotados na linguagem de consultas CQL... 62

4.1 Especificação das cláusulas admitidas na SNQL... 76

4.2 Funções de agregação admitidas na especificação da linguagem SNQL... 79

4.3 Resultados parciais obtidos para diferentes funções de agregação... 80

4.4 Análise das propriedades suportadas em LCA, SQTL e SNQL... 81

(17)

INTRODUÇÃO

4.1 Motivação

A evolução dos sistemas eletrônicos, eletro-mecânicos e de comunicação sem fio tem levado a grandes avanços na área de Redes de Sensores Sem Fio (RSSFs) [62]. As novas gerações de RSSFs são dotadas de nós-sensores capazes de processar e disseminar dados coletados do ambiente para um ponto da rede onde a informação foi inicialmente requisitada.

A possibilidade de colaboração entre os nós-sensores viabilizou o desenvolvimento de poderosas aplicações nas mais diversas áreas do conhecimento como, por exemplo, de engenharia, médica, militar e industrial. Aplicações comuns de RSSFs incluem o monitoramento ambiental (por exemplo, retorno de informações sobre condições do habitat de vidas selvagens, detecção de incêndios em florestas e medição de níveis de poluição), o monitoramento de infra-estruturas (por exemplo, detecção de fissuras em pontes, medição dos níveis de açudes e monitoramento da distribuição de água), além do acompanhamento de operações de guerra (por exemplo, detecção da localização de soldados, mapeamento dos movimentos de tropas inimigas e detecção de ataques químicos). Entre os grandes desafios enfrentados por estas aplicações estão a suscetibilidade a falhas, a mobilidade e as fortes restrições de hardware dos nós sensores (limitada capacidade de processamento, armazenamento e disponibilidade de energia) [1]. Estas características requerem novas representações de modelos computacionais, algoritmos, protocolos, metodologias de projeto e ferramentas, especialmente adequados às especificidades das RSSFs.

Nos últimos anos, o número de pesquisas envolvendo a tecnologia de banco de dados e as RSSFs vem sendo crescente [39][52][57]. Algumas propostas, defendidas no escopo destas pesquisas, tratam uma rede de sensores como um grande banco de dados distribuído. Neste cenário, consultas são submetidas à rede através de um computador central (estação-base), que é um nó robusto quanto à capacidade de processamento e armazenamento. Em resposta, dados são

(18)

coletados do ambiente pelos nós-sensores e passados de um nó para o outro, até alcançarem a estação-base, onde o resultado da consulta é finalmente disponibilizado ao usuário requisitante da informação. Desta forma, observa-se que o nó-sensor, a infra-estrutura de comunicação e a estação-base são pontos críticos em uma RSSF.

A contribuição da tecnologia de banco de dados para as RSSFs está presente, principalmente, na aplicação de técnicas de processamento de consultas, as quais podem ser capacitadas a disponibilizar resultados de consultas incrementalmente, além de promover o uso eficiente dos recursos dos nós da rede. A produção incremental de resultados é importante, particularmente, quando se admitem consultas denominadas contínuas, as quais são permanentemente executadas e os seus resultados continuamente atualizados e entregues ao usuário. O uso eficiente dos recursos da rede pode ser obtido com a aplicação de operações sobre os dados, como agregações ou junções, as quais busquem reduzir o volume de dados enviados através da rede. O tempo de vida de um nó-sensor é extremamente dependente da disponibilidade de energia da sua bateria. Visto que o consumo de energia é proporcional ao volume de dados transmitido ou recebido pelo nó [1], o uso de estratégias que resultem em um menor volume destes dados transmitidos pode levar a economias significativas de energia, contribuindo para aumentar a sobrevida do nó-sensor.

A infra-estrutura de comunicação tem como foco tanto os protocolos de roteamento de pacotes como o uso eficiente de energia na rede. Por exemplo, protocolos de roteamento devem evitar a “inundação” da rede, provocada pela excessiva duplicação de pacotes. O tráfego de um grande número de pacotes na rede tem duas conseqüências negativas. A primeira é o aumento das chances de colisão, o que certamente resulta em maiores taxas de perdas de pacotes. A segunda é a elevação dos gastos de energia, o que impacta diretamente no tempo de vida da rede como um todo.

Uma RSSF comumente é composta por centenas ou até milhares de nós- sensores [1]. Logo, o volume de dados enviado à estação-base pode vir a ser muito grande. Embora não tendo as mesmas restrições de recursos dos nós-sensores, a estação-base pode representar um gargalo para a aplicação, visto que as operações

(19)

previstas nas consultas submetidas à rede, como agregações ou junções, podem vir a manipular um volume de dados maior do que a capacidade da memória principal, forçando com que parte dos dados seja enviada para disco, como forma de evitar perda de dados. Neste caso, torna-se necessária a adoção de políticas eficientes de alocação de dados entre disco e memória principal, as quais suportem o tratamento de um montante de dados que, geralmente, é indeterminado, devido à ausência de estatísticas.

Observa-se que a limitação de recursos, em menor ou maior proporção, encontra-se em todos os pontos críticos de uma RSSF. Desta forma, algoritmos e protocolos, projetados para estas redes, deveriam ser sensíveis às restrições de energia e memória, de maneira a serem capacitados a adaptarem-se a cada novo cenário apresentado à rede.

4.2 Objetivo

Neste trabalho é explorado o processamento adaptativo de consultas [4] como estratégia para alcançar maior eficiência na execução de consultas e no uso dos recursos da rede, no escopo das RSSFs. Pela adaptação, algoritmos são capacitados a ajustar seu comportamento em resposta à ocorrência de eventos específicos, como restrições de energia e memória, em um determinado momento do tempo. Neste contexto, são propostos dois algoritmos adaptativos: o ADAGA, que realiza a filtragem e agregação dos dados em nós-sensores; e o ADAPT, que processa consultas do tipo junção-agregação na estação-base. O objetivo do ADAGA é maximizar o tempo de vida do nó-sensor através do monitoramento pró-ativo do uso de energia e memória, ajustando as atividades do nó-sensor de acordo com a disponibilidade destes recursos. O ADAPT, por sua vez, tem o objetivo de permitir a produção incremental dos resultados de uma consulta, aspecto de grande relevância em uma RSSF, visto que comumente as consultas submetidas a estas redes são contínuas.

Adicionalmente, duas outras contribuições são obtidas neste trabalho. A primeira consiste em especificar um modelo de dados genérico, que captura as características de uma RSSF, com o objetivo de relacionar diferentes fenômenos físicos monitorados. A vantagem do uso de um modelo de dados é permitir ao usuário uma visão lógica do fluxo de dados manipulado pelo sistema (aplicação

(20)

executada em uma RSSF), sendo o fluxo de dados caracterizado como sendo uma cadeia não estruturada de dados que é ordenada temporalmente. A segunda consiste em uma linguagem de consultas para RSSFs, denominada SNQL (Sensor Network Query Language). A linguagem SNQL estende o padrão SQL pela adição de cláusulas específicas para as RSSFs, as quais fornecem os valores de parâmetros necessários à execução dos algoritmos propostos, ADAGA e ADAPT.

4.3 Estrutura do trabalho

Este trabalho está organizado conforme descrito a seguir. O Capítulo 2 discute aspectos fundamentais ligados à área de redes de sensores sem fio, bem como algoritmos e protocolos propostos para estas redes. O Capítulo 3 investiga os aspectos ligados ao processamento de dados em RSSFs. Primeiramente, são apresentadas algumas das propostas existentes para permitir o processamento adaptativo de fluxos de dados e a aproximação de resultados de consultas, conceitos aplicáveis a RSSFs. Em seguida, são abordadas linguagens de consultas para manipulação de fluxos de dados e as principais propostas de bancos de dados para redes de sensores. No Capítulo 4 é apresentado o cenário, considerado neste estudo, para o processamento de consultas em RSSFs, bem como o modelo de dados admitido e a especificação da linguagem de consultas SNQL. Nos Capítulos 5 e 6 são apresentadas as propostas para otimização do uso dos recursos físicos da rede, através da aplicação dos algoritmos de processamento de consultas ADAGA e ADAPT. Finalmente, o Capítulo 7 discute as conclusões e os trabalhos futuros.

(21)

REDES DE SENSORES SEM FIO

2.1 Introdução

Os sensores vêm sendo largamente utilizados em aplicações destinadas a detectar eventos específicos ou coletar dados sobre propriedades ambientais. Apesar de pequenos e com uma diminuta capacidade de processamento e armazenamento, um conjunto de sensores reunidos em uma rede sem fio (Rede de Sensores Sem Fio - RSSF) oferece suporte ao desenvolvimento de poderosas aplicações. Estas redes vêm sendo particularmente utilizadas por aplicações que requerem pouca ou nenhuma intervenção humana.

Basicamente, uma RSSF é responsável pela disseminação dos dados coletados pelos sensores, embutidos nos nós da rede (nós-sensores), fazendo com que estes dados cheguem ao usuário requisitante da informação. Algumas características comuns a estas redes incluem [27]:

(i) capacidade de auto-organização;

(ii) utilização de nós-sensores com limitações de energia, poder de comunicação, memória e capacidade de processamento;

(iii) comunicação broadcast, utilizando freqüências de rádio e protocolos de roteamento do tipo múltiplos saltos;

(iv) existência de um grande número de nós-sensores densamente organizados em uma área geográfica;

(v) realização de trabalho colaborativo entre os nós-sensores; e

(vi) alteração dinâmica da topologia da rede, devido a falhas e/ou mudanças na localização dos nós.

Neste capítulo, são investigadas as características físicas dos nós-sensores (Seção 4.2) e os aspectos a serem avaliados no projeto de RSSFs (Seção 2.3).

(22)

2.2 Nós-sensores

Um nó sensor é um dispositivo capaz de coletar dados através da detecção de sinais ou de eventos ocorridos no meio ambiente, atividades conhecidas como sensoriamento. Outras tarefas destes dispositivos em uma rede de sensores incluem a recepção e o envio de pacotes através da rede, com o objetivo de atender a requisições do usuário. Adicionalmente, nós-sensores inteligentes são dotados com processador e memória, sendo capacitados a avaliar e transformar os dados coletados. Além da restrita capacidade computacional e de armazenamento, estes equipamentos têm o seu tempo de vida limitado à disponibilidade de energia da sua bateria. Por este motivo, uma das principais preocupações dos algoritmos projetados para os nós-sensores é reduzir o consumo de energia da bateria, como forma de aumentar a sobrevida do nó. Nas próximas subseções são apresentados a arquitetura básica dos nós-sensores (Subseção 2.2.1) e alguns dos nós-sensores desenvolvidos no contextos de pesquisas acadêmicas e comerciais (Subseção 2.2.2).

2.2.1 Arquitetura do nó-sensor

Sensores mais simples são capazes apenas de captar informações do ambiente e enviá-las a outros nós da rede. Um nó-sensor é composto, basicamente, de um dispositivo de sensoriamento, para captar informações do ambiente; um transceptor, que possibilita a transmissão e recepção de dados; e uma fonte de energia, que alimenta os demais componentes do nó-sensor. Neste tipo de arquitetura, todos os dados coletados do ambiente pelo nó-sensor são enviados através da rede. Assim, se for considerada uma RSSF com um grande número de nós-sensores, o tráfego de pacotes na rede tende a ser muito grande.

Uma evolução dos dispositivos-sensores mais simples é o nó-sensor inteligente, que conta com um microprocessador embutido em sua estrutura. Estes nós são capacitados a processar os dados coletados, antes de enviá-los a outros nós [1].

(23)

Figura 2.1 Componentes de um nó-sensor inteligente.

O processamento de dados pode incluir, por exemplo, a aplicação de técnicas de sumarização dos dados, como forma de reduzir o tamanho e o número dos pacotes enviados através da rede. A Figura 2.1 mostra os componentes físicos básicos de um nó-sensor inteligente [1]. Observa-se que a energia da bateria alimenta as unidades de sensoriamento, processamento e comunicação.

A unidade de sensoriamento é responsável por coletar as informações do ambiente, sendo constituída por um dispositivo-sensor e um conversor de sinal digital. Quando um evento específico é detectado, o conversor analógico-digital converte o sinal analógico, produzido pelo dispositivo-sensor, em um sinal digital, o qual alimenta a unidade de processamento [1].

A “inteligência” do nó sensor é proveniente da unidade de processamento. Esta unidade possui um microprocessador com memória RAM (volátil), que garante ao nó-sensor a capacidade de processar e armazenar dados temporariamente.

A unidade de comunicação conecta o nó-sensor à RSSF, permitindo a transmissão e recepção de pacotes de dados. O dispositivo que constitui esta unidade, denominado transceptor, pode realizar a comunicação sem fio do nó-sensor através de um meio ótico (emissão de raios infravermelho) ou utilizar freqüências de rádio. O infravermelho é um meio de comunicação barato e fácil de construir, porém, requer um sinal dedicado entre transmissor e receptor [59]. Transceptores baseados em freqüências de rádio requerem modulação, banda passante, filtragem, demodulação e multiplexação de circuitos, o que coloca este meio de comunicação entre os mais caros e complexos. Ainda assim, a freqüência de rádio é o meio mais utilizado em RSSFs, devido a algumas características comuns a estas redes que favorecem o uso da freqüência de rádio. Estas

Unidade de suprimento de energia Unidade de sensoriamento

Micro-processador Sensor Conversor

analógico-digital

Unidade de processamento Unidade de comunicação Transceptor Memória(RAM/ROM)

(24)

características incluem o uso de pacotes pequenos, baixas taxas de transmissão e curtas distâncias entre nós-sensores que se comunicam, o que permite o reuso da freqüência do sinal na transmissão e recepção de pacotes [1].

A unidade de suprimento de energia é um dos componentes mais importantes do nó-sensor. Algumas baterias que compõem estas unidades de suprimento são recarregáveis (por exemplo, via uso de células solares), porém, a maior parte das arquiteturas de nós-sensores utiliza baterias de tempo de vida limitado.

Além dos componentes mostrados na Figura 2.1, também podem fazer parte da estrutura física dos nós-sensores outras subunidades como, por exemplo, subunidades responsáveis por fornecer a localização ou permitir a sincronização na recepção e envio de pacotes entre os nós-sensores. Muitas aplicações e técnicas de roteamento requerem o conhecimento preciso da localização do nó-sensor. Neste caso, o nó-sensor deve contar com um sistema de localização como o GPS (Global Position System). Todavia, equipar cada nó-sensor com um GPS pode não ser uma alternativa viável para RSSFs, devido aos custos de se implantar o GPS em um grande número de nós. Uma alternativa é utilizar o GPS apenas em alguns nós- sensores da rede, os quais ajudariam os seus nós-vizinhos a calcularem suas próprias localizações [1]. Um outro componente possível de um nó-sensor é a subunidade de sincronização, que sincroniza a recepção e envio de pacotes através da rede, o que requer o uso de relógios internos pelos nós da RSSF. Aspectos relacionados à sincronização em redes de sensores são explorados em [62].

2.2.2 Nós-sensores inteligentes

Nesta Subseção serão descritas as características dos principais dispositivos, desenvolvidos no contexto de pesquisas acadêmicas e comerciais, que podem se comportar como nós-sensores inteligentes.

2.2.2.1 PicoNodes

O PicoNode [44] é um dispositivo-sensor capaz de permitir a computação e comunicação ubíqua1 em RSSFs. Proposto no contexto do projeto PicoRadio, da Universidade da Califórnia, este dispositivo tem apenas 1 cm3 e consome menos do

1

Comunicação ubíqua é a designação comumente utilizada para referenciar a integração da computação móvel e pervasiva com o espaço físico.

(25)

que 10 mW (Figura 2.2). O PicoNode foi projetado para ser um equipamento de baixo consumo de energia.

A arquitetura deste dispositivo apresenta quatro módulos básicos:

(i) uma unidade de processamento, dedicada principalmente a atender às requisições das aplicações;

(ii) uma unidade de processamento configurável, destinada à realização de tarefas que requeiram maiores recursos computacionais;

(iii) uma camada física configurável através de parâmetros; e (iv) um módulo de conversão de freqüências de rádio.

Embora a implementação das unidades de processamento do PicoNode chegue a requerer até três vezes mais energia do que outras arquiteturas, a maior vantagem do PicoNode é a flexibilidade quanto a configurações de elementos físicos do nó-sensor via software (sistema operacional µ-OS). A configuração é realizada através de parâmetros que definem, por exemplo, modos de controle de energia e esquemas de modulação.

Visando reduzir o consumo de energia requerido pela unidade de comunicação, a camada física do PicoNode requer a ativação do transceptor apenas durante o período estritamente necessário para a aquisição de dados. Assim, enquanto não for requerida a recepção ou transmissão de dados, o transceptor permanece em um estado no qual apenas um mínimo gasto de energia é requerido para detectar a chegada de novos dados. Além disso, o PicoNode também foi projetado para extrair energia do ambiente, como alternativa para a reposição da energia gasta, o que pode ser feito, por exemplo, através do uso de baterias recarregáveis por energia solar.

(26)

As características físicas do nó-sensor PicoNode incluem:

(i) Atividade de sensoriamento: Temperatura, umidade, intensidade luminosa, ondas sonoras, aceleração, campos magnéticos e localização; (ii) Memória: DRAM de 4MB, Memória flash de 4MB; e

(iii) Comunicação: Rádio transceptor utilizando tecnologia Bluetooth2, com capacidade para transmissões de 100 Kbps a distâncias de até 100 m.

2.2.2.2 µµµµamps

Os µAMPS (micro-Adaptive Multi-domain Power-aware Sensors) [49], desenvolvidos no Massachusetts Institute of Technology (MIT), são nós-sensores sem fio que relacionam seus aspectos físicos a parâmetros configuráveis na aplicação. O objetivo destes dispositivos é permitir que o consumo de energia da rede seja ajustado, em resposta às mudanças no meio ambiente, no comportamento da rede (por exemplo, devido a falhas ou alteração na localização dos nós da rede) ou nos valores dos parâmetros especificados na aplicação. Assim, algoritmos, protocolos de rede e sistema operacional podem adaptar-se às características físicas dos nós-sensores. O objetivo desta estratégia é alcançar a redução do consumo global de energia da RSSF e obter a conseqüente maximização do tempo de vida da rede.

Em Shih et al. [49], destaca-se a importância da redução dos intervalos de tempo em que os nós da rede permanecem ativos, para a conservação de energia em RSSFs. Além de buscar a maximização do tempo em que os nós-sensores permanecem inativos, os µAMPS também avaliam a quantidade de energia gasta no acionamento do nó-sensor. A necessidade desta avaliação se deve ao fato de que a energia consumida durante o acionamento pode ser ainda maior do que aquela que seria gasta se o nó-sensor permanecesse, permanentemente, ativo. Esta situação pode ocorrer porque a quantidade de energia gasta durante a recepção e envio de pacotes varia com o volume de dados tratado, enquanto a energia gasta no acionamento do nó-sensor é uma constante inerente à implementação física deste equipamento. Assim, quando se têm poucos pacotes a enviar e a recepção/transmissão ocorre muito rapidamente, o consumo de energia para a

2

A tecnologia Bluetooth é, basicamente, um padrão para comunicação sem fio de baixo custo e de curto alcance.

(27)

ativação do nó-sensor pode ser superior ao que seria obtido se o nó-sensor não tivesse sido desativado.

Figura 2.3 µAMPS, nó-sensor desenvolvido no MIT.

Na Figura 2.3 o tamanho do nó-sensor µAMPS é comparado ao tamanho de uma moeda. A figura à esquerda mostra a placa que contém o sensor e o processador. A figura à direita mostra a placa que contém o transceptor [49].

As características físicas do nó-sensor µAMPS incluem:

(i) Atividade de sensoriamento: medições sísmicas e de ondas sonoras; (ii) Memória: 1MB de SRAM e 1MB de memória flash ROM; e

(iii) Comunicação: Compatível com Bluetooth, possibilitando taxas de transmissão inferiores a 10 Kbps a distâncias de até 100 m.

2.2.2.3 MicaMotes

Os MicaMotes [32] consistem em uma série de nós-sensores programáveis, desenvolvidos por pesquisadores da Universidade da Califórnia. Um dos representantes mais recentes desta série de sensores é o Mica2, que tem sua estrutura composta por uma unidade de sensoriamento, um processador, um transceptor e duas baterias (Figura 2.4).

Estes componentes são controlados pelo TinyOS (Tiny Microthreading Operating System) [32], um sistema operacional para RSSFs, escrito em NesC3, que gerencia os recursos de hardware e software dos nós-sensores. O TinyOS é capaz de controlar a captação de dados do ambiente, a transmissão de pacotes entre nós da rede, o processamento de dados, além de fazer com que o nó-sensor fique

3

NesC é uma extensão da linguagem de programação C, projetada para a construção de aplicações na plataforma do sistema operacional TinyOS.

(28)

inativo quando nenhum dado estiver sendo recebido ou enviado. O TinyOS trabalha com pacotes de dados de, aproximadamente, 36 bytes.

Figura 2.4 Mica2, nó-sensor desenvolvido na Universidade da Califórnia.

As características físicas do nó-sensor Mica2incluem:

(i) Atividade de sensoriamento: Intensidade luminosa, aceleração, medição sísmica, acústica, campos magnéticos e localização;

(ii) Memória: 512 KB de armazenamento externo não-volátil, 4 KB de memória RAM e 128 KB de memória ROM; e

(iii) Comunicação: Rádio transceptor capaz de transmitir 40 Kbps a distâncias de até 20 metros.

2.2.2.4 WINS

Os WINS (Wireless Integrated Network Sensors) e os WINS NG(Next Generation) [43], desenvolvidos na Universidade da Califórnia, são nós-sensores inteligentes que oferecem suporte ao estabelecimento de redes auto-organizáveis, destinadas ao sensoriamento contínuo ou à detecção de eventos pré-determinados. Quando utilizados em aplicações que requerem detecção de eventos, a identificação de cada evento deve ser previamente armazenada em cada um dos nós-sensores da rede.

Os WINS NG integram múltiplas funções que incluem o sensoriamento, a comunicação, além da interoperabilidade entre diferentes redes e bancos de dados. A economia no consumo global de energia de uma rede de sensores WINS é obtida a partir de estratégias que envolvem:

(i) roteamento do tipo múltiplos saltos;

(29)

(iii) utilização de protocolos projetados para manter o rádio de transmissão/recepção desligado o maior tempo possível;

(iv) processamento local de dados, o que pode incluir a aplicação de operações de agregação sobre os dados, como forma de reduzir o volume de dados enviados através da rede; e

(v) reconfiguração de propriedades físicas dos sensores por protocolos e aplicações.

Figura 2.5 WINS, nó-sensor desenvolvido na Universidade da Califórnia.

As características físicas do nó-sensor WINS incluem:

(i) Atividade de sensoriamento: Temperatura, pressão, aceleração, medição sísmica, acústica, campos magnéticos e localização;

(ii) Memória: Memória flash de 4MB e 1MB de memória SRAM; e

(iii) Comunicação: Rádio transceptor de 900 MHz que transmite 100 Kbps a distâncias de até 100 metros.

2.3 Aspectos de redes de sensores sem fio (RSSFs)

Devido às características particulares das RSSFs, principalmente as restrições de recursos físicos, os algoritmos e protocolos projetados para redes convencionais não são aplicáveis a estas redes. O projeto de uma RSSF envolve a análise de aspectos relacionados aos nós-sensores, tais como consumo de energia, tolerância a falhas, sensoriamento e processamento de dados, e outros relacionados à estrutura da rede, tais como topologia, escalabilidade, comunicação e roteamento. Estes aspectos são descritos a seguir.

2.3.1 Consumo de energia

O aspecto mais importante a ser considerado no projeto de uma RSSF refere-se ao consumo de energia. Cada nó-sensor tem seu tempo de vida ditado pela disponibilidade de energia da sua bateria. Este fato leva a uma conseqüente

(30)

limitação do tempo de vida da rede como um todo, caso não seja adotada uma estratégia de reposição dos nós da rede ou de recarga da bateria dos nós-sensores. Vale salientar que a recarga ou substituição da bateria não é uma opção fácil para estas redes, visto que elas geralmente são compostas por centenas ou até milhares de nós [1]. Desta forma, algoritmos, protocolos e componentes físicos projetados para RSSFs devem ter como principal objetivo a minimização do consumo de energia da bateria dos nós-sensores.

A partir da Figura 2.1 (Subseção 2.2.1), é possível identificar três fatores a serem considerados no consumo de energia em nós-sensores: sensoriamento, que é o objetivo primário de um sensor; processamento, que torna os nós-sensores dispositivos inteligentes, capazes de aplicar operações como, por exemplo, agregações e filtragens, sobre os dados coletados do ambiente; e comunicação, responsável pelas operações de transmissão e recepção, essenciais para formar uma RSSF [1]. Embora todas estas atividades consumam energia, é importante notar que o custo de energia para a transmissão ou recepção de um único dado sobre um meio sem fio, a pequenas distâncias, é muito maior do que o requerido para processar este dado ou coletá-lo do ambiente (por exemplo, o processamento de 3000 instruções pode ser executado, aproximadamente, com o mesmo gasto advindo do envio de 1 bit a uma distância de 100m) [62]. Assim, o caminho mais eficiente para diminuir o consumo de energia em uma RSSF é através da redução dos custos com comunicação [39].

Em geral, o transceptor (rádio-transceptor) de um nó-sensor pode operar em quatro modos distintos: Transmissão, Recepção, Ocioso, e Inativo. Cada um destes modos é caracterizado por diferentes taxas de consumo de energia. O modo Ocioso consome quase a mesma quantidade de energia que o modo de Recepção. Logo, o transceptor deve ser completamente desligado, colocado em modo Inativo, quando nenhum dado estiver sendo transmitido ou recebido, ou quando houver longos intervalos de tempo entre coletas sucessivas de dados; pois, é apenas no modo Inativo que a energia da bateria pode ser temporariamente conservada. Todavia, é importante observar que, no modo de operação Inativo, o nó-sensor não pode ser contactado por outros nós, o que muda a topologia ativa da rede [45].

(31)

Algumas alternativas, como a apresentada em [49], defende o uso de nós- sensores com múltiplos rádio-transceptores. Neste caso, um rádio com baixo consumo de energia é usado, exclusivamente, para ativar o rádio de mais alta potência, quando for necessário realizar a transmissão e recepção de dados. Desta forma, o nó-sensor não fica inacessível, pois o rádio-transceptor de mais baixa potência permanece ligado continuamente.

Outro aspecto a ser considerado é que, na maior parte das arquiteturas de rádio-transceptores, a simples mudança entre modos de operação causa uma dissipação significativa de energia, por exemplo, devido à mudança do modo Inativo para o modo de Transmissão. Portanto, é benéfico operar com pacotes tão grandes quanto possível, objetivando amortizar tanto o número de mudanças no modo de operação do transceptor quanto o overhead fixo sobre a manipulação de uma quantidade maior de bits (por exemplo, o cabeçalho do pacote) [45]. Por outro lado, um longo intervalo de tempo sem transmissão aumenta a latência total na troca das informações, o que pode não ser aceitável para uma dada aplicação.

Alternativas para obter uma maior economia de energia em RSSFs requerem o uso de algoritmos “conscientes” da disponibilidade de energia, projetados para ajustar seu comportamento a eventos específicos, como, por exemplo, restrições de recursos. Estes algoritmos deveriam ser capacitados a fazer uma análise dinâmica entre o consumo de energia, desempenho do sistema e fidelidade dos dados produzidos para o usuário. Estratégias de otimização no uso de energia podem ser aplicadas aos nós, ao canal de comunicação ou à rede como um todo, tendo por objetivo o aumento do tempo de vida da RSSF [45].

2.3.2 Tolerância a falhas

Considerando as restrições de energia da bateria dos nós-sensores e as condições extremas a que, muitas vezes, estes nós são expostos (por exemplo, implantados no fundo de oceanos, no interior de vulcões ou presos a corpos de animais), observa-se que os nós-sensores são altamente susceptíveis a falhas. Porém, a falha de um ou alguns nós-sensores não deve ser suficiente para comprometer o funcionamento da rede [1] ou distorcer a precisão dos resultados apresentados ao usuário.

A falha de um sensor que faz parte da rota de um pacote não deve impedir que o pacote chegue ao seu destino, visto que a topologia da rede deve dar caminhos

(32)

alternativos para que os pacotes alcancem os seus destinos, seja através da adoção de mecanismos de retransmissão de pacotes ou apenas pela duplicação destes pacotes na rede. Para garantir a disponibilidade de rotas alternativas para os pacotes, os protocolos de roteamento precisam reorganizar a rede periodicamente, traçando novas rotas em substituição àquelas interrompidas pela falha de nós-sensores, buscando, assim, uma maior tolerância a falhas.

2.3.3 Sensoriamento

A função primária de uma aplicação de RSSF é a atividade de sensoriamento, provida pelos sensores integrantes dos nós da rede. O tipo de informação a ser coletada depende do dispositivo físico de sensoriamento utilizado, que, por sua vez, é escolhido com base no objetivo da aplicação, como, por exemplo, coletar medições de temperatura. No contexto das aplicações de RSSFs, a forma de obtenção dos dados pode ser classificada como [47]:

(i) Contínua, quando os dados são coletados continuamente;

(ii) Reativa, quando os dados são fornecidos em resposta a uma consulta do usuário ou a um evento específico do ambiente; e

(iii) Periódica, quando os dados são coletados segundo condições previamente configuradas na aplicação.

Algumas propostas, como a elaborada no Projeto TinyDB [39], da Universidade da Califórnia, suportam modelos híbridos, que consistem na coexistência de diferentes tipos de coleta de dados.

2.3.4 Processamento

O processamento de dados em nós-sensores é uma importante propriedade dos nós-sensores inteligentes. Conforme mencionado na Subseção 2.3.1, o consumo de energia com comunicação deve ser prioritariamente minimizado. Tendo em vista que este custo é proporcional ao volume total de dados transmitido através da rede, processamentos aplicados aos dados podem levar a reduções significativas do volume de dados enviado através da rede.

O processamento de dados em nós-sensores pode envolver operações de agregação, filtragem e outras técnicas de sumarização ou análise de dados, como as apresentadas na Subseção 3.2.2. Convém salientar que o processamento pode

(33)

envolver não apenas operações aplicadas aos dados coletados do ambiente, mas também a fusão destes dados com aqueles recebidos de outros nós-sensores, originando novos pacotes de dados [47].

A agregação em rede [15][41][50] vem sendo a estratégia mais explorada na redução do volume de dados transmitido dos nós-sensores para a estação-base. Esta estratégia consiste na aplicação progressiva de operações de agregação aos dados, à medida que os pacotes vão sendo passados de um nó para outro na rede. Desta forma, a agregação de dados é efetuada ao longo de cada rota, por onde passam os pacotes.

A Figura 2.6 ilustra um exemplo de como funciona a agregação em rede. Neste exemplo hipotético é mostrada a planta baixa de um shopping center. Considera-se que cada entrada de veículo no estacionamento do shopping center é monitorada por um dispositivo-sensor, que faz parte de uma RSSF; e que um usuário, operando a estação-base, requisita o número de veículos que estão no estacionamento do shopping center em um determinado instante. Em resposta, os valores da contagem de veículos, computados em cada nó-sensor, são progressivamente somados, à medida que vão sendo passados através da rede, até chegarem à estação-base, onde o resultado final para a consulta é produzido.

(34)

2.3.5 Topologia

O número de nós-sensores em uma RSSF pode vir a ser muito grande e a densidade destes nós, na região geográfica considerada, pode ser alta (por exemplo, superior a 20 nós/m3). A distribuição dos nós-sensores no meio ambiente será mais ou menos aleatória, de acordo com a estratégia utilizada na implantação dos nós, por exemplo, de forma manual ou despejados a partir de aviões [1].

Após a primeira etapa de implantação dos nós de uma RSSF, alguns nós- sensores podem vir a mudar de localização, devido às condições do ambiente, por exemplo, devido a ventos ou deslizamentos, o que pode alterar a disposição física destes nós na rede. Além disso, seja por necessidade de reposição dos nós- sensores falhos ou por necessidade de crescimento da rede, novos nós poderão vir a ser implantados. Estas alterações de localização dos nós-sensores, bem como as manutenções realizadas na RSSF, requerem uma reorganização da estrutura da rede e, conseqüentemente, a atualização das rotas de transmissão dos pacotes por parte dos protocolos de roteamento.

2.3.6 Escalabilidade

Em uma RSSF, os protocolos da rede devem ser capazes de trabalhar não apenas com o número inicial de nós-sensores implantados no meio ambiente, mas também garantir a escalabilidade da rede; o que implica que o desempenho da aplicação não deverá ser fortemente afetado pelo aumento do tamanho da rede.

Adicionalmente, protocolos de roteamento podem ser escaláveis o suficiente para responder a eventos específicos do ambiente. Nesta estratégia, proposta em [2], a maior parte dos nós-sensores permanece no modo Inativo, sendo que apenas alguns nós-sensores da RSSF permanecem ativos para processar dados de pacotes remanescentes. Durante este período, os resultados fornecidos ao usuário serão menos precisos, visto que têm por base dados coletados apenas por alguns poucos nós-sensores ativos. Quando um determinado evento, configurado na aplicação, ocorre, todos os nós-sensores são ativados e a aplicação passa a dispor de resultados mais precisos. Esta estratégia favorece a economia de recursos do nó- sensor em detrimento da precisão dos resultados, porém, a produção de resultados mais precisos é garantida nos períodos estabelecidos pelos eventos configurados na aplicação.

(35)

2.3.7 Comunicação

A comunicação não apenas permite o processamento colaborativo entre os nós-sensores, mas também a interação entre os usuários da aplicação e a rede. Em Ruiz et al. [47] são apontados dois tipos de comunicação: de infra-estrutura e de aplicação. A comunicação requerida para manutenção da infra-estrutura da rede objetiva manter atualizadas as rotas de comunicação, independente das falhas dos nós-sensores, da mobilidade destes nós ou do crescimento da rede (inclusão de novos nós). Já a comunicação requerida pela aplicação refere-se à disseminação dos dados pela rede. Durante a disseminação dos dados, a energia gasta na recepção e transmissão de um pacote tem um custo fixo, relacionado ao hardware. Para a operação de transmissão, também está associado um custo variável, que depende da distância entre o nó-origem da informação e o nó-destino. Desta forma, quanto mais próximos estiverem dois nós sensores, menor será o consumo de energia necessário para realizar a comunicação entre eles, pois a potência dissipada será menor.

Além da distância entre os nós da rede, um outro fator crítico, relacionado à comunicação, é volume de dados que converge para o ponto no qual as informações são entregues à estação-base. Embora a estação-base seja robusta quanto à memória, disponibilidade de energia e capacidade de processamento, o tráfego de pacotes gerado por um número grande de nós-sensores para esta estação pode ser pesado. Portanto, a estação-base pode representar um gargalo que penaliza o throughput da rede. A perda de pacotes, seja por falha de alguns nós da rede ou pela incapacidade da estação-base em receber todos os pacotes a ela enviados, pode vir a gerar diferenças nos resultados apresentados ao usuário a cerca do fenômeno que está sendo considerado. Este aspecto é analisado em alguns trabalhos [27][47][58] através da garantia da qualidade de serviço (QoS – Quality of Service), referindo-se à capacidade da rede de produzir resultados corretos e em tempo aceitável.

A capacidade de esforço coletivo dos nós-sensores representou um grande avanço para as RSSFs. Os protocolos de comunicação provêem a infra-estrutura necessária para que o processamento colaborativo seja possível. Em Akyildiz et al.

(36)

[1] é proposto que, além das camadas convencionais de redes (física, enlace, rede, transporte e aplicação), também sejam considerados componentes destinados ao:

(i) Gerenciamento de energia: monitora o consumo de energia dos nós- sensores. A informação fornecida por este componente poderia, por exemplo, sinalizar para um nó-sensor enviar um aviso (por broadcast) aos seus vizinhos, informando que seu nível de energia esteja baixo e, portanto, não seja capaz de participar do roteamento de pacotes. Assim, a energia remanescente neste nó-sensor apenas passaria a ser utilizada em atividades de sensoriamento, processamento e envio de seus próprios dados;

(ii) Gerenciamento de mobilidade: monitora a movimentação dos nós-sensores. Este monitoramento consistiria em detectar e registrar o movimento de um dado nó-sensor. A partir desta informação, o nó-sensor poderia ser capacitado a identificar os seus novos nós-vizinhos e manter atualizadas as suas rotas de acesso à estação-base; e

(iii) Gerenciamento de tarefas: monitora a distribuição de tarefas entre os nós-sensores. Basicamente, este componente faria o balanceamento das tarefas de sensoriamento em uma dada região geográfica. Por exemplo, nem todos os nós-sensores de uma região precisam ser utilizados para responder a uma solicitação do usuário, o que pode ocorrer quando dois ou mais nós-sensores compartilham a mesma área de sensoriamento. Neste caso, os nós-sensores com maior disponibilidade de energia podem ser selecionados para coletar os dados do ambiente, poupando recursos dos demais nós-sensores [1].

Esses componentes de gerenciamento contribuem para que cada nó-sensor seja capaz de controlar sua atividade de sensoriamento, baixar seu consumo de energia, permitir o compartilhamento de seus recursos e o trabalho colaborativo no roteamento dos pacotes.

2.3.8 Roteamento

Em Al-karaki et al. [2] é sugerida uma divisão para os protocolos de roteamento de RSSFs em três classes:

(37)

(i) plana, na qual todos os nós-sensores da rede desempenham o mesmo papel e possuem as mesmas características físicas;

(ii) hierárquica, na qual grupos de nós da rede têm diferentes responsabilidades e disponibilidades de recursos e;

(iii) adaptativa, que permite ao protocolo adaptar-se às condições da rede e à disponibilidade dos níveis de energia dos nós-sensores, através da configuração de parâmetros que mapeiam características físicas dos nós da RSSF.

A classe de protocolos hierárquica vem sendo largamente explorada como estratégia capaz de poupar recursos dos nós-sensores. Estes protocolos definem que os dados sejam passados de um nó para outro, através de roteamento do tipo múltiplos saltos, até alcançarem a estação-base. Estações-base são a chave para uma comunicação do tipo backbone, servindo como gateway para outras redes, o que permite a integração entre diferentes redes [53]. O problema em utilizar uma estrutura hierárquica em RSSFs é que o tráfego torna-se cada vez mais intenso, à medida que os pacotes aproximam-se da estação-base. Assim, enquanto os nós-sensores mais distantes da estação-base apenas coletam dados do meio ambiente, os nós mais próximos têm seus recursos penalizados, devido ao fato de precisarem tanto coletar dados do ambiente como recepcionar pacotes de outros nós da rede.

Estratégias de endereçamento convencionais, como o uso de IPs (Internet Protocols), não são aplicáveis a RSSFs porque demandariam um alto custo para atribuição e manutenção de endereços, tendo em vista o grande número de nós destas redes. O roteamento de pacotes em RSSFs também deve oferecer suporte à mobilidade dos nós. Tarefa difícil caso o endereço do nó não forneça nenhuma informação sobre a direção em que o pacote deve ser roteado. Uma alternativa é manter um servidor central, capaz de manter atualizadas informações sobre a posição de todos os nós da rede. Outra alternativa é utilizar um agente de endereçamento, associado a cada nó, capaz de manipular e redirecionar todas as requisições destinadas a um dado nó para a sua localização corrente [26]. Na proposta do PicoRadio [44], os nós podem ser endereçados com base em suas posições geográficas. A localização dos nós é uma informação muito útil, pois permite que os protocolos de roteamento enviem os pacotes na direção correta.

(38)

As subseções a seguir detalham algoritmos que implementam protocolos de roteamento para RSSFs.

2.3.8.1 Flooding

Esta é uma estratégia clássica de roteamento que consiste em um nó-sensor enviar pacotes para todos os seus vizinhos, independente do fato destes vizinhos já terem ou não recebido os mesmos pacotes. Neste caso, são feitas cópias de cada novo pacote para todos os vizinhos do nó, exceto aquele do qual ele acaba de receber o pacote. A maior vantagem deste algoritmo está na simplicidade quanto ao gerenciamento das rotas e endereços. Todavia, três deficiências não tratadas pelo flooding e enumeradas em Heinzelman et al. [31] desencorajam o uso deste protocolo em RSSFs:

(i) Implosão: situação na qual pacotes duplicados são enviados para o mesmo nó, desperdiçando os recursos físicos da rede;

(ii) Sobreposição: fato que ocorre quando dois ou mais nós compartilham a mesma área geográfica e, portanto, coletam a mesma informação, gerando dados duplicados para a aplicação; e

(iii) Desconhecimento dos recursos físicos: neste caso o protocolo não é capacitado a adaptar seu comportamento à disponibilidade de recursos físicos do nó-sensor, como, por exemplo, energia.

2.3.8.2 Gossiping

Na proposta do gossiping [28], cada pacote p1 de um nó n1 é enviado apenas para

um dos vizinhos de n1, o qual é selecionado aleatoriamente. Desta forma, p1 é

propagado através da rede até alcançar a estação-base.

O uso do gossiping consome menos energia do que o flooding, pois permite reduzir o número de pacotes enviados por nó. Outra vantagem desta estratégia é a resolução do problema da implosão de pacotes, o que é conseguido graças ao fato de que apenas uma cópia de p1 é mantida na rede, a cada intervalo de tempo.

Todavia, o gossiping não trata alguns aspectos como:

(i) caso o objetivo seja disseminar o pacote para todos os nós da rede, o intervalo de tempo necessário para atender a este objetivo será muito maior do que em estratégias baseadas em broadcast;

(39)

(ii) não resolve o problema da duplicação de dados, resultante do compartilhamento de áreas geográficas entre nós-sensores vizinhos [31]; (iii) é possível que um nó n1 envie o pacote p1 para um vizinho n2, que é o

mesmo nó que havia enviado p1 para n1, anteriormente. Este fato pode

gerar retardos ou, no pior caso, um ciclo que impede os demais nós da rede de receberem p1; e

(iv) como os nós-sensores são suscetíveis a falhas, as chances de perda de um pacote devido à falha de um nó-sensor, localizado na rota deste pacote, aumentam muito, visto que apenas uma cópia do pacote é mantida na rede a cada intervalo de tempo.

2.3.8.3 SPIN (Sensor Protocols for Information via Negotiation)

Consiste em uma família de protocolos de roteamento, aplicáveis a RSSFs, que apenas disseminam pacotes na rede após uma prévia negociação com seus nós vizinhos. Esta negociação se dá através de trocas de mensagens, as quais evidenciam o interesse de cada nó em receber ou não o pacote que está sendo disseminado. As mensagens trocadas no SPIN são de três tipos: ADV, enviada por um nó n1 aos seus vizinhos, advertindo sobre a existência de um novo pacote; REQ,

enviada a n1 por seus vizinhos, indicando o interesse de cada um em receber o novo

pacote; e DATA, que é o próprio pacote de dados enviado por n1 aos nós que

retornaram uma mensagem do tipo REQ [31].

Para que haja sucesso na negociação, os nós devem ser capazes de descrever, sucintamente, os dados que eles coletam do ambiente; esta informação é representada por metadados, específicos de cada aplicação. Com base nas informações contidas nos metadados, é realizada uma negociação entre os nós. Esta negociação garante que somente os pacotes úteis para um dado nó serão enviados a ele. Assim, consegue-se uma maior conservação de energia pela redução do número de pacotes enviados.

O SPIN é projetado para evitar os três problemas do flooding clássico (Subseção 2.3.8.1). O problema de implosão é solucionado através da negociação que precede o envio dos pacotes, evitando a transmissão de dados redundantes; a sobreposição de área geográfica é tratada através da avaliação dos metadados; e o problema de desconhecimento de recursos físicos é resolvido pela verificação da

(40)

disponibilidade de energia do sensor. Porém, a adoção do SPIN leva a um maior overhead, provocado pela troca extra de mensagens, o que aumenta os tempos de disseminação dos pacotes. Além disso, cada nó deve, periodicamente, atualizar sua lista de nós-vizinhos, o que requer consumo de memória e energia [60].

2.3.8.4 SMECN (Small Minimum Energy Communication Network)

Este protocolo constrói sub-redes, a partir de uma RSSF, que possuem caminhos otimizados entre quaisquer pares de nós considerados. O caminho otimizado garante que a rota tomada por um pacote, a partir do nó-origem até o nó-destino, seja o que resulta em um menor consumo de energia. Vale salientar que o SMECN não encontra a rota que resulta no menor consumo de energia, mas apenas uma sub-rede que contém esta rota [2].

2.3.8.5 SAR (Sequential Assignment Routing)

Este protocolo [2] cria múltiplas árvores, sendo que o nó-raiz de cada árvore é um nó-vizinho da estação-base. O SAR é utilizado por cada nó-sensor da rede para escolher a rota de envio de um dado pacote para a estação-base. Esta escolha é feita com base em três critérios: recursos de energia, o nível de prioridade de cada pacote e o nível de QoS (Quality of Service) calculado para cada caminho. As métricas de QoS adotadas incluem valores de throughput e tempos de retardo.

Para cada pacote roteado através da rede, uma métrica de QoS é computada. Esta métrica é calculada como sendo o produto entre a adição das métricas de QoS e um coeficiente associado ao nível de prioridade do pacote. Este cálculo é usado para avaliação de desempenho da rede.

O objetivo do algoritmo SAR é minimizar a média da métrica de QoS calculada durante todo o tempo de vida da rede. Pelo uso do SAR, cada nó da rede possui múltiplas rotas de envio possíveis, o que é vantajoso, pois caso uma rota seja interrompida pela falha de um nó sensor, outras rotas podem ser utilizadas. Como forma de contemplar as mudanças na topologia da rede; devido a falhas em nós sensores, alterações da disponibilidade de energia destes nós ou mesmo alterações dos valores de QoS; o SAR, periodicamente, requer que a estação base dispare uma atualização (recálculo) das rotas da rede. Este reprocessamento das rotas da

(41)

rede demanda um custo de energia e processamento, particularmente caro para a estação base.

2.3.8.6 LEACH (Low-Energy Adaptive Clustering Hierarchy)

Em Heinzelman et al. [30] é proposto o LEACH como um protocolo de comunicação auto-organizável e adaptativo que adota uma estrutura hierárquica para os nós de uma RSSF. A hierarquia é baseada na segmentação dos nós da rede em grupos, sendo que cada grupo tem um de seus nós eleito como coordenador. O nó- coordenador recebe os pacotes dos demais nós do grupo, realiza processamentos sobre os dados destes pacotes (agrupamento de dados), e os envia à estação-base.

Devido às tarefas extras realizadas pelo coordenador, observa-se que o consumo de energia neste nó será maior do que nos demais nós do seu grupo. LEACH objetiva distribuir a carga de consumo de energia uniformemente entre os nós, o que é conseguido através do revezamento, entre os nós-sensores, do papel de coordenador de grupo.

2.3.8.7 Directed diffusion

A proposta Directed diffusion [34] consiste em um protocolo de comunicação orientado aos dados, o que significa que o roteamento dos pacotes é definido com base nas propriedades dos dados coletados, como, por exemplo, a região geográfica. Este protocolo especifica que a estação-base deve, inicialmente, disseminar uma notificação sobre os dados que tem interesse em obter, o que é realizado através do envio de mensagens, em broadcast, para todos os vizinhos. Esta notificação de interesse descreve uma tarefa requerida aos nós-sensores, a qual consiste em pares de atributo e valor, por exemplo, a especificação de um intervalo entre coletas de dados = 20 segundos.

À medida que as notificações de interesse vão sendo passadas através da rede, gradientes vão sendo formados, indicando a direção em que os pacotes de dados deverão fluir de volta dos nós-origem de dados para a estação-base. Cada nova notificação de interesse recebida pelos nós sensores é armazenada localmente em sua memória cachê e interpretada para servir como parâmetro na coleta de dados. Finalmente, em cada nó-sensor, os dados coletados que atendem às especificações das notificações de interesse são enviados à estação-base.

(42)

Como benefícios desta proposta, tem-se uma adaptação mais rápida da rede às mudanças de topologia, provocadas pela falha ou mobilidade dos nós; e uma diminuição do consumo de energia dos nós-sensores, visto que menos pacotes são transmitidos. Além disso, é prevista a aplicação da técnica de agregação em rede, o que contribui para também reduzir o volume de dados transmitido.

2.4 Considerações finais

Este capítulo apresentou a arquitetura dos nós-sensores inteligentes, além de aspectos relevantes a serem considerados no projeto físico e lógico de uma RSSF. Observou-se que o consumo de energia em nós-sensores é afetado por todos os aspectos aqui considerados: aumento da tolerância a falhas, freqüência de sensoriamento, volume de processamento, tipo de topologia adotado, alteração do número de nós da rede, protocolos de roteamento e comunicação. Portanto, estes aspectos devem ser cuidadosamente avaliados para que não levem a uma rápida sobrevida dos nós-sensores da rede. Uma importante propriedade dos nós-sensores apresentados é a possibilidade de reconfiguração de suas características físicas por meio de software, o que permite que o nó seja reconfigurado de acordo com as características de funcionamento requeridas pela aplicação ou de acordo com a disponibilidade de seus recursos físicos. Os conceitos abordados neste capítulo serão utilizados como a base para apoiar os demais capítulos desta dissertação.

Referências

Documentos relacionados

(J. Nogueira et al., 2014) AeroStep (sala de fitness) Avaliar a sensação térmica das praticantes de AeroStep EsConTer; ITH (índice temp. e humidade) EsConTer; Escala térmica

No caso de pisos antigos com fendas ou soalhos chanfrados, usar o rolo de microfibras LOBATOOL 60-80 de forma fixa (não como rolo).. • Nivelar imediatamente de seguida com uma

A Participar Extra Competição X Faltou DNS Desqualificado DSQ Desistiu DST. Qualificação por

Geralmente utilizado Dureza: 70 +- 5 Shore A na confecção de aventais industriais, juntas, cobertura de bancada, etc..... Utilização: Não Recomendado: Ozônio, combustíveis

Não só o currículo tem que compreender essa linguagem, como os professores e as famílias também?. A partir de um planejamento pedagógico estruturado, o LIV tem a preocupação

Inferior: 2,0 cm. da borda inferior da folha. da borda do papel com algarismos arábicos e tamanho da fonte menor, sendo que na primeira página não leva número, mas é

vernáculo. A par do talento incomum, trazia um canto novo, brasileiro pelo menos n os motivos e modos de expressão. Nele se estampa um langor, um contraste violento entre extremos

O grafo de ligação do modelo proposto foi obtido através do cálculo dos potenciais característicos relacionados com as variáveis independentes do problema, densidade e velocidade,