掌桥专利:专业的专利平台
掌桥专利
首页

一种对网络进行配置的方法和设备

文献发布时间:2024-04-18 19:53:33


一种对网络进行配置的方法和设备

本申请要求是于2019年10月16日提交的申请号为201910985050.2、发明名称为“一种对网络进行配置的方法和设备”的中国专利申请的分案申请,其全部内容通过引用结合在本申请中。

技术领域

本申请实施例涉及通信技术领域,特别涉及一种对网络进行配置的方法和设备。

背景技术

在现有网络的运行过程中,可能需要依据与发送端签订的用户流量合约发送流量,对流量发送的平均速率和突发大小等进行约束。然而,有时发现流量的发送难以100%或高度遵从用户流量合约。此时,需要网络入口整形器(英文:ingress shaper)限制出口处的入网流量,保证入网流量满足一定的流量限制,从而避免因流量超发而导致的流量传输过程中的网络拥塞,或者避免由于数据流传输速率起伏较大而导致的不合理流量抖动。

随着通讯技术的持续升级,特别是伴随5G网络技术的发展,一些业务场景的高可靠性低时延需求愈发强烈。例如,为了满足5G超高可靠超低时延通信(英文:5G for Ultra-Reliable Low Latency Communications,5G URLLC)的业务需求,承载网络需要提供有界的数据面存储转发时延。现有的网络整形器主要用于限制流量的平均带宽,并且整形器的输入参数主要依据如用户流量合约等要求确定,参数设置相对固定,或仅基于经验进行一定的人工干预调整,无法很好地适应网络的实际需求。

发明内容

本申请实施例提供了一种对网络进行配置的方法和设备,通过考虑数据流量传输时对业务时延约束的满足性,据此配置整形器参数,以保证流量传输更好地、更灵活地适配业务场景需求,提升网络服务质量。

第一方面,本申请实施例提供了一种对网络进行配置的方法,所述方法确定数据流量在两个端部节点之间的端到端时延上界;确定所述数据流量在所述两个端部节点之间的端到端时延约束;基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数;基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。

本申请在考虑数据流量传输对端到端时延约束的满足性的基础上,据此配置整形器参数,能够尽可能避免网络中因传输所述数据流量导致的网络拥塞,避免发生丢包,并且更好地适配业务场景需求,提升网络服务质量。

在一种可选的设计中,所述端到端时延上界被表示为时延上界函数,所述确定数据流量在所述两个端部节点之间的端到端时延上界包括:通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。

在一种可选的设计中,所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。

在一种可选的设计中,在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。可选地,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。可选地,确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。

本申请通过网络演算算法确定诸如基于时间异步调度策略的网络中的端到端时延上界,并在所述端到端时延上界满足所述端到端时延约束的条件下确定整形器的配置参数,以避免因时延导致的网络拥塞和数据丢包。

在一种可选的设计中,确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。

本申请通过对用于各转发节点的网络整形器进行参数配置,实现对各转发节点的逐跳规范,尽可能避免因延累加而造成在某个转发节点的流量突发,避免导致拥塞丢包。

在一种可选的设计中,根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界;基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。

本申请基于网络演算算法确定的缓存上界,可以为各个转发节点配置合理的缓存空间,从而尽可能避免流量在传输过程中因时延导致的拥塞。

在一种可选的设计中,所述基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:确定所述端到端时延上界满足所述端到端时延约束;在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。

在一种可选的设计中,所述为第一网络整形器确定满足所述端到端时延约束的所述一个配置参数为发送周期,所述第一网络整形器的其他可配置参数还至少包括:在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度。

本申请能够基于各个转发节点的单点有界时延,确定数据流量整形输出时应满足的时延约束,并据此配置网络整形器的配置参数,从而保证在例如基于时间同步调度策略的网络中数据流量对端到端时延的满足性,以尽可能避免数据流量传输过程中的拥塞。

第二方面,本申请提供了一种网络整形器的配置方法,所述方法应用于基于时间异步调度策略的网络中,所述方法确定流量的第一端到端时延约束;确定所述流量的第一端到端时延上界;基于所述流量的所述第一端到端时延约束和所述第一端到端时延上界,确定并配置整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量满足所述第一端到端时延约束。

本申请能够在基于时间异步调度算法的网络中,对网络整形器的至少一个参数进行配置,从而保证数据流量在传输过程中的端到端时延上界满足端到端时延约束,以避免因时延导致的网络拥塞和数据丢包。

在一种可选的设计中,还可以对整形器的配置参数进行调整,所述调整包括确定流量的第二端到端时延约束;确定按照当前整形器配置参数整形后的所述流量的第一端到端时延上界;判断所述第一端到端时延上界是否满足所述第二端到端时延约束;如果确定不满足,则基于所述第二端到端时延约束,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二端到端时延上界满足所述第二端到端时延约束。

本申请能够在基于时间异步调度算法的网络中,基于整形器中所传输的流量的变化,或者对于同一流量类型的时延约束的变化等,对网络整形器的至少一个配置参数进行调整和配置,以保证流量整形输出后满足新的业务约束需求。

在一种可选的设计中,所述端到端时延上界被表示为时延上界函数,所述确定数据流量在所述两个端部节点之间的端到端时延上界包括:通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。

在一种可选的设计中,所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。

在一种可选的设计中,在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。可选地,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。可选地,确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。

第三方面,本申请提供了一种网络整形器的配置方法,所述方法应用于基于时间同步调度策略的网络中,所述方法确定流量的第一时延约束需求;基于所述流量的所述第一时延约束需求,确定整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量满足所述第一时延约束需求。

本申请能够在基于时间同步调度算法的网络中,对网络整形器的至少一个参数进行配置,从而保证数据流量在传输过程中的端到端时延上界满足端到端时延约束,以避免因时延导致的网络拥塞和数据丢包。

在一种可选的设计中,还可以对整形器的配置参数进行调整,所述调整确定流量的第二时延约束需求;确定按照当前整形器配置参数整形后的所述流量输出时的第一时延;判断所述第一时延是否满足所述第二时延约束需求;如果确定不满足,则基于所述第二时延约束需求,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二时延满足所述第二时延约束需求。

本申请能够在基于时间同步调度算法的网络中,基于整形器中所传输的流量的变化,或者转发节点的单点有界时延的变化等,对网络整形器的至少一个配置参数进行调整和配置,以保证流量整形输出后满足新的业务约束需求。

在一种可选的设计中,确定所述端到端时延上界满足所述端到端时延约束;在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。

在一种可选的设计中,配置的一个配置参数为发送周期。

在一种可选的设计中,其他可配置参数还至少包括:在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度。

第四方面,本申请提供了一种对网络进行配置的设备,所述设备包括:第一确定单元,确定数据流量在两个端部节点之间的端到端时延上界;第二确定单元,确定所述数据流量在所述两个端部节点之间的端到端时延约束;参数确定单元,基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数;整形器配置单元,基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。

在一种可选的设计中,所述端到端时延上界被表示为时延上界函数,所述第一确定单元确定数据流量在所述两个端部节点之间的端到端时延上界包括:通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。

在一种可选的设计中,所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。

在一种可选的设计中,所述参数确定单元基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。

在一种可选的设计中,所述参数确定单元还用于确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。

在一种可选的设计中,所述整形器配置单元还用于确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。

在一种可选的设计中,所述设备还包括缓存配置单元,所述缓存配置单元用于根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界;基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。

在一种可选的设计中,所述第二确定单元确定数据流量在所述两个端部节点之间的端到端时延约束包括基于所述两个端部节点之间的各个转发节点各自的单点有界时延,确定所述端到端时延上界。

在一种可选的设计中,所述参数确定单元基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括确定所述端到端时延上界满足所述端到端时延约束;在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。

在一种可选的设计中,所述为第一网络整形器确定满足所述端到端时延约束的所述一个配置参数为发送周期,所述第一网络整形器的所述至少一个配置参数中的其他配置参数还包括在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度。

第五方面,本申请提供了一种对网络进行配置的设备,所述设备包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用存储器中存储的计算机程序,执行前述第一方面中任意可能的设计中所述的方法。

第六方面,本申请提供了一种计算机可读存储介质或者计算机程序产品,用于存储计算机程序,该计算机程序用于执行前述第一方面中任意可能的设计中所述的方法。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种网络结构示意图;

图2为本申请实施例提供的一种传输流量的网络结构示意图;

图3为本申请实施例提供的一种网络演算模型的示意图;

图4为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图5a为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图5b为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图6a为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图6b为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图7为本申请实施例提供的一种网络整形器的配置方法的流程示意图;

图8为本申请实施例提供的一种网络节点的配置方法的流程示意图;

图9为本申请实施例提供的一种对网络进行配置的方法的流程结构示意图;

图10为本申请实施例提供的一种对网络进行配置的设备的结构示意图;

图11为本申请实施例提供的一种对网络进行配置的设备的结构示意图。

具体实施方式

下面将结合附图,对本申请实施例中的技术方案进行描述。本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的唯一限定。本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。

为了更加清楚地说明,首先对一种能够用于实现本申请实施例的网络结构进行描述,如图1所示。所述网络中包括发送单元102、接收单元103、以及一个或多个转发单元105。发送单元102用于在端部发送数据流量,然后所述流量可以经由转发单元105在网络中进行转发,并最终由接收单元103在端部接收所述流量。所述网络还可以包括入口整形器104以及一个或多个逐跳整形器106。入口整形器104一般用于对网络入口处某时段流入的单条流量或具有相同转发路径或具有相同转发目标设备的多条流量进行整形,所述单条流量和多条流量可以分别称为单流和多流。所述单流或多流在被入口整形器104整形前,可以具有相同的形态,也可以具有不同的形态。一个或多个逐跳整形器106一般用于在相应的转发单元105转发单流或多流之前或之后,对所述单流或多流整形以进行逐跳规范(英文:Per-hopRegulating),所述多流由流经所述转发单元105的多条单流汇聚而成。通过流量整形可以有效避免流量汇聚或突发流量的逐跳传递而导致的拥塞丢包。所述网络还可以包括网络控制单元101,用于对端到端网络传输过程中的任意网络节点上的转发单元105、入口整形器104、逐跳整形器106中的一个或多个进行管理和控制等。所述管理和控制可以包括诸如对于入口整形器104、一个或多个逐跳整形器106的整形参数配置,对于一个或多个转发单元105的缓存大小进行分配和/或逐跳规范等。在其他可能的设计中,网络控制单元101除控制上述各单元外,也可以一并控制发送单元102和/或接收单元103,以实现对流量发送和接收的控制和管理。

上述网络结构仅为一种可能的实现形式,在某些可能的设计中,发送单元102和入口整形器104可以集成在同一个设备,例如用于发送流量的端部发送节点上;或者入口整形器104与流量传输过程中的第一个转发单元105集成在同一个设备,例如转发所述流量的第一个转发节点上;又或者入口整形器104和接收单元103集成在同一个设备,例如用于接收流量的端部接收节点上。类似地,逐跳整形器106也可以和转发单元105集成在同一个设备上。在某种情形下,发送单元102、入口整形器104、转发单元105和接收单元103可以全部集成在同一个设备上,此时,可以不再需要逐跳整形器106,而是由入口整形器104独自完成整形操作。在某些可能的设计中,网络控制单元101还可以对发送单元102和接收单元103也进行控制,对其进行整形参数配置和/或缓存分配等控制。网络控制单元101可以单独部署,即物理上独立于网络中的其他被控制的功能单元(如发送单元102、转发单元105、入口整形器104等),也可以与其中的某个功能单元集成在同一设备上,甚至被拆分成若干个子单元并分别布置在多个设备上,只要逻辑上能够共同实现相应的管理和控制功能即可。

网络控制单元101、发送单元102、接收单元103、转发单元105、入口整形器104或逐跳整形器106可以实现为硬件、软件或软硬结合的形式,可以实现为一个独立的设备,例如作为网络中的一个独立节点,也可以是网络节点上的一个功能模块或多个功能模块的组合,这可以根据具体场景需求进行选择和设计。入口整形器104以及逐跳整形器106中的一个或多个可以执行相同的整形策略,也可以执行不同的整形策略。逐跳整形器106可以为全部转发单元105配置,也可以只为部分转发单元105配置,或者不为任何转发单元105配置。

对于很多业务使用场景,如5G URLLC业务场景,具体如工业自动化、车载网等场景,可能需要相应的5G承载网络提供有界的数据面存储转发时延。然而,现有的网络整形器主要用于限制流量的平均带宽,整形器的输入参数主要依据如用户流量合约等要求确定,并未考虑数据流量的转发时延情况,并且参数设置相对固定,无法根据网络的数据传输情况进行灵活地自适应调整以适应网络的实际需求。本申请实施例提供了一种基于有界时延的网络整形器的配置方法300,能够通过确定及调整整形器参数,保证经过整形器整形后的数据流量的网络时延满足业务时延约束。

对于流量入口处的整形器,其需要适配一定的网络调度策略。网络调度策略可以是基于时间同步的,也可以是基于时间异步的。对于基于时间异步的网络调度策略,例如可以是基于服务质量的(英文:Qos-based)。对于基于时间同步的网络调度策略,通常可以利用一套自有设计机制保证网络中的流量传输具有确定性的有界时延,并且所述有界时延的值可以获得,因而可以根据获取的有界时延值确定或调整整形器参数。而对于基于时间异步,如基于服务质量的网络调度策略,虽然采用传统的测量性能指标(英文:PerformanceMetrics)的方式,可获得IP流量在特定的路径的单向、双向传输时延,但测得的时延只是一次的测量结果,难以测出流量时延的上界,进而也无法获得有界时延结果以调整整形器参数,无法提供时延服务等级协议(英文:Service Level Agreement,SLA)保证。对于要求有界时延的流量转发场景,如采用基于服务质量的网络调度策略,则可以考虑利用网络演算(英文:Network Calculus)计算出从发送单元到接收单元端到端时延的上界,作为配置整形器和满足业务SLA的参考指标。

图2示出了一种用于传输数据流量的网络200。网络200中包括发送节点201和211。流量20由发送节点201发出,经整形器203整形后依次沿转发节点205、207发送至接收节点209。流量21由发送节点211发出,经整形器213整形后依次沿转发节点215、217和219发送至接收节点209。在一种实施例中,发送节点201和211可以分别包括如图1所示的发送单元102,流量20和21分别经过的各转发节点可以分别包括如图1所示的转发单元105,接收节点209和219可以分别包括如图1所示的接收单元103,而整形器203和213则分别可以实现为入口整形器104。由此在本实施例中,例如包括图1所示的网络控制单元101的网络控制节点(图中未示出),能够控制整形器203的整形参数配置,以使流量20在整形器203依据配置的参数进行整形。类似地,网络控制节点也可以控制整形器213的整形参数配置。

