应用程序分发

2024-09-26

应用程序分发(精选12篇)

应用程序分发 篇1

0 引言

最近,一种叫做流行内容分发的应用受到了研究者的广泛关注[1]。在该应用中,行驶中的车辆通过车载单元与路边单元( the Roadside Units ,RSUs)的通信来下载流行多媒体内容[2]。由于文件大、车速快,OBUs在通过RSUs覆盖区域时不能完成整个文件的下载。

受互联网点对点通信协议[3,4]的启发,一些研究者利用汽车对汽车( Vehicle-to-Vehicle ,V2V) 通信组成点对点网络来完成OBU间的内容分发。文献[5]介绍了一种基于网络编码的移动P2P文件共享系统,文献[6]首先将合作博弈应用到了V2V通信中。在文献[7]中,作者提出了一种名为SPAWN的P2P文件下载协议,然而SPAWN的节点和内容选择机制并不适用于文件较大的场景。

本文将已经在通信场景中得到应用[8]的合作图博弈引入到车载自组织网络中,解决了车载网中的流行内容分发问题。在博弈中,OBUs通过分布式的动态博弈形成一个成对稳定的网络,并按照网络进行数据传输。与传统的非合作方法相比,该方案同时考虑了网络中的内容需求和信道容量,提升了网络的性能。

1 系统模型

在考虑的场景中,共有M个OBU( SU用户) ,它们通过K个PU信道完成流行内容的分发。将这个问题规划为一个联合图博弈,在该博弈中,OBUs试图建立一个有方向的成对稳定图。一旦完成网络的构建,OBUs将会采取合作的方法按照图进行数据分发。假设OBU之间的单跳通信限制在直视范围内( 称作“邻居节点”) 。整个流行内容被分为N个大小相等的片段,每个OBU都需要全部片段。用M、N、Mi和K分别表示OBUs组成的集合、数据片段集合、OBUi的“邻居节点”的集合以及PU信道的集合。由于OBUs处于高速移动状态,经过RSU覆盖区域的时间较短,因而只能接收到片段集合N的一部分,剩余的数据片段需要通过V2V通信获得。在V2V通信中,一个OBU每次只能接收一个OBU的数据,但是可以同时向多个OBU传输数据。用Ni表示OBUi已经拥有数据片段集合,假设Ni中的初始元素均匀分布于集合N中。

在本系统中,假设每个PU信道上数据包的到达服从泊松分布,每个时隙中数据包的到达率为λ。对于K中的某一个信道,没有主用户占用信道的概率为P0= e- λ,所有的OBU都使用全向天线。由于车辆行驰在高速公路上,因而建模时可以不考虑信道的小尺度衰落。在第k个PU信道上,OBUi和OBU j之间的V2V信道容量为:

式中,Wk为第k个信道的带宽,n为路径损耗指数,di,j为OBU i和OBU j之间的距离,βi为发射端的信噪比。为了不失一般性,假设

对于车辆的移动模型,参考文献[9]中提出的高速公路车辆移动模型( FMM) 。一个简化的双车道单向高速公路模型如图1所示。车辆在初始时刻随机布在2个车道上。为了更真实地反应车辆的移动,在该模型中,允许车辆进行变道超车。OBU的初始速度为vi( 0) ,且vi( 0) 随机分布在[vmin,vmax]之间。其中,vmin是OBU的最低速度,vmax是OBU的最大速度。同一个车道上2个相邻车辆之间的安全距离为dmin。对于任意一个OBUi,只有在与同车道前向相邻车辆之间的距离小于dmin,且与相邻车道上距离最近的前后两辆车的距离大于dmin时,才允许进行变道。如果同一个车道上2个车辆之间的距离大于最大距离dmax,则后车允许加速到最大速度。针对OBU不需要改变车速的情况,OBU的速度满足:

在传统的非合作方法中,集合M中的OBU在进行V2V通信时,不需要进行合作。OBUs节点将需求通过广播告知其“邻居节点”,并随机响应其他“邻居节点”的数据请求。每一个OBU节点,在响应其他节点的数据请求之前,需要独立地感知K个PU信道,然后通过载波监听多路访问 / 冲突检测( CSMA/CA) 协议接入空闲信道。

2 联盟图博弈

在传统的非合作数据传输方法中,V2V链路是随机建立的,这可能会使得OBU之间的通信效率较低,甚至有些OBUs可能没有与“邻居节点”建立连接。这就导致整个网络的数据吞吐量较低。下面利用合作图博弈来对车载自组织网络中的流行内容分发问题进行建模。通过分布式的动态博弈,建立一个有向的图G( V,E) 。其中,V表示OBUs集,E表示V2V链路集。对任意的i,j∈V,j∈E表示节点i和j之间存在一条有向链路。用dini和douti分别表示图G中OBU节点i的入度和出度,其中,0≤dini≤1。

2. 1 效用函数

对于某一个PU信道k,只有在该信道空闲,且其他邻居节点也没有在该信道上传输数据时,2个OBU节点之间才能够成功传输数据。用Pi,j表示OBUi和OBU j之间数据包成功传输的概率。

假设信道k∈K被主用户占用,用H1表示,反之用H0表示。同理,用H'1表示OBU i的检测结果表示信道k被主用户占用这一假设,反之用H'0表示。漏检概率和虚警概率分别用Pm和Pf表示,则每个OBU节点正确 的做出信 道空闲判 别的概率为[10]:

总的来说,一共有KP0个PU信道处于空闲状态,可以被OBUs利用。每一个OBU都可以接入这些空闲信道中的任何一个信道。OBUj的邻居节点子集{ Mj i} 中的OBUs没有与OBUi占用同一个信道的概率为:

假设OBUs发送和接收数据片段都能给整个网络带来相应的收益。OBUi的效用函数用πi( G) 表示。考虑到周边节点的需求,OBUi在广播数据之前需要通过计算确定待广播的数据片段的集合与顺序,以获得更高的效用。采用一种贪心算法来选择每个OBU节点广播的数据片段。集合Ni ,j= ( N Nj) M∩Ni表示OBUi可以提供给OBU j的数据片段的集合。用Ωi= { j | ij∈E} 表示与OBUi相连接的OBU节点集合。节点OBU i可以提供给Ωi的数据片段集合可以由给出。假设Ni,b中的数据片段按权重因子从大到小排序。每个数据片段的权重因子即为集合Ωi中缺少该数据片段的OBU节点的数目。OBU节点在每个时隙按照顺序一次广播集合Ni,b中的数据片段。假设每个时隙的数据传输时间为T,则OBU j在一个时隙内从OBU i接收到的数据片段集为:

用γout和γin分别表示发送和接收数据的价格因子,则相应的发送和接收效益分别为:

考虑到在进行数据传输时占用了相应的信道,增加了信道中数据冲突的概率,提高了信道的负担,这需要通过费用函数中体现出来。对于任何一条从OBU i发出的链路,潜在的冲突限制在集合μi Ωi内。对于任意一条从OBUj指向OBUi的链路,潜在的干扰限制在集合μi Ωi内。用γcost> 0作为价格因子,则费用函数为:

将式( 6) 、式( 7) 和式( 8) 相结合可以得到节点OBUi( i∈Μ) 的效用函数:

2. 2 动态网络的形成

下面给出了一个包含3个阶段的分布式短视动态博弈网络形成算法。短视动态方法是指在每一轮博弈过程中,每个节点在选择策略时只考虑本轮的效益,而不考虑长远效益,这与考虑长远效益的策略刚好相反[11]。通过分布式的本地策略选择,节点在博弈过程中可以选出一个最优策略,逐步迭代直至形成一个稳定的有向图。

假设当前的数据传输网络为G( V,E) ,则任意节点OBUi可能的行为包括:

1当ijE时,建立一条新的链路ij;

2当diin= 0时,接收OBU j建立连接的请求;

3当ij∈E时,断开当前的连接ij;

4当ji∈E时,断开当前的连接ji;

5以上4种情况的组合。

在合作图博弈过程中,每轮博弈都会随机选出一个OBU选择出其想要建立连接的其他OBU节点。通常,在每一轮博弈过程中,OBUi需要选出节点fi∈Μ去接受连接,并选出一个节点集合Ti∈Μ建立指向他们的连接。用( fi,Ti) 表示节点OBUi的策略,则OBUi的策略空间可以表示为: Si= { ( fi,Ti) | fi∈Μ,Ti∈Μ} 。如果j∈Ti且i∈fj,则节点OBUi和OBUj之间将会建立一条链路,所有的链路都是以这种形式建立的。

假设,当节点OBUi变化到新的策略,且周边节点进行了相应的处理时,网络结构相应的会由G( V,E) 变为了G'si( V,E') 。对于任何一个处于状态( fi,Ti) 的OBUi∈Μ,满足以下条件的策略si= ( f'i,T'i)∈Si将会被称作一个可行性策略:

其中,G为当前的网络结构,G'si为受到策略si影响之后的网络结构。

随机选择一个节点OBUi∈Μ参加动态博弈,集合Pi∈Si表示节点OBUi的可行策略集,动态博弈网络形成算法的具体步骤如下:

步骤1: 从Μi中的“邻居节点”获取必要的信息,并计算出可行性策略集。

步骤2: 随机选择并执行一个可行性策略

1如果断开连接ik,k∈Ti可以提高自身效用,节点OBUi单边地选择断开连接。

2节点OBUi向OBUj∈T'i,jTi请求建立连接ij。如果建立新的连接ij可以提高OBUj的效用,则OBUj接受OBUi的请求。

步骤3: 更新网络结构G( V,E) 和OBUs节点的策略集。

进行多轮博弈直到最后形成一个双边稳定网络G*( V,E*) 。

由于每2个节点之间通信链路的建立需要经过双方的同意( 内在的双边性) ,因而在考虑网络的稳定性时本文考虑双边稳定性[12]。通常情况下,在双边稳定状态下,整个网络中的任何一个节点都不能通过改变自己的策略找到一个可行性策略,并且任何2个节点也不能通过改变策略而同时提升它们的效用。在本文的合作图博弈中,由于博弈规则的限制,没有OBU节点可以通过单方面地改变,或者双方改变而提升自身的效用,因为最终的网络结构G*( V,E*) 是双边稳定的,仿真结果也验证了这一结论。

