路径创建方法、装置及系统转让专利

申请号 : CN202010589773.3

文献号 : CN113839870B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 胡志波徐菊华鲍磊张卡陈新隽

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

摘要 :

本申请公开了路径创建方法、装置及系统,方法包括:第一网络设备获取用于指示路径的尾节点的目的地址、到达目的地址的路径对应的带宽和路径标识;第一网络设备向第二网络设备发送第一报文,该第一报文包括到达目的地址的路径对应的带宽、路径标识和目的地址,该第一报文用于指示第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,该第一报文包括IGP报文或BGP报文,该第二网络设备包括路径经过的网络设备或者尾节点。通过采用IGP协议或BGP协议由网络设备来动态创建路径信息并预留资源,创建路径的方式更为灵活,可靠性更高。

权利要求 :

1.一种路径创建方法,其特征在于,所述方法包括:

第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识,所述目的地址用于指示所述路径的尾节点;

所述第一网络设备向第二网络设备发送第一报文,所述第一报文包括所述带宽、所述路径标识和所述目的地址,所述第一报文用于指示所述第二网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第一报文包括内部网关协议IGP报文或边界网关协议BGP报文,所述第二网络设备包括所述路径经过的网络设备或者尾节点。

2.根据权利要求1所述的方法,其特征在于,所述路径标识包括:灵活以太FlexE标识、切片标识或段路由路径标识。

3.根据权利要求1或2所述的方法,其特征在于,所述第一报文的类型包括IGP 问候Hello报文或BGP 保活Keep alive报文。

4.根据权利要求3所述的方法,其特征在于,所述第一报文的类型包括IGP Hello报文,所述第一报文的可变VARIABLE域包括扩展的TLV,所述扩展的TLV用于携带所述目的地址、所述带宽和所述路径标识。

5.根据权利要求1‑2、4任一项所述的方法,其特征在于,所述第一报文还包括路径列表,所述路径列表包括所述路径经过的至少一台网络设备的标识,所述至少一台网络设备的设备标识包括所述第二网络设备的标识。

6.根据权利要求3所述的方法,其特征在于,所述第一报文还包括路径列表,所述路径列表包括所述路径经过的至少一台网络设备的标识,所述至少一台网络设备的设备标识包括所述第二网络设备的标识。

7.根据权利要求5所述的方法,其特征在于,所述路径列表为所述第一网络设备根据所述目的地址计算的目标路径。

8.根据权利要求6所述的方法,其特征在于,所述路径列表为所述第一网络设备根据所述目的地址计算的目标路径。

9.根据权利要求5所述的方法,其特征在于,所述方法还包括:

响应于所述路径故障,重新进行路径计算,得到更新路径列表,所述更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,所述更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;

向所述第三网络设备发送第二报文,所述第二报文中携带所述目的地址、所述带宽、所述路径标识和所述更新路径列表,所述第二报文的类型与所述第一报文的类型一致。

10.根据权利要求6‑8任一项所述的方法,其特征在于,所述方法还包括:

响应于所述路径故障,重新进行路径计算,得到更新路径列表,所述更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,所述更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;

向所述第三网络设备发送第二报文,所述第二报文中携带所述目的地址、所述带宽、所述路径标识和所述更新路径列表,所述第二报文的类型与所述第一报文的类型一致。

11.根据权利要求1‑2、4、6‑9任一项所述的方法,其特征在于,所述方法还包括:接收所述第二网络设备发送的第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

12.根据权利要求3所述的方法,其特征在于,所述方法还包括:

接收所述第二网络设备发送的第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

13.根据权利要求5所述的方法,其特征在于,所述方法还包括:

接收所述第二网络设备发送的第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

14.根据权利要求10所述的方法,其特征在于,所述方法,还包括:

接收所述第二网络设备发送的第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

15.根据权利要求11所述的方法,其特征在于,所述第三报文还包括段路径标识,所述段路径标识包括所述第二网络设备为所述路径分配的本地标识。

16.根据权利要求12‑14任一项所述的方法,其特征在于,所述第三报文还包括段路径标识,所述段路径标识包括所述第二网络设备为所述路径分配的本地标识。

17.根据权利要求1‑2、4、6‑9、12‑15任一项所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

18.根据权利要求3所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

19.根据权利要求5所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

20.根据权利要求10所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

21.根据权利要求11项所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

22.根据权利要求16所述的方法,其特征在于,所述第一网络设备获取目的地址、到达所述目的地址的路径对应的带宽和路径标识之后,还包括:所述第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:

所述第一网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第一网络设备在所述第一出接口预留所述带宽资源。

23.根据权利要求1‑2、4、6‑9、12‑15、18‑22任一项所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

24.根据权利要求3所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

25.根据权利要求5所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

26.根据权利要求10所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

27.根据权利要求11所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

28.根据权利要求16所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

29.根据权利要求17所述的方法,其特征在于,所述第一报文还用于指示所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第四网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第四网络设备包括所述路径经过的网络设备。

30.根据权利要求1‑2、4、6‑9、12‑15、18‑22、24‑29任一项所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

31.根据权利要求3所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

32.根据权利要求5所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

33.根据权利要求10所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

34.根据权利要求11所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

35.根据权利要求16所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

36.根据权利要求17所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

37.根据权利要求23所述的方法,其特征在于,所述第一报文还包括源地址,所述源地址用于指示所述路径的头节点,所述源地址用于指示所述第二网络设备向所述头节点发送路径是否创建成功的报文。

38.一种路径创建方法,其特征在于,所述方法包括:

第二网络设备接收第一网络设备发送的第一报文,所述第一报文包括目的地址、到达所述目的地址的路径对应的带宽和路径标识,所述目的地址用于指示所述路径的尾节点;

所述第二网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第一报文包括内部网关协议IGP报文或边界网关协议BGP报文,所述第二网络设备包括所述路径经过的网络设备或者尾节点。

39.根据权利要求38所述的方法,其特征在于,所述第一报文还包括路径列表,所述路径列表包括所述路径经过的至少一台网络设备的标识,所述至少一台网络设备的设备标识包括所述第二网络设备的标识。

40.根据权利要求39所述的方法,其特征在于,所述接收第一网络设备发送的第一报文之后,还包括:接收所述第一网络设备发送的第二报文,所述第二报文中携带所述目的地址、所述带宽、所述路径标识和更新路径列表,所述更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,所述更新后的路径所经过的至少一台网络设备的设备标识包括所述第二网络设备的标识,所述第二报文的类型与所述第一报文的类型一致;

根据所述带宽和所述路径标识创建路径信息并预留对应的资源。

41.根据权利要求38‑40任一项所述的方法,其特征在于,所述根据所述带宽和所述路径标识预留对应的资源之后,还包括:向所述第一网络设备发送第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

42.根据权利要求41所述的方法,其特征在于,所述第三报文还包括段路径标识,所述段路径标识包括所述第二网络设备为所述路径分配的本地标识。

43.根据权利要求38‑40、42任一项所述的方法,其特征在于,所述根据所述带宽和所述路径标识预留对应的资源,包括:所述第二网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第二网络设备在所述第一出接口预留所述带宽资源。

44.根据权利要求41所述的方法,其特征在于,所述根据所述带宽和所述路径标识预留对应的资源,包括:所述第二网络设备根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;

所述第二网络设备在所述第一出接口预留所述带宽资源。

45.根据权利要求38‑40、42、44任一项所述的方法,其特征在于,所述接收第一网络设备发送的第一报文之后,还包括:所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

46.根据权利要求41所述的方法,其特征在于,所述接收第一网络设备发送的第一报文之后,还包括:所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

47.根据权利要求43所述的方法,其特征在于,所述接收第一网络设备发送的第一报文之后,还包括:所述第二网络设备向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

48.一种路径创建装置,其特征在于,所述装置包括:

处理单元,用于获取目的地址、到达所述目的地址的路径对应的带宽和路径标识,所述目的地址用于指示所述路径的尾节点;

发送单元,用于向第二网络设备发送第一报文,所述第一报文包括所述带宽、所述路径标识和所述目的地址,所述第一报文用于指示所述第二网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第一报文包括内部网关协议IGP报文或边界网关协议BGP报文,所述第二网络设备包括所述路径经过的网络设备或者尾节点。

49.根据权利要求48所述的装置,其特征在于,所述处理单元,还用于响应于所述路径故障,重新进行路径计算,得到更新路径列表,所述更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,所述更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;

所述发送单元,还用于向所述第三网络设备发送第二报文,所述第二报文中携带所述目的地址、所述带宽、所述路径标识和所述更新路径列表,所述第二报文的类型与所述第一报文的类型一致。

50.根据权利要求48或49所述的装置,其特征在于,所述装置还包括:

第一接收单元,用于接收第二网络设备发送的第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文包括所述路径标识,所述第三报文用于指示所述路径信息创建成功。

51.根据权利要求48或49所述的装置,其特征在于,所述装置还包括:

第二接收单元,用于接收第二网络设备发送的第四报文,所述第四报文用于指示所述路径信息创建失败,所述第四报文的类型与所述第一报文的类型一致。

52.根据权利要求48或49所述的装置,其特征在于,所述处理单元,还用于第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

53.根据权利要求50所述的装置,其特征在于,所述处理单元,还用于第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

54.根据权利要求51所述的装置,其特征在于,所述处理单元,还用于第一网络设备根据所述带宽和所述路径标识预留对应的资源,包括:根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

55.一种路径创建装置,其特征在于,所述装置包括:

接收单元,用于接收第一网络设备发送的第一报文,所述第一报文包括目的地址、到达所述目的地址的路径对应的带宽和路径标识,所述目的地址用于指示所述路径的尾节点;

处理单元,用于根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第一报文包括内部网关协议IGP报文或边界网关协议BGP报文,第二网络设备包括所述路径经过的网络设备或者尾节点。

56.根据权利要求55所述的装置,其特征在于,所述接收单元,还用于接收所述第一网络设备发送的第二报文,所述第二报文中携带所述目的地址、所述带宽、所述路径标识和更新路径列表,所述更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,所述更新后的路径所经过的至少一台网络设备的设备标识包括所述第二网络设备的标识,所述第二报文的类型与所述第一报文的类型一致;

所述处理单元,还用于根据所述带宽和所述路径标识预留对应的资源。

57.根据权利要求55或56所述的装置,其特征在于,所述装置还包括:

第一发送单元,用于向所述第一网络设备发送第三报文,所述第三报文为所述第一报文的响应报文,所述第三报文用于指示所述路径信息创建成功;

所述第三报文包括段路径标识,所述段路径标识包括所述第二网络设备为所述路径分配的本地标识。

58.根据权利要求55或56所述的装置,其特征在于,所述装置还包括:

第二发送单元,用于向所述第一网络设备发送第四报文,所述第四报文用于指示所述路径信息创建失败,所述第四报文的类型与所述第一报文的类型一致。

59.根据权利要求55或56所述的装置,其特征在于,所述处理单元,用于根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

60.根据权利要求57所述的装置,其特征在于,所述处理单元,用于根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

61.根据权利要求58所述的装置,其特征在于,所述处理单元,用于根据所述带宽确定第一出接口,所述第一出接口满足所述带宽的要求;在所述第一出接口预留所述带宽资源。

62.根据权利要求55‑56、60‑61任一项所述的装置,其特征在于,所述装置还包括:第三发送单元,用于向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

63.根据权利要求57所述的装置,其特征在于,所述装置还包括:

第三发送单元,用于向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

64.根据权利要求58所述的装置,其特征在于,所述装置还包括:

第三发送单元,用于向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

65.根据权利要求59所述的装置,其特征在于,所述装置还包括:

第三发送单元,用于向所述目的地址发送与所述第一报文对应的第五报文,所述第五报文包括所述带宽、所述路径标识和所述目的地址,所述第五报文用于指示第三网络设备根据所述带宽和所述路径标识创建路径信息并预留对应的资源,所述第三网络设备包括所述路径经过的网络设备。

66.一种路径创建系统,其特征在于,所述系统包括第一网络设备和第二网络设备,所述第一网络设备包括如上述权利要求48‑54任一项所述的装置,所述第二网络设备包括如上述权利要求55‑65任一项所述的装置。

说明书 :

路径创建方法、装置及系统

技术领域

[0001] 本申请涉及通信技术领域,尤其涉及路径创建方法、装置及系统。

背景技术

[0002] 随着网络的发展,对移动承载带宽提出了更高的需求,对电信网络接口也提出了更高的要求。由于灵活以太(flexible ethernet,FlexE)技术通过FlexE接口之间完全隔离互不影响,能够实现流量在物理层隔离,业务在同一张物理网络上进行网络分片。因此,FlexE结合网路分片能够实现资源隔离和高速传输,而如何创建路径成了亟待解决的问题。
[0003] 现有技术中,由控制器进行路径计算。之后,控制器将计算好的路径通过配置的方式下发到转发器,从而实现路径的创建。
[0004] 然而,由于是通过控制器进行路径计算并以静态配置的方式进行下发,因而该种路径创建的方式较为复杂,且可靠性不高。

发明内容

[0005] 本申请提供了一种路径创建方法、装置及系统,以解决相关技术提供的问题,技术方案如下:
[0006] 第一方面,提供了一种路径创建方法,以第一网络设备执行该方法为例,该方法包括:第一网络设备获取目的地址、到达目的地址的路径对应的带宽和路径标识,该目的地址用于指示路径的尾节点;第一网络设备向第二网络设备发送第一报文,该第一报文包括到达目的地址的路径对应的带宽、路径标识和目的地址,该第一报文用于指示第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,该第一报文包括内部网关协议(interior gateway protocol,IGP)报文或边界网关协议(border gateway protocol,BGP)报文,该第二网络设备包括路径经过的网络设备或者尾节点。
[0007] 通过采用IGP协议或BGP协议由网络设备来动态创建路径,与控制器来创建路径并静态配置的方式相比,创建路径的方式更为灵活,可靠性更高。
[0008] 在一种可能的实现方式中,该路径标识包括:灵活以太FlexE标识、切片标识或段路由路径标识。
[0009] 通过对多种路径标识、多种路径的支持,可以进一步提高本技术方案可用性。
[0010] 在一种可能的实现方式中,该第一报文的类型包括IGP问候(Hello)报文或BGP保活(Keep alive)报文。
[0011] 在一种可能的实现方式中,该第一报文的类型包括IGP Hello报文,所述第一报文的可变VARIABLE域包括扩展的TLV,所述扩展的TLV用于携带所述目的地址、所述带宽和所述路径标识。
[0012] 通过采用IGP hello报文或者BGP keep alive报文,可以最大可能已有方案架构,提高本技术方案的可用性。
[0013] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。
[0014] 在一种可能的实现方式中,路径列表为第一网络设备根据目的地址计算的目标路径。
[0015] 通过在第一报文中携带路径列表,可以使得第一报文按照路径列表指示的路径进行传播,并使得路径列表中的设备能够根据路径标识、带宽等为该路径创建对应的路径信息以及预留对应的带宽等。
[0016] 在一种可能的实现方式中,方法还包括:响应于路径故障,重新进行路径计算,得到更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;向第三网络设备发送第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,第二报文的类型与第一报文的类型一致。
[0017] 由于在路径故障时,可及时收敛,进一步提高了创建路径的可靠性。
[0018] 在一种可能的实现方式中,方法还包括:接收第二网络设备发送的第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功;第三报文包括路径标识。
[0019] 在一种可能的实现方式中,第三报文还包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0020] 通过接收响应于创建路径的第一报文的第三报文,则第一网络设备可知该路径创建成功。
[0021] 在一种可能的实现方式中,方法还包括:接收第二网络设备发送的第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0022] 通过接收响应于创建路径的第一报文的第四报文,则第一网络设备可知该路径创建失败,进一步可以重新计算路径从而确保能够创建对应的路径,提高网络的可靠性和可用性。
[0023] 在一种可能的实现方式中,第一网络设备获取目的地址、到达目的地址的路径对应的带宽和路径标识之后,还包括:第一网络设备根据带宽和路径标识预留对应的资源,包括:第一网络设备根据带宽确定第一出接口,第一出接口满足带宽的要求;第一网络设备在第一出接口预留带宽资源。
[0024] 当第一网络设备与第二网络设备之间存在多个接口,但是每个接口的带宽不一致的情况下,则第一网络设备可以确定满足带宽需求的接口,并在该接口上为该路径预留资源。提高该网络的可用性。
[0025] 在一种可能的实现方式中,第一报文还用于指示第二网络设备向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第四网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第四网络设备包括路径经过的网络设备。
[0026] 在一种可能的实现方式中,第一报文还包括源地址,源地址用于指示路径的头节点,该源地址用于指示第二网络设备向头节点发送路径是否创建成功的报文。
[0027] 通过在第一报文中携带用于指示路径的头节点的源地址的方式,使得该路径上的网络设备可以向头节点发送路径是否创建功能的消息。
[0028] 第二方面,提供了一种路径创建方法,以第二网络设备执行该方法为例,该方法包括:第二网络设备接收第一网络设备发送的第一报文,第一报文包括目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点;第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括IGP报文或BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。
[0029] 接收到采用IGP协议或BGP协议的第一报文后,根据该第一报文中的带宽和路径标识创建路径信息并预留对应的资源,与控制器来创建路径并静态配置的方式相比,创建路径的方式更为灵活,可靠性更高。
[0030] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。通过在第一报文中携带路径列表,使得第一报文按照路径列表指示的路径进行传播,从而使得第二网络设备能够根据路径标识、带宽等为该路径创建对应的路径信息以及预留对应的带宽等。
[0031] 在一种可能的实现方式中,接收第一网络设备发送的第一报文之后,还包括:接收第一网络设备发送的第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第二网络设备的标识,第二报文的类型与第一报文的类型一致;根据带宽和路径标识创建路径信息并预留对应的资源。
[0032] 在一种可能的实现方式中,根据带宽和路径标识预留对应的资源之后,还包括:向第一网络设备发送第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功;第三报文包括路径标识。
[0033] 在一种可能的实现方式中,第三报文还包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0034] 通过在预留对应的资源之后向第一网络设备发送响应于创建路径的第一报文的第三报文,使得第一网络设备可知该路径创建成功。
[0035] 在一种可能的实现方式中,接收第一网络设备发送的第一报文之后,还包括:向第一网络设备发送第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0036] 通过向第一网络设备发送响应于创建路径的第一报文的第四报文,使得第一网络设备可知该路径创建失败,进一步可以重新计算路径从而确保能够创建对应的路径,提高网络的可靠性和可用性。
[0037] 在一种可能的实现方式中,根据带宽和路径标识预留对应的资源,包括:第二网络设备根据带宽确定第一出接口,第一出接口满足带宽的要求;第二网络设备在第一出接口预留带宽资源。
[0038] 当第一网络设备与第二网络设备之间存在多个接口,但是每个接口的带宽不一致的情况下,则第二网络设备可以确定满足带宽需求的接口,并在该接口上为该路径预留资源,提高该网络的可用性。
[0039] 在一种可能的实现方式中,接收第一网络设备发送的第一报文之后,还包括:第二网络设备向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第三网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第三网络设备包括路径经过的网络设备。
[0040] 第三方面,提供了一种路径创建装置,该装置包括:
[0041] 处理单元,用于获取目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点;
[0042] 发送单元,用于向第二网络设备发送第一报文,第一报文包括带宽、路径标识和目的地址,第一报文用于指示第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括IGP报文或BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。
[0043] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。
[0044] 在一种可能的实现方式中,路径列表为第一网络设备根据目的地址计算的目标路径。
[0045] 在一种可能的实现方式中,处理单元,还用于响应于路径故障,重新进行路径计算,得到更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;
[0046] 发送单元,还用于向第三网络设备发送第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,第二报文的类型与第一报文的类型一致。
[0047] 在一种可能的实现方式中,装置还包括:
[0048] 第一接收单元,用于接收第二网络设备发送的第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功,第三报文包括路径标识。
[0049] 第三报文还包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0050] 在一种可能的实现方式中,装置还包括:
[0051] 第二接收单元,用于接收第二网络设备发送的第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0052] 在一种可能的实现方式中,处理单元,还用于第一网络设备根据带宽和路径标识预留对应的资源,包括:根据带宽确定第一出接口,第一出接口满足带宽的要求;在第一出接口预留带宽资源。
[0053] 在一种可能的实现方式中,第一报文还用于指示第二网络设备向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第四网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第四网络设备包括路径经过的网络设备。
[0054] 在一种可能的实现方式中,第一报文还包括源地址,源地址用于指示路径的头节点,该源地址用于指示第二网络设备向头节点发送路径是否创建成功的报文。
[0055] 第四方面,提供了一种路径创建装置,该装置包括:
[0056] 接收单元,用于接收第一网络设备发送的第一报文,第一报文包括目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点;
[0057] 处理单元,用于根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括IGP报文或BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。
[0058] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。
[0059] 在一种可能的实现方式中,接收单元,还用于接收第一网络设备发送的第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第二网络设备的标识,第二报文的类型与第一报文的类型一致;
[0060] 处理单元,还用于根据带宽和路径标识预留对应的资源。
[0061] 在一种可能的实现方式中,装置还包括:
[0062] 第一发送单元,用于向第一网络设备发送第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功,第三报文包括路径标识;
[0063] 第三报文包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0064] 在一种可能的实现方式中,装置还包括:
[0065] 第二发送单元,用于向第一网络设备发送第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0066] 在一种可能的实现方式中,处理单元,用于根据带宽确定第一出接口,第一出接口满足带宽的要求;在第一出接口预留带宽资源。
[0067] 在一种可能的实现方式中,装置还包括:
[0068] 第三发送单元,用于向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第三网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第三网络设备包括路径经过的网络设备。
[0069] 在第一方面至第四方面中的任一方面的一种可能的实现方式中,路径标识包括:FlexE标识、切片标识或段路由路径标识。
[0070] 在第一方面至第四方面中的任一方面的一种可能的实现方式中,第一报文的类型包括IGP Hello报文或BGP保活(Keep alive)报文。
[0071] 在第一方面至第四方面中的任一方面的一种可能的实现方式中,第一报文的类型包括IGP Hello报文,第一报文的可变VARIABLE域包括扩展的类型长度值(type length value,TLV),扩展的TLV用于携带目的地址、带宽和路径标识。
[0072] 还提供一种路径创建设备,该设备包括:存储器及处理器,存储器中存储有至少一条指令,至少一条指令由处理器加载并执行,以实现上述第一方面任一所述的路径创建方法。
[0073] 还提供一种路径创建设备,该设备包括:存储器及处理器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现上述第二方面任一所述的路径创建方法。
[0074] 还提供了一种路径创建系统,该系统包括第一网络设备和第二网络设备,第一网络设备用于执行上述第一方面任一项所述的路径创建方法,第二网络设备用于执行上述第二方面任一项所述的路径创建方法。
[0075] 还提供了一种路径创建系统,该系统包括第一网络设备和第二网络设备,第一网络设备包括如上述第三方面任一项所述的装置,第二网络设备包括如上述第四方面任一项所述的装置。
[0076] 还提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上第一方面或第二方面任一所述的路径创建方法。
[0077] 提供了另一种通信装置,该装置包括:收发器、存储器和处理器。其中,该收发器、该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,以控制收发器接收信号,并控制收发器发送信号,并且当该处理器执行该存储器存储的指令时,使得该处理器执行第一方面或第一方面的任一种可能的实施方式中的方法,或者,使得该处理器执行第二方面或第二方面的任一种可能的实施方式中的方法。
[0078] 作为一种示例性实施例,所述处理器为一个或多个,所述存储器为一个或多个。
[0079] 作为一种示例性实施例,所述存储器可以与所述处理器集成在一起,或者所述存储器与处理器分离设置。
[0080] 在具体实现过程中,存储器可以为非瞬时性(non‑transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。
[0081] 提供了一种计算机程序(产品),所述计算机程序(产品)包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行上述各方面中的方法。
[0082] 提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述各方面中的方法。
[0083] 提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,所述输入接口、输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行上述各方面中的方法。

附图说明

[0084] 图1为本申请实施例提供的应用场景示意图;
[0085] 图2为本申请实施例提供的FlexE场景下创建路径的示意图;
[0086] 图3为本申请实施例提供的路径创建方法流程图;
[0087] 图4为本申请实施例提供的IGP Hello报文的报文格式示意图;
[0088] 图5为本申请实施例提供的TLV的格式示意图;
[0089] 图6为本申请实施例提供的动态创建FlexE交叉隧道的过程示意图;
[0090] 图7为本申请实施例提供的动态创建FlexE交叉隧道的过程示意图;
[0091] 图8为本申请实施例提供的静态创建FlexE交叉隧道的过程示意图;
[0092] 图9为本申请实施例提供的创建路径的过程示意图;
[0093] 图10为本申请实施例提供的创建路径的过程示意图;
[0094] 图11为本申请实施例提供的动态创建FlexE不交叉路径的过程示意图;
[0095] 图12为本申请实施例提供的静态创建FlexE不交叉路径的过程示意图;
[0096] 图13为本申请实施例提供的路径创建装置的结构示意图;
[0097] 图14为本申请实施例提供的路径创建装置的结构示意图;
[0098] 图15为本申请实施例提供的路径创建设备的结构示意图;
[0099] 图16为本申请实施例提供的路径创建设备的结构示意图。

具体实施方式

[0100] 本申请的实施方式部分使用的术语仅用于对本申请的实施例进行解释,而非旨在限定本申请。
[0101] 随着第五代移动通信系统(fifth‑generation,5G)的建设,网络的发展对移动承载带宽提出了更高的需求,同时运营商也希望通过统一的网络来承载包括家庭宽带业务、专线接入业务、移动承载等各种不同的业务,这些需求对电信网络接口也提出了更高的需求。为了满足这些需求,常常需要在网络中创建路径。
[0102] 创建路径的场景有多种,在FlexE场景下创建路径便是其中的一种。由于FlexE技术能够通过接口带宽隔离来实现业务隔离,FlexE接口之间可以完全隔离互不影响。因此,在FlexE场景下创建路径的需求越来越多。以图1所示的应用场景为例,在对接的两端网络设备(如图1中的R所示的路由器)之间通过加入100吉比特以太网(gigabit ethernet,GE)灵活以太组(FlexE Group)的灵活以太模式的物理接口来传输报文,能够提供长距离的传输性能。此外,标准以太物理接口能够通过命令切换为灵活以太模式的物理接口,且由标准以太物理接口切换为灵活以太模式的物理接口时,会同时生成对应的FlexE接口。
[0103] 一方面,FlexE接口的带宽可以灵活指定。FlexE技术将标准以太物理接口的物理(physical,PHY)层划分多个相同的子时隙,每个子时隙对应相同的带宽,多个子时隙带宽可灵活组合成不同大小的逻辑口带宽,也就是FlexE接口的带宽。
[0104] 另一方面,FlexE接口相当于独立的物理接口。在分片网络中,任何分片网络的流量、协议以及运行维护都不影响其他分片,如业务运行、网络升级、安全隔离、攻击隔离等。因此,FlexE技术能够满足网络分片的要求,使得流量在物理层隔离,业务在同一张物理网络上进行网络分片,达到一张物理网络支撑海量的不同服务等级协议(service level agreement,SLA)的定制,实现一网多用,网络价值最大化。
[0105] 针对FlexE技术结合网络分片实现资源隔离和高速传输的场景,创建的路径有两种,一种是有连接的FlexE交叉路径,该FlexE交叉路径可作为一个端到端的FlexE路径。另一种是无连接的FlexE不交叉路径,该FlexE不交叉路径只是建立FlexE接口,可用于做单跳的资源隔离。
[0106] 除了上述在FlexE场景下创建路径之外,还可以在其他场景创建路径。例如,在段路由(segment routing,SR)场景下创建路径,SR是基于原路由理念设计的在网络上转发数据包的一种协议。SR将网络路径分成一个个段,并且为这些段和网络中的节点分配段标识(segment identifier,SID),该多个SID可以组成段标识列表(segment list),通过对段和网络节点进行有序排列,就可以得到一条转发路径。
[0107] 此外,SR可直接使用多协议标签交换(multi‑protocol label switching,MPLS)转发面或互联网协议第6版(internet protocol version 6,IPv6)转发面。使用MPLS转发面时,称为SR‑MPLS或MPLS‑SR,其中,一个段(segment)就是一个标签,segment list就是标签栈。当前活跃的segment位于栈顶,处理完的segment会从栈顶弹出。在MPLS转发平面中,利用标签栈作为路径。
[0108] 使用IPv6转发面时,称为基于IPv6的SR(SRv6),其中,segment可以通过IPv6地址的格式来表达,通过IPv6地址序列来表示报文转发路径。为了基于IPv6转发面实现SRv6,新增加一种IPv6扩展头。该IPv6扩展头即是基于IPv6报文的原有路由扩展头定义的段路由头(segment routing header,SRH),也可以称作SRH扩展头。该SRH扩展头指定一个IPv6的路径,存储的是IPv6的多个段标识。发送报文的头节点在报文中增加一个或多个SRH扩展头,中间节点就可以按照SRH扩展头里包含的路径信息转发该IPv6报文。
[0109] 无论是上述哪种创建路径的场景,当需要创建路径时,相关技术均采用由控制器进行路径计算的方式,然后由控制器将计算好的路径信息通过静态配置的方式下发到作为转发器的各个网络设备。以在图2所示的FlexE场景下创建路径为例,FlexE技术可应用在接入层(access)、汇聚层(aggregation)、核心层(core)。该FlexE场景下包括控制器、承担网络转发功能的路由器及接入路由器。控制器是网络中的集中控制设备,接入路由器用于承载网络业务接入以及网络转发功能,路由器相对控制器而言,可称为转发器。控制器计算好路径之后,向对应的网络设备下发对应的配置信息。每个网络设备的配置信息包括FlexE入口、FlexE出口和带宽等信息,从而实现FlexE路径信息的创建。由于相关技术是通过控制器进行路径计算并通过静态配置的方式下发到各个网络设备,因此,该种路径创建的方式较为复杂,且可靠性不高。
[0110] 对此,本申请实施例提供了一种创建路径的方法,该方法通过IGP或BGP协议在网络设备上逐跳创建路径信息,为路径预留相应的资源,以简化路径创建的方式,提高创建路径的可靠性。
[0111] 接下来,以待创建的路径上的第一网络设备和第二网络设备的交互过程为例,对本申请实施例提供的路径创建方法进行说明。如图3所示,该方法包括如下几个过程。
[0112] 301,第一网络设备获取目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点。
[0113] 在示例性实施例中,目的地址用于指示路径的尾节点。到达目的地址的路径对应的带宽可基于场景需求设置。路径标识包括但不限于FlexE标识、切片标识或段路由路径标识。示例性地,第一网络设备是到达目的地址的路径的头节点,或者,第一网络设备是到达目的地址的路径经过的网络设备。其中,到达目的地址的路径经过的网络设备也称为中间节点。本申请实施例不对第一网络设备获取目的地址、到达目的地址的路径对应的带宽和路径标识的方式进行限定,针对第一网络设备的如下两种情况,包括但不限于如下所述的几种获取方式:
[0114] 情况一:第一网络设备是到达目的地址的路径的头节点。
[0115] 该情况一下,可提前在第一网络设备侧配置目的地址、到达目的地址的路径对应的带宽和路径标识等信息。或者,提前在控制器配置目的地址、到达目的地址的路径对应的带宽和路径标识等信息,通过由控制器下发,或者由第一网络设备向控制器请求等方式,第一网络设备从控制器获取目的地址、到达目的地址的路径对应的带宽和路径标识等信息。
[0116] 情况二:第一网络设备是到达目的地址的路径经过的网络设备。
[0117] 该情况二下,虽然第一网络设备不是到达目的地址的路径的头节点,但对于到达目的地址的路径的头节点,可以通过接收到的报文中获取到目的地址、到达目的地址的路径对应的带宽和路径标识等信息,之后向下一跳节点传输目的地址、到达目的地址的路径对应的带宽和路径标识等信息,从而使得该第一网络设备获取到目的地址、到达目的地址的路径对应的带宽和路径标识等信息。
[0118] 例如,第一网络设备的上一跳节点将目的地址、到达目的地址的路径对应的带宽和路径标识等信息携带在报文中发送给第一网络设备。第一网络设备通过解析报文,从而能够获取到目的地址、到达目的地址的路径对应的带宽和路径标识等信息。
[0119] 302,第一网络设备向第二网络设备发送第一报文,第一报文包括带宽、路径标识和目的地址,第一报文用于指示第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括IGP报文或BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。
[0120] 无论第一网络设备是到达目的地址的路径的头节点,还是到达目的地址的路径经过的网络设备,由于该第一网络设备不是到达目的地址的路径的尾节点,因而为了能够使得路径上的各个网络设备创建路径并预留对应的资源,第一网络设备将获取到的目的地址、带宽和路径标识向路径上的下一跳节点进行传输。示例性地,以第一网络设备的下一跳节点为第二网络设备为例,第一网络设备将目的地址、带宽和路径标识携带在第一报文中,向第二网络设备发送该第一报文,以通过第一报文指示该第二网络设备根据带宽和路径创建对应的路径信息,预留对应的资源。
[0121] 在示例性实施例中,第一网络设备向第二网络设备发送第一报文之前,还包括:根据目的地址确定第二网络设备。例如,第一网络设备获取到目的地址、到达目的地址的路径对应的带宽和路径标识后,向第一网络设备计算得到的到达该目的地址的下一跳发送第一报文,该下一跳对应的设备即为第二网络设备。
[0122] 或者,第一网络设备可以根据目的地址计算到达目的地址的路径,由此得到路径列表。该路径列表包括路径经过的各个网络设备的标识,第一网络设备根据该路径列表能够确定第一网络设备的下一跳是哪个网络设备,从而确定出第二网络设备。
[0123] 可选地,第一网络设备根据目的地址计算到达目的地址的路径时,还可设置约束条件。例如,第一网络设备被配置了路径约束条件,或者从控制器获取到路径约束条件,则第一网络设备根据目的地址以及路径约束条件来计算到达目的地址的路径。其中,路径约束条件用于指示到达目的地址的路径所需要经过的网络设备。例如,目的地址为尾节点E的地址,如果没有路径约束条件,则第一网络设备根据目的地址计算到达尾节点E的路径时,能够到达尾节点E的路径均可以满足要求。但如果设置了路径约束条件,以路径约束条件为经过节点C为例,则第一网络设备根据目的地址计算到达尾节点E的路径时,该路径不仅要到达尾节点E,还需要经过节点C。
[0124] 需要说明的是,该路径列表除了由第一网络设备根据目的地址计算得到,还可以通过预先配置来实现。例如,预先在控制器侧配置路径列表,通过由控制器下发,或者由第一网络设备向控制器请求等方式,第一网络设备从控制器获取路径列表。此外,也可提前在第一网络设备侧配置路径列表。该路径列表可以是松散路径,也可以是严格路径,本申请实施例不做限定。无论是哪种获取路径列表的方式,根据该路径列表均可确定出第二网络设备,该第二网络设备包括但不限于是路径经过的网络设备,或者路径的尾节点。
[0125] 示例性地,该路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括该第二网络设备的标识。本申请实施例不对第一报文所包括的路径列表的获取方式进行限定,接收到第一报文的第二网络设备根据该路径列表即可确定下一跳节点。
[0126] 示例性地,该第一报文包括但不限于IGP报文或BGP报文。例如,第一报文是IGP报文,该第一报文包括但不限于是IGP Hello报文。又例如,第一报文是BGP报文,该第一报文包括但不限于是keep alive报文。
[0127] 关于第一报文携带目的地址、带宽和路径标识的方式,本申请实施例不进行限定,例如,第一报文的可变(VARIABLE)域包括扩展的TLV,该扩展的TLV用于携带目的地址、带宽和路径标识。
[0128] 以IGP Hello报文为例,该IGP Hello报文的报文格式如图4所示。可以通过扩展IGP Hello报文的TLV来进行路径建立,该TLV可以携带在IGP Hello报文的VARIABLE域。该扩展的TLV用来进行路径建立,也即携带目的地址、带宽和路径标识。示例性地,第一报文还包括源地址,该源地址用于指示路径的头节点,该源地址用于指示第二网络设备向头节点发送路径是否创建成功的报文。例如,该扩展的TLV的格式如图5所示。该扩展的TLV的各个字段的含义如表1所示。表1中,带宽(Bandwidth)字段用于携带带宽,目的地址(DestAddress)字段用于携带目的地址,路径标识(PathIdentifier)字段用于携带路径标识,源地址(SourceAddress)字段用于携带源地址。
[0129] 表1
[0130]
[0131]
[0132] 在示例性实施例中,第一网络设备除了向第二网络设备发送第一报文,指示第二网络设备创建对应的路径信息并预留对应的资源之外,该第一网络设备获取目的地址、到达目的地址的路径对应的带宽和路径标识之后,还包括:第一网络设备根据带宽和路径标识创建对应的路径信息,预留对应的资源。其中,创建对应的路径信息包括但不限于创建FlexE接口、分配标签或IPv6SID等。例如,路径标识为FlexE ID,则创建对应的路径信息包括创建FlexE接口。又例如,路径标签为SR MPLS,则创建对应的路径信息包括分配标签。又例如,路径标签为SRv6,则创建对应的路径信息包括分配IPv6SID。
[0133] 可选地,该第一网络设备预留对应的资源,包括:第一网络设备根据带宽确定第一出接口,该第一出接口满足带宽的要求;第一网络设备在第一出接口预留带宽资源。其中,根据带宽确定第一出接口,包括但不限于根据目的地址或路径列表中的地址查询下一跳,该下一跳的数量为一个或多个。在一个或多个下一跳对应的出接口中确定满足带宽的出接口,将确定出的满足带宽的出接口作为第一出接口。示例性地,针对FlexE场景,在第一出接口预留资源并创建FlexE接口。
[0134] 303,第二网络设备接收第一网络设备发送的第一报文。
[0135] 第二网络设备与第一网络设备建立网络连接,第二网络设备接收到第一网络设备发送的第一报文后,由于第一报文包括目的地址、到达目的地址的路径对应的带宽和路径标识,因而第二网络设备通过对第一报文进行解析,得到目的地址、到达目的地址的路径对应的带宽和路径标识。相应的,该第一报文还包括源地址,该源地址用于指示路径的头节点,则第二网络设备对第一报文进行解析之后,还得到源地址。需要说明的是,本申请实施例不对该第一报文包括源地址的方式进行限定,例如,第一报文的可变VARIABLE域包括扩展的TLV用于携带该源地址,除此之外,也可采用其他方式携带源地址。
[0136] 示例性地,如果第一报文还包括路径列表,则第二网络设备解析第一报文后,还获取到路径列表,该路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括该第二网络设备的标识。
[0137] 304,第二网络设备根据带宽和路径标识创建的路径信息并预留对应的资源。
[0138] 第二网络设备根据带宽和路径标识创建对应的路径信息,包括但不限于创建FlexE接口、分配标签或IPv6SID等。该第二网络设备根据带宽和路径标识创建对应的路径信息的方式可参考第一网络设备创建对应的路径信息的方式。例如,路径标识为FlexE ID,则第二网络设备创建对应的路径信息包括创建FlexE接口。又例如,路径标签为SR MPLS,则第二网络设备创建对应的路径信息包括分配标签。又例如,路径标签为SRv6,则第二网络设备创建对应的路径信息包括分配IPv6SID。
[0139] 在示例性实施例中,如果第二网络设备是路径经过的网络设备,而不是路径的尾节点,则第二网络设备根据带宽和路径标识预留对应的资源,包括:第二网络设备根据带宽确定第一出接口,该第一出接口满足带宽的要求;第二网络设备在第一出接口预留带宽资源。示例性地,根据带宽确定第一出接口,包括但不限于根据目的地址或路径列表查询下一跳,该下一跳的数量为一个或多个。在一个或多个下一跳对应的出接口中确定满足带宽的出接口,将确定出的满足带宽的出接口作为第一出接口。示例性地,针对FlexE场景,在第一出接口预留资源并创建FlexE接口。此外,由于第二网络设备是路径经过的网络设备,除了确定出接口,还包括在接收第一报文的接口创建FlexE接口。如果需要创建FlexE交叉路径,则第二网络设备还包括将创建的两个FlexE接口进行连接(连接也可以称为交叉)。
[0140] 在示例性实施例中,针对将路径列表携带在第一报文的情况下,如果第一网络设备检测到路径发生故障,响应于路径故障,第一网络设备重新进行路径计算,得到更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;第一网络设备向第三网络设备发送第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,第二报文的类型与第一报文的类型一致。
[0141] 需要说明的是,第三网络设备是第一网络设备重新算路之后确定出的下一跳,该第三网络设备可能与第二网络设备相同,也有可能与第二网络设备不同。如果第三网络设备与第二网络设备相同,则第二网络设备接收第一网络设备发送的第二报文,根据第二报文中的带宽和路径标识创建对应的路径信息并预留对应的资源。
[0142] 在示例性实施例中,第二网络设备接收到第一报文,第二网络设备根据带宽和路径标识创建对应的路径信息并预留对应的资源之后,还包括:向第一网络设备发送第三报文,该第三报文为第一报文的响应报文,第三报文包括路径标识,第三报文用于指示路径信息创建成功;第三报文包括段路径标识,该段路径标识包括第二网络设备为路径分配的本地标识。在示例性实施例中,该第三报文还包括路径标识。通过该段路径标识,可将第一网络设备与第二网络设备之间对应的接口进行关联。相应的,第一网络设备接收第二网络设备发送的第三报文。
[0143] 需要说明的是,由于段路径标识用于关联第一网络设备与第二网络设备之间对应的接口,如果通过其他方式能够对第一网络设备与第二网络设备之间对应的接口进行关联,则第三报文可不携带段路径标识。例如,如果第一网络设备和第二网络设备均以路径标识来关联第一网络设备和第二网络设备之间的接口,则第三报文还可以不包括段路径标识。第一网络设备接收到第二网络设备发送的第三报文之后,根据第三报文确定到达目的地址的路径已经建立完成。此外,第二网络设备接收到第二报文,根据带宽和路径标识创建对应的路径信息并预留对应的资源之后,还包括:向第一网络设备发送第三报文,该第三报文用于响应第二报文。
[0144] 示例性地,第二网络设备向第一网络设备发送第三报文的方式,包括但不限于如下两种情况:
[0145] 情况一:第二网络设备是路径的尾节点,则第二网络设备创建对应的路径信息并预留对应的资源后,生成第三报文,向第一网络设备发送该第三报文。该第三报文可携带路径标识和段路径标识,以关联第一网络设备与第二网络设备之间的接口,该第三报文还可携带路径标识。可选地,如果采用其他的接口关联方式,该第三报文也可不携带段路径标识,例如通过路径标识来关联第一网络设备与第二网络设备之间的接口。
[0146] 情况二:第二网络设备不是路径的尾节点,而是路径经过的网络设备。
[0147] 该情况二下,第二网络设备创建对应的路径信息并预留对应的资源后,还将向第二网络设备的下一跳发送第三报文,该第三报文也可以称为创建成功报文,这里的下一跳是指第二网络设备向第一网络设备发送第三报文的下一跳设备。第三报文可以携带该路径的头节点的地址信息。下一跳设备采用第二网络设备的处理方式,创建对应的路径信息并预留对应的资源之后,再依次向下一跳的下一跳发送创建成功报文,直至将该创建成功报文发送至该路径的头节点。
[0148] 网络设备生成创建成功报文即第三报文的方式可以包括但不限于以下两种:
[0149] 方式一、路径上的尾节点在创建对应的路径信息,预留相关资源之后,生成第三报文,向尾节点的上一跳发送该第三报文,该尾节点发送的第三报文包括尾节点为路径分配的本地标识,也即段路径标识,或者该第三报文中包括上述路径标识,通过该段路径标识或路径标识来关联尾节点与尾节点的上一跳之间对应的接口。之后,尾节点的上一跳按照尾节点的处理方式,继续向上一跳发送第三报文。以此类推,直至第二网络设备接收到第二网络设备的下一跳发送给第二网络设备的第三报文,该第三报文包括第二网络设备的下一跳为路径分配的本地标识,以关联第二网络设备与第二网络设备的下一跳之间的接口,或者该第三报文中包括上述路径标识,通过该路径标识来关联尾节点与尾节点的上一跳之间对应的接口。则第二网络设备向第一网络设备发送第三报文,该第三报文包括第二网络设备为路径分配的本地标识,以关联第二网络设备与第一网络设备之间对应的接口。
[0150] 方式二、该路径上的中间设备或尾节点各自在创建路径信息或预留相关资源成功之后,分别向该路径上的头节点发送路径创建成功报文,该头节点结合各设备发送的报文确定该路径创建成功。
[0151] 需要说明的是,针对第二网络设备不是尾节点的情况,第二网络设备接收第一网络设备发送的第一报文之后,还包括:第二网络设备向目的地址发送与第一报文对应的第五报文,该第五报文包括带宽、路径标识和目的地址,第五报文用于指示第三网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第三网络设备包括路径经过的网络设备。例如,第三网络设备是第二网络设备在路径上的下一跳,则第二网络设备将向第二网络设备的下一跳发送第五报文。该第五报文可不携带路径列表,如果携带路径列表,则该路径列表可以不包括第二网络设备的标识,但包括第二网络设备的下一跳的标识。下一跳采用第二网络设备的处理方式,创建对应的路径信息并预留对应的资源,再依次向下一跳的下一跳发送与第一报文对应的报文,直至发送至目的地址对应的尾节点。
[0152] 在示例性实施例中,第二网络设备根据带宽和路径标识未成功创建对应的路径信息或未成功预留对应的资源,则第二网络设备向第一网络设备发送第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。相应的,第一网络设备接收第二网络设备发送的第四报文。示例性地,该第一网络设备接收到第四报文后,将创建的路径信息进行删除。例如,第一报文是IGP报文中的Hello报文,该第四报文也是IGP报文中的Hello报文,该Hello报文的Action类型字段为错误通知,标识路径创建失败。第一网络设备接收到该第二网络设备发送的Hello报文,删除创建的路径信息。如果第一网络设备还创建了FlexE接口,则将创建的FlexE接口删除。
[0153] 关于第二网络设备根据带宽和路径标识未成功创建对应的路径信息的原因,本申请实施例不进行限定。例如,第二网络设备没有足够的带宽创建对应的路径信息,或者第二网络设备没有到目的地址的路由等情况下,第二网络设备均有可能创建路径信息失败。对此,第二网络设备向第一网络设备发送第四报文,以指示路径信息创建失败。
[0154] 需要说明的是,以上仅以第二网络设备未成功创建对应的路径信息而向第一网络设备发送第四报文的情况为例进行说明,针对第二网络设备为路径经过的网络设备,且第二网络设备成功创建了对应的路径信息,但第二网络设备之后的网络设备未成功创建对应的路径信息的情况,则第二网络设备也会接收到第二网络设备的下一跳发送的第四报文。则第二网络设备根据该第四报文,删除创建的路径信息。如果第二网络设备还创建了FlexE接口,则将创建的FlexE接口删除。
[0155] 本申请实施例提供的方法,通过采用IGP协议或BGP协议由网络设备来动态创建路径并预留对应的资源,与控制器来创建路径并静态配置的方式相比,创建路径的方式更为灵活,可靠性更高。且在路径故障时,可及时收敛,进一步提高了创建路径的可靠性。
[0156] 在一些情况下,也可以根据IGP协议或BGP协议由网络设备来动态创建路径信息,而不需要预留对应的资源。
[0157] 另外,本申请实施例提供的方法中,到达目的地址的路径可由控制器计算,也可由网络设备计算,算路方式更灵活。
[0158] 为了便于理解本申请实施例提供的方法,接下来以通过IGP协议创建FlexE路径为例,结合如下几个场景,对本申请实施例提供的创建路径的方法进行举例说明。
[0159] 场景一:动态创建FlexE交叉隧道
[0160] 以图6所示的动态创建FlexE交叉隧道的过程,并成功创建FlexE交叉隧道的情况为例,对创建路径的方法进行说明。其中,上述如图3所示的方法实施例中的第一网络设备可以为图6中的设备A、设备B、设备C或设备D。第二网络设备可以为图6中的设备B、设备C、设备D、或设备E。
[0161] 该方法包括但不限于如下几个过程。601,在头节点A配置或由控制器向头节点A下发创建一条FlexE交叉隧道的配置信息,该配置信息包括指定带宽、路径标识及目的地址。
[0162] 如图6所示,指定带宽为2G,路径标识为全网唯一的FlexE‑ID,且FlexE‑ID为1000,目的地址为A2:1::1。该目的地址为节点E的地址,也即节点E为路径的尾节点。
[0163] 602,头节点A根据目的地址查询路由下一跳,在下一跳对应的出接口预留资源并创建FlexE接口,并在对应的出接口发送IGP Hello报文。
[0164] 如图6所示,在本场景创建的路径中,始发IGP Hello报文的节点是节点A,该节点A是该路径的头节点,而节点B、C、D是路径经过的网络设备,节点E是目的地址所指示的节点,也即该节点E是路径的尾节点。头节点A根据目的地址查询路由下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址等信息。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点B创建FlexE交叉路径,路径类型为IPv6。
[0165] 603,节点B接收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据目的地址查询下一跳,在下一跳对应的出接口创建FlexE接口并预留资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0166] 如图6所示,根据目的地址查询节点B的下一跳为节点C,因此,节点B向节点C发送Hello报文。同样,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点C创建FlexE交叉路径,路径类型为IPv6。
[0167] 604,节点C按照节点B的处理方式对Hello报文进行处理,以此类推,向节点D发送Hello报文,节点D也按照节点B的处理方式对Hello报文进行处理,继续向节点D的下一跳节点发送Hello报文,直到Hello报文发送的尾节点E,也即目的地址对应的节点。
[0168] 605,尾节点E接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0169] 例如,通过用户网络侧接口(user networks interface,UNI)向节点A发送第三报文。该第三报文为IGP协议的创建成功消息。如图6所示,该第三报文由节点D发送到节点C,再由节点C发送到节点B,直至由节点B发送到节点A。另外,每个节点向各自的上一跳发送第三报文时,该第三报文可携带段路径标识,还可携带路径标识。例如,该段路径标识是当前节点为路径分配的本地标识,通过该本地标识或路径标识来关联两个节点之间对应的接口。
[0170] 606,节点A接收到第三报文,确认路径成功建立。此时,FlexE交叉隧道建立完成。
[0171] 需要说明的是,图6所示的动态创建FlexE交叉隧道的过程中,仅以节点B、C和D接收到Hello报文,创建入和出两个FlexE接口后,将两个FlexE接口交叉连接为例进行了说明。除此方式外,节点B、C和D还可在接收到Hello报文后,仅创建入和出两个FlexE接口,并不将两个FlexE接口交叉连接,而是在接收到下一跳发送的第三报文后,再将两个FlexE接口交叉连接。
[0172] 另外,图6中所示的创建路径的过程针对的是成功创建FlexE交叉隧道的场景,在示例性实施例中,如果到某条链路的目标节点没有足够的带宽创建FlexE接口,或者该目标节点没有到目的地址的路由,则该目标节点可向目标节点的上一跳回复新的Hello报文,该新的Hello报文的Action类型填写为错误通知,用于指示FlexE交叉隧道创建失败。目标节点的上一跳收到该新的Hello报文后,删除已创建的FlexE接口,继续向上一跳发送新的Hello报文,直至发送到头节点A。头节点A收到该新的Hello报文后,删除已创建的FlexE接口。
[0173] 场景二:动态创建FlexE交叉隧道时发生链路故障
[0174] 以图7所示的动态创建FlexE交叉隧道的过程,针对创建FlexE交叉隧道发生链路故障的情况为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0175] 701,在头节点A配置或由控制器向头节点A下发创建一条FlexE交叉隧道的配置信息,该配置信息包括指定带宽、路径标识及目的地址。
[0176] 如图7所示,指定带宽为2G,路径标识为全网唯一的FlexE‑ID,且FlexE‑ID为1000,目的地址为A2:1::1。该目的地址为节点E的地址,也即节点E为路径的尾节点。
[0177] 702,头节点A根据目的地址查询路由下一跳,在下一跳对应的出接口预留资源并创建FlexE接口,并在对应的出接口发送IGP Hello报文。
[0178] 如图7所示,在本场景创建的路径中,始发IGP Hello报文的节点是节点A,该节点A是该路径的头节点,而节点B、C、D是路径经过的网络设备,节点E是目的地址所指示的节点,也即该节点E是路径的尾节点。头节点A根据目的地址查询路由下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址等信息。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点B创建FlexE交叉路径,路径类型为IPv6。
[0179] 703,节点B接收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据目的地址查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0180] 如图7所示,根据目的地址查询节点B的下一跳为节点C,因此,节点B向节点C发送Hello报文。同样,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点C创建FlexE交叉路径,路径类型为IPv6。
[0181] 704,节点C接收到Hello报文,根据Hello报文中的目的地址查询到下一跳为节点D,确定到节点D的出接口,发现链路故障,则节点C收敛到下一跳节点F。节点C在新的出接口创建FlexE接口,向节点F发送Hello报文。
[0182] 需要说明的是,节点C除了收敛到下一跳节点F,也可向头节点发送第四报文,该第四报文用于指示路径信息创建失败。该第四报文的类型与第一报文的类型一致。
[0183] 705,节点F收到Hello报文后,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据目的地址查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0184] 如图7所示,节点F的下一跳为节点E,也即路径的尾节点。
[0185] 706,尾节点E接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0186] 例如,该第三报文为IGP协议的创建成功消息。如图7所示,该第三报文由节点F发送到节点C,再由节点C发送到节点B,直至由节点B发送到节点A。另外,每个节点向各自的上一跳发送第三报文时,该第三报文可携带段路径标识,还可携带路径标识。例如,该段路径标识是当前节点为路径分配的本地标识,通过该本地标识或路径标识来关联两个节点之间对应的接口。
[0187] 706,节点A接收到第三报文,确认路径成功建立。此时,FlexE交叉隧道建立完成。
[0188] 场景三:静态创建FlexE交叉隧道
[0189] 以图8所示的静态创建FlexE交叉隧道的过程,并成功创建FlexE交叉隧道的情况为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0190] 801,在头节点A配置或由控制器向头节点A下发创建一条FlexE交叉隧道的配置信息,该配置信息包括指定带宽、路径标识、目的地址以及显式路径列表。
[0191] 如图8所示,指定带宽为2G,路径标识为全网唯一的FlexE‑ID,且FlexE‑ID为1000,目的地址为A2:1::1。该目的地址为节点E的地址,也即节点E为路径的尾节点。指定显式路径列表包括路径上的网络设备的标识,如图8所示的Path:A、B、C、D、E。其中,A、B、C、D、E分别代表节点A、B、C、D、E的标识。节点A是显式路径列表中的第一个节点,也即节点A是始发IGP Hello报文的头节点,而节点B、C、D是路径经过的网络设备,节点E是目的地址所指示的节点,也即该节点E是路径的尾节点。
[0192] 802,头节点A根据显式路径列表查找下一跳对应的出接口,在下一跳对应的出接口预留资源并创建FlexE接口,并在下一跳对应的出接口发送IGP Hello报文。
[0193] 如图8所示,头节点A根据显式路径列表查询下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址和显示路径列表。其中,头节点A向节点B发送的Hello报文中的显示路径列表不包括头节点A的标识。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。
[0194] 803,节点B收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据显示路径列表查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0195] 如图8所示,根据显示路径列表查询节点B的下一跳为节点C,因此,节点B向节点C发送Hello报文。其中,节点B向节点C发送的Hello报文中的显示路径列表不包括节点B的标识。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点C创建FlexE交叉路径,路径类型为IPv6。
[0196] 804,节点C按照节点B的处理方式对Hello报文进行处理,以此类推,向节点D发送Hello报文,节点D也按照节点B的处理方式对Hello报文进行处理,继续向节点D的下一跳节点发送Hello报文,直到Hello报文发送的尾节点E,也即目的地址对应的节点。
[0197] 805,尾节点E接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0198] 例如,该第三报文为IGP协议的创建成功消息。如图8所示,该第三报文由节点D发送到节点C,再由节点C发送到节点B,直至由节点B发送到节点A。另外,每个节点向各自的上一跳发送第三报文时,该第三报文可携带段路径标识,还可携带路径标识。例如,该段路径标识是当前节点为路径分配的本地标识,通过该本地标识或路径标识来关联两个节点之间对应的接口。
[0199] 806,节点A接收到第三报文,确认路径成功建立。此时,FlexE交叉隧道建立完成。
[0200] 该场景三静态创建FlexE交叉隧道的过程相比动态创建FlexE交叉隧道的过程多指定了一条显式路径列表,逐跳建立FlexE交叉路径的时候不查路由表,而是根据路径列表进行查询,根据指定路由逐跳建立FlexE交叉接口。
[0201] 场景四:网络设备计算路径,建立满足约束的FlexE路径
[0202] 该场景下,由于FlexE路径需要带宽,根据带宽约束在网络设备侧例如头节点使用CSPF算法进行动态路径计算,查找一条满足带宽约束的路径。然后再由IGP协议逐跳建立路径,进行资源预留和接口创建。以图9所示的创建路径的过程为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0203] 901,在头节点A配置或由控制器向头节点A下发创建一条FlexE交叉隧道的配置信息,该配置信息包括指定带宽、路径标识及目的地址。
[0204] 如图9所示,指定带宽为2G,路径标识为全网唯一的FlexE‑ID,且FlexE‑ID为1000,目的地址为A2:1::1。该目的地址为节点E的地址,也即节点E为路径的尾节点。
[0205] 902,头节点A根据配置的目的地址,计算一条满足带宽约束的路径。
[0206] 例如,如图9所示,头节点A根据配置的到目的地址A2:1::1,计算满足带宽约束的路径,得到路径列表。该路径列表包括的网络设备的标识为B、C、D、E。在本场景创建的路径中,始发IGP Hello报文的节点是节点A,该节点A是该路径的头节点,而节点B、C、D是路径经过的网络设备,节点E是目的地址所指示的节点,也即该节点E是路径的尾节点。
[0207] 903,头节点A根据算出的路径查找下一跳对应的出接口,在下一跳对应的出接口预留资源并创建FlexE接口,并在下一跳对应的出接口发送IGP Hello报文。
[0208] 如图9所示,头节点A根据算出的路径查询下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址和显示路径列表。其中,头节点A向节点B发送的Hello报文中的显示路径列表不包括头节点A的标识。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。
[0209] 904,节点B收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据路径列表查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0210] 如图9所示,根据路径列表查询节点B的下一跳为节点C,因此,节点B向节点C发送Hello报文。其中,节点B向节点C发送的Hello报文中的路径列表不包括节点B的标识。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点C创建FlexE交叉路径,路径类型为IPv6。
[0211] 905,节点C按照节点B的处理方式对Hello报文进行处理,以此类推,向节点D发送Hello报文,节点D也按照节点B的处理方式对Hello报文进行处理,继续向节点D的下一跳节点发送Hello报文,直到Hello报文发送的尾节点E,也即目的地址对应的节点。
[0212] 906,尾节点E接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0213] 例如,该第三报文为IGP协议的创建成功消息。如图9所示,该第三报文由节点D发送到节点C,再由节点C发送到节点B,直至由节点B发送到节点A。另外,每个节点向各自的上一跳发送第三报文时,该第三报文可携带段路径标识,还可携带路径标识。例如,该段路径标识是当前节点为路径分配的本地标识,通过该本地标识或路径标识来关联两个节点之间对应的接口。
[0214] 907,节点A接收到第三报文,确认路径成功建立。此时,FlexE交叉隧道建立完成。
[0215] 在该场景四种,当中间节点出现故障时,头节点A从TEDB中感知故障后可重新进行约束路径计算,得到更新的路径列表。之后,按照更新的路径列表继续创建路径。
[0216] 场景五:网络设备计算路径,建立满足路径约束条件的FlexE路径
[0217] 在部分场景中,用户可能希望指定FlexE路径经过某个链路和节点,其他路径不做限制。这种情况下可以通过在头节点配置FlexE的约束路径条件,并由头节点计算满足路径约束条件的FlexE路径。之后,再由IGP协议进行约束路径的建立。以图10所示的创建路径的过程为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0218] 1001,在头节点A配置或由控制器向头节点A下发创建一条FlexE交叉隧道的配置信息,该配置信息包括指定带宽、路径标识、目的地址及路径约束条件。
[0219] 如图10所示,指定带宽为2G,路径标识为全网唯一的FlexE‑ID,且FlexE‑ID为1000,目的地址为A2:1::1。路径约束条件指示到达目的地址的路径需要包括节点F。该目的地址为节点E的地址,也即节点E为路径的尾节点。
[0220] 1002,头节点根据配置的目的地址,计算一条满足带宽约束的路径,由于算路约束要求经过节点F,因此计算路径得到的路径列表包括标识B、C、F、E。在本场景创建的路径中,始发IGP Hello报文的节点是节点A,该节点A是该路径的头节点,而节点B、C、F是路径经过的网络设备,节点E是目的地址所指示的节点,也即该节点E是路径的尾节点。
[0221] 1003,头节点根据算出的路径查找下一跳对应的出接口,在下一跳对应的出接口预留资源并创建FlexE接口,并在下一跳对应的出接口发送IGP Hello报文。
[0222] 如图10所示,头节点A根据算出的路径查询下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址和显示路径列表。其中,头节点A向节点B发送的Hello报文中的显示路径列表不包括头节点A的标识,而是包括标识B、C、F、E。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。
[0223] 1004,节点B收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据路径列表查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,将入和出两个FlexE接口进行交叉,继续向下一跳发送Hello报文。
[0224] 如图10所示,根据路径列表查询节点B的下一跳为节点C,因此,节点B向节点C发送Hello报文。其中,节点B向节点C发送的Hello报文中的路径列表不包括节点B的标识。例如,该Hello报文的扩展TLV字段的Path Type为IPv6,RES Type为FlexE Cross,Action为Create。通过该Hello报文指示节点C创建FlexE交叉路径,路径类型为IPv6。
[0225] 1005,节点C按照节点B的处理方式对Hello报文进行处理,以此类推,向节点F发送Hello报文,节点F也按照节点B的处理方式对Hello报文进行处理,继续向节点F的下一跳节点发送Hello报文,直到Hello报文发送的尾节点E,也即目的地址对应的节点。
[0226] 1006,尾节点E接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0227] 例如,该第三报文为IGP协议的创建成功消息。如图10所示,该第三报文由节点F发送到节点C,再由节点C发送到节点B,直至由节点B发送到节点A。另外,每个节点向各自的上一跳发送第三报文时,该第三报文可携带段路径标识,还可携带路径标识。例如,该段路径标识是当前节点为路径分配的本地标识,通过该本地标识或路径标识来关联两个节点之间对应的接口。
[0228] 1007,节点A接收到第三报文,确认路径成功建立。此时,FlexE交叉隧道建立完成。
[0229] 场景六:动态创建FlexE不交叉路径
[0230] 创建FlexE不交叉路径时,各个节点只创建单跳路径,仅创建FlexE接口,预留资源,不做交叉连接,在IGP hello报文中携带的Res Type为FlexE。其他处理与创建FlexE交叉路径类似,可参见图6所示的创建FlexE交叉路径的过程。以图11所示的动态创建FlexE不交叉路径的过程为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0231] 1101,在头节点A配置创建一条FlexE不交叉路径的配置信息,该配置信息包括指定带宽、路径标识及目的地址。
[0232] 图11示出了在一个分片创建两条FlexE不交叉路径的过程,以创建头节点A所在的路径为例,指定带宽为2G,路径标识为Slicing ID,且Slicing ID为100,目的地址为H。该目的地址为节点H的地址,也即节点H为路径的尾节点。
[0233] 1102,头节点A根据目的地址查询路由下一跳,在下一跳对应的出接口预留资源并创建FlexE接口,并在对应的出接口发送IGP Hello报文。
[0234] 如图11所示,在本场景创建的路径中,始发IGP Hello报文的节点是节点A,该节点A是该路径的头节点,而节点B、E、F、G是路径经过的网络设备,节点H是目的地址所指示的节点,也即该节点H是路径的尾节点。头节点A根据目的地址查询路由下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽为2G,Slicing ID为100,目的地址为节点H的地址等信息。
[0235] 1103,节点B接收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据目的地址查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,继续向下一跳发送Hello报文。
[0236] 如图11所示,根据目的地址查询节点B的下一跳为节点E,因此,节点B向节点E发送Hello报文。
[0237] 1104,节点E按照节点B的处理方式对Hello报文进行处理,以此类推,向节点F发送Hello报文,节点F也按照节点B的处理方式对Hello报文进行处理,继续向节点F的下一跳节点G发送Hello报文,直到Hello报文发送的尾节点H,也即目的地址对应的节点。
[0238] 需要说明的是,如图11所示,由于节点E和节点F为两条路径均经过的网络设备,在节点F有一个接口上带宽只有3G,两条路径分别是2G和3G,相同的分片可以在一个接口上共享带宽,创建的FlexE信息中包含两个路径的信息。因此,图11中节点F所接收到的节点E发来的Hello报文包括两组信息。两组信息中的Slicing ID均为100,一组携带带宽为2G,目的地址为节点H的地址,另一组携带带宽为3G,目的地址为节点J的地址等信息。
[0239] 1105,尾节点H接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0240] 例如,该第三报文为IGP协议的创建成功消息。如图11所示,该第三报文由节点G发送到节点F,再由节点F发送到节点E,再由节点E发送到节点B,直至由节点B发送到节点A。
[0241] 1106,节点A接收到第三报文,确认路径成功建立。此时,FlexE不交叉路径建立完成。
[0242] 场景七:静态创建FlexE不交叉路径
[0243] 创建静态FlexE不交叉路径的过程与动态创建FlexE不交叉路径的区别在于静态创建FlexE不交叉路径是指定的路径,而动态创建FlexE不交叉路径是根据路由动态学习的路径。以图12所示的静态创建FlexE不交叉路径的过程,并成功创建FlexE不交叉路径的情况为例,对创建路径的方法进行说明,包括但不限于如下几个过程。
[0244] 1201,在头节点A配置一条FlexE不交叉路径的配置信息,该配置信息包括指定带宽、路径标识、目的地址以及显式路径列表。
[0245] 图12示出了在一个分片创建两条FlexE不交叉路径的过程,以创建头节点A所在的路径为例,指定带宽为2G,路径标识为Slicing ID,且Slicing ID为100,目的地址为H。该目的地址为节点H的地址,也即节点H为路径的尾节点。指定显式路径列表包括路径上的网络设备的标识,如图12所示的Path:A、B、E、F、G、H。其中,A、B、E、F、G、H分别代表节点A、B、E、F、G、H的标识。在本场景创建的路径中,节点A是始发IGP Hello报文的头节点,而节点B、E、F、G是路径经过的网络设备,节点H是目的地址所指示的节点,也即该节点H是路径的尾节点。
[0246] 1202,头节点A根据显式路径列表查找下一跳对应的出接口,在下一跳对应的出接口预留资源并创建FlexE接口,并在下一跳对应的出接口发送IGP Hello报文。
[0247] 如图12所示,头节点A根据显式路径列表查询下一跳NHP为节点B。之后,头节点A在与节点B对应的出接口预留资源并创建FlexE接口。该Hello报文携带带宽,FlexE ID,目的地址和显示路径列表。其中,头节点A向节点B发送的Hello报文中的显示路径列表不包括头节点A的标识。
[0248] 1203,节点B收到Hello报文,根据Hello报文的内容在接收端入接口创建FlexE接口,并根据显示路径列表查询下一跳,在下一跳对应的出接口创建FlexE接口并预留对应的资源,继续向下一跳发送Hello报文。
[0249] 如图12所示,根据显示路径列表查询节点B的下一跳为节点E,因此,节点B向节点E发送Hello报文。其中,节点B向节点E发送的Hello报文中的显示路径列表不包括节点B的标识。
[0250] 1204,节点E按照节点B的处理方式对Hello报文进行处理,以此类推,向节点F发送Hello报文,节点F也按照节点B的处理方式对Hello报文进行处理,继续向节点F的下一跳节点G发送Hello报文,直到Hello报文发送的尾节点H,也即目的地址对应的节点。
[0251] 需要说明的是,如图12所示,由于节点E和节点F为两条路径均经过的网络设备,在节点F有一个接口上带宽只有3G,两条路径分别是2G和3G,相同的分片可以在一个接口上共享带宽,创建的FlexE信息中包含两个路径的信息。因此,图12中节点F所接收到的节点E发来的Hello报文包括两组信息。两组信息中的Slicing ID均为100,一组携带带宽为2G,目的地址为节点H的地址,路径列表包括的标识为F、G、H;另一组携带带宽为3G,目的地址为节点J的地址,路径列表包括的标识为F、I、J。
[0252] 1205,尾节点H接收到Hello报文,创建FlexE接口成功后,向节点A发送响应于Hello报文的第三报文。
[0253] 例如,该第三报文为IGP协议的创建成功消息。如图12所示,该第三报文由节点G发送到节点F,再由节点F发送到节点E,再由节点E发送到节点B,直至由节点B发送到节点A。
[0254] 1206,节点A接收到第三报文,确认路径成功建立。此时,FlexE不交叉路径建立完成。
[0255] 以上,示例性介绍了本申请实施例的方法示例,以下介绍本申请实施例的装置。
[0256] 本申请实施例提供了一种路径创建装置,该装置用于通过图13所示的各个单元执行上述图3中第一网络设备所执行的方法。参见图13,该装置包括:
[0257] 处理单元1301,用于获取目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点。示例性地,该处理单元1301所执行的功能可参考图3所示的301的相关描述,此处不再赘述。
[0258] 发送单元1302,用于向第二网络设备发送第一报文,第一报文包括带宽、路径标识和目的地址,第一报文用于指示第二网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括IGP报文或BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。示例性地,该发送单元1302所执行的功能可参考图3所示的302的相关描述,此处不再赘述。
[0259] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。
[0260] 在一种可能的实现方式中,路径列表为第一网络设备根据目的地址计算的目标路径。
[0261] 在一种可能的实现方式中,处理单元1301,还用于响应于路径故障,重新进行路径计算,得到更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第三网络设备的标识;
[0262] 发送单元1302,还用于向第三网络设备发送第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,第二报文的类型与第一报文的类型一致。
[0263] 在一种可能的实现方式中,装置还包括:第一接收单元,用于接收第二网络设备发送的第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功,第三报文包括路径标识。第三报文还可以包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0264] 在一种可能的实现方式中,装置还包括:第二接收单元,用于接收第二网络设备发送的第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0265] 在一种可能的实现方式中,处理单元1301,还用于第一网络设备根据带宽和路径标识预留对应的资源,包括:根据带宽确定第一出接口,第一出接口满足带宽的要求;在第一出接口预留带宽资源。
[0266] 在一种可能的实现方式中,第一报文还用于指示第二网络设备向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第四网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第四网络设备包括路径经过的网络设备。
[0267] 在一种可能的实现方式中,第一报文还包括源地址,源地址用于指示路径的头节点,该源地址用于指示第二网络设备向头节点发送路径是否创建成功的报文。
[0268] 本申请实施例提供的装置,通过采用IGP协议或BGP协议由网络设备来动态创建路径并预留对应的资源,与控制器来创建路径并静态配置的方式相比,创建路径的方式更为灵活,可靠性更高。且在路径故障时,可及时收敛,进一步提高了创建路径的可靠性。
[0269] 另外,本申请实施例提供的装置中,到达目的地址的路径可由控制器计算,也可由第一网络设备计算,算路方式更灵活。
[0270] 本申请实施例提供了一种路径创建装置,该装置用于通过图14所示的各个单元执行上述图3中第二网络设备所执行的方法。参见图14,该装置包括:
[0271] 接收单元1401,用于接收第一网络设备发送的第一报文,第一报文包括目的地址、到达目的地址的路径对应的带宽和路径标识,目的地址用于指示路径的尾节点;示例性地,该接收单元1401所执行的功能可参考图3所示的303的相关描述,此处不再赘述。
[0272] 处理单元1402,用于根据带宽和路径标识创建路径信息并预留对应的资源,第一报文包括内部网关协议IGP报文或边界网关协议BGP报文,第二网络设备包括路径经过的网络设备或者尾节点。示例性地,该处理单元1402所执行的功能可参考图3所示的304的相关描述,此处不再赘述。
[0273] 在一种可能的实现方式中,第一报文还包括路径列表,路径列表包括路径经过的至少一台网络设备的标识,至少一台网络设备的设备标识包括第二网络设备的标识。
[0274] 在一种可能的实现方式中,接收单元1401,还用于接收第一网络设备发送的第二报文,第二报文中携带目的地址、带宽、路径标识和更新路径列表,更新路径列表包括更新后的路径所经过的至少一台网络设备的标识,更新后的路径所经过的至少一台网络设备的设备标识包括第二网络设备的标识,第二报文的类型与第一报文的类型一致;
[0275] 处理单元1402,还用于根据带宽和路径标识预留对应的资源。
[0276] 在一种可能的实现方式中,装置还包括:第一发送单元,用于向第一网络设备发送第三报文,第三报文为第一报文的响应报文,第三报文用于指示路径信息创建成功;第三报文包括段路径标识,段路径标识包括第二网络设备为路径分配的本地标识。
[0277] 在一种可能的实现方式中,装置还包括:第二发送单元,用于向第一网络设备发送第四报文,第四报文用于指示路径信息创建失败,第四报文的类型与第一报文的类型一致。
[0278] 在一种可能的实现方式中,处理单元1402,用于根据带宽确定第一出接口,第一出接口满足带宽的要求;在第一出接口预留带宽资源。
[0279] 在一种可能的实现方式中,装置还包括:第三发送单元,用于向目的地址发送与第一报文对应的第五报文,第五报文包括带宽、路径标识和目的地址,第五报文用于指示第三网络设备根据带宽和路径标识创建路径信息并预留对应的资源,第三网络设备包括路径经过的网络设备。
[0280] 应理解的是,上述图13或图14提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0281] 图15为本申请实施例的路径创建设备1500的硬件结构示意图。图15所示的路径创建设备1500可以执行上述图3所示实施例提供的路径创建方法中的相应步骤。
[0282] 如图15所示,路径创建设备1500包括处理器1501、存储器1502、接口1503和总线1504。其中接口1503可以通过无线或有线的方式实现,示例性地,该接口1503可以是网卡。
上述处理器1501、存储器1502和接口1503通过总线1504连接。
[0283] 接口1503可以包括发送器和接收器,用于与其他通信设备通信。处理器1501用于执行上述图3所示实施例中301‑304的处理相关步骤。处理器1501和/或用于本文所描述的技术的其他过程。存储器1502包括操作系统15021和应用程序15022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中涉及路径创建设备1500的处理过程。可选的,存储器1502可以包括只读存储器(英文:Read‑only Memory,缩写:ROM)和随机存取存储器(英文:Random Access Memory,缩写:RAM)。其中,ROM包括基本输入/输出系统(英文:Basic Input/Output System,缩写:BIOS)或嵌入式系统;RAM包括应用程序和操作系统。当需要运行路径创建设备1500时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导路径创建设备1500进入正常运行状态。在路径创建设备1500进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及路径创建设备1500的处理过程。
[0284] 可以理解的是,图15仅仅示出了路径创建设备1500的简化设计。在实际应用中,路径创建设备1500可以包含任意数量的接口,处理器或者存储器。
[0285] 应理解的是,上述处理器可以是中央处理器(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced RISC machines,ARM)架构的处理器。
[0286] 进一步地,在一种可选的实施例中,上述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
[0287] 该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read‑only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用。例如,静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic random access memory,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
[0288] 参见附图16,附图16示出了本申请一个示例性实施例提供的网络设备700的结构示意图,该网络设备700可以配置为上述方法实施例中的第一网络设备或第二网络设备。网络设备700包括:主控板710和接口板730。
[0289] 主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板710用于对网络设备700中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板710包括:中央处理器711和存储器712。
[0290] 接口板730也称为线路接口单元卡(line processing unit,LPU)、线卡(line card)或业务板。接口板730用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板730包括:中央处理器731、网络处理器732、转发表项存储器734和物理接口卡(physical interface card,PIC)
733。
[0291] 接口板730上的中央处理器731用于对接口板730进行控制管理并与主控板710上的中央处理器711进行通信。
[0292] 网络处理器732用于实现报文的转发处理。网络处理器732的形态可以是转发芯片。具体而言,网络处理器732用于基于转发表项存储器734保存的转发表转发接收到的报文,如果报文的目的地址为网络设备700的地址,则将该报文上送至CPU(如中央处理器711)处理;如果报文的目的地址不是网络设备700的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
[0293] 物理接口卡733用于实现物理层的对接功能,原始的流量由此进入接口板730,以及处理后的报文从该物理接口卡733发出。物理接口卡733也称为子卡,可安装在接口板730上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器732处理。在一些实施例中,中央处理器也可执行网络处理器732的功能,比如基于通用CPU实现软件转发,从而物理接口卡733中不需要网络处理器732。
[0294] 可选地,网络设备700包括多个接口板,例如网络设备700还包括接口板740,接口板740包括:中央处理器741、网络处理器742、转发表项存储器744和物理接口卡743。
[0295] 可选地,网络设备700还包括交换网板720。交换网板720也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板730的情况下,交换网板720用于完成各接口板之间的数据交换。例如,接口板730和接口板740之间可以通过交换网板720通信。
[0296] 主控板710和接口板730耦合。例如。主控板710、接口板730和接口板740,以及交换网板720之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板710和接口板730之间建立进程间通信协议(inter‑process communication,IPC)通道,主控板710和接口板730之间通过IPC通道进行通信。
[0297] 在逻辑上,网络设备700包括控制面和转发面,控制面包括主控板710和中央处理器731,转发面包括执行转发的各个组件,比如转发表项存储器734、物理接口卡733和网络处理器732。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器732基于控制面下发的转发表对物理接口卡733收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器734中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。
[0298] 应理解,本实施例的网络设备700可对应于上述各个方法实施例中的第一网络设备或第二网络设备,该网络设备700中的主控板710、接口板730和/或740可以实现上述各个方法实施例中的第一网络设备或第二网络设备所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
[0299] 值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
[0300] 本申请实施例还提供了一种路径创建系统,该系统包括第一网络设备和第二网络设备,第一网络设备用于执行图3所示实施例中的第一网络设备所执行的功能,第二网络设备用于执行图3所示实施例中的第二网络设备所执行的功能。
[0301] 本申请实施例还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,指令由处理器加载并执行以实现如上任一所述的路径创建方法。
[0302] 本申请实施例提供了一种计算机程序,当计算机程序被计算机执行时,可以使得处理器或计算机执行上述方法实施例中对应的各个步骤和/或流程。
[0303] 本申请实施例提供了一种芯片,包括处理器,用于从存储器中调用并运行所述存储器中存储的指令,使得安装有所述芯片的通信设备执行上述各方面中的方法。
[0304] 本申请实施例提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,所述输入接口、输出接口、所述处理器以及所述存储器之间通过内部连接通路相连,所述处理器用于执行所述存储器中的代码,当所述代码被执行时,所述处理器用于执行上述各方面中的方法。
[0305] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk)等。
[0306] 以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。