CN112671656A - 一种对网络进行配置的方法和设备 - Google Patents
一种对网络进行配置的方法和设备 Download PDFInfo
- Publication number
- CN112671656A CN112671656A CN201910985050.2A CN201910985050A CN112671656A CN 112671656 A CN112671656 A CN 112671656A CN 201910985050 A CN201910985050 A CN 201910985050A CN 112671656 A CN112671656 A CN 112671656A
- Authority
- CN
- China
- Prior art keywords
- delay
- network
- traffic
- shaper
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0864—Round trip delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/083—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5022—Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5025—Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0882—Utilisation of link capacity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/17—Interaction among intermediate nodes, e.g. hop by hop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0894—Packet rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种对网络进行配置的方法和设备,所述方法包括:确定数据流量在两个端部节点之间的端到端时延上界;确定所述数据流量在所述两个端部节点之间的端到端时延约束;基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数;基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置,以使得经过所述整形器整形后的所述流量满足所述网络时延约束,减少网络拥塞和提高传输质量。利用网络演算确定流量转发过程中的逐跳缓存上界,并基于所述缓存上界对逐跳转发节点进行缓存配置,从而合理预留网络资源,满足流量的转发需求。
Description
技术领域
本申请实施例涉及通信技术领域,特别涉及一种对网络进行配置的方法和设备。
背景技术
在现有网络的运行过程中,可能需要依据与发送端签订的用户流量合约发送流量,对流量发送的平均速率和突发大小等进行约束。然而,有时发现流量的发送难以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个转发单元,所述曲线αn(t)和βn(t)分别表示M个转发节点中第n个节点的到达曲线和服务曲线,1≤n≤M,M≥1;t表示所述时间段T内的任意时刻,0<t≤T。所述时间段T内第n个节点的服务曲线和到达曲线之间的最大水平距离即为该节点发送流量的时延上界,而服务曲线和到达曲线之间的最大垂直距离则表示该节点发送流量的缓存上界,如图3所示。
以图2示出的网络结构中流量20的端到端传输为例,阐述基于网络演算的端到端时延上界的计算方法。流量20由发送节点201发出后,其未经整形的初始曲线为σ(t),之后经过整形器203得到整形后的曲线α1(t),α1(t)即为转发节点 205的到达曲线,并且转发节点205可提供的数据转发能力的下界为该节点的服务曲线β1(t)。流量20流入转发节点205后,继续由转发节点205向下一转发节点207转发。流量20到达转发节点207时的到达曲线为α2(t),转发节点207的服务曲线为β2(t)。流量20继续由转发节点207转发至接收节点209,接收节点 209最终接收到的流量20的到达曲线为α3(t)。
利用网络演算原理计算得到端到端的流时延上界的方法有多种,例如分流分析法(Separate Flow Analysis,SFA)、PMOO分析法(英文:Pay Multiplexing Only Once,PMOO)、整流分析法(Total Flow Analysis,TFA)等。不同方法所采用的每个节点的到达曲线αn(t)和/或服务曲线βn(t)的计算方式有可能不同。不同方法利用到达曲线和服务曲线计算端到端的流时延上界的方式也有可能不同。仍以图2示出的流量20的端到端传输过程为例,至少可以采用以下两种方法计算该流量的端到端时延上界。
方式一 分别计算端到端流量流经全部N(N≥1)个转发节点的整体到达曲线α(t)和服务曲线β(t),计算α(t)和β(t)之间的最大水平距离,确定端到端流量的时延上界DB。
该方式中直接以一条端到端的流量为对象。该条流量的到达曲线α(t)以网络中第一个转发节点的到达曲线α1(t)作为其表达,即α(t)=α1(t)。对于端到端流量的服务曲线β(t),则通过对网络中各个转发节点的单点服务曲线βn(t)(n=1,2......N) 作最小和卷积运算得到。
首先定义任意两个转发节点的单点服务曲线之间的最小和卷积计算公式如下:
在任意给定的时刻t,遍历所有s∈[0,t],求解βf((t-s))+βg(s)的下确界值,将求得的该下确界值作为最小和卷积运算在该时刻t的返回结果。βf(t)和βg(t)表示任意两个转发节点βf和βg的服务曲线函数,所述函数为非递减函数;s为中间变量,可以为[0,t]之间的任意取值;inf_表示计算下确界(英文: infimum),例如inf_{E}(x(E))表示计算取值在集合E的函数x(E)的下确界。
基于上述公式1.1,对于流经网络中N个转发节点的数据流量,各个节点的单点服务曲线分别为β1(t),β2(t),......βN(t),则所述数据流量的端到端服务曲线β(t)的计算公式如下:
……
计算α(t)和β(t)之间的最大水平距离即可得到流量20的时延上界,即 DB=Max_Hdis(α(t),β(t))。
方式二 分别计算端到端流量流经全部N(N≥1)个转发节点的到达曲线αn(t)和服务曲线βn(t),分别计算各相应αn(t)和βn(t)之间的最大水平距离,确定所述流量在各个转发节点的时延上界dbn=Max_Hdis(αn(t),βn(t))。对所述各个转发节点的时延上界dbn求和,计算得到端到端流量的时延上界DB=SUM (db1,……dbn),n=1,2......N。
例如对于流量20,如图2所示,其在转发节点203的到达曲线和服务曲线分别为α1(t)和β1(t),而在转发节点204的到达曲线和服务曲线分别为α2(t)和β2(t),则分别计算流量20在转发节点203的时延上界db1=Max_Hdis(α1(t),β1(t)),以及在转发节点204的时延上界db2=Max_Hdis(α2(t),β2(t)),并由此计算得到流量 20端到端的流时延上界DB=db1+db2。
与计算流量20的端到端时延上界的方法类似,也可以采用上述方式一或方式二计算得到图2中流量21的端到端时延上界。在上述方式一和方式二中,在计算流量的到达曲线α(t)和服务曲线β(t)时,仅考虑了各个转发节点的到达曲线和服务曲线。例如,对于图2中的流量20,在按照方式一计算服务曲线β(t)时,仅对转发该流量20的转发节点205和207的单点服务曲线做卷积运算,即 而并未考虑接收节点209的服务曲线,这可以适用于流量20在接收节点209处终止的情形,如流量20仅在AS域内转发至边缘的接收节点209。或者,也可以适用于虽然流量20还需要经由接收节点209继续转发至其他节点,但后续该流量20的转发无需再考虑此前的时延大小的情形。例如流量20在被接收节点209接收后,由接收节点209继续转发至网络中的其他节点,但转发至其他节点时无需再累计此前流量20的时延。需要说明的是,以上情形仅作为示例,不构成采用方式一和方式二计算端到端时延上界的应用场景的具体限定。
在本申请的其他实施例中,流量20在被接收节点209接收后,可能还要继续转发至网络中的其他节点,并且所述其他节点需要获得上一跳的时延上界计算结果。例如,接收节点209为AS域内的边缘节点,其将接收到的流量20转发至另一AS域的边缘节点,而所述另一AS域的网络控制节点为了对其AS域内的数据流的传输质量进行更为准确、有效的控制,可能需要累计计入流量20在上一AS域内的传输时延。在此种情形下,计算流量20在网络200所在的AS 域内的端到端时延上界时,需要考虑流量20在接收节点209的时延情况。当一并考虑接收节点时延时,可考虑采用以下方式三或方式四计算流量的端到端时延上界。
方式三 分别计算端到端流量流经全部N(N≥1)个转发节点及接收节点的整体到达曲线α(t)和服务曲线β(t),计算α(t)和β(t)之间的最大水平距离,确定端到端流量的时延上界DB。
该方式中直接以一条端到端的流量为对象。该条流量的到达曲线α(t)以网络中第一个转发节点的到达曲线α1(t)作为其表达,即α(t)=α1(t)。对于端到端流量的服务曲线β(t),则通过对网络中N个转发节点的单点服务曲线βn(t)(n=1, 2......N)和接收节点的单点服务曲线βN+1(t)作最小和卷积运算得到。
例如对于流量20,其到达曲线α(t)=α1(t),服务曲线 即在计算流量的整体服务曲线β(t)时,同时对转发节点205、转发节点207和接收节点209的单点服务曲线做最小和卷积运算,而不是如方式一那样,仅对转发节点205和207的单点服务曲线做最小和卷积运算。
计算α(t)和β(t)之间的最大水平距离即可得到流量20的时延上界,即 DB=Max_Hdis(α(t),β(t))。
方式四 分别计算端到端流量流经全部N个转发节点到达曲线αn(t)和服务曲线βn(t)(n=1,……N),以及接收节点的到达曲线α(N+1)(t)和服务曲线β(N+1)(t)。分别计算各节点相应的到达曲线和服务曲线之间的最大水平距离,确定所述流量在N个转发节点和接收节点的时延上界dbm=Max_Hdis(αm(t),βm(t))(m=1,......N, N+1)。对所述各个转发节点的时延上界求和,计算得到端到端流量的时延上界 DB=SUM(db1,……dbN,dbN+1)。
例如对于流量20,如图2所示,其在转发节点205的到达曲线和服务曲线分别为α1(t)和β1(t),在转发节点207的到达曲线和服务曲线分别为α2(t)和β2(t),在接收节点209的到达曲线和服务曲线分别为α3(t)和β3(t),则分别计算流量20 在转发节点205的时延上界db1=Max_Hdis(α1(t),β1(t)),在转发节点207的时延上界db2=Max_Hdis(α2(t)-β2(t)),以及在接收节点209的时延上界db3=Max_Hdis (α3(t),β3(t)),并由此计算得到流量20端到端的流时延上界DB=db1+db2+db3。
对于图2示出的流量21,也可以采用上述方式一至四的任意一个计算该流量的端到端时延上界。需要说明的是,在实际应用中各网络节点在发送不同的数据流时所承担的角色或转发位置有可能不同。所述承担的角色例如包括发送节点、转发节点和/或接收节点等,例如节点201对于流量20而言是发送节点,但对于网络200中的其他流量而言,可能承担转发节点或接收节点的角色。所述不同的转发位置是指同一网络节点在转发不同的数据流时所处的转发跳数可能不同,例如图2中,转发节点207是流量20的第2跳转发位置,而对于流量21而言,则是其第3跳转发位置。由此,同一网络节点在发送或接收不同的流量时,其到达曲线和服务曲线可能有所不同。例如,转发节点207在转发流量20时,作为第 2跳转发节点,其到达曲线和服务曲线分别为α2(t)和β2(t);而在转发流量21时,作为第3跳转发节点,其到达曲线和服务曲线分别为α3’(t)和β3’(t)。
以上方式一至四仅作为示例,在实际应用中也可以选择其他基于网络演算的端到端时延的计算方法。
以上方式一至四阐述了针对单流计算端到端时延的方法,在一些其他情形下,发送节点也可能需要发送满足相同形态的多条流量,所述多条流量经由发送节点聚合后形成一条汇聚流量。由多条流量汇聚而成的所述汇聚流量经过入口整形器整形后,其到达曲线为基于多条流量各自的到达曲线确定的汇聚到达曲线。例如,对于整形后满足线性形态的汇聚流量,其在入口处整形后的到达曲线由聚合成所述汇聚流量的多条流量在入口处整形后的到达曲线之和确定,其中M 为所述发送节点上汇聚的单流个数,为第i条汇聚前的单流的到达曲线, i=1……M,的计算方式可参见前述针对单流的情形。
对于采用基于时间异步的网络调度策略的流量转发,本申请实施例提供了一种保证有界时延的网络整形器的配置方法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={s1,s2……sn,n≥1},所述参数集合S中的全部或部分参数可以基于时延约束 DB_Cons确定并配置。具体地,在保证所述流量经过特定整形器模型整形后的端到端时延上界DB满足时延约束DB_Cons的条件下,例如,满足约束DB≤ DB_Cons的条件下,确定所述特定整形器模型的参数集合S中的全部或部分参数的取值。为了确定满足约束DB≤DB_Cons时的所述特定整形器模型的参数取值,需确定所述流量采用所述特定整形器模型的、基于网络演算的端到端时延上界DB的表达式。在某些情形下,初始曲线σ(t)可作为接收流量的第一个转发节点的单点到达曲线。仍以图2为例,从发送节点201发出的流量20进入入口的整形器203。发送节点201包括图1示出的发送单元102,用于将流量20从发送节点201发出。流量20的初始曲线σ(t)即为接收该流量的第一个转发节点205 的单点到达曲线α1(t),满足α1(t)=σ(t)。在其他可能的情形下,第一个转发节点 205的单点到达曲线α1(t)与初始曲线σ(t)并不完全相同,但可以具有一定的关联关系。在某些情形下,按照流量流经的顺序,各在后网络节点的单点到达曲线可以与整形后的初始曲线和在前的各个网络节点的单点到达曲线关联,例如,流量 20在接收节点209的单点到达曲线α3(t)可以与初始曲线σ(t)、转发节点205的单点到达曲线α1(t)、以及转发节点207的单点到达曲线α2(t)相关联。而流量流经的各个网络节点的单点服务曲线则可以和该节点可提供的服务能力相关,具体可能受诸如节点端口带宽、节点调度策略等因素的影响。以上所列出的影响网络节点的单点到达曲线和服务曲线的关联因素仅作为示例,具体计算方式可根据需要选择或调整,只要能够合理地确定出所需网络节点的到达曲线和服务曲线,并最终计算得到所述流量的端到端时延上界即可。
在一种可能的实施例中,可以采用方式一或方式三确定流量的端到端时延上界的表达式。此时的流时延上界,
DB=Max_Hdis(α(t),β(t))=Maxt(u:α(t)=β(t+u)) 公式(1.3)
上述公式中,Maxt(u:α(t)=β(t+u))是基于流量的到达曲线α(t)和服务曲线β(t)计算端到端时延上界Max_Hdis(α(t),β(t))的具体展开式。该展开式表示遍历一定时间段内全部时刻t,求出各个时刻t下的参数u以满足等式α(t)=β(t+u),并求出全部参数u的最大值作为时延上界DB。
根据约束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确定按照当前整形器配置参数整形后的所述流量的第一端到端时延上界DB1。
仍以图2为例,从发送节点201发出的流量20进入入口的整形器203,整形器203按照确定的当前整形器配置参数集合S1,对入口处的流量进行整形,使整形后输出的流量20满足初始曲线σ1(t)。对于适配基于时间异步的网络调度策略的入口整形器,基于网络演算确定整形后的所述流量的第一端到端时延上界 DB1。具体地,例如可以考虑采用上述方式一至四中的任意一种计算得到所述流量端到端时延上界。所述流量端到端时延上界的计算方法在某特定网络中可以予以固定,例如计算DB1时延上界的网络演算表达式可以与S520中的相应表达式相同,以保证所述网络流量传输业务的稳定性。
在一种可能的设计中,在计算所述流量的时延上界时,可以一并保存计算过程中确定的所述流量流经的一个或多个网络节点的单点到达曲线和服务曲线的结果。需要说明的是,具体保存哪些网络节点的单点曲线的计算结果,以及对于具体的各个节点而言,选择同时保存单点到达曲线和服务曲线,还是仅保存到达曲线或服务曲线中的一个,可以根据需要灵活设置,这里不做具体限定。
S615判断第一时延上界DB1是否满足时延约束DB_Cons’,例如,DB1≤ DB_Cons’;如果不满足,则执行S620;如果满足,则方法结束。
判断S610中确定的时延上界DB1是否满足新的业务时延约束,即判断DB1≤DB_Cons’这一条件是否满足。如果发现不满足条件,例如对于流量20,发现其基于整形器203当前的参数集合S1整形后的流时延上界DB1大于时延约束值 DB_Cons’,则说明所述流量依据当前整形器参数整形后不满足业务时延要求,影响网络服务质量。此时,有必要对流量20进行重整形,以使得流量20的端到端的时延上界能够满足新的业务时延约束,例如满足DB1≤DB_Cons’,从而保证对流量20的传输更好地适配业务场景需求。当判断需要对流量20重整形时,继续执行S520。而当流量20的流时延上界满足DB1≤DB_Cons’时,此时可以不做任何调整,以保证数据流传输的稳定性。
S620基于所述时延约束DB_Cons’,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二端到端时延上界DB2满足所述端到端时延约束DB_Cons’,即DB2≤DB_Cons’。
S620基于所述流量重新确定的时延约束DB_Cons’,确定并调整整形器的其中一个或多个配置参数的方式与S510的参数配置方式类似,在这里不再赘述。需要说明的是,在执行调整整形器参数集合这一操作时,一般情形下只要确定任意一组能够满足DB2≤DB_Cons’约束的参数集合S1’即可,具体可以通过调整整形器203的参数集合S1中的一个或多个整形参数实现,调整后的新的参数集合记为S1’。但在某些情形下,例如对于上述在满足基本时延约束DB_Cons的前提下,期望对时延约束满足性进一步调优的情形,理想情况下可以直接确定一组参数集合S1’,使得DB2=DB_Cons’,或者确定一组参数集合S1’,使得DB2在小于DB_Cons’的前提下,能够最为接近、或至少相对更为接近DB_Cons’。此时,依据调整后的整形器参数集合S1’整形后的流量符合整形曲线σ’(t),σ’(t)≠σ(t)。
如果根据时延约束DB_Cons’可调整的整形器参数包括多个,可以根据参数含义、业务场景等选择调整全部或部分参数;或者,也可以结合调整难度,优先调整其中的一个或多个,在仍无法满足时延约束时再选择调整其余参数中的多个等。整形器参数的具体调整原则和调整个数,可以根据实际需要具体设定。在一种可能的设计中,还可以在依据时延约束调整整形器参数中的一个或多个的基础上,依据网络的其他可能的性能指标,如转发节点的转发能力等,对整形器的其他参数进行调优。
为了更清楚地阐述本申请可能的实施方式,以下基于判断不满足业务时延约束,需对采用单桶整形器模型的配置参数进行调整的情形,对图6示出的调整方法进行详细说明。所述单桶整形器模型适配基于时间异步的网络调度策略。所述方法600’包括以下内容,如图5b所示。
S605’确定流量的端到端时延约束DB_Cons’。
仍以图2为例,例如可以通过网络控制节点确定流量20所承载业务类型的时延约束DB_Cons’,其中由于前序输入流量与流量20所承载的业务类型不同,因此需重新确定对应于流量20的时延约束DB_Cons’。
S610’基于单桶模型整形器对所述流量进行整形,确定按照当前整形器配置参数整形后的所述流量的第一端到端时延上界DB1。
单桶模型整形器203满足整形函数σ(t)=b+rt,其中参数b表示整形器输出流量允许的最大突发大小,即令牌桶的深度;参数r表示整形器输出流量的平均速率,即令牌补充速率。初始时,经过单桶模型整形器整形后的流量20满足σ(t)=b0+r0t,即整形器的初始配置参数集合S1={b0,r0}。采用上述方式一计算所述流量20的端到端时延上界,且设置流量20的初始曲线σ(t)即为接收该流量的第一个转发节点205的单点到达曲线α1(t),则所述流量的到达曲线α(t)=α1(t)=σ(t)=b0+r0t。转发节点205的服务曲线为β1(t)=R1(t-T1),转发节点 207的服务曲线为β2(t)=R2(t-T2),其中,R1、R2表示服务速率,T1、T2表示流量在该节点的等待时延,则可以得到流量20的端到端服务曲线的表达式为 因此,流量20的第一端到端时延上界
S615’判断时延上界DB1是否满足时延约束DB_Cons’,例如,DB1≤ DB_Cons’;如果不满足,则执行S620’;如果满足,则方法结束。
若对于流量20的时延约束为DB_Cons’,并且确定其第一端到端时延上界 DB1>DB_Cons’,则继续执行S620’。
S620’基于端到端有界时延约束DB_Cons’,确定并调整所述单桶模型整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二端到端时延上界DB2满足DB2≤DB_Cons’。
为了满足业务时延要求,需要重新确定第二端到端时延上界DB2,使得 此时只要入口的整形器203的配置参数满足b≤ (DB_Cons’-T1-T2)×min(R1,R2)的约束即可。确定参数b的任意取值使其满足所述约束,将满足所述约束的b的值b1,作为调整后的参数值配置给入口的整形器203,以使得入口处按照σ(t)=b1+r0t整形后的流量20的端到端时延满足约束DB_Cons’。
在一种可能的设计中,还可以基于各转发节点的转发能力对参数r1的取值进行调整,使其满足约束R0≤r1≤min(R1,R2),即使得入口处整形后的流量的输出平均速率大于所述流量在整形前的平均输入速率,并且不超过各转发节点服务速率的最小值,以使整形后的流量符合相应流量转发路径的实际转发能力。具体实现时,当参数r的初始取值r0<min(R1,R2)时,可以在满足约束R0≤r≤ min(R1,R2)的前提下增大参数r的值,以尽可能充分地利用各转发节点的转发服务能力,提升网络业务服务质量。而当参数r的初始取值r0>min(R1,R2)时,则减小参数r的值,以使得入口处的流量输出不超过各转发节点的服务能力,尽可能地减少拥塞和丢包发生率。
对于同时调整单桶整形器全部参数的情形,经过调整后的单桶整形器的配置参数集合S1’={b1,r1},其中参数b1基于时延约束DB_Cons’进行调整,而参数 r1则可以在不超过转发节点的转发服务能力的前提下,结合网络的具体需求进行调整。
情形二 整形器适配基于时间同步的网络调度策略。
对于采用基于时间同步的网络调度策略的流量转发,本申请实施例提供了一种保证有界时延的网络整形器的配置方法700。基于流量流经的各转发节点所遵循的网络调度策略,确定所述流量在网络中传输的端到端有界时延,基于所述流量的端到端有界时延的值配置整形器参数,使得所述流量的传输满足网络时延约束。如图6a所示,所述方法700具体包括以下内容。
S705确定流量的时延约束需求DB_Dmd。
不同于基于时间异步调度策略的网络,对于采用基于时间同步调度策略的网络,可以保证流量在各转发节点的单点转发时延有界。因此,不同流量的端到端时延约束DB_Cons虽然也与网络对于不同流量所承载的业务类型有关,但为了保证流量在不超过各个转发节点实际转发能力下的可靠传输,所述流量在经入口整形器整形并输出后,实际应当能够满足相应的时延约束需求DB_Dmd。所述时延约束需求DB_Dmd用于保证所述流量在整形输出后,流经网络中的所述各个转发节点时,不超过各个转发节点的实际转发能力,以此保证不造成网络拥塞或丢包。为此,通常基于所述流量在时间同步调度策略的网络中所流经的各转发节点的单点有界时延确定所述时延约束需求DB_Dmd。假设所述流量在传输路径上共经过n个转发节点,其中第r(1≤r≤n)个转发节点的单点有界时延为 dbr。在一般的情形下,各转发节点均遵循相同的网络调度策略,即所述各转发节点的单点有界时延dbr均相同,则此时对于所述流量的时延约束需求DB_Dmd 可以为转发节点的单点有界时延dbr。而在其他可能的情形下,各转发节点中的一个或多个也可以和入口处的整形器遵循不同的基于时间同步的网络调度策略,或者多个转发节点所遵循的基于时间同步的网络调度策略也可以不同。由于流量在每个转发节点可以实现单点转发时延有界,能够分别获得各个转发节点基于其网络调度策略的单点有界时延dbr。采取不同网络调度策略的转发节点的dbr值可能不同,而即使是采取相同的网络调度策略的多个转发节点,其具体配置的调度控制参数也可能不同,因而导致所述多个转发节点的dbr值也可能不同。对于基于时间同步调度策略的网络,流量需要满足的时延约束需求DB_Dmd可以由所述流量流经的全部转发节点的单点有界时延的最大值确定。具体地,仍以流量流经n个转发节点为例,则dbmax=max_{db1,……+dbn,n≥1},dbmax为所述流量流经的全部n个转发节点的单点有界时延的最大值,此时,所述流量的时延约束需求DB_Dmd=dbmax,以此保证所述流量即使在单点时延最大的转发节点也不会发生拥塞,以此保证所述流量在整条转发路径上的传输可靠。
仍以图2示出的网络结构中流量20的端到端传输为例,流量20从发送节点 201经入口的整形器203整形后,先后经过转发节点205和207发送至接收节点 209。举例而言,当转发节点205和207采用相同的调度策略而具有相同的单点时延时,流量20的端到端时延约束需求DB_Dmd=db1=db2。当转发节点205 和207的单点时延不相同,如转发节点205的单点时延为3s,而转发节点207 的单点时延为1s时,则流量20满足的时延约束需求应当不小于dbmax=max_{1s, 3s}=3s,以保证所述流量在转发时延更大的转发节点205不发生拥塞。
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)算法等可为网络中的时间敏感数据流量提供整形和调度的技术。实际应用中也可以根据需要选择其他适配于基于时间同步网络调度策略的整形算法。
在一些情形下,流量所流入的整形器以及逐跳转发节点均遵循相同的网络调度策略,并且用于转发节点的各个网络调度参数配置相同,则此时可以直接依据转发节点中与时延有关的网络调度参数,配置所述整形器的其中一个或多个与时延相关的参数,以保证流量满足整个网络的时延要求。例如,可以将与时延相关的整形参数直接配置为各转发节点的相应调度参数,或者配置为大于各转发节点相应调度参数的合理值。所述与时延有关的网络调度参数,例如可以是发送周期等。在其他一些情形下,也可以根据需要调整其他任意个数的配置参数。
在一些其他情形下,多个转发节点遵循的网络调度策略可能不同,或者不同转发节点的调度参数配置不同,如前所述的,由此可能导致逐跳转发节点的单点有界时延有所不同,则可以依据各转发节点中单点有界时延的最大值dbmax,配置所述整形器的其中一个或多个与时延相关的参数,例如,当与时延相关的整形参数由转发节点的单点有界时延直接且唯一的决定时,可以将与时延相关的整形参数直接配置为大于或等于dbmax的合理值,以保证流量在全部转发节点不会发生拥塞。
为了更好地匹配流量流经路径的实际转发能力,还可以依据转发节点的其他网络调度参数,适配性地调整整形器中的其他对应参数。具体地,例如当其他网络调度参数包括可转发报文数时,则可以确定各转发节点在发送周期内可转发报文数的最小值,作为整形器可转发报文数这一参数的配置值等。所述其他网络调度参数的配置规则可基于网络结构和网络遵循的调度策略等具体确定。
在一种可能的设计中,还可以对一个或多个与时延约束无关的参数进行预配置,如针对相对固化的配置参数等。
经过上述各种可能的方式配置完成的整形器参数,记为完整的配置参数集合 S1。
在某些情形下,如由于不同流量流经的转发节点采用的调度策略不同,或者部分或全部转发节点配置的调度参数发生变化等情形下,流量需要满足的时延约束需求可能会发生变化,导致例如按照前述方法700确定的配置参数整形后,流量的端到端时延上界不再满足新的业务时延约束。在本申请的另一实施例中,当网络控制节点发现按照当前配置参数整形后的流量无法满足新的时延约束需求时,还可以对入口处的整形器的配置参数中的一个或多个进行调整,以使得按照调整后的配置参数整形后的流量能够满足相应的时延约束需求。调整整形器配置参数的方法800包括以下内容,如图7所示。
S805确定流量的时延约束需求DB_Dmd’。
假设新的时延约束需求确定为DB_Dmd’,并且由此导致流量在整形后的时延不满足新的时延约束要求。或者,在某些情形下,虽然所述流量对应的时延约束需求DB_Dmd’并未发生变化,但所期望的时延约束满足性发生变化,例如对于某一流量而言,按照当前整形器的参数配置,所述流量整形后的时延还未达到其流经路径所能够被允许的最小时延,此时依然可以对所述整形器的整形参数进行调整,以使得整形后流量的时延进一步调优,提高网络传输效率和带宽利用率。
上述情形仅作为示例,实际应用中也可以根据其他需要或预设的规则重新确定所述流量的时延约束。
S810确定按照当前整形器配置参数整形后的所述流量输出时的第一时延 DB1。
对于按照当前整形器配置参数进行整形的所述流量在输出时的第一时延 DB1,其计算方式取决于整形器所采用的具体的整形模型。例如,对于支持时间同步调度策略的CQF或TAS模型的整形器而言,流量整形后的时延即为上述两种模型中设置的发送周期参数。在其他可能的情形中,流量整形后的时延也可能基于其他参数直接获得或推导获得,这与整形器具体选用的整形模型有关。
S815判断第一时延DB1是否满足时延约束需求DB_Dmd’;如果不满足,则执行S820;如果满足,则方法结束。
判断第一时延DB1是否满足重新确定后的时延约束需求DB_Dmd’,主要是判断按照当前整形参数配置整形后的流量,能否使得各转发节点在不拥塞的情况下对其进行正常转发,或者在流量可以正常转发的基础上,基于新的时延约束需求DB_Dmd’,判断是否需要对整形后的流量的时延进行调优等。
仍以图2中的流量转发为例,如果初始状态下,转发节点205的单点时延为 3ms,而转发节点207的单点时延为1s,则流量20初始应当满足的时延约束需求DB_Dmd=3ms,整形器据此配置整形参数,使得流量20整形后的第一时延 DB1=4ms,例如,满足DB1>DB_Dmd’。在一种可能的情形中,如果由于转发节点207的调度参数发生变化,其单点时延调整为5s,则流量20的时延约束应当重新确定为DB_Dmd’=max_{3ms,5ms}=5ms,则此时如仍然按照初始配置的整形参数,流量20整形后的第一时延DB1(=4s)<DB_Dmd’(=5s),即不满足新的时延约束DB_Dmd’,如此,流量20在传输到转发节点207时,超过转发节点207 的单点转发能力,从而导致流量20在转发节点207发生拥塞。因此,需要执行 S820,对整形器参数配置进行调整,以使得整形后的流量20的第二时延满足新的时延约束DB_Dmd’。在另一种可能的情形中,转发节点205和207的单点时延并未发生变化,则流量20的时延约束DB_Dmd仍然为3ms,此时由于流量20 按照初始配置参数整形后的第一时延DB(=4ms)>DB_Dmd(=3ms),则可以考虑对整形器参数配置进行调优,使得流量20按照调优后的配置参数整形后的第二时延DB2等于时延约束DB_Dmd’,此种情形下,时延约束DB_Dmd’=DB_Dmd,即3ms,从而提高网络传输效率和带宽利用率。以上情形仅作为示例,不满足时延约束的其他情形也可适用。
S820基于所述时延约束需求DB_Dmd’,调整整形器的至少一个配置参数,以使得经过所述整形器整形后的所述流量的第二时延DB2满足所述时延约束需求,即DB2≥DB_Dmd’。
S820基于流量重新确定的时延约束需求DB_Dmd’,调整整形器的其中一个或多个配置参数的方式与S710的参数配置方式类似,在这里不再赘述。需要说明的是,在执行调整整形器参数集合这一操作时,一般情形下只要确定任意一组能够满足DB2≥DB_Dmd’约束的参数集合S1’即可,具体可以通过调整整形器参数集合S1中的一个或多个整形参数实现,调整后的新的参数集合记为S1’。但在某些情形下,例如对于上述在满足基本时延约束性需求DB_Dmd的前提下,期望对时延约束满足性进一步调优的情形,可以直接确定一组参数集合S1’,使得 DB2=DB_Dmd’,或者确定一组参数集合S1’,使得DB2能够较整形参数调整前更为接近DB_Dmd’即可。例如对于S815示出的第二种需对参数进行调优的情形,也可以考虑对整形器的配置参数进行调整,使得整形后流量20第二时延DB2,相较调整以前更接近时延约束需求DB_Dmd’(3ms),如从4s调整为3.5ms。如果整形器的参数包括多个,可以根据参数含义、业务场景等选择调整全部或部分参数;或者,也可以结合调整难度,优先调整其中的一个或多个,在仍无法满足时延约束时再选择调整其余参数中的多个等。整形器参数的具体调整原则和调整个数可根据需要设定。
为了更清楚地阐述本申请可能的实施方式,以下基于需对采用CQF整形器模型的整形参数进行配置的情形,对图6示出的配置方法700进行详细说明。所述CQF整形器模型适配基于时间同步的网络调度策略。
仍以图2示出的网络结构中流量20的转发为例说明。假设流量20流入的入口处整形器203,以及其流经的全部转发节点205和207均采用CQF网络调度策略。CQF整形配置参数包括发送周期T(毫秒ms),在周期T内最多可发送的报文个数M(个)以及报文最大长度L(Byte字节)。设整形器203需配置的参数集合S1={Ts,Ms,Ls}。所述方法700’包括以下内容,如图6b所示。
S705’确定流量在CQF模型网络中的时延约束需求DB_Dmd。
转发节点205和207均采用CQF网络调度策略,其中转发节点205的CQF 调度参数集合S205={T205=100ms,M205=10个,L205=1500byte},转发节点207的 CQF调度参数集合S207={T207=150ms,M205=15个,L205=2000byte}。
流量20的端到端时延约束由其流经的全部转发节点205和207的单点有界时延的最大值确定。对于基于CQF调度模型的网络,转发节点的单点有界时延由CQF中的配置参数发送周期T确定。因此,流量20的端到端时延约束需求 DB_Dmd=max_{T205,T207}=max_{100ms,150ms}=150ms。
S710’基于所述流量的时延约束需求DB_Dmd,确定基于CQF模型的整形器的至少一个或多个配置参数,以使得经过所述整形器整形后的所述流量满足时延约束。
基于时延约束需求DB_Dmd=150ms,可以配置流量20在入口处的整形器 203的整形参数之一,即发送周期Ts=150ms。在一些情形中,也可以将发送周期 Ts设置为大于150ms的任意合理值,以尽可能实现对于流量的零拥塞传输。在一些实施例中,还可以基于转发节点205和207配置的其他调度参数,即在周期 T内最多可发送的报文个数M和/或报文最大长度L,配置整形器203的相应整形参数。具体地,例如,可以将整形器203在周期Ts=150ms内最多可发送的报文个数Ms设置为Ms=min_{M205,M207}=min_{10个,15个}=10个,将报文最大长度Ls设置为Ls=min_{L205,L207}=min_{1500byte,2000byte}=1500byte。由此,保证经过整形器203整形后的流量20的输出速率不超过其所流经的各转发节点中的最小转发能力,从而避免网络发生拥塞,但同时又能够相对充分地利用网络的转发能力,提高网络传输效率和服务质量。
在一些情形中,也可以考虑不将整形器的各整形参数严格地按照上述预设的最大或最小值计算原则确定,而是以按照所述计算原则确定的相应值为参考依据,在合理、可控的范围内结合实际场景对各参数值予以适当调整。例如,可以考虑将Ts、Ms和Ls分别设置为140ms,15个和1500byte等,从而在流量的整体传输效率和单点少量拥塞情况之间做出平衡。这在一些网络应用中可能是有必要的,例如某流量所承载的业务需要低时延,为此允许出现适当的极小概率的丢包的情形下,当所述流量流经的转发节点较多时,可以考虑对整形器的各相应整形参数进行灵活、适度的选择性关联配置。以上情形仅作为示例,具体配置方式可结合实际需求和应用场景确定。
在一些可能的实施例中,虽然在情形二示出的所述方法700、800,以及采用CQF算法对所述方法700的具体示例中,流量经整形器整形后输出时满足的时延约束基于所述流量在时间异步调度策略的网络中所流经的各转发节点的时延确定,但在具体应用中,通常需要考虑利用网络对于不同流量的端到端网络时延约束DB_Cons作为前提约束条件,以此保证所述流量经整形器整形后的端到端时延上界满足对于相应业务的端到端网络时延约束。与前述方法500中的S505 相类似的,在基于时间同步网络调度策略的网络中,所述流量的端到端网络时延约束DB_Cons也与所述流量承载的业务类型,特定时段对所述流量的传输速率要求,或其他可能的网络数据传输需求等有关。例如,对于用于承载不同业务的流量,其网络时延约束DB_Cons可以有所不同,此处不再赘述。所述以流量的端到端网络时延约束DB_Cons作为前提约束条件,具体为只有当基于流量所流经的各转发节点确定的端到端时延上界DB不超过网络对所述流量的端到端时延约束DB_Cons,采用所述方法700或800对整形器参数进行配置或调整;否则,说明当前所述流量流经路径的节点转发能力无法满足网络的实际需求,可能需要对整个网络进行升级或改造等,因此可以暂时不对整形器参数执行配置或调整操作,以节约网络带宽,减少不必要的资源浪费。在一种可能的实施例中,所述基于流量所流经的各转发节点确定的端到端时延上界即为各转发节点单点有界时延dbr的和。在一种可能的实施例中,可以向用户输出提示信息,提示用户对网络转发节点的转发能力进行适配性改造或性能提升等。
在一些可能的实施例中,对于上述情形一和情形二所涉及的各种整形器参数配置和调整方法,可以为相应方法的执行设置一个或多个触发条件,在同时满足所述一个或多个触发条件时对被监控的发送单元所发出的流量执行前述的各个方法。所述触发条件可以包括一定的时间间隔、网络监管规则等。具体地,例如当包括发送单元102的发送节点201发出的流量类型在较长的一段时期内固定或相对固定时,如固定为流量20的类型,则可以每间隔60s对发出的流量执行上述方法;而当发送节点201发出的流量类型灵活可变时,则可以考虑将网络监控规则设置为检测流量类型是否变化,并且当发现发送节点201发出的流量发送变化时,触发上述各方法;或者,将网络监控规则设置为到达一定的网络拥塞时长或级别,并当发现网络中的拥塞时长或级别到达预设值时,由包括网络控制单元 101的网络控制节点触发上述各方法,确定造成网络拥塞的数据流,以调整相应发送节点的整形参数;或者为了预防网络拥塞的发生,将网络监控规则设置为检测到网络节点流量的突发增加,并在发现流量突发性增加时,触发上述各方法;或者对于基于时间同步调度策略的网络,可以在探测到网络中的一个或多个转发节点的配置参数发生变化时,触发上述各方法;或者也可以设置多个上述触发条件,例如当同时检测到流量类型发生变化并且满足一定的时间间隔时,触发上述各方法等。在实际应用中,触发条件和触发规则可以根据需要具体设置,以上触发条件和规则仅作为示例。
为了保证在出现网络时延的情形下,尽可能少地出现丢包情况,可以考虑为网络中的转发节点配置较大的缓存空间,以尽可能多的容纳网络时延需求能够满足的流量在所述转发节点的积压数据。在某些情形下,如转发节点出现突发数据流量,或某时段内汇聚的数据流量较多,或转发节点的缓存空间有较多限制等情况出现时,可能需要在尽量保证无拥塞丢包的前提下适当节约存储资源,因此需要为流量分配足够但合理的缓存空间。对于前面阐述的基于时间同步调度策略的网络,由于可以通过相应的调度策略保证转发节点逐跳时延有界,因而能够相对可控地为各转发节点规划并预设一定的缓存空间,以保证流量在逐跳有界时延约束下的无拥塞或少拥塞转发。然而,对于基于时间异步调度策略的网络,虽然流量在入口处被整形以尽可能满足一定的时延约束,但所述流量在各转发节点的逐跳时延无法预先确定,导致所述流量在各转发节点由于时延而造成的拥塞情况无法预估,因此不易提前预留合理的缓存空间以存储流量数据积压。
本申请实施例还提出一种设备的流量缓存配置方法900,利用网络演算计算出网络节点的数据积压上界作为其缓存上界,并基于所述缓存上界配置所述网络节点的缓存,以在尽可能避免网络拥塞的前提下节约配置资源。所述网络节点例如可以是流量流经的逐跳转发节点。所述方法例如可以与前述方法500、600 (600’)、700(700’)或800结合使用。所述方法900包括以下内容,如图8所示。
S910确定流量在转发节点的到达曲线αn(t)和服务曲线βn(t)。
流量在当前转发节点的到达曲线αn(t)可以根据其上一跳转发节点的到达曲线αn-1(t)和服务曲线βn-1(t)计算得到,具体地,αn(t)=sup_{u≥ 0}{αn-1(t+u)-βn-1(u)},即在任意给定时刻t,遍历所有u≥0,求解αn-1(t+u)-βn-1(u) 的上确界值,将该上确界值作为当前转发节点的到达曲线αn(t)在该时刻t的返回结果。u为中间变量,可以为大于等于0的任意取值;sup_表示计算某集合的上确界(英文:supremum),例如sup_{E}表示计算集合E的上确界,即大于或等于E的所有其他元素的最小元素,所述最小元素不一定在集合E内。
流量在当前转发节点的服务曲线由该节点自身的转发能力确定,例如具体可以由节点遵从的调度机制、最大报文长度、端口速率等因素影响,可以表示为βn (t)。
所述流量在所述当前转发节点的到达曲线αn(t)和服务曲线βn(t)可以在需要估算节点缓存时实时计算,也可以在计算所述流量的时延上界时,预先保存单点到达曲线和服务曲线的计算结果,在需要估算节点缓存时直接获取相应的存储内容,具体可参见S610中的相应描述。
S915基于所述到达曲线αn(t)和服务曲线βn(t),确定所述转发节点的缓存上界vn(α,β)。
所述转发节点的数据积压上界,也即缓存上界vn(α,β)可以通过vn(α,β)= Max_Vdis(αn(t),βn(t))=sup_{t≥0}{αn(t)-βn(t)}求得,即遍历所有t≥0,求解αn(t)-βn(t)的上确界值,将该上确界值作为当前转发节点缓存上界vn(α,β)的计算结果。所述计算结果即为所述转发节点的到达曲线αn(t)和服务曲线βn(t)之间的最大垂直距离。
S920基于确定的所述缓存上界vn(α,β),确定为所述流量分配的缓存。
基于确定的所述缓存上界vn(α,β),确定为所述流量分配的缓存,所述分配的缓存大于等于所述缓存上界vn(α,β)。考虑由于诸如硬件实现或存储策略等因素,实际存储数据时可能会损失一部分缓存空间,分配缓存时可以在考虑缓存上界vn(α,β)的基础上,适当加入一定的容限,以应对可能的实现层面的存储空间损失。
采用以上方法计算得到的vn(α,β)为针对单流的缓存上界,基于所述缓存上界分配的缓存大小也针对所述单流。在实际应用场景中,一个转发节点通常需要承载多流的转发,可以例如基于为每条单流分配的缓存进行求和计算,确定所述转发节点为实现全部流经流量的无拥塞转发所需的整体缓存空间大小,并基于其中所述每条单流的实际需求缓存分配相应的缓存空间和/或缓存位置等。
对于基于时间异步调度策略的网络,在一些情形下,由于网络传输或转发节点的处理能力等因素,流量在经过各转发节点时可能会出现较为明显的时延,并且时延通常可以逐跳传递,随着时延的累加而造成在某个转发节点的流量突发,导致拥塞丢包。为了避免上述情形的发生,在一种可能的实施例中,可以在各转发节点设置相应的逐跳整形器,以对流量进行逐跳整形和规范。所述逐跳整形器可以设置在当前转发节点的流量输出位置,以在所述流量向下一转发节点发送之前,对经过所述当前转发节点转发出去的输出流量进行整形。不同于入口处的整形器,逐跳整形器通常不对需转发流量做不同形态的整形,而只是对流量在输出转发前按照其流入时的形态进行规整,因此逐跳整形器通常与入口处的整形器支持相同的整形模型,如均支持单桶模型等,但对于同一流量的传输,逐跳整形器和入口整形器在支持相同整形模型的基础上,具体的配置参数可以相同,也可以不同,具体参数值可根据实际场景具体配置。所述逐跳整形器例如可以是图1 示出的独立的整形器106;或者,所述逐跳整形器也可以作为相应转发节点中的单元,实现逐跳整形功能,例如集成在图2示出的转发节点205和/或207中。
在一种可能的实施例中,对于转发所述流量的各转发节点而言,用于各转发节点的逐跳整形器的整形参数配置可以与入口整形器的参数配置相同,则所述流量在经过逐跳整形器整形后,在转发节点输出时的到达曲线αn’(t)与入口处整形后的初始曲线σ(t)相同,即αn’(t)=σ(t),n=1,......N,N为所述流量转发路径上经过的转发节点个数。在其他可能的实施例中,用于各转发节点的逐跳整形器的整形参数配置也可以根据需要具体设置,此时各转发节点输出时的到达曲线αn’(t) 可能相互之间有所不同,可能与入口处整形后的初始曲线σ(t)也有所不同。需要说明的是,所述流量在经过转发节点的逐跳整形器整形后,输出的到达曲线αn’(t) 通常也与仅在入口处整形,然后由同一转发节点未经逐跳整形而直接输出的到达曲线αn(t)有所不同,即αn’(t)≠αn(t)。在某些特殊情形下,αn’(t)也可能与αn(t)存在计算结果上的相同,即αn’(t)=αn(t)。
在设置逐跳整形器时,由于各转发节点的服务曲线仅与其自身的转发能力有关,因此各转发节点的服务曲线并不受逐跳整形的影响,即对于设置了逐跳整形器的各转发节点,其服务曲线βn’(t)与仅在入口处整形情形下的服务曲线βn(t)相同,即βn’(t)=βn(t)。
基于上述确定的各转发节点的αn’(t)和βn’(t),可以计算得到当前转发节点的逐跳时延dbn=Max_Hdis(αn’(t),βn’(t)),并可以据此确定流量在经过逐跳整形和规范后的端到端有界时延DB=db1+......dbN,其中N为所述流量流经的转发节点的个数。由此,通过逐跳整形器的逐跳整形和规范,在一定程度上保证了基于时间异步网络中的单点时延有界。在某些情形下,例如上述各逐跳整形器的配置参数与入口整形器的配置参数不同时,可以考虑基于上述确定后的端到端有界时延 DB调整入口处的整形器参数,具体调整方式可参见前述方法600。需要说明的是,以上例举了对于每个转发节点均设置逐跳整形器的情形,在实际应用中也可以根据需要仅选择在部分转发节点配置逐跳整形器,例如根据监控历史数据,选择相对容易发生丢包或时延抖动的关键转发节点配置逐跳整形器等,以在尽可能避免网络拥塞和节约网络资源之间做出平衡。
以上阐述了单流场景下的逐跳整形器的设置及时延确定方法,在更多的实际应用场景中,各转发节点处可能会出现多流汇聚的情形。所述多流汇聚是指具有相同形态的多条流量在同一转发节点汇聚,由所述转发节点对所述多条流量进行聚合后转发出去的情形。例如,均满足单桶模型形态的单条流量A、B和C到达同一转发节点。流量A的到达曲线为α1(t)=b1+r1t,流量B的到达曲线为α2(t)= b2+r2t,流量C的到达曲线为α3(t)=b3+r3t,其中参数b1、b2和b3的取值可以相同、部分相同或全部相同,参数r1、r2和r3的取值也可以相同、部分相同或全部相同。所述转发节点在接收到流量A、B和C之后,对所述流量A、B和C 进行聚合,将其整合为满足单桶形态的一条汇聚流。对于上述多流汇聚的情形,汇聚流在经过与转发节点对应的逐跳整形器整形后,整形输出时的到达曲线基于多条流量形成的汇聚流的汇聚到达曲线确定。例如,对于逐跳整形器的整形模型为线性模型的情形下汇聚到达曲线为其中n=1,……N,N为所述流量转发路径上经过的转发节点个数,M为所述转发节点上汇聚的单流个数,为第n个转发节点上第i条汇聚前的单流的到达曲线,的计算方式可参见前述针对单流的情形。例如,对于上述流量A、B和C在第2个转发节点聚合成汇聚流的情形,三条单流汇聚后的汇聚到达曲线为
对于多流汇聚逐跳整形的情形,同样由于各转发节点的服务曲线仅与其自身的转发能力有关,因此各转发节点的服务曲线并不受逐跳整形的影响,即对于设置了逐跳整形器的各转发节点,其服务曲线βn’(t)与仅在入口处整形情形下的服务曲线βn(t)相同,即βnm’(t)=βn(t)。基于上述确定的各转发节点的αnm’(t)和βnm’(t),可以计算得到当前转发节点的多流逐跳时延dbnm=Max_Hdis(α(nm’(t)-β(nm’(t)),并可以据此确定流量在经过逐跳整形和规范后的端到端有界时延其中N为所述流量流经的转发节点的个数。
本申请实施例还提供了一种对网络进行配置的方法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下的取值b1,据此确定b1作为所述基于单桶模型的整形器的其中一个配置参数值。在一个可能的实施例中,所述网络管理设备还可以确定所述整形器中的所述配置参数r,所述配置参数r例如可以确定为大于等于所述流量在整形前的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值区间内的某个值r1。具体例如参见前述方法500中的S515,或方法600(600’)中的S615(S615’)和S620(S620’)。
对于基于时间同步调度策略的网络,流量在各转发节点能够保证单点转发时延有界。因此,所述端到端时延上界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的取值b2。
在一种可能的实施例中,所述方法1000还包括:
S1025确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。
对于基于时间异步调度策略的网络,在一些情形下,可以在各转发节点设置相应的逐跳整形器,以对流量进行逐跳整形和规范,以避免随着时延的累加而造成在某个转发节点的流量突发,导致拥塞丢包。所述第二网络整形器为逐跳整形器,可以设置在当前转发节点的流量输出位置,以在所述流量向下一转发节点发送之前,对经过所述当前转发节点转发出去的输出流量进行整形。对于同一流量的传输,所述第二网络整形器一般与第一网络整形器支持相同的整形模型,具体的配置参数可以相同,也可以不同。在一种可能的实施例中,网络管理设备将用于各转发节点的所述第二网络整形器的整形参数配置为与所述第一网络整形器的参数配置相同。考虑在各转发节点可能也会出现多流汇聚的情形,所述网络管理设备也可以基于多流汇聚后在相应转发节点形成的到达曲线函数和服务曲线函数,确定当前转发节点的多流逐跳时延,并可以据此配置所述第二网络整形器的配置参数。
在一种可能的实施例中,所述方法1000还包括:
S1030根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界,基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。
对于基于时间异步调度策略的网络,可以考虑为网络中的各个转发节点配置合理的缓存空间,在不过度浪费存储资源的同时,避免或缓解时延导致的丢包。为此,网管管理其可以基于网络演算计算出设备的数据积压上界作为其缓存上界。所述缓存上界可以基于所述转发节点的到达曲线αn(t)和服务曲线βn(t)之间的最大垂直距离计算得到。网络管理设备可以基于确定的所述缓存上界配置所述转发节点的缓存。
本申请实施例还提供了一种对网络进行配置的设备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-state drive,SSD);存储器还可以包括上述种类的存储器的组合。
网络接口可以是以太网网口,也可以是其他类型的网络接口。
可以理解的是,上述对网络进行配置的设备1100的结构组成仅是一种可能的示例。在实际应用中,设备1100可以分别包含任意数量的接口,处理器和存储器等。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件或固件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、双绞线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,光盘)、或者半导体介质(例如固态硬盘)等。本说明书的各个部分均采用递进的方式进行描述,各个实施例之间相同相似的部分互相参见即可。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例部分的说明即可。
最后,需要说明的是:以上所述仅为本申请技术方案的实施例而已,并非用于限定本申请的保护范围。
Claims (22)
1.一种对网络进行配置的方法,其特征在于,包括:
确定数据流量在两个端部节点之间的端到端时延上界;
确定所述数据流量在所述两个端部节点之间的端到端时延约束;
基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数;
基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。
2.根据权利要求1所述的方法,其特征在于,所述端到端时延上界被表示为时延上界函数,所述确定数据流量在所述两个端部节点之间的端到端时延上界包括:
通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。
3.根据权利要求2所述的方法,其特征在于,所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。
4.根据权利要求3所述的方法,其特征在于,所述基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:
在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:
确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。
7.根据权利要求2-6任一项所述的方法,其特征在于,所述方法还包括:
根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界;
基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。
8.根据权利要求1所述的方法,其特征在于,所述确定数据流量在所述两个端部节点之间的端到端时延约束包括:
基于所述两个端部节点之间的各个转发节点各自的单点有界时延,确定所述端到端时延上界。
9.根据权利要求8所述的方法,其特征在于,所述基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:
确定所述端到端时延上界满足所述端到端时延约束;
在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;
基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。
10.根据权利要求9所述的方法,其特征在于,所述为第一网络整形器确定满足所述端到端时延约束的所述一个配置参数为发送周期,所述第一网络整形器的所述至少一个配置参数中的其他配置参数还包括:
在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度。
11.一种对网络进行配置的设备,其特征在于,所述设备包括:
第一确定单元,确定数据流量在两个端部节点之间的端到端时延上界;
第二确定单元,确定所述数据流量在所述两个端部节点之间的端到端时延约束;
参数确定单元,基于所述端到端时延上界和所述端到端时延约束,为第一网络整形器确定满足所述端到端时延约束的至少一个配置参数;
整形器配置单元,基于所述至少一个配置参数对所述第一网络整形器进行针对所述数据流量的配置。
12.根据权利要求11所述的设备,其特征在于,所述端到端时延上界被表示为时延上界函数,所述第一确定单元确定数据流量在所述两个端部节点之间的端到端时延上界包括:
通过基于网络演算算法的到达曲线函数和服务曲线函数生成所述时延上界函数。
13.根据权利要求12所述的设备,其特征在于,所述端到端时延上界被表示为含有第一变量的时延上界函数,所述第一变量表示所述第一网络整形器输出流量允许的最大突发的大小,其中所述第一变量属于所述至少一个配置参数。
14.根据权利要求13所述的设备,其特征在于,所述参数确定单元基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:
在所述端到端时延上界满足所述端到端时延约束的条件下,计算出所述第一变量的值。
15.根据权利要求11-14中任一项所述的设备,其特征在于,所述参数确定单元还用于:
确定第一速率,其中第一速率为所述数据流量在所述第一网络整形器的平均输出速率,其中所述第一速率大于等于所述数据流量的平均输入速率,且小于等于所述两个端部节点之间的全部转发节点的服务速率的最小值,其中所述第一速率属于所述至少一个配置参数。
16.根据权利要求11-15中任一项所述的设备,其特征在于,所述整形器配置单元还用于:
确定所述两个端部节点之间的一个或多个转发节点分别对应的一个或多个第二网络整形器的配置参数,所述一个或多个第二网络整形器的配置参数与所述第一网络整形器的相应配置参数相同,以对流经所述一个或多个转发节点的所述数据流量进行逐跳规范。
17.根据权利要求12-16任一项所述的设备,其特征在于,所述设备还包括缓存配置单元,所述缓存配置单元用于:
根据所述数据流量流经的上一个转发节点的到达曲线函数和服务曲线函数,确定所述当前转发节点的缓存上界;
基于所述缓存上界确定所述当前转发节点的缓存,所述缓存用于在所述当前转发节点暂存所述数据流量。
18.根据权利要求11所述的设备,其特征在于,所述第二确定单元确定数据流量在所述两个端部节点之间的端到端时延约束包括:
基于所述两个端部节点之间的各个转发节点各自的单点有界时延,确定所述端到端时延上界。
19.根据权利要求18所述的设备,其特征在于,所述参数确定单元基于所述端到端时延上界和所述端到端时延约束,为所述第一网络整形器确定满足所述端到端时延约束的至少一个配置参数包括:
确定所述端到端时延上界满足所述端到端时延约束;
在所述端到端时延上界满足所述端到端时延约束的情况下,基于所述两个端部节点之间的各个转发节点各自的所述单点有界时延,确定全部所述单点有界时延中的最大值;
基于所述全部所述单点有界时延中的所述最大值,为所述第一网络整形器确定满足所述端到端时延约束的一个配置参数。
20.根据权利要求19所述的设备,其特征在于,所述为第一网络整形器确定满足所述端到端时延约束的所述一个配置参数为发送周期,所述第一网络整形器的所述至少一个配置参数中的其他配置参数还包括:
在配置的所述发送周期内最多可发送的报文个数和/或报文最大长度。
21.一种对网络进行配置的设备,其特征在于,包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用存储器中存储的计算机程序,执行如权利要求1-10中任一项的所述方法。
22.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序用于执行权利要求1-10任一项的所述方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910985050.2A CN112671656B (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
CN202310275901.0A CN116233003A (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
US17/071,639 US11146493B2 (en) | 2019-10-16 | 2020-10-15 | Network configuration method and device |
EP20202207.5A EP3809634B1 (en) | 2019-10-16 | 2020-10-16 | Network configuration method and device |
US17/484,575 US11722418B2 (en) | 2019-10-16 | 2021-09-24 | Network configuration method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910985050.2A CN112671656B (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310275901.0A Division CN116233003A (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112671656A true CN112671656A (zh) | 2021-04-16 |
CN112671656B CN112671656B (zh) | 2023-03-10 |
Family
ID=73005294
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910985050.2A Active CN112671656B (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
CN202310275901.0A Pending CN116233003A (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310275901.0A Pending CN116233003A (zh) | 2019-10-16 | 2019-10-16 | 一种对网络进行配置的方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11146493B2 (zh) |
EP (1) | EP3809634B1 (zh) |
CN (2) | CN112671656B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113300960A (zh) * | 2021-07-27 | 2021-08-24 | 南京中网卫星通信股份有限公司 | 一种基于路由调度与联合优化的时延确定性传输方法 |
CN113347109A (zh) * | 2021-06-24 | 2021-09-03 | 中国科学院沈阳自动化研究所 | 一种支持5g和tsn互联的工业网络异构流量整形器 |
CN113630335A (zh) * | 2021-07-13 | 2021-11-09 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
WO2022222876A1 (zh) * | 2021-04-19 | 2022-10-27 | 华为技术有限公司 | 一种网络流量调整方法、网络资源配置方法、系统及设备 |
CN115576309A (zh) * | 2022-12-05 | 2023-01-06 | 北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院) | 一种基于多目标设计的车载网络区域架构方法和车辆 |
WO2023280004A1 (zh) * | 2021-07-05 | 2023-01-12 | 华为技术有限公司 | 一种网络配置方法、设备和系统 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021176670A1 (ja) * | 2020-03-05 | 2021-09-10 | 日本電信電話株式会社 | ネットワーク管理システム、エッジ装置、ネットワーク管理装置、及びプログラム |
US11362959B2 (en) * | 2020-03-18 | 2022-06-14 | Futurewei Technologies, Inc. | Latency based forwarding of packets with destination policies |
US20220100922A1 (en) * | 2020-09-29 | 2022-03-31 | Rockwell Automation Technologies, Inc. | Predicting industrial automation network performance |
CN112616157B (zh) * | 2020-12-11 | 2024-03-08 | 大连大学 | 基于网络演算的无线多跳Mesh网络端到端时延上界获取方法 |
CN115086247A (zh) * | 2021-03-02 | 2022-09-20 | 中兴通讯股份有限公司 | 帧抢占方法、装置、设备和存储介质 |
US20230180050A1 (en) * | 2021-12-03 | 2023-06-08 | At&T Intellectual Property I, L.P. | AUTOMATED PROCESSING ALLOCATION FOR QoS-SPECIFIC COMMUNICATIONS |
CN117997849A (zh) * | 2022-11-04 | 2024-05-07 | 中国移动通信有限公司研究院 | 一种确定性业务的处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060198304A1 (en) * | 2003-08-28 | 2006-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Call admission control system and method for interpreting signaling messages and controlling traffic load in internet protocol differentiated services networks |
US20070008884A1 (en) * | 2003-10-08 | 2007-01-11 | Bob Tang | Immediate ready implementation of virtually congestion free guarantedd service capable network |
CN108880946A (zh) * | 2018-08-03 | 2018-11-23 | 武汉大学 | 一种广域监测系统主站与pmu数据通信时延的估算方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5796719A (en) * | 1995-11-01 | 1998-08-18 | International Business Corporation | Traffic flow regulation to guarantee end-to-end delay in packet switched networks |
US5978356A (en) | 1997-04-09 | 1999-11-02 | Lucent Technologies Inc. | Traffic shaper for network nodes and method thereof |
US6072800A (en) * | 1997-08-18 | 2000-06-06 | Nec Usa, Inc. | Weighted longest queue first adaptive scheduling discipline for ATM networks |
US6532213B1 (en) * | 1998-05-15 | 2003-03-11 | Agere Systems Inc. | Guaranteeing data transfer delays in data packet networks using earliest deadline first packet schedulers |
US6661797B1 (en) * | 2000-02-28 | 2003-12-09 | Lucent Technologies Inc. | Quality of service based path selection for connection-oriented networks |
US7027449B2 (en) * | 2000-10-10 | 2006-04-11 | The Regents Of The University Of California | Method for maintaining reservation state in a network router and resulting scalable integrated architectures for computer networks |
US7447155B2 (en) * | 2002-06-17 | 2008-11-04 | Intel Corporation | Guaranteed service in a data network |
US7680922B2 (en) * | 2003-10-30 | 2010-03-16 | Alcatel Lucent | Network service level agreement arrival-curve-based conformance checking |
WO2009124991A1 (en) * | 2008-04-10 | 2009-10-15 | Time-Critical Networks Ab | Calculating packet delay in a multihop ethernet network |
US8958297B1 (en) * | 2012-06-26 | 2015-02-17 | Rockwell Collins, Inc. | Data network with “per flow” flow monitoring |
US10015057B2 (en) * | 2015-01-26 | 2018-07-03 | Ciena Corporation | Representative bandwidth calculation systems and methods in a network |
CN108370335A (zh) * | 2015-10-27 | 2018-08-03 | 特里马克思发展中心 | 以太网虚拟连接的实时分布的引擎框架 |
US10814893B2 (en) * | 2016-03-21 | 2020-10-27 | Ge Global Sourcing Llc | Vehicle control system |
EP3790232A1 (en) * | 2019-09-09 | 2021-03-10 | TTTech Computertechnik Aktiengesellschaft | Method for generating a schedule for mixed critical computer networks |
-
2019
- 2019-10-16 CN CN201910985050.2A patent/CN112671656B/zh active Active
- 2019-10-16 CN CN202310275901.0A patent/CN116233003A/zh active Pending
-
2020
- 2020-10-15 US US17/071,639 patent/US11146493B2/en active Active
- 2020-10-16 EP EP20202207.5A patent/EP3809634B1/en active Active
-
2021
- 2021-09-24 US US17/484,575 patent/US11722418B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060198304A1 (en) * | 2003-08-28 | 2006-09-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Call admission control system and method for interpreting signaling messages and controlling traffic load in internet protocol differentiated services networks |
US20070008884A1 (en) * | 2003-10-08 | 2007-01-11 | Bob Tang | Immediate ready implementation of virtually congestion free guarantedd service capable network |
CN108880946A (zh) * | 2018-08-03 | 2018-11-23 | 武汉大学 | 一种广域监测系统主站与pmu数据通信时延的估算方法 |
Non-Patent Citations (3)
Title |
---|
N.FINN等: "DetNet Bounded Latency;draft-finn-detnet-bounded-latency-04", 《IEFT 网址:HTTPS://TOOLS.IETF.ORG/HTML/DRAFT-FINN-DETNET-BOUNDED-LATENCY-04》 * |
ZHANG JIAYI 等: "Analysis of TSN for Industrial Automation based on Network Calculus", 《 IEEE INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION》 * |
陈志刚等: "无线mesh网中时延约束抖动优化的多路径流量分配算法", 《通信学报》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022222876A1 (zh) * | 2021-04-19 | 2022-10-27 | 华为技术有限公司 | 一种网络流量调整方法、网络资源配置方法、系统及设备 |
CN113347109A (zh) * | 2021-06-24 | 2021-09-03 | 中国科学院沈阳自动化研究所 | 一种支持5g和tsn互联的工业网络异构流量整形器 |
CN113347109B (zh) * | 2021-06-24 | 2024-03-15 | 中国科学院沈阳自动化研究所 | 一种支持5g和tsn互联的工业网络异构流量整形器 |
WO2023280004A1 (zh) * | 2021-07-05 | 2023-01-12 | 华为技术有限公司 | 一种网络配置方法、设备和系统 |
CN113630335A (zh) * | 2021-07-13 | 2021-11-09 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
CN113630335B (zh) * | 2021-07-13 | 2023-12-26 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
CN113300960A (zh) * | 2021-07-27 | 2021-08-24 | 南京中网卫星通信股份有限公司 | 一种基于路由调度与联合优化的时延确定性传输方法 |
CN113300960B (zh) * | 2021-07-27 | 2021-11-23 | 南京中网卫星通信股份有限公司 | 一种基于路由调度与联合优化的时延确定性传输方法 |
CN115576309A (zh) * | 2022-12-05 | 2023-01-06 | 北京理工大学深圳汽车研究院(电动车辆国家工程实验室深圳研究院) | 一种基于多目标设计的车载网络区域架构方法和车辆 |
Also Published As
Publication number | Publication date |
---|---|
US11722418B2 (en) | 2023-08-08 |
CN116233003A (zh) | 2023-06-06 |
US11146493B2 (en) | 2021-10-12 |
CN112671656B (zh) | 2023-03-10 |
EP3809634B1 (en) | 2024-09-25 |
US20210119922A1 (en) | 2021-04-22 |
EP3809634A1 (en) | 2021-04-21 |
US20220014472A1 (en) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112671656B (zh) | 一种对网络进行配置的方法和设备 | |
US11316795B2 (en) | Network flow control method and network device | |
US8018925B2 (en) | System and method for multi-services packet network traffic engineering | |
WO2017024824A1 (zh) | 基于聚合链路的流量管理方法及装置 | |
WO2021147368A1 (zh) | 调整服务等级的方法、装置、设备、系统及存储介质 | |
US8189463B2 (en) | Method for realizing backpressure of masses of ports and device thereof | |
KR101344014B1 (ko) | 제로 지연 큐잉 방법 및 그 시스템 | |
EP3395023B1 (en) | Dynamically optimized queue in data routing | |
WO2021057447A1 (zh) | 确定传输数据流的需求带宽的方法、设备和系统 | |
Wang et al. | Pursuing differentiated services in a sdn-based iot-oriented pub/sub system | |
CN115643220B (zh) | 基于抖动时延的确定性业务传输方法和装置 | |
US11805060B2 (en) | Token bucket with active queue management | |
WO2022135202A1 (zh) | 业务流的调度方法、装置及系统 | |
CN114095449A (zh) | 流量控制方法、网络设备及存储介质 | |
WO2023236832A1 (zh) | 数据调度处理方法、设备、装置及存储介质 | |
US12028265B2 (en) | Software-defined guaranteed-latency networking | |
KR100633024B1 (ko) | 고속 네트워크에서 개선된 csfq 큐잉 방법 및 이를이용한 에지 라우터 | |
Li | Framework of UMTS Network Dimensioning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |