流量调度方法、设备及系统与流程

文档序号:30347414发布日期:2022-06-08 09:34阅读:200来源:国知局
流量调度方法、设备及系统与流程

1.本技术涉及通信技术领域,特别涉及一种流量调度方法、设备及系统。


背景技术:

2.链路聚合组(link aggregation group,lag)是指将若干条成员链路捆绑在一起所形成的逻辑链路。该lag也可以称为逻辑接口、链路聚合接口或者多端口负载均衡组(load sharing group),该lag中的每个成员链路也可以称为成员口,且每个成员口即为网络设备的一个物理端口。
3.在检测lag的链路性能时,通常采用lag中的一条成员链路的链路性能来代表整个lag的链路性能。由此,导致确定出的lag的链路性能的误差较大,基于该lag的链路性能对业务流进行调度时的可靠性较低。


技术实现要素:

4.本技术提供了一种流量调度方法、设备及系统,可以解决基于lag的链路性能对业务流进行调度时可靠性较低的技术问题。
5.一方面,提供了一种流量调度方法,应用于网络设备,该网络设备的目标物理端口为链路聚合接口的成员口;该方法包括:确定目标业务流的链路需求与该目标物理端口的链路性能相匹配,并通过该目标物理端口转发该目标业务流;其中,该目标业务流的出接口为该链路聚合接口。
6.本技术提供的方案,可以确保用于转发该目标业务流的成员链路(即目标物理端口对应的网络链路)的链路性能能够满足该目标业务流的链路需求,实现了业务流的精确调度,有效提高了流量调度的可靠性。
7.可选地,网络设备确定目标业务流的链路需求与该目标物理端口的链路性能相匹配的过程可以包括:基于该目标业务流对应的链路需求标识,确定该目标业务流的链路需求。
8.其中,该链路需求标识可以为灵活算法的数值标识符,或者可以为服务质量(quality of service,qos)标识,或者还可以是分段路由策略(segment routing policy,sr policy)中的颜色(color)标识。
9.可选地,网络设备基于该目标业务流对应的链路需求标识,确定该目标业务流对应的目标选路算法的过程可以包括:从目标报文中获取该链路需求标识,其中,该目标报文属于该目标业务流;或者,从业务流与链路需求标识的对应关系中,获取该目标业务流对应的链路需求标识。
10.其中,该目标报文中携带的链路需求标识可以是转发该目标报文的设备添加的。该对应关系是运维人员配置在网络设备中的,或者可以是控制器下发的。由于该网络设备可以通过不同的方式获取该链路需求标识,从而有效提高了确定该目标业务流的链路需求的灵活性。
11.可选地,对于该链路需求标识为灵活算法的数值标识符的场景,该方法还可以包括:基于该数值标识符确定用于转发该目标业务流的网络拓扑,该网络拓扑包括目标物理端口连接的网络链路。
12.在网络设备的物理端口为链路聚合接口的成员口的场景下,该网络设备不仅可以基于该灵活算法的数值标识符确定用于转发该目标业务流的目标物理端口(即确定lag中用于承载该目标业务流的成员链路),还可以基于灵活算法的数值标识符确定用于转发该目标业务流的网络拓扑,即计算端到端的路径。由此,不仅可以实现对目标业务流的精准调度,而且无需改变网络设备对灵活算法的数值标识符的识别行为,从而能够与现网技术有效兼容。
13.可选地,该对应关系中记录的该业务流的标识(identification,id)可以包括:用于承载该业务流的虚拟专用网(virtual private network,vpn)实例的标识,或者,用于承载该业务流的虚拟电路(virtual circuit,vc)的标识。
14.对于不同的场景,该网络设备可以采用不同的标识区分不同的业务流,从而有效提高了区分不同业务流时的可靠性和灵活性。
15.可选地,该网络设备在从业务流与链路需求标识的对应关系中,获取该目标业务流对应的链路需求标识之后,通过该目标物理端口转发该目标业务流的过程可以包括:在该目标业务流的报文中添加该链路需求标识;通过该目标物理端口转发该目标业务流。
16.通过在报文中添加该链路需求标识,可以便于后续接收到该报文的其他网络设备可以直接基于该链路需求标识确定该目标业务流的链路需求。
17.可选地,该网络设备通过该目标物理端口转发该目标业务流的过程可以包括:在该目标业务流的报文中添加该目标物理端口的端口标识,并通过该目标物理端口转发该目标业务流。
18.其中,该端口标识可以为目标物理端口的媒体访问控制(media access control,mac)地址,或者,可以为该目标物理端口的端口索引(interface index)等。通过在报文中添加目标物理端口的端口标识,可以便于接收到该报文的网络设备可以确定发送该报文的物理端口的端口信息。
19.可选地,网络设备在确定目标业务流的链路需求与该目标物理端口的链路性能相匹配之前,该方法还可以包括:对该目标物理端口对应的网络链路进行检测,以获得该目标物理端口的链路性能。
20.其中,该网络设备可以基于如下检测协议对该目标物理端口对应的网络链路进行检测:双向主动检测协议(two-way active measurement protocol,twamp)、单向主动检测协议(one way active measurement protocol,owamp)、简单双向主动检测协议(simple two-way active measurement protocol,stamp)、网络质量分析(network quality analyzer,nqa)协议或者诸如y.1564的以太网业务激活测试方法(ethernet service activation test methodology)等。
21.可选地,该目标业务流的链路需求可以包括对下述至少一种性能参数的需求:时延、丢包率和抖动。
22.可选地,该网络设备的多个备选物理端口均为该链路聚合接口的成员口,该目标物理端口包括在该多个备选物理端口中。
23.相应的,该网络设备可以分别检测每个备选物理端口对应的网络链路的链路性能,并可以基于检测到的各个备选物理端口的链路性能,从该多个备选物理端口中确定出该目标物理端口。
24.另一方面,提供了一种网络设备,该网络设备可以包括至少一个模块,该至少一个模块可以用于实现上述方面所提供的流量调度方法。
25.又一方面,提供了一种网络设备,该网络设备可以包括:存储器,处理器及存储在该存储器上并可在该处理器上运行的计算机程序,该处理器执行该计算机程序时实现如上述方面所提供的流量调度方法。
26.再一方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,该指令由处理器执行以实现如上述方面所提供的流量调度方法。
27.再一方面,提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行如上述方面所提供的流量调度方法。
28.再一方面,提供了一种流量调度系统,该流量调度系统可以包括:终端设备,以及与该终端设备连接的如上述方面所提供的网络设备;其中,该网络设备可以用于转发来自该终端设备的业务流。
29.综上所述,本技术提供了一种流量调度方法、设备及系统,网络设备可以基于目标业务流的链路需求,从链路聚合接口中确定出链路性能与该链路需求相匹配的目标物理端口,并通过该目标物理端口转发该目标业务流。由此,可以确保用于转发该目标业务流的成员链路(即目标物理端口对应的网络链路)的链路性能能够满足该目标业务流的链路需求,实现了业务流的精确调度,有效提高了流量调度的可靠性。
附图说明
30.图1是本技术实施例提供的一种流量调度系统的结构示意图;
31.图2是本技术实施例提供的一种流量调度方法的流程图;
32.图3是本技术实施例提供的另一种流量调度方法的流程图;
33.图4是本技术实施例提供的另一种流量调度系统的结构示意图;
34.图5是本技术实施例提供的一种报文的转发路径的示意图;
35.图6是本技术实施例提供的又一种流量调度系统的结构示意图;
36.图7是本技术实施例提供的一种各设备的转发面所转发的报文的结构示意图;
37.图8是本技术实施例提供的一种twamp检测流程的示意图;
38.图9是本技术实施例提供的一种网络设备的结构示意图;
39.图10是本技术实施例提供的另一种网络设备的结构示意图。
具体实施方式
40.下面结合附图详细介绍本技术实施例提供的流量调度方法、设备及系统。
41.图1是本技术实施例提供的一种流量调度系统的结构示意图,如图1所示,该系统至少可以包括:两个网络设备01,以及与其中一个网络设备01连接的终端设备02。该两个网络设备01之间的链路可以为由若干条成员链路捆绑在一起所形成的lag,与该终端设备02连接的网络设备01可以通过该lag转发来自该终端设备02的业务流。例如,参考图1,该两个
网络设备01之间的lag包括三条成员链路,该三条成员链路可以采用负载分担的方式转发来自该终端设备02的业务流。可选地,该lag可以是基于链路聚合控制协议(link aggregation control protocol,lacp)形成的,或者可以是运维人员手工配置形成的。若该lag中的成员链路均为以太网链路,则该lag也可以称为以太网链路聚合组(ethernet trunk,eth-trunk)。
42.其中,每条成员链路也可以称为一个成员口;或者可以理解为:每条成员链路与网络设备01中的一个物理端口对应,该物理端口可以称为成员口。可选地,该lag包括的多个成员口可以属于同一个网络设备01。或者,该lag包括的多个成员口也可以属于不同的网络设备01,也即是,该lag可以是对不同网络设备01的物理端口进行聚合形成的,该通过跨设备的方式形成的lag也可以称为增强链路聚合组(enhanced trunk,e-trunk)。该e-trunk能够实现多台网络设备间的链路聚合,可以把链路可靠性从单板级提高到设备级。
43.lag通过对多条成员链路进行捆绑,可以有效提升链路带宽。并且,该lag包括的多个成员口中只要存在激活状态(up)的成员口,该lag的状态即可保持为up状态。也即是,即使部分成员口的状态为非激活状态(down),该lag的状态也不会切换为down,由此可以避免端口状态切换为down而导致业务流频繁切换。并且,在进行接口配置时,可以直接对lag进行三层配置,从而可以减少公网接口配置及维护成本。
44.参考图1,对于lag包括的多个成员链路,由于不同成员链路的传输路径不同,因此不同成员链路在时延等质量指标上会有明显不同,即不同成员链路的链路性能不同。如果用某一条成员链路的链路性能代表整个lag的链路性能,则会导致误差较大,无法实现业务流的精确调度。
45.本技术实施例提供了一种流量调度方法,该方法可以基于lag中成员链路的链路性能对业务流进行调度,从而有效提高了流量调度的可靠性。该方法可以应用于如图1所示的系统中的网络设备01,且该网络设备01的目标物理端口为链路聚合接口的成员口。参考图2,该方法包括:
46.步骤101、确定目标业务流的链路需求与目标物理端口的链路性能相匹配,其中,该目标业务流的出接口为链路聚合接口。
47.在本技术实施例中,网络设备中可以存储有目标物理端口的链路性能,该链路性能可以是该网络设备主动检测得到的,也可以是其他设备发送至该网络设备的。该目标物理端口的链路性能可以是指该目标物理端口对应的网络链路(即成员链路)的链路性能。
48.网络设备在接收到来自终端设备的目标业务流后,可以基于转发表确定该目标业务流的出接口。若该目标业务流的出接口为该链路聚合接口,则网络设备可以继续确定该目标业务流的链路需求是否与该目标物理端口的链路性能相匹配。若该目标业务流的链路需求与目标物理端口的链路性能相匹配,则该网络设备可以继续执行下述步骤102。
49.其中,该目标业务流的链路需求可以包括对下述至少一种性能参数的需求:时延、丢包率和抖动。相应的,该目标物理端口的链路性能可以包括对上述至少一种性能参数的检测结果。
50.步骤102、通过该目标物理端口转发该目标业务流。
51.网络设备若确定该目标业务流的链路需求与目标物理端口的链路性能相匹配,则可以通过该目标物理端口来转发该目标业务流。也即是,该网络设备可以采用该目标物理
core,epc)。其中,该asbr也可以称为无线业务侧网关(radio service gateway,rsg)。
61.本技术实施例所提供的流量调度方法所应用的网络设备可以为csg、asr或者rsg。例如,参考图4,以该网络设备为asg1为例,该asg1的三个备选物理端口为链路聚合接口的成员口。则该asg1可以分别检测该三个备选物理端口所对应的网络链路的链路性能。
62.步骤202、接收目标业务流。
63.网络设备可以接收来自终端设备的目标业务流。例如,参考图4,asg1和asg2可以接收csg转发的来自终端设备02的目标业务流。
64.步骤203、确定该目标业务流的出接口为该目标物理端口所属的链路聚合接口。
65.网络设备接收到目标业务流后,可以通过查找本地存储的转发表,确定该目标业务流的出接口。若该目标业务流的出接口为该目标物理端口所属的链路聚合接口,则网络设备可以继续执行下述步骤204。若该目标业务流的出接口不为链路聚合接口,则网络设备无需再执行下述步骤204,而是可以直接采用该出接口转发该目标业务流。
66.步骤204、基于该目标业务流对应的链路需求标识,确定该目标业务流的链路需求。
67.网络设备若确定该目标业务流的出接口为该目标物理端口所属的链路聚合接口,则可以基于该目标业务流对应的链路需求标识,确定该目标业务流的链路需求。该目标业务流的链路需求可以包括对下述至少一种性能参数的需求:时延、丢包率和抖动。例如,对于远程教学业务,该目标业务流的链路需求可以为低丢包率。对于远程医疗业务,该目标业务流的链路需求可以为低时延。
68.作为一种可选的实现方式,该网络设备可以从目标报文中获取该目标业务流对应的链路需求标识。其中,该目标报文属于该目标业务流。该目标报文中的链路需求标识可以是用于向该网络设备转发该目标业务流的转发设备添加的。
69.例如,参考图4,csg可以在目标业务流的报文中添加该目标业务流对应的链路需求标识,则该asg1和asg2接收到的目标业务流的目标报文中即可携带有该目标业务流对应的链路需求标识。
70.作为另一种可选的实现方式,网络设备中存储有业务流与链路需求标识的对应关系,该网络设备可以从本地存储的对应关系中,获取该目标业务流对应的链路需求标识。其中,该对应关系可以由运维人员手工配置在网络设备上,或者,也可以由与该网络设备连接的控制器下发。
71.可选地,该对应关系中可以记录有业务流的标识以及对应的链路需求标识。网络设备可以基于该目标业务流的标识,确定出该目标业务流对应的链路需求标识。在本技术实施例中,该对应关系中记录的业务流的标识可以包括:用于承载该业务流的vpn实例的标识,或者,用于承载该业务流的vc的标识。也即是,该网络设备可以采用vpn实例的标识或者vc的标识区分不同的业务流。其中,vpn实例的标识可以为vpn实例名。
72.例如,若终端设备通过三层虚拟专用网(layer 3vpn,l3vpn)的方式接入网络,则来自该终端设备的业务流可以通过vpn实例的标识进行区分。若终端设备通过二层虚拟专用网(l2vpn)的方式接入网络,则来自该终端设备的业务流可以通过vc的标识进行区分。由于对于不同的应用场景,该网络设备可以采用不同的标识区分不同的业务流,从而有效提高了区分不同业务流时的可靠性和灵活性。
73.可选地,该目标业务流对应的链路需求标识可以为灵活算法(flexible-algorithm,flex-algo)的数值标识符。该数值标识符的取值范围可以为128至255。该flex-algo是一种用于根据性能参数(例如丢包率、时延要和抖动等)计算满足一定约束的路径的机制,该flex-algo的路径计算规则一般由一个三元组表示,该三元组包括:度量类型(metric type),计算类型(calc-type)以及拓扑约束(topo constraints)。由于该flex-algo的数值标识符取不同数值时,可以指示不同的路径计算规则,因此该数值标识符即可指示不同的链路需求。
74.可选地,该链路需求标识除了可以为灵活算法的数值标识符,还可以为qos标识,或者还可以是sr policy中的color标识。
75.步骤205、确定目标业务流的链路需求与目标物理端口的链路性能相匹配。
76.网络设备确定出目标业务流的链路需求后,即可基于该网络设备中多个备选物理端口的链路性能,从该多个备选物理端口中确定出链路性能与该链路需求相匹配的目标物理端口。
77.其中,若该链路需求是对目标性能参数的需求,则该目标物理端口的链路性能与该链路需求相匹配可以指示:目标物理端口的目标性能参数优于该多个备选物理端口中的其他备选物理端口。也即是,网络设备可以将该多个备选物理端口中,目标性能参数最优的备选物理端口确定为链路性能与该链路需求相匹配的目标物理端口。
78.示例的,参考图4,假设asg1与asbr1之间的链路为lag,且该asg1接收到的目标业务流的flex-algo的数值标识符取值为129。则该asg1可以基于该数值标识符129,确定该目标业务流的链路需求为低时延,并可以将三个备选物理端口中时延最低的备选物理端口确定为目标物理端口。
79.可以理解的是,对于lag为e-trunk的场景,若该网络设备包括的多个物理端口中仅有一个物理端口为聚合链路接口的成员口(即该网络设备仅具有一个备选物理端口),则该网络设备可以直接将该备选物理端口确定为链路性能与该链路需求相匹配的目标物理端口。
80.步骤206、在该目标业务流的报文中添加该目标物理端口的端口标识。
81.在本技术实施例中,对于网络设备的物理端口所属的每个聚合链路接口,网络设备均可以存储有与该聚合链路接口对应的一个成员(member)标识表。该成员标识表中可以记录有该聚合链路接口所包括的每个物理端口的端口标识,该端口标识也可以称为成员口标识。网络设备可以基于该成员标识表区分不同的成员口,并对该每个成员口的链路性能进行检测。
82.相应的,网络设备在确定出目标物理端口后,还可以在该目标业务流的报文中添加该目标物理端口的端口标识。由此,可以便于接收到该报文的网络设备可以确定发送该报文的物理端口的端口信息。可选地,该网络设备可以在报文的逐跳(hop by hop,hbh)字段中添加该目标物理端口的端口标识。该端口标识可以为目标物理端口的mac地址,或者,可以为该目标物理端口的端口索引。
83.示例的,参考图6,假设csg与asc之间的链路为lag,且该csg中的三个备选物理端口属于聚合链路接口。则该csg的成员标识表中可以记录有该三个备选物理端口的端口标识:id1、id2和id3。若csg接收到的目标业务流:业务流2的链路需求为低丢包率,则该csg可
以确定端口标识为id2的备选物理端口的链路性能与该目标业务流的链路需求相匹配。相应的,该csg可以在报文的hbh字段中添加该目标物理端口的端口标识:id2。
84.步骤207、基于该数值标识符确定用于转发该目标业务流的网络拓扑。
85.在本技术实施例中,对于该链路需求标识为灵活算法的数值标识符的场景,该网络设备还可以基于该数值标识符确定用于转发该目标业务流的网络拓扑,即计算用于承载该目标业务流的端到端的路径。其中,该网络拓扑包括该目标物理端口连接的网络链路。
86.示例的,参考图5,假设该流量调度系统中包括r1至r8共8个网络设备,其中头端网络设备r1至尾端网络设备r5之间存在多条路径。其中,每相邻两个网络设备之间的链路的开销(cost)和时延如图5中的虚线框所示。例如,网络设备r1和r2之间的链路的开销为10,时延为100。网络设备r1和r6之间的链路的开销为10,时延为10。假设网络设备r1确定目标业务流对应的flex-algo的数值标识符为128,且数值标识符取值为128时表示以最短路径为约束算路。则网络设备r1基于各个网络设备之间的链路开销计算得到的用于承载该目标业务流的网络拓扑(即最短路径)可以为:r1

r2

r3

r4

r5。若目标业务流对应的flex-algo的数值标识符为129,且数值标识符取值为129时表示以最低时延为约束算路,则网络设备r1基于各个网络设备之间的链路时延计算的用于承载该目标业务流的网络拓扑(即最低时延的路径)可以为:r1

r6

r7

r8

r5。
87.图5中还示出了flex-algo的数值标识符取不同取值时,每个网络设备以及相邻两个网络设备之间的链路的坐标(locator)。例如,flex-algo的数值标识符取值为128时,网络设备r1的locator为a1:1::1,网络设备r2的locator为a2:1::1。flex-algo的数值标识符取值为129时,网络设备r1的locator为a1:2::1,网络设备r2的locator为a2:2::1。
88.基于本技术实施例提供的方法,网络设备不仅可以基于该灵活算法的数值标识符确定用于转发该目标业务流的目标物理端口(即确定lag中用于承载该目标业务流的成员链路),还可以基于灵活算法的数值标识符确定用于转发该目标业务流的网络拓扑,即计算端到端的路径。由此,不仅可以实现对目标业务流的精准调度,而且无需改变网络设备对灵活算法的数值标识符的识别行为,从而能够与现网技术有效兼容。
89.步骤208、通过该目标物理端口并基于该网络拓扑转发该目标业务流。
90.网络设备确定出目标物理端口的链路性能与该目标业务流的链路需求相匹配后,即可通过该目标物理端口,并基于计算出的网络拓扑转发该目标业务流。
91.示例的,如图6所示,对于链路需求为低丢包率的业务流2,csg可以通过端口标识为id2的目标物理端口转发该业务流2。继续参考图6,假设业务流1的链路需求为低时延,业务流3的链路需求为低抖动,则该csg可以通过端口标识为id1的目标物理端口转发该业务流1,并可以通过端口标识为id3的目标物理端口转发该业务流3。
92.基于上述分析可知,由于网络设备可以基于不同业务流的不同链路需求,采用不同链路性能的目标物理端口转发该业务流,因此可以确保用于转发业务流的成员链路能够满足业务流的需求,实现了对业务流的精确调度。
93.可选地,若在上述步骤204中,网络设备是从业务流与链路需求标识的对应关系中,获取到了该目标业务流对应的链路需求标识,则在执行上述步骤208之前,该网络设备还可以在该目标业务流的报文中添加该链路需求标识。相应的,其他网络设备接收到该目标业务流的报文后,即可基于该报文中添加的链路需求标识,确定该目标业务流的链路需
求。可选地,该网络设备可以为支持分段路由(segment routing,sr)技术的设备,该网络设备可以在报文中的分段列表(segment list)之后添加该链路需求标识。
94.示例的,参考图6,csg可以在业务流1的报文中添加flex-algo的数值标识符:129,然后再将该报文转发至asg。假设asg用于与asbr连接的三个备选物理端口属于链路聚合接口,且该业务流1在asg中的出接口即为该链路聚合接口,则该asg可以基于业务流1的报文中携带的flex-algo的数值标识符:129,确定该业务流1的链路需求为低时延。进而,该asg即可通过端口标识为id1的物理端口转发该业务流1。
95.可以理解的是,如图6所示,每个链路聚合接口中各个物理端口的端口标识互不相同,而不同链路聚合接口中的物理端口的端口标识则可以相同。
96.还可以理解的是,本技术实施例提供的方法所应用的流量调度系统可以为支持srv6的系统,该srv6是一种将分段路由(segment routing,sr)技术与互联网协议第6版(internet protocol version 6,ipv6)技术结合的网络转发技术。图7是本技术实施例提供的一种终端设备和网络设备的转发面所转发的报文的结构示意图。参考图7可以看出,该csg接收到的报文可以包括如下字段:载荷(payload)、gprs隧道协议(gprs tunneling protocol,gtp)、ip、虚拟局域网(virtual local area network,vlan)以及以太网报文头(ethernet header,eth)。其中,该ip字段包括差分服务代码点(differentiated services code point,dscp)。gprs是指通用无线分组业务(general packet radio service)。
97.若该流量调度系统采用srv6尽力转发(best effort,be)技术,则参考图7,该csg可以在报文中封装hbh字段和ipv6头,并将封装有hbh字段和ipv6头的报文转发至asg。其中,该ipv6头可以包括vpn分段标识(segment identification,sid)。若该流量调度系统采用srv6policy,则参考图7,该csg可以在报文中封装分段路由头(segment routing header,srh)、hbh字段和ipv6头,并将封装有srh、hbh字段和ipv6头的报文转发至asg。
98.asg进而可以将接收到的报文转发至asbr。该asbr可以对接收到的报文进行解封装,以将报文中的hbh字段和ipv6头删除,若该报文中还包括srh,则asbr可以将该srh也删除。之后,该asbr即可将删除上述字段的报文转发至核心网。
99.下文以twamp为例,对上述步骤201的实现过程进行说明。参考图8,在基于twamp检测成员链路的链路性能时,该成员链路的一端可以作为客户端(client),也可以称为发送端(sender),该成员链路的另一端则可以作为服务端(server),也可以称为反射端(reflector)。在对链路性能进行检测的过程中,该发送端和反射端可以依次交互如下消息:请求tw会话(request-tw-session)消息、接受会话(accept session)消息、开始会话(start sessions)消息、开始应答(start-ack)、会话发送端测试包(session-sender test packet)、会话反射端测试包(session-reflector test packet)以及结束会话(stop sessions)消息。
100.为了实现对成员链路的检测,可以对请求tw会话消息中命令数值(command number)字段的取值进行扩展。例如,由于命令数值的取值为11至255时的含义还未被定义,因此可以定义命令数值的取值为11至255中的某个数值(例如11)时,指示需要对lag的成员链路的链路性能进行测量。
101.当发送端接收到成员链路测量命令时,可以先检查要进行twamp测量的端口是否为链路聚合接口。如果需要进行twamp测量的端口是链路聚合接口,则该发送端可以将命令
数值的取值为11的请求tw会话消息发送至反射端;如果需要进行twamp测量的端口不是链路聚合接口,则该发送端可以回退到普通的twamp测量(例如发送命令数值的取值为5的请求tw会话消息),或者,可以产生配置错误提示信息。
102.反射端收到发送端发送的成员链路测量命令(例如命令数值的取值为11的请求tw会话消息)后,如果反射端不支持成员链路测量,则可以在接受会话消息中将accept字段置为3进行响应。如果反射端支持成员链路测量,但遇到了某种错误,则可以按照twamp标准的规定产生相应的错误代码,并将该错误代码添加至接受会话消息的accept字段。如果反射端支持成员链路测量,且没有其他错误产生,则可以在接受会话消息中将accept字段置为0进行响应,并做好在成员链路测量命令中指定的成员链路上进行twamp测量的准备,即该反射端可以准备执行测量任务。
103.测量任务开始后,发送端可以产生并发送会话发送端测试包。反射端接收到该会话发送端测试包后,均可以发送会话反射端测试包进行响应。
104.其中,对于非认证模式的成员链路,该会话发送端测试包中可以新增有成员标识(memberid)字段,该成员标识字段用于携带成员链路的标识。对于认证和加密模式的成员链路,该会话发送端测试包的须为零(must be zero,mbz)字段中可以划分出6个字节作为成员标识字段以携带成员链路的标识。
105.该成员链路的标识也即是该成员链路对应的物理端口的端口标识。例如,对于以太网成员链路,该会话发送端测试包中的成员链路的标识可以为发送该会话发送端测试包的成员链路的mac地址,或者可以为发送该会话发送端测试包的成员链路的编号,比如端口索引等。对于pos成员链路,该成员链路的标识可以为发送该会话发送端测试包的成员链路的编号。其中,pos是指基于同步光纤网络(synchronous optical network,sonet)或同步数字体系(synchronous digital hierarchy,sdh)的数据包(packet over sonet/sdh)。
106.反射端在通过配置了成员链路测量任务的成员链路接收到该会话发送端测试包后,可以通过该待测量的成员链路发送会话反射端测试包以进行响应。若反射端通过未配置成员链路测量任务的成员链路,或不属于lag的成员链路接收到了该会话反射端测试包,则可以不进行响应,并可以产生告警信息。
107.其中,对于非认证模式的成员链路,该反射端发送的会话反射端测试包中可以新增有成员标识字段和发送端成员标识(sender member id)字段。对于认证和加密模式的成员链路,该反射端发送的会话反射端测试包的两个mbz字段可以分别用作成员标识字段和发送端成员标识字段。并且,反射端可以在该成员标识字段中填充发送该会话反射端测试包的成员链路的标识,并可以在该发送端成员标识字段中填充其接收到的会话发送端测试包中成员标识字段的内容。
108.可选地,对于以太网成员链路,该会话反射端测试包中的成员链路的标识可以为发送该会话反射端测试包的成员链路的mac地址,或者可以为发送该会话反射端测试包的成员链路的编号,比如端口索引等。对于pos成员链路,该成员链路的标识可以为发送该会话反射端测试包的成员链路的编号。
109.发送端接收到会话反射端测试包后,可以检查该会话反射端测试包中发送端成员标识字段的内容,与接收到该会话反射端测试包的成员链路的标识是否一致。如果一致,则发送端可以根据该会话反射端测试包中成员标识字段的内容,确定对端接口(即反射端的
接口)的信息,并计算得到该成员链路的链路性能(例如,发送端可以计算得到该成员链路的时延、抖动和丢包率等信息)。若该会话反射端测试包中发送端成员标识字段的内容,与接收到该会话反射端测试包的成员链路的标识不一致,则发送端可以丢弃该会话反射端测试包,并可以产生告警信息。可以理解的是,对于lag中的每一条成员链路,该发送端均可以通过上述方法计算得到该成员链路的链路性能。
110.下文对网络设备中的相关配置进行举例说明。假设该网络设备中的三个物理端口属于eth-trunk,则对该三个物理端口(即成员口)的配置可以如下:
111.interface gigabitethernet x1/x1/x1//配置千兆以太网接口x1/x1/x1;
112.undo shutdown//激活端口;
113.eth-trunk 3member-id 1//配置成员口的id为1;
114.#
115.interface gigabitethernet x2/x2/x2;
116.undo shutdown;
117.eth-trunk 3member-id 2;
118.#
119.interface gigabitethernet x3/x3/x3;
120.undo shutdown;
121.eth-trunk 3member-id 3;
122.#
123.假设网络设备采用twamp检测物理端口的链路性能,则运维人员需要配置twamp lightresponder(轻量级应答)端。该twamp轻量级应答端需要配置发送端的ip地址、反射端的ip地址、发送端的用户数据报协议(user datagram protocol,udp)端口号、反射端的udp端口号以及vpn实例名等参数。
124.例如,运维人员可以在twamp轻量级应答端配置如下参数:test-session 1local-ip192:168:a::a remote-ip 192:168:b::b local-port c remote-port d vpn-instance lte-ran member-id1。其中,local-ip表示本端(即反射端)的ip地址,remote-ip表示远端(即发送端)的ip地址,local-port表示本端的udp端口号,remote-port表示远端的udp端口号。
125.运维人员可以在twamp light controller(轻量级控制)端中配置twamp light client端,例如,运维人员可以在twamp轻量级控制端中配置如下参数:
126.test-session 1sender-ip 192:168:b::b reflector-ip 192:168:a::a sender-port d reflector-port c vpn-instance lte-ran member-id 1。其中,sender-ip表示发送端的ip地址,reflector-ip表示反射端的ip地址,sender-port表示发送端的udp端口号,reflector-port表示反射端的udp端口号。
127.并且,运维人员可以在twamp轻量级控制端中配置twamp light sender端。例如,可以配置如下参数:test start-continual test-session 1。
128.运维人员对eth-trunk接口的配置可以如下:
129.interface eth-trunk3
130.mtu 1600//最大传输单元(maximum transmission unit,mtu)1600;
131.control-flap//控制接口震荡特性;
132.ipv6 enable//使能ipv6;
133.ip address 192.168.a.a 255.255.255.0;
134.ipv6 address 192:168:a:a/112;
135.ipv6 mtu 9600;
136.isis enable 3//使能isis;
137.isis ipv6 enable 3//使能isis ipv6;
138.此外,还需要全局使能srv6。例如,运维人员可以在网络设备中进行如下配置:
139.segment-routing ipv6
140.encapsulation source-address 101:11::1ip-ttl 150//封装源地址;
141.locator srbe ipv6-prefix 101:11::64static 32//配置ipv6前缀(prefix),配置locator 101:11::,名称为srbe;
142.opcode::1end-op//静态配置end sid101:11::1;
143.locator test1 ipv6-prefix 21:11::64static 1//配置locator 21:11::64,名称test1。
144.基于上述配置,即可使得网络设备实现本技术实施例提供的流量调度方法。可以理解的是,上述配置仅作为一种示意,运维人员或控制器还可以通过其他方式对网络设备进行配置,以使得该网络设备实现本技术实施例提供的流量调度方法。
145.还可以理解的是,本技术实施例提供的流量调度方法的步骤先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。例如,上述步骤206可以根据情况删除,即该网络设备也可以无需在该目标业务流的报文中添加目标物理端口的端口标识。或者,上述步骤207也可以根据情况删除,即对于该链路需求标识不为灵活算法的数值标识符的场景,该网络设备也无需基于该数值标识符计算网络拓扑。任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本技术的保护范围之内,因此不再赘述。
146.综上所述,本技术实施例提供了一种流量调度方法,网络设备可以基于目标业务流的链路需求,从链路聚合接口中确定出链路性能与该链路需求相匹配的目标物理端口,并通过该目标物理端口转发该目标业务流。由此,可以确保用于转发该目标业务流的成员链路(即目标物理端口对应的网络链路)的链路性能能够满足该目标业务流的链路需求,有效提高了流量调度的可靠性。
147.并且,随着第五代移动通信技术(5th generation mobile networks,5g)的快速演进,网络中承载的业务越来越丰富,不同业务对网络传输质量的要求也不同。比如远程教学业务要求网络的丢包率低,远程医疗业务要求网络的时延低。基于本技术实施例提供的方法,可以基于不同的业务诉求,将不同业务承载在链路聚合接口的不同成员口中,从而实现了业务流的精确调度。
148.图9是本技术实施例提供的一种网络设备的结构示意图,该网络设备可以应用于如图1,图4,图5或图6所示的流量调度系统。例如,该网络设备可以为图4所示的asg,或者可以为图6所示的csg、asg或asbr。该网络设备的目标物理端口为链路聚合接口的成员口,并且如图9所示,该网络设备可以包括:
149.第一确定模块301,用于确定目标业务流的链路需求与该目标物理端口的链路性能相匹配,其中,该目标业务流的出接口为该链路聚合接口。该第一确定模块301的功能实现可以参考上述方法实施例中步骤101和步骤205的相关描述。
150.转发模块302,用于通过该目标物理端口转发该目标业务流。该转发模块302的功能实现可以参考上述方法实施例中步骤102和步骤208的相关描述。
151.可选地,该第一确定模块301可以用于:基于该目标业务流对应的链路需求标识,确定该目标业务流的链路需求。该第一确定模块301的功能实现还可以参考上述方法实施例中步骤204的相关描述。
152.可选地,该第一确定模块301可以用于:从目标报文中获取该链路需求标识,其中,该目标报文属于该目标业务流;或者,从业务流与链路需求标识的对应关系中,获取该目标业务流对应的链路需求标识。
153.可选地,该链路需求标识为灵活算法的数值标识符。如图9所示,该网络设备还可以包括:
154.第二确定模块303,用于基于该数值标识符确定用于转发该目标业务流的网络拓扑,该网络拓扑包括该目标物理端口连接的网络链路。该第二确定模块303的功能实现可以参考上述方法实施例中步骤207的相关描述。
155.可选地,该对应关系中记录的该业务流的标识包括:用于承载该业务流的vpn实例的标识,或者,用于承载该业务流的vc的标识。
156.可选地,该转发模块302可以用于:在该第一确定模块301从业务流与链路需求标识的对应关系中,获取该目标业务流对应的链路需求标识之后,在该目标业务流的报文中添加该链路需求标识;以及,通过该目标物理端口转发该目标业务流。
157.可选地,该转发模块302可以用于:在该目标业务流的报文中添加该目标物理端口的端口标识;通过该目标物理端口转发该目标业务流。该转发模块302的功能实现还可以参考上述方法实施例中步骤206的相关描述。
158.可选地,如图9所示,该网络设备还可以包括:
159.检测模块304,用于在该第一确定模块301确定目标业务流的链路需求与该目标物理端口的链路性能相匹配之前,对该目标物理端口对应的网络链路进行检测,以获得该目标物理端口的链路性能。该检测模块304的功能实现还可以参考上述方法实施例中步骤201的相关描述。
160.可选地,该目标业务流的链路需求包括对下述至少一种性能参数的需求:时延、丢包率和抖动。
161.可选地,该网络设备可以包括多个备选物理端口,该多个备选物理端口均为该链路聚合接口的成员口,该目标物理端口包括在该多个备选物理端口中。
162.综上所述,本技术实施例提供了一种网络设备,该网络设备可以基于目标业务流的链路需求,从链路聚合接口中确定出链路性能与该链路需求相匹配的目标物理端口,并通过该目标物理端口转发该目标业务流。由此,可以确保用于转发该目标业务流的成员链路(即目标物理端口对应的网络链路)的链路性能能够满足该目标业务流的链路需求,实现了业务流的精确调度,有效提高了流量调度的可靠性。
163.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上文描述的网络
设备以及各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
164.应理解的是,本技术实施例提供的网络设备还可以用专用集成电路(application-specificintegrated circuit,asic)实现,或可编程逻辑器件(programmable logic device,pld)实现,上述pld可以是复杂程序逻辑器件(complex programmable logical device,cpld),现场可编程门阵列(field-programmable gate array,fpga),通用阵列逻辑(generic array logic,gal)或其任意组合。也可以通过软件实现上述方法实施例提供的流量调度方法,当通过软件实现上述方法实施例提供的流量调度方法时,该网络设备中的各个模块也可以为软件模块。
165.图10是本技术实施例提供的另一种网络设备的结构示意图,该网络设备可以应用于如图1,图4,图5或图6所示的流量调度系统。例如,该网络设备可以为图4所示的asg,或者可以为图6所示的csg、asg或asbr。该网络设备的目标物理端口为链路聚合接口的成员口,并且如图10所示,该网络设备可以包括:处理器401、存储器402、收发器403和总线404。其中,总线404用于连接处理器401、存储器402和收发器403。通过收发器403(可以是有线或者无线)可以实现与其他设备之间的通信连接。存储器402中存储有计算机程序,该计算机程序用于实现各种应用功能。当图9所示的网络设备中的各个模块采取软件模块的方式实现时,这些软件模块对应的程序可以存储在网络设备400的存储器402中。
166.应理解,在本技术实施例中,处理器401可以是cpu,该处理器401还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、gpu或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
167.存储器402可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data date sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,drram)。
168.总线404除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线404。
169.在具体实施例中,该网络设备400中的处理器401可以用于确定目标业务流的链路需求与该目标物理端口的链路性能相匹配,并通过该目标物理端口转发该目标业务流,其中,该目标业务流的出接口为该链路聚合接口。该处理器401的详细处理过程可以参考上述方法实施例。例如,可以参考图2所示实施例中的步骤101和步骤102,以及图3所示实施例中的步骤201至步骤208的详细描述,这里不再赘述。
170.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,该指令由处理器执行以实现上述方法实施例提供的流量调度方法。
171.本技术实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述方法实施例提供的流量调度方法。
172.本技术实施例还提供了一种流量调度系统,参考图1,该流量调度系统可以包括:至少一个网络设备01,以及与网络设备01连接的终端设备02。其中,与该终端设备02连接的网络设备01可以为上述实施例所提供的网络设备,例如可以为如图9或图10所示的网络设备。该网络设备可以采用上述实施例提供的流量调度方法,转发来自该终端设备02的业务流。
173.示例的,参考图4和图6,该网络设备01可以为csg、asg、rsg或者asbr。
174.可选地,本技术实施例提供的流量调度系统可以为支持srv6的系统。该流量调度系统可以基于成员链路的链路性能分配sid,拼接端到端的srv6,使业务流承载在满足特定链路需求的srv6隧道上,从而实现业务流的精确调度。
175.上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质。半导体介质可以是固态硬盘(solid state drive,ssd)。
176.本技术中术语“至少一个”的含义是指一个或多个,本技术中术语“多个”的含义是指两个或两个以上,例如,多个网络设备是指两个或两个以上的网络设备。本文中术语“系统”和“网络”经常可互换使用。
177.以上所述,仅为本技术的可选实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1