3 仿真结果

在不同条件下,对本文所提出的合作图博弈方法与传统的非合作方法在高速公路车载自组织网络中的流行内容分发性能进行对比与评估。仿真参数的设置如下:

网络中所有OBU节点随着时间的推移获得总的数据片段的数量如图2所示。仿真条件为: M =6,N = 80,在V2V通信开始时,OBUs已经拥有的数据包的比例为ρ0= 0. 6。图2中纵轴是除以NM归一化之后的结果,可以看出,非合作的传统方法和本文提出的合作图博弈方法获得的数据片段总数量都随着时间的推移提高,但是本文提出的方法的性能更好。在非合作的数据分发方法中,OBUs节点向所有的邻居节点广播其数据需求,且随机地相应其他邻居节点的数据需求,这就对网络造成了负担,容易造成网络的拥塞。对于本文提出的合作图博弈方法,OBU节点根据数据广播和接收双方的需求选择性地向邻居节点传输数据,每一个时隙形成的网络结构在传输数据时都比较有效,因而提升了整个网络的性能。

2种方法下随着时间的推移,网络中广播节点的数量的变化如图3所示。仿真条件为: M = 6,N =80。由图3可以看出,本文提出的合作图博弈方法下的广播节点的数量衰减速度要快于非合作方法,且最终合作博弈方法下的广播节点数量处于一个明显较低的水平。这主要是因为在非合作方法中,由于信道中数据的碰撞,数据片段传输成功率较低,造成潜在的有数据片段需求的节点的数量变化较慢。而在合作图博弈方法中,每个节点传输的数据片段都是网络中需求较高的,且只有效用较高的节点才会传输数据,降低了信道碰撞的概率,使得数据传输速率较高,可以快速降低网络中的需求节点的数量,从而使得广播节点的数量也降低。

4 结束语

用一种合作图动态博弈方法解决了高速环境下车载自组织网络中的流行内容分发问题。在合作图博弈模型中,OBU节点之间相互合作,建立一个高效的P2P数据传输网络。在每次的数据传输过程中,每个OBU节点可以向多个节点发送数据,但只允许从单个节点接收数据。提出的合作图动态博弈方法最终会收敛到一个双边稳定网络。仿真结果显示提出的方法的性能明显好于传统的非合作方法。

应用程序分发 篇2

按照网上教学实际需要,更好的帮助学生们的学习,我校计划分发下学期教学用书,具体安排如下:

1.3月30日下午,由图书管理员老师按照年级分发教学用书,按初二年级、初一年级顺序,各班主任领取本班教学用书,核对好人数。

2.3月31日,初二班主任通知本班学生家长来学校领取;4月1日,初一班主任通知本班学生家长来学校领取。

3.具体要求:

(1)学生家长先在学校大门口排成一人排,保持一米间隔依次入校。

(2)先亮健康码,测体温,体温合格的,再过消毒通道到各自班级教室领书。

(3)家长必须戴口罩,不准聚集、喧闹,听从工作人员的指挥,领完后迅速离校。

(4)各班严格按照时间节点,不能按时到校的家长请与班主任联系。

日期

年级

班级

到校时间



3.31上午

初二

1班

上午8:00入校

9:00结束


2班

上午9:00入校

10:00结束


3班

上午10:00入校

11:00结束


4班

上午11:00

12:00结束


3.31下午

5班

下午2:00

3:00结束


6班

下午3:00

4:00结束


7班

下午4:00

5:00结束


8班

下午5:00

6:00结束


日期

年级

班级

到校时间



4.1上午

初一

1班

上午8:00入校

9:00结束


2班

上午9:00入校

10:00结束


3班

上午10:00入校

11:00结束


4班

上午11:00

12:00结束


4.1下午

5班

下午2:00

3:00结束


6班

下午3:00

4:00结束


7班

下午4:00

5:00结束


8班

下午5:00

6:00结束


***第二中学

应用程序分发 篇3

在2013互联网大会上,刘洪涛演讲中最具总结性的一句话就是“最影响互联网体验的不是云和端,而是管。”云,即是指所有内容的云计算平台放在云端。端,是指各种访问内容的终端,近两年内容终端的丰富性大幅度增加,终端的处理性能大幅度加强,中间的传输环节就是“管”。

网络传输影响用户体验

在中国互联网网页过去的若干年中,有一些明显的变化和发展,比如十年前网游的商业化为什么不是2007年而是2003年左右?为什么视频行业是从2007年往后才有大的发展?为什么大多数用户认为iPhone的体验很好?网游行业之所以在2003年商业化进程大幅度加快,是因为中国的家庭宽带发展,在这之前用户都在大量的使用拨号,那个时代的网游或者端游没有任何生存和发展机会,只有家庭宽带和网吧发展以后使得这个行业商业化。在2007年左右,中国的家庭宽带做了一次大幅的扩容,从早期的512,然后升到2兆、4兆,甚至10兆的升级,才使得家庭用户在线观看视频的体验得到保障,才使得视频有机会发展。iPhone的使用其实也是受到了带宽的限制,也就是用户体验的改善使得这些企业有机会成长。这也是云分发内容最基本的出发点。

“所以说,在中国互联网的架构里,网络传输速度的改善是非常重要的,但是由于中国互联网的传输现状,使得很多用户在上网的时候体验不好,尤其是跨运营商访问互联网内容时会感受很差。而且根据数据分析,我国互联网的骨干网常年都处于传输很差或者传输质量很差的情况,速度没有保障。在这样一个传输速率比较差的网络上,我们要想办法去改善这种服务质量,让用户体会不到拥堵。”刘洪涛表示改善互联网的速率是保障用户体验的根本。

如今,云计算时代的到来使得整个互联网的架构发生了变化。刘洪涛认为整个互联网的架构可以分为三类:“在运营商里面叫云广端,就是把所有内容云计算平台都放在云端。那么所谓的端指的是各种各样终端设备,比如手机、PC、平板,近两年终端的丰富性大幅度增加,有各类类似的终端出现,终端处理系统也大幅度的加强,那么中间的传输环节,我们叫做管,这就意味着所有来自于云的内容,能够让终端用户有效访问的话,必须要通过这个管,也就是运营商经常提到的管道化,就是指整个互联网的中间传输环节。最影响传输环节,最影响互联网访问质量和用户体验的,其实不是在于云也不在端,而是在于传输过程,如果中间传输不好,再丰富的内容和再强大的终端都无法表现其效果。”

智能化管道是关键

传输过程其实是最难以解决的问题,它的前后两端都有大公司在运作,大公司往往在追求创新,导致中间的管道需要更加追求技术手段上的创新,从而去改造整个中国互联网。现在在运营商领域经常会提到智能管道的概念,所谓智能管道最重要的环节就是在整个互联网的传输环节上、网络上,使得所有的内容可被否定,网络可被管理、被优化、被定义。所以只有被管理优化和定义的网络,才可能是智能化的。

智能化管道至少应该具备这样几个能力:第一,用户本身和它的业务类型应该是可被感知的,在网络上传输的这些内容应该被网络本身所感知,以及了解传输内容。第二,网络的资源应该以动态分配,而不是像现在的互联网一样,整个网络处于静态,动态的网络资源必须动态分配。这就需要智能控制,同时要为网络上的业务进行分流。目前整个互联网的骨干网业务,无论视频、胶印,还是店商都处于混乱状态,那在智能管道中就需要把业务进行分流。第三,网络必须要基于CDN和云的技术,这样才能使得基础网络和应用网络有效的分离开,使得所有内部交换或者计算交换,不去到网络的底层、路由器,或者是更大的物理层面,否则对于整个网络的项目会造成影响。

“能够在内容层面上进行直接的交换,那么这个网络必须是可管的,可扩张的。这是我们追求所谓智能管道的一个必然方向。要内容进行优化,所有人都在努力解决传输环境的问题,因为在我们看来,互联网传输存在两个问题,第一个是长期存在的数据集中处理和用户分散访问问题。随着云计算的到来,数据的集中存储越来越大、越来越集中,而用户访问越来越分散,这样的矛盾使得互联网基础设施的建设,永远跟不上互联网行业内容的发展速度和创新速度。由于这两个矛盾的存在,使得整个互联网的传输压力越来越大,在云计算时代到来后,作为第三方的CDN公司需要解决的问题一方面是云,一方面是端”在刘洪涛看来,CDN公司应该把自己优化成一个云分发平台,或者作为智能管道进行网络服务。

通过智能云分发平台,无论从物理层、社会资源层,还是增值业务层,都可以进行云化,在云化的基础上,可以和其它各大云计算平台进行对接。

应用程序分发 篇4

轨道交通自动售检票AFC系统是涉及机电一体化、信息知识、信息处理、信息安全、信息管理、网络通信、数据库、智能卡、嵌入式、过程控制、测试、仿真、图像处理、操作系统和集成等多种技术的大型信息系统[1]。轨道交通AFC系统面向乘客, 主要用于自动 (或半自动) 售票、进站检票、出站检票收费 (同时回收单程票) 和超程超时补票等票务自动处理;其控制、处理和管理功能, 主要面向AFC运营管理人员, 包括运营/票务参数下发且自动执行, 售检票交易数据逐层上传及统计汇总、终端设备运营监控、客流监视、交易合法性认证以及票/卡密钥安全分发和使用等。

