idnits 2.17.1 draft-wang-core-opcua-transmition-requirements-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (June 21, 2017) is 2501 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: 'I-D.koster-core-coap-pubsub' is defined on line 263, but no explicit reference was found in the text == Outdated reference: A later version (-14) exists of draft-ietf-core-coap-pubsub-00 Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Core H. Wang 2 Internet Draft C. Pu 3 Intended status: Standards Track P. Wang 4 Expires: December 23, 2017 Y. Yang 5 D. Xiong 6 Chongqing University of 7 Posts and Telecommunications 8 June 21, 2017 10 Requirements Analysis for OPC UA over CoAP 11 draft-wang-core-opcua-transmition-requirements-01 13 Abstract 15 Constrained Application Protocol (CoAP) is a application protocol 16 for use with constrained nodes and constrained networks that is 17 attractive to be applied In the Industrial Internet of Things (IIoT). 18 OPC Unified Architecture (OPC UA) defines a semantic-based 19 information model for industrial control system that can satisfy the 20 requirements of Industry 4.0, which is based on semantic information 21 exchange. This document analyses requirements for transmitting OPC 22 UA over CoAP. 24 Status of this Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF), its areas, and its working groups. Note that 31 other groups may also distribute working documents as Internet- 32 Drafts. 34 Internet-Drafts are draft documents valid for a maximum of six 35 months and may be updated, replaced, or obsoleted by other documents 36 at any time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 The list of current Internet-Drafts can be accessed at 40 http://www.ietf.org/ietf/1id-abstracts.txt 42 The list of Internet-Draft Shadow Directories can be accessed at 43 http://www.ietf.org/shadow.html 45 This Internet-Draft will expire on December 23, 2017. 47 Copyright Notice 49 Copyright (c) 2017 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (http://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with 57 respect to this document. Code Components extracted from this 58 document must include Simplified BSD License text as described in 59 Section 4.e of the Trust Legal Provisions and are provided without 60 warranty as described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction ................................................ 2 65 2. Architecture of OPC UA over CoAP ............................ 3 66 3. Requirements for OPC UA over CoAP ........................... 4 67 3.1. Encoding ............................................... 4 68 3.2. Application Sublayer Optimization ...................... 4 69 3.3. Consistency ............................................ 4 70 3.4. Reliability ............................................ 5 71 4. Security Considerations ..................................... 5 72 5. IANA Considerations ......................................... 6 73 6. References .................................................. 6 74 6.1. Normative References ................................... 6 75 6.2. Informative References ................................. 6 76 Authors' Addresses ............................................. 7 78 1. Introduction 80 CoAP is a web application protocol designed for resource constrained 81 devices and constrained networks that has been widely used in 82 machine-to-machine (M2M) communications [RFC7252].The purpose of 83 applying CoAP to the Industrial Internet of Things (IIoT) is to 84 provide connectivity for the devices. Whereas the communication of 85 Industry 4.0 not only requires data value transmission, but also 86 requires semantic information exchange. Driven by this, to use CoAP 87 in the IIoT, there is a need to provide good support for messages 88 transmission of the application layer in the automation field. 89 According to the definition of Industry 4.0 for communication, CoAP 90 needs to support the exchange of semantic information, namely the 91 semantic information model. For the current protocols supporting 92 semantic information model in the IIoT, the information model 93 defined by OPC UA [IEC TR 62541-1] is very promising and its 94 interactive model is similar to the interactive model of CoAP, so it 95 can be applied as a branch of the CoAP message payload. 97 2. Architecture of OPC UA over CoAP 99 To meet the needs of IIoT, the architecture of OPC UA over CoAP can 100 be mainly divided into the following two: 102 1) Figure 1 presents a logical layered structure of OPC UA 103 Information Model over CoAP. In the transport layer, DTLS runs on 104 top of UDP to secure transmission. Then, the middle layer utilizes 105 the message mode defined in the CoAP protocol. Last, the information 106 model of OPC UA [IEC TR 62541-5] is defined as an application of 107 CoAP at the top. In such a hierarchical structure, the semantic- 108 based data information in OPC UA can be transmitted in resources- 109 constrained scenarios, so that CoAP can meet the requirements of 110 semantic information transmission. 112 + - - - - - - - - - - - - - - + 113 | OPC UA Information Model | 114 + - - - - - - - - - - - - - - + 115 + - - - - - - - - - - - - - - + 116 | CoAP | 117 + - - - - - - - - - - - - - - + 118 + - - - - - - - - - - - - - - + 119 | UDP | 120 + - - - - - - - - - - - - - - + 121 Figure 1: OPC UA Information Model over CoAP 123 2) In order to take full advantage of the service sets defined by 124 OPC UA, this document proposes the other architecture for OPC UA 126 + - - - - - - - - - - - - - - + 127 | OPC UA Information Model | 128 + - - - - - - - - - - - - - - + 129 | OPC UA Services | 130 + - - - - - - - - - - - - - - + 131 + - - - - - - - - - - - - - - + 132 | CoAP | 133 + - - - - - - - - - - - - - - + 134 + - - - - - - - - - - - - - - + 135 | UDP | 136 + - - - - - - - - - - - - - - + 137 Figure 2: OPC UA Information Model and Services over CoAP 139 transmission over CoAP. As shown in Figure 2, the information model of 140 OPC UA is defined as the application of CoAP, moreover, the connection 141 establishment, creating session, publish/subscribe and other functions 142 related to data information interaction are all implemented by the 143 service sets defined by OPC UA. CoAP is mainly responsible for the 144 definition of message format and runs over UDP to keep the 145 implementation lightweight. 147 3. Requirements for OPC UA over CoAP 149 3.1. Encoding 151 CoAP messages are encoded in a simple binary format that starts with 152 a fixed-size 4-byte header. The header is followed by a variable- 153 length Token value, which can be between 0 and 8 bytes long. 154 Following the Token value comes a sequence of zero or more CoAP 155 Options in Type-Length-Value (TLV) format, optionally followed by a 156 payload that takes up the rest of the datagram. In addition, the OPC 157 UA protocol coding mainly includes two ways that are binary and XML. 158 Therefore, in order to transmit the information model of OPC UA over 159 CoAP, specific frame formats of CoAP need to be designed to support 160 two kinds of coding modes of OPC UA. 162 3.2. Application Sublayer Optimization 164 For information exchange, the document [draft-ietf-core-coap-pubsub- 165 00] defines the corresponding application sublayer, OPC UA also 166 defines a number of specific communication patterns. For example, in 167 the publish/subscribe mode defined by OPC UA, when the client needs 168 to obtain a data periodically, it will initiate a subscription 169 request to the server. In addition, the server will send the data to 170 the client periodically as it receives the request from the client 171 successfully. Correspondingly, in the publish/subscribe 172 specification of CoAP, it introduces Broker mechanism in which the 173 client sends the state information to the Broker and the Broker 174 provides storage and forwarding function to implement the 175 publish/subscribe function. Comparing above two protocols, their 176 achieving methods have a difference on communication mode of the 177 publish/subscribe function. Therefore, it is necessary to optimize 178 the application sublayer of CoAP to support some particular 179 communication modes of OPC UA. 181 3.3. Consistency 183 The interactive model of CoAP is the client/server model. However, 184 in M2M scenarios, CoAP entities often act as both servers and 185 clients. Compared to OPC UA, though the interactive model is also 186 the client/server model, there is a set of supported services in the 187 OPC UA server. Consequently, for the great difference of the server 188 definition of these two protocols, we need to tackle with the 189 consistency and integration issues between the CoAP server and the 190 OPC UA server. 192 3.4. Reliability 194 One of the main design goals of CoAP is to satisfy some special 195 requirements such as communication in the constrained scenarios that 196 address power consumption. Hence, in order to reduce network 197 overhead and avoid network congestion, CoAP is designed to run over 198 UDP, which is a good choice to achieve inter-network data exchange 199 in use of the IP architecture. However, UDP is a connectionless 200 transport layer protocol that provides unreliable information 201 transmission services. In the field of IIoT, we need to ensure the 202 reliability of data transmission to avoid losing some important data 203 information. Moreover, CoAP addresses transmission reliability by 204 defining a message as requiring acknowledgment, obviously this is 205 not enough to meet the high reliability requirements in the field of 206 IIoT, so the reliability of COAP remains to be optimized. 208 3.5. Transmission Methods 210 For OPC UA over CoAP, one of the important issues that needs to be 211 addressed is how to transmit messages. The connection between OPC UA 212 client and server is stateful, the connection status need to be 213 maintained in the process of message interaction, while CoAP is a 214 stateless connection, so that the message transmission of the two 215 protocols is different. Fortunately, the transport layer protocol of 216 OPC UA supports TCP and HTTP, in addition, the CoAP protocol can be 217 considered that it is improved for constrained scenarios based on 218 HTTP. Therefore, a solution can be found for the messages 219 transmission by using the similarity of two protocols in HTTP. 221 4. Security Considerations 223 The security of CoAP includes four modes in which three modes 224 implemented based on the Datagram Transport Layer Security (DTLS) 225 except the non-security mode. However, the security architecture of 226 OPC UA is built on the application layer and the communication layer 227 above the transport layer. Specifically, the application layer 228 adopts the authentication and authorization and the communication 229 layer achieves the security of OPC UA [IEC TR 62541-2] through 230 secure channel encryption. Though OPC UA has four modes, the 231 security model of OPC UA is realized based on Transport Layer 232 Security (TLS). Actually, DTLS is an addition to TLS to solve the 233 unreliable transmission feature of UDP. Currently, some documents 234 show that CoAP needs to support TLS. Therefore, the security of the 235 two protocols can be implemented jointly. 237 5. IANA Considerations 239 This memo includes no request to IANA. 241 6. References 243 6.1. Normative References 245 [RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained 246 Application Protocol", RFC 7252, June 2014, 247 . 249 6.2. Informative References 251 [IEC TR 62541-1] 252 IEC, "OPC unified architecture-Part1: Overview and concepts- 253 IEC 62541", 2016, < 254 https://webstore.iec.ch/preview/info_iec62541- 255 1%7Bed2.0%7Den.pdf>. 257 [IEC TR 62541-5] 258 IEC, "OPC unified architecture-Part5: Information Model-IEC 259 62541", 2015, < 260 https://webstore.iec.ch/preview/info_iec62541- 261 5%7Bed2.0%7Db.pdf>. 263 [I-D.koster-core-coap-pubsub] 264 Koster, M., Keranen, A., and J. Jimenez, "Publish- 265 Subscribe Broker for the Constrained Application Protocol 266 (CoAP)", draft-ietf-core-coap-pubsub-00 (work in 267 progress), Qctober 2016. 269 [IEC TR 62541-2] 270 IEC, "OPC unified architecture-Part2: Security Model-IEC 271 62541", 2016, < 272 https://webstore.iec.ch/preview/info_iec62541- 273 2%7Bed2.0%7Db.pdf>. 275 Authors' Addresses 277 Heng Wang 278 Chongqing University of Posts and Telecommunications 279 2 Chongwen Road 280 Chongqing, 400065 281 China 283 Phone: (86)-23-6248-7845 284 Email: wangheng@cqupt.edu.cn 286 Chenggen Pu 287 Chongqing University of Posts and Telecommunications 288 2 Chongwen Road 289 Chongqing, 400065 290 China 292 Phone: (86)-23-6246-1061 293 Email: mentospcg@163.com 295 Ping Wang 296 Chongqing University of Posts and Telecommunications 297 2 Chongwen Road 298 Chongqing, 400065 299 China 301 Phone: (86)-23-6246-1061 302 Email: wangping@cqupt.edu.cn 304 Yi Yang 305 Chongqing University of Posts and Telecommunications 306 2 Chongwen Road 307 Chongqing, 400065 308 China 310 Phone: (86)-23-6246-1061 311 Email: 15023705316@163.com 313 Daijing Xiong 314 Chongqing University of Posts and Telecommunications 315 2 Chongwen Road 316 Chongqing, 400065 317 China 318 Phone: (86)-23-6246-1061 319 Email: 15111825021@163.com