报文处理方法及装置与流程

文档序号:17071436发布日期:2019-03-08 23:21阅读:165来源:国知局
报文处理方法及装置与流程

本发明涉及通信技术领域,具体而言,涉及一种报文处理方法及装置。



背景技术:

asic(applicationspecificintegratedcircuit,专用集成电路)芯片,因其在批量生产时与通用集成电路相比具有体积小、功耗低、性能高、保密性强等优点而被广泛应用于传统的网络设备中,如交换机路由器。

但随着科技的发展,为了满足网络设备更好的服务于现在的业务需求,传统的网络设备已经不能满足需求。于是,出现了一些新的网络技术,如segmentrouting(路由段)、in-bandnetworktelemetry(带内网络遥测)、flexe(灵活以太网)等。这些新网络技术需要asic芯片支持新的电路逻辑,以识别新技术的报文,因此需要对asic芯片的内部电路进行重新规划设计。

但是,为了新技术再重新设计内部电路生产asic芯片,会存在设计周期长、成本高等问题。



技术实现要素:

本发明的目的在于,针对上述现有技术中的不足,提供一种报文处理方法,以解决现有技术中asic芯片不能识别新网络技术报文的问题。

为实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种报文处理方法,应用于网络设备,所述网络设备包括:依次通信连接的入口现场可编程门阵列fpga、交换芯片及出口fpga,所述方法包括:

网络设备获取待传输业务报文;

所述网络设备通过所述入口fpga识别所述待传输业务报文中的预设待识别字段中的内容,将所述预设待识别字段中的内容携带在地址字段,并将所述待传输业务报文中的待处理字段中的内容转换为所述交换芯片可识别格式,以及将所述地址字段和所述交换芯片可识别格式的待处理字段发送至所述交换芯片;

所述网络设备通过所述交换芯片接收所述地址字段及所述待处理字段,并处理所述待处理字段中的内容,将处理后的待处理字段及地址字段发送至所述出口fpga;

所述网络设备通过所述出口fpga接收所述处理后的待处理字段及地址字段,识别所述地址字段中所述预设待识别字段中的内容,并恢复所述预设待识别字段中的内容至所述预设待识别字段,得到更新后的业务报文。

可选地,所述网络设备通过所述入口fpga识别所述待传输业务报文中的预设待识别字段中的内容,所述预设待识别字段中的内容携带在地址字段,包括:

所述网络设备通过所述入口fpga识别所述预设待识别字段中下一网络设备的接口地址,将所述下一网络设备的接口地址携带在介质访问mac地址字段。

可选地,所述网络设备将处理后的待处理字段及地址字段发送至所述出口fpga,还包括:

封装所述mac地址字段,并将所述处理后的待处理字段及封装后的所述mac地址字段发送至所述出口fpga。

可选地,所述识别所述地址字段中所述预设待识别字段中的内容,并恢复所述预设待识别字段中的内容至所述预设待识别字段之后,还包括:

删除所述地址字段中所述预设待识别字段中的内容。

可选地,所述网络设备通过所述交换芯片接收所述地址字段及所述待处理字段,并处理所述待处理字段,包括:

所述网络设备通过所述交换芯片接收所述地址字段及所述待处理字段;

解析获取所述待处理字段中的业务数据,并对所述业务数据进行处理。

第二方面,本发明实施例还提供了一种报文处理装置,应用于网络设备,所述网络设备包括:依次通信连接的入口现场可编程门阵列fpga、交换芯片及出口fpga,所述装置包括:

获取模块,用于获取待传输业务报文;

第一发送模块,用于通过所述入口fpga识别所述待传输业务报文中的预设待识别字段中的内容,将所述预设待识别字段中的内容携带在地址字段,并将所述待传输业务报文中的待处理字段中的内容转换为所述交换芯片可识别格式,以及将所述地址字段和所述交换芯片可识别格式的待处理字段发送至所述交换芯片;

第二发送模块,用于通过所述交换芯片接收所述地址字段及所述待处理字段,并处理所述待处理字段中的内容,将处理后的待处理字段及地址字段发送至所述出口fpga;

处理模块,用于通过所述出口fpga接收所述处理后的待处理字段及地址字段,识别所述地址字段中所述预设待识别字段中的内容,并恢复所述预设待识别字段中的内容至所述预设待识别字段,得到更新后的业务报文。

可选地,所述处理模块,具体用于所述网络设备通过所述入口fpga识别所述预设待识别字段中下一网络设备的接口地址,将所述下一网络设备的接口地址携带在介质访问mac地址字段。

可选地,所述第二发送模块,具体用于封装所述mac地址字段,并将所述处理后的待处理字段及封装后的所述mac地址字段发送至所述出口fpga。

可选地,还包括:删除模块,用于删除所述地址字段中所述预设待识别字段中的内容。

可选地,所述第二发送模块,具体用于所述网络设备通过所述交换芯片接收所述地址字段及所述待处理字段;解析获取所述待处理字段中的业务数据,并对所述业务数据进行处理。

本发明的有益效果是:

本申请提供的报文处理方法,应用于网络设备,该网络设备包括依次通信连接的入口fpga、交换芯片及出口fpga。其中,网络设备获取待传输的业务报文,且通过入口fpga识别待传输业务报文中的预设待识别字段的内容,并将待传输业务报文中的待处理字段转换为交换芯片可识别格式。交换芯片接收地址字段及待处理字段,并处理待处理字段中的内容。出口fpga接收处理后的待处理字段及地址字段,识别地址字段中预设待识别字段中的内容,并恢复预设待识别字段中的内容至预设待识别字段,得到更新后的业务报文。使用该业务报文的传输方法,可在无需更改交换芯片内部电路的基础上,实现对新网络技术报文的识别及传输。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请提供的一种报文处理方法技术架构示意图;

图2为本申请一实施例提供的一种报文处理方法流程示意图;

图3为本申请另一实施例提供的一种报文处理方法流程示意图;

图4为本申请一实施例提供的一种报文处理装置模块示意图;

图5为本申请另一实施例提供的一种报文处理装置模块示意图;

图6为本申请又一实施例提供的一种报文处理装置模块示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

如图1、图2所示,图1为本申请提供的一种报文处理方法技术架构示意图,图2为本申请一实施例提供的一种报文处理方法流程示意图。

该报文处理方法应用于网络设备,该网络设备包括:依次通信连接的入口现场可编程门阵列fpga、交换芯片及出口fpga。上述报文处理方法包括:

s210、网络设备获取待传输业务报文。

上述待传输业务报文,指新兴网络技术传输的业务报文,如:分段路由(segmentrouting)报文、带内网络遥测(in-bandnetworktelemetry)报文、灵活以太网(flexethernet)报文等。但本实施例提供的报文处理方法并不以上述几种报文为限制。

s220、网络设备通过入口fpga识别待传输业务报文中的预设待识别字段中的内容,将预设待识别字段中的内容携带在地址字段,并将待传输业务报文中的待处理字段的内容转换为交换芯片可识别格式,以及将地址字段和交换芯片可识别格式的待处理字段发送至交换芯片。

需要说明的是,预设待识别字段指新网络技术传输的报文中,不同于传统网络技术传输报文所改进的字段或新增的字段,并将预设待识别字段中的内容携带在地址字段中,便于识别。待处理字段指的是新网络技术中传输的报文中,与传统网络技术报文相同的字段。

其中,上述提到的交换芯片指的是专用的集成电路(applicationspecificintegratedcircuit,简称asic)芯片。

进一步需要说明的是,步骤s220还需将待处理字段转换为交换芯片可识别的格式,以方便交换芯片对待处理字段做相应处理。

s230、网络设备通过交换芯片接收地址字段及待处理字段,并处理待处理字段中的内容,将处理后的待处理字段及地址字段发送至出口fpga。

在此步骤中,将接收的待传输业务报文分为两部分,一部分为交换芯片所能识别的待处理字段,此处待处理字段中的内容的报文格式与传统网络传输的报文格式相同,因此交换芯片能够对待处理字段中的内容进行相应处理。另一部分为携带在地址字段中预设待识别字段中的内容,由于该字段为新网络技术所改变或增加的字段,交换芯片并不能对新字段做相应识别,因此交换芯片会将处理后的待处理字段中的内容及未处理的预设待识别字段中的内容传送给出口fpga。

s240、网络设备通过出口fpga接收处理后的待处理字段及地址字段,识别地址字段中预设待识别字段中的内容,并恢复预设待识别字段中的内容至预设待识别字段,得到更新后的业务报文。

步骤s240接收到经步骤s230处理后的报文,对步骤s230中未能处理的预设待识别字段中的内容做相应的识别及处理,并更新该报文格式,得到更新后的报文,更新后,预设待识别字段中的内容已经被识别,此时预设待识别字段中已经清空,并不携带任何内容。将更新后的业务报文传输至下一个网络设备时,重新识别下一个网络设备中的设待识别字段中的内容,并将下一个网络设备中的设待识别字段中的内容放至预设待识别字段,再重复步骤s220。

本发明提供的报文处理方法,应用于网络设备,该网络设备包括依次通信连接的入口fpga、交换芯片及出口fpga。其中,网络设备获取待传输的业务报文,且通过入口fpga识别待传输业务报文中的预设待识别字段的内容,并将待传输业务报文中的待处理字段转换为交换芯片可识别格式。交换芯片接收地址字段及待处理字段,并处理待处理字段中的内容。出口fpga接收处理后的待处理字段及地址字段,识别地址字段中预设待识别字段中的内容,并恢复预设待识别字段中的内容至预设待识别字段,得到更新后的业务报文。使用该业务报文的传输方法,可在无需更改交换芯片内部电路的基础上,实现对新网络技术报文的识别及传输。

进一步地,网络设备通过入口fpga识别待传输业务报文中的预设待识别字段中的内容,预设待识别字段中的内容携带在地址字段,包括:

网络设备通过入口fpga识别预设待识别字段中下一网络设备的接口地址,将下一网络设备的接口地址携带在介质访问mac地址字段。

其中,介质访问mac地址字段全称为mediaaccesscontrol,简称mac地址。

需要说明的是,预设待识别字段中除携带预设待识别字段中的内容外,还需携带下一个网络设备的接口地址,为指示该报文下一步应传送给哪一个网络设备,组成一条完整的报文传输线路。

可选地,将下一个网络设备的接口地址携带在介质访问mac地址字段,其中mac地址字段分为,源地址字段(sourcemac,简称smac)及目标地址字段(destinationmac,简称dmac),下一个网络设备的接口地址可携带在smac字段中,也可携带在dmac字段中,具体的携带位置在此不做限制。

进一步地,网络设备将处理后的待处理字段及地址字段发送至出口fpga,还包括:

封装mac地址字段,并将处理后的待处理字段及封装后的mac地址字段发送至出口fpga。

其中,封装mac地址字段的目的是,将预设待识别字段中的内容与待处理字段的内容区别开,便于交换芯片识别并处理待处理字段中的内容,由于预设待识别字段中的内容封装在mac地址中,因此交换芯片不会对其进行处理,从而也便于下一个出口fpga解封装,对其进行识别。

进一步地,识别地址字段中预设待识别字段中的内容,并恢复预设待识别字段中的内容至预设待识别字段之后,还包括:

删除地址字段中预设待识别字段中的内容。

恢复预设待识别字段中的内容至预设待识别字段的目的是,为了传输一个空的预设待识别字段至下一个网络设备,下一个网络需根据待传输业务报文传输路径写入下下一个网络设备的接口地址,以将待传输的业务报问按照指定路线进行传输。因此,在恢复预设待识别字段中的内容至预设待识别字段之后,还需要删除地址字段中预设待识别字段中的内容。

图3为本申请另一实施例提供的一种报文处理方法流程示意图,如图3所示,网络设备通过交换芯片接收地址字段及待处理字段,并处理待处理字段,包括:

s310、网络设备通过交换芯片接收地址字段及待处理字段。

本步骤中,接收到的地址字段及待处理字段,交换芯片对地址字段进行封装、并对待处理字段进行相应的识别及处理。

s320、解析获取待处理字段中的业务数据,并对业务数据进行处理。

相应地,解析获取待处理字段中的业务数据,根据解析结果,分别进行虚拟局域网(virtuallocalareanetwork,简称vlan)处理、mac处理、多协议标签交换(multi-protocollabelswitching,简称mpls)处理、路由处理,并将待处理字段中的业务数据送往交通管理(trafficmanagement)进行服务质量(qualityofservice,简称qos)和组播的处理,处理的结果通过内部报文头(header)携带给交换网板(fabric)。

进一步解析内部报文头携带的信息进行信元交换处理并传送业务数据,再由交通管理(trafficmanagement)进行服务质量(qualityofservice,简称qos)和组播的处理,然后对待处理字段进行编辑处理,并发送至出口fpga。

图4为本申请一实施例提供的一种报文处理装置模块图,如图4所示,该装置应用于网络设备,该网络设备包括:依次通信连接的入口现场可编程门阵列fpga、交换芯片及出口fpga,该装置具体包括:获取模块401、第一发送模块402、第二发送模块403及处理模块404。

获取模块401,用于获取待传输业务报文。

第一发送模块402,用于通过入口fpga识别待传输业务报文中的预设待识别字段中的内容,将预设待识别字段中的内容携带在地址字段,并将待传输业务报文中的待处理字段中的内容转换为交换芯片可识别格式,以及将地址字段和交换芯片可识别格式的待处理字段发送至交换芯片。

第二发送模块403,用于通过交换芯片接收地址字段及待处理字段,并处理待处理字段中的内容,将处理后的待处理字段及地址字段发送至出口fpga。

处理模块404,用于通过出口fpga接收处理后的待处理字段及地址字段,识别地址字段中预设待识别字段中的内容,并恢复预设待识别字段中的内容至预设待识别字段,得到更新后的业务报文。

进一步地,处理模块404,具体用于网络设备通过入口fpga识别预设待识别字段中下一网络设备的接口地址,将下一网络设备的接口地址携带在介质访问mac地址字段。

进一步地,第二处理模块403,具体用于封装mac地址字段,并将处理后的待处理字段及封装后的mac地址字段发送至出口fpga。

图5为本申请又一实施例提供的一种报文处理装置模块示意图,如图5所示,该报文处理装置还包括:删除模块405,用于删除地址字段中预设待识别字段中的内容。

进一步地,第二发送模块403,具体用于网络设备通过交换芯片接收地址字段及待处理字段。解析获取待处理字段中的业务数据,并对业务数据进行处理。

上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。

以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),或,一个或多个微处理器(digitalsingnalprocessor,简称dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

图6为本申请又一实施例提供的一种报文处理装置模块示意图,该装置可以集成于终端设备或者终端设备的芯片,该终端可以是具备图像处理功能的计算设备。

该装置包括:存储器601、处理器602。

存储器601用于存储程序,处理器602调用存储器601存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。

可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述方法实施例。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取存储器(英文:randomaccessmemory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1