数据包发送方法、装置和系统的制作方法

文档序号:7711102阅读:158来源:国知局
专利名称:数据包发送方法、装置和系统的制作方法
技术领域
本发明涉及通信领域,尤其涉及一种数据包发送方法、装置和系统。
背景技术
在虚拟局域网(Virtual Local Area Network, VLAN)内,中继媒体网关(Trunk Media Gateway , TMG)通过路由器中的虛拟局域网接口 ( Virtual Local Area Network Interface, VlanlF)接收IP承载网发送的数据包。为保证传输的可靠性, 在VLAN和IP承载网之间设置至少两台路由器,所述路由器的VlanlF接口包 括至少两个成员接口 ,包括用于与TMG建立通信的VlanlF成员接口和用于与 邻居路由器建立通信的以太网中继(Ethernet Trunk, ETH-Trunk)成员接口。 在主路由器与TMG之间链路出现故障,主路由器通过ETH- Trunk成员接口将 流量发送给备用路由器,指示备用路由器通过备用路由器中VlanlF成员接口将 流量转发到TMG。在实现数据包转发过程中,发明人发现,在主路由器与TMG 之间链路出现故障时,主路由器上ETH- Trunk成员接口不能及时将流量发送到 备用路由器,造成传输时延过长,传输质量较低的问题。

