«Carles Gómez Josep Paradells José E. Caballero Edita: Fundación Vodafone España Autores: Carles Gómez Montenegro* Universitat Politècnica de ...»
7.3.3. IETF 6LoWPAN WG routing requirements The IPv6 Low Power WPAN (6LoWPAN) WG, which has developed the mechanisms for transmitting IPv6 packets on top of IEEE 802.15.4 networks (see Chapter 11), has also specified a set of requirements and useful information for the design of routing protocols for these environments .
These requirements take advantage of the characteristics and services offered by IEEE 802.15.4. Some of these include:
• Avoidance of fragmentation due to IEEE 802.15.4 message size.
• Exploiting IEEE 802.15.4 ACKs as a method to check the connectivity with a one-hop neighbour.
• Exploiting the LQI as an input to the routing metric.
• Considering the byte overhead of IEEE 802.15.4 security and the fact that ACKs are not secure.
As of the writing of this book, RPL is a likely candidate routing protocol for 6LoWPAN.
 C. Intanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, F. Silva, “Directed Diffusion for Wireless Sensor Networking”, ACM/IEEE Transactions on Networking, 11 (1 ), pp. 2-16, February, 2002.
 D. Braginsky, D. Estrin, “Rumor Routing Algorithm For Sensor Networks”, in Proceedings of WSNA’02, Atlanta, USA, September 2002.
 M. Chu, H. Haussecker, F. Zhao, “Scalable Information-Driven Sensor Querying and Routing for ad hoc Heterogeneous Sensor Networks”, Xerox Palo Alto Research Center Technical Report, July 2001.
 R. C. Shah, J. M. Rabaey, “Energy Aware Routing for Low Energy Ad Hoc Sensor Networks”, in Proceedings of the IEEE Wireless Communications and Networking Conference 2002 (WCNC’02), Orlando, USA, March 2002.
Chapter 7. Routing
 Y. Yao, J. Gehrke, “Cougar Approach to In-Network Query Processing in Sensor Networks”, SIGMOD Record, Vol. 31, No. 3, September 2002.
 N. Sadagopan et al., “The ACQUIRE mechanism for efficient querying in sensor networks”, in the Proceedings of the First International Workshop on Sensor Network Protocol and Applications, Anchorage, USA, May 2003.
 W. Rabiner Heinzelman, A. Chandrakasan, H. Balakrishnan, “EnergyEfficient Communication Protocol for Wireless Microsensor Networks”, in Proceedings of the 33rd Hawaii International Conference on System Sciences, Island of Maui, Hawaii, USA, January 2000.
 S. Lindsey, C. S. Raghavendra, “Power Efficient Gathering in Sensor Information Systems”, in Proceedings of the IEEE Aerospace Conference 2002, Big Sky, Montana, USA, March 2002.
 A. Manjeshwar, D. P. Agrawal, “TEEN: A Routing Protocol for Enhanced Efficiency in Wireless Sensor Networks”, 2001.
 P. Bose, P. Morin, I. Stojmenovic, J. Urrutia, “Routing with Guaranteed Delivery in ad hoc Wireless Networks”, Workshop on Discrete Algorithms and Methods for Mobile Computing and Communications, Seattle, USA, 1999.
 B. Karp, H.T. Kung, “GPSR: Greedy Perimeter Stateless Routing for Wireless Networks”, In Proceedings of the Seventh Annual ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM), Rome, Italy August 2000, Boston, USA.
 H. Frey, I. Stojmenovic, “On delivery guarantees of face and combined greedy-face routing algorithms in ad hoc and sensor networks,” in Proceedings of the Twelfth ACM Annual International Conference on Mobile Computing and Networking (MOBICOM). Los Angeles, CA, USA, September 2006.
 Y. Xu, J. Heidemann, D. Estrin,”Geography-informed Energy Conservation for Ad-hoc Routing," In Proceedings of the Seventh Annual ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM), Rome, Italy 2001.
 Y. Yu, D. Estrin, R. Govindan, “Geographical and Energy-Aware Routing:
A Recursive Data Dissemination Protocol for Wireless Sensor Networks", UCLA Computer Science Department Technical Report, UCLA-CSD TR-01-0023, May 2001.
 C. Perkins, E. Belding-Royer, S. Das, “Ad hoc On Demand Distance Vector Routing (AODV)”, RFC 3561, July 2003.
 I. D. Chakeres, C. E. Perkins, "Dynamic MANET On-demand Routing Protocol". draft-ietf-manet-dymo-14.txt, IETF Internet Draft (Work in Progress), June 2008.
 TinyAODV implementation, TinyOS source code repository, h t t p : / /c v s. s o u rc e f o u rg e. n e t / v i e w c v s. p y / t i n y o s / t i n y o s x/contrib/hsn/  C. Gomez, P. Salvatella, O. Alonso, J. Paradells, "Adapting AODV for IEEE 802.15.
