ANÁLISE DO CONSUMO DE ENERGIA EM REDES DE SENSORES SEM FIO DOTADAS DE SERVIÇOS WEB

Documentos relacionados
UFG - Instituto de Informática

Introdução a computação móvel. Middlewares para Rede de Sensores sem Fio. Uma avaliação na ótica de Adaptação ao Contexto

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

IW10. Rev.: 02. Especificações Técnicas

SISTEMAS DISTRIBUIDOS

Arquitetura e Protocolos de Rede TCP/IP. Modelo Arquitetural

Projetos I Resumo de TCC. Luiz Rogério Batista De Pieri Mat:

Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo

Evolução na Comunicação de

PROJETO DE REDES

Introdução a Web Services

O modelo ISO/OSI (Tanenbaum,, 1.4.1)

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

2 Conceitos relativos a Web services e sua composição

Integração de sistemas utilizando Web Services do tipo REST

4. Qual seria o impacto da escolha de uma chave que possua letras repetidas em uma cifra de transposição?

Introdução ao Modelos de Duas Camadas Cliente Servidor

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

1

UNIVERSIDADE. Sistemas Distribuídos

3 Qualidade de serviço na Internet

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Prof. Wilton O. Ferreira Universidade Federal Rural de Pernambuco UFRPE 1º Semestre / 2012

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME

Wireshark. Captura de Protocolos da camada de aplicação. Maicon de Vargas Pereira

Protocolo. O que é um protocolo? Humano: que horas são? eu tenho uma pergunta

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

Roteamento e Comutação

Eduardo Bezerra. Editora Campus/Elsevier

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação


5 Mecanismo de seleção de componentes

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Arquitetura dos Sistemas de Informação Distribuídos

Projeto de controle e Automação de Antena

3 SCS: Sistema de Componentes de Software

1 INTRODUÇÃO Internet Engineering Task Force (IETF) Mobile IP

REDES DE COMPUTADORES

Redes de Computadores. Prof. Dr. Rogério Galante Negri

Fundamentos de Redes de Computadores. Elementos de Redes Locais

Administração de Sistemas de Informação I

REDES DE COMPUTADORES

Márcio Leandro Moraes Rodrigues. Frame Relay

REDES DE COMPUTADORES. Arquiteturas de Redes


Rede de Computadores

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

CAMADA DE REDE. UD 2 Aula 3 Professor João Carneiro Arquitetura de Redes 1º e 2º Semestres UNIPLAN

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Capítulo 9 - Conjunto de Protocolos TCP/IP e Endereçamento. Associação dos Instrutores NetAcademy - Julho de Página

Um Driver NDIS Para Interceptação de Datagramas IP

O que são DNS, SMTP e SNM

Arquitetura de Rede de Computadores

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

Relatorio do trabalho pratico 2

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Prof. Samuel Henrique Bucke Brito

Automação de Locais Distantes

Capítulo 7 CAMADA DE TRANSPORTE

COBERTURA EM UMA REDE DE SENSORES SEM FIO

Entendendo como funciona o NAT

INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima

PROGRAMAÇÃO SERVIDOR WEBSERVICES EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

Tabela de roteamento

Capítulo 4 - Roteamento e Roteadores

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Prof. Samuel Henrique Bucke Brito

Profs. Deja e Andrei

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Introdução. Arquitetura de Rede de Computadores. Prof. Pedro Neto

Aula 03-04: Modelos de Sistemas Distribuídos

Tecnologia e Infraestrutura. Conceitos de Redes

Sistemas Distribuídos

Service Oriented Architecture SOA

Módulo 16 Redes sem Fio (Wireless)

Service Oriented Architecture (SOA)

Gerência de Redes NOC

Sistemas Distribuídos. Introdução

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Sistemas Distribuídos

Unidade 3 Visão Geral de Equipamentos de Rede

Comunicando através da rede

Redes de Computadores Modelo de referência TCP/IP. Prof. MSc. Hugo Souza

Uc-Redes Técnico em Informática André Luiz Silva de Moraes

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

Transcrição:

Felipe Azevedo Sant Anna ANÁLISE DO CONSUMO DE ENERGIA EM REDES DE SENSORES SEM FIO DOTADAS DE SERVIÇOS WEB Dissertação apresentada ao Centro de Matemática, Computação e Cognição da Universidade Federal do ABC para obtenção do Título de Mestre em Engenharia da Informação. SANTO ANDRÉ 2010

