一种状态切换方法及路由器.pdf

上传人:b*** 文档编号:4075150 上传时间:2018-08-14 格式:PDF 页数:13 大小:1.62MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410743636.5

申请日:

2014.12.08

公开号:

CN104486216A

公开日:

2015.04.01

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04L 12/713申请日:20141208|||公开

IPC分类号:

H04L12/713(2013.01)I

主分类号:

H04L12/713

申请人:

迈普通信技术股份有限公司

发明人:

万维威; 杨长轩

地址:

610041四川省成都市高新技术开发区九兴大道16号

优先权:

专利代理机构:

北京中博世达专利商标代理有限公司11274

代理人:

申健

PDF下载: PDF下载
内容摘要

本发明实施例提供一种状态切换方法及路由器,涉及通信技术领域,避免终端学习真实IP地址导致的终端与网络通信的连续性、可靠性降低的问题。本发明实施例提供的状态切换方法包括:第一路由器从备用状态切换为主用状态;第一路由器接收第一路由器所处第一VRRPv3备份组内的第二路由器发送的通告消息;其中,所述通告消息为VRRPv3协议通告消息;第一路由器向所述终端发送第一RA消息,其中,所述第一RA消息包含虚拟IP地址、且虚拟IP地址的生成时间不为零,以便所述终端学习虚拟IP地址,通过虚拟IP地址对应的虚拟路由器与外部网络进行通信。

权利要求书

权利要求书1.  一种状态切换方法,其特征在于,包括: 第一路由器从备用状态切换为主用状态; 所述第一路由器接收所述第一路由器所处第一虚拟路由冗余协议 版本3VRRPv3备份组内的第二路由器发送的通告消息;其中,所述通 告消息为VRRPv3协议通告消息,用于指示所述第二路由器已向终端发 送所述第二路由器从主用状态切换为初始状态所对应的路由器通告RA 消息; 所述第一路由器向所述终端发送第一RA消息,其中,所述第一RA 消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零,以便 所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚拟路 由器与外部网络进行通信。 2.  根据权利要求1所述的状态切换方法,其特征在于, 所述通告消息包含优先级Priority字段、且Priority字段为零。 3.  根据权利要求1或2所述的状态切换方法,其特征在于,所述 方法还包括: 所述第一路由器从主用状态切换为初始状态; 判断所述第一路由器是否接入除所述第一VRRPv3备份组之外的其 他VRRPv3备份组; 若确定所述第一路由器接入除所述第一VRRPv3备份组之外的其他 VRRPv3备份组,则不向所述终端发送主用状态切换为初始状态对应的 RA消息。 4.  根据权利要求3所述的状态切换方法,其特征在于,所述方法 还包括: 若确定所述第一路由器未接入除所述第一VRRPv3备份组之外的其 他VRRPv3备份组,则向所述终端发送主用状态切换为初始状态对应的 RA消息。 5.  一种第一路由器,其特征在于,包括: 切换单元,用于将第一路由器从备用状态切换为主用状态; 接收单元,用于接收所述第一路由器所处第一VRRPv3备份组内的 第二路由器发送的通告消息;其中,所述通告消息为VRRPv3协议通告 消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用 状态切换为初始状态所对应的路由器通告RA消息; 发送单元,用于向所述终端发送第一RA消息,其中,所述第一RA 消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零,以便 所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚拟路 由器与外部网络进行通信。 6.  根据权利要求5所述的第一路由器,其特征在于, 所述通告消息包含优先级Priority字段、且Priority字段为零。 7.  根据权利要求5或6所述的第一路由器,其特征在于, 所述切换单元,还用于将所述第一路由器从主用状态切换为初始 状态; 所述第一路由器还包括: 判断单元,用于判断所述第一路由器是否接入除所述第一VRRPv3 备份组之外的其他VRRPv3备份组; 所述发送单元,还用于若确定所述第一路由器接入除所述第一 VRRPv3备份组之外的其他VRRPv3备份组,则不向所述终端发送主用状 态切换为初始状态对应的RA消息。 8.  根据权利要求7所述的第一路由器,其特征在于, 所述发送单元,还用于若确定所述第一路由器未接入除所述第一 VRRPv3备份组之外的其他VRRPv3备份组,则向所述终端发送主用状态 切换为初始状态对应的RA消息。