一个典型的AFC系统的总体架构如图1所示, 一般由五层组成。自下而上依次是:票/卡介质 (Fare media) 层, 由乘客持有;前端层 (Front- end layer) , 通常由半自动售票机POST、自动售票机TVM、便携式验票机PVU和进/出站检票机Gate等AFC专用终端设备组成;车站层 (Station layer) , 由车站处理系统SPS (station processing system) 组成;中央层 (Central layer) , 由中心处理系统CPS (central processing system) 组成;中央清分系统CCHS (central clearing house system) 层, 也可称为中央后台功能CBO (central back office) , 主要由多线路AFC系统票务交易的清、结算处理功能和票/卡密钥管理与应用等功能组成。在实现过程中。可以根据实际需要局部改变图1所示的五层架构。比如, 在各线路投资方和运营方认同情况下, 可以统一建设一个CCHS, 并且该CCHS兼有各线路CPS的各项功能, 这样就可以省却各线路的CPS, 使图1呈四层架构。一般, SPS不能省却, 因为AFC系统是一个基于轨道交通内部通信传输网建设的具有远程通信传输要求的分布式处理系统, 前端层的所有终端设备均部署在车站区域内, 即通过局域网互联, 为保证车站终端设备的实时监控要求及避免被非法入侵等安全原因, 需要在车站范围内部署SPS, 用于监控前端层的所有终端设备和及时接收/转发交易数据、运营参数、票务参数和运营命令等。

在图1所示架构中, 票/卡是旅客乘坐轨道交通的有效凭证, 是AFC系统中不可忽缺的信息载体和信息交互媒介, 具有量大面广、安全性和可靠性要求高的应用特点。在国内现有的轨道交通AFC系统中, 票/卡介质大多采用符合ISO/IEC 14443 A/B/C标准的非接触式智能卡CSC。因为CSC具有交易快速、简单、可重复使用、不易损耗和存储数据量大等优点, 在使用方面还具有加密和认证等安全功能。CSC和票/卡读写器之间的相互身份认证和通信数据加密均基于票/卡密钥实现, 因此本文主要研究和描述如何在AFC系统中建立一套票/卡功能密钥安全分发系统来提高票/卡的防欺诈能力, 保证交易的真实性和票务信息的安全性。关于由一代通用主密钥衍生成功能密钥和票/卡应用密钥, 以及票/卡应用密钥与终端设备票/卡功能密钥通过对称加密算法遵循ISO/IEC7816-8 Authenticate命令实现的相互鉴别过程, 请参阅文献[2,3]。

由于密码学中所有加密算法要求公开, AFC系统票/卡使用的安全性主要由密钥的安全保护、分发和使用保证。关于本文描述的对称和非对称加解密算法3DES和RSA的进一步介绍, 请参阅文献[4]。

1票/卡密钥安全分发技术方案设计

票/卡的功能密钥在CCHS的密钥管理系统KMS (Key Management System) 中被生成, 然后被分发到AFC系统所有车站终端设备上的票/卡读写器并安全保存在票/卡安全模块TSAM (Ticketing Security Access Module) 中。所有票/卡在投入使用之前, 必须在CCHS的编码分拣机上进行初始化, 通过KMS生成的票/卡功能密钥结合票/卡的唯一可读特征衍生成票/卡应用密钥并写入票/卡中。所有成功初始化后的票/卡和AFC系统内的所有票/卡读写器将共享相同的票/卡功能密钥, 如赋值密钥和消费密钥等, 保证合法的票/卡能被读写器成功认证及交互。在KMS中, 对密钥的安全保护和使用的关键之一是如何对票/卡的功能密钥进行安全分发。当一代功能密钥面临被攻破、票/卡应用密钥的安全受到威胁时, 应该在这之前及时、安全地分发新一代的功能密钥, 并通过终端设备 (包括TSAM) 自动透明地更新票/卡的相关应用密钥。

如图1所示功能密钥的分发通路为:CBO→CPS→SPS→FE→FM。其中FE涉及相关的终端设备, FM为乘客持有的票/卡介质。为了实现票/卡功能密钥的安全分发需要两方面的技术结合:①需要在这条通路上的每两个相邻的通信节点之间建立端对端的信任关系;②通过传输密钥对票/卡功能密钥加密后再进行传输。

端对端的信任关系可以通过对称加密算法 (如DES、AES) , 也可以通过非对称加密算法 (如RSA、ECC) 的相互认证机制实现。后者需基于公共密钥基础设施PKI (Public Key Infrastructure) 实现。PKI能够为身份认证、数字签名、数据加/解密和防篡改等提供一系列的处理机制和安全保证。

AFC系统的PKI架构如图2所示, 其中:

1) 证书授证中心CA (Certificate Authority) 。部署在CCHS的CA负责为CBO、CPS、SPS和FE的每台AFC设备生成RSA密钥对并颁发公钥数字证书, 此外还负责证书的撤销及发布证书撤销列表CRL (Certificate Revocation List) 。

2) 证书注册中心RA (Registration Authority) 。部署在CPS的RA负责为每台AFC设备向CA申请证书并接收来自CA的CRL然后分发给每台AFC设备。

3) 硬件加密模块PKI SAM。每台AFC设备上都会安装一个PKI SAM。所有PKI SAM由CA颁发, 用以生成RSA密钥对并安全存放作为每台AFC设备身份标识的证书以及CA的证书。

在图2架构中, PKI承载票/卡功能密钥分发通路中主体认证关系为CA↔RA、RA↔SPS、SPS↔FE终端设备之间的数字签名。在KMS和CA之间, 只有在传输功能密钥时才建立RS232的临时私有连接, 密钥传输完成后即断开连接, 所以不需要相互认证。

选择对称加密算法3DES对欲被传输的票/卡功能密钥进行加密后传输。票/卡功能密钥的加密传输过程如图3所示, 具体传输步骤如下:

1) KMS生成票/卡功能密钥 (不妨记作Ticketing keys) 后, 用传输密钥KTRn进行加密, 得到[ Ticketing keys ]KTRn, 通过临时私有连接传输给CA。

2) CA收到[Ticketing keys]KTRn后, 用传输密钥KEKp再次加密, 得到[[Ticketing keys]KTRn ]KEKp, 经RA、SPS传输给FE终端设备。

3) FE终端设备收到[[Ticketing keys]KTRn]KEKp 后用KEKp解密, 然后用FE终端设备和票/卡读写器之间相互认证过程中生成的本次会话密钥Ksession加密得到[[Ticketing keys]KTRn]Ksession, 传输给票/卡读写器。

4) 票/卡读写器收到[[Ticketing keys]KTRn]Ksession后, 用Ksession和KTRn解密, 得到Ticketing keys。

在上述过程中, 用到了两个3DES传输密钥:KTRn和KEKp (其中n、p是版本号) 。初始的KTRn 即KTR0由票/卡读写器厂商管理, 在票/卡读写器出厂时KTR0被存入到读写器的存储区Flash中。并且, 票/卡读写器厂商将KTR0拆分成两个部分 (两个密码信封, 任何一个都是不完整的) 提交给AFC系统运营商, 由两个不同的KMS安全管理员依次分别单独地输入到KMS中, KMS通过异或算法得到完整的KTR0。KTRn的更新过程在本文2.3节描述。KEKp由CA生成 (保存在CA的PKI SAM中) , 然后在CA为FE终端设备颁发证书时, KEKp被存入到FE终端设备的PKI SAM中。

上述技术方案使票/卡功能密钥的安全分发得到了极大的保证, 但是在AFC系统运营的过程中, 所使用的票/卡功能密钥仍然有被破解的可能[5]。因此, AFC系统的票/卡功能密钥应该在需要时能够被定期或不定期地进行更新, 而这样的更新必须不会对已经发行的票/卡的使用带来任何影响。票/卡应用密钥的更新过程如下:

1) KMS负责票/卡功能密钥的版本管理。假设AFC系统中当前被使用的票/卡功能密钥的版本为n。

2) KMS在安全管理员的请求下生成了一个新的票/卡功能密钥, 其版本为n+1, 由版本n的功能密钥不能推出版本n+1的功能密钥。

3) n+1版的票/卡功能密钥被安全地分发到FE终端设备上票/卡读写器的PKI SAM中, 而且n+1版的票/卡功能密钥需要在与n版功能密钥的票/卡交互时通过票/卡读写器自动更新票/卡的应用密钥为n+1版。票/卡读写器PKI SAM拥有n和n+1版的票/卡功能密钥, 因此能够正确处理拥有n和n+1版应用密钥的票/卡。

4) 当自动更新票/卡n版应用密钥为n+1版应用密钥的规定期限截止后, 从系统中移除n版票/卡功能密钥。具有n版应用密钥的过期票/卡可以经换卡手续更换为具有n+1版应用密钥的票/卡。

2实现票/卡密钥安全分发的关键技术

在上述技术方案中, 保证票/卡功能密钥能被安全分发的主要关键技术是:①PKI SAM卡;②相互身份认证;③传输密钥更新。

2.1PKI SAM卡

SAM卡是一种具有特殊性能的CPU卡。用于存放密钥和加密算法, 可完成交易中的相互认证、密码验证和加、解密运算。

在上述方案中, 不管是票/卡功能密钥分发通路中端对端的信任关系还是票/卡功能密钥的加密传输, 关键问题是如何保证认证密钥 (RSA私钥和读写器认证密钥Kabi) 和传输密钥 (KTRn和KEKp) 的机密性。而把认证密钥和传输密钥存放在PKI SAM卡中, 是对这一问题目前的最佳解决方案。因为, ①AFC设备访问PKI SAM卡之前, 必须先通过基于PIN (Personal Identification Number) 的CHV (Card Holder Verification) 验证;②PKI SAM卡中有RSA密钥对生成器, 用于CA为AFC设备颁发证书时, 能够生成AFC设备专属的RSA算法的公钥和私钥;③ISO 7816-4/8[3]标准规定了SAM卡的行业间使用的交互命令, 包括SAM卡与设备之间的传送命令和应答信息;在SAM卡中的文件、数据结构及访问方法;定义在SAM卡中的文件和数据访问权限及其安全结构。

PKI SAM卡还可以存放AFC设备的证书和CA的证书, 因而可以作为AFC设备的身份标识。PKI SAM卡中的文件组织结构大致如图4所示。

2.2相互身份认证

为了建立票/卡功能密钥分发通路中端对端的信任关系, 根据应用环境, 可以应用不同的相互身份认证技术。如图5所示。

1) RA和CA之间的相互认证委托给VPN完成。

2) SPS和RA之间的相互认证通过Windows 2000的鉴别机制 (Kerberos) 完成。

3) FE终端设备和SPS之间的相互认证通过基于RSA密钥对的数字签名机制 (ISO 9798-3[6]) 完成。

4) 票/卡读写器和FE终端设备之间的相互认证通过对称密钥加密算法的机制 (ISO 9798-2[7]) 完成。该相互认证过程为基于共享3DES读写器认证密钥Kabi的三次传送认证, Kabi为票/卡读写器和FE终端设备所共享。初始的Kabi即Kab0由票/卡读写器厂商管理, 在票/卡读写器出厂时Kab0被存入到读写器的存储区Flash中。并且, 票/卡读写器厂商将Kab0拆分成两个部分 (两个密码信封, 任何一个都是不完整的) 提交给AFC系统运营商, 由两个不同的KMS安全管理员依次分别单独地输入到KMS中, KMS通过异或算法得到完整的Kab0。然后在CA初始化的过程中Kab0经传输密钥KEKp加/解密后传输给CA, 然后在CA为FE终端设备颁发证书时, Kab0被存入到FE终端设备的PKI SAM中。此后Kabi的更新需在KMS安全管理员的请求下, 生成Kabi+1, 其分发过程类似图3所示, 经Kab0和KEKp加密后传输。在票/卡读写器和FE终端设备之间的相互认证完成后, 由认证过程中产生的Text2和Text4可得到会话密钥Ksession (Text2//Text4) , 用于随后的票/卡读写器和FE终端设备之间的数据传输的加/解密。关于上述的三次传送认证以及Text2和Text4的进一步说明请参阅文献[7]。

2.3传输密钥的更新

就像票/卡功能密钥在AFC系统运营过程中有被破解的可能一样, 传输密钥KTRn也有同样的问题, 并对票/卡功能密钥的安全分发产生危险, 所以同样需要提供对KTRn进行更新的机制。如上所述, 初始的KTRn即KTR0由票/卡读写器厂商管理, 在票/卡读写器出厂时KTR0被存入到读写器的存储区Flash中, 并需由KMS安全管理员分别输入到KMS后生成完整的KTR0。此后KTRn的更新需在KMS安全管理员的请求下, 生成KTRn+1, 其分发过程类似图3所示, 经KTRn和KEKp加密后传输。

3结束语

本文从轨道交通AFC系统实际需求出发, 结合实践, 设计了一个在AFC系统中对票/卡功能密钥进行安全分发的技术方案。在该方案中, 应用了PKI、对称密钥加密算法3DES、非对称密钥加密算法RSA并构建在此基础上的多种相互身份认证机制, 利用PKI SAM卡来安全存放3DES传输密钥、RSA私钥和3DES读写器认证密钥, 极大地保证了票/卡功能密钥由清分中心密钥库分发到车站终端设备上票/卡读写器的TSAM中这一过程的安全性。此外, 为保障AFC系统长期运营中票/卡功能密钥和应用密钥的安全, 给出票/卡应用密钥更新和传输密钥更新的技术步骤, 充分体现了本文所描述技术方案的完整性和前瞻性, 具有很好的参考价值。

本文设计和描述的技术方案已在荷兰全国轨道交通AFC系统中得到了成功实施和应用。

参考文献

[1]赵时?, 王绍银, 苏厚勤, 等.轨道交通自动售检票系统[M].同济大学出版社, 2007.

[2]王桌人, 王峰.智能卡大全——智能卡的结构、功能、应用[M].电子工业出版社, 2002.

[3]ISO/IEC7816-8:2004Identification cards--Integrated circuit cards--Part8:Commands for security operations.http://www.iso.org/iso/catalogue-detail?csnumber=37989.

[4]Wilian Stallings.密码编码学与网络安全——原理与实践 (第四版) [M].电子工业出版社, 2006.

[5]Annabelle Mclver Carroll Morgam, 著.程序设计方法学[M].田玉敏, 等译.中国水利水电出版社, 2007.

[6]ISO9798-3:Information Technology-Security techniques-Entity authenti-cation-Part3:Mechanisms using digital signature techniques (second edi-tion:1998-10-15) .http://www.iso.org/iso/search.htm?qt=+ISO+9798-3&published=on&active-tab=standards.

2012校报分发策划书 篇5

动 策 划 书

主办单位: 漳州师范学院经济学系团委

承办单位: 经济学系11统计学2班青年志愿者服队协办单位: 经济学系青年志愿者中心

一·活动主题:

校报进宿舍,真情邮递员

二·活动背景:

校报作为一份贴近大学生生活,反映我们真实情况的文字媒体,让每个同学能及时了解学校情况,作为一名志愿者,我们应该致力于服务师生,服务社会,让校报进宿舍,让志愿者的真诚温暖每个人。

三.活动目的:

1.志愿者活动有利于提高学生自身实践能力,也有利于展现当代大学生的爱心,带动校园精神文明的建设;

2.该活动有利于宣传并展现志愿服务的组织精神,有利于公益精神在学生中的树立和推广,有利于提高志愿者中心在全院的地位

3.围绕服务精神,志愿者通过分发报纸提高交涉能力,礼貌待人。

4.提高校报的宣力度传和班级集体活动意识。

四·活动时间: 2012下学年1到18周 周五晚 19:30至21:30

五·活动地点:漳州师范学院瑞京及白宫及研究生宿舍楼

六·活动对象:经济系11统计2班全体同学(每次15个人)

七·活动开展阶段

(一)前期准备阶段:

1.书写活动策划,上交审批;

2,班级宣传,负责人负责点名,并将参与者分组。

3.在芙蓉餐厅准时集合。

(二)活动开展阶段:

1.让同学7:30分准时在芙蓉餐厅集合2.到达工作地点后,领取报纸,负责人分组。以小组为单位,分别派发瑞京,白宫,研究生宿舍。

4.工作过程中如果有什么难题及时与负责人商量

5.负责人现场拍照以作留念,并存档;

6.工作后进行总结

八.活动经费:无

九.活动规则:

1.在工作岗位上要求每个人忠于职守,不擅自离位,若有特殊情况告知负责人林之楠;

2.以真诚的态度面对工作中的每个人;

3.保护好公共产品,不喧哗,不吵闹,不偷懒。

4.注意文明用语,礼貌待人,不影响宿舍人员的正常休息。

十·活动可行性分析:

周五晚上同学一般都有时间,而且统2班志愿者队伍作为本次活动者,秉着“奉献、友爱、互助、进步”的志愿精神,借此机会锻炼提升自我志愿服务精神。并在进宿舍之前得到了楼管以及老师的许可。

十一·预期效果:

1.可以使得班级同学得到实践经验,增进同学间的交流。

2, 将分配到的报纸分发到各个宿舍,并始终保持良好态度,维持志愿者

形象。

十二·注意事项:

1.活动期间发生冲突负责人要灵活处理,寻求全面的解决方法;

2.活动期间注意安全;

3.提前安排好人员;

策划人: 漳州师范学院经济系11统计二班

无线传感器网络的数据分发技术 篇6

关键词:无线传感器网络;数据分发;能量有效;sink节点;方案

0引言

无线传感器网络是由许多具有感知、计算和通信能力的低成本低功耗的微型传感器组成,用于实时感知和采集网络覆盖区域内的感知对象的信息,常常由成百上千个传感器协同工作。这些传感器一般可分成两类:一是具有通信能力的传感器节点,称为源节点。源节点通过内置的一个或多个物理传感器,如温度传感器、光传感器等,可对观察范围内的感知对象产生原始数据。这些节点靠不能补充能量的电池供电,具有有限的能量。二是网关节点,也称为sink节点(或基站),这些节点用于实现传感器网络与Internet的连接,往往个数有限,但能量能够得到补充。无线传感器网络的主要目的是从监测环境中收集用户感兴趣的数据,发送给sink节点。因此,数据分发是无线传感器网络的一个基本功能,而带宽和能量是传感器网络中最为缺乏的资源,为了延长网络的生存时间,设计能量有效的数据分发方案是至关重要的。

1数据分发的分类

在传感器网络中,数据分发的分类有三种。而一种是按照数据传输的方向,分为三类:

(1)源节点到sink节点的数据分发。源节点把探测到的感知数据发送给sink节点。

(2)源节点之间的数据分发。当源节点之间需要协作时,由请求源节点发送消息给需要合作的其他源节点。

(3)sink节点到源节点的数据分发。sink节点可以改变部分或全部传感器节点的操作模式,向网络中广播一条新的消息,激活或睡眠一个或多个源节点,向网络中发送查询等。

第二种是根据通信周期,分为三类:

(1)事件驱动(event-driven)数据分发。只有在感兴趣的事件发生时才构建路径,发送数据,从而减少了持续更新路径的费用。

(2)连续数据分发(confinuous dissemination)。每个源节点定期地发送数据给sink节点,需要定期重建路径。

(3)查询驱动数据分发。只有sink节点需要查询时,才构建数据分发路径,符合条件的源节点响应查询,并将感知数据发送给sink节点。

第三种是根据应用类型,也分为三类:

(1)固定源节点与固定sink节点间的数据分发。源节点与sink节点一旦配置好,它们的位置就不再改变,直到网络终止,这是使用最广泛的数据分发。

(2)固定源节点与移动sink节点间的数据分发。用户使用如PDA等移动设备在感知区域内移动,通过查询源节点来获取有关对象的当前状态或近来目标活动的概况。

(3)移动源节点与移动sink节点间的数据分发。可用于监测和跟踪移动目标的传感器网络。

2数据分发方案

无线传感器网络的主要功能是实现数据分发,而有效、可靠的数据分发关键在于建立数据传输路径。设计能量有效的数据分发方案可以优化数据传输路径,减少节点能量的消耗和网络拥塞,提高数据传输性能,有效延长网络寿命。近年来,许多研究者注意到了数据分发的重要性,并提出了许多数据分发方案,其中具有代表性的有以下几种。

2.1基于外部存储的数据分发方案(External Storage-baseddata dissemination scheme,ES)

这是使用最广泛的一种方案,它依赖于一个位于传感器网络外部的集中式基站,该基站用于收集和存储感知数据。这种方案必须把源节点的所有感知数据通过泛洪传送给基站,用户通过查询基站来获取数据。但当查询过多时,ES数据分发方案将非常低效。

2.2基于数据中心存储的数据分发方案(Data-Centric Stor-age-based data dissemination scheme,DCS)

当源节点监测到事件的感知数据时,源节点向它的相邻节点广播感知数据的描述信息,感兴趣的节点发送相应的请求给源节点,源节点才向请求者发送数据信息,接收到数据的节点再向它的相邻节点广播消息,如此重复,使所有节点都有机会接收到任何数据。因此,事件的感知数据可能被存储在网络中的部分或全部源节点上。但不管什么查询,数据都使用预定义的方式传送。这种方案缺乏适应性,并且在查询率较低时,可能会引起很多不必要的数据传输。

2.3基于本地存储的数据分发方案(Local Storage-baseddata dissemination scheme,LS)

源节点只有收到sink节点的查询时,才发送数据给sink节点,这样可以避免传输不必要的感知数据。这种方案需要建立一个sink-source的匹配机制,使sink节点容易找到持有所需数据的源节点,大多数采用的匹配机制遵循flood-response模式,需要在网络中泛洪某些控制消息。比如,在DirectedDiffusion(DD)中,sink节点把查询泛洪到整个网络中,沿途节点按需对各查询进行缓存,并根据查询计算梯度,使具有被请求数据的源节点知道把数据发送到什么位置。而在Two-TierData Dissemination(TTDD)中,由监测到某个事件发生的源节点以自身作为网格的一个分发节点构造一个网格,sink节点在本地发送泛洪查询请求到最近的分发节点,该节点再转发给邻近的分发节点,直到把查询请求发送到该源节点,数据再反向传送到sink节点。LS数据分发方案由于需要大范围的网络泛洪,可能会引起严重的网络阻塞和大量的能量消耗。

2.4多级数据分发方案(Multi-Resolution data dissemination scheme,MR)

这是综合LS和DCS数据分发技术的一种数据分发方案,其基本思想是在数据源中选择一个头节点,代表数据源中所有源节点在最近的注册节点上进行注册,sink节点把查询发送到所有注册节点上,从注册节点再把查询发送到所有匹配的头节点,当头节点收到查询后,使用局部节点选择算法在数据源内选择一组节点进行查询。由于sink节点的位置包含在它分派的查询中,查询节点可以直接把感知数据发送给sink节点,如图1所示。这种数据分发方案避免了查询泛洪,能有效减少能量消耗,而且通过减少冗余数据的分发进一步达到节省能量的作用。但是在数据源中只是基于感知范围参数来选择查询节点,没有考虑数据的分布情况。

2.5基于索引的数据分发方案(Index-based Data DisseminationScheme,IDDS)

为了克服以上几种数据分发方案存在的问题,提出了基于索引的数据分发方案。在这种方案中,负责监测某对象的源节点定期产生有关该监测对象的感知数据,并把感知数据存储到存储节点(storing nodes)3:,存储节点可能是该源节点,也可能是邻近的某个节点。同时,存储节点的位置信息,称为索引(Index),要增加到与监测对象有关联的某些节点上,这些节点称为索引节点(Index nodes),并在索引节点上进行维护。当被监测对象移动时,要改变相应的监测源节点。但是,新的监测节点仍然使用原来的存储节点保存感知数据,直到监测节点离存储节点很远时,才选择新的存储节点。当选择了一个新的存储节点时,原来的存储节点处理以前存储的数据,产生一个汇总数据,发送给新的存储节点。如果不汇总以前的数据,新的存储节点可以使用一个指针指向原来的存储节点,这样,从当前存储节点也可以访问以前的数据。并且,新的存储节点也应在与该监测对象有关的索引节点上注册它的索引。

当sink节点想查询某个监测对象的感知数据时,就发送一个查询消息给与监测对象有关的索引节点,索引节点收到该消息后转发该请求给相应的存储节点,由存储节点直接发送查询结果给sink节点,存储节点只有接收到sink节点的查询时,才发送数据给sink节点。其基本思想如图2所示。这种数据分发方案避免了发送不需要的感知数据,也不需要把控制信息泛洪到整个网络,改善了整个系统的性能,但是增加了维护索引节点的额外费用。

3数据分发方案的比较

根据上一节的说明和分析,表1对以上5种数据分发方案的特点进行了总结和比较。方案特点包括:是否建立最佳数据分发路径;是否存在影响数据分发的关键节点;是否支持sink节点移动;是事件驱动、查询驱动还是连续数据分发;数据分发所需的通信量、计算量和存储量。

4结束语

基于BT协议的数据分发机制 篇7

1 BT介绍

基于BT协议的文件分发系统由以下几个实体构成:1, web服务器, 用于存放和分发种子文件。2, 种子文件, 记载一系列相关信息。3, Tracker服务器, 保存整个BT网络信息的中心服务器。4, 原始文件提供者, 也叫种子, 保存整个文件的完整备份。5, 诸多BT客户端下载者。种子文件包含这个BT协议网络构成的一系列信息.信息都是经过B编。格式是.BT客户端软件通过解析种子文件获得这些信息, 然后通过种子文件中的Tracker服务器地址以HTTP协议去连接Tracker服务器, 过程是:客户端向Tracker发送一个HTTP的GET请求, 该请求包括客户端的Ip地址, 连接端口, 要下载的文件名, 用户当Tracker服务器接收到这个GET请求之后, 就会返回一串信息给客户端, 包括网络中已下载完成的peer数, 正在下载的peer数, 每个peer的IP地址和端口号等。在Tracker返回这些信息给客户端之后, 客户端就可以按照BT协议与各个peer交换数据了。

当客户端与一个Peer建立TCP连接之后, 他们之间的通信过程如下:首先向peer发送握手消息, 其中pstrlen的值固定为19, pstr的值为“Bit Torrent”, info_hash的值和与Tracker通信时GET请求中的info_hash相同, peer_id则是握手信息发起方的peer_id标识。当客户端发送这个握手消息给peer之后, 他们之间的链接状态为半握手:halfshaked, peer返回相同格式的握手信息回来之后, 两个peer之间的状态称为完全握手:handshaked。于是就可以相互通讯了。从此我们可以看出BT的工作细节, 客户端维护一张所有与自己连接的peer的链表。

其中四个状态参数am_choking, am_interested, peer_choking, peer_interested决定是否可以从peer出获得数据以及peer是否可以从自己这儿获得数据, 当am_choking为1时, 自己将peer阻塞, 不允许peer从自己这儿获得数据, peer_choking为1时, peer将自己阻塞, 不允许自己从peer那儿获得数据, am_interested为1时, 表示自己有peer没有的数据, peer对自己感兴趣, 希望能从自己这儿得到数据, peer_interested为1, 表示peer有自己没有的数据, 自己希望能从peer那儿得到数据, 这样当自己和peer在执行阻塞算法的时候, 可以将阻塞位清0, 然后能够进行数据传输。

2 问题描述

从上面的描述知道, 一个peer要想下载数据, 也就是要上传数据, 当peer拥有其他peer没有的数据, 并将其上传给其他peer, 这样才能从其他peer那儿下载到数据, 这个机制使得每个peer都成为服务器角色, 当下载人数越多时, 下载速度就越快。但这个机制存在的一点缺陷在于, 当一个新的, 没有任何待下载文件数据的全新peer加入这个BT网络的时候, 因为他没有任何数据, 当然也不会有其他peer感兴趣的数据, 也难以从其他peer处下载数据。

3 解决方案

在所有的peer之中, 有两种peer很特殊, 一是新加入的peer, 自身不拥有任何数据, 另一种是种子peer, 即已经完成了待下载文件的全部下载, 为了解决上述的问题, 我们可以将BT的协议作局部的调整, 充分利用这些种子文件, 使新的peer快速融入到整个BT网络。对于新加入的peer, 在与tracker联系的时候, tracker依据其传输过来的数据中依据downloaded=0表示一个数据字节都没有下, 通过这个判断出这是个全新的peer, 于是tracker返回BT网络之中所有的种子信息给peer:

Peer收到这个信息之后, 依据这个信息建立种子链表, 通过计算与所有种子peer之间的路由跳数, 选择经过跳数最少的4个种子peer作为与自己靠得最近的4个种子peer, 然后与四个种子peer连接, 从这4个种子处获得数据, 因为种子peer不需要下载数据, 则可以一直向外上传数据, 在一定的时间之内, 新加的peer可以持续从种子peer处下载数据, 然后当peer积累了一定量的数据之后, 便不再从种子处下载数据, 当再次与tracker交换信息的时候, tracker不再返回种子链表, 而是如普通BT协议那样返回所有peer的信息, 此时peer就可以通过交换Bit Map位图, 依据am_choking, am_inerested, peer_choking, peer_interested执行阻塞算法, 以后的过程就如同普通BT协议那样继续进行下去。流程如下:

通过这样的方案, 避免了新加入的peer因没有数据而缺乏竞争力而导致的无法快速融入网络分享数据的情况。

4 存在的问题

新型量子确定性密钥分发协议 篇8

本文提出的QDKD协议采用量子隐形传态以及纠缠交换传递预先确定所需要的密钥。量子隐形传态允许发送者A发送量子态给接收者B而保持最初的粒子在原来的地方。在收到A的信息之后, B根据A的信息对自己的粒子执行局域幺正操作来实现A的量子态。在量子系统里正交量子比特会被区分, 如和, 由量子隐形传态远距离传输给B, 接收者B将会获得A量子比特的所有有效信息。设A和B共享的EPR关联对处于量子隐形传态:

其中, 下标1和2代表A和B的粒子。

基于量子隐形传态的QDKD协议如图1, A持1粒子和3粒子, B持2粒子。1粒子和2粒子将处于量子态, 3粒子将处于量子态。

由 (2) 可知, 若A的测量结果为, B无需操作即可保持量子比特, 且B的量子比特直接用作自身的密钥;若A的结果为, 则A告诉B哪些比特需要翻转, B则仅仅对相应的粒子2执行比特翻转操作就能获得确定的密钥。

2 纠缠交换

纠缠交换是使没有直接相互作用的两个量子系统纠缠在一起的方法, 在量子网络、通信中有着重要的地位。设两个通信者A、B共享的EPR关联对处于量子纠缠态。A持有粒子1和3, B拥有粒子2和4。

其中, 基于纠缠交换的QDKD协议方案如图2:

若是A对粒子1和粒子3执行纠缠交换, 粒子2和粒子4将会纠缠, 包含粒子1、2、3和粒子4的整个系统的量子态为:

由 (4) 可看出, B的粒子2和4最后将以等概率1/4处于下

面Bell态之一, 将对应于A的测量结果。

A和B将四个Bell态分别编码为00、01、10、11, 即。若要传递A的确定性密钥给B, A将确定的密钥与测量结果进行比较, 然后将比较信息发送给B。在收到A传送的信息之后, B则会依照A的信息以及自身结果推断出所要的密钥。

3 结语

如果A的确定性密钥比特为00, 且A的自身结果是, A将会获得比较信息比特10, 然后将密钥比特和测量结果发送给B。要知道, 比较信息比特0代表确定性密钥比特与A的自身结果之间的关系为相同, 而1代表为不同。通过 (5) , B的粒子2和4处于。在收到A的信息比特10之后, 假设B收到A的信息比特为1, B将翻转测量结果来获得密钥比特。否则的话, B将使用他测量结果比特作为密钥比特。所以, B将获得了确定性的密钥比特为00。

摘要:将研究量子确定性密钥分发, 基于量子隐形传态以及纠缠交换提出新的QDKD协议, 然后用信息论对提出的协议进行全面系统的分析。基于隐形传态的QDKD协议能够传递预定的密钥给指定目标, QDKD协议产生随机密钥的QDKD协议的补充, 所以对密钥的管理有非常重要的意义。

关键词:QDKD协议,量子隐形传态,量子纠缠交换,确定性密钥,量子通信

参考文献

[1]曾贵华.量子密码学[M].北京:科学出版社, 2006

[2]张永德.量子信息物理原理[M].北京:科学出版社, 2006

[3]陈进建, 韩正甫, 赵义博, 桂有珍, 郭光灿.平衡零拍测量对连续变量量子密钥分配的影响[J].物理学报, 2007 (1)

[4]陈进建, 韩正甫, 赵义博, 桂有珍, 郭光灿.平衡零拍测量对连续变量量子密钥分配的影响[J].物理学报, 2007 (1)

[5]师瑞娟, 朱畅华, 陈南, 裴昌幸.基于纠缠的BB84协议仿真研究[J].计算机仿真, 2008 (6)

[6]王金东, 秦晓娟, 魏正军, 刘小宝, 廖常俊, 刘颂豪.一种高效量子密钥分发系统主动相位补偿方法[J].物理学报, 2010 (1)

[7]余旺科, 马文平, 王淑华.基于部署信息的无线传感器网络密钥预分配[J].华中科技大学学报 (自然科学版) , 2010 (11)

采用C#实现工资条自动分发 篇9

目前,大部分企业的工资发放采用银行代发的方式,只要把工资表提供给银行,银行进行相应的操作,直接把工资发放到员工的银行卡中。同时,部分企业执行薪酬保密制度,一方面员工需要及时了解自己每个月的薪酬的详细组成,另一方面企业还需要对薪酬采取保密措施。在当前的薪酬制度下,手工打印、人工分发工资条的方式,效率低下且容易出现人为失误导致泄密。

C#可以利用.NET Framework及其开发环境中的所有新特性,是微软公司新一代编程语言[1]。C#从C和C++演变而来,去掉了C++的许多复杂性,借鉴和修改了Java的许多特性,使其更容易使用、不易出错,是一种简单、现代、类型安全和完全面向对象的语言。

微软Office套件中的Excel电子表格软件是财务管理中经常使用的工具软件。

公司的工资条文件是由用友财务软件U8导出的xls格式文件。工资条xls文件导出后,经过简单排版、打印、裁剪后,纸质的工资条逐一分发到个人手上。由于采用人工方式分发工资条,加大了财务人员的工作负担并且容易发生错漏等情况。

2工资条自动分发程序

2.1 准备工作

使用Excel程序,整理由员工提供的电子邮件地址,保存成csv格式文件,命名为email.csv,并保存到本程序的启动文件夹下。以后如需增加、删除或修改员工的邮件地址,直接修改此文件即可。如图1所示。

将用友财务软件U8导出的工资表xls格式文件另存为csv格式待用。

2.2 邮件发送设置

发送工资条之前,需要进行邮件的发送设置:单击“工具”菜单的“选项”,显示邮件发送设置选项。设置完成后,按“保存”按钮,相关的设置将保存在config.ini文件中。如图2所示。

2.3 程序主界面

单击“文件”菜单下的“打开”,找到工资文件,并按“打开”按钮,显示程序的主界面,本程序的主界面如图3所示。如果显示的员工工资数据无误,按“发送邮件”按钮,即可实现工资条的批量邮件发送。

3 工资条自动分发程序的具体实现

3.1 邮件发送设置

C#可以利用Dll Import特性导入想要调用的DLL程序[2]。本程序调用kernel32.dll中的API:Get Private Profile String()和Write Private Profile String()实现config.ini文件的读写操作。首先,从kernel32.dll中导出函数的必要调用信息,然后封装为Ini RW类的Ini Write Value()和Ini Read Value()两个方法,关键代码如下:

下面的代码通过调用Ini RW类实例my Ini的Ini Read Value方法实现对ini文件的读操作。写操作Ini Write Value与读操作类似,不再赘述。为防止邮箱密码泄漏,config.ini文件中保存的邮箱密码部分使用3DES进行加密处理。具体实现的关键代码如下:

3.2 导入工资条数据

将csv格式文件导入Data Set,并将Data Set绑定为Data Grid View的数据源,实现工资数据的显示。具体实现的关键代码如下:

3.3 获得员工邮件地址和对应的员工工资数据

3.4 邮件发送

通过Smtp Client类的Send Async方法实现邮件发送[3],关键代码如下:

4 结语

通过导入csv格式工资表数据,采用发送邮件的形式实现了企业工资条的自动发放。工资条邮件的内容采用html格式,清晰美观。使用本程序可以避免由于人工操作可能导致的失误,提高了工作效率,使财务人员能方便快捷地完成工资条的发放工作。并且,通过对本程序的简单修改,还可以用于养老保险数据、考勤记录、考试成绩等的自动分发,实现更广泛的用途。

摘要:将电子邮件和电子表格相结合,利用C#开发工资条发放程序,解决了开发中的一些关键问题,对同类软件的开发具有一定的参考作用。

关键词:C#,电子表格,邮件,工资条

参考文献

[1]Christian Nagel,Bill Evijen,Jay Glynn.C#高级编程.清华大学出版社,2006.

[2]Tom Archer.C#技术内幕.清华大学出版社,2002.

远程教育数据分发的软件实现 篇10

1.1 文件的分包

其实把文件逐块送到缓冲区里就相当于把文件打成UDP包,包里的文件数据的实际大小就是缓冲区的长度,这里我们取缓冲区的长度为5000个字节。也就是先从文件里取出5000个字节送到缓冲区,等到套接口把缓冲区里的数据发送出去以后,就再取第二个5000字节到缓冲区里,直到把文件取完,然后再从头从新开始将文件切割打包传送,这样不停地循环,这就是轮播。下面是实现数据分割的源程序:

1.2 数据包的结构

现在已经把文件数据内容送到缓冲区,但还得加上别的信息才能发送,因为UDP是无连接,通信不可靠,只有应用程序自已解决传输可靠性问题,那么必须给数据包加上控制信息。

对于一个分成N个包的文件,前N-1个包的“文件数据长度”都是5000,只有最后一个包的“文件数据长度”可能不是5000,因为每个文件总的字节数不可能正好是5000的整数倍,这时就必须告诉接收端数据包中实际有用数据是多少字节,所以要加上“文件数据长度”这个控制信息。在网络传输时会有延时,而各个包走的路线又是不相同的,就有可能发生后发的数据包先到的情况,这里只有加上包的序号,接收端才能正确重组原文件,至于“文件名”“包的序号”也是必不可少的,接收端的很多处理都是根据这两个信息来完成的。

1.3 文件发送

文件打好包以后就可以将数据广播出去了,这要用CSocket类的发送函数来实现,操作如下:

1.4 接收端文件重组

大文件在传输时肯定会有包丢失,所以发送端如果只播一遍的话,根本就不可能在接收端正确完全的接收到发送端所传送的文件,所以这里才采用轮播的方式。但这里又引入了新的问题,一是,程序怎样知道哪些数据包是以前接收过的;二是,程序怎样来判接收何时结束。为了解决这两个问题,这里设置了AdjuvancyFile文件,这是接收端在接收数据时产生的一个辅助文件,用来记录数据的接收进度信息。

AdjuvancyFile的前8个字节放的分别是剩余的包数和包总数,其中剩余的包数是用来判断文件接收何时结束的,包总数可用来计算接收百分率。那么除这8个字节以外其余字节记录的是各数据包的接收状态,每个包的接收状态用1个bit位来表示,有以下两种情况:一是包已经收,那么这个包对应的bit位被置1;二是包还未收到,那么这个包所对应的bit位被0。一个字节有8bit,那么记录“接收状态”所需要的字节数=包总数÷8+1,"+1"是因为并不一定包总数能被8整除。为了进行位运算方便,将AdjuvancyFile文件最后一个bit位对应于第一个(序号为0)数据包,倒数第二个bit位对应于序号为1的数据包,以后对应的对应以此类推。如下为实现判断数据包是否已接收过的程序:

接收端重组文件时要根据包的序号来定位指针,定位这个指针就用fseek()函数,它的格式如下:

fp是文件指针,数字5是指针要移动的字节数,L表示5是个长整型数,第三个参数是指针移动的起点,

0表示从开头移动,1表示从当前位移动,2表示从文件尾移动。如果数据包序号是从0开始的,那么文件指针的定位,就用如下语句实现:fseek(fp,包序号×5000,0)。

2 结论

以上都是对于单线程传送的描述,用此方法所传送的单个文件的大小最大可达到2G,对于远程教育的需要来说,仅是单线程传送单个文件是不够的,本文要实现的是多个文件并播,但是只要解决了单个文件的问题,多个文件并播也就是以上的重复而已,这里就不再赘述。本软件的测试实验是在局域网的任两台主机上进行的。测试时,实现的是四个文件同时并播,服务器程序中的发送IP地址是本局域网的所有主机的广播地址,这样在一台机子上运行的服务器程序所发送的文件能被局域网上的任何一台主机所接收,只要它们都运行客户端程序。经过测试,本文的分发软件达到了即定的要求,传输准确可靠。

参考文献

[1]李媛媛.Visual C++网络通信开发入门与编程实践[M].北京:电子工业出版社,2008.

微小型无人机数据链分发系统研究 篇11

关键词:微小型无人机;数据链;数据分发系统;缓存算法随着科技信息时代的发展,无人机的研制取得了突破性的进展。根据美国国防部(DoD)发布的无人机系统路线图[1][2][3],无人驾驶飞机(简称 “无人机”)与其他武器相比有更好的优越性,具有低成本、低损耗、零伤亡、可重复使用和高机动性等诸多优势,在情报侦察中具有重要的作用。作为无人机核心技术之一的数据链传输系统是无人机系统的重要组成部分,用于完成对无人机的遥控、遥测、跟踪定位及传感器信息的传输,具有统一的消息格式和波形规范、传输距离远、传输速度快和系统容量大的特点,在未来的信息化战争中扮演越来越重要的角色。而体积小、质量轻、部署灵活、机动性好、成本低的微小型无人机(Mini—UAV)还没用完善的数据链设备,主要原因是缺少有效的数据分发系统,使得战场信息难以得到共享。本文提出一种数据分发策略,以完善微小型无人机数据链系统。

1 微小型无人机数据链系统模型

无人机数据链系统通常就是无人机测控系统。无人机数据链路系统框图如图1 所示。根据《无人机系统及作战使用》[4]按数据传输方向的不同可分为上行链路和下行链路。上行链路主要完成地面站至无人机的遥控指令的发送和接收,可用于传输地面操纵人员的指令,引导无人机按地面人员的指令飞行,并控制机载任务设备;下行链路主要完成无人机至地面终端的遥测数据,用于传送无人机的姿态、位置、机载设备的工作状态、当前遥控指令等,进行信息红外或电视图像的发送和接收以及跟踪定位信息的传输,并可用其来进行测距。

1.1 数据链设备

主要由测控管理器、发射机及接收机组成,测控管理器负责地面遥控与遥测数据的融合和处理,管理无线电发射与接收时序,使遥控与遥测同步协调工作。发射机和接收机由无线电测控电台及天线构成,无线电测控电台可采用双工数传电台,负责遥控指令的发射与遥测数据的接收。

1.2 机载设备

包括飞行控制器、传感器及执行机构,飞行控制器一方面收集、处理来自于各个传感器的飞行参数,并将数据打包发送给地面接收装置。另一方面接收来自于地面站的遥控遥测指令,译码后发送给执行机构执行,调整无人机飞行参数。

1.3 地面设备

包括图像显示设备和工程控制计算机、数据分发系统。工程控制计算机对所接收的遥测数据进行处理,而后由图像显示设备将处理后的数据进行显示,供地面操纵人员实时掌握和调整无人机的飞行状态,并通过数据分发系统组建战术局域网将数据图像传递给其他单位。

2 数据分发系统设计方案

在执行某一任务时,地面各单位往往需要协调配合,获取实时可靠的战场信息,并达到战场资源共享。应用微小型无人机系统,不仅要将无人机获取的数据、图像以及视频等信息准确传回地面控制站,还要将信息分发予指挥中心以及其他任务单位。这要求微小型无人机系统具有完善的数据链系统,其中重要的一环是数据分发系统的建立。

2.1 数据分发系统的设计思路

由于微小型无人机通信带宽有限,不能通过下行链路直接将数据、图像及视频信息传给到地面各单位。如果引进一种中间机制,将所要传的信息暂存于这一中间机构,并按照一定的机制进行更新,以保证在存储磁盘允许的范围内,保存大量有效信息。需要获取信息的部门单位根据一定的权限以及优先级通过统一的通信机制获取无人机信息,达到战场信息的共享,而不占用有限的无人机带宽。这一中间机构就是数据分发系统,它作为微小型无人机与各部队部门的中间环节,建立了强大的数据分发机制如图2 所示,地面控制站接收微小型无人机信号传递给数据分发器,由数据分发器与各单位计算机组建战术局域网,将信息分发到各参战部队,达到战场一体化。

2.2 数据分发系统的结构与工作原理

数据分发系统由数据分发器与数据接收器构成如图3所示。数据分发器由用户IP范围设置模块、分发任务管理模块、分发组件以及缓存服务器构成。用户IP范围设置模块用来控制接受服务的客户计算机,确定哪些用户能够接收到信息。分发任务管理模块将接收的无人机数据图像视频等信息暂存于磁盘,再根据需求从缓存服务器中提取储存信息传到收发组件,发送组件将数据流进行分块,本系统中按1000字节为单位进行分块发送,通过IP协议进入战术局域网,使需求单位进行接收,在此过程中分发任务管理模块可以暂停、恢复、终止数据传输。数据接收器用于接收战术局域网中的信息。通过收发组件接收局域网的数据流,进入数据流执行机构,通过分发操作系统,将数据、图像、视频等信息送达需求单位。

每一个分发任务都要经过数据分发前的连接准备阶段和数据分发阶段。在数据分发准备阶段,地面控制站工作人员需要设置好本次分发的目标单位IP地址段范围,确定服务权限。进入数据分发阶段,分发器向接收器发送一个“开始”指令,然后从存储区提取暂存的信息进行发送,数据流发送完毕后,分发任务管理模块发送一个“结束”通知。流程如图4所示。

2.3 关键技术

数据分发系统工作时,要实现信息实时可靠的传输,要求系统具有强大的数据分发能力以及缓存能力,用到的关键技术有邓永红提出的高速缓存技术及内容分发技术[5]。

(1)高速缓存技术

由于数据分发器存储空间限制,必须有选择地缓存以提高用户的“命中率”。系统采用“拉”方式,由缓存程序透明地自动缓存内容,内容优先级的判定采用最近最多访问算法的原则设计并对算法进行修改。用M表示数据分发器的磁盘容量上限,用T 表示数据分发器总的磁盘容量,用N表示当前数据分发器的磁盘容量,用F表示需要缓存内容的大小,用D表示规定的统计时间间隔。用AD(accessed degree)表示访问度,即D间隔内某一内容累计被访问次数。AD初始规定值为ADo。另外,设定数组Array,其中存放元素的数据结构如图5所示,将数据分发器中所有内容按AD值的大小由小到大排序后存放在Array中 (在D间隔内要不断更新Array)。算法简要描述如下:

nlc202309010105

① if(N+F)%T

缓存当前大小为F的内容;//当前有足够空间存储,不需耍删除内容//

else

② for(i=O;i< Array.length;i++)

{

if(Array[i].ADAdo的内容暂不删除//

{

if((N+F—Array[i]Js)%T

删除Array[i];

N=N—Array[i].fs;//修改数据分发器当前的磁盘容量缓存当前大小为F的内容//

break;

else

删除Array[i];

N—N—Array[i].fs;//修改数据分发器当前的磁盘容量//

continue;//继续向后删除//

}

else

缓存N 大小的内容;//将AD

break;

}

(2)内容分发技术

保持接收器和分发器的内容一致,同样是系统的关键问题。一种处理方式为分发器的内容发生变化时,向接收器发送一个更新版本。如果内容更新频率高于访问频率,则可能产生很多无用的数据流。另一种处理方式为使用失效标志。当一个内容发生变化时,向接收器发送一个失效标志。每个接收器再根据具体情况在最短时间内从分发器获取新版本。本系统采用两种机制结合的方式,基于用户的请求频率和文件的更新频率来决定使用那种方法,从而达到更好的分发效果。

(3)轮巡调度算法

在轮巡(RR)调度算法中,需要调度的信息被分解成为许多小的“单元”,并且在每个刷新周期内对其中的一个单元服务,周而复始。显然,轮巡调度可以使用优先级,虽然没有基于某些预先定义的优先级。算法存一些缺点,在系统存在很多信息需要传输时,它导致了一些不必要的相对较大的延时。式(1)给出轮巡调度算法的平均延时。从等式中我们可以发现它具有很好的“公平性”,因为平均等待时间与信息的长度成比例。

DRR=■(1)

其中ρ为信道利用率,X为信息的传输时间(等价于信息的长度)。

2.4 分发机制策略

微小型无人机数据分发过程中,根据任务的性质可将数据分发分为三种机制,分别是广播、多播以及点播。在执行大型任务时需要各单位协同配合,因此地面控制站需要把无人机信息以广播的形式传达到各单位,它们都对无人机捕获的信息有需求,设置IP为全网段。根据各单位的职能使命确定优先级,地面控制站与指挥中心建立最高优先级,再根据需要与其他单位建立不同的优先级。当某任务需要控制知情范围,要求只有特定参与单位才能获取分发的信息,则采用多播机制,指定IP段范围,控制知情范围。当地面站获取无人机信息时,各单位也可以向地面控制站发出申请,要求无人机信息服务,地面控制站收到申请后,根据进一步的判断决定是否向申请方分发数据,这时采用点播机制。可再用点播调度算法如轮巡调度算法实现。

3 结束语

随着战场任务的多元化、复杂化趋势,单一部门难以满足任务需求,需要各单位协同作战来应对复杂多变的战场情况。微小型无人机越来越受到青睐,而数据链是制约微小型无人机发展的重要环节,不仅要求建立无人机与地面控制站的可靠通信,而且要求将无人机捕获的信息实时准确的分发于各参展单位,然而现阶段微小型无人机还没有完备的数字化数据链系统,针对此问题笔者提出了数据链分发系统的解决方案,为建立完善的微小型无人机数据链提供了理论基础。

参考文献

[1] U.S. Department of Defense. Unmanned Systems Integrated Roadmap FY2011—2036.

[2] U.S. Department of Defense. Unmanned Systems Integrated Roadmap FY2009—2034.

[3] U.S. Army. Unmanned Aircraft Systems Roadmap 2010—2035.

[4] 魏端轩,李学仁.《无人机系统及作战使用》北京:国防工业出版社,2009,3.

[5] 邓永红.内容分发网络技术综述[J].有线电视技术,2005,12(13):15—20.

作者简介

罗卫兵(1969—),男,湖南,教授,博士。

杨钦诃(1987—),男,内蒙古,硕士。

陈娇叶(1989—),女,河南,硕士。

应用程序分发 篇12

指控信息系统的软件体系结构的发展主要经历了集中式、C/S (客户/服务器模式) 、三层体系结构、多层体系结构、分布对象、基于构件的体系结构等多种技术体制, 现有的指控信息系统中大多已经采用C/S技术体制, 在C/S体制中客户端和服务器端接口都是依赖于实现的, 即通过预先定义的协议进行通讯, 从而造成其软件的脆弱性, 适应外部需求变化的能力较弱。随着信息装备不断发展, 信息收集、处理能力不断提升, 战场信息种类日益增加, 同时, 由于各军兵种信息系统发展的不平衡以及信息系统的多样性, 战场信息格式呈现出多标准、多协议的局面, 造成未来网络中心战的信息壁垒, 因此迫切需要一套完善的架构方法, 以适应军事业务需求的变化, 实现系统灵活重组、快速部署和集成。这种架构方法称之为面向服务的体系架构 (Service Oriented Architecture, SOA) 。本文的第二部分简单介绍面向服务体系架构的基本概念和主要特点;第三部分将结合工程实践, 介绍某系统中运用面向服务架构实现信息分发的功能。

二、面向服务的体系架构概述

SOA的核心是“服务”, 即“服务提供者完成一组工作, 为服务使用者交付所需的最终结果”[1]。SOA基于三种角色 (服务提供者、服务注册中心和服务请求者) 通过三种操作 (发布、查找和绑定操作) 完成它们之间的交互。一般情况下, 服务提供者需要对服务进行一定的描述, 并把服务描述发布到服务注册中心。服务请求者通过查找操作从服务注册中心检索服务描述, 然后使用服务描述与服务提供者进行绑定并调用服务实现或同它交互。图1描述了这些操作、提供操作的角色及它们之间的交互。

SOA通过一系列规范将应用服务的描述进行标准化, 基于这些规范进行描述的应用服务能够独立于软件开发语言、操作系统和网络平台进行相互调用, 这使得构建在这样系统中的服务可以以一种统一和通用的方式进行交互[2]。松耦合系统具有极大的灵活性, 使客户系统总能使用当前最好的服务, 一旦某个服务出现故障或失败时, 可动态甚至是在不中断系统运行的情况下替换为另一个服务;当组成整个应用程序的某些服务的内部结构和实体逐渐发生变化时, 它能够继续存在[3]。这样就完全可以在服务请求模块不知不觉的情况下, 有不同的数据源来满足这个服务请求。另一方面, 新的数据源也可以去响应其它服务请求者提出的类似请求。总之, 采用面向服务的体系结构可以克服C/S技术体制的脆弱性, 提高系统的可连接性和协作性, 使系统具有良好的伸缩性和灵活性。

三、在工程中的应用

3.1基于C/S模式的信息分发。某区域信息组网系统要求具备信息分发的功能, 即用户通过系统认证成为合法用户, 然后自主进行定制, 系统采用按需、透明方式向用户提供信息, 实现“用户按需定制、系统自动分发”的功能。以前, 工程中采用的是基于C/S模式的信息分发, 即用户登录某一特定系统进行定制, 该系统为用户提供所需的信息。随着“以平台为中心”向“以网络为中心”的不断转变, 各区域组网系统将组成大区域组网系统。大区域组网系统将能够提供信息分发功能的各分系统或主机作为一个信息服务节点, 如果仍然采用现有的C/S模式, 将存在以下问题:

(1) 用户信息无法统一管理。受体制影响, 为落实责任, 信息服务节点独立管理各自的保障用户, 没有建立信息保障服务体系概念, 同一用户信息在大区域范围内得不到统一管理, 需要重复注册。

(2) 不能实现大区域统一定制, 用户需多点进行定制。受信息处理节点责任区域的制约, 用户在信息节点获取保障信息时, 不能满足跨区域遂行任务的需求, 用户需登录到不同的信息服务节点进行多次定制。

(3) 信息保障组织不灵活、信息服务不连续。目前系统受保障关系的影响, 信息用户和服务节点间维持着既定的保障关系, 不可随意动态调整, 当信息服务节点发生故障时, 用户必须得重新登录到其它节点进行定制, 造成对应的保障用户无法连续获取信息。

(4) 资源分配不合理、服务资源利用率低。信息服务资源是零散的、孤立的, 没有被统一地管理和调度, 没有形成体系化的服务能力。有些服务资源负载过高, 而有的服务资源非常空闲。有些服务节点负载过高, 有些服务节点没有负载。

针对以上原因, 迫切需要运用面向服务体系架构的思想, 来对大区域系统的信息分发软件进行重新设计。

3.2分布式信息服务体系。以信息栅格为基础, 可以做到节点间的关系扁平、组合随意、编成灵活、指挥高效、连接冗余、容灾抗毁, 提供全维一体化的态势信息共享支持[4], 层次化的、分布式的信息分发体系应运而生。

3.2.1软件架构。整个分布式信息服务体系的软件架构, 是由多个服务组成, 这些服务部署于服务管理中介和服务节点。图2表示了分布式信息服务体系的软件组成图。

核心层和运行支撑层是底层的硬件基础, 服务集成框架为服务提供者和服务调用者提供开发、集成、运行环境。

服务管理中介是核心服务层, 包含以下服务: (1) 用户管理服务:主要提供用户管理、用户权限分配等功能; (2) 资源注册服务:主要提供资源的登记、查找、维护等功能; (3) 资源发现服务:为各类资源的用户 (包括系统最终用户和系统开发者) 提供查询相关资源的接口, 使用户能够快速、准确的搜索到想要的信息; (4) 资源监视服务:主要负责对已提交的任务进行管理, 任务监视服务需要监视执行每个任务的服务节点的状态, 当发现服务节点出现故障时, 需要将分配给该服务节点的请求重新分配给其它可用服务节点; (5) 用户定制代理服务 (或门户服务) :提供了供用户进行操作的浏览接口, 这个服务不是面向开发人员的, 而是面向系统使用者的; (6) 信息定制服务:主要提供信息定制功能, 接收用户定制请求, 根据请求所需的资源, 分配到一个或多个服务节点进行服务。

信息分发服务是最终提供信息的服务节点, 可向用户提供所有按要求定制的服务。信息分发服务不直接接收用户的定制请求, 而是接收信息分发调度服务向其分配的服务请求, 然后向用户系统输出信息。孤立的信息分发服务不能形成完整的分布式信息分发体系, 它必须在信息分发调度服务的统一组织和管理下, 才能加入整个分发体系中, 与其它成员共同协作, 提供更加可靠和连续的信息服务。信息分发调度服务将零散的信息分发服务单元组织在一起, 统一管理和调度, 形成信息分发池, 实现资源的合理分配、动态调整, 由此提升信息分发服务整体效能。

3.2.2特点。分布式信息服务体系与以前的信息分发软件相比较, 具有以下几个鲜明的特点:服务分布式:一个用户请求能同时驱动多个资源工作, 同时连接到多个服务节点上, 由多个服务节点同时对一个客户请求进行信息服务。服务透明化:用户发出请求后无需关心信息服务的提供者是谁, 调度服务会根据资源分配原则, 调度合适的服务节点为其进行服务。服务连续化:中介要对所有服务节点进行监控, 当发现某个服务节点失效时, 需立即将该服务节点所担负的任务重新分配到其它服务节点。服务克隆化:在网格环境下, 用户系统也可以为其它用户请求进行服务, 服务的提供者和请求者界限不明显。服务和被服务是相对的, 同时也是分层的。这种方式如细胞克隆一样, 使得整个信息服务的计算能力将无限提升, 在理想情况下, 系统增加信息用户, 不但没有占用系统的计算资源, 反而在提升系统的计算资源。

由此3.1节中提到的问题均可以得到很好解决: (1) 用户信息统一管理。在大区域范围内, 用户信息只需注册一次, 无需重复注册, 实现一点注册大区域访问。 (2) 信息信息统一定制。在大区域范围内, 用户只需进行一次定制, 便可获取大区域态势, 无需多点定制, 实现一点定制大区域服务。 (3) 信息服务扁平化。信息服务关系不再受限于行政保障关系, 在权限允许范围内, 任何服务节点可以为任何用户提供服务。对用户系统而言, 整个组网系统是一个整体, 不是分散的、孤立的。 (4) 服务资源合理分配。信息服务关系不再由人工指定, 而是由调度软件进行统一管理和分配, 充分利用各个信息服务资源, 实现负载均衡、故障接替、服务连续。

四、结论

本文简要介绍了面向服务的体系架构, 并且基于SOA重新设计了面向服务的分布式信息服务软件。该软件已在某大区域信息组网系统中使用两年多, 常态化的为近百个用户按需分发信息, 系统稳定, 信息连续, 受到了用户单位的一致好评。

摘要:栅格技术在军事领域的应用是大势所趋, 基于面向服务架构的系统可以与基于栅格的系统无缝接合。本文介绍SOA的基本概念、特点及软件架构;并且结合工程实践, 对基于SOA的分布式信息服务体系作一些探讨。

关键词:面向服务体系架构,服务,信息分发,服务节点

参考文献

[1]万芳, 等.基于S O A的服务构建组合技术研究[M].昆明:第二十七届中国控制年会, 2008, 7:16-18.

[2]郭自忠.全球信息栅格关键技术分析[J].电子期刊, 2010, 2.

[3]李君灵, 等.综合电子信息系统面向服务的软件体系结构[J].系统工程, 2008.

上一篇:内外协同模式下一篇:两性差异