IoT开发实战:CoAP卷

IoT开发实战:CoAP卷
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2017-10
版次: 1
ISBN: 9787111577805
定价: 59.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 242页
23人买过
  • 物联网已经无处不在,本书主要讲解CoAP协议,这是一个IETF组织编写的面向低功耗设备的物联网应用层协议。CoAP协议具有很多优点,掌握了CoAP协议,物联网软件工程师能快速开发物联网嵌入式设备: 

    1)CoAP协议传输层协议采用UDP,对于终端来说UDP的确可以减少一部分能耗; 

    2)CoAP协议采用请求响应工作模式,当终端设备发送CoAP请求之后,服务器将返回合适响应码,终端通过响应吗可以判断服务器的处理结果; 

    3)CoAP协议包含重传机制,不用再重新设计重传方法; 

    4)CoAP协议参考很多了HTTP协议的成功经验,例如CoAP请求方法、CoAP选项定义和CoAP响应码等,所以Web开发工程师也可以非常容易掌握CoAP。 徐凯,嵌入式软件工程师。擅长嵌入式Web系统和6LoWPAN无线传感网应用,精通物联网操作系统Contiki和物联网应用层协议CoAP 前言 

    第1章 物联网与网络协议1 

    1.1 本章主要内容1 

    1.2 物联网与IP2 

    1.2.1 IPv42 

    1.2.2 IPv62 

    1.2.3 6LoWPAN3 

    1.3 物联网与HTTP 6 

    1.3.1 HTTP6 

    1.3.2 REST风格6 

    1.4 物联网与CoAP7 

    1.4.1 CoAP8 

    1.4.2 RFC文档汇总8 

    1.5 物联网与MQTT协议10 

    1.5.1 MQTT协议10 

    1.5.2 MQTT主题10 

    1.5.3 MQTT服务质量11 

    1.6 本章小结12 

    第2章 物联网与开源硬件13 

    2.1 本章主要内容13 

    2.2 Arduino13 

    2.2.1 Arduino简介13 

    2.2.2 常用Arduino型号14 

    2.2.3 Arduino扩展接口15 

    2.3 树莓派16 

    2.3.1 树莓派简介16 

    2.3.2 常用树莓派型号16 

    2.3.3 树莓派扩展接口19 

    2.4 本章小结20 

    第3章 网络技术回顾22 

    3.1 本章主要内容22 

    3.2 IP23 

    3.2.1 动手尝试23 

    3.2.2 IPv4首部26 

    3.2.3 IPv4地址27 

    3.2.4 IPv6首部28 

    3.2.5 IPv6地址30 

    3.3 UDP31 

    3.3.1 动手尝试31 

    3.3.2 UDP首部35 

    3.3.3 UDP示例分析35 

    3.4 TCP37 

    3.4.1 动手尝试37 

    3.4.2 TCP首部41 

    3.4.3 TCP示例分析42 

    3.4.4 UDP与TCP对比43 

    3.5 HTTP44 

    3.5.1 动手尝试44 

    3.5.2 HTTP工作模式50 

    3.5.3 HTTP首部51 

    3.5.4 HTTP请求方法53 

    3.5.5 HTTP状态码53 

    3.5.6 HTTP首部字段54 

    3.5.7 HTTP的优势与问题54 

    3.6 本章小结56 

    第4章 CoAP快速入门57 

    4.1 本章主要内容57 

    4.2 Copper插件入门58 

    4.2.1 Copper插件安装58 

    4.2.2 Copper插件入门示例59 

    4.3 Arduino CoAP服务器实现61 

    4.3.1 获取示例61 

    4.3.2 示例说明62 

    4.3.3 动手测试67 

    4.3.4 着手分析70 

    4.4 本章小结73 

    第5章 CoAP核心74 

    5.1 本章主要内容74 

    5.2 CoAP首部74 

    5.2.1 版本编号Ver75 

    5.2.2 报文类型T75 

    5.2.3 标签长度指示TKL75 

    5.2.4 准则Code76 

    5.2.5 报文序号Message ID77 

    5.2.6 标签Token77 

    5.2.7 选项Options77 

    5.2.8 分隔符0xFF78 

    5.2.9 负载Payload78 

    5.3 CoAP工作模式78 

    5.3.1 逻辑分层结构79 

    5.3.2 报文类型79 

    5.3.3 请求/响应模式81 

    5.4 CoAP重传机制83 

    5.4.1 CoAP重传情况分析83 

    5.4.2 传输参数说明84 

    5.4.3 最大传输耗时(MAX_TRANSMIT_SPAN)85 

    5.4.4 最大等待时间(MAX_TRANSMIT_WAIT)86 

    5.5 CoAP方法87 

    5.5.1 GET87 

    5.5.2 POST87 

    5.5.3 PUT87 

    5.5.4 DELETE87 

    5.6 CoAP响应码87 

    5.6.1 正确响应88 

    5.6.2 客户端错误88 

    5.6.3 服务器错误89 

    5.7 CoAP选项90 

    5.7.1 选项格式90 

    5.7.2 URI相关选项91 

    5.7.3 Content-Format选项92 

    5.7.4 Accept选项92 

    5.7.5 Etag选项92 

    5.7.6 If-Match选项94 

    5.7.7 If-None-Match选项96 

    5.7.8 选项示例97 

    5.8 CoAP媒体类型99 

    5.8.1 link-format类型100 

    5.8.2 文本与二进制类型100 

    5.8.3 JSON类型101 

    5.9 本章小结102 

    第6章 CoAP扩展103 

    6.1 本章主要内容103 

    6.2 CoAP资源描述103 

    6.2.1 CoAP资源描述原理103 

    6.2.2 CoAP资源描述详解105 

    6.3 CoAP观察者模式106 

    6.3.1 观察者模式原理106 

    6.3.2 CoAP观察选项107 

    6.3.3 观察者模式示例108 

    6.4 本章小结110 

    第7章 CoAP软件实现111 

    7.1 本章主要内容111 

    7.2 libcoap112 

    7.2.1 libcoap安装112 

    7.2.2 libcoap使用详解114 

    7.2.3 libcoap入门示例117 

    7.3 aiocoap119 

    7.3.1 aiocoap安装120 

    7.3.2 aiocoap入门示例120 

    7.3.3 aiocoap块传输示例124 

    7.3.4 aiocoap树莓派GPIO示例126 

    7.4 node-coap129 

    7.4.1 Node.js安装130 

    7.4.2 node-coap入门示例132 

    7.4.3 node-coap媒体类型示例135 

    7.5 Californium137 

    7.5.1 准备工作137 

    7.5.2 Californium入门示例140 

    7.6 本章小结149 

    第8章 CoAP调试工具150 

    8.1 本章主要内容150 

    8.2 Copper调试工具150 

    8.2.1 Copper地址栏151 

    8.2.2 Copper工具栏152 

    8.2.3 Copper响应首部153 

    8.2.4 Copper负载内容154 

    8.2.5 Copper请求选项154 

    8.2.6 Copper使用示例155 

    8.3 Wireshark163 

    8.3.1 Wireshark安装164 

    8.3.2 Wireshark使用164 

    8.3.3 Wireshark示例166 

    8.4 本章小结169 

    第9章 微型物联网系统——服务器部分171 

    9.1 本章主要内容171 

    9.2 假想需求171 

    9.3 原型设计172 

    9.3.1 系统结构说明172 

    9.3.2 系统流程设计173 

    9.3.3 网页原型设计174 

    9.4 详细设计174 

    9.4.1 技术选型说明175 

    9.4.2 数据库设计176 

    9.4.3 CoAP API设计176 

    9.4.4 HTTP API设计177 

    9.5 具体实现179 

    9.5.1 数据库实现180 

    9.5.2 CoAP路由实现183 

    9.5.3 Web前端实现190 

    9.5.4 Web后端实现195 

    9.6 综合测试199 

    9.6.1 启动微型物联网系统199 

    9.6.2 增加模拟数据200 

    9.6.3 访问默认设备200 

    9.6.4 使用分页功能200 

    9.6.5 访问其他设备201 

    9.7 本章小结202 

    第10章 微型物联网系统——设备部分203 

    10.1 本章主要内容203 

    10.2 设备与网络结构说明203 

    10.2.1 设备说明203 

    10.2.2 网络结构说明205 

    10.3 Contiki入门206 

    10.3.1 Contiki初步207 

    10.3.2 native入门示例211 

    10.3.3 安装交叉工具链212 

    10.3.4 SensorTag入门示例213 

    10.4 搭建边界路由218 

    10.4.1 创建Slip-Radio218 

    10.4.2 创建Native-Border-Router219 

    10.5 增加NAT64223 

    10.5.1 NAT64简介223 

    10.5.2 安装Jool224 

    10.5.3 UDP NAT64示例225 

    10.6 CoAP Client Sensor231 

    10.6.1 加入网络并启动任务232 

    10.6.2 获取传感器数据233 

    10.6.3 传递传感器数据235 

    10.7 综合测试238 

    10.7.1 启动CoAP服务器238 

    10.7.2 启动边界路由和NAT64239 

    10.7.3 生成并下载固件239 

    10.7.4 查看运行结果239 

    10.8 本章小结242 

    参考文献243
  • 内容简介:
    物联网已经无处不在,本书主要讲解CoAP协议,这是一个IETF组织编写的面向低功耗设备的物联网应用层协议。CoAP协议具有很多优点,掌握了CoAP协议,物联网软件工程师能快速开发物联网嵌入式设备: 

    1)CoAP协议传输层协议采用UDP,对于终端来说UDP的确可以减少一部分能耗; 

    2)CoAP协议采用请求响应工作模式,当终端设备发送CoAP请求之后,服务器将返回合适响应码,终端通过响应吗可以判断服务器的处理结果; 

    3)CoAP协议包含重传机制,不用再重新设计重传方法; 

    4)CoAP协议参考很多了HTTP协议的成功经验,例如CoAP请求方法、CoAP选项定义和CoAP响应码等,所以Web开发工程师也可以非常容易掌握CoAP。
  • 作者简介:
    徐凯,嵌入式软件工程师。擅长嵌入式Web系统和6LoWPAN无线传感网应用,精通物联网操作系统Contiki和物联网应用层协议CoAP
  • 目录:
    前言 

    第1章 物联网与网络协议1 

    1.1 本章主要内容1 

    1.2 物联网与IP2 

    1.2.1 IPv42 

    1.2.2 IPv62 

    1.2.3 6LoWPAN3 

    1.3 物联网与HTTP 6 

    1.3.1 HTTP6 

    1.3.2 REST风格6 

    1.4 物联网与CoAP7 

    1.4.1 CoAP8 

    1.4.2 RFC文档汇总8 

    1.5 物联网与MQTT协议10 

    1.5.1 MQTT协议10 

    1.5.2 MQTT主题10 

    1.5.3 MQTT服务质量11 

    1.6 本章小结12 

    第2章 物联网与开源硬件13 

    2.1 本章主要内容13 

    2.2 Arduino13 

    2.2.1 Arduino简介13 

    2.2.2 常用Arduino型号14 

    2.2.3 Arduino扩展接口15 

    2.3 树莓派16 

    2.3.1 树莓派简介16 

    2.3.2 常用树莓派型号16 

    2.3.3 树莓派扩展接口19 

    2.4 本章小结20 

    第3章 网络技术回顾22 

    3.1 本章主要内容22 

    3.2 IP23 

    3.2.1 动手尝试23 

    3.2.2 IPv4首部26 

    3.2.3 IPv4地址27 

    3.2.4 IPv6首部28 

    3.2.5 IPv6地址30 

    3.3 UDP31 

    3.3.1 动手尝试31 

    3.3.2 UDP首部35 

    3.3.3 UDP示例分析35 

    3.4 TCP37 

    3.4.1 动手尝试37 

    3.4.2 TCP首部41 

    3.4.3 TCP示例分析42 

    3.4.4 UDP与TCP对比43 

    3.5 HTTP44 

    3.5.1 动手尝试44 

    3.5.2 HTTP工作模式50 

    3.5.3 HTTP首部51 

    3.5.4 HTTP请求方法53 

    3.5.5 HTTP状态码53 

    3.5.6 HTTP首部字段54 

    3.5.7 HTTP的优势与问题54 

    3.6 本章小结56 

    第4章 CoAP快速入门57 

    4.1 本章主要内容57 

    4.2 Copper插件入门58 

    4.2.1 Copper插件安装58 

    4.2.2 Copper插件入门示例59 

    4.3 Arduino CoAP服务器实现61 

    4.3.1 获取示例61 

    4.3.2 示例说明62 

    4.3.3 动手测试67 

    4.3.4 着手分析70 

    4.4 本章小结73 

    第5章 CoAP核心74 

    5.1 本章主要内容74 

    5.2 CoAP首部74 

    5.2.1 版本编号Ver75 

    5.2.2 报文类型T75 

    5.2.3 标签长度指示TKL75 

    5.2.4 准则Code76 

    5.2.5 报文序号Message ID77 

    5.2.6 标签Token77 

    5.2.7 选项Options77 

    5.2.8 分隔符0xFF78 

    5.2.9 负载Payload78 

    5.3 CoAP工作模式78 

    5.3.1 逻辑分层结构79 

    5.3.2 报文类型79 

    5.3.3 请求/响应模式81 

    5.4 CoAP重传机制83 

    5.4.1 CoAP重传情况分析83 

    5.4.2 传输参数说明84 

    5.4.3 最大传输耗时(MAX_TRANSMIT_SPAN)85 

    5.4.4 最大等待时间(MAX_TRANSMIT_WAIT)86 

    5.5 CoAP方法87 

    5.5.1 GET87 

    5.5.2 POST87 

    5.5.3 PUT87 

    5.5.4 DELETE87 

    5.6 CoAP响应码87 

    5.6.1 正确响应88 

    5.6.2 客户端错误88 

    5.6.3 服务器错误89 

    5.7 CoAP选项90 

    5.7.1 选项格式90 

    5.7.2 URI相关选项91 

    5.7.3 Content-Format选项92 

    5.7.4 Accept选项92 

    5.7.5 Etag选项92 

    5.7.6 If-Match选项94 

    5.7.7 If-None-Match选项96 

    5.7.8 选项示例97 

    5.8 CoAP媒体类型99 

    5.8.1 link-format类型100 

    5.8.2 文本与二进制类型100 

    5.8.3 JSON类型101 

    5.9 本章小结102 

    第6章 CoAP扩展103 

    6.1 本章主要内容103 

    6.2 CoAP资源描述103 

    6.2.1 CoAP资源描述原理103 

    6.2.2 CoAP资源描述详解105 

    6.3 CoAP观察者模式106 

    6.3.1 观察者模式原理106 

    6.3.2 CoAP观察选项107 

    6.3.3 观察者模式示例108 

    6.4 本章小结110 

    第7章 CoAP软件实现111 

    7.1 本章主要内容111 

    7.2 libcoap112 

    7.2.1 libcoap安装112 

    7.2.2 libcoap使用详解114 

    7.2.3 libcoap入门示例117 

    7.3 aiocoap119 

    7.3.1 aiocoap安装120 

    7.3.2 aiocoap入门示例120 

    7.3.3 aiocoap块传输示例124 

    7.3.4 aiocoap树莓派GPIO示例126 

    7.4 node-coap129 

    7.4.1 Node.js安装130 

    7.4.2 node-coap入门示例132 

    7.4.3 node-coap媒体类型示例135 

    7.5 Californium137 

    7.5.1 准备工作137 

    7.5.2 Californium入门示例140 

    7.6 本章小结149 

    第8章 CoAP调试工具150 

    8.1 本章主要内容150 

    8.2 Copper调试工具150 

    8.2.1 Copper地址栏151 

    8.2.2 Copper工具栏152 

    8.2.3 Copper响应首部153 

    8.2.4 Copper负载内容154 

    8.2.5 Copper请求选项154 

    8.2.6 Copper使用示例155 

    8.3 Wireshark163 

    8.3.1 Wireshark安装164 

    8.3.2 Wireshark使用164 

    8.3.3 Wireshark示例166 

    8.4 本章小结169 

    第9章 微型物联网系统——服务器部分171 

    9.1 本章主要内容171 

    9.2 假想需求171 

    9.3 原型设计172 

    9.3.1 系统结构说明172 

    9.3.2 系统流程设计173 

    9.3.3 网页原型设计174 

    9.4 详细设计174 

    9.4.1 技术选型说明175 

    9.4.2 数据库设计176 

    9.4.3 CoAP API设计176 

    9.4.4 HTTP API设计177 

    9.5 具体实现179 

    9.5.1 数据库实现180 

    9.5.2 CoAP路由实现183 

    9.5.3 Web前端实现190 

    9.5.4 Web后端实现195 

    9.6 综合测试199 

    9.6.1 启动微型物联网系统199 

    9.6.2 增加模拟数据200 

    9.6.3 访问默认设备200 

    9.6.4 使用分页功能200 

    9.6.5 访问其他设备201 

    9.7 本章小结202 

    第10章 微型物联网系统——设备部分203 

    10.1 本章主要内容203 

    10.2 设备与网络结构说明203 

    10.2.1 设备说明203 

    10.2.2 网络结构说明205 

    10.3 Contiki入门206 

    10.3.1 Contiki初步207 

    10.3.2 native入门示例211 

    10.3.3 安装交叉工具链212 

    10.3.4 SensorTag入门示例213 

    10.4 搭建边界路由218 

    10.4.1 创建Slip-Radio218 

    10.4.2 创建Native-Border-Router219 

    10.5 增加NAT64223 

    10.5.1 NAT64简介223 

    10.5.2 安装Jool224 

    10.5.3 UDP NAT64示例225 

    10.6 CoAP Client Sensor231 

    10.6.1 加入网络并启动任务232 

    10.6.2 获取传感器数据233 

    10.6.3 传递传感器数据235 

    10.7 综合测试238 

    10.7.1 启动CoAP服务器238 

    10.7.2 启动边界路由和NAT64239 

    10.7.3 生成并下载固件239 

    10.7.4 查看运行结果239 

    10.8 本章小结242 

    参考文献243
