Internet DRAFT - draft-wang-core-opcua-transmition-requirements
draft-wang-core-opcua-transmition-requirements
Core H. Wang
Internet Draft C. Pu
Intended status: Standards Track P. Wang
Expires: January 16, 2019 Y. Yang
D. Xiong
Chongqing University of
Posts and Telecommunications
July 15, 2018
Requirements Analysis for OPC UA over CoAP
draft-wang-core-opcua-transmition-requirements-03
Abstract
Constrained Application Protocol (CoAP) is an application protocol
proposed for constrained nodes and constrained networks. Industrial
Internet of Things (IIoT) is an attractive scenario for CoAP. OPC
Unified Architecture (OPC UA) defines a semantic-based information
model and a service-oriented architecture for IIoT, which can
satisfy the requirements of Industry 4.0. 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 January 16, 2019.
Wang, et al. Expires January 16, 2019 [Page 1]
Internet-Draft OPC UA Over CoAP July 2018
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
(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
3.5. Transmission Methods.................................... 5
3.6. Cache .................................................. 5
3.7. Usability .............................................. 5
4. Security Considerations...................................... 6
5. IANA Considerations ......................................... 6
6. References .................................................. 6
6.1. Normative References.................................... 6
6.2. Informative References.................................. 6
Authors' Addresses ............................................. 8
1. Introduction
CoAP is a web application protocol designed for resource constrained
devices and constrained networks which 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. 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 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 interactive model is similar to the
Wang, et al. Expires January 16, 2019 [Page 2]
Internet-Draft OPC UA Over CoAP July 2018
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 patterns:
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. Lastly, 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 January 16, 2019 [Page 3]
Internet-Draft OPC UA Over CoAP July 2018
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 [I-D.ietf-core-coap-pubsub]
defines the corresponding application sublayer, OPC UA also defines
a number of specific communication patterns. For example, in the new
specification defined by OPC UA, there are two publish/subscribe
modes.one is the Broker-less mode, another is Broker-based mode.
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, they are achieved the
publish/subscribe function by the Broker. But it is still 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
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
Wang, et al. Expires January 16, 2019 [Page 4]
Internet-Draft OPC UA Over CoAP July 2018
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.
3.6. Cache
In order to reduce response time and network bandwidth consumption,
CoAP provides caching responses in the endpoints. When the endpoint
gets the request, it may use the old message to reply the request.
It is meaningful for the resource-constrained devices to save
resource. However, the information model of OPC UA does not support
the mechanism that should be solved by proposing some ways.
3.7. Usability
For OPC UA over CoAP,it contain the key technologies of two
different protocols. It is difficult for application developers to
master the two protocols at the same time. Moreover, application
developers usually focus on the implementation of the function, and
do not care about the specific implementation process of the
Wang, et al. Expires January 16, 2019 [Page 5]
Internet-Draft OPC UA Over CoAP July 2018
underlying protocol. So,OPC UA over CoAP need to remain independent
from the application. On the other hand, it should maintain the
flexibility of configuration so that application developers can set
it to satisfy different needs.
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
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>.
Wang, et al. Expires January 16, 2019 [Page 6]
Internet-Draft OPC UA Over CoAP July 2018
[I-D.ietf-core-coap-pubsub]
Koster, M., Keranen, A., and J. Jimenez, "Publish-
Subscribe Broker for the Constrained Application Protocol
(CoAP)", draft-ietf-core-coap-pubsub-02 (work in
progress), July 2017.
[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 January 16, 2019 [Page 7]
Internet-Draft OPC UA Over CoAP July 2018
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 January 16, 2019 [Page 8]
Internet-Draft OPC UA Over CoAP July 2018
Phone: (86)-23-6246-1061
Email: 15111825021@163.com
Wang, et al. Expires January 16, 2019 [Page 9]