版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、智能家居协议实现方案V1.01协议概述智能家居协议运行在网关、手机、服务器三个地方,交互方式为两两交互,即网关手机端、网关云端、手机端云端之间的相互通信。协议整体分为三层:网络层,安全层,设备管理层。(说明:协议分层是逻辑上的分层,并不是各层次之间相互封装的关系,逻辑上包含关系从外到内为:安全层网络层管理层。分层是为了功能之间的独立)1 网络层网络层的主要功能为建立连接、注册和登录,建立连接分为:手机网关建立连接,网关服务器建立连接,,手机服务器建立连接。手机和网关在无线局域网环境和互联网环境均可连接网关,互联网环境下首先从服务器获取网关IP,然后通过IP和网关连接。网关和服务器也需要建立连接
2、,首先通过TCP/IP三次握手保证链路畅通,其次网关要在服务器端注册自己的IP地址和ID号,最后,网关要定时向服务器发送心跳包,维护自己的IP地址,保证手机能随时发现网关。2 安全层安全层完成加密和认证的功能。3 设备管理层设备管理层完成设备的控制,查询,设备增删改。协议层次如图所示:图0 协议架构图协议封装格式如图所示:图1 协议层次图2. 协议分层实现2.1网络层网络层的主要功能为建立连接和注册登录,建立连接分为:手机网关建立连接,网关服务器建立连接,手机服务器建立连接。网络层字段表:键值含义说明LayerNetwork表明是网络层数据包协议三层分别为:NetworkSecurityMan
3、ageSourceApp,Server,Gateway发送数据包的源设备App端服务器网关DestinationApp,Server,Gateway接收数据包的目的设备App端服务器网关UserIDXXXXXXXXXX用户ID唯一标示GetawayIDXXXXXXXXXX网关ID唯一标示TypeHeartBeatDeclareLoginLoginACKRegisterRegisterACKQueryQueryResultCheckStatusError数据包类型心跳宣告登录登录确认注册注册确认查询网关IP返回结果查看状态错误返回Time年-月-日-时-分-秒时间如2014-11-30T18:3
4、0:00MacroStatusXXX,XXX宏观状态用两个值表示Status1XX2XX3XX 4XX 5XX 结果状态1XX信息收到,继续处理,2XX成功类状态信息3XX 客户端错误4XX 网关错误5XX 服务器端错误Value值可以为数值,也可以为字符串2.2安全层2.2.1 方案一加入可选的安全机制,在HTTP请求头部添加加密选项参数,安全级别分为以下几种:1、不设防级,系统开发初期,先把系统调通,不加密,全部内容用明文。2、初级,假设攻击者能够拿到自己的账号和密码,模拟各种操作,获取其中的通信报文,并分析出每个字段的含义。但是攻击者不能拿到其它用户的账号和密码,也不能监听到其它用户的通
5、信过程。这种情况下,用会话ID进行用户认证,保证每个用户只能按系统给予的权限访问自己的家居设备。3、中级,假设攻击者在初级的能力上,还能够监听到其它用户的临时会话ID,但是不能反编译客户端,不能拿到集成在客户端中的加密方法和秘钥。这种情况下,用APP中保存的唯一的秘钥,动态加密会话内容。4、高级,假设攻击者无法接收客户端手机短信,则用手机短信通道动态下发临时密码,对会话ID就行动态加密。HTTP头部不填写安全参数即表示不设防,填写某种我们约定的名称,就表示对应到某种加密方式。系统稳定以后,云端和网关端拒绝不设防通道即可2.2.2 方案二采用认证方式,发送认证数据包。安全层字段表:键值含义备注L
6、ayerSecurity表明是安全层数据包SourceApp,Server,Gateway发送数据包的源设备App端服务器网关DestinationApp,Server,Gateway接收数据包的目的设备App端服务器网关TypeAuthentication,AuthenticationACKError数据包类型认证认证确认错误返回Time年月日时分秒时间Content不同数据包内容不同数据包内容Status1XX2XX3XX结果状态1XX信息收到,继续处理,2XX成功3XX 验证失败2.3设备管理层设备管理层主要负责手机网关之间设备信息的交互,主要有设备请求,设备响应,设备控制。设备管理层数
7、据格式基本相同,控制包最终都是向网关发送。注:设备管理层最大限度的保留原有格式和操作,只是将登录和心跳包移到了网络层。设备管理层字段表:键值含义备注LayerManage表明是管理层数据包SourceApp,Server,Gateway发送数据包的源设备可以为手机,服务器,网关DestinationApp,Server,Gateway接收数据包的目的设备可以为手机,服务器,网关TypeQueryQueryResultControlControlResultUpdateAddDeleteError数据包类型查询请求,查询结果,控制请求,控制结果,设备状态更新设备添加设备删除错误返回ObjectG
8、atewayAd-hocSensor请求对象网关,无线传感器网络,传感器/万能遥控器NodeIDXXXX无线传感器节点ID在一个无线传感器网络中,每个节点的ID是唯一的NodeCoordinatorRouterterminal无线传感器节点类型协调器,路由节点,终端节点Category:SecurityMonitorController设备类型家居安防,家居环境监测,家居环境控制SensorTypeSoundLightAlarmSmokeSensorHumiditySensor传感器类型声光报警器烟雾传感器湿度传感器Status1XX2XX3XX 4XX 5XX 6XX 请求执行结果1XX信息
9、收到,继续处理,2XX成功3XX 客户端错误4XX 网关错误5XX 服务器错误6XX 智能家居设备错误Time年-月-日-时-分-秒时间数据包发送的时间Value一个数组值需要传递的参数值FuncID功能ID要开启的设备功能 3 协议实现的功能3.1 建立连接与登录3.1.1 手机与网关建立连接手机与网关通信前首先要判断自己是什么状态,如果只打开了移动网络,则直接与服务器通信;如果打开了WIFI,则先判断自己是否在智能网关无限覆盖区域内如果不是,则通过WIFI连接服务器。手机与网关建立连接的状态分为三种:网关局域网状态,互联网状态,连接失败状态,手机首先会优先判断是否在网关局域网环境,其次是判
10、断互联网环境,如果都不满足,则连接失败。手机判断是否在网关局域网的环境方式是:其原理是通过一个共同约定的广播地址作为互相通信的接口,当设备刚加入网络时向该广播地址发送设备宣告消息,宣告本设备的基本信息(主要是IP地址信息),满足要求后会给出单播响应。当手机端收到该单播响后,通过网关响应中指定的IP地址和端口与网关进行通信。手机建立连接过程如图:Wifi打开是向广播地址发送宣告移动网络打开是等待响应连接失败向服务器发送登录请求收到?是向网关发送登录请求向服务器发送登录请求图 2 手机建立连接过程手机与网关通信时(局域网),首先要建立连接,然后对双方的身份进行确认,确认成功后,双方才能进行通信。手
11、机通过指定IP和端口与网关建立连接。建立连接过程如图所示:网关手机向广播地址发送宣告单播响应登录信息登录确认请求请求响应图3 手机与网关交互过程网关建立连接流程:等待手机端接入处理请求发送处理结果接受?是接收客户端请求图4 智能网关服务流程手机端建立连接流程发送身份信息等待确认收到?是发送请求等待响应收到?是处理响应图5 手机端建立连接流程2.1.2 网关与服务器建立连接网关通过指定IP和端口同服务器建立连接,网关接入互联网时,会向服务器发送自己的ID号和IP地址,以及身份认证信息,完成在云端的注册。网关云端身份信息身份确认注册信息注册确认图6 网关云端建立连接过程服务器等待网关注册流程:等待
12、网关接入接受?是接收注册信息处理注册信息图7 服务器端注册流程网关在服务器注册流程:发送身份信息等待确认信息收到?是发送注册信息等待响应图8 网关注册流程2.1.3服务器与手机建立连接手机与服务器建立连接,手机端登录云端属于APP端内容,协议部分暂时不考虑。用户验证合法后就可以登录并进入网关控制设备。图10 手机端注册登录过程3.2 用户注册用户在网关注册时,发送注册信息包,包括用户名,密码。3.3 设备添加、删除与更换1.设备添加需要添加设备先使用网关发现设备,发现设备后通过手机端将设备信息添加到网关数据库。2. 设备删除发送设备删除数据包,将设备从网关数据库删除。3. 设备更换如果有设备需
13、要更换,先使用设备删除数据包,将设备从网关数据库删除,然后更换新设备,更换后发送设备添加数据包,实现设备更换3.4 设备查询/控制设备查询/控制遵循网关控制设备的控制方式,手机端构造数据包,网关进行解析。3.5 心跳包网关不仅要要与服务器建立连接,同时还要定时向服务器发送心跳包,维护服务器端的IP地址表和网关状态,确保服务器可以随时找到网关。心跳包时间间隔为5秒。心跳包交互过程如图:网关云端心跳包超时未收到心跳包,则断开连接,更改网关状态图9 心跳包通信过程3.7 查看状态查看状态主要目的为查看网关状态,网关状态可以为在线和离线两种状态,在线状态可以远程控制家中设备,离线状态则不能。查看状态在
14、网络层实现。3.8 错误返回错误返回状态主要有六种:1XX信息响应类,表示接收到请求并且继续处理。2XX处理成功响应类,表示动作被成功接收、理解和接受。3XX 客户端错误,客户请求包含语法错误或者是不能正确执4XX 网关错误,网关不能正确执行一个正确的请求。5XX 服务端错误,服务器不能正确执行一个正确的请求。6XX 智能家居设备错误,智能家居设备不能正确执行一个正确的请求。3.9设备状态更新当智能设备状态有更新时(如温度变化),网关收到传感器信息,保存在数据库,同时向手机端发送更新信息包3.10宏观控制4 数据包示例1 手机在网关登录1.1 手机发送宣告信息Request: “Layer ”
15、:”Network”,“Source”:”App”,“Destination”:”Gateway”,“Type”:Declare,“Time”:2014-11-30T18:30:00,Value: 1.2 网关给出响应Response: “Layer ”:”Network”,“Source”:”Gateway”,“Destination”:”App”,“Type”:”Declare”,“Time”:2014-11-30T18:30:10,Value: 1.3 手机发送登录信息Request: “Layer ”:”Network”,“Source”:”
16、App”,“Destination”:”Gateway”,“Type”:”Login”,“Time”:2014-11-30T18:30:20,Value: “user1”,”1.4 网关给出响应Response: “Layer ”:”Network”,“Source”:”Gateway”,“Destination”:”App”,“Type”:”LoginACK”,(登录失败为”Error”)“Time”:2014-11-30T18:30:30,Status: 2002 设备状态更新Response: “Layer ”:”Manage”,“Source”:”Gateway”,“Destinati
17、on”:”Server”,“Object”:”Ad-hoc”,“Type”:”Update”,“Category”:”Monitor”,“SensorType”:”Temperature sensor”,“NodeID”:1234“Time”:2014-11-30T18:30:00,Value: 31.13 设备控制对普通灯泡进行控制,有开和关两种控制请求。Value字段取值的含义如下:Value操作open开close关1 手机控制开灯Response: “Layer ”:”Manage”,“Source”:”App”,“Destination”:”Gateway”,“UserID”:”“Object”:”Sensor”,“Type”:”Control”,“Category”:”Controller”,“SensorType”:”Bulb”,“NodeID”:1235“Time”:2014-11-30T18:30:00,Content: Value:“open”2 开灯结果Response:Layer ”:”Manage”,“Source”:”Gateway”,“Destination”:”App”,“GetwayID”:”“Object”:”Sensor”,“Type”:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协同办公赋能高速公路交通紧急救援设施优化选址的创新实践与策略研究
- 协同办公赋能粒子冲击钻井:流体控制装置设计的创新与实践
- 协同办公赋能云南赛格水电站边坡稳定分析与加固研究:技术融合与实践创新
- 协同办公视角下高精度电极式海水电导盐度计的创新研制与应用探索
- 医疗技术应用效果评估方案
- 创伤性脑损伤患者脑水肿动态管控联合方案
- 冠心病支架术后抗栓管理方案
- 企业战略管理lu第六章企业战略管理增补
- 先天性心脏病术后患儿心理疏导方案
- 儿童哮喘雾化吸入治疗疗效提升方案
- 科学注塑工艺培训课件
- 机加工普及培训
- 静疗试题库及答案
- TGXAS-东盟进口榴莲鲜果编制说明
- 《土木工程专业英语》课件
- 穴位按摩法操作评分标准
- (高清版)WST 227-2024 临床检验项目标准操作程序编写要求
- 个人简历模板(空白简历表格)
- 《国际商事仲裁》课件
- 内墙铝板施工方案
- 三级机动车驾驶教练员职业资格160题库资料大全
评论
0/150
提交评论