Lsp报文快速通告方法以及装置的制造方法

文档序号:9870064阅读:569来源:国知局
Lsp报文快速通告方法以及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种LSP报文快速通告方法以及装置。
【背景技术】
[0002]SPB (Shortest Path Bridge,最短路径桥)网络由骨干网边缘网桥(BEB)、骨干网核心网桥(BCB)等类型的SPB设备以及SPB设备之间的骨干网组成。每个SPB设备在启动后,都会将本地SPB设备所有链路状态信息、SPB设备的MAC (Media Access Control,媒体访问控制)地址、B-VLAN(Backbone-Virtual Local Area Network,骨干网虚拟局域网)以及1-SID (Backbone-Service Instance Identifier,骨干网服务实例编号)的对应关系封装进LSP报文(Link State Protocol链路状态协议),然后传递给SPB网络中的其他SPB设备。当SPB网络中的所有SPB设备将LSP报文传递完成后,各SPB设备会根据收到的各SPB设备的LSP报文进行拓扑计算,得到生成树,并以转发表项的形式下发到SPB设备的端口,以根据该转发表项转发报文。
[0003]当SPB设备的端口状态发生变化时,需要尽快通告给其它节点,通告速度的快慢将直接影响到网络拓扑的收敛速度,若收敛速度较慢则会出现报文丢包严重等情况。
[0004]然而,现有技术中在通告LSP报文时,通常是进行逐跳传递,若将端口状态发生变化的LSP报文扩散至整个SPB网络则需要较长的时间,进而将导致因拓扑收敛速度较慢造成的报文丢包严重的情况。

【发明内容】

[0005]针对现有技术的缺陷,本发明提供了一种LSP报文快速通告方法以及装置。
[0006]本发明提供一种LSP报文快速通告方法,应用于最短路径桥SPB网络中的控制器,SPB网络中还包括SPB设备,其中该方法包括:
[0007]接收SPB网络中的SPB设备发送的LSP报文;
[0008]若根据本地状态信息数据库确定LSP报文内容发生变化,向SPB网络中的其他所有SPB设备发送LSP报文,以使其他所有SPB设备根据LSP报文重新计算转发路径。
[0009]本发明还提供一种LSP报文快速通告装置,应用于最短路径桥SPB网络中的控制器,SPB网络中还包括SPB设备,该装置包括:
[0010]接收单元,用于接收SPB网络中的SPB设备发送的LSP报文;
[0011]发送单元,用于在根据本地状态信息数据库确定LSP报文内容发生变化时,向SPB网络中的其他所有SPB设备发送LSP报文,以使其他所有SPB设备根据LSP报文重新计算转发路径。
[0012]本发明提供的LSP报文快速通告方法以及装置,在SPB设备的端口状态发生变化时,通过为SPB网络设置的控制器将SPB设备的端口状态发生变化的LSP报文通告至SPB网络中的所有SPB设备,进而大幅加快了 LSP报文的通告时间,有效地降低了报文丢包数量。
【附图说明】
[0013]图1是本发明实施例中LSP报文快速通告方法所应用的组网环境示意图;
[0014]图2是本发明实施例中一种LSP报文快速通告方法流程示意图;
[0015]图3是本发明实施例中LSP报文快速通告方法所应用的另一种组网环境示意图;
[0016]图4是本发明实施例中一种LSP报文快速通告装置的逻辑结构示意图;
[0017]图5是本发明实施例中LSP报文快速通告装置所在控制器的硬件架构示意图。
【具体实施方式】
[0018]为使本申请的目的,技术方案及优点更加清楚明白,以下参照附图对本申请方案做进一步的详细说明。
[0019]为了解决现有技术中存在的问题,本发明提供了一种LSP报文快速通告方法以及
目.ο
[0020]图1为本发明LSP报文快速通告方法所应用的组网环境示意图,该组网可以为运行了 SPB协议的SPB网络,该SPB网络中包括控制器、交换机(图1中未示出)以及分别可以与控制器通信的多个SPB设备(例如图1中的SPB1、SPB2、SPB3、SPB4、SPB5以及SPB6),各SPB设备上可以有多个端口(例如SPB2上的Port2、Port3),其中该控制器可以是SDN控制器。
[0021]请参考图2,为本发明提供的LSP报文快速通告方法的处理流程示意图,该LSP报文快速通告方法应用于SPB网络中的控制器,SPB网络中还包括SPB设备。该LSP报文快速通告方法包括以下步骤:
[0022]步骤201,接收SPB网络中的SPB设备发送的LSP报文;
[0023]在SPB设备启动后,SPB设备可以将自身的端口状态信息、邻居SPB设备信息(邻居SPB设备端口状态信息等)以及LSDB信息封装至LSP报文中上送至控制器。初始状态下,在控制器接收到SPB网络中各SPB设备上送的LSP报文后,由于控制器未保存任何SPB设备的LSP报文,控制器可以根据首次接收的SPB设备上送的LSP报文创建状态信息数据库(即LSP信息库),并将接收的各SPB设备发送的LSP报文中携带的端口状态信息、邻居SPB设备信息以及LSDB信息保存至该LSP信息库中。
[0024]接着,控制器将接收的LSP报文通告至SPB网络中的所有SPB设备,以使各SPB设备根据各SPB设备的LSP报文计算SPB网络拓扑。同时,控制器也根据各LSP报文中各SPB设备的端口状态信息、邻居SPB设备信息建立SPB网络拓扑。
[0025]之后,若SPB网络中的任一 SPB设备的端口状态、邻居SPB设备信息以及LSDB信息发生变化,发生变化的SPB设备仍需要主动向控制器上送更新后的LSP报文。控制器在后续接收到SPB设备上送的LSP报文后,可以根据LSP信息库中的各SPB设备的LSP报文进一步检查接收的LSP报文内容是否发生变化。
[0026]其中,LSP报文中还可以包括序列号(Sequence Number),同样地,LSP信息库中的LSP信息也可以相应包括序列号。该序列号用于表征SPB设备发送LSP报文的顺序。
[0027]控制器根据LSP信息库中预存的各SPB设备的LSP报文进一步检查接收的LSP信息内容是否发生变化具体为:
[0028]首先,判断接收的LSP报文的序列号是否大于本地预存的状态信息数据库中与该SPB设备对应的序列号。
[0029]若小于或等于,可能是由于带宽不稳定等因素导致的LSP报文发送延迟,或者其他原因出现的LSP报文重复发送等问题,可以忽略序列号小于或等于LSP信息库中与该SPB设备对应的序列号的LSP报文;
[0030]若大于,说明接收的新的LSP报文可能是内容有更新的LSP报文,或者是SPB设备定期上送的LSP报文,此时可以首先根据LSP报文中的序列号更新本地预存的状态信息数据库中与SPB设备对应的序列号,并进一步判断接收的LSP报文中的端口状态与本地预存的LSP信息库中与SPB设备对应的状态信息是否一致,若一致,确定SPB设备的状态信息未发生变化,否则确定SPB设备的状态信息发生变化。
[0031]例如,控制器根据接收的LSP报文在预存的LSP信息库中查找到与该LSP报文对应的状态信息,若接收的LSP报文中的序列号大于LSP信息库中与该SPB设备对应的序列号,且SPB设备的状态信息与LSP信息库中与该SPB设备对应的状态信息有一项或多项不一致(比如,LSP信息库中保存的该SPB设备的端口状态为开启UP,而新接收的LSP报文中的SPB设备的端口状态为关闭DOWN),可以说明该LSP报文的内容发送变化;
[0032]或者,控制器根据接收的LSP报文在预存的LSP信息库中未查找到与该LSP报文对应的状态信息,可以说明发送该LSP报文的SPB设备为新加入该SPB网络的SPB设备,此时,也可以认为该LSP报文的内容发送变化。
[0033]步骤202,若根据本地状态信息数据库确定LSP报文发生变化,向SPB网络中的其他所有SPB设备发送LSP报文,以使其他所有SPB设备根据LSP报文重新计算转发路径
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1