查看详情
系列丛书 / 更多
IoT开发实战:CoAP卷
物联网程序设计:基于微软的物联网解决方案
[美]大卫·克劳斯(Dawid Borycki) 著;史鑫 译
IoT开发实战:CoAP卷
物联网技术概论
马建 编
IoT开发实战:CoAP卷
雾计算:技术、架构及应用
闫实 彭木根 译
IoT开发实战:CoAP卷
物联网实验教程
徐勇军 编
IoT开发实战:CoAP卷
物联网技术应用
刘海涛 编
IoT开发实战:CoAP卷
物联网系统开发:树莓派JavaScript编程指南
[墨西哥]鲁本·奥利瓦·拉莫斯 著;杨悦伦 译
相关图书 / 更多
IoT开发实战:CoAP卷
IoT最强教科书【完全版】——5G时代物联网技术应用解密:人工智能(AI)的基石
[日]江崎宽康 著;[日]伊本贵士 编;[日]伊本贵士、[日]末石吾朗、杨错 译
IoT开发实战:CoAP卷
IonChannels:MoleculesinAction
David J. Aidley 著
IoT开发实战:CoAP卷
Ionic项目实战/企业级卓越人才培养解决方案“十三五”规划教材
天津滨海迅腾科技集团有限公司 编
IoT开发实战:CoAP卷
Iola Leroy (Penquin Classics)
Frances Ellen Watkins Harper 著
IoT开发实战:CoAP卷
IoT变现:5G时代物联网新赛道上如何弯道超车
[日]大前研一 著
IoT开发实战:CoAP卷
IoT产品经理实践
程力
IoT开发实战:CoAP卷
IoT 2020:智能安全的物联网平台(中英文版)
国际电工委员会(IEC)
IoT开发实战:CoAP卷
Ionic学习手册
刘明骏、李阳 译
IoT开发实战:CoAP卷
Ios for Game Programmers
Allen Sherrod 著
IoT开发实战:CoAP卷
Ionic 移动开发入门与实战(第2版)
秦超 李一鸣
IoT开发实战:CoAP卷
Iowa Impressions
Larsh Bristol 著
IoT开发实战:CoAP卷
Ionic3与CodePush初探:支持跨平台与热更新的App开发技术
陈杰浩、张成、吴曦、史继筠 著
您可能感兴趣 / 更多
IoT开发实战:CoAP卷
机械识图与公差配合
徐凯 沈丽 李智慧
IoT开发实战:CoAP卷
数控车床编程与加工技术
徐凯 孟令新 王同刚
IoT开发实战:CoAP卷
密码技术与物联网安全:mbedtls开发实战
徐凯 崔红鹏
IoT开发实战:CoAP卷
《弟子规》中的成长智慧
徐凯 编
IoT开发实战:CoAP卷
九色鹿/我要读·棒小孩都爱读故事
徐凯 绘;段立欣 改写
IoT开发实战:CoAP卷
《论语》中的成长智慧
徐凯 韩良港
IoT开发实战:CoAP卷
抽象危险犯正当性问题研究:以德国法为视角
徐凯 著
IoT开发实战:CoAP卷
跨终端Web
徐凯 著
IoT开发实战:CoAP卷
国学精华读本
徐凯 主编
IoT开发实战:CoAP卷
九色鹿(好孩子.幼小衔接桥梁书5-7岁))
徐凯 绘;段立欣 改写
IoT开发实战:CoAP卷
孤寂大陆上的陌生人:帕特里克·怀特小说中的怪异性研究
徐凯 著
IoT开发实战:CoAP卷
中国历史上的重要革新与变法
徐凯 著