农场异构设备物联网数据接入控制机制研究

2014-07-12 12:28黄军友
关键词:集中式封锁异构

黄军友

(四川信息职业技术学院 机电工程系,四川 广元 628000)

农场异构设备物联网数据接入控制机制研究

黄军友

(四川信息职业技术学院 机电工程系,四川 广元 628000)

研究并比较了异构数据问题的解决方案,提出了农场异构设备物联网混合分布式解决方案. 建立了农场异构设备物联网模型,设置了农场应用场景,优化并改进了封锁和集中式FOCC控制机制,解决了对设备并发管理和控制时所带来的一致性问题. 实验结果表明,封锁和集中式FOCC机制是有效的,但在一定情况下会增加系统时间开销.

物联网;异构设备;控制机制;封锁;集中式FOCC

物联网是我国战略产业之一,已成为学术和产业界的重点发展方向[1]. 物联网应用将和互联网一样成为人们生活中的重要部分. 在这些应用背后,物联网大规模异构设备的管理与控制、异构数据接入是关键问题[2].

农业物联网运用各类传感设备,检测环境中的温度、湿度、pH值等物理参数,实时显示或作为自动控制的参变量参与到自动控制中,实现异地监测控制,保证农作物有一个良好的生长环境[3]. 农场物联网场景下通过各种传感设备获取的数据具有高度异构性. 目前,异构数据问题解决方案分为无线传感器网络(WSN)、流数据管理系统(DSMS)和混合式方案等:3种方案均具可扩展性;WSN解决方案严格假设传感器是同构的(特别是在大规模系统中). DSMS方案中数据源必须严格依照所指定的数据模式将数据发送到服务器. 也不处理数据流异构性问题. 混合式系统考虑传感器的高异构性,流行方案是采用适配器. 主要思想是增加一个适配层来为系统提供一个统一的接口,因此异构性方面混合式方案最优;WSN方案使用相对复杂的算法使传感器相互协作以评价查询,给资源受限的传感器节点带来了较大的开销. DSMS相比传感器节点来说是高性能的计算单元,控制着所有数据,可以评价复杂的查询. 混合式方案使用相对高性能单元处理那些需要更多计算能力和存储空间的运算. 这些单元也可以将数据流集中起来处理,因此在查询复杂性方面混合式方案最优.

农场异构设备物联网中传感设备的资源有限,不利于部署复杂的协议以保证可靠数据处理. 文献[5]中讨论了传感系统中数据管理的ACID属性并针对隔离性提出了一种支持连续查询管理事务和属性管理事务的并发控制机制. 文献[6]中分析了传统的加锁、时间戳排序和前向乐观并发控制(FOCC,Forward Oriented Optimistic Concurrency Control)3种并发控制方法,并考虑在传感系统中的可用性,对这些方法做了比较,此外还在传感器网络模拟器平台模拟比较了这3种方法. 由于现实的传感系统很难做到时间同步,因此加锁的并发控制方法较优,且不存在无效操作,有利于节省能源.

目前,国内外在农场异构设备物联网数据接入方面普遍采用SStreaMWare. SStreaMWare是一个用于处理异构传感流数据的中间件,基于分布式和面向服务架构,其主要用于整合和聚集来自不同厂商,提供商或组织的传感器数据. SStreaMWare解决了传感器农场管理问题:它不仅提供只读的查询操作,还支持系统配置,软件安装和性能监控等管理操作,这些管理操作可以改变整个系统的配置,且有可能影响正在进行的连续查询的结果. 另外,它还提供了一种并发控制机制,以管理由并发操作可能带来的冲突.

Chukwa 是一个开源的、用于监控大型分布式系统的数据采集与分析系统,属于Yahoo开发的Hadoop系列产品[7]。本文基于Chukwa构建农场异构物联网模型.采用混合式解决方案,利用适配器(Adaptor)模型解决异构协议的适配问题和传感网络的动态接入,适配器采用SstreaMWare中间件,同时采用封锁机制和FOCC机制.

1 农场异构物联网模型

