一种基于软件定义网络的空间网络QoS保障方法及管理中心的制作方法
【专利摘要】本发明公开了一种基于软件定义网络的空间网络QoS保障方法及管理中心。基于软件定义网络的空间网络被划分为管理层、控制层和转发层,它包括一个自下而上的信息收集过程和一个自上而下的策略下发过程。其中,位于管理层的卫星网络管理中心是制定QoS保障策略的实体,QoS保障策略主要包括服务等级认证、流量调度和带宽分配三方面的结果,服务等级认证是按照服务等级划分标准对用户的不同业务请求进行区分的过程,流量调度为不同服务等级的数据流规划满足QoS需求的传输路径,带宽分配则在共享链路状态下提供基于优先级的按需带宽资源。此外,本发明还在控制层提供了网络状态监测的方法,它是卫星网络管理中心制定QoS保障策略的依据。本发明基于可控可管的软件定义网络,优化空间网络资源分配,实现空间网络的按需服务,达到QoS保障的目的。
【专利说明】
-种基于软件定义网络的空间网络QoS保障方法及管理中心
技术领域
[0001] 本发明设及互联网技术领域,特别是设及一种基于软件定义网络的空间网络QoS 保障方法及管理中屯、。
【背景技术】
[0002] 在现有的互联网中,存在一种基于软件定义网络和网络功能虚拟化的天地一体化 网络架构,它通过数据层面和控制层面解禪,网络功能和物理硬件解禪来提供可控可管的 信息传输W及按需的卫星服务,达到优化空间资源,提高信息传输效率,满足Q〇S(Quality of Service)需求的目的,适应未来空间网络的多元化发展。其中天地一体化网络架构的空 间网络部分架构如图1所示,空间网络被划分为管理层、控制层和转发层。转发层包括多层 卫星网络W及地面网络中的卫星网关,转发实体运行软件交换机,根据控制器下发流表中 的匹配行为进行包转发,低轨道化0W Earth化bit,LEO)卫星作为接入层直接与地面用户 交互数据,中轨道(Medium Earth Orbit,ME0)卫星和地球同步轨道(Geosynchronous Earth化bit,GEO)卫星覆盖接入层,承接从接入层传送来的数据,通过星间链路向对端的 地面用户转发。控制层包括空间控制器W及地面网络中的卫星网关控制器,空间控制器在 运个架构中由地球同步轨道卫星承载,它一方面负责把管理层的策略转换成流表传递给数 据层,另一方面通过南向接口监控卫星网络的状态(包括链路状态、网络流量等),然后把运 些信息发送给管理层,使得管理层对卫星网络有一个全局抽象的掌控。管理层的实体为卫 星网络管理中屯、(Satellite化twork Management Center,SNMC),它位于地面骨干网中, 负责网络状态与网络服务功能的注册与查询,为多种应用运行不同的模块,例如路由策略、 安全策略、资源管理和移动性管理。
[0003] 由于空间网络具有长时延、高误码率、连接频繁中断等特点,传统的TCP/IP协议找 不能适应运样复杂的网络环境,延迟容忍网络(DTN,Delay Tolerant化twork)架构是一种 可W在受限网络环境中实现有效通信的网络架构,适合应用在空间网络中。在DTN的设计架 构中,引入了一个面向消息的覆盖层,它位于0SI模型中的应用层之下、传输层之上,可W为 下层的各种不同网络环境提供统一的接口,满足各种网络环境中用户的传输需要。覆盖层 目前使用的是包裹层协议(Bundle Protocol,BP),具有持续存储能力从而抵抗网络中断导 致的丢包。DTN还在覆盖层之下引入汇聚适配传输层,充当传输层协议与BP协议的转换接 口,其中Licklider传输协议(Xicklider Transmission Protocol ,LTP)是最常用的汇聚适 配传输层协议。现有的DTN部署方式中,比较常用的是ION(Inte;rplaneta;ry Overlay Network),它是一款开源的DTN网络架构实现平台,使用的默认路由方式为CGR(Contact Graph Routing,CGR),链路的选择基于链路通断时间、链路速率、节点间时延等信息综合得 到。
[0004] 目前,空间网络中的QoS保障方法研究集中在数据链路层,研究无线资源的分配优 化。然而基于软件定义网络解决QoS保障问题考虑的不是信道上资源的优化,而是资源分配 的有效性和公平性。即在某个时间前提下,各个链路的资源是一定的,从用户的角度看,带 宽、时延、丢包率(抖动)运些服务质量参数是确定的,如何把运些资源最优化地分配给相应 的服务,满足不同等级服务的QoS需求。
【发明内容】
[0005] 本发明提供一种基于软件定义网络的空间网络QoS保障方法,该方法中策略制定 及下发的过程主要由卫星网络管理中屯、承载。首先该方法基于DTN架构W解决传统协议无 法适应空间网络复杂环境的问题,进一步主要解决的核屯、技术问题是针对空间网络中各种 业务的不同QoS需求,如何优化资源分配,进行按需服务W达到QoS保障的目的。
[0006] 为解决上述技术问题,本发明采用下述技术方案:
[0007] -种基于软件定义网络的空间网络QoS保障方法,如图2所示,该方法的步骤包括:
[0008] S1、对空间网络中的业务服务进行服务等级划分;
[0009] S2、基于服务等级的划分标准,对空间网络中的用户服务等级进行认证;
[0010] S3、利用ToS标签对不同服务等级标准的数据流进行标记;
[0011] S4、实时收集空间网络中的网络状态信息,并对网络状态信息进行监测;
[0012] S5、对空间网络中实时的网络状态信息进行分析,计算服务质量保障因子,并根据 该保障因子判断空间网络中每条链路所能提供的服务质量水平。
[0013] 优选地,所述步骤S1中所述服务等级划分为:常速率业务、实时业务、突发业务和 尽最大能力交付业务;四个等级的优先级关系为:常速率业务〉实时业务〉突发业务〉尽最大 能力交付业务。
[0014] 优选地,所述步骤3中基于D?数据包对ToS标签进行设置,具体的,
[001引在每个卫星节点上先区分出DTN流和普通TCP/IP流,再区分出存储流和转发流;
[0016] 基于存储流的目的地址为本地和转发流的目的地址为下一跳的特点,对存储流的 ToS值进行匹配,并对每个新产生的转发流重新添加一次ToS值。
[0017] 优选地,所述网络状态信息包括:链路延时、链路上的数据率和丢包率。
[0018] 优选地,所述链路时延的监测步骤包括:
[0019] 构建一个特定类型的时延探测包,发送至空间网络中;
[0020] 控制时延探测包的路径,实时记录当前时刻记下时间戳并存储;
[0021 ]计算链路时延Latency(si,S2);
,其中,Ttotai是 整个时延测量过程中的时间,7;是当前空间网络中采用控制器与交换机S1之间的往返时延 RTT,7;是当前空间网络中采用控制器与交换机S2之间的往返时延RTT,假设控制信道是对 称的,则单项的时延为RTT的一半,C是当前空间网络中采用控制器的校准值。
[0022]优选地,利用空间网络中链路端口状态信息,计算所述链路上的数据率bw_util:
岸中,po;rt_state_timeout是设定的一个端口状态 有效周期,A tx_bytes是有效周期中当前链路上发送的字节数。
[002引优选地,利用空间网络中链路端口状态信息,计算所述丢包率loss :
妻中,Δ tx_d;ropped是端口状态有效周期内发送队列丢弃的包 数目,Δ tx_packets是端口状态有效周期内发送的包数。
[0024] 优选地,所述步骤5中计算保障因子的步骤包括:
[0025] S51、预先设定与每个服务等级的ToS值相对应的加权系数ki,i = 1,2,3,并存储于 本地数据库,其中,41古2,1?古4分别是服务等级业务对于带宽、时延、丢包率和链路切换速 度的的敏感度,加权系数ki越大敏感度越高;
[0026] S52、基于当前获取的网络状态信息和相应服务等级的加权系数ki,设一条由li,i = 1,2,3···,η组成的路径P,计算路径P对于业务流的服务质量QoS需求的QoS保障因子:
,其中,Pt(li)是链路当前 数据率,Tt(li)是链路时延,Dt(li)是丢包率,max[v(li)]是卫星链路最大的切换速度,m是一 个常数,用于平衡时延、丢包率的大小对于保障因子的影响,m>l,因为时延、丢包率的值较 数据率会小几个数量级。
[0027] S53、根据保障因子的大小,判断此条链路的网络状态是否满足当前业务流的传 输。
[0028] 优选地,该方法进一步包括:S6、将服务质量保障因子作为权重,将空间网络数据 层的邻接矩阵作为计算最短路径的图,利用Floyd-Warshall算法计算最短路径,并根据该 最短路径进行流量调度。
[0029] 优选地,该方法进一步包括:S7、基于流量的调度结果,对共享带宽情况下的共享 链路的数据流进行带宽分配。
[0030] 优选地,所述步骤S7包括:
[0031] 将经过服务等级认证后到收到卫星网关的传输完毕信号前的数据流作为当前网 络中所传输的数据流;
[0032] 判断当前网络中并行流量的共享链路,并根据流量调度的结果对共享链路上的数 据流进行带宽分配。优选地,利用双向移动边界带宽分配方法为不同服务等级的数据流划 分带宽。
[0033] 优选地,在非共享带宽时不进行带宽分配,使数据流在链路上自由传输。
[0034] 一种用于制定空间网络QoS策略的卫星网络管理中屯、,该管理中屯、包括:
[0035] 服务等级认证模块,基于服务等级的划分标准,对空间网络中的用户服务等级进 行认证;若服务等级认证成功,则发出为该认证成功的用户的服务等级进行标记的标记信 号;若服务等级认证失败,则发出暂时拒绝该用户接入空间网络的拒绝标记信号;
[0036] 保障因子计算单元,对空间网络中实时的网络状态信息进行分析,计算服务质量 保障因子。
[0037] 优选地,所述保障因子计算单元执行:
[0038] 基于当前的网络状态信息和相应服务等级的加权系数ki,设一条由li,i = l,2, 3…,η组成的路径P,计算路径P对于业务流的服务质量QoS需求的QoS保障因子:
其中,Pt(li)是链路当前 数据率,Tt(li)是链路时延,Dt(li)是丢包率,max[v(li)]是卫星链路最大的切换速度,ki,i =1,2,3,4,为每个服务等级的ToS值相对应的加权系数,ki,k2,k3,k4分别是服务等级业务 对于带宽、时延、丢包率和链路切换速度的敏感度。m是一个常数,用于平衡时延、丢包率的 大小对于保障因子的影响,m>l,因为时延、丢包率的值较数据率会小几个数量级。
[0039] 优选地,该中屯、进一步包括:流量调度单元,用于利用Floyd-Warshal 1算法计算最 短路径,并根据该最短路径进行流量调度。
[0040] 优选地,所述流量调度单元包括:
[0041] 权重设定模块,获取待调度链路的保障因子,作为最短路径计算的权重;
[0042] 拓扑发现模块,获得当前空间网络数据层的邻接矩阵;
[0043] 最短路径计算模块,将服务质量保障因子作为权重,将空间网络数据层的邻接矩 阵作为计算最短路径的图,利用Floyd-Warshall算法计算最短路径。
[0044] 优选地,该中屯、进一步包括:带宽分配单元,用于在空间网络中存在共享带宽时, 对共享链路上的数据流进行带宽分配。
[0045] 优选地,所述带宽分配单元包括:
[0046] 判断模块,判断空前网络中当前是否存在并行流量,若有,则进行带宽分配,若没 有,则不进行带宽分配,使数据流在链路上自由传输;
[0047] 分配模块,根据流量调度的结果,对共享链路上的数据流进行带宽分配。
[0048] 优选地,带宽分配单元利用双向移动边界带宽分配方法为不同服务等级的数据流 划分带宽。
[0049] 本发明的有益效果如下:
[0050] 本发明所述技术方案在保证网络高利用率的同时,可W根据数据流的不同优先级 实现差别服务,从而为语音、视频等数据流提供有带宽保证的低延时、低丢包率的服务,优 化空间资源分配,实现网络的按需服务。
【附图说明】
[0051] 下面结合附图对本发明的【具体实施方式】作进一步详细的说明;
[0052] 图1示出本方案所述基于软件定义网络的空间网络架构的示意图;
[0053] 图2示出基于软件定义网络的空间网络QoS保障方法流程图;
[0054] 图3示出基于软件定义网络的空间网络QoS保障系统的示意图;
[0055] 图4示出本方案所述网络状态监控模块的时延探测帖结构示意图;
[0056] 图5示出本方案所述双向移动边界带宽分配方法的示意图;
[0057] 图6示出本方案所述DTN流量服务等级标识方法的示意图;
[0058] 图7示出本方案所述空间网络链路状态监控方法流程图;
[0059] 图8示出本方案所述一种基于QoS保障因子的流量调度方法的示意图;
[0060] 图9示出本方案所述一种空间网络共享链路带宽分配方法的示意图。
【具体实施方式】
[0061] 为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说 明。附图中相似的部件W相同的附图标记进行表示。本领域技术人员应当理解,下面所具体 描述的内容是说明性的而非限制性的,不应W此限制本发明的保护范围。
[0062] 本发明基于软件定义网络架构为空间网络提供一种基于软件定义网络的空间网 络服务质量QoS保障方案,本方案针对空间网络中各种业务的不同服务质量QoS需求,为其 提供相应的QoS保障策略。
[0063] 如图2所示,为本方案所述基于软件定义网络的空间网络QoS保障系统的示意图。 该QoS保障系统由管理层、控制层及转发层共同协作实现,如图中所示它包括一个自下而上 的信息收集过程和一个自上而下的策略下发过程。
[0064] 该系统中转发层包括Ξ层卫星网络架构W及地面网络中的卫星网关。Ξ层卫星网 络架构中的转发实体按照控制层下发的流表规则完成数据包的转发,并在收到控制层的询 问消息后,周期性地反馈它们的网络状态。卫星网关中包含服务等级标识和访问控制两种 服务,它根据控制层下发的策略使数据流经过相应的服务。
[0065] 控制层包括空间控制器和卫星网关控制器,空间控制器由GE0卫星承载,(GE0卫星 的角色分为控制层GE0和转发层GE0两种,前者用于承载控制器,后者参与数据转发)。控制 层GE0-方面负责把管理层的策略转换成流表传递给数据层,另一方面收集转发层的网络 状态信息,经过信息处理得到链路当前数据率、时延、丢包率等直接影响服务质量的参数, 再告知管理层。卫星网关控制器则根据管理层下发的策略,启用卫星网关中的服务功能并 在服务完成时告知管理层。
[0066] 管理层的卫星网络管理中屯、(S醒C)是QoS保障策略下发的核屯、,它的主要功能是 基于控制层告知的网络状态信息制定策略,QoS保障的策略包括Ξ个方面内容:(1)服务等 级认证;(2)流量调度;(3)带宽分配。服务等级认证的结果由測MC下发给卫星网关控制器, 若服务等级认证成功,卫星网关控制器调用卫星网关中的服务等级标识功能,为该用户的 数据流添加 ToS(Type of Service)标签;若服务等级认证失败,卫星网关控制器则控制数 据流经过卫星网关中的访问控制服务,暂时不接入空间网络。流量调度为不同服务等级的 数据流规划满足QoS需求的传输路径,带宽分配则在共享链路状态下按需提供基于优先级 的带宽资源,流量调度和带宽分配的结果由SNMC下发给控制层GE0卫星,管理层策略经过控 制层GE0卫星处理后,转换成流表的形式下发给转发层,转发层按照流表规则完成数据流转 发。
[0067] 本方案所述基于软件定义网络的空间网络QoS保障方法,如图3所示,具体包括如 下步骤:
[0068] S1、对空间网络中的业务服务进行服务等级划分;
[0069] 本方法把空间网络中的用户划分到四个服务等级(CoS,Class of Service)。具体 划分方法如下:常速率业务,它的网络性能需求最高,需得到高带宽、低时延和低丢包率的 业务体验,由此把运类业务划分到CoSl,优先级也是最高的,例如音频/视频应用;实时业 务,它对于时延运个性能指标要求很高,在不作出任何请求前就需得到空间网络的服务,把 运类业务划分到CoS2;突发业务,能够接受较CoS2高一些的时延,但是需要发送带宽请求, 带宽要求较CoS2高一些,此类业务划分到CoS3;尽最大能力交付业务,它所能获得的服务质 量体验完全取决于高优先级业务的资源占用情况,属于CoS4运个最低优先级。用户的服务 等级优先级由CoSl-CoS4递减。
[0070] S2、基于服务等级的划分标准,对空间网络中的用户服务等级进行认证;
[0071] 基于CoS划分标准,用户的服务等级需要有一个公平的认证过程。运个服务等级认 证模块被放置在SNMC中。首先地面骨干网中的用户向SNMC发送所需服务的QoS要求,S醒C通 过分析QoS需求来判定该用户的服务等级,并将结果告知卫星网关控制器。SNMC本地的数据 库中存储着相应等级的ToS值,与四个服务等级对应,ToS值分布在四个集合中tos_cosl、 tos_cos2、tos_cos3W及tos_cos4,在每一次服务等级认证时从相应等级的集合中选取一 个ToS值,同样一个值不可重复选择,由此即便是同一服务等级的用户也可W区分出来。卫 星网关控制器下发策略,调用卫星网关中的服务等级标识功能,指导卫星网关给该用户的 数据流贴上相应服务等级的ToS标签,并回应给控制器完成服务等级标识的信号。卫星网关 控制器收到该消息后,再回应SNMC,确认整个服务等级认证过程顺利完成。
[0072] S3、利用ToS标签对不同服务等级标准的数据流进行标记;
[0073] 在基于软件定义网络的空间网络中,依照CoS划分标准为不同CoS的数据流贴上不 同的ToS标签,如果仅仅通过匹配南向接口协议化enFlow的匹配元组ToS,数据层的卫星路 由器或交换机设备只能在第一跳区分出不同CoS的用户,因为空间网络应用了实现DTN架构 的I0N平台,数据包遵循存储转发的机制,在经过每一跳卫星节点后覆盖层W下都要分片重 组,而ToS标签位于IP头中,在分片重组的过程中会被重置,或者从本质上说因为化enFlow 技术的匹配元组只分布在二到五层,所W覆盖层W下没有稳定不变的可W被匹配的元组。
[0074] 本方案中,基于DTN数据包对ToS设置进行了特有的设计,使得ToS标签能够作为一 个连续稳定的标识,像识别因特网中的普通流量一样来识别不同等级的DTN包。其主要思想 是在每个卫星节点上先区分出DTN流和普通,再区分出存储流和转发流,存储流的 目的地址为本地,转发流的目的地址为下一跳,控制层GE0匹配存储流的ToS值,对于每个新 产生的转发流重新添加一次ToS值,由此下一跳的卫星节点在收到该数据包后,依旧能够根 据ToS来划分服务等级,从而做出正确的QoS保障策略。
[0075] S4、实时收集空间网络中的网络状态信息,并对网络状态信息进行监测;
[0076] 网络状态收集是QoS保障必不可少的环节,尤其是在空间网络中,拓扑变化频繁, 更需要实时地对网络状态进行收集。基于软件定义网络的QoS保障方法不同于传统网络架 构下的网络管理方式,它利用化enFlow技术完成网络状态收集,所收集的信息包括链路延 时、链路上的数据率W及丢包率。
[0077] 链路延时通过主动测量方式得到,需要构造一个特定类型的时延探测包,发送到 网络中。控制层GE0卫星需要控制时延探测包的路径,在相应时刻记下时间戳并存储起来用 于计算时延。首先创造出一个基本的W太网帖,使用广播地址作为它的目的地址,控制层 GE0端口的硬件地址作为发送此包的源地址。运个特定的包被定义为0x07c3的W太网类型, 它的负载有源端口号和包生成时的时间戳组成。如图3所示。控制器接着要求交换机S1通过 化cket-out中注明的一个特定端口把包发送出去,链路另一端的交换机S2找不到运个W太 网类型的流表条目于是通过化cket-in包的形式把它返回给GEOdGEO在收到0x07c3类型的 数据包后,调用链路状态监控模块而非转发模块,转发模块会默认对未知的包进行洪泛,监 控模块则能取出包并通过接收时间和负载中的时间戳计算出整个过程的时延。然后还需要 减去数据包在上下行链路上花费的时间。运个时间通过Stats-request和Stats-r邱ly消息 来得到。综上所述链路时延如式所示:
[007引
[0079] 其中,TtDtai是整个时延测量过程的时间,Tsi是控制器与SI之间的RTT,Tsi是控制器 与S2之间的RTT,假设控制信道是对称的,由此单向的时延为RTT的一半。C是控制器的校准 值,运个值是卫星节点处理时延探测帖的额外时延开销,不属于链路时延范围内。
[0080] 链路当前数据率W及丢包率的监测原理与时延类似,直接利用化enFlow消息中的 端口状态信息,端口状态结构体0FP_P0RT_STATS包括发送和接收到的包数目、发送和接收 到的字节数目、作为发送端和接收端丢弃的包数目等。利用运些信息便可W计算出当前链 路上的吞吐量和丢包率。
[0081]链路当前数据率如下式所示,po;rt_state_timeout t是设定的一个端口状态有效 周期;Atx_bytes是运个有效周期中当前链路上发送的字节数。
[0082]
[0083] 丢包率的计算如下式所示,Δ tx_hopped是端口状态有效周期内发送队列丢弃的 包数目,Δ tx_packets是端口状态有效周期内发送的包数目。
[0084]
[0085] W上网络状态信息的监控过程由控制层GE0完成,并周期性地将收集到的网络状 态信息告知S醒C,S醒C收到后会给予回应确认,并根据运些实时的网络状态信息,做出QoS 保障的策略。
[0086] S5、对空间网络中实时的网络状态信息进行分析,计算服务质量保障因子,并根据 该保障因子判断空间网络中每条链路所能提供的服务质量水平
[0087] 卫星网络管理中屯、在接收到控制层GE0告知的网络状态信息之后,需对网络状态 信息进行分析,判断空间网络中每条链路所能提供的服务质量水平。由于业务对于服务质 量的需求并不是单一的,需将多个QoS度量参数映射为一个单一参数,称为QoS保障因子,作 为链路状态的评判标准,如式:
[008引
[0089] 上式中,P是一条由li,i = l,2,3…,η组成的路径,Pt(li)是链路当前数据率,Tt(li) 是链路时延,Dt(li)是丢包率。运些参数值都与时间有关,它通过控制层GEO网络状态实时监 控模块得到,周期性地更新,由此QoS保障因子的值也与时间息息相关,符合空间网络的动 态性。41,1 = 1,2,3,4为事先设定的常数,通过赋予每个服务等级的流量不同的41,1?,1?^4 来计算每条链路的QoS保障因子,m是一个常数,用于平衡时延、丢包率的大小对于保障因子 的影响,m> 1,因为时延、丢包率的值较数据率会小几个数量级。
[0090] SNMC维护着一个本地数据库,把ki运个加权系数与ToS值的对应关系存储起来,在 为某个CoS数据流计算网络中链路的QoS保障因子时,便调用相应等级的ki值,ki,i = l,2,3 体现得分别是业务对于带宽、时延和丢包率的敏感度,取值越大敏感度越高。例如CoS2与 CoS3相比,对时延要求较高,对带宽要求则较低,由此CoS2的ki小于CoS3的ki,而CoS2的k2则 大于CoS3的k2,即对于同一条链路,带宽占用情况对于CoS3的影响大于CoS2,时延对于CoS2 的影响大于CoS3。而max[v(li)]是卫星链路最大的切换速度,运个参数可W通过卫星网络 星座切换周期、运动轨迹等来预测,也可由STK仿真得到的可见性分析结果计算得到,它会 影响到业务流的传输时延,所W-般情况下k4与时延的系数k2相同,一同体现业务对于时延 参量的敏感度。
[0091] QoS保障因子Ct(p)反应了路径P对于业务流的QoS需求满足情况,运个参数值越 大,说明此条链路的网络状态越有利于该业务流的传输,QoS保障越可靠,反之,此条链路的 网络状态不利于该业务流的传输。
[0092] S6、基于QoS保障因子的流量调度
[0093] QoS保障方法提供了流量调度功能,它实现的是空间网络中不同CoS业务的选路过 程,本质上是一种基于QoS最短路径算法,使用的是改进后的多点对多点的Floyd-Warshall 算法。流量调度功能由空间网络中控制层GEO和地面骨干网中SNMC协作完成。挪MC运行基于 QoS的最短路径计算模块,在获得GE0告知的网络状态信息之后,根据所认证的服务等级计 算QoS保障因子,该数值作为链路权重输入到最短路径算法中。而空间网络的拓扑状态也需 要由控制层GE0来提供,控制层GE0中运行了基于LLDP(Link Layer DiscoveiT Protocol, 链路层发现协议)的拓扑发现模块,可W得到一个空间网络数据层的邻接矩阵,告知SNMC, 作为最短路径算法的图输入到基于QoS的最短路径计算模块。最终SNMC能得到一条QoS保障 最优路径,运个结果仅仅包括路径中的卫星节点信息,它由SNMC传递给控制层GE0卫星。
[0094] 控制层GE0卫星需对原始路径进行加工,添加每一跳的入端口、出端口、源MAC地 址、目的MAC地址等更详尽的信息,组织好Flow-mod消息的match结构(流表匹配字段)和 action结构(流表动作字段),再发送给数据层的卫星节点,形成一条成熟的流量调度路径, 为不同CoS的用户提供QoS保障。控制层GE0卫星还维护着一个本地数据库,存储当前网络状 态周期内不同CoS对应的原始路径,即在网络状态收集结果没有改变的前提下,倘若本地数 据库中已有该CoS的原始路径结果,不再请求挪MC进行重复计算,直接询问本地数据库,降 低了不必要的通信和计算开销。
[00%] S7、基于流量的调度结果,对共享带宽情况下的共享链路的数据流进行带宽分配。
[0096] QoS保障方法还提供了带宽分配功能,为了保证单数据流的情况下能够体验最高 的带宽服务,在非共享带宽时不启用带宽分配模块,使数据流在链路上自由传输。为了判断 空间网络中当前是否存在并行流量,卫星网关在数据流完成传输后需要告知SNMC,SNMC认 为经过服务等级认证后到收到卫星网关的传输完毕信号前的数据流为当前网络中所传输 的数据流。根据流量调度模块的计算结果判断出当前网络中并行流量的共享链路,再对共 享链路上的数据流进行带宽分配。
[0097] S醒C中的带宽分配模块根据双向移动边界带宽分配方法来为不同CoS数据流划分 带宽。CoSl的常速率业务对带宽的要求比较大,设为qi,CoS2的实时业务和CoS3的突发性业 务对于带宽的要求基本一致,设为Q2,当qi和Q2分配给相关的应用之后,当前链路剩余的带 宽分配给尽最大能力交付的数据即q3 = B-qi-q2,即常速率应用和实时/突发性业务所请求 的带宽大小决定了中间尽最大能力交付数据可W分配到的带宽。如图4所示。当qi+q2<B时, 链路剩下的带宽提供给Q3;当qi+q2 = B时,q3 = 0,即不提供给尽最大能力交付的数据任何带 宽,进一步地当qi+Q2〉B时,先保证qi的带宽,链路上剩下的部分带宽尽力提供给Q2。在并行 流量传输过程中,各个队列的状态会动态地发生改变,例如当SNMC收到卫星网关的消息,被 告知CoSl等级服务完成,则删除qi队列,即qi = 0,带宽分配状态可能由qi+Q2〉B变化到qi+Q2< B,此时可改变带宽分配策略,为尽最大能力交付的q3提供带宽。
[009引 W上带宽分配策略由卻MC发送给控制层GEO,GEO卫星响应管理层下发的动态策 略,通过化enFlow协议能够控制数据层卫星节点的队列操作,包括添加、删除、修改队列配 置等。数据层卫星节点上承载的化en vSwitch(软件交换机)通过在每个端口建立HTB队列 的方式提供了带宽隔离的能力。在共享链路状态下,当GE0向交换机发送消息指定数据流从 某个端口转发时,也会指出是从该端口的哪个队列发送,运样虚拟网络之间的带宽得到了 隔离,达到了带宽分配的目的,为不同CoS服务提供了QoS保障。
[0099] 本方案中,位于地面骨干网中的卫星网关为空间网络提供两个服务功能,服务等 级标识和访问控制功能,运两个功能都需事先在SNMC中注册。前面已经提到,在S醒C完成服 务等级认证之后,由卫星网关控制器控制数据流经过卫星网关中的服务等级标识服务。而 当SNMC收集到当前网络状态后,分析得知在共享链路上已经没有预留的带宽资源供此服务 等级数据流传输,例如在qi〉B的情况下,需进入Q2队列的CoS2和CoS3等级数据流请求服务; 或者在qi+Q2〉B的情况下,需进入Q3队列的CoS4等级数据流请求服务,贝化醒C对于运些服务 等级请求的认证失败,下发接入受限策略给卫星网关控制器,卫星网关控制器控制运些数 据流经过卫星网关中的访问控制服务,暂且不进入空间网络,W免造成既不能为该服务提 供QoS保障,又加剧网络拥塞状态的后果。当S醒C收到的网络状态更新信息表明网络中的资 源空闲出来时,例如占据较大带宽的qi数据流完成了服务过程,该链路剩余带宽能分配给Q2 队列,贝化NMC通过CoS2和CoS3等级数据流的服务等级认证,重新下发策略给卫星网关控制 器,控制数据流经过卫星网关中的服务等级标识服务,随后进入空间网络传输。
[0100] 下面通过一组实施例对本发明做进一步说明:
[0101] 实施例一;
[0102] 本发明实施例一提供了一种基于软件定义网络的DTN流量服务等级标识方法,如 图5所示。首先根据RFC2474规定的DSCP差分服务代码点(Differentiated Services Code Point),选择可用的ToS值,在挪MC中规定好各个服务等级可选的ToS值集合。WToS取值为 120的CoS2为例,对于传统的W太网数据流,只需在卫星网关处为用户1的流量贴上ToS = 120的标签即可。但是本发明使用实现了 DTN架构的ION平台部署空间网络,鉴于DTN流量的 存储转发机制,ToS标签在经过每个I0N节点后,因为重新产生转发流而被清零。基于软件定 义网络的解决方案流程如下:
[0103] 步骤一:用户1向測MC发送所需服务的QoS请求,即时延最小,带宽次之的实时服 务,S醒C分析了用户1的QoS需求后认证他的服务等级为CoS2,下发策略到卫星网关控制器 (SG-C:Satellite Gateway Controller);如图5中的①和②所示。
[0104] 步骤二:SG-C收到标识T〇S=120的策略,控制用户1的数据流经过服务等级标识的 服务功能,为用户1的数据流都添上T〇s = 120的标签;如图5中的③和④所示。
[0105] 步骤用户1的数据流经过网关的协议转换,即由TCP/IP协议找转换到DTN协议 找,到达空间网络的第一个I0N节点,由于交换机brl中没有存储关于此业务的转发流表,需 W化cket-in消息的形式上交给控制层GE0卫星;如图5中的⑤和⑥所示。
[0106] 步骤四:控制层GE0卫星匹配到该数据包在传输层为目的端口号1113的UDP数据报 (汇聚适配传输层协议为LTP的DTN协议找流量),并解析到存储流的目的地址为本机,下发 Flow-mod消息,把该数据流存储在本地并把匹配域的ToS= 120运个信息存储起来;如图5中 的⑦所示。
[0107] 步骤五:ION节点根据目的地址重新产生了发往下一个ION节点的转发流,此时的 DTN数据流已不带有T〇S=120的标签,ToS值置零。同样地,由于交换机brl中没有存储有关 于此数据流的转发流表,W化cket-in消息的形式上交给GE0卫星;如图5中的⑧所示。
[0108] 步骤六:控制层GE0卫星通过判断源地址为本机解析到运个化Cket-in消息为I0N 转发流,下发Flow-mod消息,在动作域一律先把ToS值修改成步骤四中所存储的ToS值,再指 定正确的转发端口。如图5中的⑨所示。
[0109] 步骤屯:下一个I0N节点所收到的DTN数据流的ToS值为120,由此该节点也能够知 道当前用户所进行的是属于CoS2的实时业务。返回步骤二,继续此流程。如图5中的⑩所示。
[0110] 本发明实施例实现了 DTN数据流转发过程中ToS值的持续传递,确保了在空间网络 的QoS保障方法中,通过ToS来标记不同等级服务的有效性和可行性。
[01川实施例二:
[0112] 本发明实施例二提供了一种基于软件定义网络的空间网络链路状态监控方法。如 图6所示。
[0113] 步骤一:控制层GE0卫星发送封装了时延探测帖的化cket-out消息到数据层卫星, 在发送时记录下时间戳ti;
[0114] 步骤二:数据层卫星根据化cket-out消息中指定的转发端口把时延探测帖转发到 相邻的数据层卫星;
[0115] 步骤相邻的数据层卫星收到时延探测帖后,不知如何转发,所化cekt-in 消息发送到GEO卫星;GEO卫星收到封装了时延探测帖的化cket-in消息,此时记录下时间戳 ?2;
[0116] 步骤四:GE0卫星发送Stats-request消息到数据层卫星,记录下发送的时间戳t3;
[0117] 步骤五:GE0卫星收到第一个数据层卫星的Stats-r邱ly消息,记录下接收的时间 戳t4;
[0118] 步骤六:GE0卫星直接发送Stats-request消息到相邻的数据层卫星,记录下发送 的时间戳t5;
[0119] 步骤屯:GE0卫星收到相邻的数据层卫星的Stats-r邱ly消息,记录下接收的时间 戳t6;
[0120]步骤八:G E 0卫星根据W上步骤记录下的时间戳计算链路时延为:
,GE0卫星根据Stats-r邱ly消息中端口状态消息Po;rt-stats中的信息 计算链路当前的数据率W及丢包率。运是一个由控制器承担的信息处理过程。
[0121] 步骤九:GE0卫星将收集到的网络状态信息告知卫星网络管理中屯、SNMC,S醒C根据 实时的网络状态做出相应的决策。
[0122] 步骤十:S醒C在收到来自GE0卫星的网络状态信息后,向GE0卫星发送确认消息。
[0123] 步骤十一:经过一个网络状态监控周期后,回到步骤一,重复W上过程,并向S醒C 更新网络状态信息。
[0124] 实施例
[0125] 本发明实施例Ξ提供了一种基于QoS保障因子的流量调度方法,如图7所示。
[01 %] 从SG1接入的用户需要空间网络为它与从SG3接入的对端用户提供Co S1、Co S2和 CoS3运Ξ种不同服务等级的服务。设LEO-MEO层间链路的带宽为6Mbps,ME0层内带宽为 4Mbps dCoSI的带宽要求为3Mbps,CoS2的带宽要求为1.5Mbps,CoS3的带宽要求为2Mbps, CoS2时延要求比CoS3高。
[0127] S醒C首先认证了优先级最高的CoSl数据流,并为CoSl计算了一条QoS最优路径,调 用SG1中的服务等级标识服务,为CoSl数据流贴上tos_cosl的标签并根据流量调度模块的 计算结果,下发转发策略到数据层,使打上tos_cosl标签的数据流经过SG1-〉LE0-1-〉 ME0-2-〉ME0-3-〉ME0-4-乂 E0-3-〉SG3运条路径。此时数据层GEO卫星中的网络状态监控 模块会监测到运条链路上产生了数据率为3Mbps的数据流,并告知SNMC运个信息。
[01%] S匪C在收到网络状态更新信息的同时,为CoS2和CoS3的数据流制定流量调度策 略,此时CoSl数据流传输路径上的数据率会减小运条路径的QoS保障因子,但是对于CoS2的 数据流,流量调度策略的结果仍为SG1-〉LE0-1-〉ME0-2-〉ME0-3-〉ME0-4-〉LE0-3-〉 SG3运条路径。因为虽然按照双向移动边界带宽分配方法,CoS2和CoSl共同在运条链路上传 输时,CoS2只能被分配到1Mbps的带宽,不能满足1.5Mbps的原始带宽需求,但是由于它对时 延参量比带宽参量更敏感,跳数最少的路径的QoS保障因子仍较小,在运条路径上传输才能 保障它的时延需求。
[01巧]对于c〇S3的数据流,流量调度的计算结果为SG1-〉LE0-1-〉ME0-2-〉ME0-6-〉 MEO-7-〉ME0-8-〉ME0-9-〉ME0-10-〉ME0-5-〉LE0-3-〉SG3,显然该路径的跳数较多,时 延相对较大,但是由于CoS3的数据流的带宽要求较CoS2高,CoSl传输路径的QoS保障因子较 小,并不是最优的流量调度路径,因为倘若仍在最小跳数的路径上传输,只能被分配到 1Mbps的带宽,远小于CoS3的2Mbps带宽要求,传输速率必然无法得到保障,运相当于牺牲部 分时延性能来保证更高要求的带宽性能。运便是QoS保障因子作用的结果,W它为链路权重 的流量调度方法能够根据当前网络状态为不同服务等级的数据流提供满足QoS需求的传输 路径。
[0130] 实施例四:
[0131] 本发明实施例提供了一种空间网络共享链路带宽分配方法,如图8所示。
[0132] 下面阐述在可用带宽不同的路径上带宽分配的结果。在多层卫星网络作为数据层 的软件定义空间网络中,不同层间链路的可用带宽有较大差距。ME0层内链路的带宽为 4Mbps,而GE0层内链路的带宽为1Mbps。此时有Ξ条服务等级不同的数据流,分别为优先级 最高的常速率应用(CoSl)、优先级次之的实时业务(CoS2)W及优先级最低的尽最大能力交 付业务(CoS4),它们的带宽需求分别为0.8Mbps、0.4Mbps W及0.2Mbps,在共享链路上传输 的队列分别为qi、Q2和Q3。
[0133] 当运Ξ条数据流都在ME0层间传输时,即共享带宽为4M。按照优先级顺序设置qi队 列的最小带宽为0.8Mbps,再设置Q2队列的最小带宽为0.4Mbps,Q3队列的最小带宽为 0.2Mbps,显然,此时可用带宽能够同时满足运Ξ个等级的数据流带宽需求。剩下的带宽资 源暂且预留,倘若产生新的数据流,再按照带宽分配规则为相应等级的流量划分队列。
[0134] 然而,多层卫星网络中也存在数据流的转发不单单经过ME0层的情况。例如卫星链 路切换后在ME0层不具可达性,此时流量调度模块计算的结果是所有服务等级的数据流都 只能通过GE0转发层中继,而GE0层内链路的带宽为1Mbps。
[0135] 若Ξ条数据流同时在该链路上传输,由于带宽资源不够用会发生带宽抢占,带宽 需求为0.8Mbps的常速率应用只被分配到0.57Mbps的带宽,带宽需求为0.4Mbps的实时/突 发业务和0.2Mbps的尽最大能力交付业务分别被分配到0.3Mbps和0.15Mbps的带宽,反而是 带宽需求大的高优先级数据流受到的带宽限制较大。
[0136] 而S醒C根据双边界带宽分配方法对数据层队列进行设置,首先为优先级最高的qi 队列分配它所需的带宽0.8Mbps,再把剩下的0.2Mbps带宽分配给优先级次之的Q2队列。此 时已处于qi+Q2〉B的状态,不再为尽最大能力交付的Q3队列提供任何带宽。由于此时SNMC的 带宽分配计算结果不能为在队列Q3中传输的CoS4等级数据流提供任何带宽,S醒C对于CoS4 等级数据流的服务等级认证失败,它下发接入受限策略给卫星网关控制器,卫星网关控制 器控制CoS4服务等级的尽最大能力交付数据流经过访问控制服务,暂且不进入空间网络W 免网络造成拥塞。而在队列qi和Q2中传输的CoSl和CoS2数据流的服务等级认证成功,经过服 务等级标识服务之后,在空间网络中按照流量调度和带宽分配的结果在相应路径和队列中 正常传输。
[0137] 当qi队列传输完毕时,若Q2和Q3队列中的数据流尚未传输完,SNMC可根据控制层 GE0卫星告知的网络状态重新调整带宽分配策略,为当前优先级最高的Q2分配其所需的 0.4Mbps带宽,增大它的传输速率,由于qi+q2<B,S醒C也能为尽最大能力交付的Q3队列提供 0.2Mbp S的带宽,所W此时SNMC对于Co S4等级数据流的服务等级认证成功,重新下发策略给 卫星网关控制器,卫星网关控制器控制尽最大能力交付的数据流经过服务等级标识服务, 接入空间网络进行正常的传输,至此Q2和Q3队列中的业务流都能够按照QoS需求进行传输, 达到了QoS保障的目的。
[0138] 显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对 本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可 W做出其它不同形式的变化或变动,运里无法对所有的实施方式予W穷举,凡是属于本发 明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
【主权项】
1. 一种基于软件定义网络的空间网络QoS保障方法,其特征在于,该方法的步骤包括: 51、 对空间网络中的业务服务进行服务等级划分; 52、 基于服务等级的划分标准,对空间网络中的用户服务等级进行认证; 53、 利用ToS标签对不同服务等级标准的数据流进行标记; 54、 实时收集空间网络中的网络状态信息,并对网络状态信息进行监测; 55、 对空间网络中实时的网络状态信息进行分析,计算服务质量保障因子,并根据该保 障因子判断空间网络中每条链路所能提供的服务质量水平。2. 根据权利要求1所述的空间网络QoS保障方法,其特征在于,所述步骤S1中服务等级 划分为:常速率业务、实时业务、突发业务和尽最大能力交付业务;四个等级的优先级关系 为:常速率业务〉实时业务〉突发业务〉尽最大能力交付业务。3. 根据权利要求1所述的空间网络QoS保障方法,其特征在于,所述步骤3中基于DTN数 据包对ToS标签进行设置,具体的, 在每个卫星节点上先区分出DTN流和普通TCP/IP流,再区分出存储流和转发流; 基于存储流的目的地址为本地和转发流的目的地址为下一跳的特点,对存储流的ToS 值进行匹配,并对每个新产生的转发流重新添加一次ToS值。4. 根据权利要求1所述的空间网络QoS保障方法,其特征在于,所述网络状态信息包括: 链路延时、链路上的数据率和丢包率。5. 根据权利要求4所述的空间网络QoS保障方法,其特征在于,所述链路时延的监测步 骤包括: 构建一个特定类型的时延探测包,发送至空间网络中; 控制时延探测包的路径,实时记录当前时刻的时间戳并存储; 计算链路时延1^611〇7(81,82):,其中,Ttotal是整个 时延测量过程中的时间,&是当前空间网络中采用控制器与交换机81之间的往返时延RTT, &是当前空间网络中采用控制器与交换机82之间的往返时延RTT,假设控制信道是对称的, 则单项的时延为RTT的一半,C是当前空间网络中采用控制器的校准值。6. 根据权利要求4所述的空间网络QoS保障方法,其特征在于,利用空间网络中链路端 口状态信息,计算所述链路上的数据率bw_util:中,port_state_timeout是设定的一个端口状态有效周期,Δ tx_bytes是有效周期中当前 链路上发送的字节数。7. 根据权利要求4所述的空间网络QoS保障方法,其特征在于,利用空间网络中链路端 口状态信息,计算所述丢包率loss:1其中,Δ tx_dropped是端 口状态有效周期内发送队列丢弃的包数目,A tX_packets是端口状态有效周期内发送的包 数。8. 根据权利要求1或4所述的空间网络QoS保障方法,其特征在于,所述步骤5中计算保 障因子的步骤包括: 551、 预先设定与每个服务等级的ToS值相对应的加权系数ki,i = 1,2,3,4,并存储于本 地数据库,其中,1^,1?,1?,1^分别是服务等级业务对于带宽、时延、丢包率以及卫星链路切 换速度的敏感度,加权系数ki越大敏感度越高; 552、 基于当前获取的网络状态信息和相应服务等级的加权系数匕,设一条由h,i = l, 2,3…,η组成的路径p,计算路径p对于业务流的服务质量QoS需求的QoS保障因子:1其中,Pt( li)是链路当前 数据率,Tt(li)是链路时延,Dt(li)是丢包率,maX[V(li)]是卫星链路最大的切换速度,m是一 个常数,用于平衡时延、丢包率的大小对于保障因子的影响,m>l; 553、 根据保障因子的大小,判断此条链路的网络状态是否满足当前业务流的传输。9. 根据权利要求1所述的空间网络QoS保障方法,其特征在于,该方法进一步包括:S6、 将服务质量保障因子作为权重,将空间网络数据层的邻接矩阵作为计算最短路径的图,利 用Floyd-Warshall算法计算最短路径,并根据该最短路径进行流量调度。10. 根据权利要求9所述的空间网络QoS保障方法,其特征在于,该方法进一步包括:S7、 基于流量的调度结果,对共享带宽情况下的共享链路的数据流进行带宽分配。11. 根据权利要求10所述的空间网络QoS保障方法,其特征在于,所述步骤S7包括: 将经过服务等级认证后到收到卫星网关的传输完毕信号前的数据流作为当前网络中 所传输的数据流; 判断当前网络中并行流量的共享链路,并根据流量调度的结果对共享链路上的数据流 进行带宽分配。12. 根据权利要求10所述的空间网络QoS保障方法,其特征在于,利用双向移动边界带 宽分配方法为不同服务等级的数据流划分带宽。13. 根据权利要求10所述的空间网络QoS保障方法,其特征在于,在非共享带宽时不进 行带宽分配,使数据流在链路上自由传输。14. 一种用于制定空间网络QoS策略的卫星网络管理中心,其特征在于,该管理中心包 括: 服务等级认证模块,基于服务等级的划分标准,对空间网络中的用户服务等级进行认 证;若服务等级认证成功,则发出为该认证成功的用户的服务等级进行标记的标记信号;若 服务等级认证失败,则发出暂时拒绝该用户接入空间网络的拒绝标记信号; 保障因子计算单元,对空间网络中实时的网络状态信息进行分析,计算服务质量保障 因子。15. 根据权利要求14所述的卫星网络管理中心,其特征在于,所述保障因子计算单元执 行: 基于当前的网络状态信息和相应服务等级的加权系数lu,设一条由= 成的路径P,计算路径P对于业务流的服务质量Q 〇 S需求的Q 〇 S保障因子:,其中,Pt(li)是链路当前 数据率,Tt(li)是链路时延,Dt(li)是丢包率,maX[V(li)]是卫星链路最大的切换速度,ki,i =1,2,3,4,为每个服务等级的ToS值相对应的加权系数,分别是服务等级业务 对于带宽、时延、丢包率以及链路切换速度的敏感度。m是一个常数,用于平衡时延、丢包率 的大小对于保障因子的影响,m> 1。16. 根据权利要求14所述的卫星网络管理中心,其特征在于,该中心进一步包括:流量 调度单元,用于利用Floyd-Warshall算法计算最短路径,并根据该最短路径进行流量调度。17. 根据权利要求16所述的卫星网络管理中心,其特征在于,所述流量调度单元包括: 权重设定模块,获取待调度链路的保障因子,作为最短路径计算的权重; 拓扑发现模块,获得当前空间网络数据层的邻接矩阵; 最短路径计算模块,将服务质量保障因子作为权重,将空间网络数据层的邻接矩阵作 为计算最短路径的图,利用Floyd-Warshal 1算法计算最短路径。18. 根据权利要求16所述的卫星网络管理中心,其特征在于,该中心进一步包括:带宽 分配单元,用于在空间网络中存在共享带宽时,对共享链路上的数据流进行带宽分配。19. 根据权利要求18所述的卫星网络管理中心,其特征在于,所述带宽分配单元包括: 判断模块,判断空前网络中当前是否存在并行流量,若有,则进行带宽分配,若没有,则 不进行带宽分配,使数据流在链路上自由传输; 分配模块,根据流量调度的结果,对共享链路上的数据流进行带宽分配。20. 根据权利要求18所述的卫星网络管理中心,其特征在于,带宽分配单元利用双向移 动边界带宽分配方法为不同服务等级的数据流划分带宽。
【文档编号】H04B7/185GK106059960SQ201610348299
【公开日】2016年10月26日
【申请日】2016年5月24日
【发明人】周华春, 叶玥, 李泰新, 李观文, 徐琪, 李光磊, 张宏科
【申请人】北京交通大学