27 research outputs found

    A Low-Overhead Script Language for Tiny Networked Embedded Systems

    Get PDF
    With sensor networks starting to get mainstream acceptance, programmability is of increasing importance. Customers and field engineers will need to reprogram existing deployments and software developers will need to test and debug software in network testbeds. Script languages, which are a popular mechanism for reprogramming in general-purpose computing, have not been considered for wireless sensor networks because of the perceived overhead of interpreting a script language on tiny sensor nodes. In this paper we show that a structured script language is both feasible and efficient for programming tiny sensor nodes. We present a structured script language, SCript, and develop an interpreter for the language. To reduce program distribution energy the SCript interpreter stores a tokenized representation of the scripts which is distributed through the wireless network. The ROM and RAM footprint of the interpreter is similar to that of existing virtual machines for sensor networks. We show that the interpretation overhead of our language is on par with that of existing virtual machines. Thus script languages, previously considered as too expensive for tiny sensor nodes, are a viable alternative to virtual machines

    Wisent: Robust Downstream Communication and Storage for Computational RFIDs

    Full text link
    Computational RFID (CRFID) devices are emerging platforms that can enable perennial computation and sensing by eliminating the need for batteries. Although much research has been devoted to improving upstream (CRFID to RFID reader) communication rates, the opposite direction has so far been neglected, presumably due to the difficulty of guaranteeing fast and error-free transfer amidst frequent power interruptions of CRFID. With growing interest in the market where CRFIDs are forever-embedded in many structures, it is necessary for this void to be filled. Therefore, we propose Wisent-a robust downstream communication protocol for CRFIDs that operates on top of the legacy UHF RFID communication protocol: EPC C1G2. The novelty of Wisent is its ability to adaptively change the frame length sent by the reader, based on the length throttling mechanism, to minimize the transfer times at varying channel conditions. We present an implementation of Wisent for the WISP 5 and an off-the-shelf RFID reader. Our experiments show that Wisent allows transfer up to 16 times faster than a baseline, non-adaptive shortest frame case, i.e. single word length, at sub-meter distance. As a case study, we show how Wisent enables wireless CRFID reprogramming, demonstrating the world's first wirelessly reprogrammable (software defined) CRFID.Comment: Accepted for Publication to IEEE INFOCOM 201

    Detecting Malicious Code in Sensor Network Applications Using Petri Nets

    Get PDF
    Sensor Network reprogramming is essential and crucial for software updates or bug fixes on nodes. Reprogramming is a challenging task as attackers can insert malicious code during code propagation. Such code propagates in an epidemic way bringing down the whole network. The proposed model called Malicious Code Detector is based on Petri nets. The strategy to use Petri nets to model attacks is to understand the properties of the attacks. The proposed system model detects the malicious code at each node. The main components of the System are Detection Tool and library of attack Petri nets. The Detection Tool based on a Detection Algorithm transforms code to Petri nets and uses attack Petri nets to detect the presence of corrupt code/attacks in the sensor application. Detecting such corrupt code can lead to shutting down of that particular node and preventing further propagation of this malicious code throughout the network.Computer Science Departmen

    Multi-Agent Fault Tolerance Inspired by a Computational Analysis of Cancer

    Get PDF
    Abstract In cancer biology, it is known that cancer cells can disappear without therapy, but not how. We propose that cells communicate such that primarily malfunctioning cells (tumors) die. We also propose that this same communication can be used as inspiration for a faulttolerance mechanism for multi-agent and distributed systems to remove faulty agents using only local information. I examine the communication protocols necessary for removing these faults in both systems

    Erlang-based Software Update Platform for Mobile Devices

    Get PDF
    Growing computational power of mobile devices modifies existing approachesto data processing in large-scale sensor networks. Since sensors are no lon-ger limited to simple data acquisition tasks, such networks can be consideredcomplex geo-distributed data processing systems. Features and requirements ofsuch systems justify use of Erlang language and technology for programmingmobile devices. The technology provides several crucial features, including fault-tolerance, message-passing concurrency or hot-code loading. In this paper theproblem of software management in Erlang-based distributed systems is di-scussed. A mechanism for installing and upgrading Erlang applications usingoperating system package manager is described. A platform for updating so-ftware in large scale systems is presented

    A network access control framework for 6LoWPAN networks

    Get PDF
    Low power over wireless personal area networks (LoWPAN), in particular wireless sensor networks, represent an emerging technology with high potential to be employed in critical situations like security surveillance, battlefields, smart-grids, and in e-health applications. The support of security services in LoWPAN is considered a challenge. First, this type of networks is usually deployed in unattended environments, making them vulnerable to security attacks. Second, the constraints inherent to LoWPAN, such as scarce resources and limited battery capacity, impose a careful planning on how and where the security services should be deployed. Besides protecting the network from some well-known threats, it is important that security mechanisms be able to withstand attacks that have not been identified before. One way of reaching this goal is to control, at the network access level, which nodes can be attached to the network and to enforce their security compliance. This paper presents a network access security framework that can be used to control the nodes that have access to the network, based on administrative approval, and to enforce security compliance to the authorized nodes

    Intelligence at the Extreme Edge: A Survey on Reformable TinyML

    Full text link
    The rapid miniaturization of Machine Learning (ML) for low powered processing has opened gateways to provide cognition at the extreme edge (E.g., sensors and actuators). Dubbed Tiny Machine Learning (TinyML), this upsurging research field proposes to democratize the use of Machine Learning (ML) and Deep Learning (DL) on frugal Microcontroller Units (MCUs). MCUs are highly energy-efficient pervasive devices capable of operating with less than a few Milliwatts of power. Nevertheless, many solutions assume that TinyML can only run inference. Despite this, growing interest in TinyML has led to work that makes them reformable, i.e., work that permits TinyML to improve once deployed. In line with this, roadblocks in MCU based solutions in general, such as reduced physical access and long deployment periods of MCUs, deem reformable TinyML to play a significant part in more effective solutions. In this work, we present a survey on reformable TinyML solutions with the proposal of a novel taxonomy for ease of separation. Here, we also discuss the suitability of each hierarchical layer in the taxonomy for allowing reformability. In addition to these, we explore the workflow of TinyML and analyze the identified deployment schemes and the scarcely available benchmarking tools. Furthermore, we discuss how reformable TinyML can impact a few selected industrial areas and discuss the challenges and future directions

    Agilla: A Mobile Agent Middleware for Sensor Networks

    Get PDF
    Agilla is a mobile agent middleware for sensor networks. Mobile agents are special processes that can migrate across sensors. They increase network flexibility by enabling active in-network reprogramming. Neighbor lists and tuple spaces are used for agent coordination. Agilla was originally implemented on Mica2 motes, but has been ported to other platforms. Its Mica2 implementation consumes 41.6KB of code and 3.59KB of data memory. Agents can move five hops in less than 1.1s with over 92% success. Agilla was used to develop multiple applications related to fire detection and tracking, cargo container monitoring, and robot navigation

    Optimizing Sensor Network Reprogramming via In-situ Reconfigurable Components

    Get PDF
    International audienceWireless reprogramming of sensor nodes is a critical requirement in long-lived Wireless Sensor Networks (WSNs) for several concerns, such as fixing bugs, upgrading the operating system and applications, and adapting applications behavior according to the physical environment. In such resource-poor platforms, the ability to efficiently delimit and reconfigure the necessary portion of sensor software--instead of updating the full binary image--is of vital importance. However, most of existing approaches in this field have not been widely adopted to date due to the extensive use of WSN resources or lack of generality. In this article, we therefore consider WSN programming models and run-time reconfiguration models as two interrelated factors and we present an integrated approach for addressing efficient reprogramming in WSNs. The middleware solution we propose, RemoWare, is characterized by mitigating the cost of post-deployment software updates on sensor nodes via the notion of in-situ reconfigurability and providing a component-based programming abstraction to facilitate the development of dynamic WSN applications. Our evaluation results show that RemoWare imposes a very low energy overhead in code distribution and component reconfiguration, and consumes approximately 6% of the total code memory on a TelosB sensor platform
    corecore