农场异构物联网模型如图1. SA:感知区域;AA:接入区域;SSA:传感系统接入代理;Adaptor:传感系统接入适配器;RS:数据汇集服务器;GS:全局服务器;SSAP:传感系统接入协议;SICP:传感信息汇集协议;GMP:全局管理协议. 系统模型利用BSS自身的资源,在AA层次完成部分数据处理工作,同时结合DSMS的解决思想,利用高性能计算单元在SSA和RS层次进行复杂的海量数据处理工作. SSA和RS是利用集群技术构建的高性能计算云单元,其计算能力和资源根据具体需求进行动态的伸缩,并且对所服务的SA支持本地负载均衡. 如果某一个SSA或RS单元进入满负荷状态,额外的BSS请求会被漫游到当地相对空闲的计算单元. GS是整个模型的中心,负责全部SSA和RS的注册、更新等管理工作,同时在全局范围内对BSS进行资源优化. SSA和RS都采用面向服务的设计,SSA为BSS提供数据接入服务,RS为SSA提供数据汇集服务,为从感知层到用户应用提供数据查询服务.

图1 异构物联网模型

2 农场应用场景设计

针对模型设置一农场应用场景,如图2. 地区A是一个农场办公大楼,该楼部署着门禁系统,电子锁和摄像头组成的人员出入管理系统. 地区B是一个农场,大棚里部署着用于检测植物生长环境指标的无线传感器网络,如土壤温湿度,空气温湿度,太阳辐射等传感器和加湿器、浇水器等控制设备. 地区A和B分别通过传感系统接入代理(Sensing System Agent,SSA)SSA1和SSA2并入物联网. 根据每个地区的不同传感系统,SSA会分派不同的传感系统接入适配器(Adapter)负责具体传感系统的数据接入. 如地区A中分别有门禁系统和视频监控2个传感系统,则SSA1中运行2个Adapter负责地区A中所有传感系统的接入工作. SSA1和SSA2的数据会经过数据汇集服务器RS(Rendezvous Service,RS)汇集后接入到物联网.

图2 农场异构设备管理与控制场景

经过物联网异构数据接入系统,整个系统的数据被分布存储在架构的不同层次[8]. 这些数据可以被分成传感数据和元数据,传感数据是传感系统的测量值,元数据是用来描述这些测量值的所有数据. 如对于地区B中的无线传感器网络WSN,某个土壤温度传感器在某一时刻测量的温度值和时间戳是传感数据,而该传感器的地点、采样间隔等数据是这个传感数据的元数据. 传感数据和元数据一起才能表达所需要的信息.

设备管理和控制主要涉及元数据及一些控制器[9]. 物联网异构数据接入系统初始化时,会将物联网感知层中所有传感系统中的所有设备向GMS注册,物联网异构数据接入系统本身的SSA和RS节点也会向GMS注册. GMS维护全局系统的数据和元数据目录信息,用户通过物联网接口更改某个传感器节点采用间隔或者打开某个控制设备时的工作流程(GMS没有部署封锁机制)如下:

1)用户向GMS申请管理或控制设备资源.

2)GMS返回用户管理或控制设备目标通信地址,该通信地址是可变的有限寿命的临时地址.

3)用户将控制命令封装成下行数据包,发送到GMS返回的通信地址. 根据所管理或控制的对象,目标通信地址可以是RS、SSA或者Adaptor的下行通信地址.

4)目标通信地址收到含有控制命令的数据包后进行解析,如果是地址所在层次的命令则直接执行,如RS需要更改自己的别名或者是SSA2需要重新启动自己的服务则直接执行. 如果是需要转发的控制命令,如图1中用户需要打开地区B的浇水器,则SSA2中负责地区B控制网络的Adaptor会收到数据包,Adaptor则需要将控制命令解析并转换为控制网络所支持命令协议格式,发送给地区B的基站节点.

GMS集群中的Adaptor(图2)是农场异构设备管理与控制过程中兼顾多种(有线、无线)通信协议的关键. Adaptor是农场物联网传感系统接入代理中的组件,受传感系统接入代理管理,负责传感系统接入时的协议匹配,数据转换和传感系统的管理工作. 图中农场BSS所采用的通信协议没有统一的标准协议,Adaptor需要为后续处理隐藏该异构性. BSS在接入请求阶段提供所使用的通信协议的识别号,Adaptor根据该识别号使用匹配的通信协议,比如HTTP,SSH等,与BSS建立数据连接后获取传感数据. 在这个阶段,传感数据所包含的信息并不会被解析出来,而仅仅提供传感数据元组. 如对农场中的温度传感器数据元组sensors(id,location,temperature,timestamp),会被放入称之为“slice”的数据容器的data中:slices(id,location,…,data,timestamp). 其中的id、location分别表示Adaptor的标识符和所在地点. 这个过程被称为“去异构”. 经过去异构,农场BSS数据的异构性对图1所建立的模型来说是透明的.

3 农场异构数据接入系统控制机制

3.1 封锁机制

物联网下用户和设备都是大规模的,必然要考虑管理和控制操作的并发控制问题[10]. 解决数据库并发控制问题的一个重要技术手段是封锁机制. 封锁就是事务在对某个数据对象操作之前,先向系统发出请求,对其加锁. 加锁后事务就对该数据对象有了一定的控制,在事务释放它的锁之前,其他的事务不能更新此数据对象[11]. 设立封锁机制主要是为了对并发操作进行控制,对干扰进行封锁,保证数据的一致性和准确性. 物联网异构数据接入系统可以采用封锁机制保证系统的并发控制问题. 由于系统架构中GMS管理中心维护着系统全局的资源目录,因而可在GMS位置部署封锁机制. 具有封锁机制的情况下,上述用户管理或控制操作流程如下:

1)用户向GMS申请管理或控制设备资源;

2)GMS查看该资源是否被锁;

3)如果没有上锁,则返回用户该设备的目标通信地址,用户确认后在自己资源目录中给该设备上锁;

4)执行GMS没有部署封锁机制情况下的步骤3);

5)执行GMS没有部署封锁机制情况下的步骤4);

6)命令执行完毕后,用户向GMS为所管理或控制设备申请解锁;

7)GMS解锁后,向用户发送确认,一次管理或控制操作完成.

3.2 集中式FOCC机制

文献[12]中提到传感系统中更改系统运行配置的管理操作可能会导致与其并发的事务在读取数据上不一致的问题. 如图2中地区B中的温度传感器的采集单位被管理命令从摄氏度改为华氏度,碰巧更改前有一用户正在以摄氏度统计地区B的平均温度. 更改操作必然影响用户查询结果. 必须有一种考虑到传感器特殊性的并发控制机制.

考虑到传感网络中的设备通常都是资源受限型设备,不方便部署复杂的协议,考虑在系统SNA(SNA是IBM公司的大型机和中型机的主要联网协议[13])的位置部署基于验证的并发控制机制. 该机制借鉴了FOCC,并在协议第二层集中处理,称之为集中式FOCC机制. FOCC确保只有真正的冲突才会导致管理中断,集中式FOCC继承了该特性,在物联网环境下,不同的传感系统可以保持自治特性. FOCC的算法如下:

VALID: = TRUE;

FOR Ti= Tact1TO TatcnDO

IF WS(Tj) ∩ RS(Ti) ≠ Φ THEN

VALID: = FALSE

IF VALID THEN COMMIT

ELSE RESOLVE CONFLICT;

其中,Ti是待验证的管理操作,Tj是验证后的管理操作,SSA为其管辖的每一个传感器节点都保存有一个访问列表,记录当前正在访问该传感器的操作,包含WS(T)和RS(T),分别是对该节点进行写操作的集合和读操作的集合.

对集中式FOCC作如下修改:SNA中的Adaptor保存有接入区域中传感器节点上的每一个设备的表,在该表中增加该设备的读写属性(表示该设备是只读还是可读可写),增加访问者属性(表示当前访问该设备的用户的相关信息),其具体信息为V(Ts,L,GIDv,O),其中Ts表示开始访问的时间戳,L表示申请访问的时间长度,GIDv表示访问者的全局标识符,O表示申请访问的权限.此外,SNA持有一个冲突解决方案库S,该库保存解决每种冲突类型的方案,可以根据情况增加或者修改S中的方案.集中式FOCC的算法表示为:

VALID:=TRUE;

FOR Vi=Vact1TOVatcnDO

IF WS(Vj)∩RS(Vi)≠ΦTHEN

VALID:=FALSE