需要说明的是,图2仅示出了一种可能的用于转发流量的网络结构,在此网络结构下,由于用于传输流量20的发送单元102、入口整形器104、多个转发单元105和接收单元103分别位于不同的网络节点,因而从网络节点结构层面,流量20依次沿网络节点201-203-205-207-209的顺序完成转发过程。但在一些其他可能的设计中,如前所述的,发送单元102、入口整形器104、一个或多个转发单元105和接收单元103中的一个或多个可能位于同一网络节点。例如,对于发送单元102和入口整形器104同时位于发送节点201,两个转发单元105均位于转发节点205,而接收单元103位于接收节点209的情形,从网络节点结构层面而言,流量将沿网络节点201-205-209的顺序完成转发。然而,从网络单元结构层面来看,上述两种网络节点结构实质上均完成了依次沿网络单元102-104-105(1)-105(2)-103的端到端流量的转发过程。也即,虽然转发流量的实体网络节点的结构可能有所不同,但只要所述流量实质上是沿相同的网络单元结构顺序转发的,则所述流量端到端的传输路径并无不同。

以图2示出的数据流量传输网络200为例,分别按照整形器适配时间异步的调度技术和时间同步的调度技术,对上述两种情形下基于有界时延的入口整形器的配置方法,特别是如何获得有界时延值的结果,从而参考配置入口整形器参数进行更为详细的阐述。

情形一 整形器适配基于时间异步的网络调度策略。

网络演算是一种能够针对通信网络计算端到端确定性时延上界(英文:DelayUpper-Bound)的方法。一个网络节点在任意时间段T内输入流量数据量的上界被描述为到达曲线(英文:arrival curve),与业务的流量模型和源端整形模型等因素有关,具体地,例如可以包括发送周期、最大突发量、最大发送速率、峰值速率、最大报文长度等。一个网络节点在任意时间段内转发能力的下界被抽象为服务曲线(英文:service curve),与节点所采用的调度方法、设备和网络配置等参数有关,具体地,例如可以包括设备调度机制、最大报文长度、和/或端口速率等。假设网络中一条数据流量先后经过M个转发单元,所述曲线α

以图2示出的网络结构中流量20的端到端传输为例,阐述基于网络演算的端到端时延上界的计算方法。流量20由发送节点201发出后,其未经整形的初始曲线为σ(t),之后经过整形器203得到整形后的曲线α

利用网络演算原理计算得到端到端的流时延上界的方法有多种,例如分流分析法(Separate Flow Analysis,SFA)、PMOO分析法(英文:Pay Multiplexing Only Once,PMOO)、整流分析法(Total Flow Analysis,TFA)等。不同方法所采用的每个节点的到达曲线α

方式一分别计算端到端流量流经全部N(N≥1)个转发节点的整体到达曲线α(t)和服务曲线β(t),计算α(t)和β(t)之间的最大水平距离,确定端到端流量的时延上界DB。

该方式中直接以一条端到端的流量为对象。该条流量的到达曲线α(t)以网络中第一个转发节点的到达曲线α

首先定义任意两个转发节点的单点服务曲线之间的最小和卷积计算公式如下:

在任意给定的时刻t,遍历所有s∈[0,t],求解β

基于上述公式1.1,对于流经网络中N个转发节点的数据流量,各个节点的单点服务曲线分别为β

例如对于流量20,其到达曲线α(t)=α

计算α(t)和β(t)之间的最大水平距离即可得到流量20的时延上界,即DB=Max_Hdis(α(t),β(t))。

方式二分别计算端到端流量流经全部N(N≥1)个转发节点的到达曲线α

例如对于流量20,如图2所示,其在转发节点203的到达曲线和服务曲线分别为α

与计算流量20的端到端时延上界的方法类似,也可以采用上述方式一或方式二计算得到图2中流量21的端到端时延上界。在上述方式一和方式二中,在计算流量的到达曲线α(t)和服务曲线β(t)时,仅考虑了各个转发节点的到达曲线和服务曲线。例如,对于图2中的流量20,在按照方式一计算服务曲线β(t)时,仅对转发该流量20的转发节点205和207的单点服务曲线做卷积运算,即

在本申请的其他实施例中,流量20在被接收节点209接收后,可能还要继续转发至网络中的其他节点,并且所述其他节点需要获得上一跳的时延上界计算结果。例如,接收节点209为AS域内的边缘节点,其将接收到的流量20转发至另一AS域的边缘节点,而所述另一AS域的网络控制节点为了对其AS域内的数据流的传输质量进行更为准确、有效的控制,可能需要累计计入流量20在上一AS域内的传输时延。在此种情形下,计算流量20在网络200所在的AS域内的端到端时延上界时,需要考虑流量20在接收节点209的时延情况。当一并考虑接收节点时延时,可考虑采用以下方式三或方式四计算流量的端到端时延上界。

方式三分别计算端到端流量流经全部N(N≥1)个转发节点及接收节点的整体到达曲线α(t)和服务曲线β(t),计算α(t)和β(t)之间的最大水平距离,确定端到端流量的时延上界DB。

该方式中直接以一条端到端的流量为对象。该条流量的到达曲线α(t)以网络中第一个转发节点的到达曲线α

例如对于流量20,其到达曲线α(t)=α

计算α(t)和β(t)之间的最大水平距离即可得到流量20的时延上界,即DB=Max_Hdis(α(t),β(t))。

方式四分别计算端到端流量流经全部N个转发节点到达曲线α

例如对于流量20,如图2所示,其在转发节点205的到达曲线和服务曲线分别为α

对于图2示出的流量21,也可以采用上述方式一至四的任意一个计算该流量的端到端时延上界。需要说明的是,在实际应用中各网络节点在发送不同的数据流时所承担的角色或转发位置有可能不同。所述承担的角色例如包括发送节点、转发节点和/或接收节点等,例如节点201对于流量20而言是发送节点,但对于网络200中的其他流量而言,可能承担转发节点或接收节点的角色。所述不同的转发位置是指同一网络节点在转发不同的数据流时所处的转发跳数可能不同,例如图2中,转发节点207是流量20的第2跳转发位置,而对于流量21而言,则是其第3跳转发位置。由此,同一网络节点在发送或接收不同的流量时,其到达曲线和服务曲线可能有所不同。例如,转发节点207在转发流量20时,作为第2跳转发节点,其到达曲线和服务曲线分别为α

以上方式一至四仅作为示例,在实际应用中也可以选择其他基于网络演算的端到端时延的计算方法。

以上方式一至四阐述了针对单流计算端到端时延的方法,在一些其他情形下,发送节点也可能需要发送满足相同形态的多条流量,所述多条流量经由发送节点聚合后形成一条汇聚流量。由多条流量汇聚而成的所述汇聚流量经过入口整形器整形后,其到达曲线为基于多条流量各自的到达曲线确定的汇聚到达曲线。例如,对于整形后满足线性形态的汇聚流量,其在入口处整形后的到达曲线由聚合成所述汇聚流量的多条流量在入口处整形后的到达曲线之和

对于采用基于时间异步的网络调度策略的流量转发,本申请实施例提供了一种保证有界时延的网络整形器的配置方法500。基于业务时延约束配置整形器参数,以保证基于网络演算确定的流量传输的端到端时延时延上界对所述业务时延约束的满足性。如图4所示,所述方法500具体包括以下内容。

