业务路径确定方法和设备转让专利

申请号 : CN201911215941.6

文献号 : CN112995034B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李维东张亚博

申请人 : 华为技术有限公司

摘要 :

本申请提供一种业务路径确定方法和设备,该方法包括:获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,从所述N个节点上报的第一信息中获取所述N个节点的节点标识;根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。控制器对业务路径的确定过程和业务流所走的路径的类型没有关系,不管业务流所走的路径的类型是否为需要控制器计算的类型,本申请提供的方法都能将该业务流所走的路径确定出来,和现有技术相比,本申请对需要确定业务路径的业务流没有局限。

权利要求 :

1.一种控制系统,其特征在于,包括:控制器和N个节点,所述N个节点为第一业务流途经的N个节点,所述N个节点包括首节点、N‑2个中间节点和尾节点,所述N个节点分别和所述控制器连接,其中,N大于等于2;

所述首节点用于获取所述第一业务流的第一业务流标识和第一字段值,并向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识、所述第一业务流标识和所述第一字段值,并将所述第一业务流发送给下一跳节点;

所述N‑2个中间节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,按照预设规则更新所述报文头中的第一字段值,并向控制器上报第一信息,所述第一信息包括:所述中间节点的节点标识、所述第一业务流标识和更新后的第一字段值,所述预设规则包括:递减或者递增;

所述尾节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,按照所述预设规则更新所述报文头中的第一字段值,并向控制器上报第一信息,所述第一信息包括:所述尾节点的节点标识、所述第一业务流标识和更新后的第一字段值;

所述控制器用于根据所述首节点、所述中间节点和所述尾节点上报的第一信息,获取所述第一业务流途经的所述N个节点的节点标识,并基于各节点上报的第一字段值确定所述第一业务流途经所述N个节点的途经顺序,并根据所述第一业务流途经的所述N个节点的节点标识和所述第一业务流途经所述N个节点的途经顺序,确定所述第一业务流的业务路径;所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

所述控制器还用于:

呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号;

所述控制器具体用于:

从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

2.根据权利要求1所述的系统,其特征在于,所述首节点具体用于:将所述第一业务流的报文头中的第一字段值设为预设值。

3.根据权利要求1或2所述的系统,其特征在于,所述首节点还用于:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

4.根据权利要求1或2所述的系统,其特征在于,所述控制器还用于:呈现所述第一业务流的路径。

5.根据权利要求1或2所述的系统,其特征在于,所述报文头包括扩展头,所述第一字段在所述扩展头内。

6.根据权利要求5所述的系统,其特征在于,所述扩展头具体为IFIT扩展头。

7.根据权利要求6所述的系统,其特征在于,所述首节点将所述第一业务流的报文头中的第一字段值设为预设值之前,所述首节点还用于:在所述第一业务流中插入所述IFIT扩展头。

8.一种业务路径确定方法,其特征在于,应用于控制器,包括:

获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识、第一字段值和第一业务性能参数,所述N个节点上报的第一信息中的第一字段值沿着所述第一业务流途经所述N个节点的途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

从所述N个节点上报的第一信息中获取所述N个节点的节点标识;

根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;

根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径;

呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

所述根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径包括:从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

9.根据权利要求8所述的方法,其特征在于,所述获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,包括:接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;

从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。

10.一种业务路径确定方法,其特征在于,应用于首节点,包括:获取第一业务流的第一业务流标识和第一字段值;

向控制器上报第一信息,所述第一信息包括所述首节点的节点标识、所述第一业务流标识、所述第一字段值和第一业务性能参数,所述第一信息用于所述控制器根据所述第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径,其中,所述第一字段值沿着所述途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述首节点处的业务性能参数;

所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

11.根据权利要求10所述的方法,其特征在于,所述方法还包括:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

12.根据权利要求11所述的方法,其特征在于,所述报文头包括扩展头,所述第一字段在所述扩展头内。

13.根据权利要求12所述的方法,其特征在于,所述扩展头具体为IFIT扩展头。

14.根据权利要求13所述的方法,其特征在于,所述将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还包括:在所述第一业务流中插入所述IFIT扩展头。

15.一种业务路径确定方法,其特征在于,应用于网络节点,包括:提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;

按照预设规则更新所述报文头中的第一字段值,所述预设规则包括:递减或者递增;

向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识、更新后的第一字段值和第一业务性能参数,所述第一信息用于所述控制器根据所述更新后的第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

16.一种控制系统,其特征在于,包括:控制器和N个节点,所述N个节点为第一业务流途经的N个节点,所述N个节点包括首节点、N‑2个中间节点和尾节点,所述N个节点分别和所述控制器连接,其中,N大于等于2;

所述首节点用于获取所述第一业务流的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识和所述第一业务流标识,并将所述第一业务流发送给下一跳节点;

所述N‑2个中间节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述中间节点的节点标识和所述第一业务流标识;

所述尾节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述尾节点的节点标识和所述第一业务流标识;

所述控制器用于根据所述首节点、所述中间节点和所述尾节点上报的第一信息,获取所述第一业务流途经的所述N个节点的节点标识,并基于网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序,并根据所述第一业务流途经的所述N个节点的节点标识和所述第一业务流途经所述N个节点的途经顺序,确定所述第一业务流的业务路径;

所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

所述控制器还用于:

呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

所述控制器具体用于:

从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

17.根据权利要求16所述的系统,其特征在于,所述首节点还用于:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

18.根据权利要求16或17所述的系统,其特征在于,所述控制器还用于:呈现所述第一业务流的路径。

19.根据权利要求16或17所述的系统,其特征在于,所述报文头包括IFIT扩展头,所述首节点具体用于:将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。

20.根据权利要求19所述的系统,其特征在于,所述首节点将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,所述首节点还用于:在所述第一业务流中插入所述IFIT扩展头。

21.根据权利要求16、17、20任一项所述的系统,其特征在于,所述第一业务流标识为所述第一业务流的业务信息。

22.根据权利要求16、17、20任一项所述的系统,其特征在于,所述第一业务流标识不是所述第一业务流的业务信息,所述首节点向控制器上报的第一信息还包括:所述第一业务流的业务信息。

23.根据权利要求16、17、20任一项所述的系统,其特征在于,所述首节点将第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还用于:判断所述第一业务流是否为要监控的业务流;

若是,则将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

24.根据权利要求16、17、20任一项所述的系统,其特征在于,所述报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,所述中间节点具体用于:提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。

25.根据权利要求24所述的系统,其特征在于,所述中间节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述中间节点还用于:检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;

若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。

26.根据权利要求16、17、20、25任一项所述的系统,其特征在于,所述报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,所述尾节点具体用于:提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。

27.根据权利要求26所述的系统,其特征在于,所述尾节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述尾节点还用于:检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;

若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。

28.一种业务路径确定方法,其特征在于,应用于控制器,包括:获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识和第一业务性能参数;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

从所述N个节点上报的第一信息中获取所述N个节点的节点标识;

根据网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序;

根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径;

呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

所述根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径包括:从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

29.根据权利要求28所述的方法,其特征在于,所述方法还包括:呈现所述第一业务流的路径。

30.根据权利要求28所述的方法,其特征在于,所述获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,包括:接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;

从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。

31.一种业务路径确定方法,其特征在于,应用于首节点,包括:获取第一业务流的第一业务流标识;

向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识、所述第一业务流标识和第一业务性能参数,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述首节点处的业务性能参数;

所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

32.根据权利要求31所 述的方法,其特征在于,所述方法还包括:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

33.根据权利要求32所述的方法,其特征在于,所述报文头包括IFIT扩展头,所述将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中包括:将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。

34.根据权利要求33所述的方法,其特征在于,所述将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,还包括:在所述第一业务流中插入所述IFIT扩展头。

35.一种业务路径确定方法,其特征在于,应用于网络节点,包括:提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;

向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和第一业务性能参数,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

36.一种控制器,其特征在于,包括:

获取模块,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识、第一字段值和第一业务性能参数,所述N个节点上报的第一信息中的第一字段值沿着所述第一业务流途经所述N个节点的途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

所述获取模块还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;

确定模块,用于根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;

所述确定模块还用于:根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径;呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块具体用于:从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

37.根据权利要求36所述的控制器,其特征在于,所述获取模块具体用于:接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;

从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。

38.一种网络节点,其特征在于,包括:

获取模块,用于获取第一业务流的第一业务流标识和第一字段值;

处理模块,用于向控制器上报第一信息,所述第一信息包括所述网络节点的节点标识、所述第一业务流标识、所述第一字段值和第一业务性能参数,所述第一信息用于所述控制器根据所述第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径,其中,所述第一字段值沿着所述途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

39.根据权利要求38所述的网络节点,其特征在于,所述处理模块还用于:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

40.根据权利要求39所述的网络节点,其特征在于,所述报文头包括扩展头,所述第一字段在所述扩展头内。

41.根据权利要求40所述的网络节点,其特征在于,所述扩展头具体为IFIT扩展头。

42.根据权利要求41所述的网络节点,其特征在于,所述处理模块还用于:在所述第一业务流中插入所述IFIT扩展头。

43.一种网络节点,其特征在于,包括:

提取模块,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;

