首页> 中国专利> 一种基于智慧协同网络中的柔性数据传输系统

一种基于智慧协同网络中的柔性数据传输系统

摘要

本发明所述的基于智慧协同网络中的柔性数据传输系统,包括资源管理单元和网络组件单元,资源管理单元包括网络状态感知模块、网络状态测量模块和柔性传输模块,柔性传输模块基于网络状态感知模块获取的网络拓扑状态和网络资源更新状态,以及基于网络状态测量模块测量的网络状态链路最大可用带宽和时延信息,计算出K条最短的传输路径,并决策出最优传输路径。本发明在智慧协同网络控制平面的集中统一控制下,感知网络状态和网络组件行为,结合路由跳数、剩余带宽和链路时延等参数,进而决策出最优传输路径来满足服务资源的动态适配和传输,提高数据传输可靠性、网络吞吐量、资源利用率、实现链路负载均衡等以弥补最短路由方法的不足。

著录项

  • 公开/公告号CN108600102A

    专利类型发明专利

  • 公开/公告日2018-09-28

    原文格式PDF

  • 申请/专利权人 北京交通大学;

    申请/专利号CN201810271313.9

  • 申请日2018-03-29

  • 分类号H04L12/721(20130101);H04L12/729(20130101);H04L12/803(20130101);H04L12/26(20060101);

  • 代理机构11255 北京市商泰律师事务所;

  • 代理人黄晓军

  • 地址 100044 北京市海淀区西直门外上园村3号

  • 入库时间 2023-06-19 06:38:41

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-07-17

    授权

    授权

  • 2018-10-26

    实质审查的生效 IPC(主分类):H04L12/721 申请日:20180329

    实质审查的生效

  • 2018-09-28

    公开

    公开

说明书

技术领域

本发明涉及计算机网络技术领域,尤其涉及一种基于智慧协同网络中的柔性数据传输系统。

背景技术

随着互联网规模的不断扩大,用户数量和服务需求正在急剧增加。基于TCP/IP的传统互联网体系逐渐暴露出许多严重的弊端,如安全性差、移动性支持不足、可扩展性差、能源消耗高等问题。在现有网络体系中,网络路由设备控制层和数据层紧密耦合,其中,控制层负责路由设备中路由表项的计算和维护,而数据层则按照控制层下发的指令,在指定的出入端口之间完成数据的转发。控制层和数据层的紧密耦合在很大程度上限制了网络的扩展性和灵活性,难以实现网络中数据的柔性传输。

上述问题存在的根本原因在于现有网络具有“三重绑定”的特征,即服务的“资源和位置绑定”、网络的“身份与位置绑定”和“控制和数据绑定”。为解决上述问题,北京交通大学下一代互联网互联设备国家工程实验室在对未来网络架构研究中,提出了一种新型网络架构——SINET(SmartIdentifier Network,智慧协同网络),并创造性的提出了

“三层”、“两域”的网络总体架构模型。“三层”从上至下依次为智慧服务层、资源适配层和网络组件层,“两域”分别为实体域和行为域。在智慧协同网络中,通过对智慧服务层的服务机理和网络组件层的组件协同方法研究设计,将实体域中的问题转化到行为域,然后将行为域中的解决方案返回至实体域去执行,从而实现服务的查找和匹配、网络族群的选择及其资源动态适配和灵活传输。

在传统的TCP/IP网络中,路由设备通过自学习来维持自身的路由表。而在控制与数据分离的网络中,如较具有代表性的SDN网络,由于控制平面与数据平面的分离,交换机的路由转发功能则是根据流表来进行的。在SDN中,默认的路径计算方法是根据控制器获取到的全局网络状态,使用以跳数为度量单位的最短路径算法计算得到,从而完成数据传输。这种路径计算方法满足了数据传输的最短路径,但未考虑到链路剩余带宽、时延等其他因素。因此,极易存在某条链路被多条最短路径利用,而其余链路却处于空闲或低利用率等情况,从而造成网络拥塞、吞吐量不高和资源利用率低等问题。

针对当前SDN网络中默认路径计算模块存在的负载不均衡和服务质量QoS(Quality ofService,低等问题),现有技术一提出了SDN网络中基于业务划分的路由选择机制。因为网络中存在很多不同业务属性的流量,流量分布不均且具有突发性,所以该机制通过SDN控制器获取全局网络信息,基于感知功能对不同流量的业务进行划分。该机制通过合理分配底层网络资源,对时延要求较高的业务流会选择时延相对较小的路径,对丢包率要求较高的业务会选择丢包率相对低的路径,并且非实时类业务能够为实时类业务预留网络资源,从而为不同业务类型的数据流选择一条最能满足其QoS要求的最优路径,从而使整个网络达到负载均衡,提高网络资源利用率。

现有技术一虽然可以为不同类型的业务流选择一条满足其QoS的路径,但仍存在一些问题:

(1)网络中存在多种不同的服务类型,不同的网络流量对QoS的要求也大不相同,因此,对流量业务的划分没有统一的标准,极易造成划分不准确、影响数据传输等问题。

(2)对于不同类型的业务流量,其网络流量可能会对QoS具有相同的传输要求,此时在进行数据传输时,会存在多任务队列同时等待、网络拥塞等情况。

(3)该机制中将剩余带宽、丢包率、时延和链路利用率等参数进行归一化处理,然后根据网络数据选择一条权值最大的路径。该路径是该机制计算所得的最佳路径,但对于用户而言,该路径未必是最佳路径。

现有技术二提出了一种基于SDN的动态的路径负载均衡算法,通过计算当前网络的链路利用率,当感知到网络中有新的服务请求时,首先计算出当前源点到目的点的最短路径,接下来将有向图中的所有节点关系进行简化,从而实现对当前网络拓扑的简化,然后通过链路容量和当前链路利用率来计算链路负载,最后选择一条最优的路径,也就是当前链路负载最小的链路完成数据的传输。该方法在一定程度上实现了SDN网络中链路负载的均衡,提高了资源利用率。

现有技术二提高了SDN网络中的资源利用率,但在进行路径选择时仍存在一些问题:

(1)完成多条最短路径计算后,从中选择数据传输最优路径时只考虑了当前网络中链路利用率这一参数,并未考虑链路时延、网络链路可靠性等因素。

(2)虽然一定程度上实现了SDN网络中的链路负载均衡,但当网络中链路均处于工作状态时,当前链路利用率相对较小的链路容易造成数据排队等候等问题,从而造成网络拥塞。

(3)该技术适用于网络拓扑较简单、链路冗余较多的网络,对于大规模、拓扑较复杂的网络则略显僵硬,不易实施。

发明内容

本发明针对现有路由方法的不足以及在智慧协同网络中使用的局限性,提出了一种可根据当前网络状态和用户需求来进行智慧路径决策的柔性数据传输方法。该方法可在智慧协同网络控制平面的集中统一控制下,感知网络状态和网络组件行为,结合路由跳数、剩余带宽和链路时延等参数,在多条最短路径中决策出最优传输路径来满足服务资源的动态适配和传输,提高数据传输可靠性、网络吞吐量、资源利用率、实现链路负载均衡等以弥补最短路由方法的不足。

为了实现上述目的,本发明采取了如下技术方案:

本发明提供一种基于智慧协同网络中的柔性数据传输系统,包括资源管理单元和网络组件单元,所述资源管理单元与所述网络组件单元通信连接;

所述资源管理单元包括网络状态感知模块、网络状态测量模块和柔性传输模块,所述网络状态感知模块和所述网络状态测量模块分别与所述柔性传输模块通信连接;所述网络组件单元包括若干个相互通信连接的路由组件;所述网络状态感知模块、网络状态测量模块和柔性传输模块均与所述路由组件之间设有数据传输路径;

所述柔性传输模块基于所述网络状态感知模块获取的网络拓扑状态和网络资源更新状态,以及基于所述网络状态测量模块测量的网络状态链路最大可用带宽和时延信息,计算出K条最短的传输路径,并且决策出最优传输路径。

进一步地,所述网络状态感知模块包括拓扑发现模块、资源更新模块和处理模块,所述拓扑发现模块、资源更新模块和所述处理模块之间相互通信连接;

所述拓扑发现模块用于收集并解析网络组件信息和链路连接信息,从而获取拓扑连接状态信息;所述资源更新模块用于获取并触发式上报网络组件的最新连接关系和连接状态,所述处理模块用于封装和解析所述网络状态感知模块中的交互信息。

进一步地,所述网络状态测量模块包括网络流量监控模块和网络时延监测模块;

所述网络流量监控模块用于端口速率的获取以及流速率的获取,具体为:

首先,在资源管理单元注册下发统计信息和处理统计信息事件,分别用于下发数据请求以及对收到的回复报文进行处理,然后,资源管理单元下发统计信息请求报文,接着,网络组件在收到资源管理器下发的数据请求后开始进行信息统计,统计结束将回复报文上报至资源管理单元,最后,资源管理单元中的信息处理函数开始对所述回复报文中的数据进行解析并计算出链路剩余带宽;

所述网络时延监测模块用于对网络拓扑中各链路的时延进行监测,通过判断当前网络拓扑是否发生网络拥塞或故障,选择最佳的信息传输路径。

进一步地,所述资源管理单元通过安全传输通道将包含时间戳的链路层发现协议(LLDP)数据包下发到各个路由组件,随后,所述资源管理单元用接收到的回复报文中的时间戳与发送LLD数据包的时间戳相减,得到所述LLD数据包从下发到接收整个传输路径的传输时间,计算公式为:

其中,T1=T11+T12+T13,T2=T21+T22+T23,T1和T2包括资源管理器向相邻组件S1和S2下发数据包的时延T11和T21、数据包在相邻组件S1和S2之间传输的往返时延T12和T22、以及相邻组件S1和S2将信息上交至资源管理器的时延T13和T23。Ta和Tb分别表示资源管理单元到交换机的往返时延。

进一步地,所述柔性传输模块包括路径计算模块和路径选择模块,根据柔性传输方法在智慧协同网络中为客户端的任务请求选择当前最优路径完成资源的传输,该柔性传输方法包括以下步骤:

S1:智慧协同网络中的资源适配层对客户端的任务请求进行感知,动态适配资源,构建网络族群;

S2:判断所述网络族群中是否有新的任务请求,若有,执行S3,若没有,则继续转发并监听是否有新的任务请求;

S3:根据当前网络拓扑、可用带宽和时延,判断网络中的链路是否还可以承载新任务,若可以,则执行S4,若不可以,则收回当前任务所使用的网络族群资源,然后与新任务一起重新适配路由;

S4:根据当前网络拓扑计算出源点到目的点的K条最短路径,然后根据可用带宽和时延传输要求选择最佳路径完成任务请求的路由传输;

S5:判断资源传输是否完成,若完成,释放当前占用的网络族群,若没有结束,则继续转发并监听是否有新的任务请求。

进一步地,所述K条最短路径的计算方法是先计算出第一条最短路径,具体为:

S11:获取网络状态感知模块的网络拓扑图,并导入图中各节点;

S22:根据任务请求确定源点和目的点,设置计数变量标记源点;

S33:当标记节点数量小于网络拓扑图中节点总数时,取源点到当前i点最小的距离;

S44:继续查找与i点相连的节点,设置计数变量标记i点,最终确定源点到目的点的第一条最短路径。

进一步地,计算出第一条最短路径后,在第一条最短路径的基础上依次计算出其他的最短路径,具体为:

S10:将所述第一条最短路径的第一个点作为偏离节点;

S20:使用内外循环,在内循环中将所述偏离节点上已选的最短路径分支去掉,即设置其权值为正无穷;

S30:将路径计算结果保存到临时数据结构中,随循环进行,分叉点不断前进,直到目的节点前一跳,内循环比较;

S40:对数据结构中的路径排序,选出并保存最短路径;

S50:外循环继续,直到找到K条最短路径。

进一步地,在智慧协同网络中应用多头绒泡菌模型,完成K条最短路径中最佳传输路径的选择,具体为:

其中,Bij表示管道ij的可用带宽,Qij表示流量流经管道ij的速度,δ表示链路带宽使用率,Hij表示路由跳数,Tij表示等待处理任务数目,μ为幂数且μ>0,为单调递增函数,满足

由上述本发明提供的技术方案可以看出,本发明提出的基于智慧协同网络的柔性数据传输系统及方法,实现智慧协同网络中数据传输最优路径的动态选择并实现数据传输速率的最大化。一方面,智慧协同网络中的资源管理器通过感知当前网络连接状态和网络使用状态,完成多条最短路径的计算;另一方面,资源管理器在多条最短路径中选择出最优路径,实现更快的数据传输。相对现有SDN网络中的默认路径计算方法,该方法在避免网络拥塞、实现链路利用率的最大化和数据传输可靠性方面具有明显优势。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明所述柔性数据传输系统的结构示意图;