IF VALID THEN COMMIT

ELSE RESOLVE CONFLICT via S;

监测到冲突后,SSA会针对冲突的具体情况做相应的处理,如图1地区A中用户甲正在查询地区B某个温度传感器未来24小时内的平均温度,在这24小时内,地区B中的管理员乙将该温度传感器采集的数据单位修改为华氏度.此时存在冲突,在集中FOCC的帮助下,乙的操作依然可以成功执行,不过SSA会为甲的查询事务加载冲突解决方案,自动将甲查询事务中从该温度传感器中获得的数值从华氏度转换为摄氏度,保证甲的操作也能成功完成.

4 实验与结果

4.1 封锁有效性实验

为验证封锁机制的有效性,分别在关闭和启用封锁机制的情况下使用多个线程对传感系统中同一个设备发送控制命令,并记录命令结果和设备状态.实验环境采用Crossbow公司的IRIS平台构建的无线传感器网络,5个节点,控制其中任意一个节点上的红色LED的打开和关闭;一台PC作为SSA服务器,一台PC作为RS服务器.为便于测试,在RS服务器上使用多线程程序模拟两个用户同时发送控制命令,实验结果如表1.

表1 封锁有效性实验结果(被控设备:任选的3号节点上的红色LED灯)

实验结果表明:没有封锁机制的情况下,两个并发控制命令都可以成功执行并得到响应,但结合设备的实际状态一般会出现有一个用户响应不一致的情况;使用封锁机制后,同一时间只能有一个用户可以获得控制权限,保证了一致性,证明了封锁机制是有效的.

4.2 集中式FOCC有效性实验

为验证集中式FOCC机制的有效性,在业务端(如图2)对1号节点设定一个查询未来30 min温度平均值的连续查询事务,采样间隔为5 min. 在30 min内任意时刻改变该节点的采样属性,在开启和关闭FOCC机制的情况下分别查看其结果的准确性,开启集中式FOCC机制后是否可以检测到冲突. 实验结果如表2.

表2 集中式FOCC有效性实验结果

与其他实时乐观并发控制协议类似,集中式FOCC机制也是基于向前确认方案,具有动态调整的实时乐观并发控制协议,其基本思想是假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各自影响的那部分数据. 在提交数据更新之前,每个事务会先检查在该事务读取数据后是否有其他事务又修改了该数据. 如其他事务有更新,正在提交的事务会进行回滚[14].表2中,第1、4次实验,未出现属性更改,无论集中式FOCC机制采用与否,查询结果均正确.第2次实验未采用集中式FOCC,由于出现了属性更改(第4次,第5次采样数据属性变动). 属性更改与连续查询之间发生冲突,造成连续查询结果错误.第3次实验仍说明了此结论.第5次实验由于在SSA中部署集中式FOCC,第5次采样数据即使出现了属性更改,集中式FOCC能够有效检测出冲突,采样事务进行回滚,保证了结果的正确性.第6次实验同样说明了采用集中式FOCC的有效性.

4.3 时间开销实验

为了解增加封锁和集中式FOCC机制后,给系统所带来的时间延迟,对比增加机制前后10次抽样命令执行所需时间,结果如图3.

实验结果表明:使用封锁机制后,由于额外增加了读取数据和确认的步骤,对系统时间开销有明显影响;在没有冲突的情况下,集中式FOCC几乎没有增加时间开销,有冲突的情况下会增加一定系统时间开销. FOCC机制一般假设冲突不经常发生,实验结果与此一致.

图3 时间开销实验结果

5 结语

在物联网数据管理问题上,目前的主要解决方案是通过适配器模式解决异构问题;采用混合式系统结构,将数据采集、汇集、融合、查询、评价等操作分布到合适的层次,由适合的对象处理. 在设备管理问题上,由于传感设备通常为资源受限型,目前不适合在设备上部署复杂的协议,如果采用混合式系统结构,可以考虑将管理操作的不同计算任务像数据管理的思路一样,分布到适合的层次,比如代理节点或中心节点. 通过实验结果与文献[6-7]所采用技术对比,在控制机制上,真实的传感系统很难做到时间同步,真实环境中,加锁的并发控制方法优于时间戳排序和FOCC验证的方法,并且加锁的并发控制方法中不存在无效的操作,有利于节省能源. 通过封锁和集中式FOCC混合分布式并发控制机制,解决对设备并发管理和控制时所带来的一致性问题,对异构设备物联网控制机制和物联网接入问题上有一定参考意义.