说明书

说明书一种状态切换方法及路由器
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种状态切换方法及 路由器。
背景技术
虚拟路由冗余协议(英文:Virtual Router Redundancy Protoco l, 缩写:VRRP)是一种路由选择协议,有RFC3763规定的版本2(VRRPv2) 和RFC5798规定的版本3(VRRPv3)两个版本,它的基本思想是:将局 域网中可以承担网关功能且拥有真实I P地址的一组路由器接入到VRRP 备份组中,形成一台具有虚拟I P地址的虚拟路由器,然后VRRP备份 组中的路由器根据优先级,选举出主用(Master)路由器,承担网关 功能,备份组内的其他路由器作为备用(Backup)路由器,当主用路 由器发送故障时,备用路由器取代主用路由器继续履行网关职责,从 而保证局域网内的终端不间断、可靠、稳定地通过虚拟路由器与外部 网络进行通信。
其中,VRRPv3是基于互联网协议版本6(英文:Internet Protocol  Versi on 6,缩写:IPv6)来实现的,在VRRPv3协议中,VRRPv3路由 器主要有三种状态:初始(init)状态、主用(master)状态以及备 用(backup)状态,当VRRPv3路由器自身状态变化时,VRRPv3路由器 会向本地链接的终端发送相应的路由器通告(英文:Router Adverti sement,缩写RA)消息,使终端根据接收到的RA消息学习默 认网关。例如,当一备用路由器从backup状态切换为master状态时, 向终端发送虚拟IP地址且生存时间不为0的RA消息、以及真实IP地 址且生存时间为0的RA消息,使终端删除真实IP地址对应的默认网 关,学习虚拟IP地址对应的默认网关;当一主用路由器从master状 态切换为init状态时,向终端发送虚拟IP地址且生存时间为0的RA 消息、以及真实IP地址且生存时间不为0的RA消息,使终端重新学 习到真实IP地址对应的默认网关,删除虚拟IP地址对应的默认网关。
由此可知,在一VRRPv3备份组中,若master路由器进行关闭 (shutdown)操作(如退出该VRRPv3备份组),则一backup路由器 会立马从backup状态切换至master状态,并向终端发送虚拟IP地址 且生存时间不为0的RA消息、以及真实IP地址且生存时间为0的RA 消息,使终端删除真实IP地址对应的默认网关,学习到虚拟IP地址 对应的默认网关,通过虚拟路由器进行数据通信。但是,由于路由器 在任何状态变化时都会向终端发送相应的RA消息,此时,若终端在接 收到backup路由器发送的RA消息之后,又接收到master路由器从主 用状态切换为初始状态发送的RA消息,则终端会重新学习到真实IP 地址对应的默认网关,删除虚拟IP地址对应的默认网关,即完全否认 backup路由器发送的RA消息,违背VRRPv3协议中主用路由器失效时, 由备用路由器工作的规定,将真实IP地址对应的路由器设置为默认网 关。由于终端在重新设置默认网关时,会有一定的时延和差错,所以, 终端与网络通信的连续性、可靠性就会降低。
发明内容
本发明的实施例提供一种状态切换方法及路由器,以解决现有 VRRPv3备份组中路由器状态变化时,发送RA消息的时序出错导致的终 端在重新设置默认网关时,终端与网络通信的连续性、可靠性降低的 问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种状态切换方法,包括:
第一路由器从备用状态切换为主用状态;
所述第一路由器接收所述第一路由器所处第一虚拟路由冗余协议 版本3VRRPv3备份组内的第二路由器发送的通告消息;其中,所述通 告消息为VRRPv3协议通告消息,用于指示所述第二路由器已向终端发 送所述第二路由器从主用状态切换为初始状态所对应的路由器通告RA 消息;
所述第一路由器向所述终端发送第一RA消息,其中,所述第一RA 消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零,以便 所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚拟路 由器与外部网络进行通信。
第二方面,本发明实施例提供一种第一路由器,包括:
切换单元,用于将第一路由器从备用状态切换为主用状态;
接收单元,用于接收所述第一路由器所处第一VRRPv3备份组内的 第二路由器发送的通告消息;其中,所述通告消息为VRRPv3协议通告 消息,用于指示所述第二路由器已向终端发送所述第二路由器从主用 状态切换为初始状态所对应的路由器通告RA消息;
发送单元,用于向所述终端发送第一RA消息,其中,所述第一RA 消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零,以便 所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚拟路 由器与外部网络进行通信。
由上可知,本发明实施例提供了一种状态切换方法和路由器,相 比与现有技术,第一路由器在接收到第二路由器发送的通告消息后, 其中,所述通告消息为VRRPv3协议通告消息,用于指示所述第二路由 器已向终端发送所述第二路由器从主用状态切换为初始状态所对应的 路由器通告RA消息;再向终端发送路由器从备用状态切换到主用状态 对应的RA消息,使终端根据该RA消息学习虚拟IP地址,通过与虚拟 IP地址对应的虚拟路由器与外部网络进行通信。如此,保证终端在接 收到的第二路由器从主用状态切换至初始状态发送的RA消息之后,再 接收到备用路由器从备用状态切换至主用状态发送的RA消息,避免了 现有技术中终端在根据接收到的备用路由器从备用状态切换至主用状 态发送的RA消息,学习虚拟IP地址之后,又根据接收到的主用路由 器从主用状态切换至初始状态发送的RA消息,删除该虚拟IP地址, 而导致的终端不再通过虚拟路由器与外部网络进行数据通信,而重新 设置真实IP地址对应的路由器作为默认网关,导致的终端与网络通信 的连续性、可靠性降低的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或 现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面 描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员 来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他 的附图。
图1为现有技术VRRPv3标准协议模式组网示意图;
图2为本发明实施例提供的一种状态切换方法的流程图;
图3是现有技术VRRPv3负载分担的组网示意图;
图4为本发明实施例提供的一种第一路由器40的结构图;
图4A为本发明实施例提供的一种第一路由器40的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方 案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部 分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普 通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。
如图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发送的报文的任务,路由器B和 路由器C均为备用(backup)路由器,负责随时接替主用路由器的任 务。对于各终端而言,路由器A可以向局域网中各终端发送虚拟IP地 址fe80::1且生成时间不为零的路由器通告(英文:Router  Adverti sement,缩写RA)消息,使各终端分别学习到该虚拟IP地址, 将与该虚拟IP地址对应的虚拟路由器设置为缺省网关,通过该虚拟路 由器与外部网络进行通信。
当路由器A退出该VRRPv3备份组变为初始状态时,通常情况下, 备用(backup)路由器中优先级较高的路由器C会从备用状态切换为 主用状态,接替路由器A的工作,并向各个终端发送虚拟IP地址 fe80::1且生成时间不为零的RA,使各终端学习到该虚拟IP地址,将 该虚拟路由器设置为缺省网关,仍旧通过该虚拟路由器与外部网络进 行通信,例如,如图3所示,路由器A退出VRRPv3备份组1变为初始 状态时,路由器C接替路由器A的工作成为主用路由器。
然而,在某些时候,若各终端在接收到路由器C发送的RA消息之 后,又接收到路由器A从主用状态切换至初始状态,发送的真实IP地 址fe80::2且生成时间不为零,以及虚拟IP地址fe80::1且生成时间 为零的RA消息,各终端会删除该虚拟IP地址fe80::1,学习真实IP 地址fe80::2,不再学习到该虚拟IP地址,即不会将虚拟IP地址 fe80::1对应的虚拟路由器1作为默认网关,进而不会通过该虚拟路由 器1与外部网络进行通信,使得备用路由器失去了存在价值,违背了 VRRPv3协议的规定,降低了终端与网络通信的稳定性和可靠性。
为此,本发明实施例提供了一种状态切换方法的流程图,如图2 所示,该方法可以包括:
201、第一路由器从备用状态切换为主用状态。
其中,所述第一路由器为所述路由器所处VRRPv3备份组内、优选 级最高的备用路由器。
优选的,第一路由器可以接收所述VRRPv3备份组中,第二路由器 (即主用路由器)在不能提供网关服务的情况(如上行链路故障或本 机故障等原因)下发送的包含优先级(Priority)字段的VRRPv3通告 消息;比较该VRRPv3通告消息中优先级与第一路由器本地配置的优先 级大小;若第一路由器本地配置的优先级高于第二路由器发送的 VRRPv3通告消息中的优先级,则第一路由器设置定时器,若在预设时 间内未收到优先级字段高于本地配置的优先级的VRRPv3通告消息,则 所述第一路由器从备用状态切换为主用状态。
其中,所述预设时间根据系统需要进行设置,本发明实施例对比 不进行限定,通常情况下,将预设时间设置为((256-Priority)/256) *1s,所述Priority为第一路由器本地配置的优先级值。
202、所述第一路由器接收所述第一路由器所处第一VRRPv3备份 组内的第二路由器发送的通告消息,其中,所述通告消息为VRRPv3协 议通告消息,用于指示所述第二路由器已向终端发送所述第二路由器 从主用状态切换为初始状态所对应的路由器通告RA消息。
优选的,所述通告消息可以为包含优先级Priority字段、且 Priority字段为零的VRRPv3协议通告消息,还可以为系统规定的其他 用于表示第二路由器已向终端发送主用状态切换为初始状态所对应的 RA消息。
203、所述第一路由器向所述终端发送第一RA消息,其中,所述 第一RA消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零, 以便所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚 拟路由器与外部网络进行通信。
其中,需要说明的是,上述方法中,步骤202还可以处于步骤201 之前,即第一路由器在没有切换至主用状态之前接收到第二路由器发 送的通告消息,待第一路由器从备用状态切换至主用状态之后再响应 该通告消息,进行步骤203。
由上可知,本发明实施例提供的状态切换方法中,第一路由器在 接收到第二路由器发送的通告消息后,其中,所述通告消息为VRRPv3 协议通告消息,用于指示所述第二路由器已向终端发送所述第二路由 器从主用状态切换为初始状态所对应的路由器通告RA消息;再向终端 发送路由器从备用状态切换到主用状态对应的RA消息,使终端根据该 RA消息学习虚拟IP地址,通过与虚拟IP地址对应的虚拟路由器与外 部网络进行通信。如此,保证终端在接收到的第二路由器从主用状态 切换至初始状态发送的RA消息之后,再接收到备用路由器从备用状态 切换至主用状态发送的RA消息,避免了现有技术中终端在根据接收到 的备用路由器从备用状态切换至主用状态发送的RA消息,学习虚拟IP 地址之后,又根据接收到的主用路由器从主用状态切换至初始状态发 送的RA消息,删除该虚拟IP地址,而导致的终端不再通过虚拟路由 器与外部网络进行数据通信,而重新设置真实IP地址对应的路由器作 为默认网关,导致的终端与网络通信的连续性、可靠性降低的问题。
此外,在现有实现中,还可以通过设置多个备份组的方式实现负 载分担,即一台路由器可接入多个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备份组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之间的负载分担。
在图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中的备用路由器,这 样就会使得终端还可以通过VRRPv3备份组2中的备用路由器与外部网 络进行通信,违背了VRRPv3协议中规定的终端通过备份组中的master 路由器与外部网络进行通信,导致通信出错,降低了终端与外部网络 通信的可靠性。
为了解决上述问题,进一步的,在图2提供的状态切换方法的基 础上,所述方法还包括:
所述第一路由器从主用状态切换为初始状态;
判断所述第一路由器是否接入除所述第一VRRPv3备份组之外的其 他VRRPv3备份组;
若确定所述第一路由器接入除所述第一VRRPv3备份组之外的其他 VRRPv3备份组,则不向所述终端发送主用状态切换为初始状态对应的 RA消息。
示例性的,所述判断所述第一路由器是否接入除所述第一VRRPv3 备份组之外的其他VRRPv3备份组可以包括:
获取所述第一路由器接入所述第一VRRPv3备份组的接口的接口 号;
根据所述接口号,查询所述接口号对应的接口结构;
若所述接口结构包含除所述第一VRRPv3备份组之外的其他VRRPv3 备份组成员;则确定所述第一路由器还接入除所述第一VRRPv3备份组 之外的其他VRRPv3备份组;
若所述接口结构中只包含所述第一VRRPv3备份组,则确定所述第 一路由器未接入除所述第一VRRPv3备份组之外的其他VRRPv3备份组。
例如,表1为路由器C的各个接口对应的接口结构,当路由器C 的接口2(已接替原主用路由器A工作)退出VRRPv3备份组1时,路 由器C会根据表1,查询接口号2对应的接口结构(VRRPv3备份组1、 VRRPv3备份组2),发现路由器C的该接口还接入到VRRPv3备份组2 中,因此确定路由器C还接入除VRRPv3备份组1之外的其他VRRPv3 备份组。
表1
接口号 接口结构 1 (VRRPv3备份组3) 2 (VRRPv3备份组1、VRRPv3备份组2) 3 (VRRPv3备份组4、VRRPv3备份组5)
进一步的,若确定所述第一路由器未接入除所述第一VRRPv3备份 组之外的其他VRRPv3备份组,则仍采用现有发送RA消息的机制,即 向所述终端发送主用状态切换为初始状态对应的RA消息。
如此,当加入其他VRRPv3备份组的主用路由器退出一VRRPv3备 份组时,不向终端发送相应的RA消息,使终端不能学习到该路由器的 真是I P地址,进而不能通过该路由器与外部网络进行通信,避免了终 端通过其他VRRPv3备份组中的该路由器(备用路由器)与外部网络进 行通信。
此外,本发明实施例还提供了一种第一路由器40的结构图,其中, 所述第一路由器为所述路由器所处VRRPv3备份组内、优选级最高的备 用路由器;如图4所示,该路由器40可以包括:
切换单元401,用于将第一路由器从备用状态切换为主用状态。
接收单元402,用于接收所述第一路由器所处第一VRRPv3备份组 内的第二路由器发送的通告消息;其中,所述通告消息为VRRPv3协议 通告消息,用于指示所述第二路由器已向终端发送所述第二路由器从 主用状态切换为初始状态所对应的路由器通告RA消息。
优选的,所述通告消息可以为包含优先级Priority字段、且 Priority字段为零的VRRPv3协议通告消息,还可以为系统规定的其他 用于表示第二路由器已向终端发送主用状态切换为初始状态所对应的 RA消息。
发送单元403,用于向所述终端发送第一RA消息,其中,所述第 一RA消息包含虚拟IP地址、且所述虚拟IP地址的生成时间不为零, 以便所述终端学习所述虚拟IP地址,通过所述虚拟IP地址对应的虚 拟路由器与外部网络进行通信。
进一步的,所述切换单元401,具体用于:
接收所述VRRPv3备份组中,第二路由器(即主用路由器)在不能 提供网关服务的情况(如上行链路故障或本机故障等原因)下发送的 包含优先级(Priority)字段的VRRPv3协议通告消息;比较该VRRPv3 协议通告消息中优先级与第一路由器本地配置的优先级大小;若第一 路由器本地配置的优先级高于第二路由器发送的VRRPv3协议通告消息 中的优先级,则第一路由器设置定时器,若在预设时间内未收到优先 级字段高于本地配置的优先级的VRRPv3协议通告消息,则所述第一路 由器从备用状态切换为主用状态。
其中,所述预设时间根据系统需要进行设置,本发明实施例对比 不进行限定,通常情况下,将预设时间设置为((256-Priority)/256) *1s,所述Priority为第一路由器本地配置的优先级值。
由上可知,本发明实施例提供的第一路由器40在接收到第二路由 器发送的通告消息后,其中,所述通告消息为VRRPv3协议通告消息, 用于指示所述第二路由器已向终端发送所述第二路由器从主用状态切 换为初始状态所对应的路由器通告RA消息;再向终端发送路由器从备 用状态切换到主用状态对应的RA消息,使终端根据该RA消息学习虚 拟IP地址,通过与虚拟IP地址对应的虚拟路由器与外部网络进行通 信。如此,保证终端在接收到的第二路由器从主用状态切换至初始状 态发送的RA消息之后,再接收到备用路由器从备用状态切换至主用状 态发送的RA消息,避免了现有技术中终端在根据接收到的备用路由器 从备用状态切换至主用状态发送的RA消息,学习虚拟IP地址之后, 又根据接收到的主用路由器从主用状态切换至初始状态发送的RA消 息,删除该虚拟IP地址,而导致的终端不再通过虚拟路由器与外部网 络进行数据通信,而重新设置真实IP地址对应的路由器作为默认网关, 导致的终端与网络通信的连续性、可靠性降低的问题。
此外,在现有实现中,还可以通过设置多个备份组的方式实现负 载分担,即一台路由器可接入多个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备份组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之间的负载分担。
在图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中的备用路由器,这样就会使得终端还可 以通过VRRPv3备份组2中的备用路由器与外部网络进行通信,违背了 VRRPv3协议中规定的终端通过备份组中的master路由器与外部网络进 行通信,导致通信出错,降低了终端与外部网络通信的可靠性。
因此,当所述切换单元,还用于将所述第一路由器从主用状态切 换为初始状态时,为了避免出现上述问题,进一步的,如图4A所示, 所述第一路由器40,还包括:
判断单元404,用于判断所述第一路由器是否接入除所述第一 VRRPv3备份组之外的其他VRRPv3备份组;
所述发送单元403,还用于若确定所述第一路由器接入除所述第一 VRRPv3备份组之外的其他VRRPv3备份组,则不向所述终端发送主用状 态切换为初始状态对应的RA消息。
示例性的,所述判断单元404,具体用于:
获取所述第一路由器接入所述第一VRRPv3备份组的接口的接口 号;
根据所述接口号,查询所述接口号对应的接口结构;
若所述接口结构包含除所述第一VRRPv3备份组之外的其他VRRPv3 备份组成员;则确定所述第一路由器还接入除所述第一VRRPv3备份组 之外的其他VRRPv3备份组;
若所述接口结构中只包含所述第一VRRPv3备份组,则确定所述第 一路由器未接入除所述第一VRRPv3备份组之外的其他VRRPv3备份组。
例如,表1为路由器C的各个接口对应的接口结构,当路由器C 的接口2(已接替原主用路由器A工作)退出VRRPv3备份组1时,路 由器C会根据表1,查询接口号2对应的接口结构(VRRPv3备份组1、 VRRPv3备份组2),发现路由器C的该接口还接入到VRRPv3备份组2 中,因此确定路由器C还接入除VRRPv3备份组1之外的其他VRRPv3 备份组。
进一步的,所述发送单元403,还用于若确定所述第一路由器未接 入除所述第一VRRPv3备份组之外的其他VRRPv3备份组,则仍采用现 有发送RA消息的机制,即向所述终端发送主用状态切换为初始状态对 应的RA消息。
如此,当加入其他VRRPv3备份组的主用路由器退出一VRRPv3备 份组时,不向终端发送相应的RA消息,使终端不能学习到该路由器的 真是IP地址,进而不能通过该路由器与外部网络进行通信,避免了终 端通过其他VRRPv3备份组中的该路由器(备用路由器)与外部网络进 行通信。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而 非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领 域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技 术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修 改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方 案的范围。

一种状态切换方法及路由器.pdf_第1页
第1页 / 共13页
一种状态切换方法及路由器.pdf_第2页
第2页 / 共13页
一种状态切换方法及路由器.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《一种状态切换方法及路由器.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。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 >


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1