4 Mesh Sensor Networks: Theoretical Discussion and Performance Evaluation in a Real Environment", in Proceedings of the 7th IEEE International Symposium on a World of Wireless, Mobile and Multimedia Networks (WOWMOM 2006), Niagara Falls, USA, June 2006.
 I. Chakeres, L. Klein-Berndt, “AODVjr, AODV Simplified”, Mobile Computing and Communications Review, Vol. 6, No. 3, pp. 100-101, July 2002.
 C. E. Perkins, E. Belding-Royer, I. Chakeres, “Ad hoc On-Demand Distance Vector (AODV) Routing”, draft-perkins-manet-adovbis-01, IETF Internet Draft (Work in progress), February 2004.
 G. Montenegro, “AODV for IEEE 802.15.4 Networks”, draft-montenegrolowpan-aodv-00, IETF Internet Draft (Work in progress), July 2005.
 K. Kim, S. D. Park, G. Montenegro, S. Yoo, “6LoWPAN Ad Hoc On-Demand Distance Vector Routing (LOAD)”, draft-daniel-6lowpan-load-adhocrouting-01, IETF Internet Draft (Work in progress), July 2005.
 IETF 6LoWPAN WG charter: http://www.ietf.org/dyn/wg/charter/6lowpan-charter.html
Chapter 7. Routing
 IETF ROLL WG charter: http://www.ietf.org/dyn/wg/charter/roll-charter.html  R. Thouvenin, “Implementing and evaluating the Dynamic MANET Ondemand (DYMO) routing protocol”, June 2007.
 P. Levis, A. Tavakoli, S. Dawson-Haggerty, “Overview of Existing Routing Protocols for Low Power and Lossy Networks”, draft-ietf-roll-protocolssurvey-07, (Work in progress) April 2009.
 J. Martocci, P. De Mil, W. Vermeylen, N. Riou, “Building Automation Routing Requirements in Low Power and Lossy Networks”, draft-ietfroll-building-routing-reqs-08, (Work in progress) December 2009.
 T. Winter et al., “RPL: IPv6 Routing Protocol for Low power and Lossy Networks”, draft-ietf-roll-rpl-05, (Work in progress) December 2009.
 P. Levis, E. Brewer, D. Culler, D. Gay, S. Madden, N. Patel, J. Polastre, S.
Shenker, R. Szewczyk, A. Woo, “The emergence of a networking primitive in wireless sensor networks,” Communications of the ACM, Vol. 51, No. 7, pp. 99–106, July 2008.
 E. Kim, D. Kaspar, C. Gomez, C. Bormann, “Problem Statement and Requirements for 6LoWPAN Routing”, draft-ietf-6lowpan-routingrequirements-04, (Work in progress) July 2009.
