《一种状态切换方法及路由器.pdf》由会员分享,可在线阅读,更多相关《一种状态切换方法及路由器.pdf(13页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201410743636.5(22)申请日 2014.12.08H04L 12/713(2013.01)(71)申请人 迈普通信技术股份有限公司地址 610041 四川省成都市高新技术开发区九兴大道 16 号(72)发明人 万维威 杨长轩(74)专利代理机构 北京中博世达专利商标代理有限公司 11274代理人 申健(54) 发明名称一种状态切换方法及路由器(57) 摘要本发明实施例提供一种状态切换方法及路由器,涉及通信技术领域,避免终端学习真实 IP 地址导致的终端与网络通信的连续性、可靠性降低的问题。本发明实施例提供的状态切换方法包括 。
2、:第一路由器从备用状态切换为主用状态 ;第一路由器接收第一路由器所处第一 VRRPv3 备份组内的第二路由器发送的通告消息;其中,所述通告消息为 VRRPv3 协议通告消息 ;第一路由器向所述终端发送第一 RA 消息,其中,所述第一 RA 消息包含虚拟 IP 地址、且虚拟 IP 地址的生成时间不为零,以便所述终端学习虚拟 IP 地址,通过虚拟 IP地址对应的虚拟路由器与外部网络进行通信。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书8页 附图3页(10)申请公布号 CN 104486216 A(43)申请公布日 2015.04.01CN 1。
3、04486216 A1/1 页21.一种状态切换方法,其特征在于,包括 :第一路由器从备用状态切换为主用状态 ;所述第一路由器接收所述第一路由器所处第一虚拟路由冗余协议版本 3VRRPv3 备份组内的第二路由器发送的通告消息 ;其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;所述第一路由器向所述终端发送第一 RA 消息,其中,所述第一 RA 消息包含虚拟 IP 地址、且所述虚拟 IP 地址的生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外。
4、部网络进行通信。2.根据权利要求 1 所述的状态切换方法,其特征在于,所述通告消息包含优先级 Priority 字段、且 Priority 字段为零。3.根据权利要求 1 或 2 所述的状态切换方法,其特征在于,所述方法还包括 :所述第一路由器从主用状态切换为初始状态 ;判断所述第一路由器是否接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组 ;若确定所述第一路由器接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组,则不向所述终端发送主用状态切换为初始状态对应的 RA 消息。4.根据权利要求 3 所述的状态切换方法,其特征在于,所述方法还包括 :若确定所述第。
5、一路由器未接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组,则向所述终端发送主用状态切换为初始状态对应的 RA 消息。5.一种第一路由器,其特征在于,包括 :切换单元,用于将第一路由器从备用状态切换为主用状态 ;接收单元,用于接收所述第一路由器所处第一 VRRPv3 备份组内的第二路由器发送的通告消息 ;其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;发送单元,用于向所述终端发送第一 RA 消息,其中,所述第一 RA 消息包含虚拟 IP 地址、且所述虚拟 IP 地址的。
6、生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。6.根据权利要求 5 所述的第一路由器,其特征在于,所述通告消息包含优先级 Priority 字段、且 Priority 字段为零。7.根据权利要求 5 或 6 所述的第一路由器,其特征在于,所述切换单元,还用于将所述第一路由器从主用状态切换为初始状态 ;所述第一路由器还包括 :判断单元,用于判断所述第一路由器是否接入除所述第一 VRRPv3 备份组之外的其他VRRPv3 备份组 ;所述发送单元,还用于若确定所述第一路由器接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3。
7、 备份组,则不向所述终端发送主用状态切换为初始状态对应的 RA 消息。8.根据权利要求 7 所述的第一路由器,其特征在于,所述发送单元,还用于若确定所述第一路由器未接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组,则向所述终端发送主用状态切换为初始状态对应的 RA 消息。权 利 要 求 书CN 104486216 A1/8 页3一种状态切换方法及路由器技术领域0001 本发明实施例涉及通信技术领域,尤其涉及一种状态切换方法及路由器。背景技术0002 虚拟路由冗余协议 ( 英文 :Virtual Router Redundancy Protoco l,缩写 :VRRP)是一种。
8、路由选择协议,有RFC3763规定的版本2(VRRPv2)和RFC5798规定的版本3(VRRPv3)两个版本,它的基本思想是 :将局域网中可以承担网关功能且拥有真实 I P 地址的一组路由器接入到 VRRP 备份组中,形成一台具有虚拟 I P 地址的虚拟路由器,然后 VRRP 备份组中的路由器根据优先级,选举出主用 (Master) 路由器,承担网关功能,备份组内的其他路由器作为备用 (Backup) 路由器,当主用路由器发送故障时,备用路由器取代主用路由器继续履行网关职责,从而保证局域网内的终端不间断、可靠、稳定地通过虚拟路由器与外部网络进行通信。0003 其中,VRRPv3是基于互联网协。
9、议版本6(英文 :Internet Protocol Versi on 6,缩写 :IPv6) 来实现的,在 VRRPv3 协议中,VRRPv3 路由器主要有三种状态 :初始 (init) 状态、主用 (master) 状态以及备用 (backup) 状态,当 VRRPv3 路由器自身状态变化时,VRRPv3 路由器会向本地链接的终端发送相应的路由器通告 ( 英文 :RouterAdverti sement,缩写 RA)消息,使终端根据接收到的 RA 消息学习默认网关。例如,当一备用路由器从 backup 状态切换为 master 状态时,向终端发送虚拟 IP 地址且生存时间不为 0 的 RA。
10、 消息、以及真实 IP 地址且生存时间为 0 的 RA 消息,使终端删除真实 IP 地址对应的默认网关,学习虚拟 IP 地址对应的默认网关 ;当一主用路由器从 master 状态切换为 init 状态时,向终端发送虚拟 IP地址且生存时间为 0 的 RA 消息、以及真实 IP 地址且生存时间不为 0 的 RA 消息,使终端重新学习到真实 IP 地址对应的默认网关,删除虚拟 IP 地址对应的默认网关。0004 由此可知,在一VRRPv3备份组中,若master路由器进行关闭(shutdown)操作(如退出该 VRRPv3 备份组 ),则一 backup 路由器会立马从 backup 状态切换至 。
11、master 状态,并向终端发送虚拟 IP 地址且生存时间不为 0 的 RA 消息、以及真实 IP 地址且生存时间为 0 的RA 消息,使终端删除真实 IP 地址对应的默认网关,学习到虚拟 IP 地址对应的默认网关,通过虚拟路由器进行数据通信。但是,由于路由器在任何状态变化时都会向终端发送相应的RA 消息,此时,若终端在接收到 backup 路由器发送的 RA 消息之后,又接收到 master 路由器从主用状态切换为初始状态发送的 RA 消息,则终端会重新学习到真实 IP 地址对应的默认网关,删除虚拟 IP 地址对应的默认网关,即完全否认 backup 路由器发送的 RA 消息,违背VRRPv。
12、3 协议中主用路由器失效时,由备用路由器工作的规定,将真实 IP 地址对应的路由器设置为默认网关。由于终端在重新设置默认网关时,会有一定的时延和差错,所以,终端与网络通信的连续性、可靠性就会降低。发明内容0005 本发明的实施例提供一种状态切换方法及路由器,以解决现有 VRRPv3 备份组中说 明 书CN 104486216 A2/8 页4路由器状态变化时,发送 RA 消息的时序出错导致的终端在重新设置默认网关时,终端与网络通信的连续性、可靠性降低的问题。0006 为达到上述目的,本发明的实施例采用如下技术方案 :0007 第一方面,本发明实施例提供一种状态切换方法,包括 :0008 第一路由。
13、器从备用状态切换为主用状态 ;0009 所述第一路由器接收所述第一路由器所处第一虚拟路由冗余协议版本 3VRRPv3备份组内的第二路由器发送的通告消息 ;其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;0010 所述第一路由器向所述终端发送第一RA消息,其中,所述第一RA消息包含虚拟IP地址、且所述虚拟 IP 地址的生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。0011 第二方面,本发明实施例提供一种第一路由器,包括 :。
14、0012 切换单元,用于将第一路由器从备用状态切换为主用状态 ;0013 接收单元,用于接收所述第一路由器所处第一 VRRPv3 备份组内的第二路由器发送的通告消息 ;其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;0014 发送单元,用于向所述终端发送第一 RA 消息,其中,所述第一 RA 消息包含虚拟 IP地址、且所述虚拟 IP 地址的生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。0015 由上可知,本发明实施例提供。
15、了一种状态切换方法和路由器,相比与现有技术,第一路由器在接收到第二路由器发送的通告消息后,其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;再向终端发送路由器从备用状态切换到主用状态对应的 RA消息,使终端根据该 RA 消息学习虚拟 IP 地址,通过与虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。如此,保证终端在接收到的第二路由器从主用状态切换至初始状态发送的RA消息之后,再接收到备用路由器从备用状态切换至主用状态发送的RA消息,避免了现有技术中终端在根据接收到的备用路由器从备用状态。
16、切换至主用状态发送的 RA 消息,学习虚拟 IP 地址之后,又根据接收到的主用路由器从主用状态切换至初始状态发送的 RA 消息,删除该虚拟 IP 地址,而导致的终端不再通过虚拟路由器与外部网络进行数据通信,而重新设置真实 IP 地址对应的路由器作为默认网关,导致的终端与网络通信的连续性、可靠性降低的问题。附图说明0016 为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。0017 图 1 为现有技术 V。
17、RRPv3 标准协议模式组网示意图 ;说 明 书CN 104486216 A3/8 页50018 图 2 为本发明实施例提供的一种状态切换方法的流程图 ;0019 图 3 是现有技术 VRRPv3 负载分担的组网示意图 ;0020 图 4 为本发明实施例提供的一种第一路由器 40 的结构图 ;0021 图 4A 为本发明实施例提供的一种第一路由器 40 的结构图。具体实施方式0022 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下。
18、所获得的所有其他实施例,都属于本发明保护的范围。0023 如图1所示,示出了本发明虚拟路由冗余协议版本3(英文:Virtual Router Redundancy Protocol Version 3,缩写 :VRRPv3)状态切换方法的实时环境的组网示意图。在该组网中,路由器 A( 真实 IP 地址为 fe80:2)、路由器 B( 真实 IP 地址为 fe80:3)、路由器C(真实IP地址为fe80:4)联合组成一个VRRPv3备份组1(对应虚拟IP地址为fe80:1的虚拟路由器 1) ;其中,路由器 A 为主用 (master) 路由器,承担转发终端 1、终端 2、终端 3发送的报文的任务。
19、,路由器 B 和路由器 C 均为备用 (backup) 路由器,负责随时接替主用路由器的任务。对于各终端而言,路由器 A 可以向局域网中各终端发送虚拟 IP 地址 fe80:1且生成时间不为零的路由器通告(英文 :Router Adverti sement,缩写RA)消息,使各终端分别学习到该虚拟IP地址,将与该虚拟IP地址对应的虚拟路由器设置为缺省网关,通过该虚拟路由器与外部网络进行通信。0024 当路由器 A 退出该 VRRPv3 备份组变为初始状态时,通常情况下,备用 (backup) 路由器中优先级较高的路由器C会从备用状态切换为主用状态,接替路由器A的工作,并向各个终端发送虚拟IP地。
20、址fe80:1且生成时间不为零的RA,使各终端学习到该虚拟IP地址,将该虚拟路由器设置为缺省网关,仍旧通过该虚拟路由器与外部网络进行通信,例如,如图3 所示,路由器 A 退出 VRRPv3 备份组 1 变为初始状态时,路由器 C 接替路由器 A 的工作成为主用路由器。0025 然而,在某些时候,若各终端在接收到路由器C发送的RA消息之后,又接收到路由器 A 从主用状态切换至初始状态,发送的真实 IP 地址 fe80:2 且生成时间不为零,以及虚拟IP地址fe80:1且生成时间为零的RA消息,各终端会删除该虚拟IP地址fe80:1,学习真实IP地址fe80:2,不再学习到该虚拟IP地址,即不会将。
21、虚拟IP地址fe80:1对应的虚拟路由器1作为默认网关,进而不会通过该虚拟路由器1与外部网络进行通信,使得备用路由器失去了存在价值,违背了 VRRPv3 协议的规定,降低了终端与网络通信的稳定性和可靠性。0026 为此,本发明实施例提供了一种状态切换方法的流程图,如图 2 所示,该方法可以包括 :0027 201、第一路由器从备用状态切换为主用状态。0028 其中,所述第一路由器为所述路由器所处 VRRPv3 备份组内、优选级最高的备用路由器。0029 优选的,第一路由器可以接收所述VRRPv3备份组中,第二路由器(即主用路由器)说 明 书CN 104486216 A4/8 页6在不能提供网关。
22、服务的情况 ( 如上行链路故障或本机故障等原因 ) 下发送的包含优先级(Priority) 字段的 VRRPv3 通告消息 ;比较该 VRRPv3 通告消息中优先级与第一路由器本地配置的优先级大小 ;若第一路由器本地配置的优先级高于第二路由器发送的 VRRPv3 通告消息中的优先级,则第一路由器设置定时器,若在预设时间内未收到优先级字段高于本地配置的优先级的 VRRPv3 通告消息,则所述第一路由器从备用状态切换为主用状态。0030 其中,所述预设时间根据系统需要进行设置,本发明实施例对比不进行限定,通常情况下,将预设时间设置为 (256-Priority)/256)*1s,所述 Priori。
23、ty 为第一路由器本地配置的优先级值。0031 202、所述第一路由器接收所述第一路由器所处第一 VRRPv3 备份组内的第二路由器发送的通告消息,其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息。0032 优选的,所述通告消息可以为包含优先级Priority字段、且Priority字段为零的VRRPv3 协议通告消息,还可以为系统规定的其他用于表示第二路由器已向终端发送主用状态切换为初始状态所对应的 RA 消息。0033 203、所述第一路由器向所述终端发送第一RA消息,其中,所述第一RA。
24、消息包含虚拟 IP 地址、且所述虚拟 IP 地址的生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。0034 其中,需要说明的是,上述方法中,步骤202还可以处于步骤201之前,即第一路由器在没有切换至主用状态之前接收到第二路由器发送的通告消息,待第一路由器从备用状态切换至主用状态之后再响应该通告消息,进行步骤 203。0035 由上可知,本发明实施例提供的状态切换方法中,第一路由器在接收到第二路由器发送的通告消息后,其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为。
25、初始状态所对应的路由器通告 RA 消息 ;再向终端发送路由器从备用状态切换到主用状态对应的RA消息,使终端根据该RA消息学习虚拟 IP 地址,通过与虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。如此,保证终端在接收到的第二路由器从主用状态切换至初始状态发送的 RA 消息之后,再接收到备用路由器从备用状态切换至主用状态发送的 RA 消息,避免了现有技术中终端在根据接收到的备用路由器从备用状态切换至主用状态发送的RA消息,学习虚拟IP地址之后,又根据接收到的主用路由器从主用状态切换至初始状态发送的RA消息,删除该虚拟IP地址,而导致的终端不再通过虚拟路由器与外部网络进行数据通信,而重新设置真。
26、实 IP 地址对应的路由器作为默认网关,导致的终端与网络通信的连续性、可靠性降低的问题。0036 此外,在现有实现中,还可以通过设置多个备份组的方式实现负载分担,即一台路由器可接入多个 VRRPv3 备份组,并配置路由器在各备份组中的优先级,以实现在一些VRRPv3 备份组中作为 master 路由器,在其余 VRRPv3 备份组中作为 backup 路由器。图 3 是现有技术VRRP负载分担的组网示意图,如图3所示,在路由器C成为VRRPv3备份组1(对应虚拟路由器 1) 中的 master 路由器的基础上,为了实现各终端的业务流量在路由器 A、B、C、D、E之间进行负载分担,将路由器C又接。
27、入到VRRPv3备份组2(对应虚拟IP地址为fe80:7的虚拟路由器 2),即将路由器 C 的同一接口同时接入 VRRPv3 备份组 1 和 VRRPv3 备份组 2,说 明 书CN 104486216 A5/8 页7并配置 VRRPv3 备份组 2 中各路由器的优先级,确保路由器 C 和路由器 D 在虚拟路由器 2 中作为 backup 路由器,路由器 E 在虚拟路由器 2 中作为 master 路由器 ;这样,路由器 C、路由器 E 只需分别向终端发送包含虚拟 IP 地址 fe80:1 且生存时间不为零的 RA 消息、虚拟 IP地址 fe80:7 且生存时间不为零的 RA 消息,就可以使终。
28、端学习到虚拟 IP 地址 fe80:1 和虚拟IP地址fe80:7,将局域网内的缺省网关分别设置为虚拟路由器1、虚拟路由器2,就可以实现终端的业务流量在路由器 A、B、C、D、E 之间的负载分担。0037 在图 3 的基础上,按照现有 VRRPv3 协议规定的路由器状态变化时发送 RA 消息的机制,当路由器 C 退出 VRRPv3 备份组 1 变为初始状态时,路由器 C 会向终端发送包含真实IP 地址且真实 IP 地址生存时间不为零、以及虚拟 IP 地址且虚拟 IP 地址且虚拟 IP 地址生存时间为零的 RA 消息,使终端删除虚拟 IP 地址 fe80:1,学习到路由器 C 的真实 IP 地址。
29、fe80:4,进而可以将真实 IP 地址设置为下一跳地址,通过真实 IP 地址对应的路由器 C 与外部网络进行数据通信。0038 然而,由于路由器 C 同时为 VRRPv3 备份组 2 中的备用路由器,这样就会使得终端还可以通过 VRRPv3 备份组 2 中的备用路由器与外部网络进行通信,违背了 VRRPv3 协议中规定的终端通过备份组中的 master 路由器与外部网络进行通信,导致通信出错,降低了终端与外部网络通信的可靠性。0039 为了解决上述问题,进一步的,在图 2 提供的状态切换方法的基础上,所述方法还包括 :0040 所述第一路由器从主用状态切换为初始状态 ;0041 判断所述第一。
30、路由器是否接入除所述第一VRRPv3备份组之外的其他VRRPv3备份组;0042 若确定所述第一路由器接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组,则不向所述终端发送主用状态切换为初始状态对应的 RA 消息。0043 示例性的,所述判断所述第一路由器是否接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组可以包括 :0044 获取所述第一路由器接入所述第一 VRRPv3 备份组的接口的接口号 ;0045 根据所述接口号,查询所述接口号对应的接口结构 ;0046 若所述接口结构包含除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组成员 ;则确。
31、定所述第一路由器还接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组 ;0047 若所述接口结构中只包含所述第一 VRRPv3 备份组,则确定所述第一路由器未接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组。0048 例如,表 1 为路由器 C 的各个接口对应的接口结构,当路由器 C 的接口 2( 已接替原主用路由器 A 工作 ) 退出 VRRPv3 备份组 1 时,路由器 C 会根据表 1,查询接口号 2 对应的接口结构 (VRRPv3 备份组 1、VRRPv3 备份组 2),发现路由器 C 的该接口还接入到 VRRPv3 备份组 2 中,因此确定路由器。
32、 C 还接入除 VRRPv3 备份组 1 之外的其他 VRRPv3 备份组。0049 表10050 接口号 接口结构说 明 书CN 104486216 A6/8 页81 (VRRPv3 备份组 3)2 (VRRPv3 备份组 1、VRRPv3 备份组 2)3 (VRRPv3 备份组 4、VRRPv3 备份组 5)0051 进一步的,若确定所述第一路由器未接入除所述第一 VRRPv3 备份组之外的其他VRRPv3 备份组,则仍采用现有发送 RA 消息的机制,即向所述终端发送主用状态切换为初始状态对应的 RA 消息。0052 如此,当加入其他VRRPv3备份组的主用路由器退出一VRRPv3备份组时。
33、,不向终端发送相应的 RA 消息,使终端不能学习到该路由器的真是 I P 地址,进而不能通过该路由器与外部网络进行通信,避免了终端通过其他 VRRPv3 备份组中的该路由器 ( 备用路由器 ) 与外部网络进行通信。0053 此外,本发明实施例还提供了一种第一路由器 40 的结构图,其中,所述第一路由器为所述路由器所处 VRRPv3 备份组内、优选级最高的备用路由器 ;如图 4 所示,该路由器40 可以包括 :0054 切换单元 401,用于将第一路由器从备用状态切换为主用状态。0055 接收单元 402,用于接收所述第一路由器所处第一 VRRPv3 备份组内的第二路由器发送的通告消息 ;其中,。
34、所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息。0056 优选的,所述通告消息可以为包含优先级Priority字段、且Priority字段为零的VRRPv3 协议通告消息,还可以为系统规定的其他用于表示第二路由器已向终端发送主用状态切换为初始状态所对应的 RA 消息。0057 发送单元403,用于向所述终端发送第一RA消息,其中,所述第一RA消息包含虚拟IP 地址、且所述虚拟 IP 地址的生成时间不为零,以便所述终端学习所述虚拟 IP 地址,通过所述虚拟 IP 地址对应的虚拟路由器与外部网络进行。
35、通信。0058 进一步的,所述切换单元 401,具体用于 :0059 接收所述 VRRPv3 备份组中,第二路由器 ( 即主用路由器 ) 在不能提供网关服务的情况 ( 如上行链路故障或本机故障等原因 ) 下发送的包含优先级 (Priority) 字段的VRRPv3 协议通告消息 ;比较该 VRRPv3 协议通告消息中优先级与第一路由器本地配置的优先级大小 ;若第一路由器本地配置的优先级高于第二路由器发送的 VRRPv3 协议通告消息中的优先级,则第一路由器设置定时器,若在预设时间内未收到优先级字段高于本地配置的优先级的 VRRPv3 协议通告消息,则所述第一路由器从备用状态切换为主用状态。00。
36、60 其中,所述预设时间根据系统需要进行设置,本发明实施例对比不进行限定,通常情况下,将预设时间设置为 (256-Priority)/256)*1s,所述 Priority 为第一路由器本地配置的优先级值。0061 由上可知,本发明实施例提供的第一路由器 40 在接收到第二路由器发送的通告消息后,其中,所述通告消息为 VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的路由器通告 RA 消息 ;再向终端发送路由器从备用状态切换到主用状态对应的 RA 消息,使终端根据该 RA 消息学习虚拟 IP说 明 书CN 104486216 A7/8 。
37、页9地址,通过与虚拟 IP 地址对应的虚拟路由器与外部网络进行通信。如此,保证终端在接收到的第二路由器从主用状态切换至初始状态发送的 RA 消息之后,再接收到备用路由器从备用状态切换至主用状态发送的 RA 消息,避免了现有技术中终端在根据接收到的备用路由器从备用状态切换至主用状态发送的RA消息,学习虚拟IP地址之后,又根据接收到的主用路由器从主用状态切换至初始状态发送的RA消息,删除该虚拟IP地址,而导致的终端不再通过虚拟路由器与外部网络进行数据通信,而重新设置真实 IP 地址对应的路由器作为默认网关,导致的终端与网络通信的连续性、可靠性降低的问题。0062 此外,在现有实现中,还可以通过设置。
38、多个备份组的方式实现负载分担,即一台路由器可接入多个 VRRPv3 备份组,并配置路由器在各备份组中的优先级,以实现在一些VRRPv3 备份组中作为 master 路由器,在其余 VRRPv3 备份组中作为 backup 路由器。图 3 是现有技术VRRP负载分担的组网示意图,如图3所示,在路由器C成为VRRPv3备份组1(对应虚拟路由器 1) 中的 master 路由器的基础上,为了实现各终端的业务流量在路由器 A、B、C、D、E之间进行负载分担,将路由器C又接入到VRRPv3备份组2(对应虚拟IP地址为fe80:7的虚拟路由器 2),即将路由器 C 的同一接口同时接入 VRRPv3 备份组。
39、 1 和 VRRPv3 备份组 2,并配置 VRRPv3 备份组 2 中各路由器的优先级,确保路由器 C 和路由器 D 在虚拟路由器 2 中作为 backup 路由器,路由器 E 在虚拟路由器 2 中作为 master 路由器 ;这样,路由器 C、路由器 E 只需分别向终端发送包含虚拟 IP 地址 fe80:1 且生存时间不为零的 RA 消息、虚拟 IP地址 fe80:7 且生存时间不为零的 RA 消息,就可以使终端学习到虚拟 IP 地址 fe80:1 和虚拟IP地址fe80:7,将局域网内的缺省网关分别设置为虚拟路由器1、虚拟路由器2,就可以实现终端的业务流量在路由器 A、B、C、D、E 之。
40、间的负载分担。0063 在图 3 的基础上,按照现有 VRRPv3 协议规定的路由器状态变化时发送 RA 消息的机制,当路由器 C 退出 VRRPv3 备份组 1 变为初始状态时,路由器 C 会向终端发送包含真实IP 地址且真实 IP 地址生存时间不为零、以及虚拟 IP 地址且虚拟 IP 地址且虚拟 IP 地址生存时间为零的 RA 消息,使终端删除虚拟 IP 地址 fe80:1,学习到路由器 C 的真实 IP 地址fe80:4,进而可以将真实 IP 地址设置为下一跳地址,通过真实 IP 地址对应的路由器 C 与外部网络进行数据通信。然而,由于路由器 C 同时为 VRRPv3 备份组 2 中的备。
41、用路由器,这样就会使得终端还可以通过VRRPv3备份组2中的备用路由器与外部网络进行通信,违背了VRRPv3 协议中规定的终端通过备份组中的 master 路由器与外部网络进行通信,导致通信出错,降低了终端与外部网络通信的可靠性。0064 因此,当所述切换单元,还用于将所述第一路由器从主用状态切换为初始状态时,为了避免出现上述问题,进一步的,如图 4A 所示,所述第一路由器 40,还包括 :0065 判断单元 404,用于判断所述第一路由器是否接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组 ;0066 所述发送单元 403,还用于若确定所述第一路由器接入除所述第一 VRR。
42、Pv3 备份组之外的其他VRRPv3备份组,则不向所述终端发送主用状态切换为初始状态对应的RA消息。0067 示例性的,所述判断单元 404,具体用于 :0068 获取所述第一路由器接入所述第一 VRRPv3 备份组的接口的接口号 ;0069 根据所述接口号,查询所述接口号对应的接口结构 ;0070 若所述接口结构包含除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组成员 ;说 明 书CN 104486216 A8/8 页10则确定所述第一路由器还接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组 ;0071 若所述接口结构中只包含所述第一 VRRPv3 备份组。
43、,则确定所述第一路由器未接入除所述第一 VRRPv3 备份组之外的其他 VRRPv3 备份组。0072 例如,表 1 为路由器 C 的各个接口对应的接口结构,当路由器 C 的接口 2( 已接替原主用路由器 A 工作 ) 退出 VRRPv3 备份组 1 时,路由器 C 会根据表 1,查询接口号 2 对应的接口结构 (VRRPv3 备份组 1、VRRPv3 备份组 2),发现路由器 C 的该接口还接入到 VRRPv3 备份组 2 中,因此确定路由器 C 还接入除 VRRPv3 备份组 1 之外的其他 VRRPv3 备份组。0073 进一步的,所述发送单元 403,还用于若确定所述第一路由器未接入除。
44、所述第一VRRPv3备份组之外的其他VRRPv3备份组,则仍采用现有发送RA消息的机制,即向所述终端发送主用状态切换为初始状态对应的 RA 消息。0074 如此,当加入其他VRRPv3备份组的主用路由器退出一VRRPv3备份组时,不向终端发送相应的RA消息,使终端不能学习到该路由器的真是IP地址,进而不能通过该路由器与外部网络进行通信,避免了终端通过其他 VRRPv3 备份组中的该路由器 ( 备用路由器 ) 与外部网络进行通信。0075 最后应说明的是 :以上实施例仅用以说明本发明的技术方案,而非对其限制 ;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解 :其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换 ;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。说 明 书CN 104486216 A。