Felipe Azevedo Sant Anna ANÁLISE DO CONSUMO DE ENERGIA EM REDES DE SENSORES SEM FIO DOTADAS DE SERVIÇOS WEB Dissertação apresentada ao Centro de Matemática, Computação e Cognição da Universidade Federal do ABC para obtenção do Título de Mestre em Engenharia da Informação. Orientador: Prof. Dr. Guiou Kobayashi SANTO ANDRÉ 2010

Ficha catalográfica elaborada pela Biblioteca da Universidade Federal do ABC SANT'ANNA, Felipe Azevedo Análise do consumo de energia em redes de sensores sem fio dotados de serviços Web / Felipe Azevedo Sant'Anna Santo André : Universidade Federal do ABC, 2010. 101 fls. il. 29 cm Orientador: Guiou Kobayashi Dissertação (Mestrado) Universidade Federal do ABC, Programa de Pós-graduação em Engenharia da Informação, 2010. 1. Transferência de estado representacional 2. Protocolo simples de acesso a objetos 3. Redes de sensores sem fio I. KOBAYASHI, Guiou. II. Programa de Pós-graduação em Engenharia da Informação, 2010, III. Título. CDD 004.36

Para Ana e meus irmãos Douglas e Cássio.

Agradecimentos A Deus, por ter me sustentado ao longo desta caminhada. A minha querida Ana e meus irmãos Douglas e Cássio e minha mãe, que sempre me apoiaram incondicionalmente em todos os meus projetos profissionais e acadêmicos. Ao Paulo Arantes de Azambuja, chefe e amigo, que sem sua consideração, eu teria não chegado a este momento e minha vida e carreira. Ao meu orientador Prof. Dr. Guiou Kobayashi pela orientação, apoio e conversas que me impulsionaram ao longo do desenvolvimento deste trabalho. Ao Swedish Institute of Computer Science, pela ajuda e respostas imediatas aos meus e-mails durante o período de configuração do simulador. A todos os amigos que me apoiaram e ajudaram na realização deste trabalho.

Resumo Este trabalho avaliou a implementação de duas abordagens de serviços Web - Transferência de Estado Representacional e Protocolo Simples de Acesso a Objetos - com a finalidade de mensurar o consumo de energia em redes de sensores sem fio dotadas de protocolos de Internet, acessadas por aplicações Web consumidoras de serviços, no qual cada nó sensor da rede está capacitado a transmitir e receber informações por meio de serviços Web, permitindo comunicação direta com sistemas executados na Internet. Os resultados obtidos por meio de simulações, utilizando a ferramenta de simulação Cooja em conjunto com o Contiki - sistema operacional para dispositivos de baixa capacidade computacional - mostraram significativa economia no consumo de energia em nós sensores ao utilizarem serviços Web baseados no paradigma Transferência de Estado Representacional, quando comparados à execução de serviços Web que utilizam o Protocolo Simples de Acesso a Objetos. Palavras-chave: Transferência de Estado Representacional, Protocolo Simples de Acesso a Objetos, Redes de Sensores Sem Fio, Serviços Web.

Abstract This work evaluated the implementation of two Web services approaches - Representational State Transfer and Simple Object Access Protocol - aiming energy consumption measurement between Internet protocol based wireless sensor networks and consumer services Web applications, which each node in the network is able to transmit and receive information through Web services, enabling direct communication between wireless sensor networks and the Internet. The results obtained from simulations using Cooja simulation tool and Contiki - limited computational resources operating system - showed significant savings in sensor nodes energy consumption when used Representational State Transfer based Web services rather than executing Simple Object Access Protocol based Web services. Keywords: Representational State Transfer, Simple Object Access Protocol, Wireless Sensor Network, Web Services.

Sumário Lista de Figuras Lista de Tabelas 1 Introdução 1 1.1 Visão Geral.............................. 1 1.2 Motivação............................... 4 1.3 Objetivos............................... 6 1.4 Organização.............................. 6 2 Redes de Sensores Sem Fio 8 2.1 Fundamentos............................. 8 2.2 Arquitetura.............................. 15 2.3 Comunicação............................. 17 2.4 Comunicação entre Redes de Sensores Sem Fio e Internet..... 18 2.4.1 Uso de Gateways....................... 18 2.4.2 Uso de protocolos de Internet em Nós Sensores....... 20 2.4.3 Otimizações em Protocolos de Internet Para Nós Sensores 21 2.4.4 Protocolo de Controle de Transmissão........... 23 2.4.5 IEEE 802.15.4......................... 24 2.5 Resumo do capítulo.......................... 24 3 Computação Distribuída 25 3.1 Arquitetura da Web......................... 25 3.1.1 Identificador Uniforme de Recursos............. 26

3.1.2 Protocolo de Transferência de Hipertexto.......... 26 3.2 Chamada de Procedimento Remoto................. 28 3.3 Linguagem de Marcação Extensível................. 30 3.4 Protocolo Simples de Acesso a Objetos............... 32 3.5 JavaScript Object Notation..................... 33 3.6 Arquiteturas de Software....................... 36 3.6.1 Arquitetura Orientada a Serviços.............. 37 3.6.2 Arquitetura Orientada a Recursos.............. 39 3.7 Serviços Web............................. 40 3.7.1 Serviços Web - SOA..................... 41 3.7.2 Serviços Web - ROA..................... 43 3.8 Resumo do capítulo.......................... 45 4 Ambiente de simulação 46 4.1 Equipamentos Utilizados....................... 47 4.2 Softwares Utilizados......................... 47 4.2.1 Plataforma de Simulação................... 47 4.2.2 Contiki............................. 49 4.2.3 Servidor HTTP........................ 50 4.2.4 IPv6.............................. 51 4.2.5 X-MAC............................ 51 4.3 Resumo do capítulo.......................... 52 5 Testes Realizados por Simulação 53 5.1 Cenários................................ 53 5.2 Tempo de execução.......................... 59 5.2.1 Cenário A........................... 59 5.2.2 Cenário B........................... 59 5.2.3 Cenário C........................... 60

5.2.4 Cenário D........................... 60 5.2.5 Cenário E........................... 61 5.3 Consumo de Energia......................... 61 5.3.1 Cenário A........................... 61 5.3.2 Cenário B........................... 62 5.3.3 Cenário C........................... 62 5.3.4 Cenário D........................... 63 5.3.5 Cenário E........................... 63 5.4 Resumo do capítulo.......................... 64 6 Discussão dos resultados 66 6.1 Serviços Web: REST e SOAP.................... 66 6.2 Análise de Serviços Web em RSSF.................. 68 6.3 Resumo do capítulo.......................... 71 7 Conclusões e Trabalhos Futuros 72 7.1 Sumário................................ 72 7.2 Trabalhos Futuros........................... 73 Referências 75 Apêndice A -- Arquivo de configuração do simulador Cooja 81 Apêndice B -- Tabelas com valores extraídos das simulações 85

Lista de Figuras 2.1 Redes MANET (Fonte: [Ruiz 2003])................. 9 2.2 Ilustração da organização RSSFs (Fonte: [Loureiro et al. 2003]).. 9 2.3 Arquitetura básica de um nó sensor (Fonte: [Delicato et al. 2005]). 16 2.4 Sensores conectados à Internet por meio de gateway (adaptado de [Neves 2010]).............................. 19 2.5 Sensores com IP acessados por uma aplicação cliente na Internet. 20 2.6 Requisição com codificação delta................... 21 2.7 Sensor executa a requisição com um cabeçalho ETag........ 23 2.8 Cabeçalho ETag recebido em um If-None-Match.......... 23 2.9 Informação não modificada no servidor................ 23 2.10 Captura dos primeiros 45 bytes.................... 24 3.1 Requisição HTTP enviada ao servidor................ 26 3.2 Resposta do servidor à requisição do cliente............. 27 3.3 Exemplo de requisição SOAP..................... 33 3.4 Exemplo de resposta SOAP...................... 33 3.5 Exemplo do formato JSON...................... 34 3.6 Estrutura do padrão JSON (Fonte: [JSON 2006]).......... 35 3.7 Níveis de descrição de um sistema (Fonte: [Mendes 2008])..... 36 3.8 Esquema básico de um serviço Web utilizando arquitetura SOA (adaptado de [Erl 2004])........................ 43 3.9 Esquema básico de um serviço Web utilizando arquitetura ROA (adaptado de [Wright 2006])...................... 44 4.1 Esquematização das tecnologias utilizadas na simulação...... 46 4.2 Simulador Cooja............................ 48

4.3 Informações do sensor Tmote Sky no simulador Cooja....... 50 5.1 Cenário da simulação......................... 54 5.2 Acesso ao nó sensor 1, que executa função de roteador de pacotes na rede................................. 55 5.3 Esquematização do cenário A..................... 55 5.4 Esquematização do cenário B..................... 56 5.5 Esquematização do cenário C..................... 56 5.6 Esquematização do cenário D..................... 57 5.7 Esquematização do cenário E..................... 57 5.8 Acesso aos registros de temperatura capturados pelo nó sensor 5 por meio de um navegador Web.................... 58 5.9 Acesso aos registros de intensidade de luz capturados pelo nó sensor 4 por meio de um navegador Web................ 59 5.10 Retorno do nó sensor 3, utilizando serviço Web SOAP...... 59 5.11 Tempo de execução dos serviços Web no cenário A......... 60 5.12 Tempo de execução dos serviços Web no cenário B......... 60 5.13 Tempo de execução dos serviços Web no cenário C......... 61 5.14 Tempo de execução dos serviços Web no cenário D......... 61 5.15 Tempo de execução dos serviços Web no cenário E......... 62 5.16 Análise do consumo de energia no cenário A............. 62 5.17 Análise do consumo de energia no cenário B............. 63 5.18 Análise do consumo de energia no cenário C............. 63 5.19 Análise do consumo de energia no cenário D............. 64 5.20 Análise do consumo de energia no cenário E............. 64 6.1 Análise do consumo de energia com base nos protocolos de MAC. 70 6.2 Principais componentes consumidores de energia em um nó sensor. 71

Lista de Tabelas 2.1 Configurações de RSSFs [Ruiz 2003]................. 10 2.2 Meios de sensoriamento em uma RSSF [Loureiro et al. 2002].... 11 3.1 Principais elementos de um envelope SOAP............. 34 3.2 Tecnologias comuns em serviços Web................. 41 3.3 Comparação entre tecnologias que implementam SOA (extraído de: [Newcomer e Lomow 2004]).................... 42 6.1 Informações sobre o tamanho da requisição/retorno do serviço Web para captura de sensoriamento de temperatura........... 69 6.2 Informações sobre o tamanho da requisição/retorno do serviço Web para captura de sensoriamento de luz................. 69 6.3 Informações sobre o tamanho da requisição/retorno do serviço Web para captura de informações dos sensores.............. 69 B.1 Tempo de execução no cenário A (segundos)............. 85 B.2 Energia consumida no cenário A (mw)................ 85 B.3 Tempo de execução no cenário B (segundos)............. 85 B.4 Energia consumida no cenário B (mw)................ 85 B.5 Tempo de execução no cenário C (segundos)............. 85 B.6 Energia consumida no cenário C (mw)................ 85 B.7 Tempo de execução no cenário D (segundos)............. 86 B.8 Energia consumida no cenário D (mw)................ 86 B.9 Tempo de execução no cenário E (segundos)............. 86 B.10 Energia consumida no cenário E (mw)................ 86

LISTA DE ABREVIATURAS 6LoWPAN IPv6 over Low power Wireless Personal Area Networks ALG Application Layer Gateway AP Access Point API Application Programming Interface CORBA Common Object Request Broker Architecture CPU Central Process Unit DSSS direct sequence spread spectrum DTD Document Type Definition ESB Enterprise Service Bus HTML HyperText Markup Language HTTP Hypertext Transfer Protocol IRC Internet Relay Chat IEEE Institute of Electrical and Electronics Engineers IETF Internet Engineering Task Force IP Internet Protocol IPv4 Internet Protocol version 4 IPv6 Internet Protocol version 6 JSON JavaScript Object Notation LPP Lower Power Probing MAC Media Access Control MANET Mobile Ad Hoc Network MIME Multipurpose Internet Mail Extension OASIS Organization for the Advancement of Structured Information Standards

OOA Object-Oriented Architeture P2P Peer to Peer PDA Personal Digital Assistant PC Personal Computer QoS Quality of Service REST Representational State Transfer RFC Request For Comments RJE Remote Job Entry RMI Remote Method Invocation ROA Resource-Oriented Architeture RPC Remote Procedure Call RSSF Wireless Sensor Network SGML Standard Generalized Markup Language SOA Service-Oriented Architecture SOAP Simple Object Access Protocol TCP Transmission Control Protocol UDDI Universal Distribution, Discovery and Interoperabilty W3C World Wide Web Consortium XHTML extensible Hypertext Markup Language XSLT extensible Stylesheet Language for Transformation XML Extensible Markup Language YAML YAML Ain t Markup Language WADL Web Application Description Language WiFi Wireless Fidelity WiMax Worldwide Interoperability for Microwave Access

WLAN Wireless Local Area Network WSDL Web Services Description Language WSN Wireless Sensor Network

1 1 Introdução Desde as primeiras idéias introduzidas por Mark Weiser em seu famoso artigo The Computer for the 21st Century [Weiser 1991], onde foram propostos conceitos iniciais sobre dispositivos computacionais sem fios conectados à Internet, isto é, uma rede onipresente de computadores, muitas transformações ocorreram no campo da computação ubíqua, computação paralela, entre outros campos. O termo Computação Ubíqua refere-se a ambientes saturados de dispositivos computacionais e redes de comunicação sem fio, que se integram naturalmente à atividade humana. Segundo [Weiser 1991], as mais profundas tecnologias são as que se tornam invisíveis no ambiente em que se encontram. Neste sentido a computação ubíqua pode ser considerada o oposto da realidade virtual. Enquanto na segunda o usuário penetra no mundo virtual criado pelos computadores, na primeira é a computação que penetra no mundo físico do usuário, construindo a ponte que liga esses dois mundos. Neste capítulo será apresentada uma visão geral sobre a área de Redes de Sensores Sem Fio (RSSF), levantando a problemática que se refere à economia de recursos computacionais em dispositivos móveis para sensoriamento, abordando a utilização de serviços Web para fins de comunicação entre nós sensores e a Internet, de forma econômica e eficiente. 1.1 Visão Geral A expansão da área de sistemas ubíquos têm abrangido cada vez mais setores de diversas áreas de pesquisa, indústria, medicina, entre outros, principalmente com o crescente número de tecnologias e protocolos que possuem características adequadas para dispositivos móveis, com severas restrições de energia, memória e processamento intrínsecas em suas arquiteturas. Tais tecnologias têm sido desenvolvidas para aumentar o desempenho e o campo de aplicação desses dispositivos. Uma RSSF é composta por dezenas a milhares de dispositivos de baixo custo

1.1 Visão Geral 2 e tamanho reduzido capazes de realizar sensoriamento, processamento e transmissão de informação por meio de enlaces sem fio. Sensores são alimentados por baterias e devem operar sem assistência humana por longos períodos de tempo [Delicato et al. 2005]. Como a maior fonte de consumo de energia nos sensores é dada pela transmissão de informações [Ruiz 2003, Loureiro et al. 2003], os protocolos de comunicação para RSSFs visam propor soluções para minimizar a quantidade e o alcance das transmissões a fim de estender o tempo de vida global da rede. Com mínimos recursos computacionais disponíveis para cada nó sensor, muitos desafios são encontrados e muitos cuidados específicos devem ser tomados para fazer uso eficiente dos mínimos recursos disponíveis, de forma a contornar as adversidades impostas a estes dispositivos, sendo estes parte integrante de várias áreas de pesquisa, como automação industrial [Singhvi et al. 2005], tratamentos médicos [Welsh et al. 2003], monitoramento ambiental e de habitats [Juang et al. 2002, Mainwaring et al. 2002, Laffea et al. 2006], entre outras, sendo apontadas como uma das principais tecnologias do século XXI [Gross 1999, Neves 2010]. Dentro de uma RSSF, a maioria dos protocolos para troca de informações entre sensores baseia-se na comunicação de curto alcance em múltiplos saltos (multihop) e adota algum mecanismo de agregação a fim de reduzir a quantidade de dados a ser transmitida. Além de possuir recursos escassos, tanto computacionais quanto de energia, outra característica das RSSFs é sua estrutura organizacional e topológica altamente dinâmica [Loureiro et al. 2002]. Portanto, RSSFs devem possuir algum grau de auto-organização e adaptação. O principal objetivo das RSSF é prover serviços de sensoriamento para usuários, sendo estes humanos ou outros sistemas. A Internet atualmente possui em torno de 1 bilhão de usuários no mundo inteiro, o que faz sentido disponibilizar serviços RSSF para esta comunidade em constante crescimento [Kim et al. 2007]. Internet dos computadores está se tornando a Internet da máquinas ou a tangível Internet, uma rede global que conecta não apenas computadores, mas todos os tipos de máquinas, como aparelhos domésticos, telefones celulares, e adequandose cada vez mais a inserção de RSSF nesse meio [Neves 2010]. µip [Dunkels 2010] alterou a percepção de que o protocolo de Internet (Internet Protocol (IP)) possuía características incompatíveis para pequenos dispositivos móveis, demonstrando a sua viabilidade em microcontroladores 8-bits [Dunkels 2003]. µip evoluiu para fazer a inclusão do padrão IEEE 802.15.4, mostrando a viabilidade do uso de protocolo de Internet em RSSF. Desta forma, verificando a possibilidade de implementação de IP em pequenos dispositivos, a

1.1 Visão Geral 3 IETF (Internet Engineering Task Force) formou o grupo de trabalho 6LoWPAN (IPv6 over Low power Wireless Personal Area Networks) [Nanostack 2010], com a finalidade de mapear IPv6 e protocolos de suporte para nós sensores sem fio com capacidade de energia baixa utilizando uma interface IEEE 802.15.4. O grupo produziu a RFC 4944 que especifica como datagramas IPv6 são carregados em frames 802.15.4, suportando fragmentação e compressão de cabeçalho [Hui e Culler 2008, Montenegro et al. 2007], concretizando a denominada Internet das Coisas (Internet of Things) [MIT 2010], termo criado no laboratório do MIT para desenvolvimento de tecnologias como RSSFs conectados à Internet. Estes sensores possuem as características de sensoriamento aliadas a ferramentas e protocolos que os permitem disponibilizar os dados monitorados diretamente para aplicações clientes na Internet. Para RSSF dotadas de protocolos de Internet, as funcionalidades da rede podem ser disponibilizadas como serviços Web, possibilitando acessos dos dados monitorados pelos sensores por qualquer aplicação usuária com acesso a Internet, de modo independente de linguagem e plataforma. Do ponto de vista da rede, o sistema permite obter a melhor combinação entre protocolos de comunicação e requisitos da aplicação, a fim de atingir uma maior eficiência da rede em termos de consumo de energia [Delicato 2005]. A rede de sensores passa a funcionar como um mecanismo genérico e configurável de extração de dados ambientais, podendo adaptar-se a diferentes missões. A utilização de serviços Web que fazem uso do Protocolo Simples de Acesso a Objetos (Simple Object Access Protocol (SOAP)) é atualmente a abordagem mais tradicional na execução de serviços Web, onde é requerida a transferência de informações de grande quantidade e complexidade entre sistemas. A robustez do protocolo SOAP, aliada a crescente pilha WS*-, além grande quantidade de ferramentas criadas para bem uso deste paradigma fazem a mesma ter uma grande aceitação no mercado. Porém, esta abordagem traz consigo relevantes pontos a serem discutidos quando tenta-se fazer uso desse conjunto de tecnologias em aplicações com variadas limitações e restrições computacionais e físicas. Em primeiro lugar, verifica-se o fato da utilização dos protocolos adicionais, além dos protocolos padrões disponíveis na Internet, como o Protocolo de Transferência de Hipertexto (Hypertext Transfer Protocol (HTTP)), o Protocolo de Controle de Transmissão (Transmission Control Protocol (TCP)) e IP e que já possuem versões adaptadas para dispositivos como sensores sem fio. Esses protocolos, como o Protocolo Simples de Acesso a Objetos (Simple Object Access Protocol (SOAP)), encarecem em termos de recursos utilizados, o processo de

1.2 Motivação 4 troca de informações pela Internet. Em segundo lugar, verifica-se o significativo custo adicional (overhead) gerado pela tradicional sintaxe SOAP-XML, que para um dispositivo dotado de severas restrições de memória, bateria e processamento, necessitando de um parser específico para processamento das informações recebidas e também para transmitir informações nesse padrão, que como já citado anteriormente, está entre as maiores formas de consumo de energia nesse tipo de dispositivo. No ano 2000, Roy Fielding defendeu sua tese de doutorado, tendo como tema central a utilização de um conjunto de princípios e regras para efetuar acessos e operações em documentos de hipermídia [Fielding 2000]. A partir deste conjunto de regras, surgiu o estilo arquitetural de software denominado Transferência de Estado Representacional (Representational State Transfer (REST)). O estilo arquitetural de software REST conglomera as regras baseadas nos métodos definidos pelo protocolo HTTP. Dentre esses métodos, são os principais: GET, POST, PUT, DELETE. Assim, seguindo os princípios REST, utiliza-se apenas os métodos definidos pelo protocolo HTTP, para execução de ações em documentos na Internet [Sandoval 2009]. Desta forma, aliando a eficiência e a baixa curva de aprendizado dos princípios arquiteturais REST com a proposta da Internet of Things [MIT 2010], este trabalho avaliou, a partir de análises comparativas dadas por meio de simulações, a utilização da duas abordagens distintas de serviços Web para fins de integração e trocas de informações entre redes de sensores sem fio e aplicações na Internet. 1.2 Motivação Há uma ampla gama de aplicações para RSSFs, com diferentes requisitos. Vários trabalhos destacam a importância da participação da aplicação no processo de comunicação em RSSFs [Tilak, Abu-ghazaleh e Heinzelman 2002] e [Heideman, Silva e Estrin 2003]. Otimizações específicas da aplicação podem reduzir o número de transmissões e, por conseguinte, o consumo total de energia na rede. Os autores em [Tilak, Abu-ghazaleh e Heinzelman 2002] classificam as RSSFs quanto ao modo de entrega de dados da aplicação em contínuas, dirigidas a eventos, iniciadas pelo observador e híbridas. Cada classe tem suas necessidades específicas e é melhor atendida por um tipo de protocolo de comunicação. Uma questão importante, então, passa a ser a seleção do protocolo mais adequado

1.2 Motivação 5 a cada classe de aplicação. Em [Heideman, Silva e Estrin 2003] observou-se que uma cuidadosa escolha do protocolo pode diminuir a quantidade global de tráfego na rede em até 50%, aumentando a eficiência da rede em termos de consumo de energia. Entretanto, em geral é uma tarefa complexa para os desenvolvedores de aplicações escolherem o protocolo de rede que melhor se adapte as suas necessidades. Apesar das vantagens comprovadas das tecnologias tradicionais de middleware, poucos trabalhos em RSSFs têm considerado essas tecnologias no projeto das redes. RSSFs têm sido construídas com um alto grau de dependência entre as aplicações e os protocolos de comunicação. A justificativa para essa dependência é a necessidade de eficiência em termos de energia. Os trabalhos atuais assumem que deve haver um forte acoplamento entre as camadas da pilha de protocolos a fim de prover tal eficiência [Delicato et al. 2005]. Entretanto, isso gera a construção de sistemas rígidos, com redes de sensores projetadas exclusivamente para aplicações específicas. RSSFs do futuro deverão atender diferentes usuários, com necessidades dinâmicas, sendo necessário um maior grau de flexibilidade no projeto das redes. A integração entre RSSF e a World Wide Web, deve ser estabelecida por um meio onde a troca de informações seja simples eficiente e vise economia dos recursos dos nós sensores. A utilização de serviços Web tem sido uma abordagem que cada vez mais alcança estes requisitos mencionados. As abordagens mais comuns remetentes a serviços Web são baseadas na troca de informações por meio de mensagens SOAP. Porém existem alguns fatores que fazem este tipo de troca de informação ser desvantajoso: em primeiro lugar, mensagens SOAP utilizam a Web como um meio de transporte e não um componente de integração. Em segundo lugar, este tipo de comunicação consome mais energia e é mais complexa que abordagem RESTful em termos de memória, largura de banda e requisitos computacionais, especialmente pelo fato da camada SOAP e a crescente pilha dos protocolos de comunicação dos padrões de serviços Web (WS-*). Ainda relacionado a este fato, é possível discutir sobre tradicionais fornecedores de middlewares, como Common Object Request Broker Architecture(CORBA) e Distributed Component Object Model (DCOM) [Yazar e Dunkels 2009], que, neste contexto, acabam fornecendo as mesmas desvantagens que serviços Web baseados em SOAP, além da desvantagem adicional de não funcionarem através de firewall ou servidores proxy, já que o protocolo HTTP não é empregado nos mesmos.