8. Transport The transport layer is in charge of offering services such as end-to-end reliability for data transmission. In some cases, transport layer protocols also fulfil the requirements of congestion control mechanisms (e.g. congestion avoidance in TCP ). However, WSNs exhibit different requirements from those of traditional networks. Certain applications may require event detection, independently of the sensor nodes in the area that actually detect the event. In this case, the transport protocol has to guarantee event reliability rather than data reliability. On the other hand, in contrast to the traditional operation of TCP, congestion control may be better performed hop-by-hop, which conserves more energy and bandwidth. These facts have motivated the design of a family of new transport and congestion control protocols for WSNs.
Nevertheless, initiatives have been taken towards adapting protocols such as TCP or UDP for WSNs. The availability of such protocols in WSNs has significant benefits in terms of interoperability with the Internet and its protocols. However, TCP requires appropriate adaptation for its use in WSNs. As of writing, 6LoWPAN-based WSNs use adaptations of TCP or UDP at the transport layer.
This chapter is organized as follows. Section 8.1 focuses on the use of traditional transport protocols like TCP and UDP in WSNs. Section 8.2 presents protocols specifically designed for congestion control in WSNs. Section 8.3 presents protocols that offer reliability in WSNs. Section 8.4 is devoted to protocols that offer both congestion control and reliability in WSNs. Section
8.5 presents transport layer mechanisms in ZigBee. The reader may note
that the Bluetooth specification does not specify transport layer20 mechanisms.
8.1. Use of traditional transport protocols in WSNs TCP can be used in WSNs that require reliability and/or congestion control. However, some controversy surrounds this topic, since several drawbacks and benefits have been claimed when using TCP in WSNs. These are presented in subsections 8.1.1 and 8.1.2, respectively. A modified version of TCP for WSNs called Distributed TCP Caching  is presented in 8.1.3. The use of UDP is discussed in subsection 8.1.4. Finally, subsection 8.1.5 presents the use of transport layer proxies for WSNs.
8.1.1. Drawbacks of using TCP in WSNs
It has been argued that the Internet model is unsuited for WSNs because of the specific requirements and the extreme communication conditions
that WSNs may exhibit . TCP was indeed not designed for WSNs, but rather for networks composed mainly of wired links providing end-to-end packet reliability and congestion control. Several drawbacks have been documented about the use of TCP as a transport protocol in WSNs :
• TCP connection establishment overhead might not be justified for data collection in most event-driven applications.
• Flow and congestion control mechanisms in TCP may result in unfair bandwidth for sensor nodes that are far away from the sink node in a data collection application.
• It is well known that TCP has a degraded throughput in wireless systems, especially in situations with a high packet loss rate, because TCP assumes that packet loss is due to congestion and reduces its transmission rate whenever packet loss is detected.
Here, ‘transport layer’ refers to the fourth layer in the OSI reference model. Nevertheless, Bluetooth does specify mechanisms denoted ‘transport layer’, but these are link layer mechanisms in terms of the OSI reference model.
Chapter 8. Transport
• In contrast to hop-by-hop control, end-to-end congestion control in TCP requires a longer time to mitigate congestion, and in turn leads to higher packet loss when congestion occurs.
• TCP relies on end-to-end retransmission to provide reliable data transport, which consumes more energy and bandwidth than hop-by-hop retransmission.
• TCP guarantees successful transmission of packets, which is not always necessary for event-driven applications in sensor networks.
Taking all the identified drawbacks into consideration, it can be concluded that TCP may not perform optimally in WSNs. In addition, significant simplification effort is required to remove unnecessary TCP functionality and make its operation feasible over constrained devices. For these reasons, several transport protocols have been specifically designed for WSNs. These protocols can be categorized into three types : i) congestion control protocols, ii) protocols for reliability, and iii) protocols considering both congestion control and reliability. Sections 8.2, 8.3 and 8.4 focus on the main proposals of each type, respectively.
8.1.2. Advantages and initiatives toward the use of TCP in WSNs
The main advantage of using TCP (on top of IP) in WSNs is that it offers straightforward end-to-end interoperability with other TCP/IP-based networks like the Internet. Another advantage of using TCP is that it offers compatibility with a large set of well known application layer protocols used in the Internet (e.g. HTTP, FTP, etc.). On the other hand, it is worth pointing out that although TCP may not perform optimally in WSNs, it has proved itself as a protocol capable of operating adequately on top of a huge variety of different networking environments. For all these reasons, many efforts have been made at using TCP in WSNs.
TCP can be used for tasks that require reliability (such as configuration and monitoring of individual nodes and downloads of binary code) .
Despite the complexity of a protocol like TCP, it has been shown that an implementation of the TCP/IP stack can be run on 8-bit micro-controllers with only a few hundred bytes of RAM . Other TCP/IP stacks have been
developed with comparable code size . Some of the most reduced TCP/IP stacks described in the literature are the uIP stack , which has a size between 4 and 5 kB; nanoIP , with a size of 1 kB and PICNIC , with less than 2 kB. Some other reduced IPv6-based open-source and commercially available stacks have a footprint of around 10 kB .
The absence of TCP in WSNs might limit the availability of application protocols that depend on or are implemented using TCP. Initial efforts towards addressing this problem have been made within the IETF .
Distributed TCP Caching (DTC)  is a modified TCP for WSNs. The aim of DTC is to reduce the energy consumption of WSN nodes by decreasing the number of end-to-end retransmissions within the WSN, while offering the interoperability advantages of using TCP/IP. In fact, DTC is based on a hop-by-hop retransmission scheme.
In DTC, the end devices operate by using regular TCP. However, intermediate nodes cache segments of end-to-end communications if they have available memory space. If node A is an intermediate node and has been able to cache a TCP segment, it forwards the segment to the next hop, starts a timer and waits for the reception of a link-layer acknowledgment sent by the corresponding next hop. If the timer expires and the acknowledgment has not been received, node A retransmits the segment. These mechanisms enable the number of times in which the retransmission time-out of the TCP sender expires to be reduced.