[Search] [pdf|bibtex] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01 02 03                                                   
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


   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-

   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

   The list of Internet-Draft Shadow Directories can be accessed at

   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,

6.2. Informative References

[IEC TR 62541-1]
           IEC, "OPC unified architecture-Part1: Overview and concepts-
           IEC 62541", 2016, <

[IEC TR 62541-5]
           IEC, "OPC unified architecture-Part5: Information Model-IEC
           62541", 2015, <

 Wang, et al.           Expires January 16, 2019               [Page 6]

 Internet-Draft              OPC UA Over CoAP                 July 2018

           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, <

 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

  Phone: (86)-23-6248-7845
   Email: wangheng@cqupt.edu.cn

   Chenggen Pu
   Chongqing University of Posts and Telecommunications
   2 Chongwen Road
   Chongqing, 400065

   Phone: (86)-23-6246-1061
   Email: mentospcg@163.com

   Ping Wang
   Chongqing University of Posts and Telecommunications
   2 Chongwen Road
   Chongqing, 400065

   Phone: (86)-23-6246-1061
   Email: wangping@cqupt.edu.cn

   Yi Yang
   Chongqing University of Posts and Telecommunications
   2 Chongwen Road
   Chongqing, 400065

   Phone: (86)-23-6246-1061
   Email: 15023705316@163.com

   Daijing Xiong
   Chongqing University of Posts and Telecommunications
   2 Chongwen Road
   Chongqing, 400065

 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]