确定路径的方法和装置与流程

文档序号:35340045发布日期:2023-09-07 07:54阅读:21来源:国知局
确定路径的方法和装置与流程

本技术涉及网络,更具体地,涉及一种确定路径的方法和装置。


背景技术:

1、传统的内部网关协议(interior gateway protocol,igp)可以根据链路的开销值和最短路径优先(shortest path first,spf)算法来计算到达目的地址的最短路径。然而,基于链路的开销值的spf算法是固定的,用户无法调整,不便于根据自己的需求计算最优的路径。

2、为了提高算法的灵活性,用户可以定义一个算法值来标识一个固定的算法,即灵活算法(flexible algorithm,flex-algo),基于flex-algo的特性,用户可以自己定制igp算路的算法,igp可以从链路的开销、时延或者流量工程(traffic engineering,te)约束等多种度量规则中选择一种度量规则作为基于flex-algo算路的度量类型(metric type),从而根据度量类型的不同计算满足不同需求的路径。

3、然而,采用上述灵活算法计算出的路径可能存在异常链路,异常链路无法满足业务对高质量链路的需求,可能会导致业务传输异常的情况,这样降低了基于灵活算法计算出的路径的可靠性,从而影响用户的业务体验。


技术实现思路

1、本技术提供一种确定路径的方法和装置,有利于满足不同场景下用户对高质量链路的需求,提高基于灵活算法计算出的路径的可靠性。

2、第一方面,提供了一种确定路径的方法,应用于包括多个节点的网络,包括:多个节点中的第一节点确定链路约束条件,该链路约束条件用于表示基于目标灵活算法传输报文时所需满足的链路约束条件,该链路约束条件包括以下一项或多项:链路故障约束、链路丢包率约束、链路误码率约束、链路抖动率约束或者链路最大传输单元(maximumtransmission unit,mtu)约束。第一节点基于目标灵活算法,确定到达多个节点中的第二节点的至少一条目标路径,该目标路径满足该链路约束条件。

3、在本技术中,第一节点和第二节点为支持灵活算法的节点,目标灵活算法为包括链路约束条件的灵活算法。第一节点在计算到达第二节点的路径时,可以排除不满足链路约束条件的路径,得到满足链路约束条件的目标路径,这样有利于满足业务对链路质量的需求,为业务传输提供可靠的链路支持,提高了路径的可靠性。

4、结合第一方面,在第一方面的某些实现方式中,链路约束条件包括预设阈值,预设阈值包括以下一项或多项:链路故障阈值、链路丢包率阈值、链路误码率阈值、链路抖动率阈值或者链路mtu阈值。第一节点基于目标灵活算法,确定到达多个节点中的第二节点的至少一条目标路径,包括:第一节点从到达第二节点的多条路径中排除包含不满足预设阈值条件的链路的路径,以确定到达多条候选路径,多条候选路径满足该预设阈值条件,该预设阈值条件包括以下一项或多项:链路故障次数小于或者等于所述链路故障阈值;链路丢包率小于或者等于所述链路丢包率阈值;链路误码率小于或者等于所述链路误码率阈值;链路抖动率小于或者等于所述链路抖动率阈值;或者,链路mtu大于或者等于所述链路mtu阈值。

5、在本技术中,链路约束条件可以用预设阈值来表示,第一节点在算路时可以排除不满足预设阈值条件的路径,进而从剩余的路径中可以确定目标路径。这样通过比较预设阈值的方式便于第一节点快速排除不满足条件的阈值,得到满足业务需求的目标路径。

6、结合第一方面,在第一方面的某些实现方式中,第一节点基于目标灵活算法,确定到达多个节点中的第二节点的至少一条目标路径,还包括:第一节点基于目标灵活算法的度量类型,从多条候选路径中确定至少一条目标路径。

7、在本技术中,第一节点可以从满足链路约束条件的多条候选路径中基于度量类型确定至少一条目标路径,这样可以进一步满足业务对度量类型的需求,例如,满足业务的时延需求、开销需求等。

8、结合第一方面,在第一方面的某些实现方式中,多个节点中的第一节点确定链路约束条件,包括:第一节点接收来自网络中的其他节点的第一报文,该第一报文包括该链路约束条件。

9、在本技术中,第一节点未知链路约束条件,但网络中其他已知该链路约束条件的节点可以向该第一节点发送第一报文,以通告第一节点该链路约束条件。

10、结合第一方面,在第一方面的某些实现方式中,第一报文还包括目标灵活算法的灵活算法定义(flexible algorithm definition,fad)信息,fad信息包括以下一项或多项:灵活算法的标识、计算类型的标识或度量类型的标识。

11、结合第一方面,在第一方面的某些实现方式中,第一报文的fad类型长度值(type-length-value,tlv)的第一子tlv(sub tlv)字段包括链路约束条件。

12、在本技术中,链路约束条件可以携带在灵活算法的fad信息中进行全网通告。具体地,可以通过第一报文的fad tlv的第一子tlv字段携带该链路约束条件,这样便于第一节点对该字段进行解析以获取链路约束条件。

13、结合第一方面,在第一方面的某些实现方式中,计算类型的标识包括spf算法的标识或严格spf算法的标识。

14、结合第一方面,在第一方面的某些实现方式中,度量类型的标识包括以下一项或多项:链路时延规则的标识、内部网关协议igp开销规则的标识、te规则的标识或链路带宽规则的标识。

15、结合第一方面,在第一方面的某些实现方式中,第一报文为中间系统到中间系统(intermediate system to intermediate system,isis)报文或开放最短路径优先(openshortest path first,ospf)报文。

16、结合第一方面,在第一方面的某些实现方式中,在第一节点基于目标灵活算法,确定到达多个节点中的第二节点的至少一条目标路径之前,该方法还包括:第一节点接收来自第一节点的邻居节点的第二报文,该第二报文中携带多个节点中相邻节点之间的链路状态,该链路状态包括链路故障次数、链路丢包率、链路误码率、链路抖动率或者链路mtu。第一节点基于目标灵活算法,确定到达多个节点中的第二节点的至少一条目标路径,包括:第一节点基于目标灵活算法和多个节点中相邻节点之间的链路状态,确定到达第二节点的至少一条目标路径。

17、在本技术中,第一节点可以通过第二报文获取网络中所有链路的链路状态,这样第一节点在算路时可以将链路状态与链路约束条件进行比较,从而排除不满足链路约束条件的路径。

18、结合第一方面,在第一方面的某些实现方式中,第二报文的第二子tlv字段包括链路状态。

19、结合第一方面,在第一方面的某些实现方式中,第二报文为isis报文或ospf报文。

20、结合第一方面,在第一方面的某些实现方式中,该方法还包括:第一节点接收来自第一节点的邻居节点的第三报文,第三报文携带多个节点中相邻节点之间更新后的链路状态。若基于更新后的链路状态确定该至少一条目标路径不满足链路约束条件,第一节点重新基于目标灵活算法和更新后的链路状态,确定到达第二节点的至少一条新路径,该至少一条新路径满足链路约束条件。

21、在本技术中,由于网络中的链路状态是动态变化的,第一节点在之后收集链路状态的周期内,可能收集到的目标路径上某条链路的链路状态无法满足链路约束条件,因此第一节点需要重新算路,这样有利于持续为业务提供可靠的传输路径。

22、结合第一方面,在第一方面的某些实现方式中,第一节点和第二节点处于同一个路由协议的不同进程,该路由协议包括isis或ospf。

23、在本技术中,链路约束条件可以随着fad信息在不同的进程之间传输,这样有利于处于不同进程中的网络节点获取链路约束条件,实现跨域传输。

24、第二方面,提供了一种确定路径的方法,应用于包括多个节点的网络,包括:多个节点中的第三节点确定链路约束条件,该链路约束条件用于表示基于目标灵活算法传输报文时所需满足的链路约束条件,该链路约束条件包括链路故障约束、链路丢包率约束、链路误码率约束、链路抖动率约束或者链路mtu约束。第三节点向网络中的其他节点发送该链路约束条件。

25、在本技术中,上述第一节点也可以与该第三节点为同一个节点,即第一节点可以作为发送端执行与第三节点类似的步骤,向网络中的其他节点发送该链路约束条件。

26、结合第二方面,在第二方面的某些实现方式中,第三节点向网络中的其他节点发送链路约束条件,包括:第三节点向网络中的其他节点发送第一报文,该第一报文包括该链路约束条件。

27、结合第二方面,在第二方面的某些实现方式中,第一报文还包括目标灵活算法的灵活算法定义fad,fad包括以下一项或多项:灵活算法的标识、计算类型的标识或度量类型的标识。

28、结合第二方面,在第二方面的某些实现方式中,第一报文的fad tlv的第一子tlv字段包括该链路约束条件。

29、结合第二方面,在第二方面的某些实现方式中,第一报文为中间系统到中间系统isis报文或开放最短路径优先ospf报文。

30、第三方面,提供了一种确定路径的方法,应用于包括多个节点的网络,包括:多个节点中的第一节点接收链路约束条件,该链路约束条件用于表示基于目标灵活算法传输报文时所需满足的链路约束条件,该链路约束条件包括以下一项或多项:链路故障约束、链路丢包率约束、链路误码率约束、链路抖动率约束或者链路mtu约束。第一节点基于该链路约束条件,确定到达多个节点中的第二节点的至少一条目标路径,该目标路径满足该链路约束条件。

31、结合第三方面,在第三方面的某些实现方式中,第一节点接收第一报文,该第一报文包括该链路约束条件。

32、结合第三方面,在第三方面的某些实现方式中,第一报文还包括所述目标灵活算法的灵活算法定义fad,所述fad包括以下一项或多项:灵活算法的标识、计算类型的标识或度量类型的标识。

33、结合第三方面,在第三方面的某些实现方式中,第一报文的fad类型长度值tlv的第一子tlv字段包括所述链路约束条件。

34、结合第三方面,在第三方面的某些实现方式中,第一报文为isis报文或ospf报文。

35、第四方面,提供了一种确定路径的装置,包括:获取模块和处理模块。其中,获取模块用于:获取链路约束条件,该链路约束条件用于表示基于目标灵活算法传输报文时所需满足的链路约束条件,该链路约束条件包括以下一项或多项:链路故障约束、链路丢包率约束、链路误码率约束、链路抖动率约束或者链路最大传输单元mtu约束。处理模块用于:确定链路约束条件;以及,基于目标灵活算法确定到达多个节点中的第二节点的至少一条目标路径,该目标路径满足链路约束条件。

36、结合第四方面,在第四方面的某些实现方式中,链路约束条件包括预设阈值,该预设阈值包括以下一项或多项:链路故障阈值、链路丢包率阈值、链路误码率阈值、链路抖动率阈值或者链路mtu阈值。处理模块用于:从到达第二节点的多条路径中排除包含不满足预设阈值条件的链路的路径,以确定多条候选路径,该多条候选路径满足预设阈值条件,该预设阈值条件包括以下一项或多项:链路故障次数小于或者等于链路故障阈值;链路丢包率小于或者等于链路丢包率阈值;链路误码率小于或者等于链路误码率阈值;链路抖动率小于或者等于链路抖动率阈值;或者,链路mtu大于或者等于链路mtu阈值。

37、结合第四方面,在第四方面的某些实现方式中,处理模块用于:基于目标灵活算法的度量类型,从多条候选路径中确定至少一条目标路径。

38、结合第四方面,在第四方面的某些实现方式中,获取模块用于:接收来自网络中的其他节点的第一报文,该第一报文包括链路约束条件。

39、结合第四方面,在第四方面的某些实现方式中,第一报文还包括目标灵活算法的fad,fad包括以下一项或多项:灵活算法的标识、计算类型的标识或度量类型的标识。

40、结合第四方面,在第四方面的某些实现方式中,第一报文的fad tlv的第一子tlv字段包括链路约束条件。

41、结合第四方面,在第四方面的某些实现方式中,计算类型的标识包括spf算法的标识或严格spf算法的标识。

42、结合第四方面,在第四方面的某些实现方式中,度量类型的标识包括以下一项或多项:链路时延规则的标识、igp开销规则的标识、te规则的标识或链路带宽规则的标识。

43、结合第四方面,在第四方面的某些实现方式中,第一报文为isis报文或ospf报文。

44、结合第四方面,在第四方面的某些实现方式中,获取模块用于:接收来自邻居节点的第二报文,该第二报文中携带多个节点中相邻节点之间的链路状态,该链路状态包括链路故障次数、链路丢包率、链路误码率、链路抖动率或者链路mtu。处理模块用于:基于目标灵活算法和多个节点中相邻节点之间的链路状态,确定到达第二节点的至少一条目标路径。

45、结合第四方面,在第四方面的某些实现方式中,第二报文的第二子tlv字段包括该链路状态。

46、结合第四方面,在第四方面的某些实现方式中,第二报文为isis报文或ospf报文。

47、结合第四方面,在第四方面的某些实现方式中,获取模块用于:接收来自邻居节点的第三报文,该第三报文携带多个节点中相邻节点之间更新后的链路状态。处理模块用于:若基于更新后的链路状态确定该至少一条目标路径不满足链路约束条件,重新基于目标灵活算法和更新后的链路状态,确定到达第二节点的至少一条新路径,该至少一条新路径满足链路约束条件。

48、结合第四方面,在第四方面的某些实现方式中,第一节点和第二节点处于同一个路由协议的不同进程,该路由协议包括isis或ospf。

49、第五方面,提供了一种确定路径的装置,包括:处理模块和收发模块。其中,处理模块用于:确定链路约束条件,所述链路约束条件用于表示基于目标灵活算法传输报文时所需满足的链路约束条件,所述链路约束条件包括链路故障约束、链路丢包率约束、链路误码率约束、链路抖动率约束或者链路mtu约束。收发模块用于:向所述网络中的其他节点发送链路约束条件。

50、结合第五方面,在第五方面的某些实现方式中,向所述网络中的其他节点发送第一报文,该第一报文包括链路约束条件。

51、结合第五方面,在第五方面的某些实现方式中,第一报文还包括目标灵活算法的fad,fad包括以下一项或多项:灵活算法的标识、计算类型的标识或度量类型的标识。

52、结合第五方面,在第五方面的某些实现方式中,第一报文的fad tlv的第一子tlv字段包括链路约束条件。

53、结合第五方面,在第五方面的某些实现方式中,第一报文为中间系统到中间系统isis报文或开放最短路径优先ospf报文。

54、第六方面,提供了再一种确定路径的装置,包括处理器,该处理器与存储器耦合,可用于执行存储器中的指令,以实现上述任一方面中任一种可能实现方式中的方法。可选地,该装置还包括存储器。可选地,该装置还包括通信接口,处理器与通信接口耦合。

55、在一种实现方式中,该确定路径的装置为路由设备,当该确定路径的装置为路由设备时,通信接口可以是收发器,或,输入/输出接口。

56、在另一种实现方式中,该确定路径装置为配置于路由设备中的芯片。当确定路径的装置为配置于路由设备中的芯片时,通信接口可以是输入/输出接口。

57、第七方面,提供了一种处理器,包括:输入电路、输出电路和处理电路。处理电路用于通过输入电路接收信号,并通过输出电路发射信号,使得处理器执行上述任一方面中任一种可能实现方式中的方法。

58、在具体实现过程中,上述处理器可以为芯片,输入电路可以为输入管脚,输出电路可以为输出管脚,处理电路可以为晶体管、门电路、触发器和各种逻辑电路等。输入电路所接收的输入的信号可以是由例如但不限于接收器接收并输入的,输出电路所输出的信号可以是例如但不限于输出给发射器并由发射器发射的,且输入电路和输出电路可以是同一电路,该电路在不同的时刻分别用作输入电路和输出电路。本技术对处理器及各种电路的具体实现方式不做限定。

59、第八方面,提供了一种处理装置,包括处理器和存储器。该处理器用于读取存储器中存储的指令,并可通过接收器接收信号,通过发射器发射信号,以执行上述任一方面中任一种可能实现方式中的方法。

60、可选地,处理器为一个或多个,存储器为一个或多个。

61、可选地,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。

62、在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,rom),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本技术对存储器的类型以及存储器与处理器的设置方式不做限定。

63、应理解,相关的数据交互过程例如发送指示信息可以为从处理器输出指示信息的过程,接收能力信息可以为处理器接收输入能力信息的过程。具体地,处理输出的数据可以输出给发射器,处理器接收的输入数据可以来自接收器。其中,发射器和接收器可以统称为收发器。

64、上述第八方面中的处理装置可以是一个芯片,该处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现,该存储器可以集成在处理器中,可以位于该处理器之外,独立存在。

65、第九方面,提供了一种确定路径的系统,该系统包括第一节点和第三节点,该第一节点执行上述第一方面或第三方面中任一种可能实现方式中的方法,该第三节点执行上述第二方面任一种可能实现方式中的方法。

66、第十方面,提供了一种计算机程序产品,计算机程序产品包括:计算机程序代码,当该计算机程序代码被运行时,使得计算机执行上述任一方面中任一种可能实现方式中的方法。

67、第十一方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,当该计算机程序被运行时,使得计算机执行上述任一方面中任一种可能实现方式中的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1