发明内容
本发明的实施例提供的数据包发送方法、装置和系统,能够在主路由器进 行成员接口切换时,及时发送原处于开启状态的成员接口中的数据包。 为达到上述目的,本发明的实施例采用如下技术方案 一种数据包发送方法,包括
获取主路由器虚拟局域网成员接口的使用状态,所述 用状态包括开启状 态和关闭状态;在所述主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太
网中继成员接口的地址解析协议表项;
在所述主路由器虚拟局域网成员接口由开启状态转为关闭状态后,根据所 述主路由器已获取的以太网中继成员接口地址解析协议表项,通过备用路由器 转发所述主路由器虚拟局域网成员接口中的数据包。
一种数据包发送装置,包括
第一获取模块,用于获取主路由器虚拟局域网成员接口的使用状态,所述 使用状态包括开启状态和关闭状态;
第二获取模块,用于在所述第一获取模块获取所述主路由器虚拟局域网成 员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表 项;
发送模块,用于在所述第一获取模块获取所述主路由器虚拟局域网成员接 口由开启状态转为关闭状态后,根据所述主路由器已获取的以太网中继成员接 口地址解析协议表项,通过备用路由器转发所述主路由器虚拟局域网成员接口 中的数据包。
另外,本发明实施例还提供了一种通信系统,包括主路由器、备用路由器 和中继媒体网关,所述主路由器通过以太网中继成员接口与备用路由器通信, 通过虚拟局域网成员接口与中继媒体网关通信,其中所述主路由器,还用于获 取虚拟局域网成员接口的使用状态;如果所述虚拟局域网成员接口处于开启状 态时,获取以太网中继成员接口的地址解析协议表项;否则,根据所述已获取 的以太网中继成员接口地址解析协议表项,通过备用路由器转发所述虚拟局域 网成员接口中的数据包。
本发明实施例提供的数据包发送方法、装置和系统,在主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协 议表项,保证在开启所述主路由器以太网中继成员接口时,所述主路由器以太 网中继成员接口能够根据已获得的地址解析协议表项及时发送数据包,节省了 所述主路由器以太网中继接口学习地址解析协议表项的时间,缩短了数据包的
发送等待时间,减少了数据包的传输延迟,提高了本地发送的服务质量,达到 提高用户体验的目的。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施 例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述 中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付 出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据包发送方法的流程图2为本发明实施例提供的应用场景示意图3为本发明另一实施例提供的数据包发送方法的流程图4为本发明实施例提供的数据包发送装置的结构示意图5为图4所示实施例中第二获取模块的结构示意图6为本发明实施例^是供的数据包发送装置的另一结构示意图7为本发明实施例提供的一种通信系统的结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是 全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造 性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合具体实施例和附图对本发明作进一步解释。
如图1所示,本发明实施例提供了一种数据包发送方法,包括
5101、 获取主路由器虚拟局域网成员接口的使用状态,所述使用状态包括 开启状态和关闭状态;
5102、 在所述主路由器虚拟局域网成员接口处于开启状态时,获取主路由 器以太网中继成员接口的地址解析协议表项;
5103、 在所述主路由器虚拟局域网成员接口由开启状态转为关闭状态后, 根据所述主路由器以太网中继成员接口的地址解析协议表项,通过备用路由器 转发所述主路由器虚拟局域网成员接口中的数据包。
本发明实施例提供的数据包发送方法,在主路由器虚拟局域网成员接口处 于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表项,保证 在开启所述主路由器以太网中继成员接口时,所述主路由器以太网中继成员接 口能够根据已获得的地址解析协议表项及时发送数据包,节省了所述主路由器 以太网中继接口学习地址解析协议表项的时间,缩短了数据包的发送等待时间, 减少了数据包的传输延迟,提高了本地发送的服务质量,达到提高用户体验的 目的。
为使本领域技术人员更加清楚的理解本发明的技术方案,下面结合具体应 用场景对本发明实施例提供的技术方案作进一步介绍
如图2所示,IP承载网向虚拟局域网内的主机发送数据包的示意图。IP承 载网首先将数据包发送给局域网的边缘提供者(ProviderEdge, PE)设备,所述 PE设备包括主路由器和备用路由器。如图2所示,路由器RTA为主路由器,路 由器RTB为备用路由器。PE设备接收到数据包后,需要根据数据包的目的IP 地址,从本地保存的地址解析协议(Address Resolution Protocol, ARP)表项中,确定所述目的IP地址对应的主机路由。如图2所示,主路由器RTA的下一跳 MAC地址为中继i某体网关(Trunk Media Gateway, TMG)。为进一步保证报文 的可靠性传输,在PE设备中主路由器会通过不断向中继媒体网关发送数据包的 方式探测主路由器和中继i某体网关之间的VlanIF成员接口是否通信正常,如果 数据包无法发送出去,说明VlanIF成员接口出现故障,主路由器会将本地未发 送的数据包通过本地的另 一成员接口 ,即用于与备用路由器进行通信的以太网 中继(Ethernet Trunk, ETH- Trunk)成员接口发送到备用路由器,指示备用路 由器将接收的数据包通过备用路由器的VlanIF成员接口发送到TMG。如图2 所示,在路由器RTA和TMG之间的链路出现故障时,RTA将通过本地的ETH-Trunk成员接口向路由器RTB发送本地未发送的数据包,并指示路由器RTB通 过RTB的VlanIF成员接口发送到TMG。
结合本发明实施例提供的应用场景,下面对本发明实施例作进一步介绍, 具体过程如图3所示
S301、主路由器判断虚拟局域网成员接口是否处于开启状态; 在本发明实施例中,釆用双向转发检测(Bidirectional Forwarding Detection, BFD)方法,检测主路由器和中继媒体网关之间的链路是否运行正常,其中所 述BFD方法是以轻负荷、持续时间短的方式对邻居节点之间上/下行链路进行毫 秒级别的检测,并将检测结果发送给主路由器中负责配置接口使用状态的路由 管理模块。在发明实施例中,所述路由管理模块为转发信息表项(Forwarding Information Base, FIB )管理模块。如果检测结果为主路由器和TMG之间的链 路正常,表示主路由器中用于与TMG直接通信的VlanIF成员接口工作正常, 保持VlanIF成员接口的开启状态,则执行S302;否则,表示VlanIF成员接口 停止工作,处于关闭状态,则执行S303。S302 、主路由器获取并更新以太网中继成员接口的地址解析协议表项;
在本发明实施例中,主路由器根据所述VlanIF成员接口对应的ARP表项, 获取所述ETH-Trunk成员接口的ARP表项。在VlanIF成员接口根据VlanIF成 员接口的ARP表项转发数据包时,主路由器更新ETH-Trunk成员接口中ARP 表项,其中所述ETH-Trunk成员接口的ARP表项的状态为初始态——>更新态 ——>同步态。下面作以详细介绍
在VlanIF成员接口接收到数据包后,VlanIF成员接口确定所述数据包的转 发路径,并将所述确定的转发路径添加到数据包中。主路由器获取所述数据包 中的转发路径,此时所述ETH-Trunk成员接口的ARP表项进入初始态;在获取 到所述转发路径后,主路由器通知主路由器的FIB管理才莫块所述转发路径。所 述FIB管理模块根据所述转发路径中的下一跳地址,确定所迷ETH-Trunk成员 接口的转发路径,并生成对应的ARP表项。例如,如图2所示,主路由器的FIB 管理模块获得的ARP表项为VlanIF成员接口的ARP表项中目的IP地址为 10.10.0.1,对应的下一跳地址为TMG。则FIB管理模块才艮据所述下一跳地址, 确定所述ETH-Trunk成员接口中目的地址为10.10.0.1的ARP表项,对应的转发 路径为RTA——>RTB——>TMG。
在所述ETH-Trunk成员接口的ARP表项进入初始态后,主路由器定时才全测 VlanIF成员接口中ARP表项是否发生更新;如果^r测到VlanIF成员接口中ARP 表项发生更新,则表示ETH-Trunk成员接口中的ARP表项进入了更新态。如果 检测到VlanIF成员接口添加新的地址解析协议表项,则主路由器从VlanIF成员 接口获取所述新的地址解析协议表项,其中添加过程的具体实现方式与初始过 程相似,此处不再赘述;如果检测到VlanIF成员接口删除ARP表项时,则获取 所述删除的ARP表项,并从所述删除的ARP表项中获取目的IP地址以及下一跳地址。才艮据所述获得的目的IP地址和下一跳地址,在ETH-Tmnk成员接口查 找与所述获得的目的IP地址以及下一跳地址相同的ARP表项,删除所述查找到 的ARP表项。
当ETH-Trunk成员接口对发生更新的ARP表项修改完成后,ETH-Tmnk成 员接口中的ARP表项与VlanlF成员接口中的ARP表项达到同步态。
5303、 主路由器判断虚拟局域网成员接口是否处于关闭状态; 如果虚拟局域网成员接口处于关闭状态,执行步骤S304,否则执行步骤
S302。
5304、 在所述主路由器虚拟局域网成员接口处于关闭状态后,主路由器切 换用于发送数据包的成员接口 ;
在本发明实施例中,在检测到主路由器和TMG链路出现故障时(所述主路 由器虚拟局域网成员接口处于关闭状态),FIB管理才莫块删除VlanlF成员接口中 的主机路由,并设置用于发送数据包的成员接口为ETH-Trunk成员接口。
在本发明实施例中,主路由器获取更新后的ETH-Trunk成员接口的ARP表 项。因为在ETH-Trunk成员接口在处于关闭状态时,ETH-Trunk成员接口已经 学习了对应的ARP表项,所以在发生成员接口切换时无需重新学习对应的ARP 表项,克服了现有技术中在发生成员接口切换后,需要花费时间学习ARP表项, 造成切换时间较长的问题,达到及时发送数据包的目的,提高数据包的传输效 率。
5305、 主路由器根据获得的地址解析协议表项,发送虚拟局域网成员接口 中的数据包;
所述地址解析协议表项中记录了主路由器VlanlF接口中的数据包的下一跳 MAC地址为TMG。主路由器通过ETH-Tmnk接口将VlanlF接口中的数据包发送给备用路由器,并指示备用路由器将所述数据包通过备用路由器的VlanIF成 员接口发送到TMG。
在本发明实施例中,现有技术中发送数据包的方法均适用于此步骤,此处 不再赘述。
需要说明的是,当主路由器通过ETH-Trunk接口将VlanIF接口的数据包发 送给备用路由器后,将与所述备用路由器发生倒换,使得备用路由器倒换为新 主路由器,接收IP承载网发送的数据包,并将接收的数据包发送到TMG。
可选的,在执行S305之后,还可以进一步包括
5306、 主路由器判断以太网中继成员接口的地址解析协议表项是否老化; 如果所述地址解析协议表项老化,则执行S307;否则,返回S303。
在本发明实施例中,所述主^f各由器定期判断以太网中继成员接口的地址解 析协议表项是否老化的具体方式为根据BFD方法的检测结果,判断所述用于 发送数据包的接口是否出现中断或重启的故障,如果出现故障,则执行S307。
5307、 主路由器删除所述以太网中继成员接口的地址解析协议表项。 在执行完S307后,可以继续执行S302。
本发明实施例提供的数据包发送方法,在虚拟局域网成员接口处于开启状 态时,获取以太网中继成员接口的地址解析协议表项,保证在开启所述以太网 中继成员接口时,所述以太网中继成员接口能够根据已获得的地址解析协议表 项及时发送数据包,节省了所述以太网中继接口学习地址解析协议表项的时间, 缩短了数据包的发送等待时间,减少了数据包的传输延迟,提高了本地发送的 服务质量,达到提高用户体验的目的。采用双向转发检测方法获取链路的运行 情况,对发送数据包的成员接口进行切换,能够及时发现链路故障,开启以太 网中继成员接口,缩短了切换的响应时间,进一步提高了以太网中继成员接口发送数据包的速度,实现成员接口切换在毫秒内完成,大大提高了接口切换速度。
如图4所示,本发明实施例提供的数据包发送装置,包括第一获取模块401,用于获取主路由器虚拟局域网成员接口的使用状态,所
述使用状态包括开启状态和关闭状态;
第二获取模块402,用于在所述第一获取模块获取所述主路由器虚拟局域网
成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议
表项;
发送模块403,用于在所述第一获耳4莫块获取所述主路由器虛拟局域网成员接口由开启状态转为关闭状态后,根据所述主if各由器已获取的以太网中继成员接口地址解析协议表项,通过备用路由器转发所述主路由器虚拟局域网成员接口中的数据包。
进一步的,所述第一获取模块401具体用于
通过双向转发检测方法,获取所述虚拟局域网成员接口的使用状态;如果检测结果为所述虚拟局域网成员接口与中继媒体网关通信正常,确定虛拟局域网成员接口处于开启状态;否则,确定所迷虛拟局域网成员接口处于关闭状态。进一步的,如图5所示,所述第二获取模块402还可以进一步包括获取单元4021,用于获取所述主路由器虚拟局域网成员接口的地址解析协议表项;
生成单元4022,用于根据所述获取单元获取的主路由器虚拟局域网成员接口的地址解析协议表项,获取所述主路由器以太网中继成员接口的地址解析协议表项。
其中所述获取单元4021具体用于从所述主路由器虛拟局域网成员接口发送的数据包中,获取所述数据包的地址解析协议表项。
其中所述生成单元4022具体用于
设置所述主路由器虚拟局域网成员接口中地址解析协议表项的下一跳地址为备用路由器,根据配置下 一跳地址后的地址解析协议表项,生成主路由器以太网中继成员接口的地址解析协议表项。
进一步的,如图6所示,所述装置还可以进一步包括
切换模块404,用于在所述主路由器虚拟局域网接口由开启状态转为关闭状态后,删除所述主路由器虚拟局域网成员接口的主初J各由,并刷新用于发送数据包的成员接口为主路由器以太网中继成员接口 。
本发明实施例提供的数据包发送装置可以是路由器和三层交换机等具有路由功能的网络设备。
本发明实施例提供的数据包发送装置,在主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表项,保证在开启所述主路由器以太网中继成员接口时,所述主路由器以太网中继成员接口能够根据已获得的地址解析协议表项及时发送数据包,节省了所述主路由器以太网中继接口学习地址解析协议表项的时间,缩短了数据包的发送等待时间,减少了数据包的传输延迟,提高了本地发送的服务质量,达到提高用户体验的目的。采用双向转发检测方法获取链路的运行情况,对发送数据包的成员接口进行切换,能够及时发现链路故障,开启主路由器以太网中继成员接口,缩短了切换的响应时间,进一 步提高了主路由器以太网中继成员接口发送数据包的速度,实现成员接口切换在毫秒内完成,大大提高了接口切换速度。
另夕卜,本发明实施例还提供一种通信系统,如图7所示,包括主路由器701,备用路由器702和中继媒体网关703,所述主路由器701通过以太网中继成员接口 7011与备用路由器702通信,通过虚拟局域网成员接口 7012与中继媒体网关通信,其中所述主路由器701,还用于获取虛拟局域网成员接口 7012的使用状态;如果所述虛拟局域网成员接口 7012处于开启状态时,获取以太网中继成员接口 7011的地址解析协议表项;否则,根据所迷已获取的以太网中继成员接口 7011的地址解析协议表项,通过备用路由器702转发所述虚拟局域网成员接口 7012中的数据包。
本发明实施例提供的通信系统,在主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表项,保证在开启所述主路由器以太网中继成员接口时,所述主路由器以太网中继成员接口能够根据已获得的地址解析协议表项及时发送数据包,节省了所述主路由器以太网中继接口学习地址解析协议表项的时间,縮短了数据包的发送等待时间,减少了数据包的传输延迟,提高了本地发送的服务质量,达到提高用户体验的目的。采用双向转发检测方法获取链路的运行情况,对发送数据包的成员接口进行切换,能够及时发现链路故障,开启主路由器以太网中继成员接口,缩短了切换的响应时间,进一步提高了主路由器以太网中继成员接口发送数据包的速度,实现成员接口切换在毫秒内完成,大大提高了接口切换速度。
本领域普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1、一种数据包发送方法,其特征在于,包括获取主路由器虚拟局域网成员接口的使用状态,所述使用状态包括开启状态和关闭状态;在所述主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表项;在所述主路由器虚拟局域网成员接口由开启状态转为关闭状态后,根据已获取的所述主路由器以太网中继成员接口的地址解析协议表项,通过备用路由器转发所述主路由器虚拟局域网成员接口中的数据包。
2、 根据权利要求1所述的方法,其特征在于,所迷获取主路由器虛拟局域 网成员接口使用状态的步骤,包括通过双向转发检测方法,获取所述主路由器虚拟局域网成员接口的使用状 态;如果检测结果为所述虛拟局域网成员接口与中继媒体网关通信正常,确定 虚拟局域网成员接口处于开启状态;否则,确定所述虚拟局域网成员接口处于 关闭状态。
3、 根据权利要求1所述的方法,其特征在于,所述获取主路由器以太网中 继成员接口的地址解析协议表项,包括获取所述主路由器虚拟局域网成员接口的地址解析协议表项; 根据所述主路由器虚拟局域网成员接口的地址解析协议表项,获取所述主 路由器以太网中继成员接口的地址解析协议表项。
4、 根据权利要求3所述的方法,其特征在于,所述获取所述主路由器虚拟 局域网成员接口的地址解析协议表项,包括从所述主路由器虚拟局域网成员接口发送的数据包中,获取所述数据包的 地址解析协议表项。
5、 根据权利要求3所述的方法,其特征在于,所述根据所述主路由器虚拟 局域网成员接口的地址解析协议表项,获取所述主路由器以太网中继成员接口的地址解析协议表项,包括设置所述主路由器虚拟局域网成员接口中地址解析协议表项的下一跳地址 为备用路由器,才艮据配置下一跳地址后的地址解析协议表项,生成主路由器以 太网中继成员接口的地址解析协议表项。
6、 根据权利要求1所述的方法,其特征在于,当所述主路由器虚拟局域网 接口由开启状态转为关闭状态后,还包括删除所述主路由器虚拟局域网成员接口对应的主才;u各由,并刷新用于发送 数据包的成员接口为以太网中继成员接口 。
7、 一种数据包发送装置,其特征在于,包括第一获^a莫块,用于获取主路由器虚拟局域网成员接口的使用状态,所述 使用状态包括开启状态和关闭状态;第二获取模块,用于在所述第一获取模块获取所述主路由器虚拟局域网成 员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表 项;发送模块,用于在所述第一获取模块获取所述主路由器虚拟局域网成员接 口由开启状态转为关闭状态后,根据所述主路由器已获取的以太网中继成员接 口地址解析协议表项,通过备用路由器转发所述主路由器虚拟局域网成员接口 中的数据包。
8、 根据权利要求7所述的装置,其特征在于,所述第二获取模块具体用于 获取单元,用于获取所述主路由器虛拟局域网成员接口的地址解析协议表项;生成单元,用于根据所述获取单元获取的主路由器虚拟局域网成员接口的 地址解析协议表项,获取所述主路由器以太网中继成员接口的地址解析协议表项。
9、 根据权利要求7所述的装置,其特征在于,还包括切换模块,用于在所述主路由器虚拟局域网接口由开启状态转为关闭状态 后,删除所述主^各由器虚拟局域网成员接口对应的主积」洛由,并刷新用于发送 数据包的成员接口为以太网中继成员接口 。
10、 一种通信系统,包括主路由器、备用路由器和中继媒体网关,所述主 路由器通过以太网中继成员接口与备用路由器通信,通过虚拟局域网成员接口 与中继媒体网关通信,其特征在于,所述主路由器,还用于获取虚拟局域网成员接口的使用状态;如果所述虚 拟局域网成员接口处于开启状态时,获取以太网中继成员4妄口的地址解析协议 表项;否则,根据所述已获取的以太网中继成员接口地址解析协议表项,通过 备用路由器转发所述虚拟局域网成员接口中的数据包。
全文摘要
本发明实施例公开了数据包发送方法、装置和系统,涉及通信领域;解决了现有技术中主路由器发生成员接口切换时,不能及时将原处于开启状态成员接口中数据包发送给备用路由器的问题。所述数据包发送方法,包括获取主路由器虚拟局域网成员接口的使用状态,所述使用状态包括开启状态和关闭状态;在所述主路由器虚拟局域网成员接口处于开启状态时,获取主路由器以太网中继成员接口的地址解析协议表项;在所述主路由器虚拟局域网成员接口由开启状态转为关闭状态后,根据所述主路由器以太网中继成员接口的地址解析协议表项,通过备用路由器转发所述主路由器虚拟局域网成员接口中的数据包。本发明实施例提供的技术方案可应用于传输数据包。
文档编号H04L12/56GK101640642SQ20091016194
公开日2010年2月3日 申请日期2009年9月7日 优先权日2009年9月7日
发明者张聪杰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1