一种报文传输方法及装置转让专利

申请号 : CN201610088116.4

文献号 : CN107086924A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张旭东何超刘永杨雪谢博

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

摘要 :

本申请公开了一种报文传输方法及装置,有助于实现溯源到产生路由信息更新报文的源路由器,有助于提升网络维护效率和缩短故障持续时间。该方法包括:第一路由器生成第一路由信息更新报文;所述第一路由器生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;所述第一路由器确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。

权利要求 :

1.一种报文传输方法,其特征在于,该方法包括:

第一路由器生成第一路由信息更新报文;

所述第一路由器生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;

所述第一路由器确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。

2.如权利要求1所述的方法,其特征在于,所述方法还包括:所述第一路由器确定所述第二路由器不具有溯源能力,向所述第二路由器发送所述第一路由信息更新报文。

3.如权利要求1或2所述的方法,其特征在于,所述第一路由器确定与其相邻的第二路由器具有溯源能力,包括:所述第一路由器向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;

所述第一路由器接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。

4.如权利要求1至3任一所述的方法,其特征在于,所述方法还包括:所述第一路由器接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;

所述第一路由器向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。

5.如权利要求4所述的方法,其特征在于,所述第一路由器向所述第三路由器发送第二溯源能力确认报文之后,所述方法还包括:所述第一路由器接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;

所述第一路由器根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。

6.如权利要求1至5任一所述的方法,其特征在于,所述方法还包括:所述第一路由器接收第四路由器发送的第三路由信息更新报文;

所述第一路由器确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;

所述第一路由器向所述第五路由器发送所述第一溯源协助报文。

7.如权利要求1至6任一所述的方法,其特征在于,所述方法还包括:所述第一路由器获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;

所述第一路由器根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。

8.一种报文传输方法,其特征在于,该方法包括:

第二路由器接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;

所述第二路由器确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。

9.如权利要求8所述的方法,其特征在于,所述方法还包括:所述第二路由器确定所述第三路由器不具有溯源能力,向所述第三路由器发送所述第一路由信息更新报文。

10.一种报文传输装置,其特征在于,该装置设于第一路由器,该装置包括:第一报文生成单元,用于生成第一路由信息更新报文;

第二报文生成单元,用于生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;

收发单元,用于确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。

11.如权利要求10所述的装置,其特征在于,所述收发单元还用于:确定所述第二路由器不具有溯源能力,向所述第二路由器发送所述第一路由信息更新报文。

12.如权利要求10或11所述的装置,其特征在于,所述收发单元具体用于:向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;

接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。

13.如权利要求10至12任一所述的装置,其特征在于,所述收发单元还用于:接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;

向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。

14.如权利要求13所述的装置,其特征在于,所述收发单元还用于:接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;

根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。

15.如权利要求10至14任一所述的装置,其特征在于,所述收发单元,用于接收第四路由器发送的第三路由信息更新报文;

第二报文生成单元,用于确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;

所述收发单元,用于向所述第五路由器发送所述第一溯源协助报文。

16.如权利要求10至15任一所述的装置,其特征在于,所述收发单元还用于:获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;

根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。

17.一种报文传输装置,其特征在于,该装置设于第二路由器,该装置包括:接收单元,用于接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;

发送单元,用于确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。

18.如权利要求17所述的装置,其特征在于,所述发送单元还用于:确定所述第三路由器不具有溯源能力,向所述第三路由器发送所述第一路由信息更新报文。

说明书 :

一种报文传输方法及装置

技术领域

[0001] 本申请涉及通信领域,尤其涉及一种报文传输方法及装置。

背景技术

[0002] 随着网络技术的发展,客户对IGP(Interior Gateway Protocol,内部网关协议)的可靠性和稳定性提出了越来越高的要求。IGP协议包括OSPF(Open Shortest-Path First,开放式最短路径优先协议)协议和ISIS(Intermediate-System to Intermediate-System,中间系统到中间系统)协议。其中,OSPF协议将邻居信息以LSA(Link State Advertise,链路状态宣告)发布给全网中的每个节点,以便每个节点进行路由计算。ISIS协议将邻居信息以LSP(Link State Packet,链路状态报文)发布给全网中的每个节点,以便每个节点进行路由计算。为描述方便,将LSA和LSP等信息统称为路由信息更新报文。在路由系统中,每个节点生成的路由信息更新报文都会在整网洪泛,影响整网的每个节点。同时,每个节点收到路由信息更新报文后都会根据路由信息更新报文进行路由信息的更新。
[0003] 目前,OSPF/ISIS协议没有提供足够的与生成路由信息更新报文的源路由器相关的信息,在发生路由震荡时,需要消耗大量的时间确定故障源。举例来说,以支持ISIS协议的路由器为例。ISIS协议为链路状态型路由协议,通过LSP报文来实现全网路由的宣告。每一台路由器收到泛洪的LSP报文后,都要进行校验和的检测。路由器对于校验错误的LSP报文,将删除到达该LSP报文的源路由器的路由,同时产生purge(清除)LSP报文并全网泛洪。该purge LSP报文将通告全网其他路由器,通知校验发生错误的LSP报文的源路由器已经出现异常,路由是不可达的。其他路由器在收到purge LSP报文后,执行的是与上面的路由器同样的操作,从而产生路由震荡。
[0004] 如果一个路由器发生故障或者遭到黑客攻击,可能会产生大量的purge LSP报文并扩散至整个网络,从而造成路由震荡。在发生路由震荡的情况下,无法定位出生成purge LSP报文的路由器,从而无法快速的定位故障源头。

发明内容

[0005] 本申请实施例提供一种报文传输方法及装置,有助于实现溯源到产生路由信息更新报文的源路由器,有助于提升网络维护效率和缩短故障持续时间。
[0006] 本申请实施例提供一种报文传输方法,该方法包括:
[0007] 第一路由器生成第一路由信息更新报文;
[0008] 所述第一路由器生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;
[0009] 所述第一路由器确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。
[0010] 通过上述方法,所述第一路由器在生成所述第一路由信息更新报文的同时或之后,可以生成所述第一溯源报文,有助于接收到所述第一溯源报文的设备实现溯源到产生第一路由信息更新报文的源路由器,有助于提升网络维护效率和缩短故障持续时间。
[0011] 可选的,所述方法还包括:
[0012] 所述第一路由器确定所述第二路由器不具有溯源能力,向所述第二路由器发送所述第一路由信息更新报文。
[0013] 通过上述方法,所述第一路由器在所述第二路由器不具有溯源能力后,不发送第一溯源报文给所述第二路由器,有助于具有溯源能力的路由器与不具有溯源能力的路由器互相兼容,提高设备利用率。
[0014] 可选的,所述第一路由器确定与其相邻的第二路由器具有溯源能力,包括:
[0015] 所述第一路由器向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;
[0016] 所述第一路由器接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。
[0017] 通过上述方法,所述第一路由器能够获知所述第二路由器是否具有溯源能力,有助于具有溯源能力的路由器与不具有溯源能力的路由器互相兼容,提高设备利用率。
[0018] 可选的,所述第一路由器向所述第二路由器发送第一溯源能力协商报文之前,还包括:
[0019] 所述第一路由器确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,则执行向所述第二路由器发送所述第一溯源能力协商报文,所述预设时长为一个周期对应的时长,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。
[0020] 通过上述方法,所述第一路由器可无需频繁向所述第二路由器发送用于询问所述第二路由器是否具有溯源能力的溯源能力协商报文,有助于提高网络效率。
[0021] 可选的,向所述第二路由器发送所述第一溯源报文之后,还包括:
[0022] 所述第一路由器确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0023] 通过上述方法,所述第一路由器能够准确,实时地对所述第二路由器的溯源能力进行更新。
[0024] 可选的,所述方法还包括:
[0025] 所述第一路由器接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;
[0026] 所述第一路由器向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。
[0027] 通过上述方法,第一路由器通过发送第二溯源能力确认报文,通告所述第一路由器具有溯源能力。其中,所述第三路由器是与所述第一路由器相邻的路由器。所述第三路由器可以是与所述第二路由器相同的路由器,所述第三路由器也可以是与所述第二路由器不同的路由器。
[0028] 可选的,所述第一路由器向所述第三路由器发送第二溯源能力确认报文之后,所述方法还包括:
[0029] 所述第一路由器接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;
[0030] 所述第一路由器根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。
[0031] 可选的,所述方法还包括:
[0032] 所述第一路由器接收第四路由器发送的第三路由信息更新报文;
[0033] 所述第一路由器确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0034] 所述第一路由器向所述第五路由器发送所述第一溯源协助报文。
[0035] 通过该方法,不具有溯源能力的所述第四路由器在生成路由信息更新报文后,可通过与其相邻的具有溯源能力的路由器,比如所述第一路由器,生成溯源协助报文,比如所述第一溯源协助报文,有助于不具有溯源能力的路由器被其他路由器快速定位,同时可以使得具有溯源能力的路由器和不具有溯源能力的路由器可以相互兼容。所述第五路由器可以是和所述第二路由器相同的路由器,也可以是和所述第二路由器不同的路由器。所述第四路由器可以是和所述第三路由器相同的路由器,也可以是和所述第三路由器不同的路由器。
[0036] 可选的,所述方法还包括:
[0037] 所述第一路由器接收第四路由器发送的第三路由信息更新报文;
[0038] 所述第一路由器确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0039] 所述第一路由器向所述第五路由器发送所述第一溯源协助报文。
[0040] 通过该方法,所述第一路由器不确定所述第四路由器是否具有溯源能力的情况下,所述第一路由器未接收到来自所述第四路由器的溯源报文之前,可生成所述第一溯源协助报文,有助于不确定是否具有溯源能力的路由器被其他路由器快速定位。所述第五路由器可以是和所述第二路由器相同的路由器,也可以是和所述第二路由器不同的路由器。
[0041] 可选的,所述方法还包括:
[0042] 所述第一路由器获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器;所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0043] 所述第一路由器根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0044] 上述方案中,第一路由器在接收到溯源报文以及溯源协助报文时,优先根据溯源报文确定生成路由信息更新报文的源路由器,从而确定出准确的源路由器。通过该方案,可以使得同一个路由信息更新报文对应的溯源报文和溯源协助报文指示的生成该路由信息更新报文的源路由器不同时,路由器能够准确的确定生成该路由信息更新报文的源路由器,从而使得具有溯源能力的路由器与不具有溯源能力的路由器共存。
[0045] 本申请实施例提供一种报文传输方法,该方法包括:
[0046] 第二路由器接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;
[0047] 所述第二路由器确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。
[0048] 通过上述方法,所述第二路由器在接收到所述第一溯源报文后,确定出所述第一路由器为生成所述第一路由信息更新报文的源路由器。所述第二路由器可以将接收到的所述第一溯源报文转发给与其相邻的具有溯源能力的路由器,有助于实现在整个网络泛洪所述第一溯源报文,使得其他路由器能够精确溯源到产生第一路由信息更新报文的源路由器,提升网络维护效率,缩短故障持续时间。
[0049] 可选的,所述方法还包括:
[0050] 所述第二路由器确定所述第三路由器不具有溯源能力,向所述第三路由器发送所述第一路由信息更新报文。
[0051] 可选的,所述方法还包括:
[0052] 所述第二路由器接收第四路由器发送的第二路由信息更新报文;
[0053] 所述第二路由器确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0054] 所述第二路由器向所述第五路由器发送所述第一溯源协助报文。
[0055] 可选的,所述方法还包括:
[0056] 所述第二路由器接收第四路由器发送的第二路由信息更新报文;
[0057] 所述第二路由器确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0058] 所述第二路由器向所述第五路由器发送所述第一溯源协助报文。
[0059] 可选的,所述方法还包括:
[0060] 所述第二路由器接收到第二溯源协助报文以及第二溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第二溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0061] 所述第二路由器根据所述第二溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0062] 本申请实施例提供一种报文传输装置,该装置设于第一路由器,该装置包括:
[0063] 第一报文生成单元,用于生成第一路由信息更新报文;
[0064] 第二报文生成单元,用于生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;
[0065] 收发单元,用于确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。
[0066] 可选的,所述收发单元还用于:
[0067] 确定所述第二路由器不具有溯源能力,向所述第二路由器发送所述第一路由信息更新报文。
[0068] 可选的,所述收发单元具体用于:
[0069] 向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;
[0070] 接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。
[0071] 可选的,所述收发单元还用于:
[0072] 确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,则执行向所述第二路由器发送所述第一溯源能力协商报文,所述预设时长为一个周期对应的时长,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。
[0073] 可选的,所述收发单元还用于:
[0074] 确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0075] 可选的,所述收发单元还用于:
[0076] 接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;
[0077] 向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。
[0078] 可选的,所述收发单元还用于:
[0079] 接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;
[0080] 根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。
[0081] 可选的,所述收发单元,用于接收第四路由器发送的第三路由信息更新报文;
[0082] 第二报文生成单元,用于确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0083] 所述收发单元,用于向所述第五路由器发送所述第一溯源协助报文。
[0084] 可选的,所述收发单元还用于:
[0085] 获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0086] 根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0087] 本申请实施例提供一种报文传输装置,该装置设于第二路由器,该装置包括:
[0088] 接收单元,用于接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;
[0089] 发送单元,用于确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。
[0090] 可选的,所述发送单元还用于:
[0091] 确定所述第三路由器不具有溯源能力,向所述第三路由器发送所述第一路由信息更新报文。
[0092] 可选的,所述装置还包括报文生成单元;
[0093] 所述接收单元,用于接收第四路由器发送的第二路由信息更新报文;
[0094] 所述报文生成单元,用于确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0095] 所述发送单元,用于向所述第五路由器发送所述第一溯源协助报文。
[0096] 可选的,所述装置还包括报文生成单元:
[0097] 所述接收单元,用于接收第四路由器发送的第二路由信息更新报文;
[0098] 所述报文生成单元,用于确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0099] 所述发送单元,用于向所述第五路由器发送所述第一溯源协助报文。
[0100] 可选的,所述接收单元还用于:
[0101] 接收到第二溯源协助报文以及第二溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第二溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0102] 根据所述第二溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0103] 本申请实施例提供一种报文传输装置,该装置包括处理器、通信接口和用于存储程序的存储器,所述处理器从所述存储器中读取程序对应的指令,执行如下操作:
[0104] 所述处理器生成第一路由信息更新报文;
[0105] 所述处理器生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;
[0106] 所述处理器确定与其相邻的第二路由器具有溯源能力,通过所述通信接口向所述第二路由器发送所述第一溯源报文。
[0107] 可选的,所述处理器还确定所述第二路由器不具有溯源能力,通过所述通信接口向所述第二路由器发送所述第一路由信息更新报文。
[0108] 可选的,所述处理器具体用于:
[0109] 通过所述通信接口向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;
[0110] 通过所述通信接口接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。
[0111] 可选的,所述处理器还用于确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,则通过所述通信接口向所述第二路由器发送所述第一溯源能力协商报文,所述预设时长为一个周期对应的时长,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。
[0112] 可选的,所述处理器还用于确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,通过所述通信接口向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0113] 可选的,所述处理器还用于:
[0114] 通过所述通信接口接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;
[0115] 通过所述通信接口向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。
[0116] 可选的,所述处理器还用于:
[0117] 通过所述通信接口接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;
[0118] 根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。
[0119] 可选的,所述处理器还用于:
[0120] 通过所述通信接口接收第四路由器发送的第三路由信息更新报文;
[0121] 确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0122] 通过所述通信接口向所述第五路由器发送所述第一溯源协助报文。
[0123] 可选的,所述处理器还用于:
[0124] 获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0125] 根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0126] 本申请实施例提供一种报文传输装置,该装置包括处理器、通信接口和用于存储程序的存储器,所述处理器从所述存储器中读取所述程序对应的指令,执行如下操作:
[0127] 通过通信接口接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;
[0128] 确定与其相邻的第三路由器具有溯源能力,通过所述通信接口向所述第三路由器发送所述第一溯源报文。
[0129] 可选的,所述处理器还用于确定所述第三路由器不具有溯源能力,通过所述通信接口向所述第三路由器发送所述第一路由信息更新报文。
[0130] 可选的,所述处理器还用于:
[0131] 通过所述通信接口接收第四路由器发送的第二路由信息更新报文;
[0132] 确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0133] 通过所述通信接口向所述第五路由器发送所述第一溯源协助报文。
[0134] 可选的,所述处理器还用于:
[0135] 通过所述通信接口接收第四路由器发送的第二路由信息更新报文;
[0136] 确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0137] 通过所述通信接口向所述第五路由器发送所述第一溯源协助报文。
[0138] 可选的,所述处理器还用于:
[0139] 通过所述通信接口接收到第二溯源协助报文以及第二溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第二溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0140] 根据所述第二溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。

附图说明

[0141] 图1为本申请实施例提供的一种报文传输方法流程示意图;
[0142] 图2为本申请实施例提供的一种报文传输方法流程示意图;
[0143] 图3为本申请实施例提供的一种报文传输方法流程示意图;
[0144] 图4为本申请实施例提供的一种路由器连接示意图;
[0145] 图5为本申请实施例提供的一种报文传输装置结构示意图;
[0146] 图6为本申请实施例提供的一种报文传输装置结构示意图;
[0147] 图7为本申请实施例提供的一种报文传输装置结构示意图;
[0148] 图8为本申请实施例提供的一种报文传输装置结构示意图。

具体实施方式

[0149] 本申请实施例中,路由器可以为无线路由器,也可以为有线路由器。路由器可以支持OSPF协议、ISIS协议等内部网关协议,在此不再逐一举例说明。
[0150] 本申请实施例中,路由信息更新报文可以为与网络的拓扑结构更新相关且需要在整个网络泛洪的报文。举例来说,路由信息更新报文可以为任意一种类型的LSA报文、任意一种类型的LSP报文等报文,例如,路由器(router)LSA报文、purge LSP报文、purge LSA报文等。
[0151] 基于上面的描述,如图1所示,为本申请实施例提供一种报文传输方法流程示意图。
[0152] 参见图1,该方法包括:
[0153] S101:第一路由器生成第一路由信息更新报文。
[0154] S102:所述第一路由器生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器。
[0155] S103:所述第一路由器确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。
[0156] S104:第二路由器接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器。
[0157] S105:所述第二路由器确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。
[0158] S101中,所述第一路由信息更新报文可以为LSA报文、LSP报文等报文。
[0159] 举例来说,第一路由器确定与其相邻的路由器中新增了一个路由器,即网络拓扑发生了改变,则所述第一路由器生成LSA报文或LSP报文。所述第一路由器向其所处的整个网络泛洪所述LSA报文或所述LSP报文,用于向其他路由器通知所述第一路由器相邻的路由器中新增了一个路由器。
[0160] 再举例来说,若第一路由信息更新报文为LSP报文,则所述第一路由器确定其所存储的LSP报文中存在超过生存期的LSP报文,所述第一路由器可以将超过生存期的LSP报文的剩余生存时间置为0,并将该生存时间置0的LSP报文向所述第一路由器所处的整个网络泛洪,用于向其他路由器通知生存时间置0的LSP报文。接收到所述生存时间置0的LSP报文的路由器可将其从存储的LSP报文中删除。
[0161] 所述第一路由器也可以在其他情况下生成所述第一路由信息更新报文并向整个网络泛洪第一路由信息更新报文,在此不再逐一举例说明。
[0162] S102中,所述第一路由器生成了所述第一路由信息更新报文之后,或者,所述第一路由器生成了所述第一路由信息更新报文的同时,所述第一路由器可以生成所述第一溯源报文。
[0163] 所述第一溯源报文能够指示出生成第一路由信息更新报文的源路由器,所述第一溯源报文可以包括以下信息中的一种或多种:源路由器标识(identification,ID)、源路由器的名称、源路由器的IP(Internet Protocol,互联网协议)地址、第一路由信息更新报文的ID和第一路由信息更新报文的序列号。所述第一溯源报文还可以包括其他信息,在此不再赘述。所述源路由器为生成所述第一路由信息更新报文的路由器。所述源路由器ID用于标识生成所述第一路由信息更新报文的源路由器。
[0164] 举例来说,若所述第一路由信息更新报文为LSA报文,则所述第一路由器生成的第一溯源报文中可以包括第一信息和第二信息。所述第一信息包括所述第一路由器的路由器标识、所述第一路由器的名称和所述第一路由器的IP地址中的至少一种。所述第二信息包括所述LSA报文的ID和所述LSA报文的序列号中的至少一种。
[0165] 举例来说,若第一路由信息更新报文为LSP报文,则所述第一路由器生成的第一溯源报文中可以包括第一信息和第二信息。所述第一信息包括所述第一路由器的路由器标识、所述第一路由器的名称和所述第一路由器的IP地址中的至少一种。所述第二信息包括所述LSP报文的ID和所述LSP报文的序列号中的至少一种。
[0166] 可选的,本申请实施例中,第一路由器生成的第一溯源报文使用的协议可以为UDP(User Datagram Protocol,用户数据报协议)。同时接收和发送第一溯源报文的端口可以为现有路由器中对UDP协议关闭的端口,例如1068、1092等。本申请实施例中,第一路由器可以将接收和发送第一溯源报文的端口设置为对UDP协议打开,从而能够接收到采用UDP协议的第一溯源报文。同时,由于不具有溯源能力的路由器未将接收和发送第一溯源报文的端口打开,从而无法接收到采用UDP协议的第一溯源报文。
[0167] 需要说明的是,本申请实施例中,溯源报文是需要在整个网络中泛洪的报文。具体的,溯源报文中可以包括泛洪指示信息,该泛洪指示信息用于指示接收到该溯源报文的路由器需要将该溯源报文转发给与其相邻的路由器中具有溯源能力的路由器。
[0168] 举例来说,第一溯源报文中包括泛洪指示信息,所述第二路由器具有溯源能力。所述第二路由器接收到所述第一路由器发送的所述第一溯源报文之后,所述第二路由器根据所述第一溯源报文中泛洪指示信息的指示,将所述第一溯源报文转发给与所述第二路由器相邻的路由器中具有溯源能力的路由器。
[0169] S103中,所述第一路由器确定所述第二路由器具有溯源能力后,可以在向所述第二路由器发送所述第一溯源报文的同时,之前或之后,向所述第二路由器发送第一路由信息更新报文。本申请实施例中对第一溯源报文和第一路由信息更新报文的发送顺序不进行限定。
[0170] 所述第一路由器若确定所述第二路由器不具有溯源能力,可以向所述第二路由器发送所述第一路由信息更新报文,而不发送所述第一溯源报文。
[0171] 需要说明的是,本申请实施例中,与所述第一路由器相邻的路由器可以是与所述第一路由器直接连接的下一跳路由器,或者是所述第一路由器的路由转发表中所述第一路由器的下一跳路由器。
[0172] 需要说明的是,本申请实施例中,溯源能力可以是能够生成或处理溯源报文或溯源协助报文的能力,即溯源能力包括:生成溯源报文的能力、生成溯源协助报文的能力、处理所述溯源报文的能力和处理所述溯源协助报文的能力中的一种或多种。举例来说,具有溯源能力的路由器能够执行下述一种或多种操作:生成溯源报文、接收溯源报文、解析溯源报文、发送溯源报文、生成溯源协助报文、接收溯源协助报文、解析溯源协助报文和发送溯源协助报文。
[0173] 本申请实施例中,所述第一路由器可以通过向所述第二路由器发送溯源协商报文来确定第二路由器是否具有溯源能力。具体的,所述第一路由器向所述第二路由器发送所述第一溯源能力协商报文,并在接收到所述第二路由器根据所述第一溯源能力协商报文返回的第二溯源能力确认报文后,确定所述第二路由器具有溯源能力。所述第一路由器若确定没有接收到所述第二路由器返回的所述第一溯源能力确认报文,则确定所述第二路由器不具有溯源能力。
[0174] 可选的,所述第一路由器向所述第二路由器发送所述第一溯源能力协商报文之后,所述第一路由器若确定在预设时长内未接收到所述第二路由器返回的所述第一溯源能力确认报文,则可以重新发送所述第一溯源能力协商报文。其中,预设时长可以根据实际情况确定,例如,所述预设时长可以为30秒。
[0175] 可选的,所述第一路由器重新向所述第二路由器发送所述第一溯源能力协商报文之前,可以先判断向所述第二路由器发送所述第一溯源能力协商报文的次数是否大于重传次数的阈值。所述第一路由器若确定向所述第二路由器发送所述第一溯源能力协商报文的次数小于或等于重传次数的阈值,则可以再次向所述第二路由器发送所述第一溯源能力协商报文。所述第一路由器若确定向所述第二路由器发送所述第一溯源能力协商报文的次数大于所述重传次数的阈值,且确定没有接收到所述第二路由器返回的所述第一溯源能力确认报文,则确定所述第二路由器不具有溯源能力。其中,所述重传次数的阈值可以根据实际情况确定,例如,重传次数的阈值可以为2。
[0176] 本申请实施例中,溯源能力确认报文可以为ACK(acknowledgement,确认)报文,即所述第一溯源能力确认报文为第一ACK报文。接收到ACK报文的路由器就可以确定发送该ACK报文的路由器具有溯源能力。
[0177] 本申请实施例中,溯源能力确认报文中还可以包括溯源能力确认信息,溯源能力确认信息用于指示发送该溯源能力确认报文的路由器具有溯源能力。例如,所述第一溯源能力确认报文中的溯源能力确认信息用于指示所述第二路由器具有溯源能力。
[0178] 可选的,本申请实施例中,所述第一路由器在向所述第二路由器发送所述第一溯源能力协商报文的同时,还可以通过所述第一溯源能力协商报文向所述第二路由器指示出所述第一路由器具有溯源能力。举例来说,所述第一溯源能力协商报文中可以包括溯源能力指示信息。所述第一溯源能力协商报文中的溯源能力指示信息用于指示第一路由器具有溯源能力。所述第二路由器接收到所述第一溯源能力协商报文后,可以根据所述第一溯源能力协商报文中的溯源能力指示信息确定所述第一路由器具有溯源能力。
[0179] 可选的,本申请实施例中,溯源能力协商报文以及溯源能力确认报文使用的协议可以为UDP。同时接收和发送溯源能力协商报文或者溯源能力的端口可以为现有路由器中对UDP协议关闭的端口,例如1068、1092等。本申请实施例中,具有溯源能力的路由器可以将接收和发送溯源能力协商报文或者溯源能力的端口设置为对UDP协议打开,从而能够接收到采用UDP协议的溯源能力协商报文或者溯源能力。同时,由于不具有溯源能力的路由器未将接收和发送溯源能力协商报文或者溯源能力的端口打开,从而无法接收到采用UDP协议的溯源能力协商报文或者溯源能力。
[0180] 举例来说,所述第一路由器通过对UDP协议关闭的端口,向所述第二路由器发送采用UDP协议的第一溯源能力协商报文。若第二路由器不具有溯源能力,则第二路由器无法接收到第一溯源能力协商报文,从而无法向第一路由器返回第一溯源能力确认报文。
[0181] 可选的,本申请实施例中,具有溯源能力的路由器还可以向与其相邻的路由器发送去使能溯源能力报文。去使能溯源能力报文用于指示发送该去使能溯源能力报文的路由器暂停支持溯源能力。
[0182] 结合上面的描述,本申请实施例中,第一路由器可能会接收到第二路由器发送的第一去使能溯源能力报文,第一去使能溯源能力报文用于指示第二路由器暂停支持溯源能力。此时,第一路由器确定第二路由器暂停支持溯源能力,从而将第二路由器确定为不具有溯源能力的路由器。相应的,第一路由器可以向第二路由器发送第二去使能溯源能力报文,第二去使能溯源能力报文用于指示第一路由器暂停支持溯源能力。第二路由器接收到所述第二去使能溯源能力报文之后,确定第一路由器暂停支持溯源能力,从而将第一路由器确定为不具有溯源能力的路由器。
[0183] 通过上述方法,可以使得具有溯源能力的路由器在处于高负荷运行时,暂停支持溯源能力,从而减轻路由器的负荷。
[0184] 本申请实施例中,所述第一路由器可以在生成所述第一溯源报文之后,判断上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长是否超过预设时长,若是,则执行向所述第二路由器发送所述第一溯源能力协商报文。其中,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。所述预设时长可以为一个周期对应的时长,一个周期可以根据实际情况确定,例如,可以为
3600秒。
[0185] 所述第一路由器若确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长未超过预设时长,则可以根据上个周期确定出的所述第二路由器的溯源能力状态确定所述第二路由器是否具有溯源能力。具体的,所述第一路由器若确定上个周期通过发送所述第三溯源能力协商报文确定所述第二路由器具有溯源能力,则确定所述第二路由器具有溯源能力,否则确定所述第二路由器不具有溯源能力。
[0186] 可选的,所述第一路由器向所述第二路由器发送所述第一溯源报文之后,如果确定上个周期向所述第二路由器发送所述第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0187] 通过上述方法,所述第一路由器能够实时地对所述第二路由器的溯源能力进行更新,从而准确的确定所述第二路由器是否具有溯源能力。
[0188] 相应的,所述第一路由器还可能接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力。所述第一路由器可以向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。当然,如果所述第一路由器没有溯源能力,则不向所述第三路由器发送所述第二溯源能力确认报文。所述第三路由器未收到所述第二溯源能力确认报文,确定所述第一路由器不具有溯源能力。其中,所述第三路由器是与所述第一路由器相邻的路由器。所述第三路由器可以是与所述第二路由器相同的路由器,所述第三路由器也可以是与所述第二路由器不同的路由器。
[0189] 本申请实施例中,所述第一路由器向所述第三路由器发送所述第二溯源能力确认报文之后,所述第一路由器还可能会接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器。所述第一路由器从而可以根据所述第二溯源报文确定生成所述第二路由信息更新报文的源路由器。可选地,所述第一路由器接收到所述第二路由信息更新报文后,可以根据所述第二路由信息更新报文进行路由信息更新。所述第一路由器还可以根据所述第二溯源报文确定生成所述第二路由信息更新报文的源路由器。其中,所述第二溯源报文是所述第三路由器确定所述第一路由器具有溯源能力之后发送的。
[0190] 相应的,所述第一路由器还可以将接收到的所述第二溯源报文转发给与其相邻的路由器中具有溯源能力的路由器。
[0191] 可选的,本申请实施例中,所述第一路由器还可以在接收到与其相邻的路由器发送的路由信息更新报文后,生成指示生成该路由信息更新报文的源路由器的溯源协助报文。下面分不同场景详细描述。
[0192] 一种可能的场景中,所述第一路由器接收第四路由器发送的第三路由信息更新报文。所述第一路由器接收到所述第三路由信息更新报文之后,若所述第一路由器确定与其相邻的第五路由器具有溯源能力,则生成第一溯源协助报文并向所述第五路由器发送所述第一溯源协助报文。其中,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器。所述第四路由器可以是和第三路由器相同的路由器,也可以是和所述第三路由器不同的路由器。所述第五路由器可以是和所述第二路由器相同的路由器,也可以是和所述第二路由器不同的路由器。
[0193] 可选的,所述第一路由器接收到所述第四路由器发送的所述第三路由信息更新报文之后。若所述第一路由器确定与所述第一路由器相邻的路由器均不具有溯源能力,则所述第一路由器可以不生成第一溯源协助报文,而是将第三路由信息更新报文转发给与其相邻的路由器。
[0194] 通过该方法,所述第一路由器可以在未接收到来自所述第四路由器的溯源报文之前,生成所述第一溯源协助报文,有助于不确定是否具有溯源能力的路由器被其他路由器快速定位。
[0195] 另一种可能的场景中,所述第一路由器可能会接收所述第四路由器发送的所述第三路由信息更新报文。所述第一路由器接收到所述第三路由信息更新报文之后,若所述第一路由器确定所述第四路由器不具有溯源能力且确定与其相邻的所述第五路由器具有溯源能力,则可以生成所述第一溯源协助报文。所述第一路由器生成所述第一溯源协助报文后,向所述第五路由器发送所述第一溯源协助报文。其中,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器。
[0196] 可选的,所述第一路由器接收到所述第四路由器发送的所述第三路由信息更新报文之后,若所述第一路由器确定所述第四路由器不具有溯源能力且确定与所述第一路由器相邻的路由器均不具有溯源能力,则可以不生成所述第一溯源协助报文,而是将所述第三路由信息更新报文转发给与其相邻的路由器。
[0197] 通过上述方法,不具有溯源能力的所述第四路由器在生成路由信息更新报文后,可通过与其相邻的具有溯源能力的路由器,比如所述第一路由器,生成溯源协助报文,比如所述第一溯源协助报文,有助于不具有溯源能力的路由器被其他路由器快速定位,同时可以使得具有溯源能力的路由器和不具有溯源能力的路由器可以相互兼容。
[0198] 需要说明的是,所述第一路由器确定所述第四路由器、所述第五路由器等路由器是否具有溯源能力的方法和所述第一路由器确定所述第二路由器是否具有溯源能力的方法相同,在此不再赘述。
[0199] 可选的,所述第一路由器在生成所述第一溯源协助报文之后,向所述第五路由器发送第一溯源协助报文之前,判断上个周期向所述第五路由器发送第五溯源能力协商报文的时刻至生成所述第一溯源协助报文的时刻之间的时长是否超过预设时长,若是,则执行向所述第五路由器发送第六溯源能力协商报文。其中,第五溯源能力协商报文以及第六溯源能力协商报文均用于询问所述第五路由器是否具有溯源能力。
[0200] 所述第一路由器若确定上个周期向所述第五路由器发送所述第五溯源能力协商报文的时刻至生成所述第一溯源协助报文的时刻之间的时长未超过预设时长,则可以根据上个周期确定出的所述第五路由器的溯源能力状态确定第五路由器是否具有溯源能力。具体的,所述第一路由器若确定上个周期通过发送所述第五溯源能力协商报文确定所述第五路由器具有溯源能力,则确定所述第五路由器具有溯源能力,否则确定所述第五路由器不具有溯源能力。
[0201] 可选的,所述第一路由器向所述第五路由器发送所述第一溯源协助报文之后,如果所述第一路由器确定上个周期向所述第五路由器发送所述第五溯源能力协商报文的时刻至生成所述第一溯源协助报文的时刻之间的时长超过预设时长,则向所述第五路由器发送第七溯源能力协商报文,所述第七溯源能力协商报文用于询问所述第五路由器是否具有溯源能力。
[0202] 需要说明的是,本申请实施例中,所述第一路由器接收到路由信息更新报文之后,生成的溯源协助报文中可以包括以下信息中的一种或多种:
[0203] 向所述第一路由器发送所述路由信息更新报文的路由器的路由器标识;向所述第一路由器发送所述路由信息更新报文的路由器的名称;向所述第一路由器发送所述路由信息更新报文的路由器的IP地址;生成所述溯源协助报文的路由器的IP地址;生成所述溯源协助报文的路由器的路由器标识;生成所述溯源协助报文的路由器的路由器名称;所述路由信息更新报文的ID;所述路由信息更新报文的序列号。
[0204] 举例来说,第一路由器接收第四路由器发送的第三路由信息更新报文之后,确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力。此时,第一路由器生成的第一溯源协助报文中以下信息中的一种或多种:第一路由器的路由器标识;第一路由器的名称;第一路由器的IP地址;第四路由器的路由器标识;第四路由器的名称;
第四路由器的IP地址;第三路由信息更新报文的ID;第三路由信息更新报文的序列号。
[0205] 当然,溯源协助报文中还可以有其他信息,在此不再赘述。
[0206] 需要说明的是,本申请实施例中,溯源协助报文是需要在整个网络中泛洪的报文。溯源协助报文中可以包括泛洪指示信息,所述泛洪指示信息用于指示接收到所述溯源协助报文的路由器将所述溯源协助报文转发给与其相邻的路由器中具有溯源能力的路由器。
[0207] 相应的,溯源协助报文也可以是UDP报文,同时接收和发送溯源协助报文的端口为现有路由器中对UDP协议关闭的端口,例如1068、1092等。本申请实施例中,具有溯源能力的路由器将接收和发送溯源协助报文的端口设置为对UDP协议打开,从而使得不具有溯源能力的路由器无法接收到溯源协助报文等报文。
[0208] 举例来说,所述第二路由器具有溯源能力。所述第二路由器接收到所述第一路由器发送的所述第一溯源协助报文之后,将所述第一溯源协助报文转发给与其相邻的路由器中具有溯源能力的路由器。
[0209] 上述方案中,所述第一路由器在接收到与其相邻的所述第四路由器发送所述的第三路由信息更新报文之后,若所述第一路由器确定发送该第三路由信息更新报文的第四路由器不具有溯源能力之后,可以生成一个与该第三路由信息更新报文对应的第一溯源协助报文。该第一溯源协助报文指示出第四路由器为生成该路由信息更新报文的源路由器。所述第一路由器能够替不具有溯源能力的第四路由器生成与所述第三路由信息更新报文对应的第一溯源协助报文,使得不具有溯源能力的第四路由器在发送所述第三路由信息更新报文时被其他路由器快速定位,有助于具有溯源能力的路由器和不具有溯源能力的路由器可以相互兼容。
[0210] 本申请实施例中,为了准确确定生成路由信息更新报文的源路由器,路由器可以优先以溯源报文所指示的源路由器为准。
[0211] 具体的,所述第一路由器获得第二溯源协助报文以及第三溯源报文。所述所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器;所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器。所述第一路由器根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0212] 举例来说,路由器A接收路由器B发送的路由信息更新报文L1以及溯源协助报文M1,其中,所述溯源协助报文M1用于指示路由器C为生成所述路由信息更新报文L1的源路由器。同时,路由器A还接收到路由器D发送的路由信息更新报文L1以及溯源报文M2,其中,所述溯源报文M2用于指示路由器D为生成所述路由信息更新报文L1的源路由器。此时,路由器A可以根据溯源报文M2确定路由器D为生成路由信息更新报文L1的源路由器,从而确定出准确的源路由器。
[0213] 上述方案中,所述第一路由器在接收到同一个路由信息更新报文对应的溯源报文以及溯源协助报文时,优先根据所述溯源报文确定生成所述路由信息更新报文的源路由器。通过该方案,溯源报文和溯源协助报文指示的生成同一个路由信息更新报文的源路由器不同时,接收到该路由信息更新报文的路由器能够准确的确定生成该路由信息更新报文的源路由器,从而使得具有溯源能力的路由器与不具有溯源能力的路由器共存。
[0214] S104中,所述第二路由器还可以根据所述第一溯源报文确定所述第一路由器是生成所述第一路由信息更新报文的源路由器。可选地,所述第二路由器还可能接收到所述第一路由器发送的所述第一路由信息更新报文,从而可以根据所述第一路由信息更新报文进行路由信息更新。
[0215] S105中,所述第二路由器在确定所述第三路由器具有溯源能力之后,还可以将接收到的所述第一路由信息更新报文转发给所述第三路由器。
[0216] 可选的,所述第二路由器在确定所述第三路由器不具有溯源能力之后,可以向所述第三路由器发送所述第一路由信息更新报文。
[0217] 所述第二路由器还可以接收所述第一路由器发送的第一溯源能力协商报文,并向所述第一路由器返回所述第一溯源能力确认报文。这样,所述第一路由器能够根据所述第一溯源能力确认报文,确定所述第二路由器具有溯源能力。
[0218] 当然,所述第二路由器也可以向所述第一路由器发送溯源能力协商报文,来获知所述第一路由器是否具有溯源能力。
[0219] 第二路由器的其他功能可以参考S101至S103中的描述,在此不再赘述。
[0220] 下面通过具体的实施例描述上面的方法流程。
[0221] 如图2所示,为本申请实施例提供的一种报文传输方法流程示意图。
[0222] S201:第一路由器生成第一路由信息更新报文。
[0223] S202:所述第一路由器生成第一溯源报文。
[0224] S203:所述第一路由器确定与其相邻的第二路由器是否具有溯源能力,若是则执行S204,否则执行S205。
[0225] 所述第一路由器可以在生成所述第一溯源报文之后,通过向所述第二路由器发送溯源能力协商报文来确定所述第二路由器是否具有溯源能力。
[0226] S204:所述第一路由器向所述第二路由器发送所述第一路由信息更新报文以及所述第一溯源报文。
[0227] S205:所述第一路由器向所述第二路由器发送所述第一溯源报文。
[0228] 可选的,S204或S205之后,本申请实施例提供的方法还可包括S206:所述第一路由器判断上个周期向所述第二路由器发送溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长是否超过预设时长,若是则执行S207;否则执行S208。
[0229] S207:所述第一路由器向所述第二路由器发送所述溯源能力协商报文,从而对所述第二路由器的溯源能力进行更新。
[0230] S208:结束。
[0231] 如图3所示,为本申请实施例提供的一种报文传输方法流程示意图。
[0232] S301:第一路由器接收第三路由器发送的第三路由信息更新报文。
[0233] S302:所述第一路由器判断所述第三路由器是否具有溯源能力,若否,则执行S303,否则执行S304。
[0234] 所述第一路由器可以在接收到所述第三路由信息更新报文之后,通过向所述第三路由器发送所述溯源能力协商报文来确定所述第三路由器是否具有溯源能力。
[0235] S303:所述第一路由器生成第一溯源协助报文,之后执行S304。
[0236] 所述第一溯源协助报文用于指示所述第三路由器为生成所述第三路由信息更新报文的源路由器。
[0237] S304:所述第一路由器判断上个周期向所述第三路由器发送溯源能力协商报文的时刻至接收所述第三路由信息更新报文的时刻之间的时长是否超过预设时长,若是执行S305;否则执行S306。
[0238] S305:所述第一路由器向所述第二路由器发送所述溯源能力协商报文,从而对所述第二路由器的溯源能力进行更新。
[0239] S306:结束。
[0240] 如图4所示,为本申请实施例提供的一种路由器连接示意图。
[0241] 图4中包括8个路由器,分别为路由器A至路由器H。其中,路由器A与路由器B相邻。路由器B分别与路由器A、路由器C和路由器D相邻。路由器C分别与路由器B和路由器E相邻。
路由器D分别与路由器B和路由器F相邻。路由器E分别与路由器C和路由器G相邻。路由器F分别与路由器D和路由器G相邻。路由器G分别与路由器E、路由器F和路由器H相邻。路由器H与路由器G相邻。
[0242] 下面分不同场景分别描述。
[0243] 第一种场景:图4中的任何一个路由器均有溯源能力,即路由器A至路由器H均具有溯源能力。任何一个路由器生成路由信息更新报文的同时或之后,所述任何一个路由器会生成一个与该路由信息更新报文对应的溯源报文。图4所示的场景中的其他路由器能够根据所述溯源报文,确定生成该路由信息更新报文的源路由器。
[0244] 第二种场景:图4所示的场景中只有路由器C不具有溯源能力,图4所示的场景中的其他路由器均具有溯源能力。路由器A在生成路由信息更新报文以及与该路由信息更新报文对应的溯源报文后,将所述路由信息更新报文以及所述溯源报文发送给路由器B。所述溯源报文指示路由器A为生成该路由信息更新报文的源路由器。由于路由器C不具有溯源能力,路由器B只将所述路由信息更新报文发送给路由器C。由于路由器D具有溯源能力,路由器B将所述路由信息更新报文以及所述溯源报文发送给路由器D。
[0245] 路由器C接收到所述路由信息更新报文后,将所述路由信息更新报文发送给路由器E。路由器E确定路由器C不具有溯源能力,在接收到来自路由器C的所述路由信息更新报文后,路由器E则生成溯源协助报文,所述溯源协助报文指示路由器C为生成所述路由信息更新报文的源路由器。路由器E向路由器G发送所述溯源能力协助报文。
[0246] 路由器D接收到所述路由信息更新报文以及所述溯源报文后,将所述路由信息更新报文以及所述溯源报文发送给路由器F。路由器F再将所述路由信息更新报文以及所述溯源报文发送给路由器G。
[0247] 路由器G接收路由器E发送的所述路由信息更新报文以及所述溯源协助报文。路由器G还可能会接收到来自路由器F的所述路由信息更新报文以及所述溯源报文。此时,路由器G会优先根据所述溯源报文,确定生成所述路由信息更新报文的源路由器为路由器A。
[0248] 第三种场景:图4所示的场景中路由器C和路由器D不具有溯源能力,图4所示的场景中的其他路由器均具有溯源能力。路由器A在生成路由信息更新报文以及与该路由信息更新报文对应的溯源报文后,将所述路由信息更新报文以及所述溯源报文发送给路由器B。该溯源报文指示路由器A为生成该路由信息更新报文的源路由器。由于路由器C和路由器D不具有溯源能力,路由器B只将所述路由信息更新报文发送给路由器C和路由器D。路由器C将路由器A生成的路由信息更新报文转发给路由器E。路由器E确定路由器C不具有溯源能力,在接收到路由器C发送的所述路由信息更新报文后,路由器E生成一个与该路由信息更新报文对应的第一溯源协助报文。该第一溯源协助报文指示路由器C为生成该路由信息更新报文的源路由器。路由器D将路由器A生成的路由信息更新报文转发给路由器F。路由器F确定路由器D不具有溯源能力,在接收到路由器D发送的所述路由信息更新报文后,路由器F生成一个与该路由信息更新报文对应的第二溯源协助报文。该第二溯源协助报文指示路由器D为生成该路由信息更新报文的源路由器。路由器G接收到路由器E发送的所述路由信息更新报文以及所述第一溯源协助报文。路由器G还可接收到路由器F发送的路由信息更新报文以及所述第二溯源协助报文。路由器G会根据所述第一溯源协助报文,确定所述路由信息更新报文对应的源路由器为路由器C。路由器G会根据所述第二溯源协助报文,确定所述路由信息更新报文对应的源路由器为路由器D。路由器G可再根据路由器C或路由器D,确定发送该路由信息更新报文的源路由器为路由器B。路由器G可进一步根据路由器B发送的所述第二溯源协助报文,确定发送该路由信息更新报文的源路由器为路由器A。
[0249] 基于相同的技术构思,本申请实施例还提供一种报文传输装置,该报文传输装置可执行上述方法实施例。
[0250] 如图5所示,为本申请实施例提供一种报文传输装置结构示意图,该装置包括:
[0251] 第一报文生成单元501,用于生成第一路由信息更新报文;
[0252] 第二报文生成单元502,用于生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;
[0253] 收发单元503,用于确定与其相邻的第二路由器具有溯源能力,向所述第二路由器发送所述第一溯源报文。
[0254] 可选的,所述收发单元503还用于:
[0255] 确定所述第二路由器不具有溯源能力,向所述第二路由器发送所述第一路由信息更新报文。
[0256] 可选的,所述收发单元503具体用于:
[0257] 向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;
[0258] 接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。
[0259] 可选的,所述收发单元503还用于:
[0260] 确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,则执行向所述第二路由器发送所述第一溯源能力协商报文,所述预设时长为一个周期对应的时长,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。
[0261] 可选的,所述收发单元503还用于:
[0262] 确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0263] 可选的,所述收发单元503还用于:
[0264] 接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;
[0265] 向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。
[0266] 可选的,所述收发单元503还用于:
[0267] 接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;
[0268] 根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。
[0269] 可选的,所述收发单元503,用于接收第四路由器发送的第三路由信息更新报文;
[0270] 第二报文生成单元502,用于确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0271] 所述收发单元503,用于向所述第五路由器发送所述第一溯源协助报文。
[0272] 可选的,所述收发单元503还用于:
[0273] 获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0274] 根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0275] 基于相同的技术构思,本申请实施例还提供一种报文传输装置,该报文传输装置可执行上述方法实施例。
[0276] 如图6所示,为本申请实施例提供一种报文传输装置结构示意图,该装置包括:
[0277] 接收单元601,用于接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;
[0278] 发送单元602,用于确定与其相邻的第三路由器具有溯源能力,向所述第三路由器发送所述第一溯源报文。
[0279] 可选的,所述发送单元602还用于:
[0280] 确定所述第三路由器不具有溯源能力,向所述第三路由器发送所述第一路由信息更新报文。
[0281] 可选的,所述装置还包括报文生成单元603:
[0282] 所述接收单元601,用于接收第四路由器发送的第二路由信息更新报文;
[0283] 所述报文生成单元603,用于确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0284] 所述发送单元602,用于向所述第五路由器发送所述第一溯源协助报文。
[0285] 可选的,所述装置还包括报文生成单元603:
[0286] 所述接收单元601,用于接收第四路由器发送的第二路由信息更新报文;
[0287] 所述报文生成单元603,用于确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0288] 所述发送单元602,用于向所述第五路由器发送所述第一溯源协助报文。
[0289] 可选的,所述接收单元601还用于:
[0290] 接收到第二溯源协助报文以及第二溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第二溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0291] 根据所述第二溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0292] 基于相同的技术构思,本申请实施例还提供一种报文传输装置,该报文传输装置可执行上述方法实施例。
[0293] 如图7所示,为本申请实施例提供一种报文传输装置结构示意图。
[0294] 该装置包括:处理器701、存储器702和通信接口703。
[0295] 通信接口703可以是有线通信接口,无线通信接口或其组合。有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口例如可以为无线局域网通信接口,蜂窝网络通信接口或其组合。处理器701可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。处理器701还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic array logic,缩写:GAL)或其任意组合。存储器702可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器702也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器702还可以包括上述种类的存储器的组合。
[0296] 存储器702可以用来存储程序。可选地,存储器702还可存储接收到的报文。
[0297] 处理器701从所述存储器702中读取所述程序对应的指令,执行如下操作:
[0298] 生成第一路由信息更新报文;
[0299] 生成第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成所述第一路由信息更新报文的源路由器;
[0300] 确定与其相邻的第二路由器具有溯源能力;
[0301] 通过所述通信接口703,向所述第二路由器发送所述第一溯源报文。
[0302] 可选的,所述处理器701还确定所述第二路由器不具有溯源能力,通过所述通信接口703向所述第二路由器发送所述第一路由信息更新报文。
[0303] 可选的,所述处理器701具体用于:
[0304] 通过所述通信接口703向所述第二路由器发送第一溯源能力协商报文,所述第一溯源能力协商报文用于询问所述第二路由器是否具有溯源能力;
[0305] 通过所述通信接口703接收到所述第二路由器发送的第一溯源能力确认报文后,确定所述第二路由器具有溯源能力,所述第一溯源能力确认报文用于指示所述第二路由器具有溯源能力。
[0306] 可选的,所述处理器701还用于确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,则通过所述通信接口703向所述第二路由器发送所述第一溯源能力协商报文,所述预设时长为一个周期对应的时长,所述第三溯源能力协商报文用于询问所述第二路由器是否具有溯源能力。
[0307] 可选的,所述处理器701还用于确定上个周期向所述第二路由器发送第三溯源能力协商报文的时刻至生成所述第一溯源报文的时刻之间的时长超过预设时长,通过所述通信接口703向所述第二路由器发送第四溯源能力协商报文,所述第三溯源能力协商报文和所述第四溯源能力协商报文均用于询问所述第二路由器是否具有溯源能力。
[0308] 可选的,所述处理器701还用于:
[0309] 通过所述通信接口703接收第三路由器发送的第二溯源能力协商报文,所述第二溯源能力协商报文用于询问所述第一路由器是否具有溯源能力;
[0310] 通过所述通信接口703向所述第三路由器发送第二溯源能力确认报文,所述第二溯源能力确认报文用于指示所述第一路由器具有溯源能力。
[0311] 可选的,所述处理器701还用于:
[0312] 通过所述通信接口703接收所述第三路由器发送的第二路由信息更新报文以及第二溯源报文,所述第二溯源报文用于指示生成所述第二路由信息更新报文的源路由器;
[0313] 根据所述第二溯源报文,确定生成所述第二路由信息更新报文的源路由器。
[0314] 可选的,所述处理器701还用于:
[0315] 通过所述通信接口703接收第四路由器发送的第三路由信息更新报文;
[0316] 确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0317] 通过所述通信接口703向所述第五路由器发送所述第一溯源协助报文。
[0318] 可选的,所述处理器701还用于:
[0319] 获得第二溯源协助报文以及第三溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第三溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0320] 根据所述第三溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0321] 其中,图7中还可以包括总线,总线可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,本申请不再对其进行进一步描述。通信接口提供用于在传输介质上与各种其他设备通信的单元。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
[0322] 基于相同的技术构思,本申请实施例还提供一种报文传输装置,该报文传输装置可执行上述方法实施例。
[0323] 如图8所示,为本申请实施例提供一种报文传输装置结构示意图。
[0324] 该装置包括:处理器801、存储器802和通信接口803。
[0325] 通信接口803可以是有线通信接口,无线通信接口或其组合。有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口例如可以为无线局域网通信接口,蜂窝网络通信接口或其组合。处理器801可以是CPU,NP或者CPU和NP的组合。处理器801还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路ASIC,PLD或其组合。上述PLD可以是CPLD,FPGA,GAL或其任意组合。存储器802可以包括易失性存储器,例如RAM;存储器802也可以包括非易失性存储器,例如ROM,快闪存储器,HDD或SSD;存储器802还可以包括上述种类的存储器的组合。
[0326] 存储器802可以用来存储程序,以及存储接收到的报文。
[0327] 所述处理器从所述存储器802中读取所述程序对应的指令,执行如下操作:
[0328] 通过所述通信接口803接收第一路由器发送的第一溯源报文,所述第一溯源报文用于指示所述第一路由器为生成第一路由信息更新报文的源路由器;
[0329] 确定与其相邻的第三路由器具有溯源能力,通过所述通信接口803向所述第三路由器发送所述第一溯源报文。
[0330] 可选的,所述处理器801还用于确定所述第三路由器不具有溯源能力,通过所述通信接口803向所述第三路由器发送所述第一路由信息更新报文。
[0331] 可选的,所述处理器801还用于:
[0332] 通过所述通信接口803接收第四路由器发送的第二路由信息更新报文;
[0333] 确定所述第四路由器不具有溯源能力且确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0334] 通过所述通信接口803向所述第五路由器发送所述第一溯源协助报文。
[0335] 可选的,所述处理器801还用于:
[0336] 通过所述通信接口803用于接收第四路由器发送的第二路由信息更新报文;
[0337] 确定与其相邻的第五路由器具有溯源能力,生成第一溯源协助报文,所述第一溯源协助报文用于指示所述第四路由器为生成所述第三路由信息更新报文的源路由器;
[0338] 通过所述通信接口803向所述第五路由器发送所述第一溯源协助报文。
[0339] 可选的,可选的,所述处理器801还用于:
[0340] 通过所述通信接口803接收到第二溯源协助报文以及第二溯源报文,所述第二溯源协助报文用于指示第六路由器为生成第四路由信息更新报文的源路由器,所述第二溯源报文用于指示第七路由器为生成所述第四路由信息更新报文的源路由器;
[0341] 根据所述第二溯源报文,确定生成所述第四路由信息更新报文的源路由器为所述第七路由器。
[0342] 其中,图8中还可以包括总线,总线可以包括任意数量的互联的总线和桥,具体由处理器代表的一个或多个处理器和存储器代表的存储器的各种电路链接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,本申请不再对其进行进一步描述。通信接口提供用于在传输介质上与各种其他设备通信的单元。处理器负责管理总线架构和通常的处理,存储器可以存储处理器在执行操作时所使用的数据。
[0343] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0344] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0345] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0346] 尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
[0347] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求的范围之内,则本申请也意图包含这些改动和变型在内。