CN104468128B - 用于嵌入式网络处理器的网络接口类型扩展适配系统 - Google Patents
用于嵌入式网络处理器的网络接口类型扩展适配系统 Download PDFInfo
- Publication number
- CN104468128B CN104468128B CN201310451298.3A CN201310451298A CN104468128B CN 104468128 B CN104468128 B CN 104468128B CN 201310451298 A CN201310451298 A CN 201310451298A CN 104468128 B CN104468128 B CN 104468128B
- Authority
- CN
- China
- Prior art keywords
- network
- processor
- network data
- data packet
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000006978 adaptation Effects 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000000034 method Methods 0.000 claims description 12
- 238000007781 pre-processing Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种用于嵌入式网络处理器的网络接口类型扩展适配系统,该系统将网卡芯片收到的数据转换为嵌入式网络处理器能够识别的处理器消息,以及将所述嵌入式网络处理器提交的处理器消息转换为所述网卡芯片能够识别的数据包。本发明扩展了处理器所能支持的网络接口类型,增加了处理器的可使用情形。
Description
技术领域
本发明涉及处理器网络接口领域,特别涉及用于嵌入式网络处理器的网络接口类型扩展适配系统。
背景技术
这些年来掀起了嵌入式系统的应用热潮。一方面的原因是随着芯片技术的发展,单个芯片具有更强的处理能力,使集成多种接口已经成为可能,众多芯片生产厂商已经将注意力集中在这方面。另一方面的原因是应用的需要,由于对产品可靠性、成本、更新换代要求的提高,使得嵌入式系统逐渐从纯硬件实现和使用通用计算机实现的应用中脱颖而出,成为近年来令人关注的焦点。
嵌入式系统的核心是嵌入式处理器。嵌入式微处理器一般具备以下4个特点:1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间;2)具有很强的存储区保护功能;3)可扩展的处理器结构,以能最迅速地开发出满足应用的最高性能的嵌入式微处理器;4)功耗很低。
网络处理器是一种可编程器件,它特定的应用于通信领域的各种任务。器件内部通常由若干个微码处理器和若干硬件协处理器组成,多个微码处理器在网络处理器内部并行处理,通过预先编制的微码来控制处理流程。而一些复杂的标准操作(如内存操作、路由表查找算法、QoS的拥塞控制算法、流量调度算法等)则采用硬件协处理器来进一步提高处理性能,从而实现了业务灵活性和高性能的有机结合。
结合嵌入式处理器的特点,使用嵌入式服务器作为网络处理器可以有很好的性能。但特定的处理器有其自身所支持的特定网络接口类型,若遇到其不支持的类型就无法良好工作。为了充分发挥处理器性能,使其能应用于不同结构的硬件系统中,需要扩展其所支持的网络接口类型,从而增加其应用范围,使其在更多的系统中都能正常使用,体现其功能优势。
发明内容
本发明的目的在于克服现有技术中的嵌入式处理器所支持的网络接口类型有限的缺陷,从而提供一种适用范围广的用于嵌入式网络处理器的网络接口类型扩展适配系统。
为了实现上述目的,本发明提供了一种用于嵌入式网络处理器的网络接口类型扩展适配系统,该系统将网卡芯片102收到的数据转换为嵌入式网络处理器101能够识别的处理器消息,以及将所述嵌入式网络处理器101提交的处理器消息转换为所述网卡芯片102能够识别的数据包。
上述技术方案中,包括网卡芯片网络数据接收模块106、处理器网络数据接收模块107、处理器网络数据发送模块108以及网卡芯片网络数据发送模块109;其中,
所述网卡芯片网络数据接收模块106用于存储所述网卡芯片102从网络上接收的网络数据包,并将所述网络数据包的存储地址传递给所述处理器网络数据接收模块107;所述处理器网络数据接收模块107提取所述网络数据包的包头信息,对所述网络数据包进行预处理,并将预处理所得到的结果和网络数据包首地址封装为所述嵌入式网络处理器101能够识别的处理器消息;
所述处理器网络数据发送模块108用于解析嵌入式网络处理器101所提交的处理器消息,将处理器消息中所包含的数据重组为网络数据包后发送给所述网卡芯片网络数据发送模块109;所述网卡芯片网络数据发送模块109将所述网络数据包通过所述网卡芯片102发送到外部网络。
上述技术方案中,所述处理器网络数据接收模块107对所述网络数据包进行预处理包括:解析数据包类型,根据不同协议的数据包类型进行初步分类;根据包头信息计算哈希值;检验数据包校验和,以对数据包的正确性进行验证。
上述技术方案中,所述处理器网络数据发送模块108将处理器消息中所包含的数据重组为网络数据包包括:提取所述处理器消息中的一段或多段数据,并分配储存空间以对所提取的数据进行重组,对重组后的数据进行校验和计算。
本发明还提供了基于所述的用于嵌入式网络处理器的网络接口类型扩展适配系统的数据接收方法,包括:
步骤201)、网卡芯片102从外部网络103接收网络数据包;
步骤202)、网卡芯片网络数据接收模块106根据所接收的网络数据包的大小在存储设备中分配相应的存储空间,并提供存储的地址信息给处理器网络数据接收模块107;
步骤203)、处理器网络数据接收模块107根据网卡芯片接收模块106所提供的地址信息读取存储的网络数据包,对该网络数据包进行正确性的校验,根据校验结果,若该网络数据包正确,执行步骤204),若该网络数据包错误,执行步骤205);
步骤204)、识别数据包的类型,根据嵌入式网络处理器101处理网络数据包时所需的处理器消息要求,在处理器消息中填充数据包的类型信息,然后执行步骤206);
步骤205)、为所述步骤203)中通过校验发现为错误数据包的网络数据包填充嵌入式网络处理器101)的处理器消息中表示错包的相应字段,然后执行步骤208);
步骤206)、判断该网络数据包是否为TCP包,若为TCP包,执行步骤207),若不是TCP包,执行步骤208);
步骤207)、对于TCP包,根据数据包包头中的IP字段和端口字段的四元组进行哈希值计算,将哈希值计算结果填充到处理器消息的相应字段中;
步骤208)、重新构造数据结构,生成嵌入式网络处理器101所能识别的处理器消息;
步骤209)、处理器网络数据接收模块107把重新构造好的处理器消息提交给嵌入式网络处理器101。
本发明又提供了基于所述的用于嵌入式网络处理器的网络接口类型扩展适配系统的数据发送方法,包括:
步骤301)、处理器网络数据发送模块108获取嵌入式网络处理器101处理后的处理器消息;
步骤302)、解析该处理器消息,获取有效负载的首地址信息;
步骤303)、根据首地址获取有效负载后,对负载数据进行重组,重组后的结果保存在网络数据包中;
步骤304)、根据数据内容计算校验和,将计算结果填充网络数据包包头中的相应字段,然后将所得到的网络数据包发送到网卡芯片网络数据发送模块109;
步骤305)、网卡芯片网络数据发送模块109向外发送数据包,并释放数据包存储空间。
本发明的优点在于:
本发明扩展了处理器所能支持的网络接口类型,增加了处理器的可使用情形。
附图说明
图1是本发明的网络接口类型扩展适配系统的结构示意图;
图2是本发明的网络接口类型扩展适配系统在做数据接收时的工作流程图;
图3是本发明的网络接口类型扩展适配系统在做数据发送时的工作流程图。
具体实施方式
现结合附图对本发明作进一步的描述。
在对本发明的系统做详细说明之前,首先对本发明的应用场景进行说明。
参考图1,在一应用场景中,网卡芯片102的一端连接到外部网络103,所述网卡芯片102的另一端需要与嵌入式网络处理器101连接。正如在背景技术中所提到的,嵌入式网络处理器101所支持的网络接口类型有限,未必包含网卡芯片102所支持的网络接口类型。若嵌入式网络处理器101所支持的网络接口类型与网卡芯片102所支持的网络接口类型之间存在冲突,将会给两者之间的数据交换造成影响。本发明的网络接口类型扩展适配系统能够克服这一问题,实现网卡芯片102与嵌入式网络处理器101之间的数据交互。
本发明的网络接口类型扩展适配系统与嵌入式网络处理器101、网卡芯片102协同工作,将网卡芯片102收到的数据转换为嵌入式网络处理器101可识别的处理器消息,将嵌入式网络处理器101提交的处理器消息转换为网卡芯片102可识别的数据包。该系统包括网卡芯片网络数据接收模块106、处理器网络数据接收模块107、处理器网络数据发送模块108以及网卡芯片网络数据发送模块109;其中,所述网卡芯片网络数据接收模块106、网卡芯片网络数据发送模块109位于网卡芯片102上,所述处理器网络数据接收模块107、处理器网络数据发送模块108位于嵌入式网络处理器101上,所述网卡芯片网络数据接收模块106与处理器网络数据接收模块107之间建立通信连接,处理器网络数据发送模块108与网卡芯片网络数据发送模块109之间建立通信连接。网卡芯片网络数据接收模块106,处理器网络数据接收模块107和嵌入式网络处理器101形成数据接收部分104,处理器网络数据发送模块108,网卡芯片网络数据发送模块109和嵌入式网络处理器101形成数据发送部分105。
网卡芯片网络数据接收模块106用于处理网卡芯片102从网络上接收的网络数据包,包括:根据所接收数据包的大小分配相应的存储空间,存储所收到的数据,并将数据包存储的首地址传递给处理器网络数据接收模块107。
处理器网络数据接收模块107用于模拟嵌入式网络处理器101的数据输入单元,处理网卡芯片网络数据接收模块106所提交的数据包。该模块对数据包的处理包括:提取数据包包头信息,以进行数据包预处理;数据包预处理;将数据包预处理信息和数据包首地址封装为嵌入式网络处理器101可识别的处理器消息。其中,所述数据包预处理包括:解析数据包类型,根据不同协议的数据包类型进行初步分类;根据包头信息计算哈希值;检验数据包校验和,以对数据包的正确性进行验证。
处理器网络数据发送模块108用于解析嵌入式网络处理器101所提交的处理器消息,提取所述处理器消息中的一段或多段数据,并分配储存空间以对数据进行重组,对重组后的数据进行校验和计算,并将重组后的数据包首地址传递给网卡芯片网络数据发送模块109。
网卡芯片网络数据发送模块109接收处理器网络数据发送模块108提交的数据包首地址,根据该地址读取数据包并通过网卡芯片102将数据包发送到网络。
下面以本发明系统为基础,对嵌入式网络处理器如何利用该系统实现数据接收与数据发送的过程进行描述。
参考图2,所述数据接收的工作流程包括:
步骤201、网卡芯片102从外部网络103接收网络数据包;
步骤202、网卡芯片网络数据接收模块106根据所接收的网络数据包的大小在存储设备中分配相应的存储空间,并提供存储的地址信息给处理器网络数据接收模块107。
步骤203、处理器网络数据接收模块107根据网卡芯片接收模块106所提供的地址信息读取存储的网络数据包,对该网络数据包进行正确性的校验,根据校验结果,若该网络数据包正确,执行步骤204,若该网络数据包错误,执行步骤205。
步骤204、识别数据包的类型,根据嵌入式网络处理器101处理网络数据包时所需的处理器消息要求,在处理器消息中填充数据包的类型信息,然后执行步骤206。所述处理器消息为嵌入式网络处理器101所能识别的数据格式,其至少包括用于表示数据包类型的字段、用于表示数据包是否为错包的字段、用于存储哈希值计算结果的字段。
步骤205、为所述步骤203中通过校验发现为错误数据包的网络数据包填充嵌入式网络处理器101的处理器消息中表示错包的相应字段,然后执行步骤208。
步骤206、判断该网络数据包是否为TCP包,若为TCP包,执行步骤207,若不是TCP包,执行步骤208。
步骤207、对于TCP包,根据数据包包头中的IP字段和端口字段的四元组(包括源IP,目的IP,源端口,目的端口)进行哈希值计算,将哈希值计算结果填充到处理器消息的相应字段中。
步骤208、重新构造数据结构,生成嵌入式网络处理器101所能识别的处理器消息。
步骤209、处理器网络数据接收模块107把重新构造好的处理器消息提交给嵌入式网络处理器101。
参考图3,所述数据发送的工作流程包括:
步骤301、处理器网络数据发送模块108获取嵌入式网络处理器101处理后的处理器消息。
步骤302、解析该处理器消息,获取有效负载的首地址信息。
步骤303、根据首地址获取有效负载后,对负载数据进行重组,重组后的结果保存在网络数据包中。由于一个网络数据包中的内容通常被分成多段,所述多段由不同的处理器消息负载,因此在本步骤中需要对负载数据进行重组。
步骤304、根据数据内容计算校验和,将计算结果填充网络数据包包头中的相应字段,然后将所得到的网络数据包发送到网卡芯片网络数据发送模块109。
步骤305、网卡芯片网络数据发送模块109向外发送数据包,并释放数据包存储空间。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种用于嵌入式网络处理器的网络接口类型扩展适配系统,其特征在于,该系统将网卡芯片(102)收到的数据转换为嵌入式网络处理器(101)能够识别的处理器消息,以及将所述嵌入式网络处理器(101)提交的处理器消息转换为所述网卡芯片(102)能够识别的数据包;
所述系统包括网卡芯片网络数据接收模块(106)、处理器网络数据接收模块(107)、处理器网络数据发送模块(108)以及网卡芯片网络数据发送模块(109);其中,
所述网卡芯片网络数据接收模块(106)用于存储所述网卡芯片(102)从网络上接收的网络数据包,并将所述网络数据包的存储地址传递给所述处理器网络数据接收模块(107);所述处理器网络数据接收模块(107)提取所述网络数据包的包头信息,对所述网络数据包进行预处理,并将预处理所得到的结果和网络数据包首地址封装为所述嵌入式网络处理器(101)能够识别的处理器消息;
所述处理器网络数据发送模块(108)用于解析嵌入式网络处理器(101)所提交的处理器消息,将处理器消息中所包含的数据重组为网络数据包后发送给所述网卡芯片网络数据发送模块(109);所述网卡芯片网络数据发送模块(109)将所述网络数据包通过所述网卡芯片(102)发送到外部网络。
2.根据权利要求1所述的用于嵌入式网络处理器的网络接口类型扩展适配系统,其特征在于,所述处理器网络数据接收模块(107)对所述网络数据包进行预处理包括:解析数据包类型,根据不同协议的数据包类型进行初步分类;根据包头信息计算哈希值;检验数据包校验和,以对数据包的正确性进行验证。
3.根据权利要求1所述的用于嵌入式网络处理器的网络接口类型扩展适配系统,其特征在于,所述处理器网络数据发送模块(108)将处理器消息中所包含的数据重组为网络数据包包括:提取所述处理器消息中的一段或多段数据,并分配储存空间以对所提取的数据进行重组,对重组后的数据进行校验和计算。
4.基于权利要求1-3之一所述的用于嵌入式网络处理器的网络接口类型扩展适配系统的数据接收方法,包括:
步骤201)、网卡芯片(102)从外部网络(103)接收网络数据包;
步骤202)、网卡芯片网络数据接收模块(106)根据所接收的网络数据包的大小在存储设备中分配相应的存储空间,并提供存储的地址信息给处理器网络数据接收模块(107);
步骤203)、处理器网络数据接收模块(107)根据网卡芯片网络数据 接收模块(106)所提供的地址信息读取存储的网络数据包,对该网络数据包进行正确性的校验,根据校验结果,若该网络数据包正确,执行步骤204),若该网络数据包错误,执行步骤205);
步骤204)、识别数据包的类型,根据嵌入式网络处理器(101)处理网络数据包时所需的处理器消息要求,在处理器消息中填充数据包的类型信息,然后执行步骤206);
步骤205)、为所述步骤203)中通过校验发现为错误数据包的网络数据包填充嵌入式网络处理器(101)的处理器消息中表示错包的相应字段,然后执行步骤208);
步骤206)、判断该网络数据包是否为TCP包,若为TCP包,执行步骤207),若不是TCP包,执行步骤208);
步骤207)、对于TCP包,根据数据包包头中的IP字段和端口字段的四元组进行哈希值计算,将哈希值计算结果填充到处理器消息的相应字段中;
步骤208)、重新构造数据结构,生成嵌入式网络处理器(101)所能识别的处理器消息;
步骤209)、处理器网络数据接收模块(107)把重新构造好的处理器消息提交给嵌入式网络处理器(101)。
5.基于权利要求1-3之一所述的用于嵌入式网络处理器的网络接口类型扩展适配系统的数据发送方法,包括:
步骤301)、处理器网络数据发送模块(108)获取嵌入式网络处理器(101)处理后的处理器消息;
步骤302)、解析该处理器消息,获取有效负载的首地址信息;
步骤303)、根据首地址获取有效负载后,对负载数据进行重组,重组后的结果保存在网络数据包中;
步骤304)、根据数据内容计算校验和,将计算结果填充网络数据包包头中的相应字段,然后将所得到的网络数据包发送到网卡芯片网络数据发送模块(109);
步骤305)、网卡芯片网络数据发送模块(109)向外发送数据包,并释放数据包存储空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310451298.3A CN104468128B (zh) | 2013-09-25 | 2013-09-25 | 用于嵌入式网络处理器的网络接口类型扩展适配系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310451298.3A CN104468128B (zh) | 2013-09-25 | 2013-09-25 | 用于嵌入式网络处理器的网络接口类型扩展适配系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104468128A CN104468128A (zh) | 2015-03-25 |
CN104468128B true CN104468128B (zh) | 2018-08-03 |
Family
ID=52913558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310451298.3A Expired - Fee Related CN104468128B (zh) | 2013-09-25 | 2013-09-25 | 用于嵌入式网络处理器的网络接口类型扩展适配系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104468128B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682311B (zh) * | 2017-08-24 | 2020-03-31 | 东南大学 | 一种硬件实现的多链接tcp数据重组系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101409673A (zh) * | 2008-11-12 | 2009-04-15 | 北京恒光创新科技股份有限公司 | 一种网络适配器数据传输方法、网络适配器及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8694654B1 (en) * | 2010-03-23 | 2014-04-08 | Juniper Networks, Inc. | Host side protocols for use with distributed control plane of a switch |
-
2013
- 2013-09-25 CN CN201310451298.3A patent/CN104468128B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101409673A (zh) * | 2008-11-12 | 2009-04-15 | 北京恒光创新科技股份有限公司 | 一种网络适配器数据传输方法、网络适配器及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104468128A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10868767B2 (en) | Data transmission method and apparatus in optoelectronic hybrid network | |
CN111131037B (zh) | 基于虚拟网关的数据传输方法、装置、介质与电子设备 | |
US20170054640A1 (en) | Device and method for establishing connection in load-balancing system | |
CN112822276B (zh) | 一种变电站站控层通信方法、系统、电子设备及存储介质 | |
CN110324405B (zh) | 消息发送方法、装置、系统及计算机可读存储介质 | |
US20140019572A1 (en) | Remote Direct Memory Access Socket Aggregation | |
WO2014180110A9 (zh) | 数据处理装置及数据处理方法 | |
US10735294B2 (en) | Integrating a communication bridge into a data processing system | |
CN113179216B (zh) | 一种寄存器的远程配置方法、计算机设备及存储介质 | |
CN109669787B (zh) | 数据传输方法及装置、存储介质、电子设备 | |
CN110647490A (zh) | 数据传输方法、装置、设备以及计算机存储介质 | |
JP5479710B2 (ja) | データを処理するためのプロセッサ‐サーバ・ハイブリッド・システムおよび方法 | |
CN112925297B (zh) | 自动驾驶算法验证方法、装置、设备、存储介质及产品 | |
CN117931478A (zh) | 进程间通信方法、装置及存储介质 | |
US11604753B2 (en) | Inter device data exchange via external bus by utilizing communication port | |
CN113220481A (zh) | 请求处理及反馈方法、装置、计算机设备及可读存储介质 | |
CN104468128B (zh) | 用于嵌入式网络处理器的网络接口类型扩展适配系统 | |
CN112399446A (zh) | 边缘网关通信方法、装置、计算机设备和存储介质 | |
US20160261719A1 (en) | Information processing system, control program, and control method | |
CN109766347B (zh) | 一种数据更新方法、装置、系统、计算机设备及存储介质 | |
CN113329075B (zh) | 金融业务的办理方法及装置 | |
CN113676521A (zh) | 业务请求的响应方法、装置及电子设备 | |
CN113422792B (zh) | 数据传输方法、装置、电子设备及计算机存储介质 | |
CN105389355B (zh) | 数据处理方法和终端 | |
CN114422625A (zh) | 数据接入方法及网关 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180803 |
|
CF01 | Termination of patent right due to non-payment of annual fee |