Trickle is a polite gossip algorithm for managing communication traffic. It is of particular interest in low-power wireless networks for reducing the amount of control traffic, as in routing protocols (RPL), or reducing network congestion, as in multicast protocols (MPL). Trickle is used at the network or application level, and relies on up-to-date information on the activity of neighbors. This makes it vulnerable to interference from the media access control layer, which we explore in this paper. We present several scenarios how the MAC layer in low-power radios violates Trickle timing. As a case study, we analyze the impact of CSMA CA with ContikiMAC on Trickle’s performance. Additionally, we propose a solution called Cleansing that resolves these issues.
Low-power wireless devices must keep their radio transceivers off as much as possible to reach a low power consumption, but must wake up often enough to be able to receive communication from their neighbors. This report describes the ContikiMAC radio duty cycling mechanism, the default radio duty cycling mechanism in Contiki 2.5, which uses a power efficient wake-up mechanism with a set of timing constraints to allow device to keep their transceivers off. With ContikiMAC, nodes can participate in network communication yet keep their radios turned off for roughly 99 of the time. This report describes the ContikiMAC mechanism, measures the energy consumption of individual ContikiMAC operations, and evaluates the efficiency of the fast sleep and phase-lock optimizations. RPL (IPv6 Routing Protocol for Low Power and Lossy networks) is a routing protocol recently standardized by the IETF. RPL has been designed to operate in energy-constrained networks with thousands of nodes, and therefore it is one of the most promising candidate routing protocols for Advanced Metering Infrastructure (AMI) networks. In this paper a performance evaluation of RPL is presented. An extensive study of the protocol is carried out with particular focus on Trickle, the algorithm adopted to control routing update distribution across the network. The performance of the protocol is analyzed considering different Trickle parameters in order to capture their impact on route formation and node power consumption. Results highlight that the nondeterministic nature of Trickle can lead to sub-optimal route formation especially when high message suppression is per-formed. In order to mitigate this issue, an enhanced version of the protocol, namely Trickle-F, is proposed in order to guarantee fair broadcast suppression. Trickle-F is demonstrated to be effective in obtaining more efficient routes with the same power consumption of the original version.  Although gossiping protocols for wireless sensor networks (sensornets) excel at minimizing the number of generated packets, they leave room for improvement when it comes to the end-to-end performance, namely energy efficiency. As a step in remedying this situation, we propose NarrowCast: a new primitive that can be provided by asynchronous duty-cycling link layers as a substitute for broadcasting for gossiping protocols. The principal idea behind the NarrowCast primitive is to allow a sensor node to transmit to a fraction of its neighbors, which enables controlling energy expenditures and reliability. We discuss methods of approximating the primitive in practice and integrating it with gossiping protocols. We also evaluate implementations of the approximations with Trickle, a state-of-the-art gossiping protocol, and X-MAC, a popular link layer based on low-power listening. The results show thatwithout sacrificing reliabilitygossiping using even the simplest approximations of NarrowCast can considerably outperform gossiping based on broadcasting in energy efficiency. “The Trickle Algorithm” is conceived as an adaptive mechanism for allowing efficient and reliable information sharing among nodes, communicating across a lossy and shared medium. Its basic principle is, for each node, to monitor transmissions from its neighbours, compare what it receives with its current state, and schedule future transmissions accordingly: if an inconsistency of information is detected, or if few or no neighbours have transmitted consistent information “recently”, the next transmission is scheduled “soon” - and, in case consistent information from a sufficient number of neighbours is received, the next transmission is scheduled to be “later”. Developed originally as a means of distributing firmware updates among sensor devices, this algorithm has found use also for distribution of routing information in the routing protocol RPL, standardised within the IETF for maintaining a routing topology for low-power and lossy networks (LLNs). Its use is also proposed in a protocol for multicast in LLNs, denoted “Multicast Forwarding Using Trickle”. This paper studies the performance of the Trickle algorithm, as it is used in that multicast protocol. In wireless sensor deployments, network layer multicast can be used to improve the bandwidth and energy efficiency for a variety of applications, such as service discovery or network management. However, despite efforts to adopt IPv6 in networks of constrained devices, multicast has been somewhat overlooked. The Multicast Forwarding Using Trickle (Trickle Multicast) internet draft is one of the most noteworthy efforts. The specification of the IPv6 routing protocol for low power and lossy networks (RPL) also attempts to address the area but leaves many questions unanswered. In this paper we highlight our concerns about both these approaches. Subsequently, we present our alternative mechanism, called stateless multicast RPL forwarding algorithm (SMRF), which addresses the aforementioned drawbacks. Having extended the TCP IP engine of the Contiki embedded operating system to support both trickle multicast (TM) and SMRF, we present an in-depth comparison, backed by simulated evaluation as well as by experiments conducted on a multi-hop hardware testbed. Results demonstrate that SMRF achieves significant delay and energy efficiency improvements at the cost of a small increase in packet loss. The outcome of our hardware experiments show that simulation results were realistic. Lastly, we evaluate both algorithms in terms of code size and memory requirements, highlighting SMRF's low implementation complexity. Both implementations have been made available to the community for adoption. In this paper, we analyse the impact of the Contiki Operating System (OS), and its Carrier Sense Multiple Access and Collision Avoidance (CSMA-CA) implementation on an IEEE 802.15.4 node's throughput and wireless channel utilization. The analysis is based on Contiki's Rime networking protocol stack, and its target is to determine an upper bound for the stated metrics. We explain that in Contiki with CSMA-CA as a MAC layer protocol, a node's throughput is limited to 8.1 kbps, at maximum, even without power saving features. In order to maximize a node's transmission capability, we modified Contiki's CSMA-CA implementation. A number of simulations are performed, and it is observed that with our modifications node throughput reaches 45 kbps, at maximum. Simulation results for estimating the channel capacity with our modified CSMA-CA MAC layer protocol show that the average per-node delay is low when the offered data load remains below 100 kbps. For an offered load of 100 kbps, the channel drops almost 20 of packets. Going beyond 100 kbps results in large latencies and significant packet loss. Results presented in this paper can serve as basis for the available bandwidth estimation in Wireless Sensor Networks (WSNs), QoS-based routing, and design of congestion control algorithm. As the use of wireless sensor networks increases, the need for (energy-)efficient and reliable broadcasting algorithms grows. Ideally, a broadcasting algorithm should have the ability to quickly disseminate data, while keeping the number of transmissions low. In this paper we develop a model describing the message count in large-scale wireless sensor networks. We focus our attention on the popular Trickle algorithm, which has been proposed as a suitable communication protocol for code maintenance and propagation in wireless sensor networks. Besides providing a mathematical analysis of the algorithm, we propose a generalized version of Trickle, with an additional parameter defining the length of a listen-only period. This generalization proves to be useful for optimizing the design and usage of the algorithm. For single-cell networks we show how the message count increases with the size of the network and how this depends on the Trickle parameters. Furthermore, we derive distributions of inter-broadcasting times and investigate their asymptotic behavior. Our results prove conjectures made in the literature concerning the effect of a listen-only period. Additionally, we develop an approximation for the expected number of transmissions in multi-cell networks. All results are validated by simulations. The Trickle algorithm has proven to be of great benefit to the Wireless Sensor Networking area. It has shown general applicability in this field, e.g. for code distribution to smart objects and routing information distribution between smart objects. Up to now analysis of the algorithm has focussed on simulation studies and measurement campaigns. This paper introduces an analytical models for the algorithm’s behaviour for the time to consistency. The model is compared with simulation results for a set of network topologies and enables to discover efficient settings of the algorithm for various application areas, such as logistics. Trickle is a transmission scheduling algorithm developed for wireless sensor networks. The Trickle algorithm determines whether (and when) a message can be transmitted. Therefore, Trickle operation is critical for performance parameters such as energy consumption and available bandwidth. This letter presents an analytical model for the message count of a static Trickle-based network under steady state conditions, as a function of a parameter called the redundancy constant and the average node degree. The model presented is validated by simulation results.