一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

报文传输方法、设备及系统与流程

2022-07-10 13:29:43 来源:中国专利 TAG:

报文传输方法、设备及系统
1.本技术要求于2020年12月21日提交的申请号为202011517278.8、申请名称为“一种报文发送方法、装置及系统”的中国专利申请的优先权,其全部内容通过引用结合在本技术中。
技术领域
2.本技术涉及通信技术领域,特别涉及一种报文传输方法、设备及系统。


背景技术:

3.随着通信技术的发展,隧道技术在通信系统中得到了广泛应用。通信系统通常包括多个节点,节点能够采用隧道技术沿隧道的路径传输报文。为了使报文能够在路径上顺利的传输,路径的头节点需要对路径进行故障检测。
4.示例地,以节点a到节点b的路径1为例,节点a在对路径1进行检测时,可以沿路径1向节点b发送检测报文。节点b在接收到该检测报文后,会根据网际互连协议(internet protocol,ip)路由确定节点b到节点a的最短路径(路径2),并沿路径2向节点a发送该检测报文的回应报文。若节点a在发出检测报文后的时长阈值内接收到该回应报文,则节点a确定路径1并未故障,且后续可以继续在路径1上传输报文。若节点a在发出检测报文后的时长阈值内并未接收到该回应报文,则节点a确定路径1故障,且后续不会在路径1上传输报文。
5.但是,由于回应报文传输的路径2可能与需要检测的路径1不同,当路径1并未故障且路径2故障时,节点a在发出检测报文后的时长阈值内无法接收到回应报文,此时节点a会确定路径1故障,这样的检测结果与实际情况不符。所以,路径故障检测的准确度较低。


技术实现要素:

6.本技术提供了一种报文传输方法、设备及系统,可以解决路径故障检测的准确度较低的问题,所述技术方案如下:
7.第一方面,提供了一种报文传输方法,所述方法包括:第一节点在接收到检测报文后,获得并发送所述检测报文的回应报文。其中,所述检测报文携带有第一标识列表,所述第一标识列表用于指示第二节点到所述第一节点的第一路径,所述第一标识列表包括:所述第一路径上第一中间节点的第一标识;所述回应报文携带有第二标识列表,所述第二标识列表是第一节点根据所述第一标识列表获得的,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括所述第一标识。
8.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
9.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
10.本技术实施例中的路径可以是隧道的路径,也可以不是隧道的路径,本技术实施例对此不作限定。其中,隧道可以是任一种类型的隧道,比如,基于第六版互联网协议的段路由策略(segment routing internet protocol version 6policy,srv6 policy)隧道,段路由流量工程隧道(segment routing traffic engineering tunnel,sr-te tunnel),或尽力而为的段路由(segment routing best effort policy,sr-be)等。当第一路径为隧道的路径时,第一标识列表可以是段路由列表(segment list)。
11.可选地,所述检测报文携带有:操作码,所述操作码用于指示:生成携带有用于指示与所述第一路径一致且方向相反的标识列表的回应报文;第一节点可以在所述检测报文携带有所述操作码时,生成所述回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。需要说明的是,本技术中第一路径与第二路径一致,此处的一致可以是严格的一致,如第一路径和第二路径所经过的节点完全相同,此处的一致也可以是非严格的一致,如第一路径和第二路径所经过的节点仅部分相同。
12.可选地,所述第一标识列表包括:所述第一路径上多个中间节点的标识;所述第二标识列表也包括:所述多个中间节点的标识;所述多个中间节点的标识在所述第二标识列表中的排列顺序,与所述多个中间节点的标识在所述第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
13.上述多个中间节点可以是第一路径上的部分或全部中间节点,本技术对此不作限定。可选地,所述多个中间节点包括:所述第一路径中除所述第一节点和所述第二节点之外的其他节点。这种情况下,第一路径和第二路径的一致度较高。
14.可选地,第一节点在获得检测报文的回应报文时,可以根据所述第一标识列表中包括的所述多个中间节点的标识,按照相反的顺序,获得所述第二标识列表,再将所述第二标识列表封装到所述回应报文中。
15.可选地,所述第一标识包括:所述第一中间节点接收所述检测报文的端口或链路的标识。或者,该第一标识也可以是第一中间节点的节点标识,本技术对此不作限定。需要说明的是,在第一标识包括:所述第一中间节点接收所述检测报文的端口或链路的标识时,第一中间节点在发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
16.在第一节点接收到的检测报文中的第一标识为第一中间节点的端口或链路的标识时,第二节点发出的检测报文中第一中间节点的标识可以与该第一标识不同,第一中间节点在接收到检测报文后,需要将该检测报文中第一中间节点的标识更新为上述第一标识。
17.可选地,第二标识列表还可以包括第二节点的标识。在第二标识列表包括第二节点的标识时,第二节点的标识可以由第一节点采用任一种方式获得。示例地,所述检测报文
还携带有所述第二节点的地址,第一节点在获得所述回应报文之前,可以根据所述第二节点的地址,确定所述第二节点的标识。第一节点中可以存储有节点的地址与标识的对应关系,第一节点可以根据该对应关系,确定第二节点的地址对应的第二节点的标识。
18.可选地,所述检测报文包括第一段路由扩展头(segment routing header,srh),所述第一srh携带有所述第一标识列表;所述响应报文包括第二srh,所述第二srh携带有所述第二标识列表。或者,所述检测报文包括第一负载部分,所述第一负载部分携带有所述第一标识列表;所述响应报文包括第二负载部分,所述第二负载部分携带有所述第二标识列表。
19.可选地,所述检测报文为:无缝双向转发检测(seamless bidirectional forwarding detection,sbfd)报文。检测报文还可以是其他类型的报文,本技术对此不作限定。
20.第二方面,提供了一种报文传输方法,所述方法包括:第二节点生成检测报文,并向第一节点发送所述检测报文。其中,所述检测报文携带有第一标识列表,所述第一标识列表用于指示所述第二节点到第一节点的第一路径,所述第一标识列表包括:所述第一路径上第一中间节点的初始标识。所述检测报文用于指示所述第一节点:获得所述检测报文的回应报文,所述回应报文携带有第二标识列表;所述第二标识列表是所述第一节点根据所述第一标识列表获得的,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括:所述第一中间节点的第一标识。
21.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
22.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
23.可选地,所述检测报文携带有:操作码;所述操作码用于指示:生成携带有用于指示与所述第一路径一致且方向相反的标识列表的回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。
24.可选地,所述第一标识列表包括:所述第一路径上多个中间节点的标识;所述第二标识列表也包括:所述多个中间节点的标识;所述多个中间节点的标识在所述第二标识列表中的排列顺序,与所述多个中间节点的标识在所述第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
25.可选地,所述检测报文还携带有:第一指示;所述第一指示用于指示所述第一中间节点:在所述检测报文携带有所述第一指示时,将所述初始标识更新为所述第一标识。相应地,第一中间节点可以在检测报文携带有第一指示时,将第一标识列表中的初始标识更新
为第一中间节点的第一标识。在检测报文并未携带有第一指示时,第一中间节点可以不对该初始标识进行更改。这样一来,第一中间节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第一中间节点对接收到的每个报文中的标识进行更改,降低了第一中间节点的功耗。
26.可选地,所述检测报文的报文头中的标志(flags)字段携带有所述第一指示。
27.可选地,所述检测报文包括第一srh,所述第一srh携带有所述第一标识列表;或者,所述检测报文包括第一负载部分,所述第一负载部分携带有所述第一标识列表。
28.第三方面,提供了一种报文传输方法,所述方法由第一路径上的第三节点执行,所述第一路径为第二节点到第一节点的路径,所述方法包括:首先,第三节点接收检测报文。其中,所述检测报文携带有第一标识列表,所述第一标识列表用于指示所述第一路径,所述第一标识列表包括所述第三节点的初始标识。之后,第三节点将所述第一标识列表中的所述初始标识更新为所述第三节点的第一标识,得到更新后的所述检测报文,并对更新后的所述检测报文进行处理。
29.第三节点可以是第一路径上的第一节点,也可以是第一路径上的第一中间节点,该第一中间节点为第一路径上的任一中间节点。当第三节点是第一节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点根据该更新后的检测报文生成回应报文。当第三节点是第一中间节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点发送该更新后的检测报文。
30.当第三节点是第一中间节点时,由于第一中间节点对检测报文中第一中间节点的标识进行了更新,因此,第一节点根据该检测报文生成的回应报文中的第二标识列表包括:第一中间节点的第一标识,且第一标识为第一中间节点接收检测报文的端口或链路的标识,因此,第一中间节点在发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
31.上述第三节点的初始标识与第一标识不同,可选地,所述初始标识包括:所述第三节点的节点标识,如该节点标识可以为节点段标识(node sid);所述第一标识包括:所述第三节点接收所述检测报文的端口或链路的标识,如该第一标识可以为链路段标识(end.x sid)。
32.可选地,所述检测报文还携带有:第一指示,第三节点可以在所述检测报文携带有所述第一指示时,将所述初始标识更新为所述第一标识。在检测报文并未携带有第一指示时,第三节点可以不对该初始标识进行更改。这样一来,第三节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第三节点对接收到的每个报文中的标识进行更改,降低了第三节点的功耗。
33.可选地,第三节点为第一中间节点时,第三节点对更新后的所述检测报文进行处理,包括:第三节点发送更新后的所述检测报文;所述方法还包括:第三节点在对更新后的所述检测报文进行处理之后,接收所述检测报文的回应报文,并发送所述回应报文。其中,所述回应报文携带有第二标识列表,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括所述第一标识。
34.第四方面,提供了一种报文传输设备,所述报文传输设备属于第一节点,所述报文
传输设备包括:接收模块、获得模块和发送模块。其中,接收模块用于接收检测报文,所述检测报文携带有第一标识列表,所述第一标识列表用于指示第二节点到所述第一节点的第一路径,所述第一标识列表包括:所述第一路径上第一中间节点的第一标识;获得模块用于获得所述检测报文的回应报文,所述回应报文携带有第二标识列表,所述第二标识列表是根据所述第一标识列表获得的,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括所述第一标识;发送模块用于发送所述回应报文。
35.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
36.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
37.可选地,所述检测报文携带有:操作码,所述操作码用于指示:生成携带有用于指示与所述第一路径一致且方向相反的标识列表的回应报文;所述获得模块用于:在所述检测报文携带有所述操作码时,生成所述回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。
38.可选地,所述第一标识列表包括:所述第一路径上多个中间节点的标识;所述第二标识列表也包括:所述多个中间节点的标识;所述多个中间节点的标识在所述第二标识列表中的排列顺序,与所述多个中间节点的标识在所述第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
39.可选地,所述多个中间节点包括:所述第一路径中除所述第一节点和所述第二节点之外的其他节点。这种情况下,第一路径和第二路径的一致度较高。
40.可选地,所述获得模块用于:根据所述第一标识列表中包括的所述多个中间节点的标识,按照相反的顺序,获得所述第二标识列表;将所述第二标识列表封装到所述回应报文中。
41.可选地,所述第一标识包括:所述第一中间节点接收所述检测报文的端口或链路的标识。或者,该第一标识也可以是第一中间节点的节点标识,本技术对此不作限定。需要说明的是,在第一标识包括:所述第一中间节点接收所述检测报文的端口或链路的标识时,第一中间节点在发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
42.在第一节点接收到的检测报文中的第一标识为第一中间节点的端口或链路的标识时,第二节点发出的检测报文中第一中间节点的标识可以与该第一标识不同,第一中间节点在接收到检测报文后,需要将该检测报文中第一中间节点的标识更新为上述第一标识。
43.可选地,第二标识列表还可以包括第二节点的标识。在第二标识列表包括第二节点的标识时,第二节点的标识可以由第一节点采用任一种方式获得。示例地,所述检测报文还携带有所述第二节点的地址,所述报文传输设备还包括:确定模块,用于在获得所述回应报文之前,根据所述第二节点的地址,确定所述第二节点的标识,所述回应报文包括:所述第二节点的标识。第一节点中可以存储有节点的地址与标识的对应关系,第一节点可以根据该对应关系,确定第二节点的地址对应的第二节点的标识。
44.可选地,所述检测报文包括第一srh,所述第一srh携带有所述第一标识列表;所述响应报文包括第二srh,所述第二srh携带有所述第二标识列表;或者,所述检测报文包括第一负载部分,所述第一负载部分携带有所述第一标识列表;所述响应报文包括第二负载部分,所述第二负载部分携带有所述第二标识列表。
45.可选地,所述检测报文为:sbfd报文。检测报文还可以是其他类型的报文,本技术对此不作限定。
46.第五方面,提供了一种报文传输设备,所述报文传输设备属于第二节点,所述报文传输设备包括:生成模块和发送模块。其中,生成模块用于生成检测报文,所述检测报文携带有第一标识列表,所述第一标识列表用于指示所述第二节点到第一节点的第一路径,所述第一标识列表包括:所述第一路径上第一中间节点的初始标识;发送模块用于向第一节点发送所述检测报文;所述检测报文用于指示所述第一节点:获得所述检测报文的回应报文,所述回应报文携带有第二标识列表;所述第二标识列表是所述第一节点根据所述第一标识列表获得的,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括:所述第一中间节点的第一标识。
47.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
48.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
49.可选地,所述检测报文携带有:操作码;所述操作码用于指示:生成携带有用于指示与所述第一路径一致且方向相反的标识列表的回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。
50.可选地,所述第一标识列表包括:所述第一路径上多个中间节点的标识;所述第二标识列表也包括:所述多个中间节点的标识;所述多个中间节点的标识在所述第二标识列表中的排列顺序,与所述多个中间节点的标识在所述第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
51.可选地,所述检测报文还携带有:第一指示;所述第一指示用于指示所述第一中间
节点:在所述检测报文携带有所述第一指示时,将所述初始标识更新为所述第一标识。相应地,第一中间节点可以在检测报文携带有第一指示时,将第一标识列表中的初始标识更新为第一中间节点的第一标识。在检测报文并未携带有第一指示时,第一中间节点可以不对该初始标识进行更改。这样一来,第一中间节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第一中间节点对接收到的每个报文中的标识进行更改,降低了第一中间节点的功耗。
52.可选地,所述检测报文的报文头中的标志字段携带有所述第一指示。
53.可选地,所述检测报文包括第一srh,所述第一srh携带有所述第一标识列表;或者,所述检测报文包括第一负载部分,所述第一负载部分携带有所述第一标识列表。
54.第六方面,提供了一种报文传输设备,所述报文传输设备属于第一路径上的第三节点,所述第一路径为第二节点到第一节点的路径,所述报文传输设备包括:第一接收模块、更新模块和处理模块。其中,第一接收模块用于接收检测报文;所述检测报文携带有第一标识列表,所述第一标识列表用于指示所述第一路径,所述第一标识列表包括所述第三节点的初始标识;更新模块用于将所述第一标识列表中的所述初始标识更新为所述第三节点的第一标识,得到更新后的所述检测报文;处理模块用于对更新后的所述检测报文进行处理。
55.第三节点可以是第一路径上的第一节点,也可以是第一路径上的第一中间节点,该第一中间节点为第一路径上的任一中间节点。当第三节点是第一节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点根据该更新后的检测报文生成回应报文。当第三节点是第一中间节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点发送该更新后的检测报文。
56.当第三节点是第一中间节点时,由于第一中间节点对检测报文中第一中间节点的标识进行了更新,因此,第一节点根据该检测报文生成的回应报文中的第二标识列表包括:第一中间节点的第一标识,且第一标识为第一中间节点接收检测报文的端口或链路的标识,因此,第一中间节点在发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
57.上述第三节点的初始标识与第一标识不同,可选地,所述初始标识包括:所述第三节点的节点标识,如该节点标识可以为node sid;所述第一标识包括:所述第三节点接收所述检测报文的端口或链路的标识,如该第一标识可以为end.x sid。
58.可选地,所述检测报文还携带有:第一指示,所述更新模块用于:在所述检测报文携带有所述第一指示时,将所述初始标识更新为所述第一标识。这样一来,第三节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第三节点对接收到的每个报文中的标识进行更改,降低了第三节点的功耗。
59.可选地,所述报文传输设备还包括:第二接收模块和发送模块。其中,第二接收模块用于在处理模块对更新后的所述检测报文进行处理之后,接收所述检测报文的回应报文;所述回应报文携带有第二标识列表,所述第二标识列表用于指示所述第一节点到所述第二节点的第二路径,所述第二标识列表包括所述第一标识;发送模块用于发送所述回应报文。
60.第七方面,提供了一种通信设备,所述通信设备包括:处理器和存储器,所述存储器中存储有程序;所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如第一方面中任一设计所述的报文传输方法;或者,所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如第二方面任一设计所述的报文传输方法;或者,所述处理器用于调用所述存储器中存储的程序,以使得所述通信设备执行如第三方面任一设计所述的报文传输方法。
61.第八方面,提供了一种通信系统,所述通信系统包括第一节点和第二节点;所述第一节点包括:第四方面任一设计所述的报文传输设备;所述第二节点包括:第五方面任一设计所述的报文传输设备。
62.可选地,所述通信系统还包括:第一中间节点;所述第一中间节点和所述第二节点中的至少一个节点为:第六方面任一设计所述的报文传输设备所述的第三节点。
63.第九方面,提供了一种计算机存储介质,所述存储介质内存储有计算机程序;
64.所述计算机程序在计算机上运行时,使得计算机执行第一方面任一设计所述的报文传输方法;或者,所述计算机程序在计算机上运行时,使得计算机执行第二方面任一设计所述的报文传输方法;或者,所述计算机程序在计算机上运行时,使得计算机执行第三方面任一设计所述的报文传输方法。
65.第十方面,提供了一种包含指令的计算机程序产品,当计算机程序产品在报文传输设备上运行时,使得报文传输设备执行如第一方面任一设计所述的报文传输方法;或者,当计算机程序产品在报文传输设备上运行时,使得报文传输设备执行如第二方面任一设计所述的报文传输方法;或者,当计算机程序产品在报文传输设备上运行时,使得报文传输设备执行如第三方面任一设计所述的报文传输方法;
66.第二方面至第十方面中任一种设计方式所带来的技术效果可参见第一方面中相应设计方式所带来的技术效果,此处不再赘述。
附图说明
67.图1为本技术实施例提供的一种通信系统的结构示意图;
68.图2为本技术实施例提供的一种通信设备的结构示意图;
69.图3为本技术实施例提供的一种报文传输过程示意图;
70.图4为本技术实施例提供的一种报文传输方法的流程图;
71.图5为本技术实施例提供的另一种报文传输过程示意图;
72.图6为本技术实施例提供的另一种报文传输过程示意图;
73.图7为本技术实施例提供的一种srh的结构示意图;
74.图8为本技术实施例提供的另一种报文传输方法的流程图;
75.图9为本技术实施例提供的另一种报文传输过程示意图;
76.图10为本技术实施例提供的另一种报文传输过程示意图;
77.图11为本技术实施例提供的一种报文传输设备的框图;
78.图12为本技术实施例提供的另一种报文传输设备的框图;
79.图13为本技术实施例提供的又一种报文传输设备的框图。
具体实施方式
80.为使本技术的原理和技术方案更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
81.图1为本技术实施例提供的一种通信系统的结构示意图,如图1所示,通信系统包括多个节点,如图1中的节点r1、r2、r3、r4和r5。需要说明的是,本技术实施例不对通信系统中节点的个数进行限定,图1中以通信系统包括五个节点为例,通信系统中节点的个数也可以是其他数值,如2、10、100或1000等。
82.通信系统中的节点可以是网关、路由器、路由器中的接口单元、服务器或者服务器集群等。通信系统中的节点均为通信设备,通信设备可以包括:处理器;处理器用于与存储器耦合,并读取存储器中的指令之后,根据指令执行如本技术实施例描述的由通信设备执行的方法。
83.在该通信设备中,处理器的个数可以为多个,与处理器耦合的存储器可以独立于处理器之外或独立于通信设备之外,也可以在处理器或网络设备之内。存储器可以是物理上独立的单元,也可以是云服务器上的存储空间或网络硬盘等。可选地,存储器可以为一个或多个。当存储器的个数为多个时,可以位于相同的或不同的位置,并且可以独立或配合使用。示例性地,当存储器位于通信设备内部时,请参考图2,图2为本技术实施例提供的一种通信设备的结构示意图。该通信设备200包括:处理器202和存储器201,其中,存储器201用于存储程序,处理器202用于调用存储器201中存储的程序,以使得该通信设备执行相应的方法或功能。可选地,如图2所示,该通信设备200还可以包括至少一个通信接口203和至少一个通信总线204,本技术实施例中的接口(如通信接口203)也称端口。存储器201、处理器202以及通信接口203通过通信总线204通信连接。其中,通信接口203用于在处理器202的控制下与其他设备通信,处理器202可以通过通信总线204调用存储器201中存储的程序。本技术实施例提供的通信设备可以用于执行本技术后续实施例提供的报文传输方法中由第一节点、第二节点或第一中间节点执行操作。
84.通信系统中的各个节点之间存在连接关系,比如图1中的节点r1、r2、r3和r4依次连接,节点r1、节点r5和节点r4依次连接。基于节点之间的连接关系,通信系统中可以部署有报文传输的路径,该路径的头节点能够将报文沿该路径向该路径的尾节点传输。例如,图1所示的通信系统中部署的路径1可以为:节点r1

节点r2

节点r3

节点r4。该路径的头节点r1可以将报文依次经过节点r2和r3,传输至尾节点r4。
85.本技术实施例中的路径可以是隧道的路径,也可以不是隧道的路径,本技术实施例对此不作限定。其中,隧道可以是任一种类型的隧道,比如srv6 policy隧道、sr-te隧道或sr-be等。
86.为了使报文能够在路径上顺利的传输,路径的头节点需要对路径进行故障检测。
87.示例地,图1中的头节点r1在对路径1进行检测时,如图3所示,可以沿路径1向尾节点r4发送检测报文。尾节点r4在接收到该检测报文后,会根据ip路由确定尾节点r4到头节点r1的最短路径2(节点r4

节点r5

节点r1),并沿该路径2向头节点r1发送该检测报文的回应报文。
88.头节点r1在发出检测报文之后,可以判断发出检测报文后的时长阈值内是否接收到该检测报文的回应报文。若头节点r1在发出检测报文后的时长阈值内接收到该回应报
文,则头节点r1确定该路径1并未故障,且后续可以继续在该路径1上传输报文。若头节点r1在发出检测报文后的时长阈值内并未接收到该回应报文,则头节点r1确定路径1故障,且后续不会在该路径1上传输报文。
89.但是,由于回应报文传输的路径2(节点r4

节点r5

节点r1)与需要检测的路径1(节点r1

节点r2

节点r3

节点r4)不同,当路径1并未故障,且路径2故障时,头节点r1在发出检测报文后的时长阈值内无法接收到回应报文,此时头节点r1会确定路径1故障,这样的检测结果与实际情况不符。所以,路径故障检测的准确度较低。
90.本技术实施例提供了一种报文传输方法,该方法可以用于本技术实施例提供的通信系统。该报文传输方法能够根据检测报文所传输的第一路径,沿与该第一路径一致度较高的第二路径传输回应报文。这样一来,回应报文传输的路径与检测报文传输的路径的一致度较高,从而使得回应报文的传输情况能够反映第一路径的故障情况,因此,头节点根据该回应报文进行故障检测的准确度较高。
91.示例地,图4为本技术实施例提供的一种报文传输方法的流程图,如图4所示,该报文传输方法包括:
92.s401、第二节点生成检测报文,检测报文携带有第一标识列表,第一标识列表用于指示第二节点到第一节点的第一路径,第一标识列表包括:第一路径上第一中间节点的第一标识。
93.本技术实施例以待检测的路径为第一路径为例,第一路径可以是隧道的路径,也可以不是隧道的路径,本技术实施例对此不作限定。第一路径的头节点为第二节点,第一路径的尾节点为第一节点。
94.为了对第一路径进行故障检测,第一路径的头节点(第二节点)需要生成用于故障检测的检测报文。该检测报文携带有用于指示第一路径的第一标识列表,可选地,当第一路径为隧道的路径时,第一标识列表可以是段路由列表。本技术实施例中节点的标识可以是节点的任一种标识,包括:段标识(segment identifier,sid),如节点段标识(node sid),或者,节点中用于发送检测报文的端口对应的链路段标识(end.x sid)。
95.第一标识列表可以通过任一种方式指示第一路径,示例地,第一标识列表可以包括该第一路径上除头节点之外每个节点的标识(或者包括第一路径上每个节点的标识),且这些标识按照节点在第一路径上的排布顺序依次排布,从而使得第一标识列表指示第一路径。
96.例如,假设第一路径为图1所示的路径1(节点r1

节点r2

节点r3

节点r4),节点r1为第二节点,节点r4为第一节点。节点r1的标识为1::,节点r2的标识为2::,节点r3的标识为3::,节点r4的标识为4::。那么,如图5所示,检测报文携带的第一标识列表可以包括:4::,3::,2::。可选地,该第一标识列表也可以包括:2::,3::,4::,本技术实施例对此不作限定。
97.第一路径包括位于第一节点和第二节点之间的至少一个中间节点,无论第一标识列表以何种方式指示第一路径,第一标识列表均可以包括:第一路径上第一中间节点的第一标识,该第一中间节点可以是该至少一个中间节点中的任一节点。
98.第一标识列表所指示的第一路径经过该第一标识列表中的节点标识所指示的节点,第一标识列表包括第一中间节点的第一标识,且第一路径经过第一中间节点。
99.需要说明的是,节点的标识可以是用于指示节点的节点标识(如节点的地址等),也可以是用于指示节点中某一部件的标识(如节点中某一端口或链路的标识),只要根据节点的标识能够确定节点即可。本技术实施例中以节点的标识为用于指示节点的节点标识为例。
100.第二节点生成的检测报文可以是任一种格式的检测报文,本技术实施例中以第二节点生成的检测报文为:sbfd报文为例。其中,sbfd是双向转发检测(bidirectional forwarding detection,bfd)的一种简化机制,sbfd简化了bfd的状态机,缩短了节点之间的协商时间,提高了通信系统的灵活性,并且能够支持对段路由(segment routing,sr)隧道的路径进行故障检测。
101.s402、第二节点向第一节点发送检测报文。
102.第二节点在生成检测报文之后,可以沿第一标识列表所指示的第一路径,向第一节点发送该检测报文。检测报文在从第二节点传输至第一节点的过程中,依次经过该第一路径上的每个中间节点,中间节点在接收到该检测报文后均可以根据该第一标识列表发送该报文。
103.例如,如图5所示,在路径1上,节点r1为第二节点,节点r4为第一节点,节点r2和r3均为中间节点。节点r1可以根据第一标识列表将报文发送至节点r2,节点r2可以根据第一标识列表将检测报文发送至节点r3,节点r3可以根据第一标识列表将检测报文发送至节点r4。
104.s403、第一节点获得检测报文的回应报文,回应报文携带有第二标识列表,第二标识列表是根据第一标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识。
105.检测报文可以用于指示第一节点获得该回应报文。第一节点在接收到检测报文后,可以获得检测报文的回应报文。
106.类似检测报文携带有第一标识列表,回应报文携带有第二标识列表。其中,该第二标识列表是第一节点根据检测报文携带的第一标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识列表中第一中间节点的第一标识。可见,第一标识列表和第二标识列表均包含第一中间节点的第一标识。
107.第二标识列表所指示的第二路径经过该第二标识列表中的标识所指示的节点,第二标识列表包括第一中间节点的第一标识,因此,第二路径也经过第一路径中的第一中间节点。
108.s404、第一节点向第二节点发送回应报文。
109.第一节点在获得回应报文后,可以沿第二标识列表所指示的第二路径向第二节点发送回应报文。
110.检测报文在从第一节点传输至第二节点的过程中,依次经过该第二路径上的每个中间节点,中间节点在接收到该检测报文后均可以根据该第二标识列表发送该报文。
111.例如,如图6所示,假设第二路径为路径2(节点r4

节点r3

节点r2

节点r1),在路径2上,节点r1为第二节点,节点r4为第一节点,节点r2和r3均为中间节点。节点r4可以根据第二标识列表将回应报文发送至节点r3,节点r3可以根据第二标识列表将回应报文发送至节点r2,节点r2可以根据第二标识列表将回应报文发送至节点r1。
112.需要说明的是,本技术实施例中以第一路径和第二路径经过的中间节点相同为例,也可以是第一路径和第二路径经过的一部分中间节点相同,而另一部分中间节点不同。例如,第一路径为图5中的路径1(节点r1

节点r2

节点r3

节点r4)。若节点r4与节点r2连接,则第二路径可以为:(节点r4

节点r2

节点r1);或者,若节点r5与节点r2和节点r3均连接,则第二路径可以为:(节点r4

节点r3

节点r5

节点r2

节点r1)等。
113.第二节点在发出检测报文后,可以根据检测报文的回应报文确定第一路径是否故障。示例地,若第二节点在发出检测报文后的时长阈值内接收到该检测报文的回应报文,则第二节点可以确定第一路径并未故障;若第二节点在发出检测报文后的时长阈值内并未接收到该回应报文,则第二节点确定第一路径故障。
114.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
115.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
116.上述实施例中以第一标识列表和第二标识列表均包含第一标识为例。可选地,第一标识列表和第二标识列表也可以均包括:第一路径上多个中间节点(包括第一中间节点)的标识。该多个中间节点的标识在第二标识列表中的排列顺序,与该多个中间节点的标识在第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
117.例如,如图5所示,第一标识列表包括:3::,2::,第一路径依次经过节点r1、r2、r3和r4;如图6所示,第二标识列表包括:2::,3::,第二路径依次经过节点r4、r3、r2和r1。此时,第二路径与第一路径经过相同的节点,第一路径和第二路径的一致度较高。
118.需要说明的是,本技术中第一路径与第二路径一致,此处的一致可以是严格的一致,如第一路径和第二路径所经过的节点完全相同,此处的一致也可以是非严格的一致,如第一路径和第二路径所经过的节点仅部分相同。
119.可选地,该多个中间节点可以是第一路径上的部分或全部中间节点,本技术实施例对此不作限定。当该多个中间节点为第一路径上的全部中间节点时,该多个中间节点包括:第一路径中除第一节点和第二节点之外的其他节点。这种情况下,第一路径和第二路径的一致度较高。在s403中,第一节点可以根据第一标识列表中多个中间节点的标识,按照相反的顺序,获得第二标识列表,并将第二标识列表封装到回应报文中。其中,第一节点在将第二标识列表封装到回应报文中时,可以根据操作维护管理(operation administration and maintenance,oam)指示完成封装。
120.上述实施例中以第一标识列表和第二标识列表包括中间节点的标识为例。可选地,第一标识列表还可以包括第一节点的标识,第二标识列表还可以包括第二节点的标识。第一标识列表中节点的标识可以按照节点在第一路径上的顺序依次排布,第二标识列表中节点的标识可以按照节点在第二路径上的顺序依次排布。
121.例如,以第一路径为图5中的路径1(节点r1

节点r2

节点r3

节点r4),第二路径为图6中的路径2(节点r4

节点r3

节点r2

节点r1)为例。那么,第一标识列表包括:4::,3::,2::,第二标识列表包括:1::,2::,3::。
122.在第一标识列表包括:第一节点的标识以及第一路径上每个中间节点的标识,第二标识列表包括:第二节点的标识以及第一路径上每个中间节点的标识的情况下:
123.在s403中,第一节点可以将第一标识列表中多个节点的标识按照相反的顺序排布,去掉第一节点的标识,添加第二节点的标识,从而得到第二标识列表。其中,第一节点在添加第二节点的标识时,若第一标识列表中各个节点的标识按照节点在第一路径上的排布顺序依次排布,则第一节点可以在去掉第一节点的标识后,将第二节点的标识添加在剩余的标识之前。若第一标识列表中各个节点的标识按照节点在第一路径上的排布顺序的相反顺序依次排布,则第一节点可以在去掉第一节点的标识后,将第二节点的标识添加在剩余的标识之后。
124.例如,仍然以图5和图6为例,假设第一标识列表包括:4::,3::,2::,则第一节点可以先将这些标识按照相反的顺序排布,得到2::,3::,4::。之后,第一节点可以去除第一节点(节点r4)的标识4::,得到2::,3::。最后,第一节点可以将第二节点(r1)的标识1::添加在剩余的标识之前,得到1::,2::,3::。
125.又例如,仍然以图5和图6为例,假设第一标识列表包括:2::,3::,4::,则第一节点可以先将这些标识按照相反的顺序排布,得到4::,3::,2::。之后,第一节点可以去除第一节点(节点r4)的标识4::,得到3::,2::。最后,第一节点可以将第二节点(r1)的标识1::添加在剩余的标识之后,得到3::,2::,1::。
126.在第二标识列表包括第二节点的标识时,第二节点的标识可以由第一节点采用任一种方式获得。
127.示例地,第二节点发送的检测报文还携带有第二节点的地址(图5中未示出),第一节点可以根据该检测报文携带的第二节点的地址,确定第二节点的标识。可选地,第一节点中可以存储有节点的地址与标识的对应关系,第一节点可以根据该对应关系,确定第二节点的地址对应的第二节点的标识。
128.可选地,上述第一路径可以是srv6隧道(也称srv6 policy隧道)的路径,上述检测报文包括第一srh,第一srh携带有上述第一标识列表,上述响应报文包括第二srh,第二srh携带有上述第二标识列表。
129.示例地,图7为本技术实施例提供的一种srh的结构示意图,如图7所示,srh包括:下一个报文头类型(next header)字段、报文头长度(hdr ext len)字段、路由头部类型(routing type)字段、到达目的节点的剩余段数(segments left,sl)字段、段列表最后元素索引(last entry)字段、标志字段、同组数据标识(tag)字段、段路由列表字段以及可选内容部分(optional type length value objects)字段,且该可选内容部分字段是变量(variable)。其中,在检测报文的第一srh中,段路由列表字段可以携带有上述第一标识列表;在回应报文的第二srh中,段路由列表字段可以携带有上述第二标识列表。
130.上述第一路径也可以不是srv6隧道的路径,上述检测报文包括第一负载部分,第一负载部分携带有第一标识列表,上述响应报文包括第二负载部分,第二负载部分携带有第二标识列表。
131.上述实施例中,第二节点生成的检测报文携带有第一标识列表(或者第一标识列表和第二节点的地址)。进一步地,该检测报文还携带有其他内容,以下将以检测报文携带的其他四种信息为例进行说明。
132.(1)检测报文还可以携带有操作码,该操作码可以称为第一操作码。该第一操作码用于指示:生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文。在上述s403中,第一节点可以在检测报文携带有第一操作码时,生成回应报文。
133.例如,该第一操作码可以包括:fe。该第一操作码可以携带在该检测报文的srh或者其他扩展头中。fe用于指示生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文。
134.又例如,该第一操作码可以是第一节点的标识。当第一标识列表包括第一节点的标识时,作为第一操作码的第一节点的标识与第一标识列表中第一节点的标识可以相同也可以不同。比如,图5中作为第一操作码的第一节点的标识为4::fe,而第一标识列表中第一节点的标识为4::。该第一节点的标识作为第一操作码时,该第一节点的标识可以用于指示:生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文。
135.可选地,第一操作码可以是第二节点生成的,或者,由控制器发送给第二节点的。
136.(2)检测报文还可以携带有sl。第一路径可以划分为依次排布的多个路径段,检测报文在第一路径上传输的过程中,会依次在该多个路径段上传输。sl用于指示到达目的节点的剩余段索引个数,该个数等于第一路径中检测报文还未传输的路径段的数量。
137.例如,如图5所示,路径1(第一路径)划分为依次排布的:路径段1(节点r1

节点r2)、路径段2(节点r2

节点r3)和路径段3(节点r3

节点r4),图5中并未标出这三个路径段。节点r1发出的检测报文还需在这三个路径段上传输,因此,节点r1发出的检测报文中的sl=3。节点r2在接收到节点r1发送的检测报文后,可以根据第一标识列表确定检测报文还需在路径段2和路径段3上传输,因此,节点r2会将该检测报文中的sl=3改为sl=2,再传输至节点r3。节点r3在接收到节点r2发送的检测报文后,可以根据第一标识列表确定检测报文还需在路径段3上传输,因此,节点r3会将该检测报文中的sl=2改为sl=1,再传输至节点r4。
138.(3)检测报文还可以携带有目的地址(destination address,da)。da表示检测报文在第一路径中需要传输至的下一个节点的地址。
139.例如,如图5所示,路径1为:(节点r1

节点r2

节点r3

节点r4),节点r1需要将检测报文传输至节点r2,若节点r2的标识为节点r2的地址,则节点r1发出的检测报文中的da=2::(节点r2的标识)。节点r2在接收到节点r1发送的检测报文后,可以根据第一标识列表确定检测报文需要传输至节点r3,若节点r3的标识为节点r3的地址,则节点r2会将该检测报文中的da=2::改为da=3::(节点r3的标识),再传输至节点r3。节点r3在接收到节点r2发送的检测报文后,可以根据第一标识列表确定检测报文需要传输至节点r4,若节点r4的标识为节点r4的地址,则节点r3会将该检测报文中的da=3::改为da=4::(节点r4的标识),再传输至节点r4。
140.可选地,在第一路径是srv6隧道的路径时,da可以是第六版互联网协议(internet protocol version 6,ipv6)da。
141.(4)如图5所示,当上述检测报文是sbfd报文时,检测报文可以携带有sbfd负载
(payload)。
142.上述实施例中,第一节点获得的回应报文携带有第二标识列表。进一步地,与检测报文类似,该回应报文还携带有其他内容,以下将以回应报文携带的其他四种信息为例进行说明。
143.(1)回应报文也可以携带有操作码,该操作码称为第二操作码。第二操作码用于指示:根据回应报文对第一路径进行故障检测。
144.例如,回应报文中的第二操作码可以包括:ff。该第二操作码可以携带在该检测报文的srh或者其他扩展头中。ff用于指示根据回应报文对第一路径进行故障检测。
145.又例如,第二操作码可以是第二节点的标识。当第二标识列表包括第二节点的标识时,作为第二操作码的第二节点的标识与第二标识列表中第二节点的标识可以相同也可以不同。比如,图6中作为第二操作码的第二节点的标识为1::ff,而第二标识列表中第二节点的标识为1::。该第二节点的标识作为第二操作码时,该第二节点的标识可以用于指示:根据回应报文对第一路径进行故障检测。
146.可选地,第二操作码可以是第一节点生成的,或者,由控制器发送给第一节点的。
147.(2)回应报文也还可以携带有sl。第二路径可以划分为依次排布的多个路径段,回应报文在第二路径上传输的过程中,会依次在该多个路径段上传输。sl用于指示该第二路径中回应报文还未传输的路径段的数量。
148.例如,如图6所示,路径2(第二路径)划分为依次排布的:路径段3(节点r3

节点r4)、路径段2(节点r2

节点r3)和路径段1(节点r1

节点r2),图6中并未标注出这三个路径段。节点r4发出的回应报文还需在这三个路径段上传输,因此,节点r4发出的回应报文中的sl=3。节点r3在接收到节点r4发送的回应报文后,可以根据第二标识列表确定回应报文还需在路径段2和路径段1上传输,因此,节点r3会将该回应报文中的sl=3改为sl=2,再传输至节点r2。节点r2在接收到节点r3发送的回应报文后,可以根据第二标识列表确定回应报文还需在路径段1上传输,因此,节点r2会将该回应报文中的sl=2改为sl=1,再传输至节点r1。
149.(3)回应报文也还可以携带有da。
150.例如,如图6所示,路径2为:(节点r4

节点r3

节点r2

节点r1),节点r4需要将回应报文传输至节点r3,因此节点r4发出的回应报文中的da=3::(节点r3的标识)。节点r3在接收到节点r4发送的回应报文后,可以根据第二标识列表确定回应报文需要传输至节点r2,因此,节点r3会将该回应报文中的da=3::改为da=2::(节点r2的标识),再传输至节点r2。节点r2在接收到节点r3发送的回应报文后,可以根据第二标识列表确定回应报文需要传输至节点r1,因此,节点r2会将该回应报文中的da=2::改为da=1::(节点r1的标识),再传输至节点r1。
151.可选地,在第一路径是srv6隧道的路径时,da可以是第六版互联网协议(internet protocol version 6,ipv6)da。
152.(4)如图6所示,当上述检测报文是sbfd报文时,回应报文也为sbfd报文,回应报文也携带有sbfd包。
153.上述实施例中,检测报文可以携带有第一操作码,回应报文可以携带有第二操作码。
154.一方面,检测报文中的第一操作码可以包括在第一标识列表中,并且,该第一操作码可以紧跟第一节点的标识。
155.示例地,当第一节点的标识为第一标识列表中排在最后的一个标识时,第一操作码可以排在第一节点的标识之后;当第一节点的标识为第一标识列表中排在最前的一个标识时,第一操作码可以排在第一节点的标识之前。
156.例如,图5中以第一操作码(4::fe)位于第一标识列表外为例,可选地,图5中的第一操作码(4::fe)也可以包括在第一标识列表中,此时,第一标识列表可以包括:4::fe,4::,3::,2::,或者,2::,3::,4::,4::fe。
157.另一方面,与检测报文类似,回应报文中的第二操作码也可以包括在第二标识列表中,并且,该第二操作码可以紧跟第二节点的标识。
158.示例地,当第二节点的标识为第二标识列表中排在最后的一个标识时,第二操作码可以排在第二节点的标识之后;当第二节点的标识为第二标识列表中排在最前的一个标识时,第二操作码可以排在第二节点的标识之前。
159.例如,图6中以第二操作码(1::ff)位于第二标识列表外为例,可选地,图6中的第二操作码(1::ff)可以包括在第二标识列表中,此时,第二标识列表可以包括:1::ff,1::,2::,3::,或者,3::,2::,1::,1::ff。
160.在第一标识列表包括第一操作码、第一节点的标识以及第一路径上每个中间节点的标识,第二标识列表包括第二操作码、第二节点的标识以及第一路径上每个中间节点的标识的情况下:在s403中,第一节点可以将第一标识列表中的内容(包括第一操作码和节点的标识)按照相反的顺序排布,去掉第一操作码和第一节点的标识,添加第二节点的标识以及第二操作码,从而得到第二标识列表。
161.进一步地,在上述检测报文为sbfd报文时,在s401之前,第一节点还可以向第二节点发送第一sbfd控制报文,该第一sbfd控制报文携带有第一节点的sbfd描述符(discriminator)等信息。第二节点也可以向第一节点发送第二sbfd控制报文,该第二sbfd控制报文携带有第二节点的sbfd描述符等信息。其中,节点的sbfd描述符可以是节点的地址等信息。
162.第一节点可以记录第一节点的sbfd描述符与第二节点的sbfd描述符的匹配关系。上述检测报文中可以携带有第二节点的sbfd描述符,在上述s403之前,第一节点可以根据记录的该匹配关系,判断该检测报文携带的第二节点的sbfd描述符与第一节点的sbfd描述符是否匹配。在检测报文携带的第二节点的sbfd描述符与第一节点的sbfd描述符匹配,且第一节点处于工作状态时,第一节点才执行上述s403。
163.需要说明的是,上述实施例中以第一路径中的中间节点在发送检测报文时,不对第一标识列表进行调整为例。可选地,中间节点在发送检测报文时,还可以对第一标识列表进行调整。
164.示例地,图8为本技术实施例提供的另一种报文传输方法的流程图,如图8所示,该报文传输方法包括:
165.s801、第二节点生成检测报文,检测报文携带有第一标识列表,第一标识列表用于指示第二节点到第一节点的第一路径,第一标识列表包括:第一路径上第一中间节点的初始标识。
166.s801可以参考s401,本技术实施例在此不做赘述。
167.第一中间节点的初始标识可以是第一中间节点的节点标识。
168.s802、第二节点向第一中间节点发送检测报文。
169.第二节点向第一中间节点发送检测报文的过程,可以参考图4所示实施例中第二节点发送检测报文的过程。
170.s803、第一中间节点将第一标识列表中的初始标识更新为第一中间节点的第一标识,得到更新后的检测报文。
171.初始标识与第一标识为第一中间节点的两种不同标识。当节点的标识为节点的sid时,初始标识和第一标识为第一中间节点的两种不同的sid。
172.在一个示例中,初始标识包括:第一中间节点的节点标识,该节点标识可以为node sid,第一标识包括:第一中间节点接收检测报文的端口或链路的标识,如该第一标识可以为end.xsid。
173.例如,假设第一路径为图9所示的路径1(节点r1

节点r2

节点r3

节点r4),节点r2和节点r3均为第一中间节点,节点r1发出的检测报文中第一标识列表与图5中的第一标识列表相同,均包括4::,3::,2::。
174.若节点r2具有端口1、2和3,节点r2在从端口1接收到检测报文后,可以将该第一标识列表中节点r2的初始标识(也即节点r2的节点标识2::)更新为节点r2中端口1的标识(2::1),更新后的检测报文中第一标识列表包括:4::,3::,2::1。
175.若节点r3具有端口1和2,节点r3在从端口1接收到节点r2发送的检测报文后,可以将该第一标识列表中节点r3的初始标识(也即节点r3的节点标识3::)更新为节点r3中端口1的标识(3::1),更新后的检测报文中第一标识列表包括:4::,3::1,2::1。
176.在另一个示例中,初始标识可以是第一中间节点发送检测报文的出端口对应的第一end.x sid,第一标识可以为第一中间节点接收该检测报文的入端口对应的第二end.x sid。
177.例如,假设第一路径为图9所示的路径1(节点r1

节点r2

节点r3

节点r4),节点r2和节点r3均为第一中间节点,节点r1发出的检测报文中第一标识列表包括4::,3::2,2::2。其中,2::2表示节点r2中发送检测报文的出端口2对应的第一end.x sid,3::2表示节点r3中发送检测报文的出端口2对应的第一end.x sid。
178.若节点r2从其入端口1接收到检测报文,则节点r2可以将该第一标识列表中节点r2中发送检测报文的出端口2对应的第一end.x sid(如2::2)更新为节点r2接收该检测报文的入端口1对应的第二end.x sid(2::1),更新后的检测报文中第一标识列表包括:4::,3::2,2::1。
179.若节点r3从其入端口1接收到检测报文,则节点r3可以将第一标识列表中节点r3中发送检测报文的出端口2对应的第一end.x sid(如3::2)更新为节点r3接收该检测报文的入端口1对应的第二end.x sid(3::1),更新后的检测报文中第一标识列表包括:4::,3::1,2::1。
180.s804、第一中间节点向第一节点发送更新后的检测报文。
181.第一中间节点在得到更新后的检测报文后,可以根据该更新后的检测报文中的第一标识列表发送该更新后的检测报文。
182.例如,如图9所示,节点r2作为第一中间节点,可以根据更新后的检测报文中的第一标识列表向节点r3发送该更新后的检测报文;节点r3作为第一中间节点,可以根据更新后的检测报文中的第一标识列表向节点r4发送该更新后的检测报文。
183.s805、第一节点获得检测报文的回应报文,回应报文携带有第二标识列表,第二标识列表是根据第一标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识。
184.s805可以参考s403,本技术实施例在此不做赘述。
185.第一节点在获得回应报文时,可以根据该第一标识列表得到第二标识列表,并将该第二标识列表封装在回应报文中。
186.需要说明的是,在本技术实施例中,第一节点接收到的检测报文是被第一中间节点更新后的检测报文,该检测报文中的第一标识列表携带有第一中间节点的第一标识,该第一标识为第一中间节点的端口或链路的标识。所以,第一节点得到的第二标识列表中第一中间节点的标识也为该第一标识。
187.例如,如图10所示,节点r4作为第一节点,节点r4生成的回应报文中的第二标识列表包括:1::,2::1,3::1。
188.s806、第一节点向第一中间节点发送回应报文。
189.s807、第一中间节点向第二节点发送回应报文。
190.s806和s807可以参考s404,本技术实施例在此不做赘述。
191.由于本技术实施例中第二标识列表包括:第一中间节点的第一标识,且第一标识为第一中间节点接收检测报文的端口或链路的标识,因此,第一中间节点在根据第二标识列表发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
192.示例地,图10中回应报文中的第二标识列表包括:1::,2::1,3::1,节点r2和r3均为第一中间节点。节点r4可以将回应报文发送至节点r3,节点r3根据该第二标识列表中的3::1,可以从节点r3的端口1向节点r2发送该回应报文。节点r2可以根据该第二标识列表中的2::1,从节点r2的端口1向节点r1发送该回应报文。可见,检测报文的传输路径与回应报文的传输路径相同。
193.可选地,上述检测报文还可以携带有:第一指示(如图9中的sf=1),第一指示用于指示第一中间节点:在检测报文携带有第一指示时,将初始标识更新为第一标识。相应地,第一中间节点在上述s803中可以在检测报文携带有第一指示时,将第一标识列表中的初始标识更新为第一中间节点的第一标识。在检测报文并未携带有第一指示时,第一中间节点可以不对该初始标识进行更改。这样一来,第一中间节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第一中间节点对接收到的每个报文中的标识进行更改,降低了第一中间节点的功耗。
194.第一指示可以携带在检测报文中的任意位置,可选地,检测报文的报文头中的标志字段携带有该第一指示。示例地,图7中的标志字段可以包括0~7这8个比特位(图7中未示出这几个比特位),其中,比特位7可以用于携带该第一指示。当比特位7的值为1时,比特位7携带有第一指示。第一中间节点可以根据该比特位7的值来确定该检测报文是否携带有
第一指示,进而判定是否需要对检测报文中的标识进行更改。
195.第一节点在获得检测报文的回应报文时,可以将检测报文中的第一指示进行更改。比如,第一指示为图9中的sf=1时,第一节点将sf=1改为图10中的sf=0;又比如,第一节点可以将图7中标志字段中比特位7的值由1改为0。因此,第一中间节点在发送该回应报文时,并不会对该回应报文中第二标识列表中的标识进行更改。
196.进一步地,由于图8所示的实施例中第一中间节点对第一标识列表中的标识进行了更改,所以,在回应报文携带有da,且回应报文向第一中间节点传输时,该回应报文中的da所表示的标识为:该第一中间节点的第一标识,如第一中间节点中接收检测报文的端口或链路的标识。
197.例如,如图10所示,假设第二路径为:(节点r4

节点r3

节点r2

节点r1),节点r4需要将回应报文传输至节点r3的端口1,因此节点r4发出的回应报文中的da=3::1(节点r3中端口1的标识)。节点r3在接收到节点r4发送的回应报文后,可以根据第二标识列表确定回应报文需要传输至节点r2的端口1,因此,节点r3会将该回应报文中的da=3::1改为da=2::1(节点r2的端口1的标识),再通过节点r3的端口1传输至节点r2。节点r2在接收到节点r3发送的回应报文后,可以根据第二标识列表确定回应报文需要传输至节点r1,因此,节点r2会将该回应报文中的da=2::1改为da=1::(节点r1的节点标识),再从节点r2的端口1传输至节点r1。
198.需要说明的是,在图8所示的实施例中,第二节点生成的检测报文携带的第一标识列表包括:第一中间节点的初始标识。由于第一中间节点将第一中间节点的初始标识更新为第一标识,所以,第一节点接收到的检测报文携带的第一标识列表包括:第一中间节点的第一标识。可见,第二节点生成的检测报文中第一中间节点的初始标识,与第一节点接收到的检测报文中第一中间节点的第一标识不同。
199.在图4所示的实施例中,第二节点生成的检测报文携带的第一标识列表包括:第一中间节点的第一标识。第一节点接收到的检测报文携带的第一标识列表包括:第一中间节点的第一标识。可见,第二节点生成的检测报文中第一中间节点的标识,与第一节点接收到的检测报文中第一中间节点的标识相同。在图4所示的实施例中,若将第二节点生成的检测报文中第一中间节点的第一标识称为初始标识,则在图4所示的实施例中,第二节点生成的检测报文中第一中间节点的初始标识,与第一节点接收到的检测报文中第一中间节点的第一标识相同。
200.在图8所示的实施例中,第一路径上的第一中间节点可以对检测报文进行更新,可选地,第一路径上的第一节点在接收到检测报文后,也可以对该检测报文进行更新。第一节点对检测报文进行更新的过程可以参考上述第一中间节点对检测报文进行更新的过程,本技术实施例在此不做赘述。
201.在这种情况下,第一路径上的第一中间节点和第一节点均可以称为第三节点,该第三节点能够在接收到检测报文后,将第一标识列表中携带的第三节点的初始标识更新为第三节点的第一标识,得到更新后的检测报文,之后再对该更新后的检测报文进行处理。
202.当第三节点是第一节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点根据该更新后的检测报文生成回应报文。当第三节点是第一中间节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点发送该更新后的检测报文。
203.上文中结合图1至图10,详细描述了本技术所提供的报文传输方法,可以理解的是,节点为了实现上述各方法所描述的功能,其需包含执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各方法的执行过程,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方式来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
204.本实施例可以根据上述方法实施例对相应的设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,具体作为一种逻辑功能可能的划分方式,实际实现时可以有另外的划分方式。
205.当采用功能模块划分方式时,下面将结合图11、图12和图13描述本技术所提供的报文传输设备。
206.图11为本技术实施例提供的一种报文传输设备的框图,该报文传输设备例如可以属于前述各实施例中的第一节点。如图11所示,该报文传输设备包括:接收模块1101、获得模块1102和发送模块1103。
207.接收模块1101用于接收检测报文,检测报文携带有第一标识列表,第一标识列表用于指示第二节点到第一节点的第一路径,第一标识列表包括:第一路径上第一中间节点的第一标识。接收模块1101用于执行的操作可以参考上述s402和s804中与第一节点相关的内容。
208.获得模块1102用于获得检测报文的回应报文,回应报文携带有第二标识列表,第二标识列表是根据第一标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识。获得模块1102用于执行的操作可以参考上述s403和s805中与第一节点相关的内容。
209.发送模块1103用于根据第二标识列表,发送回应报文。发送模块1103用于执行的操作可以参考上述s404和s805中与第一节点相关的内容。
210.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
211.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
212.可选地,检测报文携带有:操作码,操作码用于指示:生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文;获得模块用于:在检测报文携带有操作码时,生成回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。
213.可选地,第一标识列表包括:第一路径上多个中间节点的标识;第二标识列表也包括:多个中间节点的标识;多个中间节点的标识在第二标识列表中的排列顺序,与多个中间节点的标识在第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
214.可选地,多个中间节点包括:第一路径中除第一节点和第二节点之外的其他节点。这种情况下,第一路径和第二路径的一致度较高。
215.可选地,获得模块用于:根据第一标识列表中包括的多个中间节点的标识,按照相反的顺序,获得第二标识列表;将第二标识列表封装到回应报文中。
216.可选地,第一标识包括:第一中间节点接收检测报文的端口或链路的标识。或者,该第一标识也可以是第一中间节点的节点标识,本技术对此不作限定。需要说明的是,在第一标识包括:第一中间节点接收检测报文的端口或链路的标识时,第一中间节点在根据第二标识列表发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
217.在第一节点接收到的检测报文中的第一标识为第一中间节点的端口或链路的标识时,第二节点发出的检测报文中第一中间节点的标识可以与该第一标识不同,第一中间节点在接收到检测报文后,需要将该检测报文中第一中间节点的标识更新为上述第一标识。
218.可选地,第二标识列表还可以包括第二节点的标识。在第二标识列表包括第二节点的标识时,第二节点的标识可以由第一节点采用任一种方式获得。示例地,检测报文还携带有第二节点的地址,报文传输设备还包括:确定模块(图11中未示出),用于在获得回应报文之前,根据第二节点的地址,确定第二节点的标识,回应报文包括:第二节点的标识。第一节点中可以存储有节点的地址与标识的对应关系,第一节点可以根据该对应关系,确定第二节点的地址对应的第二节点的标识。确定模块的功能可以参考上述各个实施例中确定第二节点的标识的过程。
219.可选地,检测报文包括第一srh,第一srh携带有第一标识列表;响应报文包括第二srh,第二srh携带有第二标识列表;或者,检测报文包括第一负载部分,第一负载部分携带有第一标识列表;响应报文包括第二负载部分,第二负载部分携带有第二标识列表。
220.可选地,检测报文为:sbfd报文。检测报文还可以是其他类型的报文,本技术对此不作限定。
221.图12为本技术实施例提供的另一种报文传输设备的框图,该报文传输设备例如可以属于前述各实施例中的第二节点。如图12所示,该报文传输设备包括:生成模块1201和发送模块1202。
222.生成模块1201用于生成检测报文,检测报文携带有第一标识列表,第一标识列表用于指示第二节点到第一节点的第一路径,第一标识列表包括:第一路径上第一中间节点的初始标识。生成模块1201用于执行的操作可以参考上述s401和s801中与第二节点相关的内容。
223.发送模块1202用于向第一节点发送检测报文;检测报文用于指示第一节点:获得检测报文的回应报文,回应报文携带有第二标识列表;第二标识列表是第一节点根据第一
标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括:第一中间节点的第一标识。发送模块1202用于执行的操作可以参考上述s402和s802中与第二节点相关的内容。
224.在第一标识列表和第二标识列表均包括第一中间节点的第一标识时,第一路径和第二路径均经过该第一标识所指示的第一中间节点,且第一路径和第二路径的头尾节点相反,因此,第二路径与第一路径的一致度较高。所以,回应报文的传输路径与检测报文的传输路径的一致度较高,回应报文的传输情况与检测报文的传输情况较为一致,回应报文的传输情况能够反映第一路径的故障情况,第二节点根据该回应报文确定第一路径是否故障的准确度较高。
225.并且,由于第二节点确定第一路径是否故障的准确度较高,因此,降低了第二节点在第一路径并未故障时切换路径而导致业务中断的概率,提升了用户体验。
226.可选地,检测报文携带有:操作码;操作码用于指示:生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文。在检测报文携带有操作码时,第一节点可以根据该操作码的指示,生成回应报文,这样一来,可以提升第一节点在接收到检测报文后生成回应报文的效率。该检测报文中也可以不携带有操作码,本技术对此不作限定。
227.可选地,第一标识列表包括:第一路径上多个中间节点的标识;第二标识列表也包括:多个中间节点的标识;多个中间节点的标识在第二标识列表中的排列顺序,与多个中间节点的标识在第一标识列表中的排列顺序相反。在这种情况下,第一路径和第二路径的一致度进一步提升,第二节点根据回应报文确定第一路径是否故障的准确度也进一步提升。
228.可选地,检测报文还携带有:第一指示;第一指示用于指示第一中间节点:在检测报文携带有第一指示时,将初始标识更新为第一标识。相应地,第一中间节点可以在检测报文携带有第一指示时,将第一标识列表中的初始标识更新为第一中间节点的第一标识。在检测报文并未携带有第一指示时,第一中间节点可以不对该初始标识进行更改。这样一来,第一中间节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第一中间节点对接收到的每个报文中的标识进行更改,降低了第一中间节点的功耗。
229.可选地,检测报文的报文头中的标志字段携带有第一指示。
230.可选地,检测报文包括第一srh,第一srh携带有第一标识列表;或者,检测报文包括第一负载部分,第一负载部分携带有第一标识列表。
231.图13为本技术实施例提供的又一种报文传输设备的框图,该报文传输设备例如可以属于图8所示实施例中第一路径上的第三节点,第一路径为第二节点到第一节点的路径。如图13所示,该报文传输设备包括:第一接收模块1301、更新模块1302和处理模块1303。
232.第一接收模块1301用于接收检测报文;检测报文携带有第一标识列表,第一标识列表用于指示第一路径,第一标识列表包括第三节点的初始标识。第一接收模块1301用于执行的操作可以参考上述s802中与第一中间节点相关的内容。
233.更新模块1302用于将第一标识列表中的初始标识更新为第三节点的第一标识,得到更新后的检测报文。更新模块1302用于执行的操作可以参考上述s803中与第一中间节点相关的内容。
234.处理模块1303用于对更新后的检测报文进行处理。处理模块1303用于执行的操作可以参考上述s804中与第一中间节点相关的内容。
235.第三节点可以是第一路径上的第一节点,也可以是第一路径上的第一中间节点。该第一中间节点是第一路径上的任一中间节点。当第三节点是第一节点时,处理模块1303用于根据该更新后的检测报文生成回应报文。当第三节点是第一中间节点时,处理模块1303用于发送该更新后的检测报文。
236.当第三节点是第一中间节点时,由于第一中间节点对检测报文中第一中间节点的标识进行了更新,因此,第一节点根据该检测报文生成的回应报文中的第二标识列表包括:第一中间节点的第一标识,且第一标识为第一中间节点接收检测报文的端口或链路的标识,因此,第一中间节点在根据第二标识列表发送回应报文时,可以从该第一中间节点中的该端口或链路发送回应报文。这样一来,就保证了第一中间节点接收检测报文和发送回应报文的端口或链路相同,从而进一步提升了检测报文的传输路径与回应报文的传输路径的一致性。
237.上述第三节点的初始标识与第一标识不同,可选地,初始标识包括:第三节点的节点标识,如该节点标识可以为node sid;第一标识包括:第三节点接收检测报文的端口或链路的标识,如该第一标识可以为end.x sid。
238.可选地,检测报文还携带有:第一指示,更新模块用于:在检测报文携带有第一指示时,将初始标识更新为第一标识。这样一来,第三节点便可以根据该第一指示来判定是否需要对报文中的标识进行更改,从而避免了第三节点对接收到的每个报文中的标识进行更改,降低了第三节点的功耗。
239.可选地,报文传输设备还包括:第二接收模块和发送模块(图13中未示出这两个模块)。其中,第二接收模块用于在根据第一标识列表,发送更新后的检测报文之后,接收检测报文的回应报文;回应报文携带有第二标识列表,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识;发送模块用于根据第二标识列表,发送回应报文。第二接收模块用于执行的操作可以参考上述s806中与第一中间节点相关的内容,发送模块用于执行的操作可以参考上述s807中与第一中间节点相关的内容。
240.在采用集成的单元的情况下,本技术所提供的用于第一节点、第二节点或第三节点的报文传输设备可以包括处理模块、存储模块和通信模块。其中,处理模块可以用于对报文传输设备的动作进行控制管理,例如,可以用于支持报文传输设备执行上述s401至s404中由第一节点或第二节点执行的动作,或者,可以用于支持报文传输设备执行上述s801至s807中由第一节点、第二节点或第一中间节点执行的动作。存储模块可以用于支持报文传输设备执行存储程序代码和数据等。通信模块,可以用于报文传输设备与其他设备的通信。
241.其中,处理模块可以是处理器或控制器。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理(digital signal processing,dsp)和微处理器的组合等等。存储模块可以是存储器。通信模块具体可以为射频电路、蓝牙芯片、wi-fi芯片等与其他设备交互的设备。
242.在一个实施例中,当处理模块为处理器,存储模块为存储器,通信模块为通信接口时,本实施例所涉及的报文传输设备可以为具有图2所示结构的通信设备。在一种实现方式中,本报文传输设备中包括的上述各个模块等可以为存储器中存储的计算机程序,并由处理器调用以实现各个模块相应的执行功能。
243.根据以上内容可知,本技术实施例提供的通信系统包括:第一节点和第二节点。该第一节点可以包括图11所示的报文传输设备,该第二节点可以包括图12所示的报文传输设备,
244.示例地,第二节点用于生成检测报文,以及向第一节点发送检测报文。其中,第二节点生成的检测报文携带有第一标识列表,第一标识列表用于指示第二节点到第一节点的第一路径,第一标识列表包括:第一路径上第一中间节点的初始标识。
245.第一节点用于:接收检测报文,获得检测报文的回应报文,以及根据回应报文携带的第二标识列表,发送回应报文。其中,第一节点接收到的检测报文携带有第一标识列表,该第一标识列表用于指示第二节点到第一节点的第一路径,该第一标识列表包括:第一路径上第一中间节点的第一标识;回应报文携带有第二标识列表,第二标识列表是第一节点根据第一标识列表获得的,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识。
246.可选地,检测报文携带有:操作码,操作码用于指示:生成携带有用于指示与第一路径一致且方向相反的标识列表的回应报文;第一节点用于在检测报文携带有操作码时,生成回应报文。
247.可选地,第一标识列表包括:第一路径上多个中间节点的标识;第二标识列表也包括:多个中间节点的标识;多个中间节点的标识在第二标识列表中的排列顺序,与多个中间节点的标识在第一标识列表中的排列顺序相反。
248.可选地,多个中间节点包括:第一路径中除第一节点和第二节点之外的其他节点。
249.可选地,第一节点用于:根据第一标识列表中包括的多个中间节点的标识,按照相反的顺序,获得第二标识列表;之后,再将第二标识列表封装到回应报文中。
250.可选地,检测报文还携带有第二节点的地址,第一节点还用于:在获得回应报文之前,根据第二节点的地址,确定第二节点的标识,回应报文包括:第二节点的标识。
251.可选地,检测报文包括第一srh,第一srh携带有第一标识列表;响应报文包括第二srh,第二srh携带有第二标识列表;或者,检测报文包括第一负载部分,第一负载部分携带有第一标识列表;响应报文包括第二负载部分,第二负载部分携带有第二标识列表。
252.可选地,检测报文为:sbfd报文。
253.可选地,本技术实施例提供的通信系统还包括上述第一路径上的第一中间节点。第一中间节点可以包括图13所示的报文传输设备。
254.示例地,第一中间节点用于:接收检测报文,该检测报文携带有第一标识列表,第一标识列表用于指示第一路径,第一标识列表包括第一中间节点的初始标识。第一中间节点还用于在接收检测报文后,将第一标识列表中的初始标识更新为第一中间节点的第一标识,得到更新后的检测报文,并根据第一标识列表,发送更新后的检测报文。
255.可选地,初始标识包括:第一中间节点的节点标识;第一标识包括:第一中间节点接收检测报文的端口或链路的标识。
256.可选地,检测报文还携带有:第一指示,第一中间节点用于:在检测报文携带有第一指示时,将初始标识更新为第一标识。
257.可选地,第一中间节点还用于:在根据第一标识列表,发送更新后的检测报文之后,接收检测报文的回应报文,并根据回应报文携带的第二标识列表,发送回应报文。其中,
回应报文携带有第二标识列表,第二标识列表用于指示第一节点到第二节点的第二路径,第二标识列表包括第一标识。
258.根据以上内容可知,第一中间节点可以对检测报文进行更新,可选地,第一路径上的第一节点在接收到检测报文后,也可以对该检测报文进行更新。第一节点对检测报文进行更新的过程可以参考上述第一中间节点对检测报文进行更新的过程,本技术实施例在此不做赘述。
259.在这种情况下,第一路径上的第一中间节点和第一节点均可以称为第三节点,该第三节点能够在接收到检测报文后,将第一标识列表中携带的第三节点的初始标识更新为第三节点的第一标识,得到更新后的检测报文,之后再对该更新后的检测报文进行处理。
260.当第三节点是第一节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点根据该更新后的检测报文生成回应报文。当第三节点是第一中间节点时,第三节点对更新后的检测报文进行处理可以包括:第三节点发送该更新后的检测报文。
261.可见,通信系统中的第一中间节点和第二节点中的至少一个节点为:图13所示的报文传输设备所属的第三节点。
262.本技术实施例提供了一种计算机存储介质,所述存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行本技术实施例提供的任一种报文传输方法中由第一节点、第二节点或第一中间节点执行的方法。
263.本技术实施例还提供了一种包含指令的计算机程序产品,当计算机程序产品在报文传输设备上运行时,使得报文传输设备执行本技术实施例提供的任一种报文传输方法中由第一节点、第二节点或第一中间节点执行的方法。
264.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机的可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者包含一个或多个可用介质集成的服务器、数据中心等数据存储装置。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质,或者半导体介质(例如固态硬盘)等。
265.在本技术中,术语“第一”和“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”指一个或多个,“多个”指两个或两个以上,除非另有明确的限定。
266.本技术实施例提供的方法实施例和设备实施例等不同类型的实施例均可以相互参考,本技术实施例对此不做限定。本技术实施例提供的方法实施例操作的先后顺序能够进行适当调整,操作也能够根据情况进行相应增减,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本技术的保护范围之内,因此不再赘述。
267.在本技术提供的相应实施例中,应该理解到,所揭露的系统和设备等可以通过其它的构成方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性或其它的形式。
268.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元描述的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个设备上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
269.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献