移动终端的泛在接入与信息配送方法

2015-12-25 07:50朱凌峰王晓旭赵健马迪扬
软件 2015年8期
关键词:移动终端

朱凌峰++王晓旭++赵健++马迪扬++张宏

摘要:泛在网络是广泛存在的网络,它以无所不在、无所不包、无所不能为基本特征,实现在任何时间,任何人以及人和物之间都能顺畅地通信。末端物流是指送达给消费者的物流,是以满足配送环节的终端(客户)为直接目的的物流活动。本文基于泛在网络环境,针对末端物流场景,有效地为用户节点提供高效、自治且可靠的泛在接入与信息配送,给出了一种基于泛在网络环境的泛在接入与信息配送系统模型。该模型在现有基于内容的泛在接入与信息配送系统的基础上,设计了新的模块结构,并引入了基于空间、时间和其他约束条件的事件定义,描述泛在网络泛在接入与信息配送系统中发送方及订阅方的工作流程。

关键词:移动终端;泛在接入;信息配送

中图分类号:TP391.41

文献标识码:A

DOI: 10.3969/j.issn.1003-6970.2015.08.001

0 引言

国家经济在不断的快速发展,新兴的商业模式如在线订餐等对货品的传递也提出了新的要求,传统的物流配送方式已不能满足市场需求。与大地理跨度的物流相比,末端物流的地点数量庞大、线路情况复杂、配送时间受限。传统的配送方式多为企业派专人上门配送或通知用户到指定地点取货,但受限于人力成本配送员数量远赶不上需求,用户自取又使得用户体验变差。这阻碍了社会经济的发展和人民对舒适安逸生活的追求。面对这些问题,各界在尝试各种解决方案:增加配送人员、使用无人机配送、在便利店设立自提点……但是这些方案不可避免地会增加可观的配送成本,且不够灵活,无法同时满足用户和企业的需求,更无法解决末端物流的配送难题。尤其在现有的物流系统中,所有的货品都需要经过层层的中转站,即便是同城甚至同街区的短距离配送,也需要一天甚至更多的时间,这已远远跟不上时代的发展的速度。而与此同时,大量的行人、私家车辆在各条道路上往返,其运力并未得到充分利用。因此如果采用一定的路径规划方案,实现对这些空闲运力的有效利用,则可以在很大程度上解决末端物流的配送难题。而与传统的末端物流系统相比,基于行人的物流配送系统具有成本低、覆盖广、响应迅速、配送快捷的特点,可以降低企业成本,提高顾客满意度,具有十分重要的意义。

泛在网络具有多终端性、异构性、松耦合性等特征,而泛在接人与信息配送系统可以在时间、空间以及同步上完全解耦。因此完全可以将泛在接人与信息配送系统使用到末端物流的泛在网络环境中。由于不同用户对相同节点会有不同的感兴趣的订阅信息,系统需满足对这些兴趣节点的请求具有足够的可表达性,而基于内容的泛在接人与信息配送系统恰恰可以满足这些特征。因此,本文提出的泛在网络环境的泛在接人与信息配送系统采用了基于内容的泛在接人与信息配送系统模型,并在该模型的基础上进行了扩展。

1 泛在接入与信息配送模型

本文设计的基于内容的泛在接人与信息配送系统模型主要实现形式有两种:基于Map的系统模型和基于XML的系统模型。

(1)基于Map的泛在接人与信息配送系统模型

基于Map的泛在接人与信息配送系统中,事件的内容是的结合,attribute是订阅的属性,value为订阅的值,多个组成的集合即为一个Map。该泛在接人与信息配送系统中,必须对各个原子条件进行“and”与操作以获得用户的整体订阅信息,每个原子条件均只涉及一个attribute属性。各Map项中的属性可分为两种:一种是描述某一实体的特性或状态;另一种是描述两个实体之间的某种关系。

若规定每个事件Map对应唯一的attribute属性,且各个订阅条件均将该条件指定为各自对应属性的value集,这称之为基于主题的泛在接人与信息配送系统,该属性attribute的每一个取值即为一个theme主题。可以认为,基于主题的泛在接人与信息配送系统是基于Map的泛在接人与信息配送系统的一种特例。

泛在接人与信息配送系统是一种特殊的基于Map的泛在接人与信息配送系统,它定义为每个事件Map中均只对应一个attribute,且系统的订阅条件均定义了attribute的值。

