物联网中的CoAP协议与DTLS安全协议解析

需积分: 48 27 下载量 132 浏览量 更新于2024-09-07 收藏 684KB PDF 举报
"物联网coap协议的应用与介绍" 物联网(IoT)是新一代技术的重要组成部分,其目标是将万物,无论是物品还是人类,都连接到互联网。为了设备间的通信,有许多无线协议,如IEEE 802.11系列、802.15系列、Zigbee等。然而,针对许多资源受限的小型设备,它们无法高效地进行通信,于是互联网工程任务组(IETF)开发了一种轻量级的协议——约束应用协议(CoAP)。 本文首先概述了一些无线协议,然后详细介绍CoAP及其相关的安全协议DTLS。最后,提供了一个具体的应用场景示例。 ### 1. 引言 物联网的发展推动了新的通信协议需求,特别是针对资源有限的设备。CoAP的出现正是为了解决这一问题,它旨在提供一种低功耗、低带宽的通信方式,适用于物联网设备。 ### 2. 无线协议概述 #### 2.1 不同层次的协议 物联网中的无线协议覆盖了网络的多个层次,包括物理层、数据链路层、网络层、传输层和应用层,每层都有特定的协议负责不同的功能。 #### 2.2 CoAP的特点与功能 CoAP是IETF为物联网设计的一种应用层协议,它的主要特点包括: - **轻量级**:CoAP具有简单的报文结构和低开销,适合资源受限的设备。 - **基于UDP**:CoAP使用用户数据报协议(UDP),而不是TCP,降低了复杂性和延迟。 - **RESTful架构**:与HTTP类似,CoAP支持资源表示状态转移(REST)模型,便于设备之间的交互。 - **适应性**:CoAP能够处理不稳定和不可靠的网络环境。 #### 2.3 CoAP与HTTP的比较 虽然CoAP受到了HTTP的启发,但两者之间存在显著差异: - **报文大小**:CoAP报文通常比HTTP小,更适合低带宽和低功耗环境。 - **连接性**:HTTP依赖于持久的TCP连接,而CoAP使用无连接的UDP,简化了网络管理。 - **适应资源受限的设备**:CoAP的设计考虑到了物联网设备的内存和计算能力限制。 ### 3. CoAP结构模型 #### 3.1 消息层模型 CoAP消息包含四个基本类型:CON(确认要求)、NON(非确认要求)、ACK(确认响应)和RST(重置响应)。这种模型简化了消息交互并确保了可靠传输。 #### 3.2 (这部分内容不完整,可能包括CoAP选项、URI路径、方法和状态码等内容,但原文未给出) ### 4. DTLS安全协议 DTLS(Datagram Transport Layer Security)是专门为无连接的数据传输协议(如UDP)设计的安全协议,它提供了类似于TLS(Transport Layer Security)的安全服务。在CoAP中,DTLS用于保护数据的机密性、完整性以及防止中间人攻击。 ### 5. 应用实例 CoAP常被应用于智能家居和能源控制系统中,例如,智能灯泡、温控器或安全监控设备。这些系统利用CoAP实现设备间的安全、低功耗通信,实现远程控制和自动化管理。 关键词:物联网,CoAP,DTLS,无线协议,智能家居,能源控制系统 总结,CoAP是物联网中关键的通信协议,其轻量级设计使得它成为资源受限设备的理想选择。配合DTLS的安全保障,CoAP在实现物联网设备的互联互通中发挥着重要作用。
2018-04-03 上传
NB-IoT现阶段访问一个服务器只能通过IP地址加端口的方式,省去了DNS解析,如果产品以后的IP变化或者改变了服务端的IP地址,就需要一个DNS解析的功能。 通过DNS解析某个域名的IP地址,获取到IP地址后再进行通信。 如果NB-IoT模块只能绑定一个IP,则可以通过这个IP先获取其他IP列表,然后统一经过这个IP进行转发。 参考: 1.1.2 NB卡准备 模组使用的SIM卡为中国电信物联网专用NB卡,如下图正面(留意NB字样,无此字样的均为不合法的NB卡): 背面(留意其ICCID号,在让运营商开放IP白名单时可能需要此号码,相当于手机卡的手机号): 重要:收到卡后,需要致电背面的客服电话, 使其将您自己的IP地址加入访问白名单,此一步完成后,方能进行下面的步骤,切记切记 。 如何判定服务器IP已被加入访问白名单,使用如下两种方式: 1. AT+NPING 指令,通过PING自己的服务器地址,如返回ERROR,则多半(尚需继续排除防火墙因素)未就绪; 2. UDP通讯,如能与自己的服务器直接连接UDP通讯,那可以证明一定就绪; 1.1.3 服务器准备  首先您需要有一个固定IP的公网服务器,由于目前BC95暂不支持域名解析,故必须使用IP地址配置方式。  服务器可以使用阿里云服务器,目前本CoAP端暂未开源,有Windows 32位、Windows 64位、Linux CentOS 6、CentOS 7的可执行文件,请暂时选择以上指定系统;  CoAP标准协议使用 UDP 5683 端口,当然您也可以自定义此端口,必须让防火墙放通UDP 的指定端口;  CoAP网关需要使用WEB方式进行设备管理、用户管理等,默认使用 TCP 8080 端口,同 理,防火墙必须放通此端口; 1.1.4 模组准备 推荐使用 串口调试助手 sscom 来调试NB模组,如下,首先将您的NB模组上电使其启动,使用AT指令能收到OK的回复,证明已启动完毕,按如下步骤进行: 基础配置 1. 配置 NCDP 服务器,使用的指令序列为 AT+CFUN=0 +NCDP=103.37.149.19,5683 AT+NRB 留意 IP 地址必须为您自己指定的IP地址,如果暂时没有,也可以用 如上 地址临时使用(但 WEB 设备管理地址也需换成这个IP),完成后重启了设备; 2. 等待设备附着网络后,使用 AT+NPING=103.37.149.19 尝试PING自己的服务器,当返回ERROR时,极有可能是 IP 白名单未成功配置的缘故; 3. 使用 AT+CGSN=1 查询设备 IMEI 号,并将设备的 IMEI 注册到 WEB 平台,如果在上面操作 过,可忽略。