Internet DRAFT - draft-pskim-dnsop-namesystem-iotobject
draft-pskim-dnsop-namesystem-iotobject
Network Working Group P. Kim
Internet-Draft Korea Polytechnic University
Intended status: Experimental
Expires: September 7, 2019
March 9, 2019
A Naming System for IOT Objects
draft-pskim-dnsop-namesystem-iotobject-00
Abstract
This draft suggests an object-centric naming system including name
space and name resolution system for the IOT environment. A name
space is defined to cover diverse IOT objects. To consider
scalability and distributed architecture, the format of the name
space consists of object category, local name, domain name, and
parameters. Then, registries and servers are introduced to manage
mapping between identifier and object names with one-to-many
relationship. Then, name registration and resolution using these
registries and servers are described.
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 https://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 September 7, 2019.
Copyright Notice
Copyright (c) 2018 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
(https://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 September 7, 2019 [Page 1]
Internet-Draft A Naming System for IOT Objects March 2019
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. A Name Space for Diverse IOT Objects . . . . . . . . . . . . 3
3. A Name Resolution System . . . . . . . . . . . . . . . . . . 4
3.1. Components and Functions . . . . . . . . . . . . . . . . 4
3.2. Name Registration and Resolution . .. . . . . . . . . . . 5
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
5. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
With the arriving of Internet of things(IOT) which refers to the
connection of billions of physical devices around the world to the
Internet, the naming system including name(or identifier) and
resolution is considered as one of essential elements to name
each IoT device[1]-[5].
Although the IP address is performing a primary role at the data
plane as well as the control plane in legacy Internet architecture,
it has generally a human-unfriendly. Thus, a human readable name
space should be required for binding and resolution. The name space
can be classified by "host-centric" as well as "object-centric". The
host-centric name space names only host as shown in well-known
Domain Name System (DNS)[2]. On the other hand, the object-centric
name space can name diverse IOT objects such as user, file, device,
service, content, context as well as host, as shown in Future
Internet(FI) and Digital Object Architecture(DOA)[3]-[5]. This means
that IOT objects would not be limited by the host. Hence, the name
space should be designed with consideration of the scalability for
tremendous IOT objects.
In addition, as the registration and resolution between name and
identifier(or locator) has been required, a name resolution system
should be also required in order to take care of the functions
necessary to perform the management of mapping between name and
identifier, including ensuring that names are unique, and managing
the list of identifiers and names. According to the name resolution
manner, the naming system can be classified by "lookup-by-name" and
"route-by-name". The lookup-by-name based approach uses an
indirection system as DNS. The naming system using lookup-by-name
has been adopted for object-centric name space such as FI, DOA as
well as host-centric name space such as DNS. The route-by-name based
approach does not require an indirection system, that is, resolution
Kim Expires September 7, 2019 [Page 2]
Internet-Draft A Naming System for IOT Objects March 2019
system and perform the name based routing.
In this draft, a naming system with an object-centric name space and
a lookup-by-name based resolution system is suggested for the IOT
environment. The main role of the name resolution system is that
users can perform the resolution of IOT object names to get
corresponding locator/identifier (and vice versa) for only the
connection before communication, which is similar to the
lookup-by-name method used for DNS, FI, DOA. Of course, in the
future, the name resolution system is required for communication as
well as connection, which is similar to the route-by-name method.
Firstly, a name space for diverse IOT objects is defined. To
consider scalability and hierarchical architecture, the format of
the name space consists of object category, local name, domain name,
and parameters. Secondly, name registration and resolution are
designed to manage mapping between IOT object names and
locator/identifier with one-to-many relationship.
In general, the name space for the networking system defines the
structure of the name system and the rules for creating names. The
name space is the most abstract among main functions of a name
resolution system. It is also the most fundamental part of the
naming system, since it actually describes how the names are created.
2. A Name Space for Diverse IOT Objects
For a name space, diverse IOT objects are considered such as host,
user, file, device, service, content, and more. In addition, the
name space architecture will be hierarchical for the scalability and
flat for the semantic, which can be represented by mixing the
network access identifier (NAI)[6] and the uniform resource
identifier (URI)[7]. Ultimately, the name space can consists of
object category, local name, domain name, and parameter as
follows:
<object category>://<local name>@<domain name>:<parameters>
- Object category : Category of IOT objects such as host, user,
file, device, service, content, context, etc.
- Local name (Flat): Semantic name of object.
- Domain name (Hierarchical) : Name of domain where the user
subscribes to the communication service for objects or
the object is logically associated
- Parameters (Option) : Parameters can be appended according to
object category
Example:
device://temperature@iot.com:sensor:room:peter:kpu-15073
Kim Expires September 7, 2019 [Page 3]
Internet-Draft A Naming System for IOT Objects March 2019
- Objejct category : device
- Local name : temperature
- Domain name : iot.com
- Parameters : sensor, room, peter, kpu-15073 (Naming a sensor
at Peter's room with address 'kpu-15073')
device://air-conditioner@iot.ca.us:device:car:6vad286
- Objejct category : device
- Local name : air-conditioner
- Domain name : iot.ca.us
- Parameters : device, car, 6vad286 (naming an appliance
inside a car with plate number "6vad286"
content://billiejean.mp3@music.com:audio:Jackson
- Objejct category : content
- Local name : billiejean.mp3
- Domain name : music.com
- Parameters : audio, Jackson (Naming an audio file of singer
'Jackson')
Based on the designed name space, a name resolution system will be
designed using indirection approach. Name registries, that is, name
servers should be distributed according to IOT object categorization.
For timely binding, a fast propagation mechanism of binding update
should be required. In addition, for the resolution, a parsing
mechanism for name should be also required.
3. A Name Resolution System
3.1 Components and Functions
In the suggested naming system, the name registration allows users
to specify which identifier uses which object with object name (and
vice versa). The name registration is coupled tightly with the
object category used for object names. In addition to the name
registration, the name resolution is also needed for user to find
identifier that corresponds to object names for actual connection
and communication. Actually, the name resolution is the most
well-known aspect of name systems, because it is where most of the
"heavy lifting" of a name system occurs[8]. The name space is
generally set up once, and the name registration occurs only when
object names must be created or changed. On the other hand, every
user of a naming system instructs identifier he or she uses to
perform the name resolution, hundreds or even thousands of times
a day.
For the name registration and resolution in the suggested naming
system, servers and registries are required and distributed.
Kim Expires September 7, 2019 [Page 4]
Internet-Draft A Naming System for IOT Objects March 2019
Basically, there are IOT object name servers (IONSs) to manage
mapping database between identifier(such as IP address) and object
names. In addition, there are a couple of registries to manage these
IONSs; domain name server registry (DNSR) and IOT object name server
registry (IONSR). The DNSR stores and manages information on the
binding between domain names and locators of IONSRs for
corresponding domain. The IOSNR stores and manages information on
the binding between IOT object categories and locators of IONSs in
the same domain. The IONS stores and distributes information on the
binding between identifier and object names with one-to-many
relationship for corresponding object categories such as user, file,
device, service, content, context, etc., of active hosts that belong
to the administrative domain managed by the DNSR and IONSR.
3.2 Name Registration and Resolution
IOT objects register their identifiers with the IONS when they first
connect to an edge network (i.e., when the user of the IOT object
subscribes to the communication service). IOT objects also send
identifier update requests to the IONS when they change their
identifiers or other information. To register an IOT object name,
a request must be made to have the name assignment added to the
IONS. That is, IOT objects send name registration requests to the
IONS when object names corresponding to identifier, and other
information must be created or changed. The IONS thus stores dynamic
information on object names and identifier that change often due to
the activation of different objects. That is, the identifier is
dynamically mapped to different object names with one-to-many
relationship. The binding information about the IONSs stored in the
IONSR and the IONSRs stored in the DSNR does not change frequently
because IONSs and IONSRs are generally fixed nodes that are not
changing their locators. The IONSs can be organized in a distributed
structure, similar to that of DNS, for storing and retrieving static
mapping information. Thus, the IONS record size does not grow as
fast as the number of IOT objects. The smaller the size of the IONS
mapping table, the faster the search and retrieval process for IONS
records.
Consider the procedure of the suggested name system through an
example that a correspondent IOT object (CIO) wants to communicate
with a target IOT object (TIO) with the following object name:
device://temperature@iot.com:sensor:car:michelle:6VAD286
which is naming a sensor IOT object at Michelle's car with plate
number 6VAD286 and has a semantic name temperature and a domain name
"iot.com". First of all, it is assumed that the TIO's IONS must have
registered its locator in the IONSR. In addition, for the name
resolution of identifier and object names to be successful, the TIO
must have performed the name registration of identifier and object
Kim Expires September 7, 2019 [Page 5]
Internet-Draft A Naming System for IOT Objects March 2019
names with one-to-many relationship through the name registration
procedure in Section 3.2. Dynamic information on one-to-many
relationship of identifier and object names is stored in the IONS.
Then, to communicate with the TIO, the CIO has to perform the name
resolution to get corresponding identifier. The CIO can get the
TIO's identifier from the domain name lookup, the object category
lookup, and the identifier lookup as follows.
Domain Name Lookup : The CIO first sends a domain name lookup query
to the DNSR to get IONSR's locator using the domain name part
"iot.com". Then, the DNSR searches its record and finds IONSR's
locator and subsequently replies to the CIO.
Object Category Lookup : The CIO then sends an object category lookup
query to the IONSR to get IONS's locator using the object category
device. Then, the DNSR searches its record and finds IONS's locator
and subsequently replies to the CIO.
Identifier Lookup : The CIO then sends identifier lookup query to the
IONS to get corresponding identifier for the local name "temperature"
with parameters "sensor", "car", "Michelle" and "6VAD286". Then, the
IONS searches its record and then finds and subsequently replies to
the CIO. After obtaining identifier of the TIO, the CIO can either
directly start data communication.
4. IANA Considerations
This document has no IANA actions.
5. References
[1] T. R. Sooraj, R. K. Mohanty, and B. K. Tripathy, "Naming services
in the Internet of Things," In B. K Tripathy, J Anuradha (Eds.),
Internet of Things (IoT) Technologies, Applications, Challenges
and Solutions, Charter 9, pp. 85?101, Taylor & Francis Group, 2017.
[2] A. Hamzic, I. Olofsson, "DNS and the Internet of things," Degree
Project in Technology, KTH Royal Institute of Technology, 2016.
[3] Y. Li, "Naming in the Internet of Things," Washington University
in St. Louis, December 2013.
[4] C. Sharp, "Overview of the digital object architecture (DOA),"
An Internet Society Information Paper, Internet Society, October
2016.
[5] P. S. Kim, "Comparison and Analysis of DNS and DOA for Internet
of Things Naming System," International Conference on AI in
information and communication(ICAIIC 2019), Feb 2019.
Kim Expires September 7, 2019 [Page 6]
Internet-Draft A Naming System for IOT Objects March 2019
[6] B. Aboba, M. Beadles, J. Arkko, P. Eronen, "The Network Access
Identifier," RFC 4282, December 2005.
[7] T. Berners-Lee, R. Fielding, L. Masinter, "Uniform Resource
Identifiers (URI): Generic Syntax," RFC 2396, August 1998.
[8] C. M. Kozierok, The TCP/IP Guide: A Comprehensive, Illustrated
Internet Protocols Reference, No Starch Press, 2005.
Author's Address
Pyung Soo Kim
Korea Polytechnic University,
2121 Jungwang-Dong, Shiheung City,
Gyeonggi-Do 429-793, KOREA
Phone: +82 31 8041 0489
EMail: poongdou@gmail.com
Kim Expires September 6, 2019 [Page 7]