首页 / 专利库 / 软件 / 软件模块 / TCP/IP加速器的交互方法和装置

TCP/IP加速器的交互方法和装置

阅读:1048发布:2020-05-16

专利汇可以提供TCP/IP加速器的交互方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 提供了一种TCP/IP 加速 器的交互方法和装置,其中,该方法包括:获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有地址信息的通信指令以建立与TCP/IP加速器板卡的TCP连接;通过 软件 为目标数据分配地址并向TCP/IP加速器板卡发送写数据指令,将目标数据写入TCP/IP加速器板卡;在TCP/IP加速器板卡对目标数据进行处理之后,向TCP/IP加速器板卡发送读数据指令,从TCP/IP加速器板卡中读取数据的存储信息,根据存储信息从TCP/IP加速器板卡中读取处理后的目标数据。通过上述方案解决了现有的仅通过软件来进行 数据处理 所存在的效率低下、系统用时较多的技术问题,达到了有效提升 硬件 资源的利用率,从而减少系统等待时间的技术效果。,下面是TCP/IP加速器的交互方法和装置专利的具体信息内容。

1.一种TCP/IP加速器的交互方法,其特征在于,包括:
获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
2.根据权利要求1所述的方法,其特征在于,所述存储信息包括以下至少之一:数据地址、数据长度及编号。
3.根据权利要求1所述的方法,其特征在于,根据所述存储信息从TCP/IP加速器板卡中读取数据,包括:
根据所述存储信息从所述TCP/IP加速器板卡的DDR模中读取数据。
4.根据权利要求1所述的方法,其特征在于,在向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据之后,还包括:
在建立所述TCP连接的预定时长后,所述TCP/IP加速器板卡自动断开所述TCP连接。
5.根据权利要求1所述的方法,其特征在于,获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接,包括:
获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;
通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;
所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息,再通过PIO写入第一回复标识符;
在收到所述第一回复标识符后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;
所述目标TCP/IP加速器板卡根据所述第二标识符读取相应信息,并发送第二回复标识符;
在收到所述第二回复标识符后,通过PIO写入IP地址,以完成TCP连接的建立。
6.如权利要求1所述的方法,其特征在于,通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;
通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;
通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息;
所述目标TCP/IP加速器板卡根据所述第四控制指令提取所述目标数据并处理。
7.如权利要求6所述的方法,其特征在于,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据,包括:
通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;
通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;
根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的所述预先开辟的数据存储地址中读取数据;
通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
8.如权利要求7所述的方法,其特征在于,所述第三控制指令、所述第四控制指令和所述第五控制指令为32位控制指令。
9.一种TCP/IP加速器的交互装置,其特征在于,包括:
获取模块,用于获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
写入模块,用于通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
读取模块,用于在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
10.根据权利要求9所述的装置,其特征在于,所述获取模块包括:
获取单元,用于获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;
发送单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;
第一写入单元,用于在接收到所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息后通过PIO写入的第一回复标识符之后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;
第二写入单元,用于在收到所述目标TCP/IP加速器板卡根据所述第二标识符读取相应信息后发送的第二回复标识符之后,通过PIO写入IP地址,以完成TCP连接的建立。
11.如权利要求9所述的装置,其特征在于,所述写入模块包括:
第三写入单元,用于通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;
第四写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;
第五写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息,所述第四控制指令用于所述目标TCP/IP加速器板卡提取所述目标数据并处理。
12.如权利要求11所述的装置,其特征在于,所述读取模块包括:
第一读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;
第二读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;
第三读取单元,用于根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的所述预先开辟的数据存储地址中读取数据;
第六写入单元,用于通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
13.一种网络设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至8中任一项所述方法的步骤。
14.一种非易失性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述方法的步骤。

说明书全文

TCP/IP加速器的交互方法和装置

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种TCP/IP加速器的交互方法和装置。

背景技术

