一种报文出口信息的读写方法及转发引擎技术

技术编号:15441591 阅读:65 留言:0更新日期:2017-05-26 06:42
本发明专利技术的实施例提供一种报文出口信息的读写方法及转发引擎,涉及三层转发技术领域,以解决现有的转发引擎输出报文的出口信息效率过低的问题。该方法包括:当转发引擎接收到报文时,获取报文的报文头信息,为报文分配在转发引擎中的保序编号,并基于报文的报文头信息生成的查表关键字进行查表,查出报文的出口信息,基于报文在转发引擎中的保序编号确定的缓存地址,将报文的出口信息缓存至第一类目标存储器中。本申请应用于转发引擎。

Method for reading and writing message exit information and forwarding engine

The embodiment of the invention provides a read-write method of message exit information and a forwarding engine, relating to the three layer forwarding technical field, so as to solve the problem that the output information efficiency of the existing forwarding engine output message is too low. The method includes: when forwarding engine receives the message, the message header information, for preserving order number in the message distribution in the forwarding engine, and based on the packet header information message generated by the keyword lookup table look-up table, find out the message of export information, order number in the message buffer address forwarding engine in based on the determined message will export information to the first object in memory cache. This application is applied to the forwarding engine.

【技术实现步骤摘要】
一种报文出口信息的读写方法及转发引擎
本专利技术涉及三层转发
,尤其涉及一种报文出口信息的读写方法及转发引擎。
技术介绍
现有的路由设备通常应用其内部的转发引擎来实现报文的转发。具体的,转发引擎在转发报文时,特别是在不同网段之间进行报文转发时,需要转发引擎根据报文中报文头信息(该报文头信息中包含目的地址、源地址等),从转发引擎中存储的三层转发表中查询出与所要转发的报文对应的出口信息,使得转发引擎可以根据该出口信息转发报文。其中,上述的三层转发表为报文和与报文相匹配的出口信息的对应关系表。转发引擎在查找对每个报文的出口信息后,会按照报文输入转发引擎的输入顺序输出,但由于转发引擎对各个报文的处理速度不同,从而导致不同的报文需要的查表时间不同。这样便导致转发引擎在需要输出某一报文的出口信息时,若转发引擎还未查找到该报文的出口信息,则需要等待查找到该报文的出口信息并输出该出口信息后,才能够执行其后报文出口信息的输出,从而导致整个转发引擎输出报文的出口信息的效率过低。例如,如图1所示,报文进入转发引擎的顺序是报文1、报文2,转发引擎还未查找到报文1的出口信息,此时,报文2的出口信息已经获取,但是,仍需等待转发引擎查找到报文1的出口信息并输出,再输出报文2的出口信息,从而使得输出报文的出口信息的效率过低。
技术实现思路
本专利技术的实施例提供一种报文出口信息的读写方法及转发引擎,以解决现有的转发引擎输出报文的出口信息效率过低的问题。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供一种报文出口信息的写入方法,包括:当接收到报文时,获取所述报文的报文头信息;其中,所述报文头信息包括报文类型标识;为所述报文分配在所述转发引擎中的保序编号,并基于所述报文的报文头信息生成的查表关键字进行查表,查出所述报文的出口信息;基于所述报文在所述转发引擎中的保序编号确定的缓存地址,将所述报文的出口信息缓存至第一类目标存储器中;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。第二方面,提供一种报文出口信息的读取方法,包括:当接收到读取报文的出口信息的读取命令时,获取所述报文在所述转发引擎中的保序编号及所述报文的报文类型标识;基于所述报文在所述转发引擎中的保序编号确定的缓存地址,从第一类目标存储器中,读取所述报文的出口信息;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。第三方面,提供一种转发引擎,包括:获取模块,用于当接收到报文时,获取所述报文的报文头信息;其中,所述报文头信息包括报文类型标识;分配模块,用于为所述报文分配在所述转发引擎中的保序编号;查找模块,用于基于所述获取模块获取的所述报文的报文头信息生成的查表关键字进行查表,查出所述报文的出口信息;写入模块,用于基于所述分配模块分配的所述报文在所述转发引擎中的保序编号确定的缓存地址,将所述查找模块查出的所述报文的出口信息缓存至第一类目标存储器中;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。第四方面,提供一种转发引擎,包括:获取模块,用于当接收到读取报文的出口信息的读取命令时,获取所述报文在所述转发引擎中的保序编号及所述报文的报文类型标识;读取模块,用于基于所述获取模块获取的所述报文在所述转发引擎中的保序编号确定的缓存地址,从第一类目标存储器中,读取所述报文的出口信息;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。本专利技术实施例提供的报文出口信息的读写方法及转发引擎,当转发引擎接收到报文时,获取报文的报文头信息,然后,为报文分配在转发引擎中的保序编号,并基于报文的报文头信息生成的查表关键字进行查表,查出报文的出口信息,最后,基于报文在转发引擎中的保序编号确定的缓存地址,将报文的出口信息缓存至目标存储器中。这样,由于目标存储器为转发引擎中报文的报文类型标识对应的存储器,使得报文在查出报文的出口信息,将报文的出口信息存储在该报文的报文类型对应的目标存储器中保序编号对应的缓存地址,这样当读取报文的出口信息时,能够基于报文类型进行出口信息的读取,从而避免一种报文类型中的某一报文的出口信息未查找到时影响其他报文类型的报文出口信息的输出,实现各个报文类型的出口信息输出时互不干扰,进一步提高了报文出口信息的输出效率。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种报文及报文的出口信息获取状态的对应示意图;图2为本专利技术实施例提供的一种报文出口信息的写入方法的流程示意图;图3为本专利技术实施例提供的一种报文保序编号的编号示意图;图4为本专利技术实施例提供的另一种报文保序编号的编号示意图;图5为本专利技术实施例提供的一种报文的编号与地址对应关系的示意图;图6为本专利技术实施例提供的另一种报文的编号与地址对应关系的示意图;图7为本专利技术实施例提供的一种报文类型与存储器对应关系的示意图;图8为本专利技术实施例提供的一种报文出口信息的读取方法的流程示意图;图9为本专利技术实施例提供的一种报文出口信息存储情况的分布示意图;图10为本专利技术实施例提供的另一种报文出口信息存储情况的分布示意图;图11为本专利技术实施例提供的一种报文出口信息存储情况被部分读取后的分布示意图;图12为本专利技术实施例提供的一种转发引擎的结构示意图;图13为本专利技术实施例提供的另一种转发引擎的结构示意图。具体实施方式下面对本申请中所涉及的部分术语进行解释,以方便读者理解:“三层转发”,是指在数据通信网络中,利用网际协议来进行跨网段的数据通信。其中,网际协议(英文:InternetProtocol,缩写:IP,又称:互联网协议),是构成现今互联网技术的基石的协议,提供了不可靠的、无连接的数据传送服务,定义了在互联网上传输数据的具体格式。示例性的,目前IP协议可分为IPv4(英文:InternetProtocolversion4,中文:互联网协议的第4版)协议和IPv6(英文:InternetProtocolversion6,中文:互联网协议的第6版)协议两种协议类型,其中,IPv6协议的使用是为了解决IPv4网络地址资源有限的问题而提出的。此外,MPLS协议是新一代的IP高速骨干网络交换标准,用于快速数据包交换和路由的体系,为网络数据流量提供了目标、路由地址、转发和交换的能力。并且可以管理各种不同形式通信流的机制。MPLS根据IP地址映射得到一个固定长度的标签,用该标签进行数据转发,只有在网络边缘才需要分析IP报文头,从而节约了处理时间。“三层转发原理”,1)源主机在发起通信之前,先将自己的IP地址与目的主机的IP地址进行比较,若判断处于不同网段,则通过地址解析协议(AddressResolutionProtocol,简称ARP)请求报文获取网关的MAC(MediaAccessControl,介质访问控制)地址;2)网关收到源主机发来的ARP请求报文后,以一个ARP应答报文进本文档来自技高网...
一种报文出口信息的读写方法及转发引擎

【技术保护点】
一种报文出口信息的写入方法,其特征在于,应用于转发引擎,所述方法包括:当接收到报文时,获取所述报文的报文头信息;其中,所述报文头信息包括报文类型标识;为所述报文分配在所述转发引擎中的保序编号,并基于所述报文的报文头信息生成的查表关键字进行查表,查出所述报文的出口信息;基于所述报文在所述转发引擎中的保序编号确定的缓存地址,将所述报文的出口信息缓存至第一类目标存储器中;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。

【技术特征摘要】
1.一种报文出口信息的写入方法,其特征在于,应用于转发引擎,所述方法包括:当接收到报文时,获取所述报文的报文头信息;其中,所述报文头信息包括报文类型标识;为所述报文分配在所述转发引擎中的保序编号,并基于所述报文的报文头信息生成的查表关键字进行查表,查出所述报文的出口信息;基于所述报文在所述转发引擎中的保序编号确定的缓存地址,将所述报文的出口信息缓存至第一类目标存储器中;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。2.根据权利要求1所述的方法,其特征在于,当接收到一种或多种报文类型对应的报文时,所述为所述报文分配在所述转发引擎中的保序编号,包括:按照每种报文类型的报文的输入顺序,为所述每种报文类型的每个报文分别分配在所述转发引擎中的保序编号。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:基于所述报文在所述转发引擎中的保序编号确定的缓存地址,将所述报文的写入状态指示标识写入第二类目标存储器中;其中,所述第二类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第二类存储器;所述写入状态指示标识用于标识所述报文的出口信息在所述第一类目标存储器中的存储状态。4.一种报文出口信息的读取方法,其特征在于,应用于转发引擎,包括:当接收到读取报文的出口信息的读取命令时,获取所述报文在所述转发引擎中的保序编号及所述报文的报文类型标识;基于所述报文在所述转发引擎中的保序编号确定的缓存地址,从第一类目标存储器中,读取所述报文的出口信息;其中,所述第一类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第一类存储器。5.根据权利要求4所述的方法,其特征在于,当接收到读取一种或多种报文类型对应的报文的出口信息的读取命令时;所述获取所述报文在所述转发引擎中的保序编号及所述报文的报文类型标识之后,还包括:按照每种报文类型的优先级信息大小以及所述每种报文类型中报文的保序编号顺序,依次读取每个保序编号对应报文的出口信息。6.根据权利要求4所述的方法,其特征在于,所述方法还包括:基于所述报文在所述转发引擎中的保序编号确定的缓存地址,更换第二类目标存储器中存储的所述报文的写入状态指示标识;其中,所述第二类目标存储器为所述转发引擎中与所述报文的报文类型标识对应的第二类存储器;所述写入状态指示标识用于标识所述报文的出口信息在所述第一类目标存储器中的存储状态。7.一种转发引擎,其特征在于,所述转发引擎包...

【专利技术属性】
技术研发人员:王珊
申请(专利权)人:锐捷网络股份有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1