图2为本发明所述网络状态感知模块的结构示意图;

图3为本发明所述资源更新模块的触发更新事件类型汇总示意图;

图4为本发明所述网络流量监控模块的设计原理流程图;

图5为本发明所述网络时延监测模块的链路时延测量设计结构示意图;

图6为本发明所述柔性传输模块的设计原理流程图;

图7为本发明所述最短路径计算模块的设计原理流程图;

图8为本发明实施例的拓扑图。

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

为便于对本发明的理解,下面将结合附图以及几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。

本发明提出一种基于智慧协同网络中的柔性数据传输系统,包括资源管理单元(或称资源管理器)和网络组件单元,所述资源管理单元与所述网络组件单元通信连接;

所述资源管理单元包括网络状态感知模块、网络状态测量模块和柔性传输模块,所述网络状态感知模块和所述网络状态测量模块分别与所述柔性传输模块通信连接;所述网络组件单元包括若干个相互通信连接的路由组件;所述网络状态感知模块、网络状态测量模块和柔性传输模块均与所述路由组件之间设有数据传输路径;

所述柔性传输模块基于所述网络状态感知模块获取的网络拓扑状态和网络资源更新状态,以及基于所述网络状态测量模块测量的网络状态链路最大可用带宽和时延信息,计算出K条最短的传输路径,并且决策出最优传输路径。

本发明提出的在智慧协同网络中实现柔性传输时,资源管理器首先需要知道网络的状态信息,包括网络中各组件信息及其连接状态等。其次,需要知道网络中每条链路物理参数、剩余带宽和时延等。基于以上信息,通过在K条最短路径中选择数据传输速率最大的链路以及资源回收机制等,完成最优路径的选择,从而实现数据的传输。K条最短路径的计算一是为了方便选择出当前最优路径来作为传输路径;二是将其余K-1条路径作为备用路径,当传输路径出现故障时可完成路径的迅速切换,保证服务的正常传输,提高传输效率。

柔性传输系统的总体设计方案可如图1所示,网络状态感知模块和网络状态测量模块主要负责网络拓扑状态获取、网络资源更新的获取、网络状态链路最大可用带宽测量和时延信息的测量。柔性传输模块基于前两个模块获得的网络状态和测量数据,负责K条最短路径的计算以及其确定最终的最优传输路径。当网络中存在服务时,柔性传输模块可根据获取状态完成最优路径适配,如果在传输过程中传输路径发生故障,该模块可快速切换到其余备用路径,提高资源传输可靠性。

网络状态感知模块

所述网络状态感知模块包括拓扑发现模块、资源更新模块和处理模块,所述拓扑发现模块、资源更新模块和所述处理模块之间相互通信连接;

所述拓扑发现模块用于收集并解析网络组件信息和链路连接信息,从而获取拓扑连接状态信息;所述资源更新模块用于获取并触发式上报网络组件的最新连接关系和连接状态,所述处理模块用于封装和解析所述网络状态感知模块中的交互信息。

如图2所示,网络状态感知模块用来感知网络资源的实时变化,包括网络拓扑连接状态的变化,路由组件的接入或删除、接入主机的信息(包括IP地址和MAC地址)及其端口连接状态的变化等。拓扑发现模块和资源更新模块是感知模块设计中最主要的设计内容,对网络的正常运行至关重要。拓扑发现主要用来收集网络组件信息和链路连接信息等。在数据收集完毕后对数据解析,从而获取拓扑连接状态信息。资源更新模块负责发现网络中组件的最新连接关系和连接状态,并及时向资源管理器汇报更新信息,保证资源管理器掌握着当下最新的拓扑。拓扑发现模块和资源更新模块与数据平面的信息交互通过处理模块进行消息分封装和解析来完成。

拓扑发现模块

智慧协同网络中的资源管理器具有拓扑发现的功能。该系统中拓扑发现协议在传统网络中LLDP(Link Layer Discovery Protocol,链路层发现协议)基础之上进行改进,配合OpenFlow协议,减少资源的浪费。原理上来说,资源管理器对同一个交换机的不同端口分别发送数据包,当交换机端口数量是交换机数量的n倍时,将会导致很多资源的浪费。因此,本部分在设计资源管理器给交换机端口下发数据包时,将链路层发现协议中端口Port ID进行映射,这样消息下发时,就由原来的一个端口一条消息减少到了一个交换机下发一条消息。

资源更新模块

资源更新模块主要用来收集变化后的网络拓扑状态。在实际网络拓扑中,网络中的组件连接状态和链路状态是随时可能变化的。比如说,组件的IP地址是可以手动配置的,组件的连接状态也不是固定不变的。当网络中组件状态产生改变时,需要及时地将最新的拓扑连接和组件状态报告给资源管理器,实现及时更新来保证资源管理器中存储着最新的网络视图。网络组件向资源管理器报告网络视图更新主要包括主动查询、周期更新和触发更新三种方式,而在本发明中,采用触发更新方式。当新的路由组件接入或离开网络、新的主机接入到交换机端口、交换机原有端口断开连接、交换机端口发生修改、网络中有新的链路连接或原有链路连接被释放,上述事件中的任何一件发生时,都会主动触发资源管理器的更新。触发事件类型如图3所示。

网络状态测量模块

所述网络状态测量模块包括网络流量监控模块和网络时延监测模块;所述网络流量监控模块用于端口速率的获取以及流速率的获取,具体为:

首先,在资源管理单元注册下发统计信息和处理统计信息事件,分别用于下发数据请求以及对收到的回复报文进行处理,然后,资源管理单元下发统计信息请求报文,接着,网络组件在收到资源管理器下发的数据请求后开始进行信息统计,统计结束将回复报文上报至资源管理单元,最后,资源管理单元中的信息处理函数开始对所述回复报文中的数据进行解析并计算出链路剩余带宽;

所述网络时延监测模块用于对网络拓扑中各链路的时延进行监测,通过判断当前网络拓扑是否发生网络拥塞或故障,选择最佳的信息传输路径。

在互联网日益发达的时代,网络上承载着越来越多的业务,维护网络的稳定性也就变得至关重要。当网络发生故障时,需要能够快速定位到故障点,完成网络的修复。或者当故障发生时,资源管理器可以及时地知道链路故障,从而可以在链路修复之前重新规划传输路径,不影响链路上数据的传输,保障网络业务的通畅。在网络状态感知模块基础上,监测网络状态,计算链路剩余带宽和链路时延,并将此作为链路选择参数,方便最优传输路径的计算。

网络流量监控模块

链路中的剩余带宽在进行柔性传输路径选择时是重要的参考标准之一。在进行链路剩余带宽的计算时,首先,需要对网络中的链路容量进行获取,然后再对网络组件的每个端口的数据流入速率以及流的速率进行捕获,最后利用链路容量和端口的收发数据速率计算得到网络链路的剩余带宽。网络流量监控总体设计思路可由图4表示。

网络流量监控模块主要包括端口速率的获取以及流速率的获取。在该方法中,首先,在资源管理器中分别注册下发统计信息和处理统计信息事件,分别用来下发数据请求以及对收到的回复报文进行处理。然后,资源管理器下发统计信息请求报文,包括端口数据信息请求、数据流信息请求等。接下来,网络中的组件在收到资源管理器下发的数据请求后开始进行信息统计,统计结束将回复报文上交至资源管理器。最后,资源管理器中的信息处理函数开始对回复报文中的数据进行解析,计算出链路剩余带宽。

网络时延监测模块

在前面介绍的感知模块和流量监控模块中,可以获取到网络的最新网络视图、组件之间的连接状态,通过计算也可以获取到网络中各端口的速率,流速率、链路带宽及其剩余带宽等,这些为资源传输路径选择时提供了参考依据。通过对拓扑中各链路的时延进行监测,可以知道当前是否发生了网络拥塞,是否发生故障等。在进行服务信息的传输时,可根据用户需求来选择传输路径。

在智慧协同网络中,资源管理器可通过安全通道将包含时间戳的LLDP数据包下发到路由组件,然后用接收到回复报文中的时间戳与其相减,得到数据包从下发到接收整个路径的传输时间。可用公式(1)来表示:

如图5所示,T1=T11+T12+T13,T2=T21+T22+T23,T1和T2包括资源管理器向相邻组件S1和S2下发数据包的时延T11和T21、数据包在相邻组件S1和S2之间传输的时延T12和T22、以及相邻组件S1和S2将信息上交至资源管理器的时延T13和T23。当资源管理器收到路由组件上报的packet-in数据包时,会首先对上交的数据包进行解析,获得源端口和源组件标识,然后根据发送端口的数据解析到端口数据中的发送时间,最后利用当前时间减去发送时间,从而得到T1和T2。Ta和Tb分别表示资源管理器到交换机的往返时延,往返时延是指资源管理器到下发数据信息到组件的时延以及组件上交数据信息到资源管理器的时延。资源管理器到路由组件之间的往返时延的测量方法为:资源管理器向路由组件发送带有事件戳的请求报文,然后解析路由组件上报的回复报文,用当下时间减去数据部分解析的发送时间,因此也就可以获得往返时间差。最后利用公式(1)求得链路时延delay值。

柔性传输模块

所述柔性传输模块包括路径计算模块和路径选择模块,根据柔性传输方法在智慧协同网络中为客户端的任务请求选择当前最优路径完成资源的传输,具体为:

按照柔性传输方法工作机理,当客户端发起服务请求时,网络中的资源适配层可以根据服务请求和服务行为描述进行行为匹配然后选择网络转发族群。网络中会存在多种服务请求并存的情况,那么,当网络中同时有多个服务请求时,路由传输策略将会直接影响资源的传输效率和网络吞吐量。而柔性传输方法在智慧协同网络中则可以实现资源传输路径的灵活选择,为每种服务选择当前最优路径完成资源的传输。

如图6所示,柔性传输整体流程为:

步骤一:资源适配层对用户任务请求进行感知,动态适配资源,构建网络族群;

步骤二:判断网络族群中是否有新的任务请求,如果有,进行下一步,如果没有,则继续转发和监听任务命令;

步骤三:如果网络中收到新的任务请求,资源管理器则需要获取当前网络状态以及带宽、时延等数据,为下一步的判断提供决策数据;

步骤四:根据上一步获取到的数据信息,判断网络中的链路是否还可以承载新任务,如果可以,则进行下一步,若不可以,则收回当前任务所使用的网络族群资源,然后与新任务一起重新适配路由;

步骤五:根据网络拓扑等计算K条最短路径,然后根据可用带宽和链路时延传输要求选择其中的最优路径完成服务信息的路由传输;

步骤六:判断资源传输是否完成,如果完成,释放当前占用的网络族群,如果没有结束,则继续进行转发并监听是否有新的任务请求。

其中,K条最短路径的计算主要采用偏离路径算法。根据获得的当前网络视图和网络节点,采用Dijkstra算法计算第一条最短路径,然后采用偏离算法计算出其余K-1条最短路径。计算步骤可由图7表示。

步骤一:获取网络状态感知模块的网络拓扑图,并导入图中各节点;

步骤二:根据需求确定源点和目的点,标记源点,并设置计数变量;

步骤三:当计算数量小于拓扑中节点总数时,取源点到当前i点最小的距离;

步骤四:继续查找与点i相连的节点,并对i点进行标记;

步骤五:重复上述步骤,依次进行查找;

步骤六:最终确定源点到目的点的最短路径。

在计算出第一条最短路径p1后,在第一条路径的基础上依次计算出其他的K-1条最短路径。在求第i+1条路径时,将路径pi上除目的点之外的所有点都视为偏离点,分别计算从偏离点到目的点的最短路径,然后将计算出的最短路径与Pi上起始节点到该偏离点的路径进行拼接,从而求得第i+1条最短偏离路径。算法主要思想可表示为:

S1:利用Dijkstra算法选择第一条最短路径,保存为A;

S2:使用内外循环。在外循环中,变量k从1到k,在内循环中,以第k-1条也就是计算出来的前一条最短路径作为路径,从该路径的第一个点作为偏离节点,偏离节点之前的为当前路径与第K条路径相同的部分;

S3:将偏离节点上已选的最短路径分支去掉,也就是将其权值设置为正无穷;

S4:再运用Dijkstra算法将路径计算结果保存到临时数据结构B中,随循环进行,分叉点不断前进,直到目的节点前一跳,内循环比较;

S5:对数据结构B中的路径分别排序,从而选出最短路径,保存至A;

S6:外循环继续,直到找到K条最短路径。

最后,将P.Poly(Physarum Polycephalum,多头绒泡菌模型)应用到智慧协同网络中,完成K条最短路径中最优传输路径的选择。多头绒泡菌是一种单细胞多核粘菌类生物,能够轻易地找到各种环境下分散的食物源,且其觅食路径恰好是其与食物源之间的最短路径,并且其觅食管道会随着外界环境的变化而做出动态调整使其觅食路径趋于最优。P.Poly模型可表示为公式(2):

式中,i表示流量的源点,另一点j作为汇聚点,Qij表示流量流经管道ij的速度,Pi和Pj分别表示源点和汇聚点流体压力,ΔPij表示管道两端的流体压力差,rij表示管道半径,η表示管道内流体粘度,Dij=πrij4/8η表示管道流通性,Lij表示管道长度。

根据管道中流量总和不变以及管道流通性的反馈关系,可得适应性方程如公式(3):

式中,δ表示管道衰减率,为单调递增函数,在该模型中,管道中的流通性Dij会随着流量的减少而减少。

公式(3)可用来描述管道流通性随流量变化的趋势,可改写为离散化形式并表示为公式(4):

式中,λ表示时间间隔,δ为管道衰减率,为单调递增函数,通过流量和当前时刻的流通性计算出下一时刻的流通性,重复以上过程,直至达到稳定状态,使最短路径的流通性收敛到1,非最短路径收敛到0,实现最优路径的选择和Qij的最大化。

在P.Poly模型中,Dij表示管道流通性,迁移到网络中则可表示链路的传输能力,所以可用其来表示网络中路由组件i和j之间的链路可用带宽Bij。Lij为管道长度,在实际网络中,可用路由跳数Hij来代替,表示组件i和j之间需要的中转次数。ΔPij为管道两端的流体压力差,压力越大,则传输速度越快,因此可用路由节点中等待的队列数目Tij的倒数来代替,等待数目越多,则传输速度越慢,等待数目少,则传输速度快。将P.Poly数学模型迁移到网络领域中之后,从而可以将公式(2)转换为公式(5):

式中,Qij表示单位时间内链路ij的传输数据量。由公式(5)可以看出,i与j之间的链路流量与可用带宽成正比,与路由跳数Hij和等待处理任务数目Tij成反比。

在P.Poly模型中,Dij随着流体的变化而变化。同样的,在网络中,Bij也会随着网络中数据传输量的而变化。所以,可利用Bij(t)和Tij来实现最优路径选择,如公式(6)所示:

式中,δ表示链路带宽使用率,根据公式(6),可以根据路由跳数、链路剩余带宽和时延(等待任务队列数目)与服务需求进行匹配,实现最优路径的选择。

通过将P.Poly模型迁移到网络中,可以看出,当两点之间路由跳数Hij最小时,选择Bij/Tij最大的链路,则可实现链路之间流量Qij的最大化。接下来对该路径是当前环境下的最优路径进行证明。

设G={V,E}表示一个图,D={Dij,i,j∈E}拓扑中任意两节点间链路流通性,Q={Qij,i,j∈E}表示每条链路中的流量。当系统趋于稳定后,得到公式(7):

其中,得到公式(8):

转换计算后得公式(9):

因此,得到源点到目的点的压力差计算公式(10):

式(10)可以看出,源点到点k的压力差等于该源点到k的路径长度,且此时L应该为源点到k的最优路径。假设L不是最优路径,从而得到式(11):

因为Dij(0)>0,此时有Dij表示管道流通性,受限于链路带宽,所以Dij应是有界的,因此与Dij是收敛的相互矛盾,所以可以得到结论:不存在比路径L更优的路径,L是当前网络状态下的最优路径。

通过以上分析,该模型用于求解最优路径是有效的且是可收敛的。在该模型下,基于网络状态感知模块所感知到的最新网络状态、网络状态测量模块测得的端口速率和链路剩余带宽以及网络中的链路时延等数据,从而实现在计算出的K条路径中最优路径。根据当前网络状态和用户服务需求自主完成路由的适配和最优路径的选取,实现族群内最终路由组件的选择和更好的传输,最终实现智慧协同网络中的资源的柔性传输。

实施例

搭建如图8所示的拓扑,然后分别启动网络中不同的服务,利用wireshark抓包软件对各组件端口数据包进行捕获,然后分析当网络中存在不同服务种类时,每种服务的传输路径。

(1)实施例一:网络中存在一种服务时

假设客户机C1向服务器S1发起请求服务,S1通过转发族群向客户机C1提供服务。通过wireshark分别在端口N7-eth3、N7-eth4和N7-eth5对服务数据抓包并进行分析。结果表明只有在N7-eth5捕捉到了发往C1的数据包。N7-eth5与N4-eth2接口相连,路由组件N4到客户机C1只有一条单链路可以进行传输数据,所以资源管理器为(S1,C1)服务适配的路由为[N7,N4,N2,N1]。

(2)实施例二:服务路径发生故障时

当(S1,C1)服务在传输过程中,若链路发生故障,需要链路可以尽快恢复或者在最短时间内找到一条备用路径,来保证服务传输的稳定性和可靠性。在该柔性传输方法中,因为在进行服务传输之前路由适配阶段,资源管理器便计算出了K条最短路径,除了将最优路径下发给路由组件外,其余K-1条边保存在paths中,当链路断开,资源管理器便会将K-1条路径中的最优路径下发给路由组件,而无需再通过状态感知计算路径,一方面减轻了资源管理器的负担,另一方面也最大限度的减小故障对服务的影响。

通过上一步的功能测试得知当网络中只存在(S1,C1)这一种服务时的传输路径为[N7,N4,N2,N1],为了测试柔性传输方法中的容错性,本实施例在N7-eth5和N3-eth4端口进行抓包,当开始传输时,会在N7-eth5捕捉到到C1的数据包,然后断开N4与N7之间的链路,这时会服务传输会出现短暂的中断,但大约经过0.0055s之后,在N3-eth4端口捕捉到了发往C1的数据包,当最优传输路径发生故障时,柔性传输方法可以根据K条路径中的次优路径[N7,N6,N3,N1]进行传输,使系统具有良好的容错性。

(3)实施例三:网络中存在两种服务时

若网络中已经存在(S1,C1)服务,此时C2也向服务器S2发起服务请求,S2通过适配网络族群来向C2提供服务。因为[N7,N4,N2,N1]路径已经被(S1,C1)占用,那么资源管理器会根据当前网络状态进行最优路径的计算。通过在N7-eth3、N7-eth4、N7-eth5端口进行抓包,在N7-eth3端口捕获到了发往C2的数据包,因为路由组件N7和N6之间只有一条链路,所以可以确定S2发往C2的服务数据是通过路径[N7,N6,N3,N1]进行传输的,资源管理器为(S2,C2)服务适配路径为[N7,N6,N3,N1]。

(4)实施例四:网络中存在三种服务时

网络中已经存在(S1,C1)、(S2,C2)两种服务,此时C3向S3发起请求服务,S3通过转发族群为C3提供服务。因为此时路径[N7,N4,N2,N1]和[N7,N6,N3,N1]已经被使用,而(S3,C3)的最短传输路径为[N6,N3],在(S2,C2)进行服务传输时被占用。根据柔性传输方法,此时资源管理器会收回网络中的转发族群[N7,N6,N3,N1]可用的资源,然后为(S2,C2)和(S3,C3)重新适配路由。通过在N3-eth3和N3-eth4抓包进行分析,本实施例在N3-eth3捕获到了S2发往C2的数据包,在N3-eth4捕获到了S3发往C3的数据包,此时(S2,C2)路径为[N7,N5,N3,N1],(S3,C3)路径为[N6,N3]。当网络中存在三种服务时,柔性传输方法可尽最大可能的为每条服务提供最优路径,并且使链路利用率最大化。

如表1所示,将柔性传输方法在不同情况下的实施例进行总结。

表1服务种类与适配路径

综上所述,本发明针对现有路由方法的不足以及在智慧协同网络中使用的局限性,提出了一种可根据当前网络状态和用户需求来进行智慧路径决策的柔性数据传输系统及方法。该方法可在智慧协同网络控制平面的集中统一控制下,感知网络状态和网络组件行为,结合路由跳数、剩余带宽和链路时延等参数,在多条最短路径中决策出最优传输路径来满足服务资源的动态适配和传输,提高数据传输可靠性、网络吞吐量、资源利用率、实现链路负载均衡等以弥补最短路由方法的不足。

通过本发明,可解决现有网络中最短路由方法中存在的传输不够灵活、易发生拥塞等问题。本发明可通过网络感知模块感知到最新网络状态,并通过网络测量模块计算出链路剩余带宽及时延等,然后采用偏离路径算法和P.Poly模型智慧灵活的决策出最优的传输路径,实现服务资源更好的传输,从而提高传输效率、链路负载均衡性能以及传输可靠性。

本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号