[0002] 基于TCP/IP协议的Internet已逐步发展成为规模最大、拥有用户和资源最多的一个超大型计算机网络,TCP/IP协议也因此成为事实上的工业标准。然而,随着web元素的丰富以及用户量的增加,对于交互时延和处理能的要求也越来越高。现有的TCP拥塞控制算法并不适用于高时延、高误码的链路,因此,提出了TCP/IP协议卸载引擎加速器技术,即,将原本主机处理器上需要耗费大量资源进行多层网络协议的数据包处理的工作转移到网卡上,从而有效地降低主机CPU的利用率,提高传输效率。
[0003] TOE(TCP/IP卸载引擎)网卡根据卸载程度可以分为全卸载和数据路径卸载,其中,全卸载指的是将TCP/IP协议处理全部卸载到专的处理器件上进行处理,数据路径卸载指的是将TCP/IP的数据的接收和发送卸载到专门的处理器上进行处理,同时将连接管理交由主机CPU进行处理。
[0004] 现有的TCP/IP加速器对接收到的数据大都是通过软件进行解析处理的,在对网络上的数据进行处理传输的过程中会占用大量的资源,对此,尚未提出有效的解决方案。

发明内容

[0005] 本发明实施例提供了一种TCP/IP加速器的交互方法和装置,以达到有效提升硬件资源的利用率,从而减少系统等待时间的目的。
[0006] 一方面,提供了一种TCP/IP加速器的交互方法,包括:
[0007] 获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0008] 通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0009] 在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0010] 在一个实施方式中,所述存储信息包括以下至少之一:数据地址、数据长度及编号。
[0011] 在一个实施方式中,根据所述存储信息从TCP/IP加速器板卡中读取数据,包括:
[0012] 根据所述存储信息从所述TCP/IP加速器板卡的DDR模中读取数据。
[0013] 在一个实施方式中,在向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据之后,还包括:
[0014] 在建立所述TCP连接的预定时长后,所述TCP/IP加速器板卡自动断开所述TCP连接。
[0015] 在一个实施方式中,获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接,包括:
[0016] 获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;
[0017] 通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;
[0018] 所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息,再通过PIO写入第一回复标识符;
[0019] 在收到所述第一回复标识符后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;
[0020] 所述目标TCP/IP加速器板卡根据所述第二标识符读取相应信息,并发送第二回复标识符;
[0021] 在收到所述第二回复标识符后,通过PIO写入IP地址,以完成TCP连接的建立。
[0022] 在一个实施方式中,通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0023] 通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;
[0024] 通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;
[0025] 通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息;
[0026] 所述目标TCP/IP加速器板卡根据所述第四控制指令提取所述目标数据并处理。
[0027] 在一个实施方式中,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据,包括:
[0028] 通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;
[0029] 通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;
[0030] 根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的所述预先开辟的数据存储地址中读取数据;
[0031] 通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
[0032] 在一个实施方式中,所述第三控制指令、所述第四控制指令和所述第五控制指令为32位控制指令。
[0033] 另一方面,提供了一种TCP/IP加速器的交互装置,包括:
[0034] 获取模块,用于获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0035] 写入模块,用于通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0036] 读取模块,用于在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0037] 在一个实施方式中,所述获取模块包括:
[0038] 获取单元,用于获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;
[0039] 发送单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;
[0040] 第一写入单元,用于在接收到所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息后通过PIO写入的第一回复标识符之后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;
[0041] 第二写入单元,用于在收到所述目标TCP/IP加速器板卡根据所述第二标识符读取相应信息后发送的第二回复标识符之后,通过PIO写入IP地址,以完成TCP连接的建立。
[0042] 在一个实施方式中,所述写入模块包括:
[0043] 第三写入单元,用于通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;
[0044] 第四写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;
[0045] 第五写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息,所述第四控制指令用于所述目标TCP/IP加速器板卡提取所述目标数据并处理。
[0046] 在一个实施方式中,所述读取模块包括:
[0047] 第一读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;
[0048] 第二读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;
[0049] 第三读取单元,用于根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的所述预先开辟的数据存储地址中读取数据;
[0050] 第六写入单元,用于通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
[0051] 又一方面,提供了一种网络设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
[0052] 有一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
[0053] 在上例中,提供了一种主机与TCP/IP加速器建立TCP连接,从主机端搬运数据到TCP/IP加速器板卡,等待加速器板卡处理,同时可以从加速器板卡读取数据信息的方法,即,通过硬件来分担一部分软件的数据处理工作,通过上述方案解决了现有的仅通过软件来进行数据处理所存在的效率低下、系统用时较多的技术问题,达到了有效提升硬件资源的利用率,从而减少系统等待时间的技术效果。附图说明
[0054] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
[0055] 图1是根据本发明实施例的TCP/IP加速器的交互方法的方法流程图
[0056] 图2是根据本发明实施例的TCP/IP卸载的方法流程图;
[0057] 图3是根据本发明实施例的TCP/IP加速器的交互装置的结构框图

具体实施方式

[0058] 为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
[0059] 考虑到现有的TCP/IP加速器对接收到的数据大都是通过软件进行解析处理的,在对网络上的数据进行处理传输的过程中会占用大量的资源,为此,在本例中提出了一种TCP/IP加速器的交互方法,通过TCP/IP加速器板卡来分担一部分数据处理工作,以减少系统的等待时间。
[0060] 如图1所示,在本例中提供了一种TCP/IP加速器的交互方法,可以包括如下步骤:
[0061] 步骤101:获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0062] 步骤102:通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0063] 步骤103:在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0064] 在上例中,提供了一种主机与TCP/IP加速器建立TCP连接,从主机端搬运数据到TCP/IP加速器板卡,等待加速器板卡处理,同时可以从加速器板卡读取数据信息的方法,即,通过硬件来分担一部分软件的数据处理工作,通过上述方案解决了现有的仅通过软件来进行数据处理所存在的效率低下、系统用时较多的技术问题,达到了有效提升硬件资源的利用率,从而减少系统等待时间的技术效果。
[0065] 上述的存储信息可以包括但不限于以下至少之一:数据地址、数据长度及编号。
[0066] 具体的在实现的过程中,根据所述存储信息从TCP/IP加速器板卡中读取数据可以是根据所述存储信息从所述TCP/IP加速器板卡的DDR模块中读取数据。
[0067] 为了避免长时间占用加速器,浪费硬件资源,可以自动断开TCP连接,具体的,在向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据之后,可以在建立所述TCP连接的预定时长后,TCP/IP加速器板卡自动断开所述TCP连接。
[0068] 对上述步骤101-103具体说明如下,上述步骤101获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接,可以具体包括:
[0069] S1:获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;
[0070] S2:通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;
[0071] S3:所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息,再通过PIO写入第一回复标识符;
[0072] S4:在收到所述第一回复标识符后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;
[0073] S5:目标TCP/IP加速器板卡根据所述第二标识符读取相应信息,并发送第二回复标识符;
[0074] S6:在收到所述第二回复标识符后,通过PIO写入IP地址,以完成TCP连接的建立。
[0075] 上述步骤102通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡具体可以包括:
[0076] S1:通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;
[0077] S2:通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;
[0078] S3:通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息;
[0079] S4:上述目标TCP/IP加速器板卡根据所述第四控制指令提取所述目标数据并处理。
[0080] 上述步骤103向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取数据,具体可以包括:
[0081] S1:通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;
[0082] S2:通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;
[0083] S3:根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的所述预先开辟的数据存储地址中读取数据;
[0084] S4:通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
[0085] 上述的第一控制指令、第二控制指令、第三控制指令、所述第四控制指令和所述第五控制指令可以都是32位控制指令。因为提供的整体指令长度可以固定为32字节,采用该精简指令集可以有效减少硬件设计的复杂程度,提高指令执行速度,从而提高机器的速度。
[0086] 具体的,第一控制指令的高8位为标识符,后24位为ip地址的前24位,第二控制指令的高8位为标识符,中间8位为ip地址的低8位,后16位为端口信息。第三控制指令为32位数据地址信息,第四控制指令的高8位为更新标志位,便于硬件根据此标志位判断是否为新数据,中间16位为将要写入的数据长度,低8位为句柄(handle)信息,第五控制指令的高8位为更新标志位,供板卡判断为新的一组数据,剩余24位置为0。
[0087] 下面结合一个具体实施例对上述方法进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。
[0088] 在本例中提出了一种针对TCP/IP加速器的交互协议,以提高TCP/IP加速器处理数据的效率,具体的,通过协议对主机与TCP/IP加速器之间的通信-数据传输-数据回读操作进行优化,以节省网络数据与TCP/IP加速器之间传输通信的时间。该协议提供的整体指令长度可以固定为32字节,采用该精简指令集可以有效减少硬件设计的复杂程度,提高指令执行速度,从而提高机器的速度。同时可以进一步考虑协议的可扩展性和适用性。
[0089] 在实现的过程中,可以包括如下步骤:
[0090] S1:上位机获取目标TCP/IP加速器板卡的ip、端口信息,然后,向网卡发送通信指令,建立TCP连接;
[0091] S2:上位机通过软件为每个要写入的数据分配地址,并向TCP/IP加速器板卡发送写数据指令,将要发送的数据及数据信息写入板卡;
[0092] S3:上位机向TCP/IP加速器板卡发送读数据指令,从板卡中读取存储于板卡的存储模块中的数据地址、数据长度及编号,再根据这些信息从板卡DDR模块中读取数据至上位机。
[0093] S4:上位机与TCP/IP加速器板卡建立TCP连接以后,经过一段时间板卡自动断开TCP连接。
[0094] 在上例中,提供了一种主机与TCP/IP加速器建立TCP连接,从主机端搬运数据到加速器,等待加速器处理,同时可以从加速器读取数据信息的协议。通过特有的流程,采用固定指令长度的方式,有效减少了系统的等待时间,提高了硬件资源的利用率。
[0095] 即,提供了一种TCP/IP加速器的交互协议,以通过硬件分担软件数据处理的部分工作,通过协同处理的方式,达到高效的协议的实现,以一具体实例进行说明,可以包括如下步骤:
[0096] 步骤1:如图2所示,上位机获得目标TCP/IP加速器板卡的ip地址、端口信息,然后,通过PCIE的PIO(Programmed Input-Output)模式读写发送配置信息。具体步骤为:
[0097] S1-1:通过PIO模式读写向目标TCP/IP加速器板卡发送32位的指令,其中,该指令的高8位为标识符,后24位为ip地址的前24位。
[0098] 实现函数可以是:
[0099] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0100] #31------控制字段(31-24)------#23------数据字段(23-0)------#0[0101] S1-2:TCP/IP加速器板卡根据S1-1所发送的标识符从PIO地址中读取信息,再通过PIO写入回复标识符。
[0102] 实现函数可以是:
[0103] PCIE_Read32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_BUTTON_ADDR,&status)
[0104] S1-3:上位机在收到回复标识符后再次通过PIO向相同地址写入32位指令,其中,该指令的高8位为标识符,中间8位为ip地址的低8位,后16位为端口信息。
[0105] 实现函数可以是:
[0106] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0107] #31------控制字段(31-24)------#23------数据字段(23-16)------#15------数据字段2(15-0)-----#0
[0108] S1-4:TCP/IP加速器板卡根据S1-3中的标识符读取相应信息,并发送回复标识符。
[0109] 实现函数可以是:
[0110] PCIE_Read32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_BUTTON_ADDR,&Status)
[0111] S1-5:上位机在收到回复标识符后,通过PIO写入ip_id。
[0112] 实现函数可以是:
[0113] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0114] #31------控制字段(31-24)------#23------保留字段(23-8)------#7------数据信息字段(7-0)-----#0
[0115] S1-6:TCP/IP加速器板卡在收到以上信息之后,完成建立TCP连接工作。
[0116] 实现函数可以是:
[0117] PCIE_Read32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_BUTTON_ADDR,&Status)
[0118] 步骤2:如图2所示,上位机获取将要发送的数据,并根据软件为每组将要写入的数据分配地址。通过PCIE的PIO(Programmed Input-Output)模式读写发送写数据指令,并通过PCIE的DMA(Direct Memory Access)模式读写写入数据。具体步骤为:
[0119] S2-1:上位机通过DMA模式读写向TCP/IP加速器板卡写入需要发送的数据,数据存于TCP/IP加速器板卡当中专门开辟的数据存储地址。
[0120] 实现函数可以是:
[0121] PCIE_DmaWrite(hPCIe,LocalAddr,pWrite,nTestSize)
[0122] 其中,写入的地址由硬件决定,会将硬件的地址空间以及配置文件的方式提供给上位机,上位机为每个要写入的数据分配地址。
[0123] S2-2:上位机通过PIO模式读写向板卡中写入32位指令,该指令内容为32位数据地址信息,存入加速器板卡开辟的写数据信息地址。
[0124] 实现函数可以是:
[0125] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0126] #31----数据地址信息------#0
[0127] S2-3:上位机通过PIO模式读写向板卡中写入32位指令,其中,该指令的高8位为更新标志位,便于硬件根据此标志位判断是否为新数据,中间16位为将要写入的数据长度,低8位为句柄(handle)信息,用于区别不同的数据包。
[0128] 实现函数可以是:
[0129] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0130] #31----更新标志位(31-24)-----#23-----数据长度(23-8)-----#7------handle(7-0)-----#0
[0131] S2-4:硬件加速板卡将以上信息进行数据提取、处理。
[0132] 步骤3:上位机通过PCIE的PIO(Programmed Input-Output)模式读写读取TCP/IP加速器板卡当中数据的长度、地址、句柄(handle)等信息。再根据这些信息通过PCIE的DMA(Direct Memory Access)模式读写读取数据。
[0133] 具体步骤为:
[0134] S3-1:上位机通过PIO模式读写从TCP/IP加速器板卡开辟的读数据信息地址1当中读取32位指令。其中,该指令的高8位为更新标志,供上位机端判断是否为新的一组数据,中间16位为TCP/IP加速器板卡当中数据的长度信息,低8位为句柄(handle)信息,用于区别不同的数据包。
[0135] 实现函数可以是:
[0136] PCIE_Read32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0137] #31----更新标志位(31-24)-----#23-----数据长度(23-8)-----#7------handle(7-0)-----#0
[0138] S3-2:上位机通过PIO模式读写从TCP/IP加速器板卡开辟的读数据信息地址2当中读取32位指令,指令为32位地址信息。
[0139] 实现函数可以是:
[0140] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0141] #31----数据地址信息------#0
[0142] S3-3:上位机根据以上两步读取的信息,通过DMA模式读写从板卡的读数据地址读取数据。
[0143] 实现函数可以是:
[0144] PCIE_DmaRead(hPCIe,LocalAddr,pRead,nTestSize)
[0145] S3-4:上位机再通过PIO模式读写向读数据信息地址1当中写入32位指令,该指令高8位为更新标志位,供板卡判断为新的一组数据,剩余24位置为0。
[0146] 实现函数可以是:
[0147] PCIE_Write32(hPCIe,DEMO_PCIE_USER_BAR,DEMO_PCIE_IO_LED_ADDR,(DWORD)MASK)
[0148] #31----更新标志位(31-24)----#23-----置为0-----#0
[0149] 步骤4:上位机与TCP/IP加速器板卡建立TCP连接以后,经过一段时间板卡自动断开TCP连接,具体的时间长度可以由上位机定义。通过自动断开TCP连接可以避免长时间占用加速器,浪费硬件资源。
[0150] 在实现的过程中,系统可以根据协议自定协议顺序,例如,在执行完上述步骤1加速器板卡建立完TCP连接之后,可以根据用户的需求选择先执行步骤2还是先执行步骤3,且步骤2中的S2-2和S2-3的先后顺序可以根据实际需求设定,也可以并行执行,步骤3中的S3-1和S3-2的先后顺序可以根据实际需求设定,也可以并行执行。
[0151] 通过上述方案可以提升软件端程序的运行速度,减少硬件等待时间,从而可以提升TCP/IP加速器的处理性能。具体的,提出了一种针对TCP/IP加速器的交互协议,降低了主机与TCP/IP加速器之间的数据通信延时,有效避免了不必要的链路延时,且采用的指令长度固定为32位,采用此精简指令集有效减少了硬件设计的复杂程度,提高了指令执行速度,从而提高了机器的速度,且该协议具备高可用性和可扩展性,系统可根据协议自定协议顺序,以实现不同的功能。
[0152] 在上例中,为了实现设想中的转移并消除主机处理数据而形成的问题,利用传输控制协议将来自加速器上的主系统的TCP处理重新分配,该加速器可以具有合适的软件用于处理TCP处理,从而使得可以将主系统处理资源重新分配给应用处理。
[0153] 基于同一发明构思,本发明实施例中还提供了一种TCP/IP加速器的交互装置,如下面的实施例所述。由于TCP/IP加速器的交互装置解决问题的原理与TCP/IP加速器的交互方法相似,因此TCP/IP加速器的交互装置的实施可以参见TCP/IP加速器的交互方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图3是本发明实施例的TCP/IP加速器的交互装置的一种结构框图,如图3所示,可以包括:获取模块301、写入模块302和读取模块303,下面对该结构进行说明。
[0154] 获取模块301,用于获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0155] 写入模块302,用于通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0156] 读取模块303,用于在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0157] 在一个实施方式中,上述获取模块301可以包括:获取单元,用于获取所述目标TCP/IP加速器板卡的IP地址和端口信息作为地址信息;发送单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡发送第一控制指令,其中,所述控制指令中携带有第一标识符和IP地址;第一写入单元,用于在接收到所述目标TCP/IP加速器板卡根据所述第一标识符从PIO地址中读取信息后通过PIO写入的第一回复标识符之后,通过PIO向所述PIO地址写入第二控制指令,其中,所述第二控制指令中携带有第二标识符、IP地址和端口信息;第二写入单元,用于在收到所述目标TCP/IP加速器板卡根据所述第二标识符读取相应信息后发送的第二回复标识符之后,通过PIO写入IP地址,以完成TCP连接的建立。
[0158] 在一个实施方式中,上述写入模块302可以包括:第三写入单元,用于通过DMA模式读写向所述目标TCP/IP加速器板卡写入所述目标数据,其中,所述目标数据存储在所述目标TCP/IP加速器板卡中预先开辟的数据存储地址中;第四写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡写入第三控制指令,其中,所述第三控制指令为数据地址信息,将所述数据地址信息存入所述目标TCP/IP加速器板卡开辟的写数据信息地址中;第五写入单元,用于通过PIO模式读写向所述目标TCP/IP加速器板卡中写入第四控制指令,其中,所述第四控制指令中携带有:更新标志位、目标数据的长度和句柄信息,所述第四控制指令用于所述目标TCP/IP加速器板卡提取所述目标数据并处理。
[0159] 在一个实施方式中,上述读取模块303可以包括:第一读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第一读数据信息地址中读取所述第四控制指令;第二读取单元,用于通过PIO模式读写从所述目标TCP/IP加速器板卡开辟的第二读数据信息地址中读取所述第三控制指令;第三读取单元,用于根据所述第四控制指令和所述第三控制指令中携带的信息,通过DMA模式读写从所述目标TCP/IP加速器板卡的读数据地址读取数据;第六写入单元,用于通过PIO模式读写向所述第一读数据信息地址中写入第五控制指令,其中,所述第五控制指令携带有更新标志位。
[0160] 本申请的实施例还提供能够实现上述实施例中的TCP/IP加速器的交互方法中全部步骤的一种电子设备的具体实施方式,所述电子设备具体包括如下内容:处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现服务器、客户终端以及其他参与机构之间的信息传输;所述处理器用于调用所述存储器中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的TCP/IP加速器的交互方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
[0161] 步骤1:获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0162] 步骤2:通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0163] 步骤3:在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0164] 从上述描述可知,本申请实施例提供了一种主机与TCP/IP加速器建立TCP连接,从主机端搬运数据到TCP/IP加速器板卡,等待加速器板卡处理,同时可以从加速器板卡读取数据信息的方法,即,通过硬件来分担一部分软件的数据处理工作,通过上述方案解决了现有的仅通过软件来进行数据处理所存在的效率低下、系统用时较多的技术问题,达到了有效提升硬件资源的利用率,从而减少系统等待时间的技术效果。
[0165] 本申请的实施例还提供能够实现上述实施例中的TCP/IP加速器的交互方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的TCP/IP加速器的交互方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
[0166] 步骤1:获取目标TCP/IP加速器板卡的地址信息,并向网卡发送携带有所述地址信息的通信指令以建立与所述TCP/IP加速器板卡的TCP连接;
[0167] 步骤2:通过软件为目标数据分配地址并向所述TCP/IP加速器板卡发送写数据指令,将所述目标数据写入所述TCP/IP加速器板卡;
[0168] 步骤3:在所述TCP/IP加速器板卡对所述目标数据进行处理之后,向所述TCP/IP加速器板卡发送读数据指令,从所述TCP/IP加速器板卡中读取数据的存储信息,根据所述存储信息从TCP/IP加速器板卡中读取处理后的目标数据。
[0169] 从上述描述可知,本申请实施例提供了一种主机与TCP/IP加速器建立TCP连接,从主机端搬运数据到TCP/IP加速器板卡,等待加速器板卡处理,同时可以从加速器板卡读取数据信息的方法,即,通过硬件来分担一部分软件的数据处理工作,通过上述方案解决了现有的仅通过软件来进行数据处理所存在的效率低下、系统用时较多的技术问题,达到了有效提升硬件资源的利用率,从而减少系统等待时间的技术效果。
[0170] 在本说明书中,诸如第一和第二这样的形容词仅可以用于将一个元素或动作与另一元素或动作进行区分,而不必要求或暗示任何实际的这种关系或顺序。在环境允许的情况下,参照元素或部件或步骤(等)不应解释为局限于仅元素、部件、或步骤中的一个,而可以是元素、部件、或步骤中的一个或多个等。
[0171] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0172] 上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0173] 虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
[0174] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0175] 虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。
[0176] 为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0177] 本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
[0178] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0179] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0180] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0181] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0182] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0183] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0184] 本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0185] 本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0186] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0187] 以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