Implementation Challenges of IPv6 on Wireless
Sensor Networks
AK Dwivedi, VK Patle and OP Vyas
School of Studies in
Computer Science and I.T., Faculty of Information Technology, Pandit Ravishankar Shukla University, Raipur (C.G.), INDIA
– 492010
ABSTRACT
With emerging IPv6
based Standards such as ISA-100a and 6LowPAN/IEEE 802.15.4, IPv6 based sensor
networks are the next era. As wireless sensor networks grow, we need
implementation of IPv6 on it due to some advanced features available with IPv6
such as security mechanism. There are various challenges when implementing IPv6
on wireless sensor networks major one is interoperability with millions of
deployed embedded IPv6 based devices for In-door and Out-door applications,
both within the sensor networks itself and between the sensor modules and the
Internet hosts. Through this contribution our objective is to explore the key
features needed at network layer in WSN’s protocol stack, security features of
IPv6 should incorporated with next generation of WSNs, challenges faced with
implementation or deployment of IPv6 on WSNs, presenting an overview of uIPv6
and recommending portability for all sensor node’s
operating systems and also highlighting the issues that affects security of
WSNs.
Keywords:
Wireless Sensor Netwoks
(WSNs), IPv6, Protocols Stack, Denial of
Service (DoS),
uIPv6.
I.
INTRODUCTION
Internet Protocol version 6 (IPv6) is a network/internet layer
(layer 3) protocol for packet-switched networks. IPv4 is currently the dominant
Internet Protocol version, and was the first to receive widespread use. The
Internet Engineering Task Force (IETF) has designated IPv6 as the successor to
version 4 for general use on the Internet. IPv6 has a much larger address space
than IPv4, which provides flexibility in allocating addresses and routing
traffic. The extended address length (128 bits) is intended to eliminate the
need for network address translation to avoid address exhaustion, and also
simplifies aspects of address assignment and renumbering, when changing
Internet connectivity providers. The very large IPv6 address space supports 2128
(about 3.4×1038) addresses whereas IPv4 supports just (232)
addresses.
6LowPAN (IPv6 over
Low-Power Wireless Personal Area Networks) is a working group at IETF. It
defines an adaptation layer for sending IPv6 packets over IEEE 802.15.4. The
goal of 6LowPAN is to reduce the size of IPv6 packets to make them fit in 127
bytes 802.15.4 frames. 6lowpan consists of a header compression scheme, a
fragmentation scheme and a method for forming IPv6 link-local address on
802.15.4 networks.
III. WSNs NETWORK LAYER
ISSUES:
The
network layer provide user specific upper layers with independence from the
data transmission and switching technologies used to connect network
nodes/systems; responsible for routing i.e., network layer determines which
physical path the data takes, based on the network conditions, the energy
efficiency of route, reliablility of relaying of data from the sensor nodes to
sink, priority of service and other factors as well as resolving the logical
node address with the physical address if necessary.
Routing
is a very challenging task in WSNs due to several characteristics that
distinguish them from other communication networks and wireless Ad-hoc
networks. Performance of routing protocol closely related to architechtural
model.
Also
at this layer we identified these Denial of Service (DoS) attacks and we need
these types of DoS defense mechanism to tackle these DoS Attacks:
DoS Attacks |
DoS Defenses |
Neglect
and Greed |
Redundancy,
Probing |
Homing |
Encryption |
Misdirection |
Egress
filtering, Authorization, Monitoring |
Black
Holes |
Authorization,
Monitoring, Redundancy |
IV. IPv6 INSTEAD TO IPv4 FOR WSN:
IPv6 is better suited to wireless sensor
networks than IPv4 whereas it has larger headers and defines more
functionality. The large address space not only supports a huge number of
devices, but it also eliminates many of the artificial naming constraints of
IPv4. As a result, an adaptation layer in RFC 4944 (6LoWPAN) was defined that
carried the meaning of IPv6 addresses in a very compact form using small IEEE
802.15.4 addresses. Additionally, the various Layer 2 bootstrapping and
discovery mechanisms were consolidated in ICMPv6, bringing them into the same
IPv6 architecture. Lastly, IPv6 defines link-local communication to enable
simple, single-hop networks.
V. SECURITY MECHANISM
WITH IPv6:
The Internet protocol is a connectionless protocol. It treats each
message independently, forwarding it through the network to its final
destination. By convention, the packets that IP transfers are called datagrams. Each IP datagrams
begins with a common header as shown in fig.-2.
With IP version 6, TCP/IP
offers several important security features. All IP version 6 hosts are required
to support authentication. In addition, IP has a well-defined framework for
exchanging confidential messages. Both features were initially designed just
for IP version 6. As a testament to their power and usefulness, though, both
have adapted for use with IPv4 as well.
5.1.
Extension Headers:
IPv6 is much more flexible
in its support of options. Options appear in extension headers that follow the
IP header in the datagram.
5.2.
Built-in Security:
IPv6 requires support for
both authentication and confidentiality.
Extension headers (as shown
in fig.-3) follow the basic header in the IP datagram. The IP standard defines
several different extension headers; each one is identified by a particular
value for the next header field as shown below:
Value |
Description |
0 |
Hop-by-Hop Options Header |
43 |
Routing Header |
44 |
Fragment Header |
51 |
Authentication Header |
59 |
No Next Header |
60 |
Destination Options Header |
Every extension header
(except 59) has its own next header field. The final extension header uses its
next header field to identify the upper-level protocol. The order of extension header is important
because it makes it easy for intermediate routers to process the datagram
efficiently. Fig.-3 shows the headers in the recommended order.
For security purpose
Authentication header ensures that a received datagram is authentic-that it was
not already in transit and that it truly come from the claimed sender.
Authentication is part of the enhanced security features of IP version 6.
5.3.
Security Association:
Both authentication and
confidentiality rely on security associations. A security association
establishes the context for the communication, and it usually defines several
security aspects of that communication important characteristic of a security
association, are described as follows:
·
Specific encryption or authentication algorithm is
use.
·
Time limits on the keys or the entire association.
·
Sensitivity of the protected data (e.g. secret, top
secret and so on).
·
Other parameters of the algorithm (e.g.
synchronization data or initialization vectors).
·
Specific key or keys to the communication.
5.4.
Authentication:
All IPv6 further specifies
the Message Digest 5 (MD5) algorithm as the default authentication algorithm,
and all hosts must support this algorithm, if both parties agree, they may
optionally use a different authentication algorithm, otherwise they are free to
omit it from their datagrams.
The authentication
information itself begins with the security parameters index, or SPI. When
combined with the destination address, the SPI defines the security association
for the communication. Actual authentication data follows the SPI. It must
consist of an integer number of 32-bit words. The security association
determines which authentication algorithm is in use. If the default MD5
algorithm is employed, then the authentication data consist of 16 bytes. To
compute the authentication data using MD5, the sender starts with a secret
authentication key. If that key is shorter than 128 bits, enough zero bits are
added to make it 128 bits long. Immediately after these 128 bits, the sender
appends the complete IP datagram itself. That datagram should have an
authentication header in place, but the authentication data within that headers
is set to zero, in addition, all fields in the datagram that can change in
transit (the hop limit field, for example) are temporarily set equal to zero.
After the datagram, the sender adds the authentication key once more. It is
this block of data that the sender passes through the MD5 algorithm; the
algorithm generates a 128-bit digest, which is used as the authentication data
within the authentication header.
The receiver performs the
same steps. It starts with the padded authentication key, adds the datagram
(temporarily zeroing the authentication data and other fields that may have
changed in transit), and appends the key once more; the MD5 digest for this
should match the authentication data. If it does not, the datagram is not authentic,
and the receiver takes appropriate steps.
The whole process works
because only the sender and the receiver know the secret authentication key,
since no other system knows this key, no other system can generate a datagram
that will have the correct digest when the receiver checks it.
5.5.
Confidentiality:
Authentication is important
for the security of IP datagrams, but it does not
guard against the most basic security threat eavesdropping. As IP datagrams traverse a network, they may travel through many
different systems and networks. These intermediate links offer opportunities
for someone other than at the destination to examine datagrams
and discover their contents.
Protecting against this
treat requires confidentiality, and IP provides that with its encapsulating
security payload (ESP). ESP is the standard way to send encrypted information
within IP datagrams.
All systems that support ESP
must support the default an encryption algorithm. That algorithm is the cipher
blocking chaining (CBC) mode of the data encryption standard (DES). The
algorithm itself, specified by the US government, is beyond the scope of this
text. The format of the ESP with this algorithm, however, is straightforward.
VI. VARIOUS SENSOR NODES PLATFORM CONFIGURATIONS - A
REVIEW:
Wireless
sensors or Motes are sensing modules. Sensors usually compose of four basic
units: a processing unit with limited computational power and limited memory, a
sensing unit/sensors (including specific conditioning circuitry), a
communication unit (transceiver), and a power unit (battery).
Resource footprint [12,
13, 14] for
various currently available Sensors/Motes provides us a summary that
most of the Sensors/Motes belongs to within the following configuration:
·
4-bit to 8-bit
processor
·
512 Byte to 512 KB
RAM (Program and Data Memory)
·
4 KB to 4 MB
Flash/External Memory
·
250 Kbps 2.4 GHz IEEE
802.15.4 or Bluetooth 2.0 or 10 Kbps etc. as radio transceiver
On
the basis of above mentioned resource footprint we reach on a conclusion that
each and every currently available sensor nodes face limited resource problems
such as narrow address space and slow clock cycle of micro controller, small
program and data memory as well as external memory, low bandwidth and low range
of transceivers.
Since resource conservation is a key
consideration in low-power wireless sensor applications. The resources that
matter to achieving deployment ubiquity, long-lived power autonomy, and cost
effective devices include: low protocol overhead in bandwidth on the radio, low
program memory requirements, low data memory requirements, and low power usage
through intermittent and often infrequent operation.
VII. uIPv6:
uIPv6 is the world's smallest
certified open source (licensed under a 3-clause BSD license that allows it to
be used in both closed source and open source projects) IPv6 stack provides TCP/IP
connectivity to tiny embedded 8-bit micro controllers
for low-cost networked device such as sensors and actuators with
maintained interoperability and RFC standards compliance.
uIPv6 is not tailored to any particular link layer,
but should run on any link layer over which IPv6 is designed i.e. the uIPv6
stack runs over any MAC and link layer, such as 6LowPAN/IEEE 802.15.4, IEEE
802.11 and Ethernet. This is possible because interface between uIPv6 and the
lower layer consists of two wrappers for link layer input/output functions: the
link layer address and some constants. This creates a level of abstraction,
which enables the easy integration of various MAC and link layer protocols.
7.1. Platform requirements for uIPv6:
7.2. Platforms supported by uIPv6:
The uIPv6 stack is
implemented in Contiki. Contiki is the
memory-efficient open source operating system for networked embedded devices
that includes the uIPv6 stack. In addition, Contiki
includes an IPv4 stack (the original uIP stack), TCP
and UDP support, as well as the Rime radio communication stack. Contiki also provides standard OS features like threads,
timers, random number generator, clock, a file system, and a command line
shell. Although uIPv6 is included in Contiki, uIPv6 itself
does not require an operating system. Embedded device with enough resources may
chose to run a real time operating system such as FreeRTOS.
uIP IPv4 implementation runs
on FreeRTOS, and uIPv6 is easily ported to FreeRTOS. Contiki with
uIPv6 runs on the Atmel Raven, Tmote Sky/TelosB, as well as under simulation, and on a number of
other AVR-based and MSP430-based platforms.
7.3. Point of failure of uIPv6 in context
with Security Issues:
uIPv6 is the answers of
interoperability problem but due to the restriction to fit IPv6 packets in 127
bytes 802.15.4 frames the main security features such as authentication and
confidentiality are left.
VIII. CONCLUSION:
There is growing interest in exploiting
standard Internet protocols such as IPv6 in wireless
sensor networks.
Support for IPv6 has the potential to facilitate application development,
increase the flexibility of sensor node
interaction, and better integrate sensor nodes
into the ‘Internet of things’. Unfortunately, IPv6 is poorly suited for
resource-constrained environments and is particularly wasteful for typical wireless sensor network data flows. From
the above described issues related to WSNs network layer, security and other
advanced features available with IPv6 and detail survey on sensors/motes we
found that for implementing security features during data transmission in form
of packets we need to implement IPv6 on WSNs but on memory constrained devices,
the limited amount of buffer space makes it impossible to support the
reassembly of very large packets. It is also unrealistic to except that a node
would be able to buffer one packet per neighbour
during the address resolution process.
The 6LowPAN-working group reduces the size of IPv6 packets to make them
fit in 127 bytes 802.15.4 frames. Now uIPv6 with Contiki
resolves our problem for end-to-end interoperability between uIPv6 and Contiki supported sensors and any IPv6 capable device. To
allow widespread community adoption, working group [14] release uIPv6 under a
permissive open source license that allows both commercial and non-commercial
use. We make next generation of WSNs more secure at network layer if we
implement uIPv6 for all operating systems for resource-constrained devices. As
well as to implement full fledge security features of IPv6 such as
authentication and confidentiality we need large memory space on sensors/motes
so with the help of micro electronics we need some new high capacity low energy
consumed small memory chips that should be fit for next generation WSN
requirements.
1.
A.K.
Dwivedi, M.K. Tiwari, O.P. Vyas, “Operating System for Tiny Networked Sensors : A Survey”, International Journal of Recent Trends
in Engineering (Computer Science), [Page 152-157] Vol. 1, No. 2, ISSN
1797-9617.
2.
Carlos de Morais Cordeiro,
Dharma Prakash Agrawal “Ad
Hoc and Sensor Networks”, World Scientific Publication 2006, ISBN
981-256-681-3, ISBN 981-256-682-1.
3.
S.K. Basandra
and S. Jaiswal - “Local Area Networks”, Galgotia Publications, 2001, India. [Pages 416.80-416.90].
4.
“RFC Index retrieved from” -
http://www.rfc-editor.org/rfc-index2.html
5.
RFC
4862: IPv6 Stateless Address Autoconfiguration [S.
Thomson, T. Narten, T. Jinmei]
[Ed.-September 2007].
6.
RFC
2373, 3513, 4291 - IP Version 6 Addressing Architecture [R.
Hinden, S. Deering]
[Ed.-Jul 1998, Apr 2003, Feb 2006, respectively].
7.
Rodriguez,
Adolfo; John Gatrell; John Karas;
Roland Peschke (2001-08-06). "Internet
transition - Migrating from IPv4 to IPv6". TCP/IP Tutorial and Technical
Overview. IBM.
8.
The IPv6
Forum. http://www.ipv6forum.com/.
9.
The IPv6 Ready Logo Program.
http://www.ipv6ready.org.
10.
RFC 4443: ICMPv6 for the IPv6 Specification [A. Conta, S. Deering, M. Gupta]
[Ed.-Mar 2006].
11.
RFC 4944: Transmission of IPv6 packets over IEEE
802.15.4 Networks [G. Montenegro, N. Kushalnagar, J. Hui, D. Culler] [Ed.-Sep 2007]
12.
“WSNs Mote hardware survey retrieved from” -
http://www.cse.unsw.edu.au/~sensar/hardware/hardware_survey.html
13.
“Another
WSNs Mote hardware survey retrieved from” -
http://senses.cs.ucdavis.edu/resources.html
14.
“Another
WSNs Mote hardware survey retrieved from” - http://www.snm.ethz.ch/Main/Homepage
15.
Mohit Saxena, Purdue University, West Lafayette –
“Security in Wireless Sensor Networks A Layer-based Classification” [CERIAS
Tech Report 2007-04].
16.
Mathilde Durvy, Julien Abeillé, Patrick Wetterwald,
Colin O’Flynn, Blake Leverett,
Eric Gnoske, Michael Vidales,
Geoff Mulligan, Nicolas Tsiftes, Niclas
Finne, and Adam Dunkels
belongs to Swedish Institute of Computer Science, Cisco Systems, NewAE, Atmel Corporation and Proto6 LLC – “Poster Abstract:
Making Sensor Networks IPv6 Ready” [Sensys’ 08, Nov
2008, USA] [ACM 978-1-59593-990-6/08/11].
17.
RFC 4120: The Kerberos Network Authentication Service (V5) [C. Neuman, T. Yu, S. Hartman, K. Raeburn] [Ed.-Jul 2005].
18.
RFC 4537:
Kerberos Cryptosystem Negotiation Extention [L. Zhu,
P. Leach, K. Jaganathan] [Ed.-Jun 2006].
19.
RFC 5021: Extended Kerberos Version 5 Key Distribution Center (KDC) Exchanges over TCP [S. Josefsson]
[Ed.-Aug. 2007]
20.
Adum Dunkels, Fredik Osterlind, “Contiki Programming Course: Hands on Session Notes”, SICS-
October 2008.
21.
Adam Dunkels, Bjorn Gronvall, and Thiemo Voigt, “Contiki - a
Lightweight and Flexible Operating System for Tiny Networked Sensors”, In Proc.
of First IEEE Workshop on Embedded Networked Sensors, November 2004.
Received on 27.07.2009
Accepted on 30.07.2009
© A &V Publication
all right reserved
Research J. Science
and Tech. 1(1): July-Aug. 2009: 16-19