Core H. Wang
Internet Draft C. Pu
Intended status: Standards Track P. Wang
Expires: December 23, 2017 Y. Yang
D. Xiong
Chongqing University of
Posts and Telecommunications
June 21, 2017
Requirements Analysis for OPC UA over CoAP
draft-wang-core-opcua-transmition-requirements-01
Abstract
Constrained Application Protocol (CoAP) is a application protocol
for use with constrained nodes and constrained networks that is
attractive to be applied In the Industrial Internet of Things (IIoT).
OPC Unified Architecture (OPC UA) defines a semantic-based
information model for industrial control system that can satisfy the
requirements of Industry 4.0, which is based on semantic information
exchange. This document analyses requirements for transmitting OPC
UA over CoAP.
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), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on December 23, 2017.
Wang, et al. Expires December 23, 2017 [Page 1]
Internet-Draft OPC UA Over CoAP June 2017
Copyright Notice
Copyright (c) 2017 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 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. Architecture of OPC UA over CoAP ............................ 3
3. Requirements for OPC UA over CoAP ........................... 4
3.1. Encoding ............................................... 4
3.2. Application Sublayer Optimization ...................... 4
3.3. Consistency ............................................ 4
3.4. Reliability ............................................ 5
4. Security Considerations ..................................... 5
5. IANA Considerations ......................................... 6
6. References .................................................. 6
6.1. Normative References ................................... 6
6.2. Informative References ................................. 6
Authors' Addresses ............................................. 7
1. Introduction
CoAP is a web application protocol designed for resource constrained
devices and constrained networks that has been widely used in
machine-to-machine (M2M) communications [RFC7252].The purpose of
applying CoAP to the Industrial Internet of Things (IIoT) is to
provide connectivity for the devices. Whereas the communication of
Industry 4.0 not only requires data value transmission, but also
requires semantic information exchange. Driven by this, to use CoAP
in the IIoT, there is a need to provide good support for messages
transmission of the application layer in the automation field.
According to the definition of Industry 4.0 for communication, CoAP
needs to support the exchange of semantic information, namely the
semantic information model. For the current protocols supporting
semantic information model in the IIoT, the information model
defined by OPC UA [IEC TR 62541-1] is very promising and its
Wang, et al. Expires December 23, 2017 [Page 2]
Internet-Draft OPC UA Over CoAP June 2017
interactive model is similar to the interactive model of CoAP, so it
can be applied as a branch of the CoAP message payload.
2. Architecture of OPC UA over CoAP
To meet the needs of IIoT, the architecture of OPC UA over CoAP can
be mainly divided into the following two:
1) Figure 1 presents a logical layered structure of OPC UA
Information Model over CoAP. In the transport layer, DTLS runs on
top of UDP to secure transmission. Then, the middle layer utilizes
the message mode defined in the CoAP protocol. Last, the information
model of OPC UA [IEC TR 62541-5] is defined as an application of
CoAP at the top. In such a hierarchical structure, the semantic-
based data information in OPC UA can be transmitted in resources-
constrained scenarios, so that CoAP can meet the requirements of
semantic information transmission.
+ - - - - - - - - - - - - - - +
| OPC UA Information Model |
+ - - - - - - - - - - - - - - +
+ - - - - - - - - - - - - - - +
| CoAP |
+ - - - - - - - - - - - - - - +
+ - - - - - - - - - - - - - - +
| UDP |
+ - - - - - - - - - - - - - - +
Figure 1: OPC UA Information Model over CoAP
2) In order to take full advantage of the service sets defined by
OPC UA, this document proposes the other architecture for OPC UA
+ - - - - - - - - - - - - - - +
| OPC UA Information Model |
+ - - - - - - - - - - - - - - +
| OPC UA Services |
+ - - - - - - - - - - - - - - +
+ - - - - - - - - - - - - - - +
| CoAP |
+ - - - - - - - - - - - - - - +
+ - - - - - - - - - - - - - - +
| UDP |
+ - - - - - - - - - - - - - - +
Figure 2: OPC UA Information Model and Services over CoAP
Wang, et al. Expires December 23, 2017 [Page 3]
Internet-Draft OPC UA Over CoAP June 2017
transmission over CoAP. As shown in Figure 2, the information model of
OPC UA is defined as the application of CoAP, moreover, the connection
establishment, creating session, publish/subscribe and other functions
related to data information interaction are all implemented by the
service sets defined by OPC UA. CoAP is mainly responsible for the
definition of message format and runs over UDP to keep the
implementation lightweight.
3. Requirements for OPC UA over CoAP
3.1. Encoding
CoAP messages are encoded in a simple binary format that starts with
a fixed-size 4-byte header. The header is followed by a variable-
length Token value, which can be between 0 and 8 bytes long.
Following the Token value comes a sequence of zero or more CoAP
Options in Type-Length-Value (TLV) format, optionally followed by a
payload that takes up the rest of the datagram. In addition, the OPC
UA protocol coding mainly includes two ways that are binary and XML.
Therefore, in order to transmit the information model of OPC UA over
CoAP, specific frame formats of CoAP need to be designed to support
two kinds of coding modes of OPC UA.
3.2. Application Sublayer Optimization
For information exchange, the document [draft-ietf-core-coap-pubsub-
00] defines the corresponding application sublayer, OPC UA also
defines a number of specific communication patterns. For example, in
the publish/subscribe mode defined by OPC UA, when the client needs
to obtain a data periodically, it will initiate a subscription
request to the server. In addition, the server will send the data to
the client periodically as it receives the request from the client
successfully. Correspondingly, in the publish/subscribe
specification of CoAP, it introduces Broker mechanism in which the
client sends the state information to the Broker and the Broker
provides storage and forwarding function to implement the
publish/subscribe function. Comparing above two protocols, their
achieving methods have a difference on communication mode of the
publish/subscribe function. Therefore, it is necessary to optimize
the application sublayer of CoAP to support some particular
communication modes of OPC UA.
3.3. Consistency
The interactive model of CoAP is the client/server model. However,
in M2M scenarios, CoAP entities often act as both servers and
clients. Compared to OPC UA, though the interactive model is also
Wang, et al. Expires December 23, 2017 [Page 4]
Internet-Draft OPC UA Over CoAP June 2017
the client/server model, there is a set of supported services in the
OPC UA server. Consequently, for the great difference of the server
definition of these two protocols, we need to tackle with the
consistency and integration issues between the CoAP server and the
OPC UA server.
3.4. Reliability
One of the main design goals of CoAP is to satisfy some special
requirements such as communication in the constrained scenarios that
address power consumption. Hence, in order to reduce network
overhead and avoid network congestion, CoAP is designed to run over
UDP, which is a good choice to achieve inter-network data exchange
in use of the IP architecture. However, UDP is a connectionless
transport layer protocol that provides unreliable information
transmission services. In the field of IIoT, we need to ensure the
reliability of data transmission to avoid losing some important data
information. Moreover, CoAP addresses transmission reliability by
defining a message as requiring acknowledgment, obviously this is
not enough to meet the high reliability requirements in the field of
IIoT, so the reliability of COAP remains to be optimized.
3.5. Transmission Methods
For OPC UA over CoAP, one of the important issues that needs to be
addressed is how to transmit messages. The connection between OPC UA
client and server is stateful, the connection status need to be
maintained in the process of message interaction, while CoAP is a
stateless connection, so that the message transmission of the two
protocols is different. Fortunately, the transport layer protocol of
OPC UA supports TCP and HTTP, in addition, the CoAP protocol can be
considered that it is improved for constrained scenarios based on
HTTP. Therefore, a solution can be found for the messages
transmission by using the similarity of two protocols in HTTP.
4. Security Considerations
The security of CoAP includes four modes in which three modes
implemented based on the Datagram Transport Layer Security (DTLS)
except the non-security mode. However, the security architecture of
OPC UA is built on the application layer and the communication layer
above the transport layer. Specifically, the application layer
adopts the authentication and authorization and the communication
layer achieves the security of OPC UA [IEC TR 62541-2] through
secure channel encryption. Though OPC UA has four modes, the
security model of OPC UA is realized based on Transport Layer
Security (TLS). Actually, DTLS is an addition to TLS to solve the
Wang, et al. Expires December 23, 2017 [Page 5]
Internet-Draft OPC UA Over CoAP June 2017
unreliable transmission feature of UDP. Currently, some documents
show that CoAP needs to support TLS. Therefore, the security of the
two protocols can be implemented jointly.
5. IANA Considerations
This memo includes no request to IANA.
6. References
6.1. Normative References
[RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained
Application Protocol", RFC 7252, June 2014,
<https://tools.ietf.org/html/rfc7252>.
6.2. Informative References
[IEC TR 62541-1]
IEC, "OPC unified architecture-Part1: Overview and concepts-
IEC 62541", 2016, <
https://webstore.iec.ch/preview/info_iec62541-
1%7Bed2.0%7Den.pdf>.
[IEC TR 62541-5]
IEC, "OPC unified architecture-Part5: Information Model-IEC
62541", 2015, <
https://webstore.iec.ch/preview/info_iec62541-
5%7Bed2.0%7Db.pdf>.
[I-D.koster-core-coap-pubsub]
Koster, M., Keranen, A., and J. Jimenez, "Publish-
Subscribe Broker for the Constrained Application Protocol
(CoAP)", draft-ietf-core-coap-pubsub-00 (work in
progress), Qctober 2016.
[IEC TR 62541-2]
IEC, "OPC unified architecture-Part2: Security Model-IEC
62541", 2016, <
https://webstore.iec.ch/preview/info_iec62541-
2%7Bed2.0%7Db.pdf>.
Wang, et al. Expires December 23, 2017 [Page 6]
Internet-Draft OPC UA Over CoAP June 2017
Authors' Addresses
Heng Wang
Chongqing University of Posts and Telecommunications
2 Chongwen Road
Chongqing, 400065
China
Phone: (86)-23-6248-7845
Email: wangheng@cqupt.edu.cn
Chenggen Pu
Chongqing University of Posts and Telecommunications
2 Chongwen Road
Chongqing, 400065
China
Phone: (86)-23-6246-1061
Email: mentospcg@163.com
Ping Wang
Chongqing University of Posts and Telecommunications
2 Chongwen Road
Chongqing, 400065
China
Phone: (86)-23-6246-1061
Email: wangping@cqupt.edu.cn
Yi Yang
Chongqing University of Posts and Telecommunications
2 Chongwen Road
Chongqing, 400065
China
Phone: (86)-23-6246-1061
Email: 15023705316@163.com
Daijing Xiong
Chongqing University of Posts and Telecommunications
2 Chongwen Road
Chongqing, 400065
China
Wang, et al. Expires December 23, 2017 [Page 7]
Internet-Draft OPC UA Over CoAP June 2017
Phone: (86)-23-6246-1061
Email: 15111825021@163.com
Wang, et al. Expires December 23, 2017 [Page 8]