FG Verteilte Systeme und Betriebssysteme
Drones can be connected as a swarm to precisely monitor large agricultural areas and manage them more sustainable. They test sensor technology in real environments and solve complex tasks faster. Key aspects include accurate localization, reliable communication, and dynamic flight control. The localization accuracy of RTK-GNSS-enabled system, which includes GPS, GLONASS, GALILEO positioning systems is compared with Ultra-Wideband (UWB) one. The UPWARDS communication hub is presented as a processing and connection point across swarm agents. This controller also incorporates collision avoidance features and testing of evasion strategies.
BLE Periodic Advertising as an Alternative to BLE Mesh and Scatternets for Multihop Communication
(2023)
Waldwächter 5G is a project about preventing damages to forests, for example by fire. For this case, sensors connected in a Bluetooth Low Energy (BLE) multi-hop environment are deployed to detect abnormalities. BLE is a widely spread wireless communication technology used for low power devices, such as smart home appliances or sensors. This paper presents two approaches for BLE multi-hop communication, BLE Mesh as a flooding based network primarily used for non-power-limited devices and BLE scatternets as a lose collective term for a lot of interconnected smaller networks. It then introduces the idea of a third possible option, a network topology based on a BLE 5.0 feature called Periodic Advertising (PA).
The idea of an approach to PA meshes is explained and the advantages presented.
Assessing the Feasibility of Combined BLE and Wi-Fi Communication for High Data Sensing Applications
(2023)
Advanced sensors generate more data than can be transmitted using classic battery-powered wireless sensor networks. While using Wi-Fi would provide plenty of throughput, the receivers are energy hungry and, thus, the radio time needs to be reduced. Previous research suggests to combine Wi-Fi with low-power technologies such as BLE for an energy efficient coordination of the Wi-Fi radios. Existing approaches focus on individual point-to-point routes whereas certain applications require concurrent transmissions. We evaluated the combination of BLE and Wi-Fi on the ESP32-S3 multi-radio microcontroller through detailed energy and throughput measurements. The results show that established BLE connections allow to activateWi-Fi quickly on-demand; the energy efficiency of the data transmission is significantly improved over previous works but the BLE connection setup is prohibitively slow. While the combination of BLE and Wi-Fi provides high throughput with good energy efficiency, careful design of the BLE-based signalling protocol is necessary to also achieve low latency.
Unmanned Aerial Vehicles (UAVs) are evolving as adaptable platforms for a wide range of applications such as precise inspections, emergency response, and remote sensing.
Autonomous UAV swarms require efficient and stable communication during deployment for a successful mission execution. For instance, the periodic exchange of telemetry data between all swarm members provides the foundation for formation flight and collision avoidance. However, due to the mobility of the vehicles and instability of wireless transmissions, maintaining a secure and reliable all-to-all communication remains challenging.
This paper investigates encrypted and authenticated multi-hop broadcast communication based on the transmission of custom IEEE 802.11 Wi-Fi data frames.
Small Unmanned Aerial Vehicles (UAVs) have vast application potential from industrial logistics and disaster monitoring to smart farming, for example, to create maps with Normalized Difference Vegetation Index (NDVI) cameras and AI-based image classification or the precision spot application of fertilizers. Operating multiple UAVs in parallel, including those with different specializations, enables efficient coverage of large areas. While existing research focused mainly on predefined flight formations for swarms or autonomous missions for single UAVs, the focus of this work is on multiple UAVs with individually adaptable missions. We derive communication system requirements from swarm coordination algorithms and present a respective design. The resulting modular architecture enables future research on autonomous adaptive UAV swarms and their use as flying sensor platforms.
Neverlast: Towards the Design und Implementation of the NVM-based Everlasting Operating System
(2021)
Pinpoint the Joules: Unifying Runtime-Support for Energy Measurements on Heterogeneous Systems
(2020)
For the design and operation of today's computer systems, power and energy requirements are highest priorities. Unlike performance analyses, however, power and energy measurements of heterogeneous systems are difficult to conduct. Especially at the system-software level, performing power and energy measurements remains challenging. Yet, such measurements are essential to improve software components for low power and high energy-efficiency.In this paper, we analyze and discuss the power and energy characteristics of several heterogeneous systems with up to 20 cores (160 hardware threads) and 1 TB of main memory. For the analyzed systems, we outline challenges regarding power and energy measurements and show ways to overcome limitations (i.e., sampling constraints). To improve the current state of the art in power and energy measurements at the system-software level, we present the design and implementation of PINPOINT, an energy-profiling tool which unifies different power and energy measurement interfaces.
The tiny logic elements in modern integrated circuits increase the rate of transient failures significantly. Therefore, redundancy on various levels is necessary to retain reliability. However, for mixed-criticality scenarios, the typical processor designs offer either too little fault-tolerance or too much redundancy for one part of the applications. Amongst others, we specifically address redundant processor internal functional units (FU) to cope with transient errors and support wear leveling. A real-time operating system (RTOS) was extended to control our prototypical hardware platform and, since it can be configured deterministically within few clock cycles, we are able to reconfigure the FUs dynamically, at process switching time, according to the specified critically of the running processes. Our mechanisms were integrated into the Plasma processor and the Plasma-RTOS. With few changes to the original software code, it was, for example, possible to quickly change from fault-detecting to fault-correcting modes of the processor on demand.
The strive for performance, low power consumption, and less chip area have been diminishing the reliability and the time to fault occurrences due to wear out of electronic devices. Recent research has shown that functional units within processors usually execute a different amount of operations when running programs. Therefore, these units present different individual wear out during their lifetime. Most existent schemes for reconfiguration of processors due to fault detection and other processor parameters are done at the level of cores which is a costly way to achieve redundancy. This paper presents a low latency (approximately 1 clock cycle) software controlled mechanism to reconfigure units within processor cores according to predefined parameters. Such reconfiguration capability delivers features like wear out balance of processor functional units, configuration of units according to the criticality of tasks running on an operating system and configurations to gain in performance (e.g. parallel execution) when possible. The focus of this paper is to show the implemented low latency reconfiguration mechanism and highlight its possible main features.
Scaling minimum features of ICs down to the 10nm- area and below has allowed high integration rates in electronics. Scaling at supply voltages of 1V and below also implies a rising level of stress which drives aging effects that reduce switching speed and the expected life time. Additionally, vulnerability from particle radiation is increased. Hence, fault detection and on- line correction become a must for many applications. However, not only fault tolerance but self-awareness becomes also an advantage. Provided that by being aware of its own healthy state allow optimized configurations regarding system operation modes and configurable hardware mechanism. This paper shows a preliminary work in a configurable circuit and explores its configuration possibilities when integrated into a complete system.
Cache-Line Transactions: Building Blocks for Persistent Kernel Data Structures Enabled by AspectC++
(2019)
High-speed protocol processing that provides data-rates of 100 Gbit/s and beyond to the application stresses the whole communication system up to its outer limits. Such a system can only be utilized by employing highly specialized, application specific protocols, that are tailored for certain communication parameters, such as the packet loss rate. However, the requirements for most applications are not static, and a protocol designer cannot anticipate all possible communication conditions upfront. The contradiction between specialized protocols and unknown communication parameters can be solved by adapting the protocol implementation on demand to the current communication conditions. However, such an approach needs a protocol description language that allows the automatic specialization of protocols. In this paper, we present the Protocol Engine Template Language (PETL), that allows the automatic implementation of protocols by a constructive approach for a variety of communication conditions from protocol implementation templates.
Protocol Processing for 100 Gbit/s and Beyond - A Soft Real-Time Approach in Hardware and Software
(2017)
The erratic behavior of wireless channels is still a major hurdle in the implementation of robust applications in wireless networks. In the past it has been argued that self-stabilization is a remedy to provide the needed robustness. This assumption has not been verified to the extent necessary to convince engineers implementing such applications. A major reason is that the time in which a self-stabilizing system returns to a valid state is unpredictable and potentially unbound. Failure rates typically depend on physical phenomena and in self-stabilizing systems each node tries to react to failures in an inherently adaptive fashion by the cyclic observation of its neighbors' states. When the frequency of state changes is too high, the system may never reach a state sufficiently stable for a specific task. In this paper we substantiate the conditions under which self-stabilization leads to fault tolerance in wireless networks and look at the myths about the power of self-stabilization as a particular instance of self-organization. We investigate the influences of the error rate and the neighbor state exchange rate on the stability and the convergence time on topology information acquired in real network experiments.
Self-stabilizing systems have in theory the unique and provable ability, to always return to a valid system state even in the face of failures. These properties are certainly desirable for domains like wireless ad-hoc networks with numerous unpredictable faults. Unfortunately, the time in which the system returns to a valid state is not predictable and potentially unbound. The failure rate typically depends on physical phenomena and in self-stabilizing systems each node tries to react to failures in an inherently adaptive fashion by the cyclic observation of the states of its neighbors. When state changes are either too quick or too slow the system might never reach a state that is sufficiently stable for a specific task. In this paper, we investigate the influences of the error rate on the (stability) convergence time on the basis of topology information acquired in real network experiments. This allows us to asses the asymptotic behavior of relevant self-stabilizing algorithms in typical wireless networks.
Many-core architectures trade single-thread performance for a larger number of cores. Scalable throughput can be attained only by a high degree of parallelism, minimized synchronization. Whilst this is achievable for many applications, the operating system still introduces bottlenecks through non-local sharing, synchronization,, message passing. A particular challenge for highly dynamic applications, for example invasive HPC applications, elastic compute clouds, is the management of short-living application threads, processes. This paper discusses OS architecture choices based on microkernel, multikernel, distributed systems designs, our development experience in the context of the MyThOS project. Initial experiments show a much faster thread creation, activation compared to monolithic systems like Linux while providing a more flexible protection, threading model that is better suited for dynamic scenarios. However, despite significant progress in the overall domain of operating systems, the design space for scalable many-core operating systems is yet to be fully explored.
Pseudo-Uniform Memory Architectures hide the memory's throughput bottlenecks and the network's latency differences in order to provide near-peak average throughput for computations on large datasets. This obviates the need for application-level partitioning and load balancing between NUMA domains but the performance of cross-core communication still depends on the actual placement of the involved variables and cores, which can result in significant variation within applications and between application runs.
This paper analyses the pseudo-uniform memory latency on the Intel Xeon Phi Knights Corner processor, derives strategies for the optimised placement of important variables, and discusses the role of localised coordination in pUMA systems. For example, a basic cache line ping-pong benchmark showed a 3x speedup between adjacent cores. Therefore, pUMA systems combined with support for controlled placement of small datasets are an interesting option when processor-wide load balancing is difficult while localised coordination is feasible.
Today's applications and services become more dependent on fast wireless communication, for the upcoming years data-rate demands of 100Gbit/s can be easily expected. However, fulfilling that demand is a task which cannot simply be solved by upscaling existing technologies. While most of the research tackles the challenges regarding the transmission technology from the physical layer up to base-band processing, we focus on the challenges concerning the handling of that vast amount of data. The overall goal is to bring together the transmission technology with the operating system to create a suitable end-to-end communication solution.
In this paper we argue that communication can be understood as a soft-realtime problem and how that helps introducing parallelism into protocol-processing.
Design and performance measurements of an FPGA accelerator for a 100Gbps wireless data link layer
(2015)
Experiments have shown that the number of asymmetric and unidirectional links often exceeds the number of bidirectional ones, especially in the transitional area of the communication range of wireless sensor nodes. Still, most of today’s routing protocols ignore their existence or try to remove their implications. Also, links are not stable over time, and routes become unusable often, resulting in a need for new routing protocols that can handle highly dynamic links and use unidirectional links to their advantage. At Sensorcomm 2014, we presented BuckshotDV, a routing protocol which is resilient against link fluctuations and uses the longer reach of unidirectional links to increase its performance. Furthermore, its distance vector nature makes it scalable for large sensor networks. This paper is an extended version which adds some implementation details and the evaluation of BuckshotDV in two more application scenarios.
Nodes within sensor networks often have tight bound goals for the lifetime while running from a non-renewable energy source. Variations within the hardware or induced by the software complicate the prediction of the energy consumption. Additionally, batteries are vulnerable to temperature and non-linear effects. To reach certain lifetime goals under these influences without sacrificing energy due to pessimistic estimations, online energy management is necessary. At Sensorcomm 2015 we presented policies to control the behavior of applications and devices using energy budgets. This paper is an extended version which adds further details and the evaluation of the proposed dynamic energy management in a real-world scenario.
In this paper, we present an approach to support
transaction-based spatial-temporal programming of mobile robot
swarms on a systemic level. We introduce a programming model
for swarms of mobile robots. Swarm applications consist of
concurrent, distributed and context-aware actions. We provide
distributed transactions in order to guarantee atomic execution of
a set of dependent actions. We distinguish between schedulability
and executability of a set of actions. In order to guarantee exe-
cutability of a distributed transaction of spatial-temporal actions,
we present the concept of path alternatives and a time-based two-
phase commit protocol in order to assure consistency. We show
the feasibility of our approach by a proof-of-concept.
Nodes within sensor networks often have tight bound goals for the lifetime while running from a non-renewable energy source. Variations within the hardware or induced by the software complicate the prediction of the energy consumption. Additionally, batteries are vulnerable to temperature and non-linear effects. To reach certain lifetime goals under these influences without sacrificing energy due to pessimistic estimations, online energy management is necessary. In this paper, we present policies to control the behavior of applications and devices using energy budgets. First experiments yield promising results, with nodes reaching their lifetime goals while maintaining a high application quality.
Hardware and software consistency protocols rely on global observability of consistency events. Acknowledged broadcast is an obvious choice to propagate these events. This paper presents a generalized ring topology for parallel event propagation with acknowledged delivery. Implementations for various many-core architectures show increased performance over conventional approaches. Therefore, diamond rings are a prime candidate for implementations of distributed memory models.
Currently, new storage technologies which unite the latency and byte-addressability of DRAM with the persistence of disks are being developed. This non-volatile memory (NVRAM) may start a software revolution. Traditionally, software was developed for two levels of storage and NVRAM reduces the hierarchy to a single-level store. Current research projects are already exploring the potential of NVRAM, but they face a challenge when they want to evaluate the performance: The new hardware is not yet available.
In this paper, we discuss why benchmark results which are gained on existing DRAM are insufficient for a prediction of the performance on NVRAM. Either existing instructions have to be changed or new ones have to be introduced. We further show that the bochs emulator can be used to build systems which resemble NVRAM, to predict the NVRAM's consequences, and it even allows a comparison of algorithms for NVRAM.
Experiments with wireless sensor networks have shown that links are often asymmetric or unidirectional. This represents a serious problem for many routing protocols, which often depend on bidirectional links. Routing protocols that can use unidirectional links often induce a high overhead. To overcome this problem we introduced Unidirectional Link Triangle Routing, a routing protocol, which uses neighborhood information, gathered actively or passively, to route around unidirectional links. In this paper, we describe Unidirectional Link Triangle Routing in further detail and present additional evaluation results from different application scenarios.
Embedded systems, e.g. nodes within sensor networks, often have tight bound goals for lifetime while running from a not renewable energy source. Mostly batteries are used, which are vulnerable to temperature and non-linear effects. Additionally, variations within the hardware or induced by the software make the prediction of the available and consumed energy a complicated task. To reach certain lifetime goals under these influences, online energy management is necessary. For a fine-grained management on the level of individual sub-tasks, it is necessary to know where in the system the energy is consumed.
In this work, we extend our online energy accounting approach to enable online energy management. We present ways to control application and device behavior, and, thus, energy using energy budgets. First experiments yield promising results, reaching their lifetime goals while maintaining a high application quality.
Applying Wireless Sensor Networks to Renaturation Monitoring: From Requirements to Deployment
(2014)
Experiments have shown that the number of asym- metric and unidirectional links often exceeds the number of bidirectional ones, especially in the transitional area of the communication range of wireless sensor nodes. Still, most of today’s routing protocols ignore their existence or try to remove their implications. Also, links are not stable over time, and routes become unusable often, resulting in a need for new routing protocols that can handle highly dynamic links and use unidirectional links to their advantage. In this paper, we present BuckshotDV, a routing protocol which is resilient against link fluctuations and uses the longer reach of unidirectional links to increase its performance. Furthermore, its distance vector nature makes it scalable for large sensor networks.
With the evolution toward fast networks of many-core processors, the design assumptions at the basis of software-level distributed shared memory (DSM) systems change considerably. But efficient DSMs are needed because they can significantly simplify the implementation of complex distributed algorithms. This paper discusses implications of the many-core evolution and derives a set of reusable elementary operations for future software DSMs. These elementary operations will help in exploring and evaluating new memory models and consistency protocols.
Experiments with wireless sensor networks have shown that asymmetric and unidirectional links do not only exist, but are indeed quite common. Still, many people argue that the gain in connectivity is not worth the effort of making them usable for routing protocols. In this paper, we follow the opposite approach and introduce Unidirectional Link Triangle Routing, which reduces the overhead and, therefore, makes unidirectional links usable on the routing layer.
Energy is the crucial factor for the lifetime of wireless sensor networks. Nonlinear battery effects and nonuniform workload distribution can lead to early node failures. This makes it necessary to manage energy consumption. But to manage energy it is essential to know how much energy is spent by the system. Additionally, for a more fine-grained management it is necessary, to know where the energy is spent. This can be a complicated task, since nodes are not identical due to device variations and the consumption can change over time.
In this paper we present an online energy accounting approach which focuses on simplicity instead on fine granularity and timing accuracy. We argue that the efficacy of an energy accounting model depends more on the input consumption data than on exact timing, especially when the real consumption varies between nodes and in time. Results show that this approach is capable of correctly accounting the energy that nodes spend in scenarios with deviating environment conditions.
Mission Statement: ToleranceZone : A Self-Stabilizing Middleware for Wireless Sensor Netzworks
(2012)
Energy and run time are mayor concerns in wireless sensor networks. Reliable information about the energy consumption is needed to be able to build a network and tune its application. In this paper we take a look on the energy consumption of the Texas Instruments eZ430-Chronos, an MSP430 based wireless sensor node, and compare it to the manufacturers datasheet. The measurements show how reliable these specifications are and which consequences should be taken.
Today's multi-cores and future many-cores are NUMA architectures with complex cache hierarchies and multiple memory channels. Depending on the topologies of these memory networks we find everything from true data sharing with shared caches to distributed memory architectures which just pretend to be physical shared memory systems. In fact, most many-cores are hybrid systems that exhibit the characteristics of both distributed systems and SMPs. In this paper we argue in favor of middleware platforms for many-cores. We will discuss the needed functionality in contrast to common distributed system middleware and present micro benchmarks on several architectures to substantiate our claims.
On many-core processors, both operating system kernels and bare metal applications need efficient cross-core coordination and communication. Although explicit shared- memory programming and message passing might provide the best performance, they also limit the system’s control over scheduling. In contrast, interrupt-driven cross-core invocations provide universal coordination mechanisms that also enable preemptive operations across cores. This paper surveys cross- core invocation mechanisms and their usability with respect to prevalent coordination scenarios. We integrated some of these mechanisms into a bare-metal environment for the Intel SCC pro- cessor and will discuss implementation aspects of the interrupt- driven invocations. In conclusion, such invocation mechanisms provide an expressive platform for future operating systems kernels and bare-metal applications.
Many-core processors combine fast on-chip communication
with access to large amounts of shared memory. This
makes it possible to exploit the benefits of distributed as well
as shared memory programming models within single parallel
algorithms. While large amounts of data can be shared in the
memory and caches, coordinating the activities of hundreds
of cores relies on cross core communication mechanisms with
ultra low latency for very small messages. In this paper we
discuss two communication protocols for the Intel SCC and
compare them to the MPI implementation of the SCC. Our
micro-benchmark results underline that special purpose protocols
for small messages make much finer levels of parallelism possible
than general purpose message passing systems.
Index Terms—many-core, message passing, shared memory
The battery dictates the lifetime of many embedded systems, especially wireless sensor networks.This makes it necessary to deal with battery management.In this paper we present an approach for a battery management which enables a sensor node to reach a defined lifetime.The presented approach gives feedback to an energy manager if the current power consumption must be lowered or can be increased to reach the runtime goal.In contrast to other systems the battery is handled as black box to keep the system independent from the battery type and brand.First experiments yield promising results of this concept to reach a certain lifetime goal while maintaining a high application quality.
Sensorium - An Active Monitoring System for Neighborhood Relations in Wireless Sensor Networks
(2010)
Implicit Sleep Mode Determination in Power Management of Event-driven Deeply Embedded Systems
(2009)
MLMAC-UL and ECTS-MAC - Two MAC Protocols for Wireless Sensor Networks with Unidirectional Links
(2009)