Internet DRAFT - draft-pskim-iot-ipv6-eui64
draft-pskim-iot-ipv6-eui64
Network Working Group P. Kim
Internet-Draft Korea Polytechnic University
Intended status: Experimental
Expires: December 31, 2015 July 1, 2015
IoT-Specific IPv6 Stateless Address Autoconfiguration
with Modified EUI-64
draft-pskim-iot-ipv6-eui64-00
Abstract
An IoT-specific IPv6 stateless address autoconfiguration is
suggested for diverse types of IoT devices. Both domain type and
device type are defined and combined with 16-bit hexadecimal number,
which is called the IoT type identifier. Then, this IoT type
identifier is reflected in generating EUI-64 for each IoT device. An
IoT-specific IPv6 address is developed using the stateless address
autoconfiguration with the network prefix and the modified EUI-64.
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on December 31, 2015.
Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
Kim Expires December 31, 2015 [Page 1]
Internet-Draft IoT-Specific IPv6 Address Autoconfiguration July 2015
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. IPv6 Stateless Address Autoconfiguration . . . . . . . . . . 2
3 IoT-Specific Stateless IPv6 Address Autoconfiguration . . . . 4
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
5. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction
IPv6 is considered the most suitable technology for the Internet of
Things (IoT), since it offers scalability, flexibility, tested,
extended, ubiquitous, open, and end-to-end connectivity[1]-[3]. IPv6
spreads the addressing space in order to support all the emerging
Internet-enabled devices. Many new technologies are driving the
need for IPv6 deployment, and the IoT may be the biggest driver.
Stateless address autoconfiguration is a key feature of IPv6[4][5].
It enables serverless basic autoconfiguration of the IPv6 nodes and
easy renumbering. IPv6 stateless address autoconfiguration uses the
information in the router advertisement messages to configure the
node. The prefix included in the router advertisement is used as the
network prefix for the node address. An IPv6 node can autoconfigure
itself with a globally unique IPv6 address by appending its
link-layer address (EUI-64 format) to the local link prefix
(64 bits).
In this draft, an IoT-specific IPv6 stateless address
autoconfiguration is suggested for diverse types of IoT devices.
Both domain type and device type are defined and combined with
16-bit hexadecimal number, which is called the IoT type identifier.
Then, this IoT type identifier is reflected in generating EUI-64 for
each IoT device. An IoT-specific IPv6 address is developed using the
stateless address autoconfiguration with the network prefix and the
modified EUI-64.
2. IPv6 Stateless Address Autoconfiguration with EUI-64
A Media Access Control(MAC) address, is a unique identifier assigned
to network interfaces for communications, such as a network card, on
the physical network segment. Logically, MAC addresses are used in
the MAC protocol sub-layer of the Open Systems Interconnection(OSI)
reference model. Currently there exist three address spaces for MAC
Kim Expires December 31, 2015 [Page 2]
Internet-Draft IoT-Specific IPv6 Address Autoconfiguration July 2015
addresses, namely, MAC-48, Extended Unique Identifier(EUI-48 and
EUI-64). As shown in Figure 1, the MAC-48 address consists of two
partitions, the 24-bit Organizationally Unique Identifier(OUI) and a
24-bit Network Interface Controller(NIC). MAC-48 addresses are used
by Ethernet, 802.11 wireless networks, Bluetooth, IEEE 802.5 token
ring (and most other 802 networks), FDDI and ATM.
-----------------------------------------
| Left-most 24 bits | Right-most 24 bits|
-----------------------------------------
OUI NIC
<Figure 1> MAC-48 Address Format
As shown in [4][5], the EUI-64 allows a host to assign itself a
unique 64-Bit IPv6 interface identifier. This feature is a key
benefit over IPv4 as it eliminates the need of manual
autoconfiguration or DHCP as in the world of IPv4. The IPv6 address
with the EUI-64 is obtained through the MAC-48 address. As shown in
Figure 2, the 16-bit hexadecimal number 0xFFFE is then inserted in
the middle of the MAC-48 address to generate the EUI-64 address.
IEEE has chosen 0xFFFE as a reserved value which can only appear in
EUI-64 generated from the MAC-48 address. Next, the seventh bit from
the left, or the universal/local (U/L) bit, needs to be inverted.
This bit identifies whether this interface identifier is universally
or locally administered. If 0, the address is locally administered
and if 1, the address is globally unique. It is worth noticing that
in the OUI portion, the globally unique address assigned by the IEEE
has always been set to 0 whereas the locally created address has 1
configured. Therefore, when the bit is inverted, it maintains its
original scope (global unique address is still global unique and
vice versa).
----------------------------------------------------------
| Left-most 24 bits | Middel 16 bits | Right-most 24 bits|
----------------------------------------------------------
OUI 0xFFFE NIC
<Figure 2> EUI-64 Address Format
For example, there is an internet device with MAC address of
00-1C-C4-CF-4E-D0. The transforming MAC address 00-1C-C4-CF-4E-D0
using the EUI-64 standards leads to 02-1C-C4-FF-FE-CF-4E-D0. Using
IPv6 notation, 020C:29FF:FEC2:52FF can be obtained. Thus, if an
IPv6 network prefix is 2001:1234:AD:5555 that usually is received
with Router Advertisement(RA) in Neighbor Discovery Protocol(NDP)
protocol, the resulting IPv6 address with EUI-64 is shown as
follows.
2001:1234:AD:5555:21C:C4FF:FECF:4ED0/64
Kim Expires December 31, 2015 [Page 3]
Internet-Draft IoT-Specific IPv6 Address Autoconfiguration July 2015
3. IoT-Specific Stateless IPv6 Address Autoconfiguration with Modified
EUI-64
An IoT-specific IPv6 stateless address autoconfiguration is
proposed for diverse types of IoT devices. Many are the domains and
the environments in which IoT applications would likely improve the
quality of our lives: at home, while travelling, when sick, at work,
when jogging and at the gym, just to cite a few. These domains and
environments are now equipped with things(devices) with only
primitive intelligence, most of times without any communication
capabilities. Giving these things(devices) the possibility to
communicate with each other and to elaborate the information
perceived from the surroundings imply having different environments
where a very wide range of applications can be deployed. These
devices can be grouped into the following types according to
application domains:
- Personal
- Office
- Healthcare
- Home appliance
- Transportation vehicle, etc.
These types are called the "domain type" of IoT devices. Each domain
type can include several different IoT device types that are called
the "device type". Table 1 shows an example of domain type and
device type of IoT devices. As mentioned before, in order to make
EUI-64 from MAC-48, the 16-bit hexadecimal number "0xFFFE" is added
in the middle of the MAC-48. To create IoT specific IPv6 address,
the hexadecimal number "0xFFFE" is replaced by 8-bit upper
hexadecimal number for domain type and 8-bit lower hexadecimal
number for device type, respectively. As shown Figure 3, two 8-bit
hexadecimal numbers are combined. This 16-bit hexadecimal number is
called the "IoT type identifier". Then, the IoT type identifier is
inserted in the middle of the MAC-48 to generate the EUI-64 address.
This modified EUI-64 with the network prefix can yield the IoT
specific IPv6 address.
----------------------------------------------------------
| Left-most 24 bits | 8bits | 8 bits | Right-most 24 bits|
----------------------------------------------------------
OUI Domain Device NIC
IoT Device Identifier
<Figure 3> Modified EUI-64 Address Format
Table I shows example of IoT type identifiers for diverse types of
IoT devices. For example, there is a refrigerator with MAC address
of 00-1C-C4-CF-4E-D0. For the network prefix 2001:1234:AD:5555, the
resulting IPv6 address with the modifed EUI-64 is shown as follows.
Kim Expires December 31, 2015 [Page 4]
Internet-Draft IoT-Specific IPv6 Address Autoconfiguration July 2015
2001:1234:AD:5555:21C:C4F3:F3CF:4ED0/64
<Table 1> Example of IoT Type Identifier
-----------------------------------------------------------
Domain Upper Device Lower IoT Device
Type 8bits Type 8bits Type 16bits
-----------------------------------------------------------
Phone 0xF0 0xF0F0
Personal 0xF0 Table 0xF1 0xF0F1
Watch 0xF2 0xF0F2
: : :
-----------------------------------------------------------
Desktop 0xF0 0xF1F0
Office 0xF1 Laptop 0xF1 0xF1F1
Printer 0xF2 0xF1F2
: : :
-----------------------------------------------------------
Wearable 0xF0 0xF2F0
Healthcare 0xF2 Monitoring 0xF1 0xF2F1
Talking 0xF2 0xF2F2
: : :
-----------------------------------------------------------
TV 0xF0 0xF3F0
Home Washing Machine 0xF1 0xF3F1
Appliances 0xF3 Refrigerator 0xF2 0xF3F2
Microwave 0xF3 0xF3F3
: : :
-----------------------------------------------------------
Personal Car 0xF0 0xF4F0
Bus 0xF1 0xF4F1
Transportation 0xF4 Taxi 0xF2 0xF4F2
Vehicles Airplane 0xF3 0xF4F3
Logistics 0xF4 0xF4F4
Ship 0xF5 0xF4F5
: : :
-----------------------------------------------------------
: : : : :
-----------------------------------------------------------
Both intermediate node and end node that are communicating with IoT
device can recognize both domain and device types of corresponding
IoT device using 16-bit hexadecimal number in IPv6 address.
3. IANA Considerations
This document has no IANA actions.
Kim Expires December 31, 2015 [Page 5]
Internet-Draft IoT-Specific IPv6 Address Autoconfiguration July 2015
4. References
[1] A. J. Jara, L. Ladid, and A. Skarmeta, "The Internet of
Everything through IPv6: An Analysis of Challenges, Solutions
and Opportunities", Journal of Wireless Mobile Networks,
Ubiquitous Computing, and Dependable Applications (JoWUA), Vol.
4, No. 3, pp. 97~118, 2013.
[2] T. Savolainen, J. Soininen, and B. Silverajan, "IPv6 addressing
strategies for IoT," IEEE Sensors Journal, vol. 13, no. 10, pp.
3511~3519, 2013.
[3] I. Ishaq, D. Carels, G. K. Teklemariam, J. Hoebeke, F. V. den
Abeele, E. De Poorter, I. Moerman, and P. Demeester, "IETF
Standardization in the field of the Internet of Things (IoT): A
survey," Journal of Sensor and Actuator Network, vol. 2, no. 2,
pp. 235?287, 2013.
[4] R. Hinden, S. Deering, "IP Version 6 Addressing Architecture",
IETF RFC 4291, February 2006
[5] Sunil Khanna, Understanding IPv6 EUI-64 Bit Address, Cisco
Support Community, May 17, 2012.
Author's Address
Pyung Soo Kim
Department of Electronics Engineering,
Korea Polytechnic University,
2121 Jungwang-Dong, Shiheung City,
Gyeonggi-Do 429-793
KOREA
Phone: +82 31 8041 0489
EMail: pskim@kpu.ac.kr
Kim Expires December 31, 2015 [Page 6]