更新模块,用于按照预设规则更新所述报文头中的第一字段值,所述预设规则包括:递减或者递增;

处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识、更新后的第一字段值和第一业务性能参数,所述第一信息用于所述控制器根据所述更新后的第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;

所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

44.一种控制器,其特征在于,包括:

获取模块,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识和第一业务性能参数;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述N个节点中每个节点处的业务性能参数;

所述获取模块还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;

确定模块,用于根据网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序;

所述确定模块,还用于根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径;呈现所述N个节点中每个节点上报的所述第一业务性能参数;

所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块,具体用于:从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;

根据所述N个节点的节点标识、所述途经顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。

45.根据权利要求44所述的控制器,其特征在于,所述确定模块,还用于:呈现所述第一业务流的路径。

46.根据权利要求44所述的控制器,其特征在于,所述获取模块具体用于:接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;

从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。

47.一种网络节点,其特征在于,包括:

获取模块,用于获取第一业务流的第一业务流标识;

处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和第一业务性能参数,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

48.根据权利要求47所述的网络节点,其特征在于,所述处理模块还用于:将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。

49.根据权利要求48所述的网络节点,其特征在于,所述报文头包括IFIT扩展头,所述处理模块具体用于:将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。

50.根据权利要求49所述的网络节点,其特征在于,将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,所述处理模块还用于:在所述第一业务流中插入所述IFIT扩展头。

51.一种网络节点,其特征在于,包括:

提取模块,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;

处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和第一业务性能参数,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径;所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;所述第一业务性能参数用于所述控制器呈现所述第一业务流在所述网络节点处的业务性能参数;

所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号用于所述控制器确定所述第一业务流的路径。

52.一种控制器,其特征在于,包括存储器和处理器,存储器用于存储程序指令,处理器用于调用存储器中的程序指令执行权利要求8‑9任一项所述的方法,或者,

处理器用于调用存储器中的程序指令执行权利要求28‑30任一项所述的方法。

53.一种网络节点,其特征在于,存储器和处理器,存储器用于存储程序指令,处理器用于调用存储器中的程序指令执行权利要求10‑14任一项所述的方法;

或者,

处理器用于调用存储器中的程序指令执行权利要求15所述的方法;或者,处理器用于调用存储器中的程序指令执行权利要求31‑34任一项所述的方法;

或者,

处理器用于调用存储器中的程序指令执行权利要求35所述的方法。

54.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序;所述计算机程序在被执行时,实现上述权利要求8‑9任一项所述的方法;

或者,

所述计算机程序在被执行时,实现上述权利要求10‑14任一项所述的方法;

或者,

所述计算机程序在被执行时,实现上述权利要求15 所述的方法;

或者,

所述计算机程序在被执行时,实现上述权利要求28‑30任一项所述的方法;

或者,

所述计算机程序在被执行时,实现上述权利要求31‑34任一项所述的方法;

或者,

所述计算机程序在被执行时,实现上述权利要求35所述的方法。

说明书 :

业务路径确定方法和设备

技术领域

[0001] 本申请涉及通信技术,尤其涉及一种业务路径确定方法和设备。

背景技术

[0002] 随流信息检测技术(In‑situ Flow Information Telemetry,简称IFIT)可以实时感知并呈现业务流在沿途各个节点的业务质量,做到快速故障定界和定位。在实现业务质量可视过程中,确定业务流在网络中的传输路径为关键环节。
[0003] 现有技术中,控制器计算各首节点到各尾节点的隧道路径,然后将算出来的隧道路径下发给相关节点,当首节点检测到有业务流进入网络后,筛选该业务流是否为要监控的业务流,如果是,根据该业务流的五元组信息确定该业务流要走的隧道路径,并将五元组信息和要走的隧道路径的类型上报给控制器,控制器进一步判断该隧道路径的类型是否为需要经过其计算的类型,若是,则控制器将该隧道路径确定为当前业务流的业务路径;若否,由于控制器无法感知业务流在网络中的走向,因此无法确定当前业务流的业务路径。
[0004] 也就是说,现有技术中如果业务流要走的隧道路径的类型不是需要控制器计算的类型,那么针对该业务流,其业务路径无法确定,即,现有技术的方案并不能确定网络内传输的所有业务流的业务路径,对于不能确定业务路径的业务流,其业务质量无法被感知。

发明内容

[0005] 本申请提供一种业务路径确定方法和设备,以解决现有技术确定业务路径有局限的问题。
[0006] 第一方面,本申请提供一种控制系统,包括:控制器和N个节点,所述N个节点为第一业务流途经的N个节点,所述N个节点包括首节点、N‑2个中间节点和尾节点,所述N个节点分别和所述控制器连接,其中,N大于等于2;
[0007] 所述首节点用于获取所述第一业务流的第一业务流标识和第一字段值,并向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识、所述第一业务流标识和所述第一字段值,并将所述第一业务流发送给下一跳节点;
[0008] 所述N‑2个中间节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,按照预设规则更新所述报文头中的第一字段值,并向控制器上报第一信息,所述第一信息包括:所述中间节点的节点标识、所述第一业务流标识和更新后的第一字段值,所述预设规则包括:递减或者递增;
[0009] 所述尾节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,按照所述预设规则更新所述报文头中的第一字段值,并向控制器上报第一信息,所述第一信息包括:所述尾节点的节点标识、所述第一业务流标识和更新后的第一字段值;
[0010] 所述控制器用于根据所述N个节点上报的第一信息确定所述第一业务流的路径,其中,所述N个节点上报的第一信息中的第一字段值用于确定所述第一业务流途经所述N个节点的途经顺序;具体的,所述控制器用于根据所述首节点、所述中间节点和所述尾节点上报的第一信息,获取所述第一业务流途经的所述N个节点的节点标识,并基于各节点上报的第一字段值确定所述第一业务流途经所述N个节点的途经顺序,并根据所述第一业务流途经的所述N个节点的节点标识和所述第一业务流途经所述N个节点的途经顺序,确定所述第一业务流的业务路径。
[0011] 可选的,所述首节点具体用于:
[0012] 将所述第一业务流的报文头中的第一字段值设为预设值。
[0013] 可选的,所述首节点还用于:
[0014] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0015] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号;
[0016] 所述控制器具体用于:
[0017] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0018] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0019] 可选的,所述控制器还用于:
[0020] 呈现所述第一业务流的路径。
[0021] 可选的,所述报文头包括扩展头,所述第一字段在所述扩展头内。
[0022] 可选的,所述扩展头具体为IFIT扩展头。
[0023] 可选的,所述首节点将所述第一业务流的报文头中的第一字段值设为预设值之前,所述首节点还用于:
[0024] 在所述第一业务流中插入所述IFIT扩展头。
[0025] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;
[0026] 所述控制器还用于:
[0027] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0028] 可选的,所述第一业务流标识为所述第一业务流的业务信息。
[0029] 可选的,所述第一业务流标识不是所述第一业务流的业务信息,所述首节点向控制器上报的第一信息还包括:所述第一业务流的业务信息。
[0030] 可选的,所述首节点将第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,所述首节点还用于:
[0031] 判断所述第一业务流是否为要监控的业务流;
[0032] 若是,则将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0033] 可选的,所述报文头包括IFIT扩展头,所述第一业务流标识在所述IFIT扩展头中,所述中间节点具体用于:
[0034] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0035] 可选的,所述中间节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述中间节点还用于:
[0036] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0037] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0038] 可选的,所述报文头包括IFIT扩展头,所述第一业务流标识在所述IFIT扩展头中,所述尾节点具体用于:
[0039] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0040] 可选的,所述尾节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述尾节点还用于:
[0041] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0042] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0043] 第二方面,本申请提供一种业务路径确定方法,应用于控制器,包括:
[0044] 获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识和第一字段值,所述N个节点上报的第一信息中的第一字段值沿着所述第一业务流途经所述N个节点的途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;
[0045] 从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0046] 根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;
[0047] 根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0048] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0049] 所述根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径包括:
[0050] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0051] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0052] 可选的,所述方法还包括:
[0053] 呈现所述第一业务流的路径。
[0054] 可选的,所述获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,包括:
[0055] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0056] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0057] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数,所述方法还包括:
[0058] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0059] 第三方面,本申请一种业务路径确定方法,应用于首节点,包括:
[0060] 获取第一业务流的第一业务流标识和第一字段值;
[0061] 向控制器上报第一信息,所述第一信息包括所述首节点的节点标识、所述第一业务流标识和所述第一字段值,所述第一信息用于所述控制器根据所述第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径,其中,所述第一字段值沿着所述途经顺序按照预设规则变化,所述预设规则包括:递减或者递增。
[0062] 可选的,所述获取第一业务流的第一业务流标识和第一字段值包括:
[0063] 将所述第一业务流的报文头中的第一字段值设为预设值。
[0064] 可选的,将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0065] 可选的,所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0066] 可选的,所述报文头包括扩展头,所述第一字段在所述扩展头内。
[0067] 可选的,所述扩展头具体为IFIT扩展头。
[0068] 可选的,所述将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还包括:
[0069] 在所述第一业务流中插入所述IFIT扩展头。
[0070] 可选的,所述第一业务流标识为所述第一业务流的业务信息。
[0071] 可选的,所述第一业务流标识不是所述第一业务流的业务信息,所述首节点向控制器上报的第一信息还包括:所述第一业务流的业务信息。
[0072] 可选的,所述首节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述首节点时的业务性能参数和/或流出所述首节点时的业务性能参数。
[0073] 可选的,所述将第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还包括:
[0074] 判断所述第一业务流是否为要监控的业务流;
[0075] 若是,则将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0076] 第四方面,本申请提供一种业务路径确定方法,应用于网络节点,包括:
[0077] 提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0078] 按照预设规则更新所述报文头中的第一字段值,所述预设规则包括:递减或者递增;
[0079] 向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和更新后的第一字段值,所述第一信息用于所述控制器根据所述更新后的第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0080] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0081] 可选的,所述网络节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述网络节点时的业务性能参数和/或流出所述网络节点时的业务性能参数。
[0082] 可选的,所述报文头包括IFIT扩展头,所述第一业务流标识在所述IFIT扩展头中,所述提取上一跳节点发送的第一业务流的报文头中的第一业务流标识,包括:
[0083] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0084] 可选的,所述提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,还包括:
[0085] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0086] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0087] 第五方面,本申请提供一种控制系统,包括:控制器和N个节点,所述N个节点为第一业务流途经的N个节点,所述N个节点包括首节点、N‑2个中间节点和尾节点,所述N个节点分别和所述控制器连接,其中,N大于等于2;
[0088] 所述首节点用于获取所述第一业务流的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识和所述第一业务流标识,并将所述第一业务流发送给下一跳节点;
[0089] 所述N‑2个中间节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述中间节点的节点标识和所述第一业务流标识;
[0090] 所述尾节点用于提取上一跳节点发送的所述第一业务流的报文头中的第一业务流标识,并向控制器上报第一信息,所述第一信息包括:所述尾节点的节点标识和所述第一业务流标识;
[0091] 所述控制器用于根据所述首节点、所述中间节点和所述尾节点上报的第一信息,获取所述第一业务流途经的所述N个节点的节点标识,并基于网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序。
[0092] 可选的,所述首节点具体用于:
[0093] 根据所述第一业务流的业务信息,确定所述第一业务流的第一业务流标识,所述业务信息包括五元组。
[0094] 可选的,所述首节点还用于:
[0095] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0096] 可选的,所述控制器还用于:
[0097] 根据所述第一业务流途经的所述N个节点的节点标识和所述第一业务流途经所述N个节点的途经顺序,确定所述第一业务流的业务路径。
[0098] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0099] 所述控制器具体用于:
[0100] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0101] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0102] 可选的,所述控制器还用于:
[0103] 呈现所述第一业务流的路径。
[0104] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;
[0105] 所述控制器还用于:
[0106] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0107] 可选的,所述报文头包括IFIT扩展头,所述首节点具体用于:
[0108] 将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。
[0109] 可选的,所述首节点将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,所述首节点还用于:
[0110] 在所述第一业务流中插入所述IFIT扩展头。
[0111] 可选的,所述第一业务流标识为所述第一业务流的业务信息。
[0112] 可选的,所述第一业务流标识不是所述第一业务流的业务信息,所述首节点向控制器上报的第一信息还包括:所述第一业务流的业务信息。
[0113] 可选的,所述首节点将第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还用于:
[0114] 判断所述第一业务流是否为要监控的业务流;
[0115] 若是,则将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0116] 可选的,所述报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,所述中间节点具体用于:
[0117] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0118] 可选的,所述中间节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述中间节点还用于:
[0119] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0120] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0121] 可选的,所述报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,所述尾节点具体用于:
[0122] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0123] 可选的,所述尾节点提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,所述尾节点还用于:
[0124] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0125] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0126] 第六方面,本申请提供一种业务路径确定方法,应用于控制器,包括:
[0127] 获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识和所述第一业务流标识;
[0128] 从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0129] 根据网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序;
[0130] 根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0131] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0132] 所述根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径包括:
[0133] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0134] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0135] 可选的,所述方法还包括:
[0136] 呈现所述第一业务流的路径。
[0137] 可选的,所述获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,包括:
[0138] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0139] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0140] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数,所述方法还包括:
[0141] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0142] 第七方面,本申请提供一种业务路径确定方法,应用于首节点,包括:
[0143] 获取第一业务流的第一业务流标识;
[0144] 向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0145] 可选的,所述获取第一业务流的第一业务流标识,包括:
[0146] 根据所述第一业务流的业务信息,确定所述第一业务流的第一业务流标识,所述业务信息包括五元组。
[0147] 可选的,所述方法还包括:
[0148] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0149] 可选的,所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0150] 可选的,所述报文头包括IFIT扩展头,所述将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中包括:
[0151] 将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。
[0152] 可选的,所述将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,还包括:
[0153] 在所述第一业务流中插入所述IFIT扩展头。
[0154] 可选的,所述第一业务流标识为所述第一业务流的业务信息。
[0155] 可选的,所述第一业务流标识不是所述第一业务流的业务信息,所述首节点向控制器上报的第一信息还包括:所述第一业务流的业务信息。
[0156] 可选的,所述首节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述首节点时的业务性能参数和/或流出所述首节点时的业务性能参数。
[0157] 可选的,所述将第一业务流的第一业务流标识填充到所述第一业务流的报文头中之前,还包括:
[0158] 判断所述第一业务流是否为要监控的业务流;
[0159] 若是,则将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0160] 第八方面,本申请提供一种业务路径确定方法,应用于网络节点,包括:
[0161] 提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0162] 向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0163] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0164] 可选的,所述网络节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述网络节点时的业务性能参数和/或流出所述网络节点时的业务性能参数。
[0165] 可选的,所述报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,所述提取上一跳节点发送的第一业务流的报文头中的第一业务流标识,包括:
[0166] 提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0167] 可选的,所述提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识之前,还包括:
[0168] 检测所述上一跳节点发送的第一业务流的报文头是否携带IFIT扩展头;
[0169] 若携带,则提取上一跳节点发送的第一业务流的报文头的IFIT扩展头中填充的第一业务流标识。
[0170] 第九方面,本申请提供一种控制器,包括:
[0171] 获取模块,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识和第一字段值,所述N个节点上报的第一信息中的第一字段值沿着所述第一业务流途经所述N个节点的途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;
[0172] 所述获取模块还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0173] 确定模块,用于根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;
[0174] 所述确定模块还用于:根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0175] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块具体用于:
[0176] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0177] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0178] 可选的,所述获取模块具体用于:
[0179] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0180] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0181] 第十方面,本申请提供一种网络节点,包括:
[0182] 获取模块,用于获取第一业务流的第一业务流标识和第一字段值;
[0183] 处理模块,用于向控制器上报第一信息,所述第一信息包括所述网络节点的节点标识、所述第一业务流标识和所述第一字段值,所述第一信息用于所述控制器根据所述第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径,其中,所述第一字段值沿着所述途经顺序按照预设规则变化,所述预设规则包括:递减或者递增。
[0184] 可选的,所述处理模块还用于:
[0185] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0186] 可选的,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号。
[0187] 可选的,所述报文头包括扩展头,所述第一字段在所述扩展头内。
[0188] 可选的,所述扩展头具体为IFIT扩展头。
[0189] 可选的,所述处理模块还用于:
[0190] 在所述第一业务流中插入所述IFIT扩展头。
[0191] 第十一方面,本申请提供一种网络节点,包括:
[0192] 提取模块,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0193] 更新模块,用于按照预设规则更新所述报文头中的第一字段值,所述预设规则包括:递减或者递增;
[0194] 处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和更新后的第一字段值,所述第一信息用于所述控制器根据所述更新后的第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0195] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0196] 第十一方面,本申请提供一种控制器,包括:
[0197] 获取模块,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识和所述第一业务流标识;
[0198] 所述获取模块还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0199] 确定模块,用于根据网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序;
[0200] 所述确定模块,还用于根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0201] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块,具体用于:
[0202] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0203] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0204] 可选的,所述确定模块,还用于:
[0205] 呈现所述第一业务流的路径。
[0206] 可选的,所述获取模块具体用于:
[0207] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0208] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0209] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数,所述确定模块还用于:
[0210] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0211] 第十二方面,本申请提供一种网络节点,包括:
[0212] 获取模块,用于获取第一业务流的第一业务流标识;
[0213] 处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0214] 可选的,所述处理模块还用于:
[0215] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0216] 可选的,所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0217] 可选的,所述报文头包括IFIT扩展头,所述处理模块具体用于:
[0218] 将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。
[0219] 可选的,将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,所述处理模块还用于:
[0220] 在所述第一业务流中插入所述IFIT扩展头。
[0221] 第十三方面,本申请提供一种网络节点,包括:
[0222] 提取模块,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0223] 处理模块,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0224] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0225] 第十四方面,本申请提供一种控制器,包括存储器和处理器,存储器用于存储程序指令,处理器用于调用存储器中的程序指令执行上述任一控制器执行的步骤。
[0226] 第十五方面,本申请提供一种网络节点,包括存储器和处理器,存储器用于存储程序指令,处理器用于调用存储器中的程序指令执行上述任一网络节点执行的步骤。
[0227] 第十六方面,本申请提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序在被执行时,实现上述任一控制器执行的步骤。
[0228] 第十七方面,本申请提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序在被执行时,实现上述任一网络节点执行的步骤。
[0229] 本申请提供的业务路径确定方法和设备,包括两种实现思路,一种思路为以业务流的报文头中第一字段值沿着业务流途经的节点的顺序呈现规律变化为切入点,业务流途经的每个节点向控制器上报第一字段值,控制器可根据各节点上报的第一字段值变化的规律确定业务流途经顺序,进而基于该途经顺序将业务流的业务路径确定出来。第二种思路为以网络物理拓扑为切入点,业务流途经的每个节点向控制器上报节点标识,控制器可通过节点标识先确定业务流途经的节点有哪些,然后基于网络物理拓扑确定业务流途径这些节点的途经顺序,最后基于业务流途经节点的节点标识和该途经顺序将业务流的业务路径确定出来。本申请的上述两种实现思路,控制器对业务路径的确定过程和业务流所走的路径的类型没有关系,不管业务流所走的路径的类型是否为需要控制器计算的类型,本申请提供的方法都能将该业务流所走的路径确定出来,和现有技术相比,本申请对需要确定业务路径的业务流没有局限。

附图说明

[0230] 图1a为本申请提供的系统框架图;
[0231] 图1b为本申请提供的业务路径确定方法的控制系统示意图;
[0232] 图2为本申请提供的业务路径确定方法的实施例一的信令流程图;
[0233] 图3为本申请提供的IFIT扩展头格式示意图一;
[0234] 图4为本申请提供的业务路径示意图一;
[0235] 图5为本申请提供的业务路径示意图二;
[0236] 图6为本申请提供的业务路径确定方法的实施例二的信令流程图;
[0237] 图7为本申请提供的IFIT扩展头格式示意图二;
[0238] 图8为本申请提供的一种控制器80的结构示意图;
[0239] 图9为本申请提供的一种网络节点90的结构示意图;
[0240] 图10为本申请提供的一种网络节点100的结构示意图;
[0241] 图11为本申请提供的一种控制器110的结构示意图;
[0242] 图12为本申请提供的一种网络节点120的结构示意图;
[0243] 图13为本申请提供的一种网络节点130的结构示意图;
[0244] 图14为本申请提供的一种控制器140的硬件结构示意图;
[0245] 图15为本申请提供的一种网络节点150的硬件结构示意图;
[0246] 图16为本申请提供的一种网络节点160的硬件结构示意图;
[0247] 图17为本申请提供的一种控制器170的硬件结构示意图;
[0248] 图18为本申请提供的一种网络节点180的硬件结构示意图;
[0249] 图19为本申请提供的一种网络节点190的硬件结构示意图。

具体实施方式

[0250] 为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0251] 在本申请中,需要解释的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:单独a,单独b,单独c,a和b的组合,a和c的组合,b和c的组合,或a、b以及c的组合,其中a,b,c可以是单个,也可以是多个。
[0252] 图1a为本申请提供的系统框架图。图1a所示系统包括:控制器和M个网络节点组成的网络,该M个网络节点可划分为入口节点(也可以称为首节点或入口设备)、转发节点和出口节点(也可以称为尾节点或出口设备)三种类型,业务流从入口节点进入网络,经过转发节点的转发到达出口节点,并通过出口节点流出网络。图1a所示M个网络节点中每个节点均可和控制器通信。
[0253] 其中,网络节点为具有读取数据包中的地址然后决定如何传送该数据包的功能的专用智能性网络设备。而且,网络节点能够理解不同的协议,比如某个局域网使用的以太网协议、因特网使用的TCP/IP协议等,在此基础上,网络节点可以读取各种不同类型网络传来的数据包的目的地址,并把非TCP/IP网络的地址转换成TCP/IP网络的地址,或者把TCP/IP网络的地址转为成非TCP/IP网络的地址,进而根据相应的路由算法把各数据包按最佳路线传送到指定位置,即,图1所示网络节点具有把非TCP/IP网络连接到因特网上的能力。
[0254] 图1a所示网络节点包括但不限于全球移动通讯(Global System of Mobile communication,简称GSM)或码分多址(Code Division Multiple Access,简称CDMA)中的基站(Base Transceiver Station,简称BTS)、宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)中的基站(NodeB,简称NB)、LTE网络中的演进型基站(evolved NodeB,简称eNB)、接入点(access point,AP)、中继站、5G网络或者NR中的基站等,本申请对此不作限定。
[0255] 图1a所示控制器可以为具备处理本申请中控制器涉及的步骤的处理设备。该处理设备的类型可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等,其中通用处理器可以是微处理器或者其他任何常规处理器,本申请对此不作限定。
[0256] 现有技术中,在M个网络节点组网完成后,控制器计算各首节点到各尾节点的隧道路径,然后将算出来的隧道路径下发给相关节点,当首节点检测到有业务流进入网络后,筛选该业务流是否为要监控的业务流,如果是,根据该业务流的五元组信息确定该业务流要走的隧道路径,并将五元组信息和要走的隧道路径的类型上报给控制器,控制器进一步判断该隧道路径是否为经过其计算得到的路径。详细的,控制器依据隧道路径的类型来判断隧道路径是否为经过其计算得到的路径。目前,需要控制器计算的隧道路径的类型包括:IPv6分段路由政策(Segment Routing IPv6 Policy,简称SRv6 Policy)和分段路由流量工程(Segment Routing‑Traffic Engineering,简称SR‑TE)。如果首节点上报的隧道路径的类型为SRv6 Policy和SR‑TE中任意一个,则控制器可确定当前业务流要走隧道路径是经过控制器计算得到的路径。如果首节点上报的隧道路径的类型不是SRv6 Policy和SR‑TE中的任意一个,比如首节点上报的隧道路径的类型为IPv6分段路由(Segment Routing IPv6,简称SRv6)、标签分发协议(Label Distribution Protocol,简称LDP)和分段路由最优隧道路径(Segment Routing Best Effort,简称SR‑BE)中的任意一个,则控制器可确定当前业务流要走隧道路径不是经过控制器计算得到的路径。当判断结果为当前业务流要走的隧道路径是经过控制器计算得到的路径,则控制器将该隧道路径确定为当前业务流的业务路径;
当判断结果为当前业务流要走的隧道路径不是经过控制器计算得到的路径,由于控制器无法感知业务流在网络中的走向,因此无法确定当前业务流对应的业务路径。
[0257] 也就是说,现有技术中如果业务流要走的隧道路径的类型不是需要控制器计算的类型(SRv6 Policy和SR‑TE),那么针对该业务流,其业务路径无法确定,即,现有技术的方案并不能确定网络内传输的所有业务流的业务路径。对于不能确定业务路径的业务流,其业务质量无法被感知。
[0258] 考虑到现有技术存在的上述技术问题,本申请提供一种业务路径确定方法,包括两种实现思路,一种思路为以业务流的报文头中第一字段值沿着业务流途经的节点的顺序呈现规律变化为切入点,业务流途经的每个节点向控制器上报第一字段值,控制器可根据各节点上报的第一字段值变化的规律确定业务流途经顺序,进而基于该途经顺序将业务流的业务路径确定出来。第二种思路为以网络物理拓扑为切入点,业务流途经的每个节点向控制器上报节点标识,控制器可通过节点标识先确定业务流途经的节点有哪些,然后基于网络物理拓扑确定业务流途径这些节点的途经顺序,最后基于业务流途经节点的节点标识和该途经顺序将业务流的业务路径确定出来。本申请的上述两种实现思路,控制器对业务路径的确定过程和业务流所走的路径的类型没有关系,不管业务流所走的路径的类型是否为需要控制器计算的类型,本申请提供的方法都能将该业务流所走的路径确定出来,和现有技术相比,本申请对需要确定业务路径的业务流没有局限。
[0259] 下面结合具体的实施例对基于上述两种思路的业务路径确定方法进行详细说明。
[0260] 本申请以确定图1a所示网络内传输的第一业务流标识对应的业务流为例,对本申请提供的业务路径确定方法进行说明。可以理解的是,本申请提供的业务路径确定方法适用于与图1a所示网络中传输的任何业务流,第一业务流标识对应的业务流仅是为了阐述清楚本申请的方案而选择的起示意作用的业务流。为方便描述,下面将第一业务流标识对应的业务流简称为第一业务流。
[0261] 图1b为本申请提供的业务路径确定方法的控制系统示意图。图1b所示控制系统包括:控制器和第一业务流途经的N个节点,该N个节点为所要监控的一个网络区间内的节点,如图1a所示,第一业务流通过某入口节点进入网络,经过若干转发节点达到某出口节点后,通过该出口节点流出网络,假设要监控的是第一业务流在转发节点1到转发节点N之间的路径,那么可以将转发节点1称为首节点,将转发节点N称为尾节点,将转发节点1到转发节点N之间的N‑2个转发节点称为中间节点。
[0262] 可以理解的是:首节点和尾节点是由监控的网络区间决定的,首节点是第一业务流在该网络区间途经的第一个节点,尾节点是在该网络区间途经的最后一个节点,如果所要监控的网络区间为整个网络,那么可将第一业务流进入网络的入口节点称为首节点,将流出网络的出口节点称为尾节点,将入口节点和出口节点之间经过的转发节点称为中间节点。
[0263] 实施例一
[0264] 针对第一种思路,图2为本申请提供的业务路径确定方法的实施例一的信令流程图。如图2所示,本实施例提供的业务路径确定方法,包括:
[0265] S201、获取第一业务流的第一业务流标识和第一字段值。
[0266] 一种可能实现的方式中,可以获取第一业务流的报文头本身携带的第一业务流标识和第一字段值。向控制器上报第一信息时,直接上报该第一业务流标识和第一字段值。
[0267] 另一种可能的实现方式中,可根据第一业务流的业务信息,确定第一业务流的第一业务流标识,并将第一业务流的报文头中的第一字段值设为预设值。向控制器上报第一信息时,上报该确定的第一业务流标识以及设置后的第一字段值。
[0268] 在第二种实现方式下,本实施例的方法还包括:将第一业务流的第一业务流标识填充到第一业务流的报文头中。
[0269] 可选的,上述业务信息例如可以是五元组。
[0270] 可选的,可将第一业务流的第一业务流标识填充到所述第一业务流的报文头的业务流标识字段。
[0271] 可选的,若报文头包括扩展头,可将第一业务流的第一业务流标识填充到该扩展头内,第一字段也可在该扩展头内;进一步的,若报文头包括IFIT扩展头,可将第一业务流的第一业务流标识填充到该IFIT扩展头内,第一字段也可在该IFIT扩展头内。
[0272] 若第一字段在IFIT扩展头内,将第一业务流的报文头中的第一字段值设为预设值具体为:将第一业务流的IFIT扩展头内的第一字段值设为预设值,在将第一业务流的IFIT扩展头内的第一字段值设为预设值之前,本实施例的方法还可包括:在第一业务流中插入IFIT扩展头。
[0273] 一种可能的实现方式中,可在第一业务流的检测报文的报文头中插入IFIT扩展头,该检测报文可以为每个检测周期内的任意一个报文,比如每个检测周期的第一个报文;或者,检测报文为所有报文,即,在第一业务流的所有报文的报文头中插入IFIT扩展头。
[0274] 具体的,插入的IFIT扩展头可以为图3所示格式。图3所示格式为多协议标签交换(Multi‑Protocol Label Switching,简称MPLS)和分段路由(Segment Routing,简称SR)对应的IFIT扩展头格式。
[0275] 图3所示扩展头包括三部分:流指示符FII、流指示头FIH和流指示扩展头FIEH,其中,FII包括:保留标签FII Label字段和TTL字段,FII Label值为12(TBD),用于标识IFIT扩展头紧随其后。S201可将TTL字段作为第一字段,将TTL值设为预设值。FIH包括:业务流标识FlowID字段、丢包染色LFlag字段(图3中字母L)、时延染色DFlag字段(图3中字母D)以及FIH头类型字段(图3中字母HTI)。FIEH包括:流ID标识扩展FlowID Ext字段、反向流学习使能VFlag字段(图3中字母V)、检测周期Period字段(图3中字母P)以及预留的反向流学习DIP掩码字段(图3中字母DIP Mask)和反向流学习SIP掩码字段(图3中字母SIP Mask)。图3中本文未介绍的其他字母的字段含义参见现有技术。
[0276] 可选的,可将第一业务流标识填充到图3所示IFIT扩展头中的业务流标识FlowID字段。
[0277] 可选的,第一字段可以为生存时间值(Time To Live,简称TTL)字段,还可以为其他的字段值可以更新为多个值的字段。
[0278] 在一种可能的实现方式中,第一业务流的TTL值可沿着第一业务流途经节点的途经顺序递减或者递增。比如:TTL值可沿着途经顺序逐跳减1,或者沿着途经顺序逐跳加1,或者沿着途经顺序按照其他规律变化,只要控制器能够根据该规律确定第一业务流途经N个节点的途经顺序即可。
[0279] 举例来说:假设首节点将TTL值设为255,TTL值沿着第一业务流途经节点的途经顺序逐跳减1,控制器获取到该业务流途经的N个节点上报的TTL值后,按照TTL值为255、254、…、255‑(N‑1)来确定N个节点的途经顺序。
[0280] 在一种可能的实现方式中,为了对业务流进行筛选,在本步骤S201之前,本实施例提供的方法,还可包括:首节点判断第一业务流是否为要监控的业务流,若是,则执行S201,若否,则不执行本实施例的方法。
[0281] 具体的,首节点可以根据第一业务流的五元组来判断其是否为要监控的业务流。比如:根据第一业务流的源IP和/或目标IP。
[0282] 举例来说,假设首节点要监控的业务流的源地址为IP1,首节点可将第一业务流的源IP和IP1进行匹配,若匹配成功,则认为第一业务流为要监控的业务流。
[0283] 在一种可能的实现方式中,本实施例提供的方法还包括:向控制器上报的第一信息还包第一业务流的业务信息,比如:五元组,以使控制器根据该业务信息得到第一业务流的源IP,目的IP等信息。如果首节点确定的业务流标识为业务信息本身,则不执行上述上报业务信息的步骤。
[0284] S202、首节点向控制器上报第一信息,该第一信息包括:首节点的节点标识、第一业务流标识和第一字段值。
[0285] 可选的,首节点的节点标识可以为首节点的IP。
[0286] 在一种可能的实现方式中,首节点包括至少两个端口,首节点向控制器上报的第一信息还包括:首节点接收第一业务流的端口号和/或发送第一业务流的端口号。控制器可以根据该第一信息确定第一业务流流入首节点的端口号和流出首节点的端口号,从而针对第一业务流确定出更加精细的业务路径。
[0287] 在一种可能的实现方式中,所述首节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述首节点时的业务性能参数和/或流出所述首节点时的业务性能参数。控制器可呈现该第一业务性能参数,使得首节点处的第一业务性能参数可视。
[0288] 以上为本实施例提供的业务路径确定方法中首节点的操作,首节点对第一业务流进行S201‑S202的处理后,将业务流发送给下一跳节点。下一跳节点执行S203‑S205的步骤。
[0289] 需要说明的是,S203‑S205并不仅仅是首节点的下一跳节点执行的步骤,而是从首节点的下一跳节点,到再下一跳节点,直至业务流流出网络前的尾节点都执行的是S203‑S205的步骤,即,中间节点和尾节点均执行S203‑S205的步骤。
[0290] 为描述方便,下文将执行S203‑S205的节点称为“本节点”。
[0291] S203、提取上一跳节点发送的第一业务流的报文头中中填充的业务流标识,即第一业务流标识。
[0292] 在一种可能的实现方式中,若报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,在S203之前,本实施例提供的方法还可包括:检测第一业务流的报文头是否携带IFIT扩展头,若携带,则提取第一业务流的报文头的IFIT扩展头中填充的业务流标识,即第一业务流标识。
[0293] 具体的,若第一业务流的报文头携带的IFIT扩展头的格式为图3所示格式,可提取图3所示业务流标识FlowID字段中填充的业务流标识。
[0294] S204、按照预设规则更新所述报文头中的第一字段值。
[0295] 可选的,预设规则可以为递减或者递增。
[0296] 举例来说,第一字段值为TTL值,TTL值沿着途经顺序逐跳减1,上一跳将TTL值设为255,那么本节点在步骤S204将TTL值更新为254。
[0297] S205、向控制器上报第一信息,该第一信息包括:本节点的节点标识、第一业务流标识和更新后的第一字段值。
[0298] 可选的,本节点的节点标识可以为本节点的IP。
[0299] 在一种可能的实现方式中,本节点包括至少两个端口,本节点向控制器上报的第一信息还包括:本节点接收第一业务流的端口号和/或发送第一业务流的端口号。控制器可以根据该第一信息确定第一业务流流入本节点的端口号和流出本节点的端口号,从而针对第一业务流确定出更加精细的业务路径。
[0300] 在一种可能的实现方式中,本节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入本节点时的业务性能参数和/或流出本节点时的业务性能参数。控制器可呈现该第一业务性能参数,使得本节点处的第一业务性能参数可视。
[0301] 该控制器根据该第一业务流沿途的N个节点中的每个节点上报的第一信息确定该第一业务流的路径,其中,各节点上报的第一信息中的第一字段值用于确定该第一业务流途经该N个节点的途经顺序。具体通过如下步骤S206‑S208确定该第一业务流的路径。
[0302] S206、获取第一业务流途经的N个节点的节点标识。
[0303] 参见上文,第一业务流沿途的N个节点中的每个节点都向控制器上报了第一信息,该第一信息包括所述节点的节点标识和第一业务流标识;因此,可从N个节点中每个节点上报的第一信息中获取所述节点的节点标识。
[0304] 监控的网络区间中节点数量庞大,一个检测周期内向控制器上报第一信息的节点数量非常多,这种情况下,可通过如下方式获取上述N个节点上报的第一信息:
[0305] 控制器接收M个节点上报的第一信息,M个节点中的每个节点上报的第一信息包括该节点的节点标识和途经该节点的业务流的业务流标识;从该M个节点上报的第一信息中确定第一业务流标识对应的业务流途经的N个节点上报的第一信息。
[0306] 下面举例说明:
[0307] 假设一个检测周期内,控制器接收到10个节点上报的第一信息,该10个节点(R1‑R10)的第一信息参见表1,假设要呈现的第一业务流对应的第一业务流标识为ID1,那么从表1可以确定第一业务流在这段时间内途经的节点有R1、R4、R6和R10。
[0308] 表1
[0309]
[0310] 进一步的,当N个节点中每个节点上报的第一信息还包括:节点接收第一业务流的端口号和/或发送第一业务流的端口号时,可从N个节点上报的第一信息中获取N个节点中每个节点接收第一业务流的端口号和/或发送第一业务流的端口号。
[0311] 下面举例说明:
[0312] 结合表1所示例子,假设一个检测周期内,控制器接收到10个节点上报的第一信息,该10个节点(R1‑R10)的第一信息参见表2,假设要确定的第一业务流对应的第一业务流标识为ID1,那么从表1可以确定第一业务流在这段时间内途经的节点有R1、R4、R6和R10,同时可确定R1接收第一业务流的端口号为D1,R1发送第一业务流的端口号为D2;R4接收第一业务流的端口号为D7,R4发送第一业务流的端口号为D8;R6接收第一业务流的端口号为D11,R6发送第一业务流的端口号为D12;R10接收第一业务流的端口号为D19,R10发送第一业务流的端口号为D20。
[0313]
[0314] S207、根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序。
[0315] S208、根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0316] 同上文描述,N个节点上报的第一字段值沿着第一业务途经N个节点的途经顺序按照预设规则变化,所述预设规则包括递减或者递增,第一字段可以为生存时间值(Time To Live,简称TTL)字段,还可以为其他的字段值可以更新为多个值的字段。
[0317] 结合表1所示例子,第一业务流途经的节点有R1、R4、R6和R10,由于,R1上报的TTL值为255,R4上报的TTL值为253,R6上报的TTL值为254,R10上报的TTL值为252,假设控制器和各节点提前协商的TTL值变化规则为逐跳递减,则控制器可确定R1、R4、R6和R10的途经顺序为R1→R6→R4→R10,该路径在图1a所示网络呈现形式可如图4示意的形式。也可将该路径单独呈现为图5示意形式。
[0318] 进一步的,当N个节点中每个节点上报的第一信息还包括端口号时,可根据N个节点的节点标识、第一业务流途经N个节点的途径顺序以及N个节点中每个节点接收第一业务流的端口号和/或发送第一业务流的端口号,确定第一业务流的路径。
[0319] 结合表1和表2所示例子,第一业务流的传输路径为R1→R6→R4→R10,由于,R1接收第一业务流的端口号为D1,R1发送第一业务流的端口号为D2;R4接收第一业务流的端口号为D7,R4发送第一业务流的端口号为D8;R6接收第一业务流的端口号为D11,R6发送第一业务流的端口号为D12;R10接收第一业务流的端口号为D19,R10发送第一业务流的端口号为D20,则可确定第一业务流的业务路径为D1→D2→D11→D12→D7→D8→D19→D20,进一步细化了第一业务流的业务路径。
[0320] 可选的,为了第一业务流的业务路径实现可视,本实施例还包括:呈现第一业务流的路径。
[0321] 参见上文描述,N个节点中每个节点上报的第一信息还可包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;为了使该第一业务性能参数可视,控制器在呈现第一业务流的业务路径时,可同时呈现N个节点中每个节点上报的所述第一业务性能参数。
[0322] 本实施例提供的业务路径确定方法,网络中每个节点都向控制器上报该节点的节点标识、途经该节点的业务流的业务流标识以及第一字段值,在呈现某个业务流标识对应的业务流的业务路径时,控制器先获取该业务流途经的N个节点的节点标识,然后根据各节点上报的第一字段值确定N个节点的途经顺序,最后根据N个节点的节点标识和该途经顺序确定业务路径,和现有技术相比,无论业务流在网路中所走的路径的类型是否为需要控制器计算的类型,本实施例的方法均能将其在网络中所走的路径确定出来,即,本实施例的方法可以确定网络中传输的所有业务流的业务路径。
[0323] 实施例二
[0324] 针对第二种思路,图6为本申请提供的业务路径确定方法的实施例二的信令流程图。如图6所示,本实施例提供的业务路径确定方法,包括:
[0325] S601、获取第一业务流的第一业务流标识。
[0326] 一种可实现的方式中,可以获取第一业务流的报文头本身携带的第一业务流标识。向控制器上报第一信息时,直接上报该第一业务流标识。
[0327] 另一种可能的实现方式中,可根据第一业务流的业务信息,确定第一业务流的第一业务流标识。向控制器上报第一信息时,上报该确定的第一业务流标识以及设置后的第一字段值。
[0328] 在第二种实现方式下,本实施例的方法还包括:将第一业务流的第一业务流标识填充到第一业务流的报文头中。
[0329] 可选的,上述业务信息例如可以是五元组。
[0330] 可选的,可将第一业务流的第一业务流标识填充到所述第一业务流的报文头的业务流标识字段。
[0331] 可选的,若报文头包括扩展头,可将第一业务流的第一业务流标识填充到该扩展头内,进一步的,若报文头包括IFIT扩展头,可将第一业务流的第一业务流标识填充到该IFIT扩展头内。
[0332] 若要将第一业务流的第一业务流标识填充到IFIT扩展头内,填充之前,本实施例的方法还可包括:在第一业务流中插入IFIT扩展头。
[0333] 一种可能的实现方式中,可在第一业务流的检测报文的报文头中插入IFIT扩展头,该检测报文可以为每个检测周期内的任意一个报文,比如每个检测周期的第一个报文;或者,检测报文为所有报文,即,在第一业务流的所有报文的报文头中插入IFIT扩展头。
[0334] 同上述第一种思路下的业务路径确定方法,插入的IFIT扩展头可以为图3所示格式,也可为图7所示格式。本实施例在此对图3所示格式不再赘述。图7所示格式为分段路由互联网协议第六版(Segment Routing IPv6,简称SRV6)对应的IFIT扩展头格式。
[0335] 图7所示扩展头同样包括三部分:流指示符FII、流指示头FIH和流指示扩展头FIEH,其中,FII包括:类型Type字段和长度Length字段,Type值为130(TBD),用于标识IFIT扩展头紧随其后。Length字段用于标识FIH和FIEH的长度。FIH包括:业务流标识FlowID字段、丢包染色LFlag字段(图7中字母L)、时延染色DFlag字段(图7中字母D)以及FIH头类型字段(图7中字母HTI)。FIEH包括:流ID标识扩展FlowID Ext字段、反向流学习使能VFlag字段(图7中字母V)、检测周期Period字段(图7中字母P)以及预留的反向流学习DIP掩码字段(图7中字母DIP Mask)和反向流学习SIP掩码字段(图7中字母SIP Mask)。图7中本文未介绍的其他字母的字段含义参见现有技术。
[0336] 可选的,可将第一业务流标识填充到图3或者图7所示IFIT扩展头中的业务流标识FlowID字段。
[0337] 同上述第一种思路下的业务路径确定方法,在本步骤S601之前,本实施例提供的方法,还可包括:首节点判断该第一业务流是否为要监控的业务流,若是,则执行S601,若否,则不执行本实施例的方法。
[0338] 具体的,首节点可以根据第一业务流的五元组信息来判断其是否为要监控的业务流。比如:根据第一业务流的源IP和/或目标IP。
[0339] 举例来说,假设首节点要监控的业务流的源地址为IP1,首节点可将第一业务流的源IP和IP1进行匹配,若匹配成功,则认为第一业务流为要监控的业务流。
[0340] S602、向控制器上报第一信息,所述第一信息包括:所述首节点的节点标识和所述第一业务流标识。
[0341] 可选的,首节点的节点标识可以为首节点的IP。
[0342] 在一种可能的实现方式中,首节点包括至少两个端口,首节点向控制器上报的第一信息还包括:首节点接收第一业务流的端口号和/或发送第一业务流的端口号。控制器可以根据该第一信息确定第一业务流流入首节点的端口号和流出首节点的端口号,从而针对第一业务流确定出更加精细的业务路径。
[0343] 在一种可能的实现方式中,所述首节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述首节点时的业务性能参数和/或流出所述首节点时的业务性能参数。控制器可呈现该第一业务性能参数,使得首节点处的第一业务性能参数可视。
[0344] 以上为本实施例提供的业务路径确定方法中首节点的操作,首节点对第一业务流进行S601‑S602的处理后,将业务流发送给下一跳节点。下一跳节点执行S603‑S604的步骤。
[0345] 参见图6所示,S603‑S604并不仅仅是首节点的下一跳节点执行的步骤,而是从首节点的下一跳节点,到再下一跳节点,直至业务流流出网络前的尾节点都执行的是S603‑S604的步骤,即,中间节点和尾节点均执行S603‑S604的步骤。
[0346] 为描述方便,下文将执行S603‑S604节点称为“本节点”。
[0347] S603、提取上一跳节点发送的第一业务流的报文头中中填充的业务流标识,即第一业务流标识。
[0348] 同上述第一种思路下的业务路径确定方法,若报文头包括IFIT扩展头,第一业务流标识在该IFIT扩展头中,在S602之前,本实施例提供的方法还可包括:检测第一业务流的报文头是否携带IFIT扩展头,若携带,则提取第一业务流的报文头的IFIT扩展头中填充的业务流标识,即第一业务流标识。
[0349] 具体的,若第一业务流的报文头携带的IFIT扩展头的格式为图3或图7所示格式,可提取图3或图7所示业务流标识FlowID字段中填充的业务流标识。
[0350] S604、向控制器上报第一信息,该第一信息包括:本节点的节点标识和第一业务流标识。
[0351] 可选的,本节点的节点标识可以为本节点的IP。
[0352] 在一种可能的实现方式中,本节点包括至少两个端口,本节点向控制器上报的第一信息还包括:本节点接收第一业务流的端口号和/或发送第一业务流的端口号。控制器可以根据该第一信息确定第一业务流流入本节点的端口号和流出本节点的端口号,从而针对第一业务流确定出更加精细的业务路径。
[0353] 在一种可能的实现方式中,本节点向控制器上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入本节点时的业务性能参数和/或流出本节点时的业务性能参数。控制器可呈现该第一业务性能参数,使得本节点处的第一业务性能参数可视。
[0354] S605、获取第一业务流标识对应的第一业务流途经的N个节点的节点标识。
[0355] 同上述第一种思路下的业务路径确定方法,第一业务流沿途的N个节点中的每个节点都向控制器上报了第一信息,该第一信息包括所述节点的节点标识和第一业务流标识;因此,可从N个节点中每个节点上报的第一信息中获取所述节点的节点标识。
[0356] 下面举例说明:
[0357] 假设一个检测周期内,控制器接收到10个节点上报的第一信息,该10个节点(R1‑R10)的第一信息参见表3,假设要呈现的第一业务流对应的第一业务流标识为ID1,那么从表2可以确定第一业务流在这段时间内途经的节点有R1、R4、R6和R10。
[0358] 表3
[0359]
[0360] 进一步的,当N个节点中每个节点上报的第一信息还包括:节点接收第一业务流的端口号和/或发送第一业务流的端口号时,可从N个节点上报的第一信息中获取N个节点中每个节点接收第一业务流的端口号和/或发送第一业务流的端口号。
[0361] 下面举例说明:
[0362] 结合表3所示例子,假设一个检测周期内,控制器接收到10个节点上报的第一信息,该10个节点(R1‑R10)的第一信息参见表4,假设要确定的第一业务流对应的第一业务流标识为ID1,那么从表1可以确定第一业务流在这段时间内途经的节点有R1、R4、R6和R10,同时可确定R1接收第一业务流的端口号为D1,R1发送第一业务流的端口号为D2;R4接收第一业务流的端口号为D7,R4发送第一业务流的端口号为D8;R6接收第一业务流的端口号为D11,R6发送第一业务流的端口号为D12;R10接收第一业务流的端口号为D19,R10发送第一业务流的端口号为D20。
[0363] 表4
[0364]
[0365] S606、根据网络物理拓扑和节点属性信息确定N个节点的途经顺序。
[0366] S607、根据所述N个节点的节点标识和途经顺序确定所述第一业务流的路径。
[0367] 具体的,可先确定第一业务流途经的N个节点中的首节点,然后结合网络物理拓扑确定第一业务流途经N个节点的途径顺序。
[0368] 第一种可能的实现方式中,首节点除了向控制器上报第一信息以外,还可向控制器上报业务信息,该业务信息例如为第一业务流的五元组,首节点将上报业务信息的节点确定为首节点。
[0369] 第二种可能的实现方式中,首节点除了向控制器上报第一信息外,还可向控制器上报节点属性信息,比如:标示位,控制器将上报节点属性信息的节点确定为首节点。
[0370] 第三种可能的实现方式中,N个节点中每个节点向控制器上报的第一信息中还包括接收第一业务流的端口号和/或发送第一业务流的端口号,基于每个节点上报的两种端口号和网络物理拓扑,可确定第一业务流途经的N个节点中的首节点。
[0371] 结合表3所示例子,第一业务流途经的节点有R1、R4、R6和R10,假设根据网络物理拓扑可以确定R1、R4、R6和R10连接关系为R1—R6—R4—R10,然而,只有连接关系的情况下,控制器还是不能确定第一业务流是从R1流向R10,还是从R10流向R1,这时可结合上述三种实现方式确定首节点,表3以第二种实现方法示意,假设确定的首节点为R1,第一业务流的传输路径则为R1→R6→R4→R10,该路径在图1a所示网络呈现形式可如图4示意的形式。也可将该路径单独呈现为图5示意形式。
[0372] 进一步的,当N个节点中每个节点上报的第一信息还包括端口号时,可根据N个节点的节点标识、第一业务流途经N个节点的途径顺序以及N个节点中每个节点接收第一业务流的端口号和/或发送第一业务流的端口号,确定第一业务流的路径。
[0373] 结合表3和表4所示例子,第一业务流的传输路径为R1→R6→R4→R10,由于,R1接收第一业务流的端口号为D1,R1发送第一业务流的端口号为D2;R4接收第一业务流的端口号为D7,R4发送第一业务流的端口号为D8;R6接收第一业务流的端口号为D11,R6发送第一业务流的端口号为D12;R10接收第一业务流的端口号为D19,R10发送第一业务流的端口号为D20,则可确定第一业务流的业务路径为D1→D2→D11→D12→D7→D8→D19→D20,进一步细化了第一业务流的业务路径。
[0374] 可选的,为了第一业务流的业务路径实现可视,本实施例还包括:呈现第一业务流的路径。
[0375] 参见上文描述,N个节点中每个节点上报的第一信息还可包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数;为了使该第一业务性能参数可视,控制器在呈现第一业务流的业务路径时,可同时呈现N个节点中每个节点上报的所述第一业务性能参数。
[0376] 本实施例提供的业务路径确定方法,网络中每个节点都向控制器上报该节点的节点标识和途经该节点的业务流的业务流标识,在呈现某个业务流标识对应的业务流的业务路径时,控制器先获取该业务流途经的N个节点的节点标识,然后根据网络物理拓扑确定途经节点的途经顺序,进而根据N个节点的节点标识和该途经顺序确定业务路径,和现有技术相比,无论业务流在网路中所走的路径的类型是否为需要控制器计算的类型,本实施例的方法均能将其在网络中所走的路径确定出来,即,本实施例的方法可以确定网络中传输的所有业务流的业务路径。
[0377] 需要说明的是,本申请实施例中的业务流可以是细粒度业务流,如,采用五元组(即源IP地址、源端口号、传输协议类型、目的IP地址、目的端口号)或二元组(即源IP地址和目的IP地址)标识的业务流,即,该业务流由具有相同五元组或二元组的报文组成。
[0378] 本申请实施例中的业务流也可以是粗粒度业务流,如,该业务流由满足如下条件中的任意一种或多种的组合的报文组成(即属于该业务流的报文满足如下条件中的任意一种或多种的组合):通过目标传输网络传输、通过目标传输路径传输、通过该首节点的目标端口接收、通过该尾节点传输和优先级为目标优先级。可以理解的是,由于该业务流是由满足上述预设条件的报文组成的,该业务流通常会包括多条细粒度业务流。
[0379] 综上,本申请实施例提供的技术方案既可以用于确定单条细粒度业务流的路径,也可以用于确定粗粒度业务流(即一组细粒度业务流的整体)的路径。
[0380] 当检测一粗粒度业务流(后续称为目标业务流)的路径时,该首节点可以根据该首节点中配置的目标检测指示信息从接收的报文中确定属于该目标业务流的报文,并将该目标业务流作为被监控的业务流。其中,该目标检测指示信息包括以下任意一种或多种的组合:用于传输该目标业务流的传输网络的标识,如虚拟专用网络(virtual private network,VPN)标识;用于传输该目标业务流的传输路径的标识,如隧道标识;该首节点上用于接收该目标业务流的端口的端口号;用于传输该目标业务流的尾节点的标识,如该尾节点的位置(Locator)、该尾节点的网际互连协议(internet protocol,IP)地址、或该尾节点的媒体访问控制(media access control,MAC)地址;该目标业务流的优先级,如差分服务代码点(differentiated services code point,DSCP)优先级、服务类型(type of service,TOS)优先级、或802.1p优先级。
[0381] 图8为本申请提供的一种控制器80的结构示意图,如图8所示,该控制器80包括:
[0382] 获取模块801,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识、所述第一业务流标识和第一字段值,所述N个节点上报的第一信息中的第一字段值沿着所述第一业务流途经所述N个节点的途经顺序按照预设规则变化,所述预设规则包括:递减或者递增;
[0383] 所述获取模块801还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0384] 确定模块802,用于根据所述N个节点上报的第一信息中的第一字段值确定所述第一业务流途经所述N个节点的途经顺序;
[0385] 所述确定模块802还用于:根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0386] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块802具体用于:
[0387] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0388] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0389] 可选的,所述获取模块801具体用于:
[0390] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0391] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0392] 本申请提供的上述控制器,可以执行上述方法实施例一中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0393] 图9为本申请提供的一种网络节点90的结构示意图。如图9所示,该网络节点90包括:
[0394] 获取模块901,用于获取第一业务流的第一业务流标识和第一字段值;
[0395] 处理模块902,用于向控制器上报第一信息,所述第一信息包括所述网络节点的节点标识、所述第一业务流标识和所述第一字段值,所述第一信息用于所述控制器根据所述第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径,其中,所述第一字段值沿着所述途经顺序按照预设规则变化,所述预设规则包括:递减或者递增。
[0396] 可选的,所述处理模块902还用于:
[0397] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0398] 可选的,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口的端口号和/或发送所述第一业务流的端口的端口号。
[0399] 可选的,所述报文头包括扩展头,所述第一字段在所述扩展头内。
[0400] 可选的,所述扩展头具体为IFIT扩展头。
[0401] 可选的,所述处理模块902还用于:
[0402] 在所述第一业务流中插入所述IFIT扩展头。
[0403] 本申请提供的上述网络节点,可以执行上述方法实施例一中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0404] 图10为本申请提供的一种网络节点100的结构示意图。如图10所示,该网络节点100包括:
[0405] 提取模块1001,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0406] 更新模块1002,用于按照预设规则更新所述报文头中的第一字段值,所述预设规则包括:递减或者递增;
[0407] 处理模块1003,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识、所述第一业务流标识和更新后的第一字段值,所述第一信息用于所述控制器根据所述更新后的第一字段值确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0408] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0409] 本申请提供的上述网络节点,可以执行上述方法实施例一中中间节点和尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0410] 图11为本申请提供的一种控制器110的结构示意图。如图11所示,该控制器110包括:
[0411] 获取模块1101,用于获取第一业务流标识对应的第一业务流途经的N个节点上报的第一信息,其中,所述N个节点中每个节点上报的第一信息包括所述节点的节点标识和所述第一业务流标识;
[0412] 所述获取模块1101还用于:从所述N个节点上报的第一信息中获取所述N个节点的节点标识;
[0413] 确定模块1102,用于根据网络物理拓扑确定所述第一业务流途经所述N个节点的途经顺序;
[0414] 所述确定模块1102,还用于根据所述N个节点的节点标识和所述途经顺序确定所述第一业务流的路径。
[0415] 可选的,所述N个节点中每个节点至少包括两个端口,所述N个节点中每个节点上报的第一信息还包括:所述节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;所述确定模块1102,具体用于:
[0416] 从所述N个节点上报的第一信息中获取所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号;
[0417] 根据所述N个节点的节点标识、所述途径顺序以及所述N个节点中每个节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号,确定所述第一业务流的路径。
[0418] 可选的,所述确定模块1102,还用于
[0419] 呈现所述第一业务流的路径。
[0420] 可选的,所述获取模块1101具体用于:
[0421] 接收M个节点上报的第一信息,所述M个节点中的每个节点上报的第一信息包括所述节点的节点标识和途经所述节点的业务流的业务流标识;
[0422] 从所述M个节点上报的第一信息中确定所述第一业务流标识对应的第一业务流途经的所述N个节点上报的第一信息,其中,M大于等于N。
[0423] 可选的,所述N个节点中每个节点上报的第一信息还包括:第一业务性能参数,所述第一业务性能参数包括:所述第一业务流流入所述节点时的业务性能参数和/或流出所述节点时的业务性能参数,所述确定模块1102还用于:
[0424] 呈现所述N个节点中每个节点上报的所述第一业务性能参数。
[0425] 本申请提供的上述控制器,可以执行上述方法实施例二中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0426] 图12为本申请提供的一种网络节点120的结构示意图。如图11所示,该网络节点120包括:
[0427] 获取模块1201,用于获取第一业务流的第一业务流标识;
[0428] 处理模块1202,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0429] 可选的,所述处理模块1202还用于:
[0430] 将所述第一业务流的第一业务流标识填充到所述第一业务流的报文头中。
[0431] 可选的,所述首节点包括至少两个端口,所述首节点向控制器上报的第一信息还包括:所述首节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0432] 可选的,所述报文头包括IFIT扩展头,所述处理模块1202具体用于:
[0433] 将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中。
[0434] 可选的,将所述第一业务流的第一业务流标识填充到所述IFIT扩展头中之前,所述处理模块1202还用于:
[0435] 在所述第一业务流中插入所述IFIT扩展头。
[0436] 本申请提供的上述网络节点,可以执行上述方法实施例二中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0437] 图13为本申请提供的一种网络节点130的结构示意图。如图12所示,该网络节点130包括:
[0438] 提取模块1301,用于提取上一跳节点发送的第一业务流的报文头中的第一业务流标识;
[0439] 处理模块1302,用于向控制器上报第一信息,所述第一信息包括:所述网络节点的节点标识和所述第一业务流标识,所述第一信息用于所述控制器根据网络物理拓扑确定所述第一业务流途经节点的途经顺序,并根据所述节点标识和所述途经顺序确定所述第一业务流的路径。
[0440] 可选的,所述网络节点包括至少两个端口,所述网络节点向控制器上报的第一信息还包括:所述网络节点接收所述第一业务流的端口号和/或发送所述第一业务流的端口号。
[0441] 本申请提供的上述网络节点,可以执行上述方法实施例二中中间节点和尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0442] 图14为本申请提供的一种控制器140的硬件结构示意图。如图14所示,该控制器140包括:存储器1401和处理器1402,存储器1401用于存储程序指令,处理器1402用于调用存储器1401中的程序指令执行上述方法实施例一中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0443] 可选地,上述控制器还包括通信接口1403,该通信接口1403可以通过总线1404与处理器1402连接。处理器1402可以控制通信接口1403来实现控制器140的接收和发送的功能。
[0444] 图15为本申请提供的一种网络节点150的硬件结构示意图。如图15所示,该网络节点150包括:存储器1501和处理器1502,存储器1501用于存储程序指令,处理器1502用于调用存储器1501中的程序指令执行上述方法实施例一中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0445] 可选地,上述控制器还包括通信接口1503,该通信接口1503可以通过总线1504与处理器1502连接。处理器1502可以控制通信接口1503来实现网络节点150的接收和发送的功能。
[0446] 图16为本申请提供的一种网络节点160的硬件结构示意图。如图16所示,该网络节点160包括:存储器1601和处理器1602,存储器1601用于存储程序指令,处理器1602用于调用存储器1601中的程序指令执行上述方法实施例一中中间节点和尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0447] 可选地,上述控制器还包括通信接口1603,该通信接口1603可以通过总线1604与处理器1602连接。处理器1602可以控制通信接口1603来实现网络节点160的接收和发送的功能。
[0448] 图17为本申请提供的一种控制器170的硬件结构示意图。如图17所示,该控制器170包括:存储器1701和处理器1702,存储器1701用于存储程序指令,处理器1702用于调用存储器1701中的程序指令执行上述方法实施例二中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0449] 可选地,上述控制器还包括通信接口1703,该通信接口1703可以通过总线1704与处理器1502连接。处理器1702可以控制通信接口1703来实现控制器170的接收和发送的功能。
[0450] 图18为本申请提供的一种网络节点180的硬件结构示意图。如图18所示,该网络节点180包括:存储器1801和处理器1802,存储器1801用于存储程序指令,处理器1802用于调用存储器1801中的程序指令执行上述方法实施例二中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0451] 可选地,上述控制器还包括通信接口1803,该通信接口1803可以通过总线1804与处理器1802连接。处理器1802可以控制通信接口1803来实现网络节点180的接收和发送的功能。
[0452] 图19为本申请提供的一种网络节点190的硬件结构示意图。如图19所示,该网络节点190包括:存储器1901和处理器1902,存储器1901用于存储程序指令,处理器1902用于调用存储器1901中的程序指令执行上述方法实施例二中中间节点和尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0453] 可选地,上述控制器还包括通信接口1903,该通信接口1903可以通过总线1904与处理器1902连接。处理器1902可以控制通信接口1903来实现网络节点190的接收和发送的功能。
[0454] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,控制器的至少一个处理器执行该执行指令时实现上述方法实施例一中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0455] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,网络节点的至少一个处理器执行该执行指令时实现上述方法实施例一中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0456] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,网络节点的至少一个处理器执行该执行指令时实现上述方法实施例一中中间节点或尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0457] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,控制器的至少一个处理器执行该执行指令时实现上述方法实施例二中控制器所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0458] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,网络节点的至少一个处理器执行该执行指令时实现上述方法实施例二中首节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0459] 本申请还提供一种可读存储介质,可读存储介质中存储有执行指令,网络节点的至少一个处理器执行该执行指令时实现上述方法实施例二中中间节点或尾节点所执行的步骤,其实现原理以及有益效果类似,此处不再进行赘述。
[0460] 在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0461] 作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。
[0462] 另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0463] 上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例方法的部分步骤。
[0464] 应理解,上述处理器可以是中央处理单元(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0465] 存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
[0466] 总线可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheral component,PCI)总线或扩展工业标准体系结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
[0467] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk,SSD)等。