(2)基于XML的泛在接人与信息配送系统模型

在基于XML的泛在接人与信息配送系统中,主要将事件定义为一个XML文档。此外,XML泛在接人与信息配送系统在Map的基础上,为事件增加了一个数据区,用于存放系统不能理解的相关数据,它比基于Map的泛在接人与信息配送系统具有更为优越的表现性能。

基于XML的泛在接人与信息配送系统,可以表现为如下述图1表示的形式,亦可表现为其他规定的XML表示形式。

XML具有较强的表达能力,但不同的用户可能存有不同的XML Schema文档。若系统订阅者并不知道发布事件XML文档所遵从的XML文档规范,将不能正确的匹配事件。因此,为确保统一,基于XML的泛在接人与信息配送系统中,所有的事件和订阅都必须遵守系统预先制定的XML Schema文档。

若规定系统各事件的XML文档只有一个元素节点,且该节点具有若干的属性,则该事件将演变为一个基于Map的泛在接人与信息配送系统。因此,我们可以认为基于Map的泛在接人与信息配送系统是一种特殊的基于XML的泛在接人与信息配送系统。

2 泛在接入与信息配送系统结构

移动节点则指那些随着时间或其他情况的变化,改变其位置的相关人和设备等,如iPad、参与系统的人等。由于人会随时走动,具有较大的移动性,可将泛在网络环境的重要参与者一一人,作为一个移动节点来处理。基于此,可以将含有平台服务器、发布者(固定节点及移动节点)、移动代理和订阅者的泛在网络环境的泛在接人与信息配送系统的简图表现为如图2所示。

泛在网络泛在接人与信息配送结构中,平台服务器(Platform Server)负责泛在接人与信息配送系统中Internet网络节点和移动代理间的消息传递(如订阅信息和发布信息);移动代理(Mobile Broker)则负责平台服务器和与其相连的其他非Internet网络的泛在节点(如用户)进行消息传递。通常情况下,可以采用移动智能终端作为移动代理,收集不同的人或相关设备的数据]。一方面,移动智能终端可以通过短信息、蓝牙或IEEE 802.15.4同其他非Internet网络的泛在节点进行连接;另一方面,它采用3G或Wi-Fi网络连接上Internet网络节点。

3 泛在接入与信息配送系统平台设计

在泛在接人与信息配送系统中,系统订阅者是指订阅兴趣节点信息的Internet网络用户节点或移动智能终端用户;发布者则是指发布订阅数据信息的固定节点或移动节点等泛在节点。为了实现与基于内容的泛在接人与信息配送系统的统一,泛在网络环境的泛在接人与信息配送系统中,将连接Internet网络和移动代理的平台服务器称为事件代理;移动代理则是在基于内容的泛在接人与信息配送系统上的延伸代理,负责泛在节点(固定节点和移动节点)与事件代理之间进行订阅信息的交互,事件代理和移动代理统称为代理节点。泛在网络环境的泛在接人与信息配送系统框架如图3所示,包括用户接口模块、消息注册中心模块、消息订阅模块3个部分。

用户接口模块是连接泛在网络服务器和应用客户端的重要模块。模块中,用户通过用户接口模块访问泛在网络提供的服务,还可以访问其它用户终端的服务。用户接口模块提供了若干个用户终端节点,每个节点都能为用户节点或服务节点提供功能。

泛在网络中,用户和用户之间、用户和泛在网络之间通信有大量数据,这些数据中有很多消息存在类似或相同构成,所以需要对这些消息进行注册。消息注册中心由消息格式处理和注册数据库中心两部分组成。

消息订阅模块负责为消息请求者提供查询依据,包含消息订阅和消息订阅库两个部分。

3.1 用户接口模块

用户接口模块中,用户通过接口向泛在网络发布和订阅服务。当系统中消息的发送方发布信息时,发布方创建一个发布者对象,发送到移动代理中。同理,当服务订阅者要订阅事件时,一个服务订阅方可以订阅多个订阅消息。

如图4所示,发布方用户建立一个发布消息后,消息传送至移动代理。移动代理接收到发布事件后,每隔一段时间判断该代理节点中是否存在该发布事件的订阅请求,若存在,则通过移动代理将发布信息转发给相应的用户;若不存在,则将该发布信息暂存在移动代理中,若超过预定的暂存时间,则将该发布事件删除。

