CN104639335A - 智能网卡驱动的二次开发系统及其方法 - Google Patents

智能网卡驱动的二次开发系统及其方法 Download PDF

Info

Publication number
CN104639335A
CN104639335A CN201510048878.7A CN201510048878A CN104639335A CN 104639335 A CN104639335 A CN 104639335A CN 201510048878 A CN201510048878 A CN 201510048878A CN 104639335 A CN104639335 A CN 104639335A
Authority
CN
China
Prior art keywords
intelligent network
network adapter
user
card
module
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.)
Granted
Application number
CN201510048878.7A
Other languages
English (en)
Other versions
CN104639335B (zh
Inventor
周立
邹昕
张家琦
李晓倩
翟海滨
王勇
邹学强
李静
李旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Sinovatio Technology LLC
National Computer Network and Information Security Management Center
Original Assignee
Nanjing Sinovatio Technology LLC
National Computer Network and Information Security Management Center
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Sinovatio Technology LLC, National Computer Network and Information Security Management Center filed Critical Nanjing Sinovatio Technology LLC
Priority to CN201510048878.7A priority Critical patent/CN104639335B/zh
Publication of CN104639335A publication Critical patent/CN104639335A/zh
Application granted granted Critical
Publication of CN104639335B publication Critical patent/CN104639335B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种智能网卡驱动的二次开发系统及其方法,该智能网卡串接于局域网或小型企业网出口处,对途经的报文进行分析与管理,智能网卡的卡端驱动划分为卡端静态库和用户扩展模块两部分:所述的卡端静态库,由开发者提供,包括网卡功能模块和API模块;所述的用户扩展模块,由用户侧自行开发,作为网卡端驱动的功能扩展。本发明将卡端正常运行所需的程序与提供给用户的API接口封装至静态库,用户可以根据自身需求方便高效的定制不同版本,实现快速二次开发。

Description

智能网卡驱动的二次开发系统及其方法
技术领域
 本发明涉及一种智能网卡驱动的实现系统及其方法,具体地说是实现了一种用户在网卡端对驱动定制开发功能。
背景技术
目前,网络信息技术正以前所未有的速度发展、膨胀,同时也给当今的网络业务提出了更高的要求。由于网络的高度普及,目前已遍布社会各层面,网络不仅需要给用户提供正常的用户业务,更需要具备良好的安全性能。
常规的网络设备大多在服务器端实现网络数据获取、分析等功能。为更好的应对日益增大的数据流量,减少服务器负担,网卡端逐渐开始被加入网络报文的预处理功能。网卡作为独立设备,具有封闭性和单一性两个缺陷,卡端程序一旦完成,难以根据实际情况和客户需求灵活更改。
发明内容
本发明的目的是针对在现有的复杂网络环境下,网络管理任务繁重,功能扩展困难,难以灵活满足用户所有需求这一缺陷,提出一种可在网卡端驱动二次开发的网卡驱动实现系统及其方法。该方法将网卡所必需的各功能模块及对用空间开放的API函数封装于静态库,用户可根据不同网络环境与自身需求,利用API做网卡端功能扩展,定制符合不同需求的网卡驱动版本。将网卡的功能扩展部分以简单的接口形式提供给用户,大幅提高了网卡功能开发效率。
本发明的技术方案是:
一种智能网卡驱动的二次开发系统,该智能网卡串接于局域网或小型企业网出口处,对途经的报文进行分析与管理,智能网卡的卡端驱动划分为卡端静态库和用户扩展模块两部分:
所述的卡端静态库,由开发者提供,包括网卡功能模块和API模块;
所述的用户扩展模块,由用户侧自行开发,作为网卡端驱动的功能扩展。
一种智能网卡驱动的二次开发方法,智能网卡端的驱动步骤为:
(1)、开发者侧将维持网卡运作的功能,封装为网卡功能模块;将网卡所支持的扩展功能,封装为API模块,并提供外部操作接口;
(2)、将网卡功能模块与API模块合并封装为卡端静态库,提供给用户做二次开发;
(3)、用户侧根据自身需求,通过API模块中提供的外部操作接口,为网卡驱动增加功能,用户侧所有新增功能将作为用户扩展模块;
(4)、最终网卡驱动由用户扩展模块和卡端静态库共同编译生成。
本发明的智能网卡通过PCI-E接口与服务器连接,卡端驱动负责控制智能网卡做以太网收发、报文解析并调用用户侧开发的扩展功能,将处理结果以DMA形式上送到服务器端缓存。
本发明的智能网卡端与服务器连接通信时,智能网卡在服务器端的驱动负责分配缓存,接收智能网卡DMA通信数据,用于服务器内部应用做进一步处理。
本发明的API模块将用户需要的功能设置为外部可操作的接口,并在网卡功能模块中预留调用点,用户自行开发的扩展功能通过函数回调机制,在用户扩展模块和卡端静态库模块编译阶段融合进卡端驱动。
    本发明的有益效果:
本发明提供了一种智能网卡驱动的二次开发系统及其方法,可以在卡端对收到的报文做解析,有效的减轻后台服务器CPU负担;同时针对网卡端驱动的封闭性和单一性这两个缺陷,为用户侧提供开发接口,增加卡端功能扩展能力。
附图说明
图1是本发明的卡端程序生成过程示意图。
图2是本发明的框架原理示意图。
具体实施方式
    下面结合附图和实施例对本发明作进一步的说明。
    如图1所示,卡端驱动由卡端静态库和用户扩展模块两部分共同生成,具体步骤为:
(1)、开发者侧将维持网卡运作的功能,封装为网卡功能模块;将网卡所支持的扩展功能,封装为API模块,并提供外部操作接口;
(2)、将网卡功能模块与API模块合并封装为卡端静态库,提供给用户做二次开发;
(3)、用户侧根据自身需求,可根据API模块中提供的外部操作接口,为网卡驱动增加功能,用户侧所有新增功能将作为用户扩展模块;
(4)、最终网卡驱动由用户扩展模块和卡端静态库共同编译生成。
其中API模块提供的外部接口有:网卡与主机DMA接口、报文协议配置接口、加解密算法配置接口、2-3层任意元组特定报文捕获与统计接口、流统计接口。
如图2所示,网卡通过PCI-E接口与服务器连接,卡端驱动负责控制智能网卡做以太网收发、报文解析并调用用户侧开发的扩展功能,将处理结果以DMA形式上送到服务器端缓存。服务器端驱动在本地建立缓存,接收卡端数据,并分配给应用层,对数据做进一步处理。
本发明未涉及部分均与现有技术相同或可采用现有技术加以实现。

Claims (8)

1.一种智能网卡驱动的二次开发系统,该智能网卡串接于局域网或小型企业网出口处,对途经的报文进行分析与管理,其特征是,智能网卡的卡端驱动划分为卡端静态库和用户扩展模块两部分:
所述的卡端静态库,由开发者提供,包括网卡功能模块和API模块;
所述的用户扩展模块,由用户侧自行开发,作为网卡端驱动的功能扩展。
2.根据权利要求1所述的智能网卡驱动的二次开发系统,其特征是智能网卡通过PCI-E接口与服务器连接,卡端驱动负责控制智能网卡做以太网收发、报文解析并调用用户侧开发的扩展功能,将处理结果以DMA形式上送到服务器端缓存。
3.根据权利要求2所述的智能网卡驱动的二次开发系统,其特征是智能网卡端与服务器连接通信时,智能网卡在服务器端的驱动负责分配缓存,接收智能网卡DMA通信数据,用于服务器内部应用做进一步处理。
4.根据权利要求1中所述的智能网卡驱动的二次开发系统,其特征是API模块将用户需要的功能设置为外部可操作的接口,并在网卡功能模块中预留调用点,用户自行开发的扩展功能通过函数回调机制,在用户扩展模块和卡端静态库模块编译阶段融合进卡端驱动。
5.一种智能网卡驱动的二次开发方法,应用权利要求1所述的智能网卡驱动的二次开发系统,其特征是智能网卡端的驱动步骤为:
(1)、开发者侧将维持网卡运作的功能,封装为网卡功能模块;将网卡所支持的扩展功能,封装为API模块,并提供外部操作接口;
(2)、将网卡功能模块与API模块合并封装为卡端静态库,提供给用户做二次开发;
(3)、用户侧根据自身需求,通过API模块中提供的外部操作接口,为网卡驱动增加功能,用户侧所有新增功能将作为用户扩展模块;
(4)、最终网卡驱动由用户扩展模块和卡端静态库共同编译生成。
6.根据权利要求5所述的智能网卡驱动的二次开发方法,其特征是智能网卡通过PCI-E接口与服务器连接,卡端驱动负责控制智能网卡做以太网收发、报文解析并调用用户侧开发的扩展功能,将处理结果以DMA形式上送到服务器端缓存。
7.根据权利要求6所述的智能网卡驱动的二次开发方法,其特征是智能网卡端与服务器连接通信时,智能网卡在服务器端的驱动负责分配缓存,接收智能网卡DMA通信数据,用于服务器内部应用做进一步处理。
8.根据权利要求5中所述的智能网卡驱动的二次开发方法,其特征是API模块将用户需要的功能设置为外部可操作的接口,并在网卡功能模块中预留调用点,用户自行开发的扩展功能通过函数回调机制,在用户扩展模块和卡端静态库模块编译阶段融合进卡端驱动。
CN201510048878.7A 2015-01-30 2015-01-30 智能网卡驱动的二次开发系统及其方法 Active CN104639335B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510048878.7A CN104639335B (zh) 2015-01-30 2015-01-30 智能网卡驱动的二次开发系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510048878.7A CN104639335B (zh) 2015-01-30 2015-01-30 智能网卡驱动的二次开发系统及其方法

Publications (2)

Publication Number Publication Date
CN104639335A true CN104639335A (zh) 2015-05-20
CN104639335B CN104639335B (zh) 2018-03-09

Family

ID=53217693

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510048878.7A Active CN104639335B (zh) 2015-01-30 2015-01-30 智能网卡驱动的二次开发系统及其方法

Country Status (1)

Country Link
CN (1) CN104639335B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112860225A (zh) * 2021-01-15 2021-05-28 哈尔滨鸿德亦泰数码科技有限责任公司 一种可扩展性优越的智慧灌区e平台及其二次开发结构构建方法
CN114968384A (zh) * 2020-08-31 2022-08-30 华为技术有限公司 一种功能调用方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567071A (zh) * 2010-12-15 2012-07-11 中兴通讯股份有限公司 一种虚拟串口系统及其通信方法
CN102739473A (zh) * 2012-07-09 2012-10-17 南京中兴特种软件有限责任公司 一种应用智能网卡的网络检测方法
CN102752119A (zh) * 2012-07-09 2012-10-24 南京中兴特种软件有限责任公司 一种智能网卡的接口实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567071A (zh) * 2010-12-15 2012-07-11 中兴通讯股份有限公司 一种虚拟串口系统及其通信方法
CN102739473A (zh) * 2012-07-09 2012-10-17 南京中兴特种软件有限责任公司 一种应用智能网卡的网络检测方法
CN102752119A (zh) * 2012-07-09 2012-10-24 南京中兴特种软件有限责任公司 一种智能网卡的接口实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
林基 等: "基于智能网卡支持的并行通信协议", 《计算机研究与发展》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114968384A (zh) * 2020-08-31 2022-08-30 华为技术有限公司 一种功能调用方法和装置
CN112860225A (zh) * 2021-01-15 2021-05-28 哈尔滨鸿德亦泰数码科技有限责任公司 一种可扩展性优越的智慧灌区e平台及其二次开发结构构建方法

Also Published As

Publication number Publication date
CN104639335B (zh) 2018-03-09

Similar Documents

Publication Publication Date Title
CN113115241B (zh) 一种基于工业大脑的工业互联网系统
CN102255903B (zh) 一种云计算虚拟网络与物理网络隔离安全方法
CN104199723B (zh) 基于虚拟设备的摄像头映射方法
CN103473141A (zh) 一种带外查看及修改bios设置选项的方法
CN103995751B (zh) 一种跨平台通信系统及方法
CN105094983A (zh) 计算机,控制设备和数据处理方法
CN104767741A (zh) 一种基于轻型虚拟机的计算服务分离与安全保护系统
CN110286939A (zh) 软件开发工具包的开发方法、装置、设备及存储介质
US10334084B2 (en) Communication method and system based on assembled communication protocol stack
CN108076457A (zh) 一种基于Linux系统的智慧安全型电网专用无线通信模块
CN103338125A (zh) 一种批量配置网络设备的方法
CN105915377A (zh) 一种Flume与SparkStreaming整合的方法及系统
DE102022110508A1 (de) Servereinheit mit integrierter strömungsverteilung
CN104639335A (zh) 智能网卡驱动的二次开发系统及其方法
CN105262604A (zh) 虚拟机迁移方法及设备
DE102022101525A1 (de) Intelligenter kühlmittelunterstützter flüssigkeit-zu-luftwärmetauscher für kühlsysteme in einem rechenzentrum
CN103927244A (zh) 一种基于动态代理实现的插件调度过程监控的方法
CN106817291A (zh) Vxlan实现装置及其工作方法
CN103986613A (zh) 一种基于网络的远程kvm管理方法
CN105373415A (zh) 基于虚拟化的应用存储方法、执行方法、装置及系统
US20150212834A1 (en) Interoperation method of newtork device performed by computing device including cloud operating system in could environment
CN105187519A (zh) 一种基于AIO的socket传输系统
CN104333515A (zh) 一种swift报文处理方法及装置
CN112953988B (zh) 一种基于ftp的数据对接方法及装置
CN207869401U (zh) 一种基于Linux系统的智慧安全型电网专用无线通信模块

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 210012 Yuhuatai, Jiangsu province tulip Road, No. 17, No.

Applicant after: State Computer Network and Information Safety Management Center

Applicant after: Nanjing Sinovatio Technology LLC

Address before: Affirmative road in Jiangning District of Nanjing City, Jiangsu Province, No. 888 211153

Applicant before: State Computer Network and Information Safety Management Center

Applicant before: Nanjing Sinovatio Technology LLC

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant