8 research outputs found

    Resource savings in delay tolerant networks

    Get PDF
    Tese de mestrado, Engenharia Informática (Engenharia de Software) Universidade de Lisboa, Faculdade de Ciências, 2018Este documento foca-se no trabalho que foi feito na dissertação de mestrado no Departamento de Informática da Faculdade de Ciências da Universidade de Lisboa ao longo de um ano. O objectivo inicial foi criar um protótipo de middleware em ambiente de simulador que servisse o propósito de facilitar disseminação de dados num ambiente urbano de cidade inteligente. Apesar de apontámos para uma solução mais genérica possível, por de trás deste objectivo e servindo de motivação existe um cenário de caso de uso no qual nos focámos. Este cenário descreve uma cidade na qual a recolha do lixo tem que ser otimizada e em cada caixote existe um sensor que produz leituras do nível atual de enchimento. O desafio coloca-se em disseminar a informação produzida por estes sensores de uma forma eficaz e sem grandes gastos de recursos. Como tal, recorremos ao facto de já existir uma infraestrutura subjacente para resolver o problema. Através da utilização de carros de polícia, bombeiros, táxis ou por exemplo camiões do lixo, fazemos com que estes ajudem na recolha das leituras feitas pelos sensores. O facto de esta recolha de leituras ser feita localmente por veículos que circulam na cidade, permite que as baterias dos sensors sofram uma descarga menor do que se tivessem que enviar diretamente a informação para o destino final mas utilizando recursos mais dispendiosos. Para melhorar esta ideia e de forma a que o resultado final fosse o mais completo possível, começámos então por fazer um estudo do estado da arte. Ao ler e considerar trabalho feito nas áreas de espaços de tuplos, redes tolerantes a atraso, cidades inteligentes, simuladores de redes, redes de sensores e difusão epidémica foi possível melhorar consideravelmente o produto final desta dissertação. Este estudo de outros trabalhos é sem dúvida um passo muito importante no decorrer desta dissertação, pois através de observação, quer de lacunas, quer de pontos fortes existentes noutras soluções, permitiu considerar e pensar de forma competente a solução a desenvolver. Partindo então deste estudo foi definido um modelo de sistema que permitiu perceber de forma eficaz alguns requisitos e condições que tinham de ser cumpridos. Dado este trabalho inicial foi então definido a especificação para o middleware. Foi determinada uma semântica para o espaço de tuplos que suporta a persistência de dados para cada um dos nós da rede. Após isto, foi implementado uma versão de espaços de tuplos em C/C++ que cumprisse esta mesma semântica. Em comunhão foi elaborado um protocolo que permitisse que estes espaços de tuplos fossem sincronizados entre os vários nós existentes na rede. Este protocolo foi concebido utilizando conceitos de flooding e difusão epidémica. Para além disso foi criado um canal prioritário para que se podesse proceder ao envio de leituras cujo o cariz fosse mais importante. De forma a manter um certo nível de eficiência no middleware, foi também criado um mecanismo de remoção de tuplos duplicados na rede. Este mecanismo recorreu ao uso de épocas definidas em tempo de configuração. Foi também delineado uma forma parcimoniosa de serialização dos tuplos trocados na rede com o objetivo de melhorar a eficiência deste middleware. Por fim, criámos uma forma de atualização de código para os sensores que também utiliza a infraestrutura de cidade para se disseminar para cada sensor. Toda esta implementação foi feita especificamente para o Network Simulator 3, sendo desenvolvida em C/C++. O simulador de redes em questão tornou-se extremamente útil pois permitiu testar numa fase embrionária um cenário que dado a escala seria difícil de avaliar numa situção real. Pelos inúmeros módulos já existentes de raiz, foi possível implementar características como comunicação 3G/4G ou simulação de bateria em cada sensor. De forma a oferecer uma grande flexibilidade para que este middleware possa ser aplicado em diferentes cenários com diferentes características, criámos uma configuração parametrizável de valores que fazem com que o middleware se adapte. Esta flexibilidade é muito importante para o seu funcionamento dado que, muitos ambientes urbanos têm características diferentes, como por exemplo densidade populacional, o que por sua vez, afeta o número de veículos presentes na infraestrutura. Após a implementação do protótipo de middleware passámos então à fase de avaliação. Para esta fase de avaliação começámos em primeiro lugar, por procurar dois padrões de mobilidade de veículos em ambientes urbanos. Estes padrões servem para ser aplicados no simulador de rede de forma a criar um movimento realista e relevante para as nossas simulações. Os cenários escolhidos foram: um conjunto de posições de GPS de múltiplos táxis na cidade de Roma e também o registo de posições de GPS para uma rede de transportes de autocarro na zona urbana de Seattle. Apesar de haver algumas diferenças relevantes entre estes dois padrões, como por exemplo a dimensão total do cenário, esta mesma discrepância entre eles serve para avaliar o middleware em diferentes ambientes. Escolhidos então estes padrões foi desenhado um plano para os testes. De forma a criar alguma relevância estatística foi feita uma bateria de simulações sobre o middleware, sendo no total efectuadas 480 simulações. Com os resultados destas simulações, dos quais foram extraídos valores como taxa de entrega e latência de entrega, foram utilizadas algumas métricas relevantes para fazer uma avaliação. Usando gráficos gerados, foi possível efetuar uma discussão da eficiência do middleware podendo avaliar certas situações nas quais determinadas características se sobressaíram. No entanto ficou claro que é ainda necessário fazer uma avaliação muito mais extensa de todo o trabalho dado a complexidade inerente aos múltiplos parâmetros que existem no middleware, que sendo dispostos em diferentes configurações podem apresentar resultados muito díspares. Por fim, foram tiradas algumas conclusões do que foi feito e das limitações que atualmente apresenta. Nesta conclusão foi revisto se os objectivos que inicialmente se propôs foram de alguma forma cumpridos. Foi também discutido algum trabalho que pode vir a ser feito no futuro. Este trabalho futuro apresenta algumas funcionalidades que melhoram a eficiência e usabilidade do middleware. Um exemplo é o enriquecimento da semântico do espaço de tuplos utilizado que permitirá ao utilizador efectuar mais facilmente pesquisas de tuplos com um esforço mais reduzido.This document focuses on the work done on the master thesis at the Informatics Department in the Faculdade de Ciências da Universidade de Lisboa. With this work we aim at offering a reliable middleware that is capable of supporting data dissemination in a network composed of different types of hardware. Mainly these different components are sensors and mobile devices. We hope to offer a solution that is deployable in scenarios that have an high degree of heterogeneity without compromising the quality of service and functionalities of the applications used with the middleware. With these type of proposal we expect to cover many cases of ubiquitous computing such as the ones we find in smart cities scenarios. Although our solution is aiming to be as generic as possible we take a practical case into account in order to provide a working example of our work. We take advantage of the infrastructure now available in some cities such as a mobile ad hoc network composed of public service vehicles. Doing so we will use our work in a garbage collection project where sensors read data from garbage cans in order to inform a set of base stations of their garbage levels. With this we allow the optimization of garbage collection in the future. Also by testing our middleware in this scenario we intend to gather more information that may allow for future improvements in the middleware. So far we were able to implement a working prototype simulation designed for the Network Simulator 3. In this simulation we used some mobility patterns and tested the middleware in order to achieve results on its delivery rate and other metrics. By perusing previous work done in studied areas of research such as tuple spaces and wireless sensor networks, we were able improve our concept. As a goal we look forward to create a piece of software that contributes to the community, making ease the process of going about our routines, work and the way we live in a more automated and pleasant smart city

    The Continuum Architecture: Towards Enabling Chaotic Ubiquitous Computing

    Get PDF
    Interactions in the style of the ubiquitous computing paradigm are possible today, but only in handcrafted environments within one administrative and technological realm. This thesis describes an architecture (called Continuum), a design that realises the architecture, and a proof-of-concept implementation that brings ubiquitous computing to chaotic environments. Essentially, Continuum enables an ecology at the edge of the network, between users, competing service providers from overlapping administrative domains, competing internet service providers, content providers, and software developers that want to add value to the user experience. Continuum makes the ubiquitous computing functionality orthogonal to other application logic. Existing web applications are augmented for ubiquitous computing with functionality that is dynamically compiled and injected by a middleware proxy into the web pages requested by a web browser at the user?s mobile device. This enables adaptability to environment variability, manageability without user involvement, and expansibility without changes to the mobile. The middleware manipulates self-contained software units with precise functionality (called frames), which help the user interact with contextual services in conjunction with the data to which they are attached. The middleware and frame design explicitly incorporates the possibility of discrepancies between the assumptions of ubiquitous-computing software developers and field realities: multiple administrative domains, unavailable service, unavailable software, and missing contextual information. A framework for discovery and authorisation addresses the chaos inherent to the paradigm through the notion of role assertions acquired dynamically by the user. Each assertion represents service access credentials and contains bootstrapping points for service discovery on behalf of the holding user. A proof-of-concept prototype validates the design, and implements several frames that demonstrate general functionality, including driving discovery queries over multiple service discovery protocols and making equivalences between service types, across discovery protocols

    SEMAN - uma proposta de Middleware seguro para as redes ad hoc móveis

    Get PDF
    Orientador : Prof. Dr. Luiz Carlos Pessoa AlbiniTese (doutorado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Ciência da Computação. Defesa: Curitiba, 04/04/2014Inclui referênciasResumo: Devido às particularidades das redes ad hoc móveis (MANETs - Mobile Ad Hoc Networks), como a topologia dinâmica, a ausência de infraestrutura e a sua característica decentralizada, a implementação de aplicações complexas e flexíveis para estas redes torna-se um desafio. Para permitir o desenvolvimento dessas aplicações, diversas soluções de middleware foram propostas. Contudo, as soluções encontradas não consideram plenamente os requisitos de segurança dessas redes. Este trabalho apresenta um estudo dos middlewares propostos para as MANETs, relatando o seu funcionamento e apresentando um comparativo das funcionalidades disponíveis. Esses middlewares são categorizados de acordo com a seguinte classificação, proposta neste trabalho: baseados em espaços de tuplas, baseados em P2P, baseados em contexto, cross-layer e orientados à aplicação. Em seguida, com base nas limitações estudadas, é proposto um novo middleware de segurança para as MANETs, chamado de SEcure Middleware for Ad hoc Mobile Networks (SEMAN - Middleware seguro para as redes ad hoc móveis), que fornece um conjunto de serviços de segurança para facilitar o desenvolvimento de aplicações distribuídas, complexas e flexíveis. Para fornecer tais serviços e garantir a segurança, o SEMAN considera o contexto das aplicações e organiza os nós em grupos, também baseados nesses contextos. O middleware prevê três módulos: serviço, processamento e segurança. O módulo de serviço é responsável por manter todos os serviços e aplicações que são disponibilizados pelo nó hospedeiro a outros nós da rede. O módulo de processamento é responsável por manter o funcionamento central do middleware, atendendo os pedidos e gerenciando o registro dos serviços e componentes disponíveis. O módulo de segurança é o ponto principal do middleware e o foco desta tese. Ele possui os componentes de gerenciamento de chaves, de confiança e de grupos. Todos esses componentes foram desenvolvidos pelo autor e são descritos neste trabalho. Eles são suportados por um núcleo de operações criptográficas e atuam de acordo com regras e políticas de segurança. A integração desses componentes fornece garantias de segurança contra ataques às aplicações que utilizam o middleware.Abstract: Due to the particularities of Mobile Ad Hoc Networks (MANETs), as their dynamic topology, lack of infrastructure and decentralized characteristic, the implementation of complex and flexible applications is a challenge. To enable the deployment of these applications, several middleware solutions were proposed. However, these solutions do not completely consider the security requirements of these networks. This thesis presents middleware solutions for MANETs, by describing their operations and presenting a comparative of the available functionalities. The middlewares were grouped according to this classification: tuple space-based, P2P-based, context-based, cross-layer and applicationoriented. Then, based on the limitations of the studied solutions, a new secure middleware is proposed, called SEcure Middleware for Ad hoc Networks (SEMAN), which provides a set of basic and secure services to MANETs aiming to facilitate the development of distributed, complex and flexible applications. To provide such services and ensure security to the applications, SEMAN considers the context of applications and organizes nodes into groups, also based on these contexts. The middleware includes three modules: service, processing, and security. Service module is responsible for maintaining all services and applications hosted by nodes. The processing module is responsible for maintaining the middleware core operation, listening the requests and managing the registry of available services and components. The security module is the main part of the middleware and the focus of this thesis. It has the following components: key management, trust management and group management. All these components were developed and are described in this work. They are supported by a cryptographic core and behave according to security rules and policies. The integration of these components provides security assurance against attacks to the applications that use the middleware

    Mobile Computing, Mobile Networks

    No full text
    corecore