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]