[发明专利]一种三层报文转发方法及装置有效
申请号: | 200910136159.5 | 申请日: | 2009-04-30 |
公开(公告)号: | CN101540731A | 公开(公告)日: | 2009-09-23 |
发明(设计)人: | 李捷;王庆文 | 申请(专利权)人: | 杭州华三通信技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
代理公司: | 北京鑫媛睿博知识产权代理有限公司 | 代理人: | 龚家骅 |
地址: | 310053浙江省杭州市高新技术产业*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 三层 报文 转发 方法 装置 | ||
技术领域
本发明涉及通信技术领域,尤其涉及一种三层报文转发方法及装置。
背景技术
交换设备在网络中承担着大量网络报文的转发任务,为了提高交换设备的报文转发效率,通常将报文转发和路由表维护分开进行,报文转发由交换设备的转发模块完成,路由表维护由交换设备的CPU(Central ProcessingUnit,中央处理单元)进行,这样在交换设备内形成了控制组件(CPU)和转发组件(转发模块)分离的构架形式。由于CPU仅完成相对实时性要求不高的报文转发表的处理操作,对其性能要求也大大下降,从而可以降低成本。通常,报文转发是独立进行的,以三层ARP(Address Resolution Protocol,地址解析协议)数据为例,当交换设备的转发模块已知报文相对应的ARP表项时,该报文由转发模块直接处理转发,当转发模块中不存在该ARP表项时,例如由于ARP表项老化或交换设备重新启动等原因,转发模块无法确定该报文转发的目的地址,此时需要交换设备向服务器发送ARP请求报文以获得该ARP表项。为此,转发模块将该种报文送往CPU,CPU分析后向服务器发送ARP请求报文,等待服务器发送的ARP回应报文到达后刷新转发模块中的ARP表项,这样,转发模块就可依据新的ARP表项进行报文转发。
由于交换设备中CPU的交换性能远低于转发模块,当去向CPU的三层未匹配报文(在转发模块中该报文对应的ARP表项不存在,无法根据ARP表项及报文目的地址确定该报文的目的MAC地址和出端口)的数量较大时,CPU无法及时从服务器获取新ARP表项,CPU的报文入口将会被这些报文阻塞,CPU入口会按照队列丢弃报文,和三层未匹配报文处在同样CPU队列的报文会被丢掉一部分,导致对应业务无法正常进行。
当CPU收到来自转发模块的ARP请求报文后,先向转发模块中写入指导该报文转发的假ARP表项(这个ARP表项设置转发到转发模块“黑洞”,即将该报文的目的MAC地址或出端口设置为不存在,当转发模块根据报文目的地址在该假ARP表项中找不到对应目的MAC地址或出端口时,直接丢弃该报文),再向服务器发送ARP请求报文,根据交换设备的CPU处理能力不同,该假ARP表项在转发模块中保持一定时间(该时间为CPU获取新ARP表项的时间),保证同样目的地址的三层报文进入转发模块后,按照该假ARP表项直接丢弃,不再进行转发,这样在CPU等待收取ARP回应报文时,去往该ARP目的地址的报文不再拥塞CPU,也不影响网上其他业务。
现有技术中,一种报文转发场景如图1所示,PC(个人计算机)通过交换设备访问服务器,报文在交换设备做三层转发。当PC访问服务器,但是交换设备还没有学习到服务器的ARP表项时,PC通过交换设备进行报文转发的过程包括以下步骤:
步骤101,PC向交换设备发送报文,该报文在交换设备的转发模块上为三层未匹配报文,交换设备开始ARP学习过程,即交换设备中转发模块向CPU发送ARP请求报文,CPU向转发模块下发假ARP表项;
步骤102,交换设备的CPU向服务器发送ARP请求报文,以获得该三层未匹配报文的目的地址对应的ARP表项;
步骤103,交换设备的CPU收到服务器发送的ARP回应报文,该回应报文中携带该三层未匹配报文的目的地址对应的ARP表项;
步骤104,交换设备的CPU根据ARP回应报文中携带的新ARP表项更新转发模块中的ARP表项的目的MAC地址和出端口,使PC再次发送的该报文可以通过交换设备的转发模块直接转发到服务器。
该种报文转发场景中,交换设备更新ARP表项为真正目的MAC地址和出端口之前,三层报文都会匹配转发模块的假ARP表项,按照“黑洞”丢弃报文。当CPU处理能力比较差、网络环境比较差时,由于交换设备比较长的时间收不到服务器的ARP回应报文以更新转发模块中的ARP表项,会有很多报文丢弃。
另一种报文转发场景如图2所示,PC通过交换设备访问外部网络服务器有两条链路(链路A和链路B),由于通过链路A和链路B去往服务器的路径长短不同,这两条链路不等价,所以形成的转发表项指向其中一条链路(链路A,称为主路径),另外一条链路作为备份(链路B,称为备份路径)。PC 通过交换设备进行报文转发的过程包括以下步骤:
步骤201,当两条链路都可达时,去往服务器地址的路由指向主路径。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州华三通信技术有限公司,未经杭州华三通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910136159.5/2.html,转载请声明来源钻瓜专利网。