Design Article
Web Services for Smart Objects - Part 2: Performance considerations
Jean-Philippe Vasseur and Adam Dunkels
6/28/2010 2:00 PM EDT
9.2.2 Performance
Smart objects are severely limited not only in memory size, but also in bandwidth and energy. For example, the IEEE 802.15.4 low-power wireless communication standard, which is often used for smart object systems, has a maximum data rate of 250 Kbits/s. The limited bandwidth has implications for both data throughput and data latency. Furthermore, since communication consumes energy, it is imperative that the communication is efficient.
To examine the performance of web services for smart objects we again turn to the systems developed by Priyantha et al. and Yazar and Dunkels. Priyantha et al. present performance data at the TCP level, but do not provide any performance numbers for complete web services transfers. Yazar and Dunkels provide performance measurements for full REST transfers over HTTP and TCP/IP. Furthermore, Yazar and Dunkels have measured the energy overhead associated with a web services transfer on a smart object platform. Both studies are performed over an 802.15.4 low-power radio on an MSP430-equipped smart object platform.
Table 9.4 contains the measurements of the TCP processing overhead as measured by Priyantha et al. These data show that the processing overhead and the transmission of TCP are low. A full TCP transaction, with data sent from the server to the sensor and a reply sent back to the sensor, followed by a reply from the sensor to the server, is completed within 40 ms. These data were obtained after turning off the delayed acknowledgment mechanism in TCP, which is known to increase the round-trip time for single-segment TCP exchanges [64].

Yazar and Dunkels present measurements of the performance of web services requests over a network of smart objects where the smart objects route messages between each other, thereby extending the range of the network. Each hop of the network runs an IEEE 802.15.4 low-power wireless link. To save power, the radio runs a power-saving mechanism where the radio is switched off as often as possible, only to periodically wake up for a short while to check for a transmission from a neighboring node [25].
The completion times of a full REST transaction, including the TCP connection setup and closing phase, as measured by Yazar and Dunkels, are shown in Figure 9.8. The graph shows the completion time for three REST transfers with the number of network hops varied between one and four. The "dummy" transfer is a minimal REST transfer that contains only a few bytes of data, and the "temperature" transfer is a complete temperature request with temperature data sent in JSON format. The "sensors" transfer contains a full set of sensor data from the smart object, which in this case includes temperature, humidity, visible light, and UV light data.

FIGURE 9.8 The completion time of full REST transfers over a multi-hop power-saving IEEE 802.15.4 network, from Yazar and Dunkels [260]. The y axis shows the time in seconds and the x axis the number of hops.
In addition to providing completion time data, the study by Yazar and Dunkels also measured the power consumption of a web services request. The findings show that the power consumption increases from 1 mW when the smart object is idle, to 4 mW for the "dummy" call and 5 mW for the "sensors" call.
By examining the results from the studies by Priyantha et al. and Yazar and Dunkels, it is clear that the web services are indeed reasonable for smart objects and that the performance is suitable for the constrained resources.
Coming up in Part 3: A real-world web service system for smart objects.
References:
25. Buettner M, Yee GV, Anderson E, Han R. X-MAC: a short preamble MAC protocol for duty-cycled wireless sensor networks. In: SenSys '06: Proceedings of the 4th International Conference on Embedded Networked Sensor Systems. Boulder, CO; 2006:307 – 320.
64. Dunkels A. Full TCP/IP for 8-bit architectures. In: Proceedings of The First International Conference on Mobile Systems, Applications, and Services (MOBISYS '03); May 2003.
207. Priyantha B, Kansal A, Goraczko M, Zhao F. Tiny web services: design and implementation of interoperable and evolvable sensor networks. In: Proceedings of the 6th ACM Conference on Embedded Network Sensor Systems (SenSys '08). Raleigh, NC; 2008:253 – 266.
260. Yazar D, Dunkels A. Efficient Application Integration in IP-Based Sensor Networks. In: Proceedings of the ACM BuildSys 2009 Workshop, in conjunction with ACM SenSys 2009; November 2009.
Printed with permission from Morgan Kauffman, a division of Elsevier. Copyright 2010. "Interconnecting Smart Objects with IP: The Next Internet" by Jean-Philippe Vasseur and Adam Dunkels. For more information about this title and other similar books, please visit www.elsevierdirect.com.
Related links:
Web services for smart objects - Part 1: Overview
Rise of the Embedded Internet
TCP/IP Embedded Internet Applications - The Network Layer, Part 1: The Internet Protocol | Part 2: IPv6, ICMP and UDP | Part 3: The transmission control protocol (TCP)
Back to the basics: Improve TCP/IP performance in memory-constrained embedded apps
Java Essentials for Embedded Networked Devices - Part 1 | Part 2 | Part 3 | Part 4 | Part 5
The basics of adding 802.11n wireless connectivity to your embedded design

