空间信息网络分布式存储方案研究
2019-06-25虞志刚薛斯达
张 平,赵 晶,虞志刚,薛斯达,陆 洲
(中国电子科学研究院,北京 100041)
0 引 言
近年来,随着经济全球化发展和我国国家利益拓展,天地一体化信息网络作为我国全球化信息保障的重要手段,逐渐成为研究的热点。2006年,沈荣骏院士首先提出了我国天地一体化航天互联网的概念及总体构想[1]。2013-2014年,工业和信息化部电子科学技术委员会组织了“天地一体化信息网络体系架构研究”重点课题,从发展战略、总体方案和关键技术等三个方面对天地一体化信息网络开展研究[2]。2013年和2015年,国内先后两次召开了天地一体化信息网络的高峰论坛,对凝聚国内天地一体化信息网络相关研究力量并形成统一的认识发挥了重要作用。2015年,张乃通院士发表了《对建设我国“天地一体化信息网络”的思考》[3],对天地一体化信息网络的定位、边界作了清晰的说明,并提出了网络基本架构的设想和对建设工作的建议。2016年,吴曼青院士发表了《天地一体化信息网络总体架构设想》[4],结合重大工程的建设需求对天地一体化信息网络的系统架构和技术体系做了深入的阐述。
图1 天地一体化信息网络架构
如图1所示,空间信息网络是天地一体化信息网络的核心要素和重要组成。空间信息网络由天基骨干网、天基接入网、地基节点网互联形成,并可与其它卫星通信系统、地面互联网、移动通信网等异构网系开放互联,为陆、海、空、天各类用户提供安全可靠的网络与信息服务。
天基骨干网由布设在地球同步轨道的骨干节点通过激光、微波链路组网而成,实现骨干互联和骨干接入功能,同时为天基、空基及地表用户提供全球中继与宽带接入服务。天基接入网由布设在低轨的接入节点构成综合低轨星座,提供全球移动通信、宽带接入及区域增强通信服务,以及航空/航海目标监视、数据采集回传等信息业务。地基节点网由多个骨干节点互联而成,具备互联天基骨干/接入节点、互联互通地面网络、支撑天地一体的运维管控和应用服务等功能。
空间信息网络涉及信息获取、处理、传输、存储和分发等各个环节,传统的基于地面存储信息的方式在信息获取的时效性和空间带宽利用、系统安全抗毁[5]等方面存在问题。随着空间组网和航天电子信息技术的不断进步,在卫星上部署信息处理和存储资源在技术和经济上都逐渐变得可行。为此,本文提出了一种基于空间分布式存储的信息系统方案,充分利用空间信息网络中的信息处理和存储资源,来提升信息获取的时效性,并减小对空间带宽资源的消耗。
1 背景情况分析
随着流媒体、高清电视、虚拟现实等技术的普及,网络中的信息呈爆炸式增长,信息的高效存储和分发成为一个研究热点。为了提升信息分发的效率,研究者相继提出了发布订阅模式、网络编码、内容分发网络等技术。
1.1 发布订阅模式
为了解决网络和用户动态性问题,满足用户多样化信息需求,研究者提出了发布订阅(P/S)模式[6,7]。发布/订阅通信模式定义了两类角色,分别是发布者(Publisher)和订阅者(Subscriber),其中发布者是信息的生产者,而订阅者是信息的消费者。两者通过网络中的事件服务器完成信息交互(称为事件)。
整个信息交互流程如图2所示:①发布者产生信息并发送给网络中的事件服务器,事件服务器记录信息的摘要和存储的位置;②订阅者向事件服务器发送订阅请求,请求中包含了订阅者感兴趣的信息主题;③事件服务器检索信息目录,找到匹配的信息并发送给订阅者。
图2 发布订阅模式
在发布订阅模式下,信息的发布者和订阅者不需要同时在线,也不需要知道对方的地址,从而实现发布者和订阅者在时间和空间上的完全解耦。
1.2 冗余备份技术
为了提升信息存储系统的可靠性,通常采用冗余备份的分布式存储系统,目前主要有复制和纠删码两种方式[8-10]。
复制方式是最简单的冗余策略,通过在信息存储系统中的多个节点存放多份信息副本,达到提升系统可靠性的目的。在某个节点发生故障时,会重新生成一份信息副本存储到新的节点中,保证系统中存储的副本数量不变。这种方式的缺点是需要消耗大量的存储和带宽资源。
纠删码方式的实现相对复杂,其工作原理如下:首先将源信息切分成k个数据块,接着对这k个数据块进行编码生成n个编码块,然后将这n个编码块存储到系统中的n个节点中,实现信息的分布式存储。在信息复原时,只需要获取n个编码块中的任意k个编码块就能够恢复出原始信息。采用这种方式,系统中的节点只需要存储源信息的部分编码块,在保证系统可靠性的前提下减少系统冗余存储开销。
1.3 内容分发网络
随着视频点播、在线课程等新业务的驱动,海量用户对相同内容的获取导致了网络带宽的大量消耗,并加剧了服务器的处理能力瓶颈问题。为此,研究者提出了内容分发网络[11,12]的概念,通过将内容部署到离用户尽可能近的节点,减少用户获取信息的时延,并降低网络带宽资源的消耗。
图3 内容分发网络示意
内容分发网络的技术原理如图3所示,整个系统包括一个中心服务器和若干个部署在网络边缘的内容缓存。信息流程如下:①用户向中心服务器发送内容请求;②中心服务器根据用户所在位置确定离用户最近的内容缓存节点,并将用户的请求重定向到该节点;③内容缓存节点收到重定向请求后,将缓存的内容发送给请求的用户。
通过将内容分布式部署到网络边缘的方式,内容分发网络可以极大的降低网络带宽资源的消耗,减轻中心服务器的压力,从而提升用户服务质量。
2 空间信息分布式存储系统设计
本节主要介绍空间信息存储系统的设计,分为基于地面存储方案和基于空间存储方案。
2.1 地面存储方案
在地面存储方案中,所有的信息处理和存储都在地面完成,空间节点(卫星)只是作为信息转发的通道。
基于地面的信息存储系统如图4所示,整个系统包括信源节点、信宿节点、信息服务中心、高轨节点和低轨星座等部分。其中信息服务中心位于地面,信源节点产生信息并发送给信息服务中心进行存储,信宿节点通过空间信息网络(由高轨节点和低轨星座组成)连接到信息服务中心,向信息服务中心发送信息请求并获取所需要的信息。
图4 地面存储系统
2.2 空间存储方案
在空间存储方案中,空间节点(卫星)具备信息的处理和存储能力,与地面协同完成信息发布、处理、存储和分发等各个环节。
图5 空间信息分布式存储系统
基于空间的信息分布式存储系统如图5所示,整个系统同样包括信源节点、信宿节点、信息服务中心、高轨节点和低轨星座等部分。其中信息服务中心位于地面,信源节点产生信息并发送给信息服务中心,信息服务中心完成信息的收集、记录和处理,并通过高轨节点将处理后的信息发送到低轨星座中进行分布式存储,信宿节点直接向空间信息网络(由高轨节点和低轨星座组成)发送信息请求并获取所需要的信息。
这种基于空间的信息分布式存储系统可以提高信息获取的时效性,并降低空间带宽资源的消耗,是本文研究的重点,下一节将针对这一系统给出具体的信息交互流程。
3 信息流程
在空间信息分布式存储系统中,有两种不同的信息存储策略,即复制和编码两种方式,下面分别介绍相应的信息流程。
3.1 基于复制的信息流程
参考发布订阅模式,可以将整个信息交互流程分为信息发布和信息接收两个过程。
信息发布过程如图6所示,主要步骤如下:①信源节点将原始信息发送给信息服务中心;②信息服务中心将原始信息发送至高轨节点;③高轨节点以广播方式将原始信息发送至低轨星座,低轨星座对原始信息进行存储。
图6 信息发布过程
信息接收过程如图7所示,主要步骤如下:①信宿节点向信息服务中心提出信息的请求;②信息服务中心根据信宿节点的位置,确定一个离信宿节点最近的存储有原始信息的低轨卫星,并将低轨卫星的位置信息反馈给信宿节点;③信宿节点根据信息服务中心反馈的低轨卫星位置信息,从低轨卫星上获取存储的原始信息。
图7 信息接收过程
3.2 基于编码的信息流程
基于编码的信息流程与基于复制的信息流程基本一致,只是增加了信息编码和信息解码两个过程。
在图6的信息发布过程步骤②中,信息服务中心需要对原始信息进行编码,再将编码后的信息发送给高轨节点。具体编码方式如下:
信息服务中心将原始信息按照重要程度分为n等级,分别记为C1,C2,…,Cn,并根据相应的等级分配数字K1,K2,…,Kn(1≤K1 MC=MO×G (1) 其中G={gp,q}(1≤p≤Ki,1≤q≤N)是一个Ki×N的矩阵,G的任意Ki×Ki子矩阵都是满秩的矩阵。 在图7的信息接收过程步骤②中,信息服务中心反馈给信宿节点的不是单颗低轨卫星的位置信息,而是根据信宿节点位置及原始信息等级,确定解码恢复原始信息所需要的低轨星座子集R。在步骤③中,信宿节点从低轨星座子集R中获取编码信息并解码恢复出原始信息。具体解码方式如下: 信宿节点根据低轨星座子集R从对应的Ki颗低轨卫星中获取Ki份编码信息,记为MR={MC,R1,MC,R2,…,MC,RKi},并进而解码恢复出原始信息MO。信息解码的公式如下: MO=MR×GR-1 (2) 其中GR={gp,q}(1≤p≤Ki,q∈R)是由G提取的Ki×Ki子矩阵。 基于前面两小节介绍的空间信息分布式存储系统和信息流程,本节对系统性能开展理论分析,并结合仿真进行验证。 基于图4和图5所示的网络场景,假设信源节点和信宿节点都在地面,低轨星座由N个节点(卫星)组成,低轨节点之间无星间链路。对于空间信息网络中的每一份信息,信源节点只有一个,而信宿节点可能有很多,这也意味着信息发布过程只需要一次,而信息接收过程可能存在多次。因此,信息接收过程是影响系统性能的主要因素,重点对以下两个指标进行分析: (1)接收时间TR:信宿节点从空间信息网络中获取信息并恢复出原始信息的时间,包括信息传播时间、信息处理时间和解码时间等,在空间信息网络中主要考虑信息传播时间,信息处理和解码时间可以忽略不计; (2)带宽消耗B:信宿节点接收信息消耗的空间信息网络带宽资源,考虑到不同长度链路消耗的资源不同,计算时采用链路长度加权后的结果,即: (3) 其中Vi和Li分别代表每段链路上传输的数据量和链路的长度。 下面分别就三个网络场景开展分析: 4.1.1地面存储方案 在该方案中,信息存储在地面信息服务中心,信宿节点需要从地面信息服务中心获取信息,分为三种情况: (1)信宿节点和地面信息服务中心在同一颗低轨卫星的覆盖范围内,此时可以通过低轨卫星中转完成信息接收,接收时间TR为: TR=Tc,l+Tl,d (4) 其中Tc,l为信息服务中心到低轨卫星的时延,Tl,d为低轨卫星到信宿节点的时延。 相应的带宽消耗B为: B=V*(Lc,l+Ll,d) (5) 其中V为原始信息大小,Lc,l为信息服务中心到低轨卫星的链路长度,Ll,d为低轨卫星到信宿节点的链路长度。 (2)信宿节点和地面信息服务中心不在同一颗低轨卫星的覆盖范围内,但在同一颗高轨卫星的覆盖范围内,此时需要通过高轨节点中转才能完成信息接收,接收时间TR为: TR=Tc,g+Tg,d (6) 其中Tc,g为信息服务中心到高轨卫星的时延,Tg,d为高轨卫星到信宿节点的时延。 相应的带宽消耗B为: B=V*(Lc,g+Lg,d) (7) 其中Lc,g为信息服务中心到高轨卫星的链路长度,Lg,d为高轨卫星到信宿节点的链路长度。 (3)信宿节点和地面信息服务中心在两颗不同的高轨卫星覆盖下,此时需要经过两颗高轨卫星的中转才能完成信息接收,假设与地面信息服务中心相连的高轨卫星为g1,与信宿节点相连的高轨卫星为g2,可以计算出接收时间TR为: TR=Tc,g1+Tg1,g2+Tg2,d (8) 其中Tc,g1为信息服务中心到高轨卫星g1的时延,Tg1,g2为高轨卫星g1到高轨卫星g2的时延,Tg2,d为高轨卫星g2到信宿节点的时延。 相应的带宽消耗B为: B=V*(Lc,g1+Lg1,g2+Lg2,d) (9) 其中Lc,g1为信息服务中心到高轨卫星g1的链路长度,Lg1,g2为高轨卫星g1到高轨卫星g2的链路长度,Lg2,d为高轨卫星g2到信宿节点的链路长度。 4.1.2基于复制的空间存储方案 在该方案中,信息未作处理直接以原始形式存储在低轨星座上,信宿节点从存储有原始信息的低轨卫星获取信息,分为三种情况: (1)存储有原始信息的低轨卫星在信宿节点可见范围内,此时可直接从该低轨卫星接收信息,接收时间TR等于低轨卫星到信宿节点的时延Tl,d,即: TR=Tl,d (10) 相应的带宽消耗B为: B=V*Ll,d (11) (2)存储有原始信息的低轨卫星不在信宿节点可见范围内,但该低轨卫星和信宿节点在同一颗高轨卫星的覆盖范围内,此时通过高轨节点中转可以完成信息接收,接收时间TR为: TR=Tl,g+Tg,d (12) 其中Tl,g为低轨卫星到高轨卫星的时延,Tg,d为高轨卫星到信宿节点的时延。 相应的带宽消耗B为: B=V*(Ll,g+Lg,d) (13) 其中Ll,g为低轨卫星到高轨卫星的链路长度,Lg,d为高轨卫星到信宿节点的链路长度。 (3)存储有原始信息的低轨卫星和信宿节点在不同高轨卫星的覆盖下,此时需要经过两颗高轨卫星的中转才能完成信息接收,设与低轨卫星相连的高轨卫星为g1,与信宿节点相连的高轨卫星为g2,可以计算出接收时间TR为: TR=Tl,g1+Tg1,g2+Tg2,d (14) 其中Tl,g1为低轨卫星到高轨卫星g1的时延,Tg1,g2为高轨卫星g1到高轨卫星g2的时延,Tg2,d为高轨卫星g2到信宿节点的时延。 相应的带宽消耗B为: B=V*(Ll,g1+Lg1,g2+Lg2,d) (15) 其中Ll,g1为信息服务中心到高轨卫星g1的链路长度,Lg1,g2为高轨卫星g1到高轨卫星g2的链路长度,Lg2,d为高轨卫星g2到信宿节点的链路长度。 4.1.3基于编码的空间存储方案 在该方案中,信息经过编码之后以编码信息的形式存储在低轨星座上,信宿节点从存储有编码信息的低轨卫星获取编码信息,并通过解码恢复出原始信息,假设恢复原始信息至少需要K个编码数据块,分为三种情况: (1)在信宿节点可见范围内低轨卫星数量不少于K,此时可从中选取K个离信宿节点最近的低轨卫星,从这些卫星上获取编码信息并解码,需要等K个编码数据块都接收完才能解码恢复出原始信息,因此接收时间TR等于最后一个编码数据块接收的时间,即: TR=max{Tli,d}1≤i≤K (16) 其中Tli,d为第i颗低轨卫星到信宿节点的时延。 相应的带宽消耗B为: (17) 其中Lli,d为第i颗低轨卫星到信宿节点的链路长度。 (2)在信宿节点可见范围内低轨卫星数量J少于K,但与信宿节点处在同一颗高轨卫星覆盖范围内的低轨卫星数量不少于K,此时信宿节点可从J颗低轨卫星直接获取J个编码数据块,同时从剩余的低轨卫星中选取K-J颗离高轨卫星最近的低轨卫星,经过高轨卫星中转从这些卫星上获取K-J个编码数据块,需要等K个编码数据块都接收完才能解码恢复出原始信息,因此接收时间TR等于最后一个编码数据块接收的时间,即: TR=max{Tli,d,Tlj,g+Tg,d}1≤i≤J,1≤j≤K-J (18) 其中Tlj,g为第j颗低轨卫星到高轨卫星的时延。因为低轨卫星到信宿节点的时延总是小于高轨卫星到信宿节点的时延,所以公式(18)可以简化为: TR=max{Tlj,g+Tg,d}1≤j≤K-J (19) 相应的带宽消耗B为: (20) 其中Llj,g为第j颗低轨卫星到高轨卫星的链路长度。 (3)在信宿节点可见范围内低轨卫星数量J,与信宿节点处在同一颗高轨卫星覆盖范围内的低轨卫星数量M,两者都小于K(J TR=max {Tlm,g1+Tg1,g2+Tg2,d}1≤m≤K-M (21) 其中Tlm,g1为第m颗低轨卫星到高轨卫星g1的时延。 相应的带宽消耗B为: (22) 其中Llj,g2为第j颗低轨卫星到高轨卫星g2的链路长度,Llm,g1为第m颗低轨卫星到高轨卫星g1的链路长度。 为了比较不同存储系统的性能,本小节将给出仿真的结果。 仿真场景设置如下: (1)1个信宿节点,位置可在全球任意地点; (2)1个信息服务中心,位于北京; (3)3个高轨节点,在地球同步轨道上等间隔分布(0°E,120°E,120°W),通过星间链路形成环网; (4)1个低轨星座,低轨卫星之间没有星间链路,在覆盖范围内可与信宿节点、高轨节点和信息服务中心建立连接,其中地面节点的仰角不小于20°,在仿真中选取了OneWeb星座(轨道高度1200 km,18个轨道面,每个轨道面40颗卫星,总共720颗卫星)作为代表。 4.2.1地面存储与空间存储方案比较 基本假设如下:在地面存储方案中原始信息存储在信息服务中心,在空间存储方案中假设每个低轨卫星都存储了一份原始信息(此时复制和编码两种方式没有区别)。为了体现上小节理论分析中的三种不同情况,信宿节点选取三个典型位置:北京、三亚和伦敦,仿真结果如图8和图9所示。 图8 地面存储与空间存储方案的信息接收时间比较 图9 地面存储与空间存储方案的空间带宽消耗比较 图8比较了地面存储和空间存储两种方案下的信息接收时间。在空间存储方案中,信宿节点直接从低轨卫星上接收信息,不管信息节点在什么地方,信息接收时间都只是一跳低轨卫星到地面的无线链路传播时延,考虑到地面仰角因素,时延约为4.4 ms。在地面存储方案中,因为信息存储在地面的信息服务中心,需要考虑信宿节点与信息服务中心的位置关系。信宿节点在北京、三亚和伦敦三个不同位置,分别与信息服务中心在同一颗低轨卫星、同一颗高轨卫星和不同高轨卫星的覆盖下,对应的时延约为12.7 ms、245 ms和495 ms。假设信宿节点的位置在全球随机分布,则地面存储方案的平均信息接收时间约为424 ms,相比空间存储方案的4.4 ms 增加了近100倍。 图9比较了地面存储和空间存储两种方案下的空间带宽消耗。为了便于比较,我们以V*1200 km(星地最短距离)为基本单位做了归一化处理。从图中可以看到,空间存储方案的空间带宽消耗平均为1.1个单位,而地面存储方案在三种情况下(信宿节点在北京、三亚和伦敦)的空间带宽消耗分别为3.2、61和124个单位,约为空间存储方案的3、56和113倍。平均而言,地面存储方案的空间带宽消耗为106个单位,将近是空间存储方案的97倍。 4.2.2复制与编码方案比较 在空间存储方案中,进一步比较基于复制和基于编码两种不同存储策略的性能。影响系统性能的主要因素是在空间存储的信息冗余量S,在复制方案中就是低轨星座中存储的原始信息份数,在编码方案中信息冗余量S与低轨卫星数量N和恢复原始信息需要的编码信息数量K相关,即: S=N/K (23) 在仿真中N=720,为保证S和K均为整数,选取S的值为{1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15, 16, 18, 20, 24, 30, 36, 40, 45, 48, 60, 72, 80, 90, 120, 144, 180, 240, 360, 720},仿真的结果如图10和图11所示。 图10 复制与编码方案的信息接收时间比较 图11 复制与编码方案的空间带宽消耗比较 图10比较了复制和编码两种方案下的信息接收时间。随着在空间存储的信息冗余量的增加,两种方案的信息接收时间都逐步减小。在复制方案中,信息接收时间基本随着信息冗余量平滑下降,S=1时为325 ms,S=720时减小到4.4 ms。在编码方案中,信息接收时间随信息冗余量的变化呈现阶梯状下降,S=1时为488 ms,S=2时急剧下降到278 ms,之后随着信息冗余量的增加缓慢下降,S=40时降到242 ms,接着又下降一个台阶,S=45时急剧下降到8.2 ms,之后在缓慢下降,S=720时降到4.4 ms。这种阶梯状下降的原因是编码方案需要等所有编码数据块都接收到之后才能解码恢复出原始信息,如公式(16)、(19)和(21)所示,信息接收时间取的是最长路径传播时延,两个阶跃点分别对应从三种不同情况的切换。从图中可以看出:在S≤40时,信宿节点直接可见的低轨卫星数量小于K,编码方案需要通过高轨卫星中转才能完成信息解码和恢复,信息接收时间为最长路径传播时延,所以复制方案的信息接收时间要优于编码方案;在S≥45时,信宿节点直接可见的低轨卫星数量大于K,不需要经过高轨卫星就可以实现信息解码和恢复,而复制方案因为原始信息在所有卫星中随机存储,存在一定的概率在可见范围内找不到原始信息,所以编码方案要优于复制方案。 图11比较了复制和编码两种方案下的空间带宽消耗。为了便于比较,我们同样以V*1200 km(星地最短距离)为基本单位做了归一化处理。随着在空间存储的信息冗余量的增加,两种方案的空间带宽消耗都逐步减小。信息冗余量S=1时,两种方案的空间带宽消耗B均为81.2单位,当S增大到720时,两种方案的空间带宽消耗仍然相同为1.1单位。其它情况下,编码方案的空间带宽消耗均小于复制方案,主要原因是编码方案总是选取离信宿节点最近的K颗低轨卫星获取编码信息,而复制方案由于信息存储位置的随机性有一定的概率需要从较远的卫星获取原始信息。 从图11可以看出,复制方案的空间带宽消耗随着S的增大平稳下降,而编码方案的空间带宽消耗有两个快速下降的突变点(S=2和S=45),分别对应两种情况:1)当S≥2时至多只需要通过一颗高轨卫星中转即可完成信息接收;2)当S≥45时可直接通过低轨卫星解码并恢复出原始信息。当S=2时,编码方案的空间带宽消耗为63.6单位,而复制方案为71.2单位,大约为编码方案的1.12倍。当S继续增大时,两者基本同步下降,差距维持在1-2倍之间。当S=40时,编码方案的空间带宽消耗为8.2单位,而复制方案为23.6单位,大约为编码方案的2.88倍。当S从40增大到45时,有一个突变,编码方案的空间带宽消耗从8.2急剧下降为1.7单位,而复制方案仅从23.6减小到22.8单位,其空间带宽消耗大约为编码方案的13.6倍,两者差距达到最大。原因是S=45时,K=16,而信宿节点直接可见的卫星数不小于17颗,所以编码方案不需要经过高轨节点就可以直接解码恢复出原始信息,而复制方案有一定概率需要通过高轨卫星中转才能获取原始信息,而通过高轨卫星中转的空间资源消耗约为直接通过低轨卫星的40-50倍。当S继续增大时,复制方案的空间带宽消耗继续平稳下降,而编码方案则维持在较低水平,最终两者趋于一致。 面向空间信息网络技术发展的趋势,本文提出了一种基于空间分布式存储的信息系统方案,并与传统的基于地面的信息存储方案做了比较。在基于空间存储的方案中,又分析比较了复制和编码两种不同的存储策略。通过理论分析和数值仿真可知,空间存储方案相比地面存储方案在信息接收时间和空间带宽资源利用方面有很大的提升,信息平均接收时间从424 ms降为4.4 ms,同时空间带宽资源消耗节省了近99%。对比复制和编码两种方案,当信息冗余量达到一定值时,编码方案的性能要优于复制方案,两者最大差距可超过10倍。4 系统性能分析及仿真
4.1 理论模型
4.2 仿真结果
5 结 语