OneNet EDP协议详解及接入流程

5星 · 超过95%的资源 需积分: 50 9 下载量 189 浏览量 更新于2024-08-05 1 收藏 319KB DOCX 举报
"EDP协议是增强型设备协议,用于设备与OneNet平台之间的通信,支持TCP连接,但不保证数据传输顺序,需要上层实现事务机制。适用于已分析业务数据模型并认为OneNet设备-数据流-数据点模型适合的场景。接入流程包括在设备云门户网站注册、选择EDP登录方式、获取设备信息并建立TCP连接。消息格式包含消息头、选项和消息体,消息类型占第一个字节的前4位,消息长度字段根据实际大小占用1-4个字节,最大不超过4M。" **EDP协议详解** Enhanced Device Protocol(EDP)是一种专为物联网设备与OneNet平台间通信设计的协议。它基于TCP/IP协议栈,但有其特定的设计特点。由于EDP仅负责数据包的传输,而不处理传输顺序或事务性,因此需要应用程序或上层协议来处理这些功能。这意味着设备开发者在实现EDP协议时,必须考虑如何确保数据的正确性和完整性,尤其是在并发请求的场景下。 在设备接入模式上,设备层通过使用OneNet提供的EDPSDK实现EDP协议,以便将业务数据点上报到平台。同时,为了实时接收来自业务层的控制命令,设备需维持一个EDP的长连接。而业务应用层则可以通过HTTP协议的RESTful API与OneNet平台进行交互,操作设备、数据点和命令控制等相关资源。 **接入流程** 1. 访问OneNet的设备云门户网站(http://open.iot.10086.cn/)注册成为用户。 2. 根据业务需求,选择EDP作为登录方式。 3. 在产品管理中填写设备属性,创建新设备,获取产品ID、设备ID以及api-key等关键信息。 4. 设备使用TCP连接向平台服务器(jjfaedp.hedevice.com,端口876或29876)发起连接请求,并进行数据交互。 **消息格式** EDP协议的消息由三部分组成:消息头、可选的选项和消息体。消息类型用第一个字节的前四位表示,取值范围为0-15,定义了消息的种类。消息长度字段用于指示选项和消息体的总字节数,最大不超过4MB。这个字段的长度是可变的,根据实际长度占用1-4个字节,采用延续指示位机制,以适应不同大小的消息。 例如,如果消息的选项和消息体总共长度为128字节,那么消息剩余长度字段仅占用一个字节表示128。如果总长度为129-16383字节,则消息长度字段占用两个字节。以此类推,确保能够表示所有可能的消息长度。 在实现EDP协议时,开发者需要注意这些细节,以确保设备与平台之间的通信准确无误。对于新业务,推荐使用OneNet的设备-数据流-数据点模型,因为它提供了一种标准化的方式来存储和处理物联网数据。