1.3 Objetivos 6 1.3 Objetivos Com base nas necessidades específicas de economia de recursos computacionais em redes de sensores sem fio, este trabalho tem como objetivo e contribuição, analisar por meio de testes e simulações, o uso de um eficiente e econômico paradigma de troca de informações entre RSSF e aplicações clientes por meio da Internet utilizando serviços Web. A partir do tema proposto, este trabalho avalia a economia de recursos computacionais em redes de sensores sem fio do ponto de vista da utilização de serviços Web nas abordagens SOAP e REST, efetuando trocas de informações entre redes de sensores sem fio e aplicações Web por meio da Internet, objetivando-se, desta forma: Analisar uma forma alternativa de integração entre redes de sensores sem fio e a Web que proporcione baixa complexidade na utilização por parte de usuários (máquinas ou humanos) e facilidade de manutenção para desenvolvedores, isto é, utilizar a abordagem REST para comunicação entre aplicações clientes e nós sensores por meio da Internet; Verificar por meio de análises e simulações comparativas o paradigma para execução de serviços Web que implique em um menor consumo de energia por parte dos dispositivos sensores. 1.4 Organização O trabalho que se segue está dividido nos seguintes capítulos: no capítulo 2 é feita uma revisão básica dos conceitos de redes de sensores em fio; no capítulo 3 é feita a revisão bibliográfica sobre temas relacionados à computação distribuída, como chamadas de procedimentos remotos, linguagens de intercâmbio de dados e arquiteturas de software, serviços Web, entre outros temas relevantes que proporcionam embasamento teórico a este trabalho. No capítulo 4 é descrita as ferramentas e softwares empregados para desenvolvimento deste trabalho; no capítulo 5 tem-se a transcrição das simulações realizadas, explicitando parâmetros utilizados para a realização dos testes, como tempo de execução e consumo de energia nos cenários definidos; no capítulo 6 é feita a discussão com base nas análises dos resultados obtidos por meio das simulações; finalmente no capítulo 7 é realizada a conclusão deste trabalho, descrevendo sumariamente os tópicos e apontando as

1.4 Organização 7 conclusões encontradas com o desenvolvimento do mesmo. Para o encerramento das conclusões, alguns temas relevantes para trabalhos futuros são apresentados.

8 2 Redes de Sensores Sem Fio 2.1 Fundamentos As RSSFs são descritas como uma subclasse das redes do tipo ad hoc [Corson, Macker e Cirincione 2002]. Estas são caracterizadas por efetuarem a descentralização de requisições e respostas entre os componentes atuantes na rede pela ausência de um ponto de coleta que centraliza os dados. Qualquer dispositivo pertencente a esta rede é capaz de efetuar roteamento de dados, trabalhando em colaboração com requisições e e recepções de dispositivos adjacentes. Outra subclasse das redes ad hoc são as redes ad hoc móveis, conhecidas como MANET (Mobile Ad hoc Network) [Corson e Macker 1999]. Nestas redes, os dispositivos participantes podem se movimentar e criar novas topologias de rede, independente de qualquer infraestrutura. Possuindo alcance pequeno de rádio, em caso dos dados solicitados estarem presentes em um dispositivo que não possui alcance direto ao solicitante, dispositivos que compõem as MANETs utilizam o recurso de tráfego dados por meio de múltiplos saltos (hops) fazendo com que a informação encontre o dispositivo que fez a solicitação. Por tal razão, as MANETs são também conhecidas como redes multi-hop. A Figura 2.1 apresenta um exemplo de MANET com dispositivos diversos do dia a dia que poderiam trocar informações entre si. RSSFs são geralmente formadas por grandes quantidades de dispositivos chamados nós sensores, os quais podem ser distribuídos em ambientes com diferentes características, incluindo áreas onde a presença humana para administração e manutenção seja difícil ou impossível, como em vulcões, matas fechadas ou até mesmo em um território hostil devido à ocorrência de uma guerra [Ruiz et al. 2004]. A característica fundamental de um projeto de RSSF é capturar dados em um ambiente, executar ou não algum processamento sobre eles dependendo da política implementada nessa rede, e encaminhá-los a um ponto de acesso com o objetivo de que um observador externo possa monitorar remotamente essa área de interesse.