订阅者需要获得发布者提供的事件时,订阅方向事件代理发布一个订阅请求,事件代理接收到订阅者发布的订阅请求后,将该订阅信息存储进本地内存中,并监测移动代理发送过来的节点信息。若发现移动发送过来的节点信息与事件代理本地已存储的移动代理信息相同,事件代理将存储订阅副本,并将订阅方的订阅请求转发给移动代理。

3.2 消息注册中心模块

泛在网络中的用户首先需要加入成为泛在网络节点后,才能参与到泛在网络环境的泛在接人与信息配送系统中。由于泛在网络充斥了大量的用户终端,这些终端之间存在着大量的服务信息,且类型众多,用户难以分辨这些类似或相同的服务。因此,需要采取相关技术对泛在网络环境的服务事件进行划分。为区分这些信息,需要对消息进行注册。

在节点加入系统时,用户向事件代理发送注册信息(Register-Message,RMsg),事件代理一旦接收到用户发送过来的注册信息,将向该用户反馈一个唯一的订阅ID号(SubID)。同时,事件代理为用户建立一个空白的XML文件,该XML文件存储泛在节点的SubID和IP地址,维护事件代理和Internet网络用户的连接。之后,订阅节点向事件代理发送“确认连接”信息,便可与事件代理建立连接。当事件代理收到“确认连接”信息后,便将订阅节点的SubID和IP地址存储到该订阅节点对应的XML文件中。

同理,泛在网络环境中的移动代理需要通过向事件代理发送注册信息,加入泛在接人与信息配送系统中。事件代理接收到移动代理发送过来的注册信息,将向移动代理反馈一个临时ID(Temporary ID,TID),并在内存中为注册的移动代理创建一个XML文件。与泛在节点存储的XML文件类似,每个XML文件中存储了泛在网络移动代理的当前位置信息。

用户或移动代理需要通过向系统中的事件代理发送订阅请求之后,才能发送订阅请求或获得发布者发布的事件信息。如图6所示,每个事件可以描述为一个三元组 <位置,时间,约束>。其中,事件的位置信息用loc={point,radius},point和radius分别表示订阅请求所处的点和半径;进一步地,可以通过订阅者订阅请求所处的经纬度来确定该订阅事件的point点位置信息,时间间隔的信息则可用订阅请求的开始时间(Begin-Time)和结束时间(End-Time)来表示。约束部分则存储订阅请求的其他约束条件。

泛在网络环境的泛在接人与信息配送系统中,移动代理节点能够在其通信的范围内转发订阅信息给与其相连的泛在节点。用户请求订阅信息时,事件代理将订阅信息将请求的订阅通知转发给移动代理。事件代理若发送订阅信息给移动代理,需要知道泛在接人与信息配送系统中的移动代理所处的位置。因此,当移动代理的位置发生改变时,需要及时将位置变化信息发送给事件代理。规定移动代理的参数△Cupdate表示位置更新的时间间隔;发送的节点位置更新信息表示为LUpdate[TID,Loc],其中TID为移动代理的ID号,Loc为移动代理当前的经纬度信息,位置信息通过移动电话中自带的GPS定期取样获得。

3.3 消息订阅模块

泛在网络环境的泛在接人与信息配送系统具体流程如图7所示。

在泛在网络泛在接人与信息配送模型中,消息订阅模块对发布者和订阅者之间的订阅消息汇总,包含消息订阅存储和消息订阅库在内的一系列信息集合。消息订阅模块中,用户首先向事件代理或移动代理发出事件查询申请,接着消息订阅存储模块根据用户的请求消息(req)查询消息订阅,最后将服务提供信息推送回用户。通过这种方式,在订阅者和发布者之间重新建立了一条链路,不必从头开始索取服务资源。

4 结论

移动终端的泛在接人与信息配送包括基于Map的泛在接人与信息配送系统和基于XML的泛在接人与信息配送系统,主要包括发布者、事件代理、移动代理和订阅者四个部分。本文设计的模型框架包括用户接口模块、消息注册中心模块、消息订阅模块3个部分,能够满足末端物流过程中的加入、更新和事件的发布、订阅等功能。

猜你喜欢
移动终端
手机APP在学生信息化管理中的应用探索
中职学校学生管理系统手机运用平台的研究
基于移动终端的换物平台设计与应用研究