S505确定流量的端到端时延约束DB_Cons。

网络对于不同流量的网络时延约束DB_Cons可能有所不同,可以与所述流量承载的业务类型或特定时段对所述流量的传输速率需求,或其他可能的网络数据传输需求有关。在基于时间异步网络调度策略的网络中,对流量的网络时延约束通常与所述流量承载的业务类型有关,不同流量所承载的业务类型有可能不同,而网络针对不同业务类型的时延约束也有可能不同。对于流经基于时间异步调度策略网络的流量,其应满足的时延约束DB_Cons可以基于该网络对于所述流量的承载的业务类型的约束确定。对应于不同业务类型的时延约束值DB_Cons可以预先存储,例如可以存储到图1所示的网络控制单元101中,也可以存储到发送单元102、接收单元103或其他任何可能的存储位置中,具体可以根据需要设置。在实际应用中,对于采用基于时间异步的网络调度策略的流量转发,可以根据具体的网络数据传输需求确定当前流量的时延约束DB_Cons。在实际应用中,所述网络时延约束DB_Cons例如可以由网络管理设备基于业务类型和时延约束的对应关系自动获取,或者由网络管理员手动配置等。

S510确定所述流量的端到端时延上界DB。

基于网络演算算法确定所述流量的端到端时延上界DB。具体地,在配置整形器参数前,可以基于前述各种通过到达曲线函数和服务曲线函数的网络演算算法,确定相应的时延上界表达函数,作为端到端时延上界DB的表达式。所述表达式的确定方式例如可以参见前述关于基于网络演算算法计算端到端时延上界的所述方式一至四中的任一个。

S515基于所述流量的所述端到端时延约束DB_Cons和所述端到端时延上界DB,确定并配置整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量满足所述端到端时延约束DB_Cons。

对于基于时间异步网络调度策略的流量传输,流量的实际时延可以由所述流量的端到端时延上界确定。在一个例子中,为了实现所述流量满足所述时延约束DB_Cons,需保证所述流量经入口整形器整形后的端到端时延上界DB不超过所述时延约束DB_Cons。因此可以考虑将所述时延约束DB_Cons作为所述流量端到端时延上界DB的计算结果,结合所述流量端到端时延上界的计算公式确定入口整形器的相关参数配置。

在入口整形后的端到端时延上界可以基于网络演算方法计算。整形器在入口处对所述流量进行整形,使整形后输出的流量满足初始曲线σ(t),其中,σ(t)的具体形式可以由入口处采用的整形器模型确定。对于适配基于时间异步的网络调度策略的入口整形器,例如可以采用令牌桶(英文:token bucket)模型,具体又包括单桶模型或双桶模型等。令牌桶模型例如可以采用严格优先级(英文:Strict Priority,SP)算法、轮询调度(英文:RoundRobin,RR)算法、加权公平序列(英文:Weighted Fair Queue,WFQ)算法、IEEE 802.1Qav定义的基于信用量的整形器(英文:Credit-based Shaper,CBS)等。实际应用中也可以根据需要选择其他适配于基于时间异步网络调度策略的整形算法。

经过入口整形后的初始曲线σ(t)可以包括一个或多个可配置参数,所述参数的具体个数和含义可以根据整形器所选用的模型类型确定。定义整形器参数集合S={s

在一种可能的实施例中,可以采用方式一或方式三确定流量的端到端时延上界的表达式。此时的流时延上界,

DB=Max_Hdis(α(t),β(t))=Max

上述公式中,Max

根据约束DB≤DB_Cons确定入口处整形器的其中一个或多个参数并进行配置,以使得整形器按照确定后的配置参数值对流量进行整形,从而满足对所述流量的时延约束DB_Cons。在一种可能的设计中,整形器中的全部参数均基于时延约束DB_Cons确定;或者,整形器中可以仅有部分参数基于时延约束DB_Cons确定,而所述整形器的其余参数可以基于其他条件确定,例如预先设置、基于业务基本需求确定、和/或基于流量流经的转发节点的除时延外的其他性能指标确定等。

在某些情形下,如在流入整形器的流量所承载的业务类型发生变化,或者虽然流量所承载的业务类型未发生变化,但对该同一业务类型的时延要求发生变化等情形下,流量需要满足的时延约束可能会发生变化,导致例如按照前述方法500确定的配置参数整形后,流量的端到端时延上界不再满足新的业务时延约束。在本申请的另一实施例中,当网络控制节点发现按照当前配置参数整形后的流量的端到端时延上界不再满足业务时延约束时,还可以对入口处的整形器的配置参数中的一个或多个进行调整,以使得按照调整后的配置参数整形后的流量端到端时延上界能够满足业务时延约束。调整整形器配置参数的方法600包括以下内容,如图5a所示。

S605确定流量的端到端时延约束DB_Cons’。

假设重新确定的流量的时延约束为DB_Cons’,并且由此导致按照当前配置参数整形后的流量的端到端时延上界DB>DB_Cons’,不满足新的时延约束要求。或者,在某些情形下,虽然所述流量对应的时延约束DB_Cons并未发生变化,但所期望的时延约束满足性发生变化,具体例如流量当前的端到端时延上界值DB为时延约束DB_Cons值大小的4/5,即DB=0.8×DB_Cons,而网络控制节点期望所述流量的端到端时延能够进一步调优,实际满足DB=0.6×DB_Cons,则此时仍需要对整形器参数进行调整,以满足流量传输的实际需求,保证高质量的网络服务能力。在一种可能的设计中,也可以在满足基本时延约束的基础上,调整配置参数以使得流量整形后的时延上界值较调整前相对更接近时延约束值DB_Cons,例如从DB=0.6=DB_Cons调整至DB=0.8=DB_Cons,以在保证一定网络服务质量的基础上尽量节省带宽,以用于其他优先级更高的业务流量传输等。以上情形均可导致时延约束的不满足性,需要对整形器的配置参数进行调整。为便于说明,这里统一采用DB_Cons’表示流量实际应当满足的新的时延约束,例如对于上述在满足基本时延约束DB_Cons的前提下,期望对时延约束满足性进一步调优的情形,可以确定实际应当满足的新的时延约束DB_Cons’=0.6×DB_Cons。

上述情形仅作为示例,实际应用中也可以根据其他需要或预设的规则重新确定所述流量的时延约束。

S610确定按照当前整形器配置参数整形后的所述流量的第一端到端时延上界DB

仍以图2为例,从发送节点201发出的流量20进入入口的整形器203,整形器203按照确定的当前整形器配置参数集合S

在一种可能的设计中,在计算所述流量的时延上界时,可以一并保存计算过程中确定的所述流量流经的一个或多个网络节点的单点到达曲线和服务曲线的结果。需要说明的是,具体保存哪些网络节点的单点曲线的计算结果,以及对于具体的各个节点而言,选择同时保存单点到达曲线和服务曲线,还是仅保存到达曲线或服务曲线中的一个,可以根据需要灵活设置,这里不做具体限定。

S615判断第一时延上界DB

判断S610中确定的时延上界DB

S620基于所述时延约束DB_Cons’,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二端到端时延上界DB

S620基于所述流量重新确定的时延约束DB_Cons’,确定并调整整形器的其中一个或多个配置参数的方式与S510的参数配置方式类似,在这里不再赘述。需要说明的是,在执行调整整形器参数集合这一操作时,一般情形下只要确定任意一组能够满足DB

如果根据时延约束DB_Cons’可调整的整形器参数包括多个,可以根据参数含义、业务场景等选择调整全部或部分参数;或者,也可以结合调整难度,优先调整其中的一个或多个,在仍无法满足时延约束时再选择调整其余参数中的多个等。整形器参数的具体调整原则和调整个数,可以根据实际需要具体设定。在一种可能的设计中,还可以在依据时延约束调整整形器参数中的一个或多个的基础上,依据网络的其他可能的性能指标,如转发节点的转发能力等,对整形器的其他参数进行调优。

为了更清楚地阐述本申请可能的实施方式,以下基于判断不满足业务时延约束,需对采用单桶整形器模型的配置参数进行调整的情形,对图6示出的调整方法进行详细说明。所述单桶整形器模型适配基于时间异步的网络调度策略。所述方法600’包括以下内容,如图5b所示。

S605’确定流量的端到端时延约束DB_Cons’。

仍以图2为例,例如可以通过网络控制节点确定流量20所承载业务类型的时延约束DB_Cons’,其中由于前序输入流量与流量20所承载的业务类型不同,因此需重新确定对应于流量20的时延约束DB_Cons’。

S610’基于单桶模型整形器对所述流量进行整形,确定按照当前整形器配置参数整形后的所述流量的第一端到端时延上界DB

单桶模型整形器203满足整形函数σ(t)=b+rt,其中参数b表示整形器输出流量允许的最大突发大小,即令牌桶的深度;参数r表示整形器输出流量的平均速率,即令牌补充速率。初始时,经过单桶模型整形器整形后的流量20满足σ(t)=b

S615’判断时延上界DB

若对于流量20的时延约束为DB_Cons’,并且确定其第一端到端时延上界DB

S620’基于端到端有界时延约束DB_Cons’,确定并调整所述单桶模型整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二端到端时延上界DB

为了满足业务时延要求,需要重新确定第二端到端时延上界DB

在一种可能的设计中,还可以基于各转发节点的转发能力对参数r1的取值进行调整,使其满足约束R

对于同时调整单桶整形器全部参数的情形,经过调整后的单桶整形器的配置参数集合S1’={b

情形二 整形器适配基于时间同步的网络调度策略。

对于采用基于时间同步的网络调度策略的流量转发,本申请实施例提供了一种保证有界时延的网络整形器的配置方法700。基于流量流经的各转发节点所遵循的网络调度策略,确定所述流量在网络中传输的端到端有界时延,基于所述流量的端到端有界时延的值配置整形器参数,使得所述流量的传输满足网络时延约束。如图6a所示,所述方法700具体包括以下内容。

S705确定流量的时延约束需求DB_Dmd。

不同于基于时间异步调度策略的网络,对于采用基于时间同步调度策略的网络,可以保证流量在各转发节点的单点转发时延有界。因此,不同流量的端到端时延约束DB_Cons虽然也与网络对于不同流量所承载的业务类型有关,但为了保证流量在不超过各个转发节点实际转发能力下的可靠传输,所述流量在经入口整形器整形并输出后,实际应当能够满足相应的时延约束需求DB_Dmd。所述时延约束需求DB_Dmd用于保证所述流量在整形输出后,流经网络中的所述各个转发节点时,不超过各个转发节点的实际转发能力,以此保证不造成网络拥塞或丢包。为此,通常基于所述流量在时间同步调度策略的网络中所流经的各转发节点的单点有界时延确定所述时延约束需求DB_Dmd。假设所述流量在传输路径上共经过n个转发节点,其中第r(1≤r≤n)个转发节点的单点有界时延为db

仍以图2示出的网络结构中流量20的端到端传输为例,流量20从发送节点201经入口的整形器203整形后,先后经过转发节点205和207发送至接收节点209。举例而言,当转发节点205和207采用相同的调度策略而具有相同的单点时延时,流量20的端到端时延约束需求DB_Dmd=db

S710基于所述流量的时延约束需求DB_Dmd,确定整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量满足所述时延约束需求DB_Dmd。

对于基于时间异步调度策略的网络,对某一流量的时延约束由网络或者用户对所述流量的时延需求决定,例如可以根据所述流量承载业务所要求的时延确定,并且所述流量传输路径上的各转发节点并不具有预先设定的单点时延约束。因而在遵循时间异步调度策略的网络中,整形器整形后的流量对时延约束的满足性体现为,保证所述流量经入口整形器整形后的端到端时延上界DB不大于对于所述流量的时延约束DB_Cons,即DB≤DB_Cons,从而保证所述流量的端到端传输满足网络对于流量所承载业务的时延要求。

然而,不同于基于时间异步调度策略的网络,对于基于时间同步调度策略的网络,对某一流量的时延约束由所述流量流经的各转发节点的单点有界时延确定,而各转发节点的单点有界时延是在网络配置阶段预先设定的,因而在遵循时间同步调度策略的网络中,整形器整形后的流量对时延约束的满足性体现为,保证所述流量经入口整形器整形后的时延DB不小于所述时延约束需求DB_Dmd,即DB≥DB_Dmd,从而保证所述流量即使在转发时延最大的转发节点也不会发生拥塞。

对于适配基于时间同步的网络调度策略的入口处的整形器,作为具体示例,例如可以是阶梯模型类,适用于包括IEEE 802.1Qbv定义的时间感知整形器(英文:Time-awareShaper,TAS)、IEEE 802.1Qch定义的循环队列转发(英文:Cyclic Queuing andForwarding,CQF)算法等可为网络中的时间敏感数据流量提供整形和调度的技术。实际应用中也可以根据需要选择其他适配于基于时间同步网络调度策略的整形算法。

在一些情形下,流量所流入的整形器以及逐跳转发节点均遵循相同的网络调度策略,并且用于转发节点的各个网络调度参数配置相同,则此时可以直接依据转发节点中与时延有关的网络调度参数,配置所述整形器的其中一个或多个与时延相关的参数,以保证流量满足整个网络的时延要求。例如,可以将与时延相关的整形参数直接配置为各转发节点的相应调度参数,或者配置为大于各转发节点相应调度参数的合理值。所述与时延有关的网络调度参数,例如可以是发送周期等。在其他一些情形下,也可以根据需要调整其他任意个数的配置参数。

在一些其他情形下,多个转发节点遵循的网络调度策略可能不同,或者不同转发节点的调度参数配置不同,如前所述的,由此可能导致逐跳转发节点的单点有界时延有所不同,则可以依据各转发节点中单点有界时延的最大值db

为了更好地匹配流量流经路径的实际转发能力,还可以依据转发节点的其他网络调度参数,适配性地调整整形器中的其他对应参数。具体地,例如当其他网络调度参数包括可转发报文数时,则可以确定各转发节点在发送周期内可转发报文数的最小值,作为整形器可转发报文数这一参数的配置值等。所述其他网络调度参数的配置规则可基于网络结构和网络遵循的调度策略等具体确定。

在一种可能的设计中,还可以对一个或多个与时延约束无关的参数进行预配置,如针对相对固化的配置参数等。

经过上述各种可能的方式配置完成的整形器参数,记为完整的配置参数集合S

在某些情形下,如由于不同流量流经的转发节点采用的调度策略不同,或者部分或全部转发节点配置的调度参数发生变化等情形下,流量需要满足的时延约束需求可能会发生变化,导致例如按照前述方法700确定的配置参数整形后,流量的端到端时延上界不再满足新的业务时延约束。在本申请的另一实施例中,当网络控制节点发现按照当前配置参数整形后的流量无法满足新的时延约束需求时,还可以对入口处的整形器的配置参数中的一个或多个进行调整,以使得按照调整后的配置参数整形后的流量能够满足相应的时延约束需求。调整整形器配置参数的方法800包括以下内容,如图7所示。

S805确定流量的时延约束需求DB_Dmd’。

假设新的时延约束需求确定为DB_Dmd’,并且由此导致流量在整形后的时延不满足新的时延约束要求。或者,在某些情形下,虽然所述流量对应的时延约束需求DB_Dmd’并未发生变化,但所期望的时延约束满足性发生变化,例如对于某一流量而言,按照当前整形器的参数配置,所述流量整形后的时延还未达到其流经路径所能够被允许的最小时延,此时依然可以对所述整形器的整形参数进行调整,以使得整形后流量的时延进一步调优,提高网络传输效率和带宽利用率。

上述情形仅作为示例,实际应用中也可以根据其他需要或预设的规则重新确定所述流量的时延约束。

S810确定按照当前整形器配置参数整形后的所述流量输出时的第一时延DB

对于按照当前整形器配置参数进行整形的所述流量在输出时的第一时延DB

S815判断第一时延DB

判断第一时延DB

仍以图2中的流量转发为例,如果初始状态下,转发节点205的单点时延为3ms,而转发节点207的单点时延为1s,则流量20初始应当满足的时延约束需求DB_Dmd=3ms,整形器据此配置整形参数,使得流量20整形后的第一时延DB

S820基于所述时延约束需求DB_Dmd’,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二时延DB

S820基于流量重新确定的时延约束需求DB_Dmd’,调整整形器的其中一个或多个配置参数的方式与S710的参数配置方式类似,在这里不再赘述。需要说明的是,在执行调整整形器参数集合这一操作时,一般情形下只要确定任意一组能够满足DB

为了更清楚地阐述本申请可能的实施方式,以下基于需对采用CQF整形器模型的整形参数进行配置的情形,对图6示出的配置方法700进行详细说明。所述CQF整形器模型适配基于时间同步的网络调度策略。

仍以图2示出的网络结构中流量20的转发为例说明。假设流量20流入的入口处整形器203,以及其流经的全部转发节点205和207均采用CQF网络调度策略。CQF整形配置参数包括发送周期T(毫秒ms),在周期T内最多可发送的报文个数M(个)以及报文最大长度L(Byte字节)。设整形器203需配置的参数集合S

S705’确定流量在CQF模型网络中的时延约束需求DB_Dmd。

转发节点205和207均采用CQF网络调度策略,其中转发节点205的CQF调度参数集合S

流量20的端到端时延约束由其流经的全部转发节点205和207的单点有界时延的最大值确定。对于基于CQF调度模型的网络,转发节点的单点有界时延由CQF中的配置参数发送周期T确定。因此,流量20的端到端时延约束需求DB_Dmd=max_{T

S710’基于所述流量的时延约束需求DB_Dmd,确定基于CQF模型的整形器的至少一个或多个配置参数,以使得经过所述整形器整形后的所述流量满足时延约束。

基于时延约束需求DB_Dmd=150ms,可以配置流量20在入口处的整形器203的整形参数之一,即发送周期T

在一些情形中,也可以考虑不将整形器的各整形参数严格地按照上述预设的最大或最小值计算原则确定,而是以按照所述计算原则确定的相应值为参考依据,在合理、可控的范围内结合实际场景对各参数值予以适当调整。例如,可以考虑将T

在一些可能的实施例中,虽然在情形二示出的所述方法700、800,以及采用CQF算法对所述方法700的具体示例中,流量经整形器整形后输出时满足的时延约束基于所述流量在时间异步调度策略的网络中所流经的各转发节点的时延确定,但在具体应用中,通常需要考虑利用网络对于不同流量的端到端网络时延约束DB_Cons作为前提约束条件,以此保证所述流量经整形器整形后的端到端时延上界满足对于相应业务的端到端网络时延约束。与前述方法500中的S505相类似的,在基于时间同步网络调度策略的网络中,所述流量的端到端网络时延约束DB_Cons也与所述流量承载的业务类型,特定时段对所述流量的传输速率要求,或其他可能的网络数据传输需求等有关。例如,对于用于承载不同业务的流量,其网络时延约束DB_Cons可以有所不同,此处不再赘述。所述以流量的端到端网络时延约束DB_Cons作为前提约束条件,具体为只有当基于流量所流经的各转发节点确定的端到端时延上界DB不超过网络对所述流量的端到端时延约束DB_Cons,采用所述方法700或800对整形器参数进行配置或调整;否则,说明当前所述流量流经路径的节点转发能力无法满足网络的实际需求,可能需要对整个网络进行升级或改造等,因此可以暂时不对整形器参数执行配置或调整操作,以节约网络带宽,减少不必要的资源浪费。在一种可能的实施例中,所述基于流量所流经的各转发节点确定的端到端时延上界即为各转发节点单点有界时延db

在一些可能的实施例中,对于上述情形一和情形二所涉及的各种整形器参数配置和调整方法,可以为相应方法的执行设置一个或多个触发条件,在同时满足所述一个或多个触发条件时对被监控的发送单元所发出的流量执行前述的各个方法。所述触发条件可以包括一定的时间间隔、网络监管规则等。具体地,例如当包括发送单元102的发送节点201发出的流量类型在较长的一段时期内固定或相对固定时,如固定为流量20的类型,则可以每间隔60s对发出的流量执行上述方法;而当发送节点201发出的流量类型灵活可变时,则可以考虑将网络监控规则设置为检测流量类型是否变化,并且当发现发送节点201发出的流量发送变化时,触发上述各方法;或者,将网络监控规则设置为到达一定的网络拥塞时长或级别,并当发现网络中的拥塞时长或级别到达预设值时,由包括网络控制单元101的网络控制节点触发上述各方法,确定造成网络拥塞的数据流,以调整相应发送节点的整形参数;或者为了预防网络拥塞的发生,将网络监控规则设置为检测到网络节点流量的突发增加,并在发现流量突发性增加时,触发上述各方法;或者对于基于时间同步调度策略的网络,可以在探测到网络中的一个或多个转发节点的配置参数发生变化时,触发上述各方法;或者也可以设置多个上述触发条件,例如当同时检测到流量类型发生变化并且满足一定的时间间隔时,触发上述各方法等。在实际应用中,触发条件和触发规则可以根据需要具体设置,以上触发条件和规则仅作为示例。

为了保证在出现网络时延的情形下,尽可能少地出现丢包情况,可以考虑为网络中的转发节点配置较大的缓存空间,以尽可能多的容纳网络时延需求能够满足的流量在所述转发节点的积压数据。在某些情形下,如转发节点出现突发数据流量,或某时段内汇聚的数据流量较多,或转发节点的缓存空间有较多限制等情况出现时,可能需要在尽量保证无拥塞丢包的前提下适当节约存储资源,因此需要为流量分配足够但合理的缓存空间。对于前面阐述的基于时间同步调度策略的网络,由于可以通过相应的调度策略保证转发节点逐跳时延有界,因而能够相对可控地为各转发节点规划并预设一定的缓存空间,以保证流量在逐跳有界时延约束下的无拥塞或少拥塞转发。然而,对于基于时间异步调度策略的网络,虽然流量在入口处被整形以尽可能满足一定的时延约束,但所述流量在各转发节点的逐跳时延无法预先确定,导致所述流量在各转发节点由于时延而造成的拥塞情况无法预估,因此不易提前预留合理的缓存空间以存储流量数据积压。

本申请实施例还提出一种设备的流量缓存配置方法900,利用网络演算计算出网络节点的数据积压上界作为其缓存上界,并基于所述缓存上界配置所述网络节点的缓存,以在尽可能避免网络拥塞的前提下节约配置资源。所述网络节点例如可以是流量流经的逐跳转发节点。所述方法例如可以与前述方法500、600(600’)、700(700’)或800结合使用。所述方法900包括以下内容,如图8所示。

S910确定流量在转发节点的到达曲线α

流量在当前转发节点的到达曲线α

流量在当前转发节点的服务曲线由该节点自身的转发能力确定,例如具体可以由节点遵从的调度机制、最大报文长度、端口速率等因素影响,可以表示为β

所述流量在所述当前转发节点的到达曲线α

S915基于所述到达曲线α

所述转发节点的数据积压上界,也即缓存上界v

S920基于确定的所述缓存上界v

基于确定的所述缓存上界v

采用以上方法计算得到的v

对于基于时间异步调度策略的网络,在一些情形下,由于网络传输或转发节点的处理能力等因素,流量在经过各转发节点时可能会出现较为明显的时延,并且时延通常可以逐跳传递,随着时延的累加而造成在某个转发节点的流量突发,导致拥塞丢包。为了避免上述情形的发生,在一种可能的实施例中,可以在各转发节点设置相应的逐跳整形器,以对流量进行逐跳整形和规范。所述逐跳整形器可以设置在当前转发节点的流量输出位置,以在所述流量向下一转发节点发送之前,对经过所述当前转发节点转发出去的输出流量进行整形。不同于入口处的整形器,逐跳整形器通常不对需转发流量做不同形态的整形,而只是对流量在输出转发前按照其流入时的形态进行规整,因此逐跳整形器通常与入口处的整形器支持相同的整形模型,如均支持单桶模型等,但对于同一流量的传输,逐跳整形器和入口整形器在支持相同整形模型的基础上,具体的配置参数可以相同,也可以不同,具体参数值可根据实际场景具体配置。所述逐跳整形器例如可以是图1示出的独立的整形器106;或者,所述逐跳整形器也可以作为相应转发节点中的单元,实现逐跳整形功能,例如集成在图2示出的转发节点205和/或207中。

在一种可能的实施例中,对于转发所述流量的各转发节点而言,用于各转发节点的逐跳整形器的整形参数配置可以与入口整形器的参数配置相同,则所述流量在经过逐跳整形器整形后,在转发节点输出时的到达曲线α

在设置逐跳整形器时,由于各转发节点的服务曲线仅与其自身的转发能力有关,因此各转发节点的服务曲线并不受逐跳整形的影响,即对于设置了逐跳整形器的各转发节点,其服务曲线β

基于上述确定的各转发节点的α

以上阐述了单流场景下的逐跳整形器的设置及时延确定方法,在更多的实际应用场景中,各转发节点处可能会出现多流汇聚的情形。所述多流汇聚是指具有相同形态的多条流量在同一转发节点汇聚,由所述转发节点对所述多条流量进行聚合后转发出去的情形。例如,均满足单桶模型形态的单条流量A、B和C到达同一转发节点。流量A的到达曲线为α

对于多流汇聚逐跳整形的情形,同样由于各转发节点的服务曲线仅与其自身的转发能力有关,因此各转发节点的服务曲线并不受逐跳整形的影响,即对于设置了逐跳整形器的各转发节点,其服务曲线β

本申请实施例还提供了一种对网络进行配置的方法1000,如图9所示。需要说明的是,方法1000所述的网络整形器通常设置在流量入口处,例如网络边缘节点的位置,用于对入口处的流量进行整形,如图1示出的入口整形器104。所述方法1000例如可以是网络中的网络管理设备执行。所述方法1000包括以下内容。

S1005确定数据流量在两个端部节点之间的端到端时延上界DB。

仍以图2为例,例如两个端部节点即分别为发送节点201和接收节点209。对于基于时间异步调度策略的网络,发送节点201和接收节点209之间的端到端时延上界可以基于网络演算算法计算得到,具体例如采用前述基于网络演算算法计算端到端时延上界的方式一至四中的任一个确定,或者参见前述方法500中的S510,或方法600(600’)中的S610(S610’)。

对于基于时间同步调度策略的网络,基于所述两个端部节点之间的各个转发节点各自的单点有界时延确定所述端到端时延上界。具体地,例如基于所述两个端部节点之间的各个转发节点各自的单点有界时延的和,确定所述端到端时延上界。例如,可以对发送节点201和接收节点209之间的转发节点205和207各自的单点有界时延求和,计算得到所述端到端时延上界。

S1010确定所述数据流量在所述两个端部节点之间的端到端时延约束DB_Cons。

对流量的端到端时延约束DB_Cons通常与所述流量承载的业务类型有关,不同流量所承载的业务类型有可能不同,而网络针对不同业务类型的时延约束也有可能不同。除了可能与所述流量承载的业务类型有关外,所述端到端时延约束DB_Cons也可能与特定时段对所述流量的传输速率需求,或其他可能的网络数据传输需求有关。具体例如参见前述方法500中的S505。

在某些情形下,可能还需要重新确定流量的端到端时延约束为DB_Cons’,例如可以是流入整形器的流量所承载的业务类型发生变化,或者虽然流量所承载的业务类型未发生变化,但对该同一业务类型的时延要求发生变化等,此时新的端到端时延约束确定为DB_Cons’。具体例如参见前述方法600(600’)中的S605(S605’)。

S1015基于所述端到端时延上界DB和所述端到端时延约束DB_Cons,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数。

对于基于时间异步调度策略的网络,所述网络管理设备在对所述第一网络整形器的参数进行配置时,可以基于流量承载业务的类型,确定对所述流量的端到端时延约束DB_Cons。所述端到端时延上界可以被表示为时延上界函数,具体地,可以被表示为基于网络演算算法的到达曲线函数和服务曲线函数所生成的时延上界函数。以基于单桶模型的整形器模型为例,所述端到端时延上界被表示为含有参数b和r的时延上界函数,其中,所述参数b表示整形器输出流量允许的最大突发的大小,参数r表示整形器输出流量的平均输出速率。基于包括所述参数b的所述时延上界函数和所述端到端时延约束DB_Cons的值,可以计算出配置参数b在满足所述端到端时延约束DB_Cons下的取值b

对于基于时间同步调度策略的网络,流量在各转发节点能够保证单点转发时延有界。因此,所述端到端时延上界DB可以基于所述两个端部节点之间的各个转发节点各自的单点有界时延确定。具体地,例如可以通过对全部转发节点各自的单点有界时延求和,确定所述端到端时延上界DB。所述流量的端到端网络时延约束DB_Cons也与所述流量承载的业务类型,特定时段对所述流量的传输速率要求,或其他可能的网络数据传输需求等有关。同样地,例如可以基于流量承载业务的类型,确定对所述流量的端到端时延约束DB_Cons。只有当所述确定的所述端到端时延上界DB满足所述端到端网络时延约束DB_Cons的情况下,触发对整形器的参数的配置或调整,否则,说明当前所述流量流经路径的节点转发能力无法满足网络的实际需求,无需对所述整形器的参数执行配置或调整操作。

在确定所述端到端时延上界DB满足所述端到端网络时延约束DB_Cons时,可以基于各个转发节点各自的单点有界时延,确定对整形器的一个或多个配置参数。例如,对于CQF整形器模型,所述网络管理设备可以基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值,并基于所述最大值,为整形器确定满足所述端到端时延约束的发送周期,所述发送周期即为所述整形器的一个配置参数。所述网络管理设备还可以确定整形器的其他配置参数,所述其他配置参数例如可以包括在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度等。具体参见前述方法700(700’)或前述方法800。

S1020基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。

网络管理设备可以基于确定的全部配置参数,对所述第一网络整形器进行针对所述数据流量的配置。

在一些可能的实施例中,如S910所述的,所述流量的端到端时延约束可能会发生改变,例如对同一业务类型的流量的约束需求发生变化,或者流入整形器的另一流量的业务类型发生变化,此时需要确定新的端到端时延约束DB_Cons’,由此可能导致按照当前所述第一网络整形器配置参数整形后,所述端到端时延上界DB不满足所述端到端时延约束DB_Cons’,需要对所述整形器的配置参数进行适应性地调整。以基于单桶模型的整形器模型为例,至少可以基于新的端到端时延约束DB_Cons’重新确定配置参数b的取值b

在一种可能的实施例中,所述方法1000还包括:

S1025确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。

对于基于时间异步调度策略的网络,在一些情形下,可以在各转发节点设置相应的逐跳整形器,以对流量进行逐跳整形和规范,以避免随着时延的累加而造成在某个转发节点的流量突发,导致拥塞丢包。所述第二网络整形器为逐跳整形器,可以设置在当前转发节点的流量输出位置,以在所述流量向下一转发节点发送之前,对经过所述当前转发节点转发出去的输出流量进行整形。对于同一流量的传输,所述第二网络整形器一般与第一网络整形器支持相同的整形模型,具体的配置参数可以相同,也可以不同。在一种可能的实施例中,网络管理设备将用于各转发节点的所述第二网络整形器的整形参数配置为与所述第一网络整形器的参数配置相同。考虑在各转发节点可能也会出现多流汇聚的情形,所述网络管理设备也可以基于多流汇聚后在相应转发节点形成的到达曲线函数和服务曲线函数,确定当前转发节点的多流逐跳时延,并可以据此配置所述第二网络整形器的配置参数。

在一种可能的实施例中,所述方法1000还包括:

S1030根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界,基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。

对于基于时间异步调度策略的网络,可以考虑为网络中的各个转发节点配置合理的缓存空间,在不过度浪费存储资源的同时,避免或缓解时延导致的丢包。为此,网管管理其可以基于网络演算计算出设备的数据积压上界作为其缓存上界。所述缓存上界可以基于所述转发节点的到达曲线α

本申请实施例还提供了一种对网络进行配置的设备1100,如图10所示。所述设备1100包括第一确定单元1110、第二确定单元1120、参数确定单元1130和整形器配置单元1140,各个单元可以分别用于相应地执行前述方法500、600(600’)、700(700’)、800、900或1000。

第一确定单元1110用于确定数据流量在两个端部节点之间的端到端时延上界。

第二确定单元1120,用于确定所述数据流量在所述两个端部节点之间的端到端时延约束。

参数确定单元1130,用于基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数。

整形器配置单元1140,用于基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。

在一种可能的实施例中,所述端到端时延上界被表示为时延上界函数,所述设备1100的第一确定单元1110还用于通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。例如执行方法500、600(600’)、或1000中的相应执行部分。

在一种可能的实施例中,所述参数确定单元1130还用于在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。所述参数确定单元还用于确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。例如执行方法500、600(600’)、或1000中的相应执行部分。

在一种可能的实施例中,所述整形器配置单元1140还用于确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。例如执行方法1000中的相应执行部分。

在一种可能的实施例中,所述设备1100还包括缓存配置单元1150,缓存配置单元1150用于根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界;基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。例如执行方法900或1000中的相应执行部分。

在一种可能的实施例中,所述第二确定单元1120确定数据流量在所述两个端部节点之间的端到端时延约束包括基于所述两个端部节点之间的各个转发节点各自的单点有界时延,确定所述端到端时延上界。例如执行方法700(700’)、800、或1000中的相应执行部分。

在一种可能的实施例中,所述参数确定单元1130基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:确定所述端到端时延上界满足所述端到端时延约束;在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。例如,所述一个配置参数为发送周期。所述至少一个配置参数中的其他配置参数还包括在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度等。例如执行方法700(700’)、800、或1000中的相应执行部分。

本申请实施例还提供了一种对网络进行配置的设备1200,如图11所示。所述设备1200包括存储器1210、处理器1220、以及一个或多个网络接口1230。所述一个或多个网络接口1230用于接收来自网络的信息和/或网管系统需要发送的信息发送至网络。网络接口1230可以将从网络接收到的信息发送给存储器1210和处理器1220,也可以将处理器1220处理或生成的信息发送至网络。所述信息例如可以是携带有需转发的数据流量的报文。所述存储器1210用于存储计算机可读指令,所述处理器1220用于执行存储器1010中存储的所述可读指令,从而使所述设备1200执行方法500、600(600’)、700(700’)、800、900或1000,具体执行内容和实现的功能可参见前述各方法的描述,这里不再赘述。作为一种示例,例如,当所述设备1200执行方法900时,存储器1210中的计算机可读指令可以包括第一确定单元1212、第二确定单元1213、参数确定单元1215和整形器配置单元1217。

本申请实施例还提供了一种计算机可读存储介质或者计算机程序产品,用于分别存储相应的计算机程序,所述计算机程序用于执行前述的方法500、600(600’)、700(700’)、800、900和1000。

应理解,在本申请实施例中,处理器可以是中央处理单元(central processingunit,CPU),一个或多个网络处理器(network processor,NP)或者CPU和NP的组合。处理器还可以是一个或多个可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic arraylogic,GAL)或其任意组合。

存储器可以是指一个存储器,或者也可以包括多个存储器。存储器包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-statedrive,SSD);存储器还可以包括上述种类的存储器的组合。

网络接口可以是以太网网口,也可以是其他类型的网络接口。

可以理解的是,上述对网络进行配置的设备1100的结构组成仅是一种可能的示例。在实际应用中,设备1100可以分别包含任意数量的接口,处理器和存储器等。

应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件或固件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、双绞线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,光盘)、或者半导体介质(例如固态硬盘)等。本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。

最后,需要说明的是:以上所述仅为本申请技术方案的实施例而已,并非用于限定本申请的保护范围。

相关技术
  • 一种进行网络配置的方法和设备
  • 一种配置随机接入的方法、网络设备及终端设备
  • 一种无线链路监听的方法、配置方法、终端及网络设备
  • 网络的选择方法、配置方法、终端设备及网络侧设备
  • 一种网络存储系统的配置方法、装置、设备及介质
  • 用于进行WI-FI网络配置的方法和WI-FI无线网络设备
  • 用于进行WI-FI网络配置的方法和WI-FI无线网络设备
技术分类

06120116337502