CN115202573A - 数据存储系统以及方法 - Google Patents
数据存储系统以及方法 Download PDFInfo
- Publication number
- CN115202573A CN115202573A CN202210615864.9A CN202210615864A CN115202573A CN 115202573 A CN115202573 A CN 115202573A CN 202210615864 A CN202210615864 A CN 202210615864A CN 115202573 A CN115202573 A CN 115202573A
- Authority
- CN
- China
- Prior art keywords
- data
- target data
- address mapping
- storage
- cpu
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
本说明书实施例提供一种数据存储系统以及方法,其中数据存储系统,包括智能网卡,CPU和存储设备,智能网卡,被配置为接收待存储的初始数据,并对初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录目标数据的存储位置信息的情况下,将目标数据的元数据信息发送至CPU,接收CPU返回的地址映射信息,根据地址映射信息确定目标数据的存储位置信息,根据存储位置信息将目标数据存储至存储设备;CPU,被配置为接收智能网卡发送的元数据信息,根据元数据信息生成地址映射信息,并将地址映射信息发送至智能网卡。通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
Description
技术领域
本说明书实施例涉及数据存储技术领域,特别涉及一种数据存储系统。
背景技术
通用服务器在软件定义存储领域广为使用,通用服务器的设计没有考虑IO处理的特殊需求,其整体设计和计算服务器的设计思路相同。随着半导体存储介质的变革,存储介质的性能越来越高,整体系统的性能瓶颈点逐渐从存储介质向CPU、网络方向转移。最近几年,网络技术同样得到飞速发展,从25Gbps网络向100Gbps网络方向发展,基于100Gbps的RDMA网络技术已经在数据中心分布式存储系统上得到了应用。因此,CPU平台方面的性能瓶颈变得越来越突出。为了提升闪存存储系统的性能,需要不断提升CPU的核数,并且需要解决内存瓶颈等方面带来的问题。从长远存储系统的发展来看,现有通用服务器已经不能满足未来高性能存储需求的需求,急需一种面向存储系统来设计的服务器,满足高性能存储的发展需求。
发明内容
有鉴于此,本说明书实施例提供了一种数据存储系统。本说明书一个或者多个实施例同时涉及一种数据存储方法,一种数据存储装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据存储系统,包括智能网卡,CPU和存储设备;
所述智能网卡,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录所述目标数据的存储位置信息的情况下,将所述目标数据的元数据信息发送至CPU,接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息,根据所述存储位置信息将所述目标数据存储至所述存储设备;
所述CPU,被配置为接收所述智能网卡发送的所述元数据信息,根据所述元数据信息生成所述地址映射信息,并将所述地址映射信息发送至所述智能网卡。
根据本说明书实施例的第二方面,提供了一种数据存储方法,包括:
接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;
接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
根据本说明书实施例的第三方面,提供了一种数据存储装置,包括:
数据接收模块,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;
地址映射模块,被配置为接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;
存储模块,被配置为根据所述存储位置信息将所述目标数据存储至存储设备。
根据本说明书实施例的第四方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据存储方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述数据存储方法的步骤。
根据本说明书实施例的第六方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据存储方法的步骤。
本说明书实施例提供一种数据存储系统以及方法,其中数据存储系统,包括智能网卡,CPU和存储设备,智能网卡,被配置为接收待存储的初始数据,并对初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录目标数据的存储位置信息的情况下,将目标数据的元数据信息发送至CPU,接收CPU返回的地址映射信息,根据地址映射信息确定目标数据的存储位置信息,根据存储位置信息将目标数据存储至存储设备;CPU,被配置为接收智能网卡发送的元数据信息,根据元数据信息生成地址映射信息,并将地址映射信息发送至智能网卡。通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
附图说明
图1是本说明书一个实施例提供的一种数据存储系统的示意图;
图2是本说明书一个实施例提供的一种数据存储系统的另一示意图;
图3是本说明书一个实施例提供的一种数据存储方法的流程图;
图4是本说明书一个实施例提供的一种数据存储方法的处理过程流程图;
图5是本说明书一个实施例提供的一种数据存储装置的结构示意图;
图6是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
存储服务器:用来存储数据和处理IO的服务器。
SmartNIC:智能网卡。
PCIe switch:PCIe交换机。
中央处理器(central processing unit,简称CPU):作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
网际协议版本4(英语:Internet Protocol version 4,IPv4):又称互联网通信协议第四版,是网际协议开发过程中的第四个修订版本,也是此协议第一个被广泛部署的版本。
IPv6:是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议。
VXLAN:是一种网络虚拟化技术,可以改进大型云计算在部署时的扩展问题,是对VLAN的一种扩展。VXLAN是一种功能强大的工具,可以穿透三层网络对二层进行扩展。它可通过封装流量并将其扩展到第三层网关,以此来解决VMS(虚拟内存系统)的可移植性限制,使其可以访问在外部IP子网上的服务器。
QPI(Quick Path Interconnect):又名CSI,Common System Interface公共系统接口,是一种可以实现芯片间直接互联的架构。
NUMA(Non Uniform Memory Access):技术可以使众多服务器像单一系统那样运转,同时保留小系统便于编程和管理的优点。
HBA:主机总线适配器是网络与交换,是能插入计算机或大型主机的板卡。
I/O输入/输出(Input/Output):分为IO设备和IO接口两个部分。
RDMA:Remote Direct Memory Access的缩写,意思是远程直接数据存取,就是为了解决网络传输中服务器端数据处理的延迟而产生的。
RPC协议:是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
精简指令集计算机(RISC:Reduced Instruction Set Computer RISC):是一种执行较少类型计算机指令的微处理器,起源于MIPS主机(即RISC机),RISC机中采用的微处理器统称RISC处理器。
payload:有效负载,记载着信息的那部分数据。
循环冗余校验(Cyclic Redundancy Check,CRC):是一种根据网络数据包或计算机文件等数据产生简短固定位数校验码的一种信道编码技术,主要用来检测或校验数据传输或者保存后可能出现的错误。
X86架构(The X86 architecture):是微处理器执行的计算机语言指令集。
Bps:比特率,是指单位时间内传送的比特(bit)数。
通用服务器在软件定义存储领域广为使用,通用服务器的设计没有考虑IO处理的特殊需求,其整体设计和计算服务器的设计思路相同。随着半导体存储介质的变革,存储介质的性能越来越高,整体系统的性能瓶颈点逐渐从存储介质向CPU、网络方向转移。最近几年,网络技术同样得到飞速发展,从25Gbps网络向100Gbps网络方向发展,基于100Gbps的RDMA网络技术已经在数据中心分布式存储系统上得到了应用。因此,CPU平台方面的性能瓶颈变得越来越突出。为了提升闪存存储系统的性能,需要不断提升CPU的核数,并且需要解决内存瓶颈等方面带来的问题。从长远存储系统的发展来看,现有通用服务器已经不能满足未来高性能存储需求的需求,急需一种面向存储系统来设计的服务器,满足高性能存储的发展需求。
软件定义存储系统通常都基于通用服务器来实现。通用服务器是面向计算项目的,其主要组成部分包括:双路CPU,双路CPU处理器是通用服务器内部的典型配置,存储系统通常会选用双路服务器的平台。其主要原因在于多路服务器会存在严重的内存访问瓶颈点,因此高于双路的设计很少在存储服务器平台上使用。内存:通用服务器通常采用NUMA的内存设计方式,两个CPU之间通过QPI进行互连,CPU在使用内存的时候优先使用本地内存,但是同样会通过QPI来访问远程内存。在软件定义存储系统中,元数据以及IO处理的过程中,会大量涉及到内存资源的访问,导致内存带宽成为系统的瓶颈点。网卡:网卡是存储系统中的关键部件,存储节点对外通过网卡进行数据访问。随着半导体存储介质的广泛使用,100Gbps网卡开始在数据中心使用,并且为了降低网络协议栈本身对CPU资源的消耗,RDMA技术在存储系统中大量使用,所有的网络协议栈处理在网卡内部实现。SSD存储介质:SSD存储介质直接通过PCIe总线与CPU进行连接,不再经过HBA进行转换。在双路CPU架构中,SSD被分布在两个CPU上,和内存访问相同,同样会存在NUMA的问题,SSD IO访问会经过QPI总线。
上述架构中存在一些问题,包括CPU核数无法满足未来存储系统的设计需求。为了提升半导体存储系统的性能,在存储软件上通常采用轮询的方式。存储系统的性能和并发处理的线程数量息息相关。因此,为了提升半导体存储系统的性能,需要提升存储平台的CPU核心数量。目前,存储系统的平台都采用性能较好的处理器,原因就是要使用数量最多的CPU核。从CPU设计的角度来看,存储系统选用性能最高的处理器其实是一种浪费,CPU的计算能力无法在存储系统中得以使用。随着半导体存储介质的进一步发展,对CPU核数的需求越来越高,如何解决该问题是存储平台需要考虑的一个重要问题。还有内存访问带宽问题,存储系统中的元数据以及数据处理过程中会进行大量内存的访问,例如元数据的查询以及数据校验和移动,这些操作都会进行内存访问操作。在高性能存储系统设计的过程中,整体IOPS以及IO延迟都受到了内存访问带宽的限制。如何降低存储系统内存访问带宽,减少访存操作,是存储软件系统以及存储硬件平台都需要考虑的重要问题。以及双路CPU引入的QPI性能问题。通用服务器平台通常采用双路CPU架构,两个CPU通过QPI进行互连。这种架构可以对CPU的数量进行扩展,但是会导致内存以及SSD IO访问过程中的性能下降。在存储系统中,无法将整个IO处理过程都集中在同一个CPU上,这是和计算项目存在的一个很大不同点。在存储系统中,一个IO的处理过程,在很大程度上都会跨CPU,IO需要经过QPI总线,这样就会导致QPI总线成为IO处理过程中的性能瓶颈点。
基于此,在本说明书中,提供了一种数据存储系统,本说明书同时涉及一种数据存储方法、一种数据存储装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
参见图1,图1示出了根据本说明书一个实施例提供的一种数据存储系统的示意图,具体包括以下步骤。
所述智能网卡,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录所述目标数据的存储位置信息的情况下,将所述目标数据的元数据信息发送至CPU,接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息,根据所述存储位置信息将所述目标数据存储至所述存储设备;
所述CPU,被配置为接收所述智能网卡发送的所述元数据信息,根据所述元数据信息生成所述地址映射信息,并将所述地址映射信息发送至所述智能网卡。
其中,初始数据可以理解为不可以直接存储进硬盘的数据,例如,经过IPV4协议封装的数据,VXLAN协议数据等;预设解析处理可以为网络协议解析处理;目标数据可以理解为可以存储进硬盘的数据;元数据信息可以为数据的标识信息;地址映射信息可以理解为数据的类型和数据所在的硬盘位置的对应关系的信息;存储设备可以为固态硬盘(SSD)、机械硬盘(HDD)等,且可以为硬盘组。
在实际应用中,SmartNIC用来卸载数据链路。采用专用的硬件来卸载数据链路,对CPU进行减负,使得整体的数据链路处理不再依赖CPU的核数,通过专用硬件来提升整体的性能。CPU用来实现控制链路。存储系统的数据链路都可以卸载至SmartNIC中,卸载之后用户的请求可以不再经过CPU的软件,运行在CPU上的存储软件可以用来实现存储的管控链路。通过PCIe Switch互连SmartNIC、CPU和SSD存储介质,实现P2P(点到点)数据直传。
例如,智能网卡通过网络接收到视频数据,将初始数据进行IPV4网络协议卸载,通过已存储的地址映射信息查找是否存在视频数据对应的存储位置信息,当未查找到对应的位置信息的情况下,将视频数据的元数据信息发送至CPU,在接收到CPU返回的地址映射信息A之后,根据地址映射信息查找视频数据应该存放的位置,然后将视频数据存放至相应的位置。
需要说明的是,还可以根据数据的类型,对数据进行存放,例如,在接收到初始数据之后,判断数据是音频数据、视频数据或文本数据,将音频数据放入第一SSD中,将视频数据放入第二SSD中,将文本数据放入第三SSD中。
在一种可实现的方式中,所述智能网卡,还被配置为:
在接收所述CPU返回的地址映射信息之后,存储所述目标数据的地址映射信息;
在接收到所述初始数据的情况下,对所述初始数据进行预设解析处理得到目标数据;
根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
在实际应用中,地址映射信息可以为硬件映射表,通过硬件映射表来实现IO路径的卸载,即根据所述地址映射信息确定所述目标数据的存储位置信息。硬件映射单元是一种被硬化的IO路径执行单元,其主要用来实现映射表的快速查找。在通过网络接收到数据报文之后,可以直接通过硬件单元来查找数据存储的位置。映射数据被找到之后,接收到的数据可以直接被写入SSD的指定位置。整个过程可以做到软件不参与数据的操作,通过硬件映射表查询机制可以实现IO处理的加速。
例如,智能网卡通过网络接收到视频数据,将视频数据的元数据信息发送至CPU,在接收到CPU返回的地址映射信息A之后,将地址映射信息A存储在智能网卡中,当再次接收到相应的视频数据之后,可以直接根据地址映射信息查找视频数据应该存放的位置,然后将视频数据存放至相应的位置。
在一种可实现的方式中,所述智能网卡,还被配置为:
在地址映射信息中记录有所述目标数据的存储位置信息的情况下,根据所述地址映射信息的记录将所述目标数据存储至所述存储设备。
例如,智能网卡通过网络接收到视频数据,通过已存储的地址映射信息查找是否存在视频数据对应的存储位置信息,当查找到对应的位置信息的情况下,根据地址映射信息查找视频数据应该存放的位置,然后将视频数据存放至相应的位置。
在一种可实现的方式中,参见图2,图2是本说明书一个实施例提供的一种数据存储系统的另一示意图,所述智能网卡包括协议解析模块;
所述协议解析模块,被配置为接收待存储的初始数据,并确定所述初始数据的网络协议;
根据所述初始数据的网络协议确定协议解析规则;
根据所述协议解析规则对所述初始数据进行网络协议解析得到第一目标数据。
其中,协议解析规则可以为IPV4的协议解析规则、VXLAN协议解析规则、RPC协议解析规则等。
在实际应用中,通过协议解析模块来实现高性能网络协议栈的卸载。高性能网络协议栈可以直接通过SmartNIC内置的协议解析模块进行卸载,网络协议栈的处理全部由硬件来完成。对于拥塞控制算法,协议解析模块内部通常会提供一些可编程的RISC处理器进行可编程修改。一方面实现了网络协议栈的硬化(硬件化),即通过硬件进行网络协议卸载;另一方面通过可编程单元实现网络协议栈的灵活性,可以根据实际场景对网络协议栈进行修改。协议解析模块中的可编程单元可以将存储软件栈的应用层网络协议进行卸载,这样可以实现主路径IO处理的全部硬件卸载,无需ARM或者主机CPU的参与。
举例来说,通过协议解析模块内部的RISC处理器实现存储应用层RPC网络协议栈的卸载,通过这种方式,协议解析模块在解析完基本的网络协议栈之后,直接通过可编程的硬件来实现RPC网络协议报文的处理,直接将用户Payload数据交付给后继的处理模块,如ARM处理器。
在一种可实现的方式中,参见图2,所述智能网卡包括处理模块;
所述处理模块,被配置为从所述协议解析模块获取所述第一目标数据,并根据所述地址映射信息,将所述第一目标数据通过PCIe总线存储至所述存储设备。
在实际应用中,通过内置的ARM多核处理器实现IO链路的卸载。SmartNIC内部集成多个ARM处理器核,这些ARM处理器核可以用来处理存储软件栈。ARM处理器在计算能力方面不一定优于X86处理器,但是在IO处理方面具有不错的性能表现。并且可以通过该ARM处理器实现硬件卸载单元的整体控制与协同,来达到软硬件协同设计与实现的目的。通过ARM处理器与硬件卸载单元的配合,可以将IO路径的执行单元完全硬化成硬件,将IO路径的控制策略仍然通过软件来实现,这样可以最大程度的保证灵活性。
举例来说,智能网卡通过网络接收到视频数据,将视频数据的元数据信息发送至CPU,在接收到CPU返回的地址映射信息A之后,将地址映射信息A存储在智能网卡中,当再次接收到相应的视频数据之后,可以直接根据地址映射信息查找视频数据应该存放的位置,然后ARM处理器将视频数据通过PCIe总线将视频数据传输至SSD中,并存放至相应的位置。
在一种可实现的方式中,参见图2,所述智能网卡包括内存模块;
所述内存模块,被配置为缓存所述智能网卡中的数据。
在实际应用中,通过协议解析模块处理之后的数据可以先存储在内存模块中,在智能网卡中的其他模块需要的时候通过内存模块获取相应的数据。
例如,智能网卡通过网络接收到视频数据,协议解析模块将视频数据的网络协议封装卸载得到目标数据,将目标数据放在内存中,ARM处理器将视频数据的元数据信息发送至CPU,在接收到CPU返回的地址映射信息A之后,将地址映射信息A存储在智能网卡中,当再次接收到相应的视频数据之后,可以直接根据地址映射信息查找视频数据应该存放的位置,然后ARM处理器从内存中获取目标数据,并将目标数据通过PCIe总线将视频数据传输至SSD中,并存放至相应的位置。
在一种可实现的方式中,所述智能网卡包括协议解析模块;
所述协议解析模块,被配置为接收待存储的初始数据,并对所述初始数据进行网络协议解析;
在所述网络协议解析失败的情况下,将所述初始数据发送至所述处理模块。
在实际应用中,存储软件栈的IO处理逻辑可以直接在SmartNIC内部的ARM处理器上运行。这部分软件主要用来实现IO的异常路径。在硬件无法处理的情况下,可以将IO处理通过ARM处理器来完成。
举例来说,智能网卡通过网络接收到视频数据,协议解析模块将视频数据的网络协议(IPV4协议或VXLAN协议等)封装卸载得到目标数据,当对视频数据进行协议卸载失败的情况下,则将视频数据发送至ARM处理器。
进一步地,所述智能网卡包括处理模块;
所述处理模块,被配置为接收所述协议解析模块发送的初始数据,并确定所述初始数据的网络协议;
根据所述初始数据的网络协议确定协议解析规则;
根据所述协议解析规则对所述初始数据进行网络协议解析得到第一目标数据。
其中,协议解析规则可以为IPV4的协议解析规则、VXLAN协议解析规则等。
例如,智能网卡通过网络接收到视频数据,协议解析模块将视频数据的网络协议封装卸载得到目标数据,当对视频数据进行协议卸载失败的情况下,则将视频数据发送至ARM处理器。ARM处理器接收到视频数据,将视频数据的网络协议封装卸载得到目标数据。
在一种可实现的方式中,参见图2,所述智能网卡还包括编解码模块;
所述编解码模块,被配置为接收所述协议解析模块或所述处理模块发送的第一目标数据,并对所述第一目标数据进行解码处理得到第二目标数据。
在实际应用中,SmartNIC通过计算加速引擎实现EC(Erasurecoding,纠删码)、CRC等存储常规计算进行卸载。存储系统通常都需要对数据进行加工处理,包括Erasurecoding、CRC的数据编解码处理。在传统的存储服务器平台上,这部分的计算通常通过X86CPU来实现,通过AVX等加速指令对计算过程进行加速。
例如,智能网卡通过网络接收到视频数据,协议解析模块将视频数据的网络协议封装卸载得到第一目标数据,将第一目标数据放在内存中,编解码模块获取内存中的第一目标数据,将第一目标数据进行CRC数据解码得到第二目标数据。
在一种可实现的方式中,所述智能网卡还包括编解码模块;
接收所述CPU返回的地址映射信息,并存储所述目标数据的地址映射信息。
例如,智能网卡通过网络接收到视频数据,通过已存储的地址映射信息查找是否存在视频数据对应的存储位置信息,当未查找到对应的位置信息的情况下,将视频数据的元数据信息发送至CPU,在接收到CPU返回的地址映射信息A之后,将地址映射信息A存储在编解码模块中。
本说明书实施例提供一种数据存储系统以及方法,其中数据存储系统,包括智能网卡,CPU和存储设备,所述智能网卡,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录所述目标数据的存储位置信息的情况下,将所述目标数据的元数据信息发送至CPU,接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息,根据所述存储位置信息将所述目标数据存储至所述存储设备;所述CPU,被配置为接收所述智能网卡发送的所述元数据信息,根据所述元数据信息生成所述地址映射信息,并将所述地址映射信息发送至所述智能网卡。通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
参见图3,图3示出了根据本说明书一个实施例提供的一种数据存储方法的流程图,具体包括以下步骤。
步骤302:接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU。
其中,初始数据可以为经过报文协议封装的数据,例如,IPV6协议报文数据、IPV4协议报文数据、VXLAN协议报文数据等;预设解析处理可以理解为对经过封装的协议进行拆封得到真正要存储的数据,例如,对IPV6协议报文数据进行解析,得到视频数据。
在实际应用中,存储平台主要用来处理IO请求,基于通用的服务器平台,CPU会参与存储IO的处理,包括网络协议的处理、数据的搬移、数据的计算以及大量映射表的查询。这些操作对于CPU来讲都是比较耗费处理资源的操作,很难发挥CPU处理器的效率。随着存储介质的性能提升,只能通过扩展CPU核数来发挥存储介质的性能。沿用传统的技术路线,需要大量的CPU参与数据链路的处理,很难满足项目增长的需求。现在可以使用SmartNIC用来卸载数据链路以减小CPU的负载,CPU仅进行管控数据,从而实现数控分离。
例如,对接收到的IPV4报文数据进行解析得到视频数据,将视频数据的元数据信息发送至CPU。
在一种可实现的方式中,所述对所述初始数据进行预设解析处理得到目标数据,包括:
对所述初始数据进行网络协议解析得到目标数据。
在实际应用中,通过协议解析模块来实现高性能网络协议栈的卸载。高性能网络协议栈可以直接通过SmartNIC内置的协议解析模块进行卸载,网络协议栈的处理全部由硬件来完成。对于拥塞控制算法,协议解析模块内部通常会提供一些可编程的RISC处理器进行可编程修改。一方面实现了网络协议栈的硬化;另一方面通过可编程单元实现网络协议栈的灵活性,可以根据实际场景对网络协议栈进行修改。协议解析模块中的可编程单元可以将存储软件栈的应用层网络协议进行卸载,这样可以实现主路径IO处理的全部硬件卸载,无需ARM或者主机CPU的参与。
举例来说,通过协议解析模块内部的RISC处理器实现存储应用层RPC网络协议栈的卸载,通过这种方式,协议解析模块在解析完基本的网络协议栈之后,直接通过可编程的硬件来实现RPC网络协议报文的处理,直接将用户Payload数据交付给后继处理单元。
在一种可实现的方式中,所述对所述初始数据进行预设解析处理得到目标数据,包括:
对所述初始数据进行解码处理得到目标数据。
在实际应用中,SmartNIC通过计算加速引擎实现EC(Erasure coding,纠删码)、CRC等存储常规计算进行卸载。存储系统通常都需要对数据进行加工处理,包括Erasurecoding、CRC的数据编解码处理。在传统的存储服务器平台上,这部分的计算通常通过X86CPU来实现,通过AVX等加速指令对计算过程进行加速。
例如,在得到视频数据之后,需要对视频数据进行CRC校验,则不需要发送至CPU,直接对该视频数据进行CRC校验。
步骤304:接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息。
其中,地址映射信息可理解为存储路径和元数据信息的映射信息,存储位置信息可以理解为存储路径。
在实际应用中,使CPU仅参与映射表的查询,可以减小CPU的负载。
例如,在得到视频数据的地址映射信息,可以从地址映射信息得到视频数据的存储位置信息:X:\Users\。
在一种可实现的方式中,在接收所述CPU返回的地址映射信息之后,还包括:
存储所述目标数据的地址映射信息,在接收到所述初始数据的情况下,对所述初始数据进行预设解析处理得到目标数据;
根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
在实际应用中,通过硬件映射表来实现IO路径的卸载。硬件映射单元是一种被硬化的IO路径执行单元,其主要用来实现映射表的快速查找。在网络接收到数据报文之后,可以直接通过硬件单元来查找数据存储的位置。映射数据被找到之后,接收到的数据可以直接被写入SSD的指定位置。整个过程可以做到软件不参与数据的操作。通过硬件映射表查询机制可以实现IO处理的加速。
步骤306:根据所述存储位置信息将所述目标数据存储至存储设备。
其中,存储设备可以为硬盘,例如SSD,HDD等。
在实际应用中,通过内置的ARM多核处理器实现IO链路的卸载。SmartNIC内部集成多个ARM处理器核,这些CPU核可以用来处理存储软件栈。ARM处理器在计算能力方面不一定优于X86处理器,但是在IO处理方面具有不错的性能表现。存储软件栈的IO处理逻辑可以直接在SmartNIC内部的ARM处理器上运行。这部分软件主要用来实现IO的异常路径。在硬件无法处理的情况下,可以将IO处理通过ARM处理器来完成。并且可以通过该ARM处理器可以实现硬件卸载单元的整体控制与协同,来达到软硬件协同设计与实现的目的。通过ARM处理器与硬件卸载单元的配合,可以将IO路径的执行单元完全硬化成硬件,将IO路径的控制策略仍然通过软件来实现,这样可以最大程度的保证灵活性。
例如,在得到视频数据的存储位置信息:X:\Users\,则将视频数据存储至存储设备的X:\Users\路径下。
本说明书实施例提供一种数据存储系统以及方法,其中所述数据存储方法应用于存储服务器中的智能网卡,所述方法包括:接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;根据所述存储位置信息将所述目标数据存储至存储设备。通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
下述结合附图4,以本说明书提供的数据存储方法在存储服务器中的智能网卡的应用为例,对所述数据存储方法进行进一步说明。其中,图4示出了本说明书一个实施例提供的一种数据存储方法的处理过程流程图,具体包括以下步骤。
步骤402:智能网卡对所述初始数据进行网络协议解析得到目标数据。
例如,智能网卡通过网络接收到音频数据,该视频数据经过VXLAN网络协议封装,将初始数据进行VXLAN网络协议卸载,得到原始音频数据。
步骤404:判断地址映射信息中是否存储目标数据的存储位置信息。若是执行步骤410;若否,执行步骤406。
例如,智能网卡判断地址映射信息中是否存储原始音频数据的存储位置信息。
步骤406:智能网卡将所述目标数据的元数据信息发送至CPU。
例如,在智能网卡中的地址映射信息中,不存在原始音频数据对应的存储位置信息的情况下,将所述原始音频数据的元数据信息发送至CPU。
步骤408:智能网卡接收所述CPU返回的地址映射信息,并存储所述地址映射信息。
例如,从CPU接收原始音频数据的地址映射信息,并将所述地址映射信息加入当前已存在的地址映射信息。
步骤410:智能网卡根据所述地址映射信息将所述目标数据存储至存储设备。
例如,智能网卡根据地址映射信息将原始音频数据存储至SSD存储介质。
通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
与上述方法实施例相对应,本说明书还提供了数据存储装置实施例,图5示出了本说明书一个实施例提供的一种数据存储装置的结构示意图。如图5所示,该装置包括:
数据接收模块502,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;
地址映射模块504,被配置为接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;
存储模块506,被配置为根据所述存储位置信息将所述目标数据存储至存储设备。
进一步地,数据获取模块502,还被配置为:
对所述初始数据进行网络协议解析得到目标数据。
进一步地,数据获取模块502,还被配置为:
对所述初始数据进行解码处理得到目标数据。
进一步地,地址映射模块504,还被配置为:
存储所述目标数据的地址映射信息,在接收到所述初始数据的情况下,对所述初始数据进行预设解析处理得到目标数据;
根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
本说明书实施例提供一种数据存储装置,其中所述数据存储装置应用于存储服务器中的智能网卡,所述装置接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;根据所述存储位置信息将所述目标数据存储至存储设备。通过智能网卡处理初始数据得到目标数据,并将目标数据存储至相应的存储设备,由于不通过CPU进行存储数据,减少了CPU的压力。
上述为本实施例的一种数据存储装置的示意性方案。需要说明的是,该数据存储装置的技术方案与上述的数据存储方法的技术方案属于同一构思,数据存储装置的技术方案未详细描述的细节内容,均可以参见上述数据存储方法的技术方案的描述。
图6示出了根据本说明书一个实施例提供的一种计算设备600的结构框图。该计算设备600的部件包括但不限于存储器610和处理器620。处理器620与存储器610通过总线630相连接,数据库650用于保存数据。
计算设备600还包括接入设备640,接入设备640使得计算设备600能够经由一个或多个网络660通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备640可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备600的上述部件以及图6中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图6所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备600可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备600还可以是移动式或静止式的服务器。
其中,处理器620用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据存储方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据存储方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据存储方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据存储方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据存储方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据存储方法的技术方案的描述。
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据存储方法的步骤。
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的数据存储方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述数据存储方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (14)
1.一种数据存储系统,包括智能网卡,CPU和存储设备;
所述智能网卡,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,在地址映射信息中未记录所述目标数据的存储位置信息的情况下,将所述目标数据的元数据信息发送至CPU,接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息,根据所述存储位置信息将所述目标数据存储至所述存储设备;
所述CPU,被配置为接收所述智能网卡发送的所述元数据信息,根据所述元数据信息生成所述地址映射信息,并将所述地址映射信息发送至所述智能网卡。
2.根据权利要求1所述的系统,所述智能网卡,还被配置为:
在接收所述CPU返回的地址映射信息之后,存储所述目标数据的地址映射信息;
在接收到所述初始数据的情况下,对所述初始数据进行预设解析处理得到目标数据;
根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
3.根据权利要求1所述的系统,所述智能网卡,还被配置为:
在地址映射信息中记录有所述目标数据的存储位置信息的情况下,根据所述地址映射信息的记录将所述目标数据存储至所述存储设备。
4.根据权利要求1所述的系统,所述智能网卡包括协议解析模块;
所述协议解析模块,被配置为接收待存储的初始数据,并确定所述初始数据的网络协议;
根据所述初始数据的网络协议确定协议解析规则;
根据所述协议解析规则对所述初始数据进行网络协议解析得到第一目标数据。
5.根据权利要求4所述的系统,所述智能网卡包括处理模块;
所述处理模块,被配置为从所述协议解析模块获取所述第一目标数据,并根据所述地址映射信息,将所述第一目标数据通过PCIe总线存储至所述存储设备。
6.根据权利要求1所述的系统,所述智能网卡包括内存模块;
所述内存模块,被配置为缓存所述智能网卡中的数据。
7.根据权利要求1所述的系统,所述智能网卡包括协议解析模块;
所述协议解析模块,被配置为接收待存储的初始数据,并对所述初始数据进行网络协议解析;
在所述网络协议解析失败的情况下,将所述初始数据发送至所述处理模块。
8.根据权利要求7所述的系统,所述智能网卡包括处理模块;
所述处理模块,被配置为接收所述协议解析模块发送的初始数据,并确定所述初始数据的网络协议;
根据所述初始数据的网络协议确定协议解析规则;
根据所述协议解析规则对所述初始数据进行网络协议解析得到第一目标数据。
9.根据权利要求8所述的系统,所述智能网卡还包括编解码模块;
所述编解码模块,被配置为接收所述协议解析模块或所述处理模块发送的第一目标数据,并对所述第一目标数据进行解码处理得到第二目标数据。
10.根据权利要求1所述的系统,所述智能网卡还包括编解码模块;
接收所述CPU返回的地址映射信息,并存储所述目标数据的地址映射信息。
11.一种数据存储方法,应用于存储服务器中的智能网卡,包括:
接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;
接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;
根据所述存储位置信息将所述目标数据存储至存储设备。
12.一种数据存储装置,包括:
数据接收模块,被配置为接收待存储的初始数据,并对所述初始数据进行预设解析处理得到目标数据,以及将所述目标数据的元数据信息发送至CPU;
地址映射模块,被配置为接收所述CPU返回的地址映射信息,根据所述地址映射信息确定所述目标数据的存储位置信息;
存储模块,被配置为根据所述存储位置信息将所述目标数据存储至存储设备。
13.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求11所述数据存储方法的步骤。
14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求11所述数据存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210615864.9A CN115202573A (zh) | 2022-06-01 | 2022-06-01 | 数据存储系统以及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210615864.9A CN115202573A (zh) | 2022-06-01 | 2022-06-01 | 数据存储系统以及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115202573A true CN115202573A (zh) | 2022-10-18 |
Family
ID=83576725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210615864.9A Pending CN115202573A (zh) | 2022-06-01 | 2022-06-01 | 数据存储系统以及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115202573A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115865803A (zh) * | 2023-03-03 | 2023-03-28 | 浪潮电子信息产业股份有限公司 | 一种io请求处理方法、装置、设备及可读存储介质 |
CN116301663A (zh) * | 2023-05-12 | 2023-06-23 | 新华三技术有限公司 | 一种数据存储方法、装置及主机 |
-
2022
- 2022-06-01 CN CN202210615864.9A patent/CN115202573A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115865803A (zh) * | 2023-03-03 | 2023-03-28 | 浪潮电子信息产业股份有限公司 | 一种io请求处理方法、装置、设备及可读存储介质 |
CN115865803B (zh) * | 2023-03-03 | 2023-08-22 | 浪潮电子信息产业股份有限公司 | 一种io请求处理方法、装置、设备及可读存储介质 |
CN116301663A (zh) * | 2023-05-12 | 2023-06-23 | 新华三技术有限公司 | 一种数据存储方法、装置及主机 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10972768B2 (en) | Dynamic rebalancing of edge resources for multi-camera video streaming | |
WO2023005748A1 (zh) | 数据处理方法以及装置 | |
CN108028833B (zh) | 一种nas数据访问的方法、系统及相关设备 | |
CN115202573A (zh) | 数据存储系统以及方法 | |
CN106453474B (zh) | 在不稳定网络环境中的大文件的网络传输 | |
CN114201421B (zh) | 一种数据流处理方法、存储控制节点及可读存储介质 | |
CN111966446B (zh) | 一种容器环境下rdma虚拟化方法 | |
CN112631788B (zh) | 数据传输方法及数据传输服务器 | |
CN113746749A (zh) | 网络连接设备 | |
CN111327603A (zh) | 数据传输方法、装置和系统 | |
CN114095427A (zh) | 一种处理数据报文的方法和网卡 | |
WO2024037296A1 (zh) | 基于协议族的quic数据传输方法及装置 | |
US20240152290A1 (en) | Data writing method, data reading method, apparatus, device, system, and medium | |
US20050091334A1 (en) | System and method for high performance message passing | |
CN111262917A (zh) | 一种基于fpga云平台的远端数据搬移装置和方法 | |
WO2023046141A1 (zh) | 一种数据库网络负载性能的加速框架、加速方法及设备 | |
CN116049085A (zh) | 一种数据处理系统及方法 | |
CN115270033A (zh) | 一种数据访问系统、方法、设备以及网卡 | |
CN115686836A (zh) | 一种安装有加速器的卸载卡 | |
CN113691466B (zh) | 一种数据的传输方法、智能网卡、计算设备及存储介质 | |
Manohar et al. | Progressive vector quantization of multispectral image data using a massively parallel SIMD machine | |
CN109743350B (zh) | 一种科学计算应用影像区交换通信模式的卸载实现方法 | |
US20220321491A1 (en) | Microservice data path and control path processing | |
CN114595080A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN114615355A (zh) | 报文处理方法以及报文解析模块 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |