欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > PDF文档下载
    分享到微信 分享到微博 分享到QQ空间

    SMPTE RDD 38-2016 Networked Device Control Protocol - Message Data Structure and Method of Communication.pdf

    • 资源ID:1046332       资源大小:450.93KB        全文页数:31页
    • 资源格式: PDF        下载积分:10000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要10000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    SMPTE RDD 38-2016 Networked Device Control Protocol - Message Data Structure and Method of Communication.pdf

    1、 SMPTE RDD 38:2016 SMPTE REGISTERED DISCLOSURE DOCUMENT Networked Device Control Protocol Message Data Structure and Method of Communication Page 1 of 31 pages The attached document is a Registered Disclosure Document prepared by the proponent identified below. It has been examined by the appropriat

    2、e SMPTE Technology Committee and is believed to contain adequate information to satisfy the objectives defined in the Scope, and to be technically consistent. This document is NOT a Standard, Recommended Practice or Engineering Guideline, and does NOT imply a finding or representation of the Society

    3、. Errors in this document should be reported to the proponent identified below, with a copy to engsmpte.org. All other inquiries in respect of this document, including inquiries as to intellectual property requirements that may be attached to use of the disclosed technology, should be addressed to t

    4、he proponent identified below. Proponent contact information: Satoshi Katsuo Sony Corporation 4-14-1 Asahi-cho, Atsugi Kanagawa, 243-0014 Japan Email: Satoshi.K Copyright 2016 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue, White Plains, NY 10601 (914) 761-1100 Approved Ju

    5、ne 30, 2016 SMPTE RDD 38:2016 Page 2 of 31 pages Table of Contents Page Introduction 3 1 Scope 3 2 Related Documents and URLs . 3 3 Terms and Definitions . 4 3.1 Big-Endian Byte Rrder . 4 3.2 Deserialization . 4 3.3 Least Significant Byte (LSB) 4 3.4 Most Significant Byte (MSB) 4 3.5 Serialization .

    6、 4 4 Serialized Object Formats 4 4.1 General 4 4.2 Nil . 6 4.3 Boolean 6 4.4 Integer 6 4.5 IEEE 754 Floating Point Numbers . 10 4.6 UTF-8 String 11 4.7 Binary Data 13 4.8 Array 14 4.9 Map 15 4.10 User Defined Types . 17 5 Message Formats . 21 5.1 General 21 5.2 Request Message 21 5.3 Response Messag

    7、e . 23 5.4 Notify Message 25 6 Message Sequences 28 6.1 General 28 6.2 Remote Procedure Call . 28 6.3 Notification . 28 7 Transport Protocols 29 7.1 General 29 7.2 WebSocket 29 7.3 TLS 29 7.4 TCP 29 8 Security . 30 8.1 General 30 8.2 User Authentication . 30 8.3 Client Authentication 30 8.4 Encrypti

    8、on of Communication Path . 30 Annex A Reference Implementation (Informative) 31 SMPTE RDD 38:2016 Page 3 of 31 pages Introduction The phrase “IP control” covers a wide range of control functions via IP networks, from business level control (control at workflow level) to device level control (control

    9、 at function level). As for the latter, it has now become common practice to control a product using a variety of controller types including portable computers, smartphones and/or tablets via wireless IP networks. In such situations, even in an IP network environment there is a requirement to realiz

    10、e high speed control/response equivalent to using a conventional RS422/9-pin control device. This RDD provides a lightweight and efficient control protocol specification for this purpose. Specifically, it conforms to MessagePack and MessagePack RPC specifications, with some added definitions require

    11、d for device control. These include an efficient method of message communication, and use of available transport protocols that take security into account. See Annex A for a URL to an open source reference implementation. 1 Scope This RDD provides the following specification for a protocol layer to

    12、control networked devices efficiently in an IP network environment. Serialized object format Message format Message sequence Transport protocol Security 2 Related Documents and URLs IETF RFC 2617, HTTP Authentication: Basic and Digest Access Authentication IETF RFC 3629, UTF-8, a transformation form

    13、at of ISO 10646 IETF RFC 5246, The Transport Layer Security (TLS) Protocol Version 1.2 IETF RFC 6455, The WebSocket Protocol The Unicode Consortium, The Unicode Standard IEEE 754, Standard for Floating Point Arithmetic MessagePack, http:/msgpack.org/ MessagePack RPC, https:/ SMPTE RDD 38:2016 Page 4

    14、 of 31 pages 3 Terms and Definitions For the purposes of this document, the following terms and definitions apply. 3.1 Big-endian byte order The most significant byte of words is stored at a particular memory address and subsequent bytes are stored in the following higher memory addresses, the least

    15、 significant byte thus being stored at the highest memory address. It is also called network order in the IETF RFC documents. 3.2 Deserialization The process of translating a series of bytes into application data structures or object states. 3.3 Least Significant Byte (LSB) The byte in that position

    16、 of a multi-byte number which has the least potential value. 3.4 Most Significant Byte (MSB) The byte in that position of a multi-byte number which has the greatest potential value. 3.5 Serialization The process of translating data structures or object state into a series of bytes that can be stored

    17、 and reconstructed later in the same or another computer environment. 4 Serialized Object Formats 4.1 General This section describes data formats of the serialized object which have an arbitrary type by a binary string. Since serialized data has both type information and a value, an application obje

    18、ct can be reconstructed from it. Table 1 shows the defined types in serialized object formats. In addition to basic types defined by most programming languages, a variable length binary/string data type and container types are also defined. In order to minimize the post-serialization data size, the

    19、type can be set by the actual value at the time of serialization instead of strictly serializing the type as declared by the programming language. For example, even if a type is declared as 64-bit unsigned integer by the programming language, if the value is 250, the data will be serialized into an

    20、8-bit unsigned integer. As a result, the post-serialization data size is 7 bytes shorter than with serialization into a 64-bit unsigned integer. An open source reference implementation described in Annex A supports all data formats defined in this section, and also has the size reduction capability

    21、described above. In the following sections, bits in a byte are labeled 7 through 0. The most significant bit is bit number 7, and the least significant bit is bit number 0. SMPTE RDD 38:2016 Page 5 of 31 pages Table 1 Defined data types in serialized object formats Type First byte (in binary) First

    22、byte (in hex) Details 7-bit positive integer 0xxxxxxx 0x00 - 0x7f See 4.4.2. map in 4-bit object number 1000xxxx 0x80 - 0x8f See 4.9.2. array in 4-bit object number 1001xxxx 0x90 - 0x9f See 4.8.2. UTF-8 string in 5-bit length 101xxxxx 0xa0 - 0xbf See 4.6.2. Nil 11000000 0xc0 See 4.2. (never used) 11

    23、000001 0xc1 False 11000010 0xc2 See 4.3.2. True 11000011 0xc3 See 4.3.3. binary in 8-bit length 11000100 0xc4 See 4.7.2. binary in 16-bit length 11000101 0xc5 See 4.7.3. binary in 32-bit length 11000110 0xc6 See 4.7.4. user defined type in 8-bit length 11000111 0xc7 See 4.10.2. user defined type in

    24、16-bit length 11001000 0xc8 See 4.10.3. user defined type in 32-bit length 11001001 0xc9 See 4.10.4. IEEE 754 single precision floating point number 11001010 0xca See 4.5.2. IEEE 754 double precision floating point number 11001011 0xcb See 4.5.3. 8-bit unsigned integer 11001100 0xcc See 4.4.4. 16-bi

    25、t unsigned integer 11001101 0xcd See 4.4.5. 32-bit unsigned integer 11001110 0xce See 4.4.6. 64-bit unsigned integer 11001111 0xcf See 4.4.7. 8-bit signed integer 11010000 0xd0 See 4.4.8. 16-bit signed integer 11010001 0xd1 See 4.4.9. 32-bit signed integer 11010010 0xd2 See 4.4.10. 64-bit signed int

    26、eger 11010011 0xd3 See 4.4.11. 8-bit user defined type 11010100 0xd4 See 4.10.2. 16-bit user defined type 11010101 0xd5 See 4.10.3. 32-bit user defined type 11010110 0xd6 See 4.10.4. 64-bit user defined type 11010111 0xd7 See 4.10.5. 128-bit user defined type 11011000 0xd8 See 4.10.6. UTF-8 string i

    27、n 8-bit length 11011001 0xd9 See 4.6.3. UTF-8 string in 16-bit length 11011010 0xda See 4.6.4. UTF-8 string in 32-bit length 11011011 0xdb See 4.6.5. array in 16-bit object number 11011100 0xdc See 4.8.3. array in 32-bit object number 11011101 0xdd See 4.8.4. map in 16-bit object number 11011110 0xd

    28、e See 4.9.3. map in 32-bit object number 11011111 0xdf See 4.9.4. 5-bit negative integer 111xxxxx 0xe0 - 0xff See 4.4.3. SMPTE RDD 38:2016 Page 6 of 31 pages 4.2 Nil Table 2 shows a nil. In most programming language, nil refers to an empty set or a list containing no entries. Nil is also used when a

    29、 value is not assigned to a variable. Table 2 nil Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xc0) 1 1 0 0 0 0 0 0 4.3 Boolean 4.3.1 General Boolean data types usually have two values such as true or false. 4.3.2 false Table 3 shows a false. It is represented by 0xc2 in hexadecimal. Table 3 false Bit 7 6 5 4

    30、3 2 1 0 byte 1 Type (0xc2) 1 1 0 0 0 0 1 0 4.3.3 true Table 4 shows a true. It is represented by 0xc3 in hexadecimal. Table 4 true 7 6 5 4 3 2 1 0 byte 1 Type (0xc3) 1 1 0 0 0 0 1 1 4.4 Integer 4.4.1 General An integer value is stored big-endian order in the object serialization formats. SMPTE RDD 3

    31、8:2016 Page 7 of 31 pages 4.4.2 7-bit positive integer Table 5 shows the format for a positive integer value. The type field is the most significant bit of byte 1 and is stored as 0. A positive integer value should be stored as this format if the value is less than 128. Table 5 7-bit positive intege

    32、r format Bit 7 6 5 4 3 2 1 0 byte 1 Type Value (0127) 0 X X X X X X X 4.4.3 5-bit negative integer Table 6 shows the format for a negative integer value. The type field in byte 1 is stored as 111 in binary. A negative integer should be stored as this format if the value is larger than -32. Table 6 5

    33、-bit negative integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type Value (-31-1) 1 1 1 X X X X X 4.4.4 8-bit unsigned integer Table 7 shows the format for an 8-bit unsigned integer value. The type field in byte 1 is stored as 0xcc in hexadecimal. The value field in byte 2 is stored as an 8-bit unsigned in

    34、teger value. An unsigned integer value should be stored as this format if the value is within the max value of an 8-bit unsigned integer. Table 7 8-bit unsigned integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xcc) 1 1 0 0 1 1 0 0 byte 2 Value 4.4.5 16-bit unsigned integer Table 8 shows the format f

    35、or a 16-bit unsigned integer value. The type field in byte 1 is stored as 0xcd in hexadecimal. The value field is stored as a 16-bit unsigned integer value in big-endian order. An unsigned integer value should be stored as this format if the value is within the max value of a 16-bit unsigned integer

    36、. Table 8 16-bit unsigned integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xcd) 1 1 0 0 1 1 0 1 byte 2 Value (MSB) byte 3 Value (LSB) SMPTE RDD 38:2016 Page 8 of 31 pages 4.4.6 32-bit unsigned integer Table 9 shows the format for a 32-bit unsigned integer value. The type field in byte 1 is stored as

    37、 0xce in hexadecimal. The value field is stored as a 32-bit unsigned integer value in big-endian order. An unsigned integer value should be stored as this format if the value is within the max value of a 32-bit unsigned integer. Table 9 32-bit unsigned integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type

    38、(0xce) 1 1 0 0 1 1 1 0 byte 2 Value (MSB) byte 3 Value (cont.) byte 4 Value (cont.) byte 5 Value (LSB) 4.4.7 64-bit unsigned integer Table 10 shows the format for a 64-bit unsigned integer value. The type field in byte 1 is stored as 0xcf in hexadecimal. The value field is stored as a 64-bit unsigne

    39、d integer value in big-endian order. An unsigned integer value should be stored as this format if the value is within the max value of a 64-bit unsigned integer. Table 10 64-bit unsigned integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xcf) 1 1 0 0 1 1 1 1 byte 2 Value (MSB) byte 3 Value (cont.) byt

    40、e 4 Value (cont.) byte 5 Value (cont.) byte 6 Value (cont.) byte 7 Value (cont.) byte 8 Value (cont.) byte 9 Value (LSB) 4.4.8 8-bit signed integer Table 11 shows the format for an 8-bit signed integer value. The type field in byte 1 is stored as 0xd0 in hexadecimal. The value field is stored as an

    41、8-bit signed integer value. A signed integer value should be stored as this format if the value is within the range of an 8-bit signed integer. SMPTE RDD 38:2016 Page 9 of 31 pages Table 11 8-bit signed integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xd0) 1 1 0 1 0 0 0 0 byte 2 Value 4.4.9 16-bit s

    42、igned integer Table 12 shows the format for a 16-bit signed integer value. The type field in byte 1 is stored as 0xd1 in hexadecimal. The value field is stored as a 16-bit signed integer value in big-endian order. A signed integer value should be stored as this format if the value is within the rang

    43、e of a 16-bit signed integer. Table 12 16-bit singed integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xd1) 1 1 0 1 0 0 0 1 byte 2 Value (MSB) byte 3 Value (LSB) 4.4.10 32-bit signed integer Table 13 shows the format for a 32-bit signed integer value. The type field in byte 1 is stored as 0xd2 in hex

    44、adecimal. The value field is stored as a 32-bit signed integer value in big-endian order. A signed integer value should be stored this format if the value is within the range of a 32-bit signed integer. Table 13 32-bit signed integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xd2) 1 1 0 0 1 1 1 0 byte

    45、 2 Value (MSB) byte 3 Value (cont.) byte 4 Value (cont.) byte 5 Value (LSB) 4.4.11 64-bit signed integer Table 14 shows the format for a 64-bit signed integer value. The type field in byte 1 is stored as 0xd3 in hexadecimal. The value field is stored as a 64-bit signed integer value in big-endian or

    46、der. A signed integer value should be stored this format if the value is within the range of a 64-bit signed integer. SMPTE RDD 38:2016 Page 10 of 31 pages Table 14 64-bit signed integer format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xd3) 1 1 0 1 0 0 1 1 byte 2 Value (MSB) byte 3 Value (cont.) byte 4 Valu

    47、e (cont.) byte 5 Value (cont.) byte 6 Value (cont.) byte 7 Value (cont.) byte 8 Value (cont.) byte 9 Value (LSB) 4.5 IEEE 754 Floating Point Numbers 4.5.1 General This specification supports IEEE 754 single precision floating point number and IEEE 754 double precision floating point number. 4.5.2 Si

    48、ngle precision floating point number Table 15 shows the format for the value of an IEEE 754 single precision floating point number. The type field in byte 1 is stored as 0xca in hexadecimal. The most significant bit in byte 2 stores the sign value: 0 for a positive number and 1 for a negative number

    49、. The exponent field is stored as an 8-bit exponent value. The fraction field in the format is stored as a 23-bit fraction value. Table 15 IEEE 754 single precision floating point number format Bit 7 6 5 4 3 2 1 0 byte 1 Type (0xca) 1 1 0 0 1 0 1 0 byte 2 Sign Exponent byte 3 Exponent (cont.) Fraction byte 4 Fraction (cont.) byte 5 Fraction (cont.) SMPTE RDD 38:2016 Page 11 of 31 pages 4.5.3 Double precision floating point number Table 16 shows the format


    注意事项

    本文(SMPTE RDD 38-2016 Networked Device Control Protocol - Message Data Structure and Method of Communication.pdf)为本站会员(ownview251)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开