[1] 朱洪波,杨龙祥,于全. 物联网的技术思想与应用策略研究[J]. 通信学报, 2010,31(11): 32-34.

[2] 陈庆奎,吕晓明,郝聚涛,等. 一个物联网异构数据接入系统ChukwaX [J]. 计算机工程, 2012, 38(17): 12-15.

[3] 陈一飞. 农业复杂大系统的智能控制与农业物联网关系探讨[J]. 农业网络信息,2012(12): 8-12.

[4] 张尼,姚海鹏. 物联网嵌入式智能卡远程管理技术[J]. 电信工程技术与标准化,2012(06): 16-20.

[5] GURGEN L, RONCANCIO C, LABBE C, et al. Transactional issues in sensor data management[C]// Proceedings of the 3rd Workshop on Data Management for Sensor Networks: In Conjunction with VLDB 2006. New York, ACM, 2006: 27-32.

[6] REINKE C, HOELLER N, WERNER S, et al. Analysis and comparison of concurrency control protocols for wireless sensor networks[C]//Distributed Computing in Sensor Systems and Workshops (DCOSS), 2011 International Conference on. Barcelona, IEEE, 2011: 1-6.

[7] BOULON J, KONWINSKI A, QI Runping, et al. Chukwa, a large-scale monitoring system[C]//Fifth International Conference on Computability and Complexity in Aanlysis, Proceedings of CCA. Hagen, Cloud Computing and its Applications, 2008(8): 1-5.

[8] 于忠臣. 物联网异构数据存储算法研究[D]. 沈阳:辽宁大学,2012.

[9] 张金成. 基于RFID的物联网数据中心资产管理系统的开发[D].上海:复旦大学,2012.

[10] 陈秋月,张剑妹. 关系数据库的并发控制与实现途径[J].长治学院学报,2012,29(5):32-35.

[11] 车乌江. 分布式数据库的数据加锁与一致性研究[D].湘潭:湖南科技大学,2011.

[12] 毕学军,杨朝红. 无线传感器网络的数据存储和索引技术[J]. 计算机工程,2009, 35(5):101-102.

[13] 杨娜娜,王杨,陈付龙,等. 基于移动agent的云计算身份认证机制研究[J].计算机应用研究,2012, 29(10):3812-3814.

[14] 屈正庚. 改进的并发控制策略在CSCW中的应用[J]. 合肥工业大学学报:自然科学版,2013, 36(5):576-579.

[责任编辑:韦 韬]

Research on the Data Access Control Mechanism in IOT for Heterogeneous Device Farms

HUANG Jun-you
(Department of Mechanical and Electrical Engineering, Sichuan Information Technology College, Guangyuan 628000, China)

This paper studies and compares the solutions to heterogeneous data problems, puts forward hybrid distributed solutions to farms’ heterogeneous device networking, sets up a farm heterogeneous devices networking model, structures a farm application scenario, improves and optimizes the closed and centralized FOCC control mechanisms, and solves the consistency problem caused by concurrent management and control of equipment. Experimental results show that the closed and centralized FOCC system is effective, but in some cases it will increase the time overhead of the system.

Internet of things; heterogeneous devices; control mechanisms; blockade; centralized FOCC

TP274+.2

A

1006-7302(2014)01-0028-08

2013-09-02

黄军友(1977—),男,四川威远人,副教授,硕士,研究方向为电子与通信.

猜你喜欢
集中式封锁异构
试论同课异构之“同”与“异”
《在被封锁的武汉,他运送的还有希望》新闻谈
光伏:分布式新增装机规模首次超越集中式
异构醇醚在超浓缩洗衣液中的应用探索
overlay SDN实现异构兼容的关键技术
LTE异构网技术与组网研究
接触网隔离开关集中式控制方案研究
光伏集中式逆变器与组串式逆变器
浅析组串式和集中式逆变器安全可靠性
二战以来三次岛屿封锁作战的战略决策及启示