Leveraging constrained devices for custom code execution in the Internet of things [recurso eletrônico] : Utilizando dispositivos limitados para execução de código personalizado na Internet das coisas
Flávia Pisani
TESE
Inglês
T/UNICAMP P672L
[Utilizando dispositivos limitados para execução de código personalizado na Internet das coisas]
Campinas, SP : [s.n.], 2019.
1 recurso online (104 p.) : il., digital, arquivo PDF.
Orientador: Edson Borin
Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação
Resumo: Perspectivas atuais para a Internet das Coisas (IoT, do inglês, Internet of Things) indicam que, dentro de alguns anos, uma rede global de objetos irá conectar dezenas de milhares de dispositivos através da Internet. A maioria deles conterá sensores que geram fluxos de dados constantemente e...
Ver mais
Resumo: Perspectivas atuais para a Internet das Coisas (IoT, do inglês, Internet of Things) indicam que, dentro de alguns anos, uma rede global de objetos irá conectar dezenas de milhares de dispositivos através da Internet. A maioria deles conterá sensores que geram fluxos de dados constantemente e é comum que usuários precisem processar esses dados antes de armazenar os valores finais. No entanto, com o crescimento progressivo da IoT, esta estratégia precisa ser reavaliada, já que transmitir um imenso volume de informações pela rede será muito custoso. Uma maneira de atender a estes futuros requisitos é trazer a computação para onde a informação já está. Com essa premissa, surgiu um paradigma chamado computação em névoa que propõe processar os dados perto de dispositivos da borda da rede. Outra característica comum dentre o grande número de dispositivos IoT será que seus recursos (ex.: energia, memória e processamento) serão limitados. O Instituto Nacional de Padrões e Tecnologia dos EUA chama a atenção para este tipo de dispositivo dentro do contexto da computação em névoa, nomeando-os nós de neblina, pois são nós de névoa leves. Contudo, eles caracterizam estes nós como mais especializados, dedicados e geralmente compartilhando a mesma localidade que os dispositivos finais inteligentes a quem eles atendem. Em nosso trabalho, nós propomos uma abordagem diferente, onde estes dispositivos limitados estão integrados com sensores e são capazes de executar código de propósito geral, podendo assim executar códigos personalizados enviados pelo usuário. A análise desta proposta é dividida em duas partes. Primeiro, nós desenvolvemos uma plataforma chamada LibMiletusCOISA (LMC), que permite que usuários executem seus códigos em dispositivos limitados e a comparamos com o arcabouço Apache Edgent. O desempenho do LMC foi melhor que o do Edgent quando ambos foram executados no mesmo dispositivo e ele possibilitou a execução de código em dispositivos limitados que eram muito restritos para executar a outra ferramenta. Depois, criamos dois modelos onde o usuário escolhe uma certa métrica de custo (ex.: número de instruções, tempo de execução ou consumo de energia) e a emprega para decidir onde o seu código deve ser executado. Um deles é um modelo matemático que usa uma equação linear para auxiliar o usuário a dividir o seu problema em um conjunto de variáveis e então determinar os custos de realizar a sua computação usando a nuvem e a névoa. O outro é um modelo visual que permite que o usuário conclua facilmente qual é a abordagem mais vantajosa em um cenário específico. Nós usamos estes modelos para identificar situações onde a abordagem escolhida é executar o código no dispositivo que coletou os dados e também simulamos cenários futuros onde mudanças na tecnologia podem impactar a decisão do usuário
Ver menos
Abstract: Current prospects for the Internet of Things (IoT) indicate that, within the next few years, a global network of objects will connect tens of billions of devices through the Internet. Most of them will contain sensors that constantly generate data streams and it is common for users to need...
Ver mais
Abstract: Current prospects for the Internet of Things (IoT) indicate that, within the next few years, a global network of objects will connect tens of billions of devices through the Internet. Most of them will contain sensors that constantly generate data streams and it is common for users to need to process these data before storing the final values. However, with the ever-growing scale of the IoT, this strategy must be re-evaluated, as transmitting an immense volume of information through the network will be too taxing. One way to meet these coming requirements is to bring the computation to where the information already is. With this premise, emerged a paradigm called fog computing that proposes to process data closer to network edge devices. Another common characteristic among a large number of IoT devices will be that their resources (e.g., power, memory, and processing) will be limited. The USA's National Institute of Standards and Technology calls attention to this type of device within the fog computing context, naming them mist nodes, as they are lightweight fog computing nodes. Nevertheless, they characterize these nodes as more specialized, dedicated, and often sharing the same locality with the smart end-devices they service. In our work, we propose a different approach, where these constrained devices are integrated with sensors and capable of general-purpose code execution, thus being able to run custom code sent by users. The analysis of this proposal is divided into two parts. First, we developed a platform called LibMiletusCOISA (LMC), which allows users to execute their code on constrained devices and compared it to the Apache Edgent framework. LMC outperformed Edgent when both were executed on the same device, and made it possible to execute the code on a constrained device that was too limited to execute the other tool. Then, we created two models where the user chooses a certain cost metric (e.g., number of instructions, execution time, or energy consumption) and employs it to decide where their code should be executed. One of them is a mathematical model that uses a linear equation to help the user break down their problem into a set of variables and then determine the costs of performing their computation using the cloud and the fog. The other is a visual model that allows the user to easily conclude what is the most profitable approach in a specific scenario. We employed these models to identify the situations where executing the code on the device that collected the data is the chosen approach and also simulated future scenarios where changes in the technology can impact the user's decision
Ver menos
Requisitos do sistema: Software para leitura de arquivo em PDF
Borin, Edson, 1979-
Orientador
Ueyama, Jó, 1967-
Avaliador
Endler, Markus
Avaliador
Madeira, Edmundo Roberto Mauro, 1958-
Avaliador
Bittencourt, Luiz Fernando, 1981-
Avaliador
Leveraging constrained devices for custom code execution in the Internet of things [recurso eletrônico] : Utilizando dispositivos limitados para execução de código personalizado na Internet das coisas
Flávia Pisani
Leveraging constrained devices for custom code execution in the Internet of things [recurso eletrônico] : Utilizando dispositivos limitados para execução de código personalizado na Internet das coisas
Flávia Pisani