CN115150203A - 数据处理的方法、装置、计算机设备和存储介质 - Google Patents
数据处理的方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115150203A CN115150203A CN202211075426.4A CN202211075426A CN115150203A CN 115150203 A CN115150203 A CN 115150203A CN 202211075426 A CN202211075426 A CN 202211075426A CN 115150203 A CN115150203 A CN 115150203A
- Authority
- CN
- China
- Prior art keywords
- transaction data
- dpu
- target
- transaction
- flow table
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种数据处理的方法、装置、计算机设备和存储介质,其中方法包括:接收第二报盘前置设备的主机CPU发送的校验请求消息,校验请求消息包括账户标识和待校验交易信息,待校验交易信息包括交易标的标识和第一交易数据;根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据;根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价;若最大买入价小于或者等于最小卖出价,则确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;或者若最大买入价大于最小卖出价,则DPU向主机CPU发送校验失败消息。实施本申请,可以提高数据处理的效率。
Description
技术领域
本申请涉及互联网产业的适用于金融目的的数据处理技术领域,尤其涉及一种数据处理的方法、装置、计算机设备和存储介质。
背景技术
自成交行为是指一个交易账户提交的某个标的物的购买委托与该交易账户自己提交的同一标的物的卖出委托成交的行为。例如,交易账户A提交了一个关于标的物B的购买委托,又提交了一个关于标的物B的卖出委托,然后交易账户A关于标的物B的购买委托与交易账户A关于标的物B的卖出委托成交了,这种行为就是自成交行为。由于自成交行为涉及到价格操纵,会扰乱正常价格,因此需要被监管严厉打击。
证券期货交易系统中,为防止出现自成交情况,会在风控系统中对某一交易账户针对某标的的所有购买委托的最高买入价以及所有卖出委托的最低卖出价进行校验,即校验该账户针对某标的所有购买委托的最大买入价不能大于所有卖出委托的最小卖出价。目前,防自成交任务主要是由报盘前置设备的主机CPU来处理,但是随着证券市场的蓬勃发展,交易量的日益增长,主机CPU的负担也越来越大,数据处理的效率也随之变慢。
发明内容
本申请实施例提供了一种数据处理的方法、装置、计算机设备和存储介质,可以减轻主机CPU的数据处理压力,提高数据处理的效率。
第一方面,本申请实施例提供了一种数据处理的方法,应用于第二报盘前置设备装配的DPU,包括:
所述DPU接收所述第二报盘前置设备的主机CPU发送的校验请求消息,所述校验请求消息包括账户标识和待校验交易信息,所述待校验交易信息包括交易标的标识和第一交易数据;
所述DPU对所述校验请求消息执行如下步骤A至步骤C:
步骤A、所述DPU根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据;
步骤B、所述DPU根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价;
步骤C、若所述最大买入价小于或者等于所述最小卖出价,则所述DPU确定所述第一交易数据校验通过,并将所述第一交易数据发送至撮合服务器;或者若所述最大买入价大于所述最小卖出价,则所述DPU向所述主机CPU发送校验失败消息。
第二方面,本申请实施例提供了一种数据处理的装置,应用于第二报盘前置设备装配的DPU,包括:
通信单元,用于接收所述第二报盘前置设备的主机CPU发送的校验请求消息,所述校验请求消息包括账户标识和待校验交易信息,所述待校验交易信息包括交易标的标识和第一交易数据;
处理单元,用于对所述校验请求消息执行如下步骤A至步骤C:步骤A、根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据;步骤B、根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价;步骤C、若所述最大买入价小于或者等于所述最小卖出价,则确定所述第一交易数据校验通过,并将所述第一交易数据发送至撮合服务器;或者所述最大买入价大于所述最小卖出价,则向所述主机CPU发送校验失败消息。
第三方面,本申请实施例提供了一种计算机设备,包括处理器、存储器和通信接口,其中,所述存储器存储有计算机程序,所述计算机程序被配置由所述处理器执行,所述计算机程序包括用于如本申请实施例第一方面中所描述的部分或全部步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
实施本申请实施例,将具有如下有益效果:
采用上述的数据处理的方法、装置、计算机设备和存储介质,DPU接收第二报盘前置设备的主机CPU发送的校验请求消息,校验请求消息包括账户标识和待校验交易信息,待校验交易信息包括交易标的标识和第一交易数据;然后根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据;进而根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价;若最大买入价小于或者等于最小卖出价,则确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;或者若最大买入价大于最小卖出价,则向主机CPU发送校验失败消息。通过实施本申请实施例,可以使得原本需要由主机CPU完成的校验自成交任务由DPU承担,可以释放主机CPU的计算能力,从而减轻主机CPU的数据处理压力,提高数据处理的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以基于这些附图获得其他的附图。其中:
图1为本申请实施例提供的一种系统架构示意图;
图2为本申请实施例提供的一种DPU的结构示意图;
图3为本申请实施例提供的一种数据处理的方法的流程示意图;
图4为本申请实施例提供的一种数据处理的装置的结构示意图;
图5为本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
还应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
自成交行为是指一个交易账户提交的某个标的物的购买委托与该交易账户自己提交的同一标的物的卖出委托成交的行为。例如,交易账户A提交了一个关于标的物B的购买委托,又提交了一个关于标的物B的卖出委托,然后交易账户A关于标的物B的购买委托与交易账户A关于标的物B的卖出委托成交了,这种行为就是自成交行为。由于自成交行为涉及到价格操纵,会扰乱正常价格,因此需要被监管严厉打击。
证券期货交易系统中,为防止出现自成交情况,会在风控系统中对某一交易账户针对某标的物的所有购买委托的最高买入价以及所有卖出委托的最低卖出价进行校验,即校验该账户针对某标的所有购买委托的最大买入价不能大于所有卖出委托的最小卖出价。目前,防自成交任务主要是由报盘前置设备的主机CPU来处理,但是随着证券市场的蓬勃发展,交易量的日益增长,主机CPU的负担也越来越大,数据处理的效率也随之变慢。
为了解决上述问题,本申请实施例提供了一种数据处理的方法、装置、计算机设备和存储介质,通过实施本申请实施例,减轻主机CPU的数据处理压力,提高数据处理的效率。
为了更好地理解本申请实施例的技术方案,首先对本申请实施例可能涉及的一种系统架构进行介绍。请参见图1,图1是本申请实施例提供的一种系统架构示意图。如图1所示,该系统架构可以包括第一报盘前置设备、第二报盘前置设备和撮合服务器等,该系统架构可以包括一个或者多个撮合服务器,还可以包括至少两个或者多个报盘前置设备,这里将不对撮合服务器和报盘前置设备的数量进行限制。如图1所示,第二报盘前置设备可以与撮合服务器和第一报盘前置设备之间可以建立通信连接。通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接等,具体可根据实际应用场景确定,本申请实施例在此不做限制。
其中,撮合服务器可以理解为用于进行撮合交易的服务器,撮合服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云数据库、云服务、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。第一报盘前置设备和第二报盘前置设备可以理解为证券期货交易所中作为完成交易的一种中间设备,具体可以用于进行风控处理,例如防自成交等等。第一报盘前置设备和第二报盘前置设备可以是独立主机或主机集群,具体可以是台式计算机、平板电脑、笔记本电脑、智能手机、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、智能电脑、智能车载等智能终端。当然,第一报盘前置设备和第二报盘前置设备也可以是独立的物理服务器,或者是多个物理服务器构成的服务器集群或者分布式系统。
如图1所示,第二报盘前置设备中可以包括主机CPU、风控云服务主机和DPU以及部署在DPU上的vDPU。其中,DPU是指数据处理器(data processing unit,DPU),是最新发展起来的专用处理器的一个大类,是继中央处理器(central processing unit,CPU)、图像处理器(graphics processing unit,GPU)之后,数据中心场景中的第三颗重要的算力芯片,为高带宽、低延迟、数据密集的计算场景提供计算引擎。DPU主要有以下三个特点,分别是卸载、加速、隔离。相应地,DPU的三个主要应用场景分别是网络、存储、安全。本申请实施例主要涉及DPU的卸载方面的应用。具体地,在卸载方面,DPU可以作为CPU的卸载引擎,接管网络虚拟化、硬件资源池化等基础设施层服务,释放DPU的计算能力以实现应用层的任务。现有的DPU一般包括两部分,软件部分和硬件部分:软件部分包括控制芯片,通常以标准的CPU架构实现,控制芯片具体可以是嵌入式处理器(embedded CPU,ECPU)等等,可以主要用于卸载控制层的任务和一些灵活复杂的硬件部分无法处理的数据层的任务;硬件部分为处理芯片,通常以现场可编程门阵列(field programmable gate array,FPGA)或者专用集成芯片(application specific integrated circuit,ASIC)等硬件形式实现,用以卸载基础的数据层任务。例如,在证券期货交易系统中,可以将本该由主机CPU完成的自成交校验任务由DPU承担,由DPU中的控制芯片与处理芯片相互配合,从而减轻主机CPU的数据处理压力,提高数据处理的效率。
风控云服务主机可以是独立主机或者主机集群承载的虚拟服务器,DPU部署于该独立主机或主机集群中,其上有与风控云服务主机对应的vDPU。vDPU可以理解为风控云服务主机提供专属加速功能的虚拟DPU。
进一步地,请参见图2,图2是本申请实施例提供的一种DPU的结构示意图。如图2所示,DPU部署于第二报盘前置设备中,第二报盘前置设备上有多个风控云服务主机(例如第一风控云服务主机和第二风控云服务主机等等),风控云服务主机为由第二报盘前置设备承载的虚拟服务器。DPU包括控制芯片和处理芯片,DPU上部署有与第二报盘前置设备中的风控云服务主机一一对应的vDPU。例如,与第一风控云服务主机对应的vDPU包括:部署于控制芯片中的第一控制模块,以及处理芯片中建立的第一风控云服务主机对应的第一处理流表;与第二风控云服务主机对应的vDPU包括:部署于控制芯片中的第二控制模块,以及处理芯片中建立的与第二风控云服务主机对应的第二处理流表。其中,第一控制模块和第二控制模块可以为控制芯片中的虚拟机,该虚拟机可以通过轻量级虚拟化技术实现,例如Kata、Docker、Multipuss等,该轻量级虚拟机与风控云服务主机一一对应。处理芯片中还包括硬件资源池,该硬件资源池中可以包含多个用于实现预设处理功能的硬件处理模块(例如第五硬件处理模块、第六硬件处理模块和第七硬件处理模块等等),处理流表的流表项记录有与硬件资源池的至少一个硬件处理模块的映射关系,DPU可以根据对应的流表项从硬件资源池中调用相应的硬件处理模块执行预设处理功能。因此,vDPU用于为风控云服务主机分配专属的数据处理资源,使得原来由第二报盘前置设备的主机CPU完成的与风控云服务主机相关的数据层任务由vDPU承担,释放主机CPU的计算能力以实现应用层的任务,从而减轻主机CPU的数据处理压力,提高数据处理的效率。
继续参见图1,第二报盘前置设备可以与撮合服务器和第一报盘前置设备之间可以进行数据交互。例如,第一报盘前置设备可以向第二报盘前置设备的主机CPU发送校验请求消息,使得第二报盘前置设备完成该校验请求消息中携带的待校验交易信息的自成交校验。其中,该校验请求消息可以包括账号标识和待校验交易信息,该待校验交易信息可以包括交易标的标识和第一交易数据。第二报盘前置设备的主机CPU在接收到该校验请求消息之后,可以根据交易标的标识对应的标的类型,查询与该交易标的标识匹配的风控云服务主机,并将该校验请求消息配置给风控云服务主机,风控云服务主机向第二报盘前置设备的DPU发送该校验请求消息,由第二报盘前置设备的DPU承担自成交校验任务,即DPU在接收到该校验请求消息之后,可以根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据;进而根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价。进一步地,若最大买入价小于或者等于最小卖出价,则DPU确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;若最大买入价大于最小卖出价,则DPU向主机CPU发送校验失败消息,以使主机CPU向第一报盘前置设备反馈第一交易数据出现异常交易,即存在自成交行为。
进一步地,请参见图3,图3是本申请实施例提供的一种数据处理的方法的流程示意图。可以理解地,该数据处理的方法可以由第二报盘前置设备装配的DPU执行。如图3所示,该数据处理的方法可以包括以下步骤:
步骤S101:DPU接收第二报盘前置设备的主机CPU发送的校验请求消息,校验请求消息包括账户标识和待校验交易信息,待校验交易信息包括交易标的标识和第一交易数据。
校验请求消息可以用于指示对校验请求消息中包含的待校验交易信息进行风控操作,判断该待校验交易信息是否发生自成交行为等。当待校验交易信息存在自成交行为时,待校验交易信息中的第一交易数据可以被及时中止,从而可以为证券期货公司及时迅速地控制风险。可以理解的是,校验请求消息可以是以报文的形式,也可以是其他形式,本申请实施例对此不做限定。
其中,账户标识可以理解为唯一标识交易账户身份的信息,可以是数字、字母、文字或者特殊符号的一种或者多种的组合。待校验交易信息可以理解为将要进行校验的交易信息。交易标的标识可以是交易标的的身份标识,具体可以呈现为一串数字,也可以是其他的呈现形式,例如,数字和字母的组合等等。交易标的类型可以是股票、期货、基金、贵金属、外汇、保险、债券等等。第一交易数据可以是针对该交易账户在预设周期内(例如500ms)的产生的交易数据,具体可以包括买卖方向(购买或者卖出)、购买或者卖出价格、购买或卖出每笔下单手数等等。可以理解的是,校验请求消息中的账户标识以及交易标的标识可以有一个也可以有多个,本申请实施例对此不做限定。
具体地,第一报盘前置设备可以向第二报盘前置设备的主机CPU发送校验请求消息,第二报盘前置设备的主机CPU在接收到该校验请求消息之后,可以将该校验请求消息发送给DPU进行处理,以减轻主机CPU的数据处理压力,相应地,DPU接收主机CPU发送的校验请求消息,并根据该校验请求消息执行相应的校验操作。
步骤S102:DPU对校验请求消息执行如下步骤A至步骤C。
步骤A:DPU根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据。
步骤B:DPU根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价。
步骤C:若最大买入价小于或者等于最小卖出价,则DPU确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;或者若最大买入价大于最小卖出价,则DPU向主机CPU发送校验失败消息。
具体地,DPU可以根据账户标识从数据库(例如硬件数据库)中查询该账户标识对应的交易账号针对交易标的标识的历史购买交易数据和历史卖出交易数据。
由前文所述,DPU在接收到主机CPU发送的校验请求消息之后,可以根据校验请求消息中的账户标识在数据库(例如硬件数据库)中查询该账户标识对应的交易账户针对交易标的标识的历史购买交易数据,然后从历史购买交易数据中筛选出最大参考买入价;以及查询该账户标识对应的交易账户针对交易标的标识的历史卖出交易数据,然后从历史卖出交易数据中筛选出最小参考卖出价。并根据第一交易数据中对应的交易委托所涉及的买卖方向(购买或者卖出)和价格,确定针对交易标的标识对应的最大买入价和最小卖出价。
具体地,可以将该账户标识对应的交易账户关于该标的标识的最大参考买入价或者最小参考卖出价与第一交易数据中此次的交易委托的价格进行比较,以得到针对交易标的标识对应的最大买入价和最小卖出价。例如,若最大参考买入价为20,最小参考卖出价为120,第一交易数据中,此次交易委托的买卖方向为卖出方向,价格为100,则根据最大参考买入价、最小参考卖出价,以及对应的与该第一交易数据对应的交易委托所涉及的买卖方向(此次交易委托的购买方向为卖出方向)和价格(此次交易委托的价格为100),确定针对于购买相应的标的标识的交易委托的最大买入价为20,以及针对于卖出相应标的标识的交易委托的最小卖出价为100。若最大参考买入价为20,最小参考卖出价为120,此次交易委托的买卖方向为买入方向,价格为40,则根据最大参考买入价、最小参考卖出价,则根据最大参考买入价、最小参考卖出价,以及对应的与该第一交易数据对应的交易委托所涉及的买卖方向(此次交易委托的购买方向为买入方向)和价格(此次交易委托的价格为40),确定针对于购买相应的标的标识的交易委托的最大买入价为40,以及针对于卖出相应标的标识的交易委托的最小卖出价为120。
在得到最大买入价和最小卖出价之后,比较最大买入价与最小卖出价,从而确定第一交易数据是否存在自成交行为。具体地,若最大买入价小于或者等于最小卖出价,即第一交易数据中不包含有自成交行为的交易委托,则确定第一交易数据校验通过,在这种情况下,可以将第一交易数据存储至数据库(例如硬件数据库)中,并由DPU将第一交易数据发送至对应的撮合服务器,从而对该第一交易数据进行撮合。若最大买入价大于最小卖出价,即第一交易数据中包含有自成交行为的交易委托,则确定第一交易数据校验不通过。在这种情况下,可以向主机CPU发送校验失败消息,以使主机CPU向发出该校验请求消息的第二报盘前置设备反馈第一交易数据中存在自成交行为。而此时DPU将不会执行将第一交易数据存储至数据库的操作,也不会执行将第一交易数据发送至对应的撮合服务器,从而使得存在自成交行为的第一交易数据不会被撮合。
在一种可能的实施方式中,步骤S102具体可以包括步骤A1-A3:
步骤A1:获取与校验请求消息适配的处理流表。
请参见图2,第二报盘前置设备中可以部署有多个风控云服务主机,每个风控云服务主机对应一个处理流表。主机CPU在接收到校验请求消息之后,查询与该校验请求消息适配的风控云服务主机,例如图2所示的第一风控云服务主机,并将该校验请求消息配置给第一风控云服务主机,此时,DPU的控制芯片接收到来自第一风控云服务主机的校验请求消息,根据该校验请求消息确定第一风控云服务主机对应的第一处理流表,并在第一处理流表中查找与校验请求消息匹配的目标流表项,从而确定该校验请求消息的处理规则。
处理流表可以理解为一张张的转发表(forwarding table),用于作为流转发的依据,每张处理流表都是由多个流表项(flow entry)组成,每张处理流表对应了网络传输的一条流。流是指在一段时间内经过同一个网络的一系列具有相同属性的顺序发送的数据包(报文)集合。
在一种可能的实施方式中,DPU的处理芯片中可以部署有端口表,该端口表记录有处理芯片所维护的所有处理流表分别对应的风控云服务主机的端口号,其中,每个风控云服务主机的端口号不同。可以预先构建各个风控云服务主机的端口号与各个处理流表之间的映射关系,使根据风控云服务主机与处理流表一一对应。例如,如图2所示,处理芯片维护有第一风控云服务主机和第二风控云服务主机对应的第一处理流表和第二处理流表,其中,第一风控云服务主机与第一处理流表对应,第二风控云服务主机与第二处理流表对应。DPU的处理芯片在接收到针对第一风控云服务主机的校验请求消息时,可以根据第一风控云服务主机的端口号在端口表中进行查找,然后根据预定义的端口号与处理流表之间的映射关系,确定第一风控云服务主机的端口号对应的处理流表为第一处理流表,即将第一处理流表确定为校验请求消息对应的处理流表。可以看出,通过风控云服务主机的端口号与处理流表之间的映射关系,可以快速且准确地确定校验请求消息对应的处理流表,从而可以提高DPU数据处理的效率。
步骤A2:在处理流表中查找与校验请求消息匹配的目标流表项。
流表项是处理流表的最小单位,流表项可以用于表示处理流表所对应的流的各种信息,例如输入端口号、源地址、目的地址、数据包类型,可执行动作等。可以理解地,目标流表项可以用于表示处理流表中与校验请求消息匹配的流表项。目标流表项中预先配置有针对校验请求消息的处理规则。在本申请实施例中,处理规则可以是预先设置的用于判断校验请求消息中的第一交易数据是否存在自成交行为对应的执行动作,或者还可以是其他的相关的处理规则,本申请实施例对此不做限定。当校验请求消息被DPU的处理芯片接收之后,处理芯片可以根据该校验请求消息确定其对应的处理流表,并在该处理流表中查找与校验请求消息相匹配的目标流表项,以确定该校验请求消息的处理规则。
在一种可能的实施方式中,步骤A2具体可以包括以下步骤:
根据校验请求消息的类型提取校验请求消息的消息关键字段;在处理流表中查找与消息关键字段匹配的目标流表项。
校验请求消息的类型可以是以太网使用远程直接内存访问(RDMA)的网络协议(RDMA over converged Ethernet,ROCE)报文或者传输控制协议(transmission controlprotocol,TCP)报文等等。消息关键字段可以是以下信息中的任意一个:六元组信息、五元组信息、四元组信息或者三元组信息。其中,六元组信息包括源地址、源端口、目的地址、目的端口、协议号以及虚拟专用网络(virtual private network,VPN)路由转发;五元组信息包括源地址、源端口、目的地址、目的端口以及协议号;四元组信息包括源地址、源端口、目的地址以及目的端口;三元组信息包括源地址、源端口以及协议号。可选地,消息关键字段还可以包括:源媒体接入控制(media access control,MAC)地址、目的MAC地址、源接口和虚拟局域网(virtual local area network,VLAN)标识等等。
具体地,DPU在接收到校验请求消息之后,可以提取该校验请求消息中的消息关键字段进行流匹配,即在该校验请求消息对应的处理流表中查找该校验请求消息的消息关键字段。可选地,可以将消息关键字段进行哈希处理,并将处理后的哈希信息与预设的哈希信息进行比对,以确定在处理流表是否查找对应的消息关键字段,若处理后的哈希信息与预设的哈希信息相同,则可以认为处理流表中已存在与校验请求消息匹配的目标流表项。其中,处理后的哈希信息与预设的哈希信息是通过哈希算法,根据消息关键字段计算得到的。可以看出,通过校验请求消息的消息关键字段,可以快速且准确地在处理流表中查找与消息关键字段匹配的目标流表项,从而可以提高数据处理的效率。
在一种可能的实施方式中,在接收到校验请求消息之后,可以先判断校验请求消息是否为有效报文。具体地,可以通过将校验请求消息中的信息与预设信息进行比对,以确定校验请求消息是否为有效报文。其中,预设信息可以包括IP报文头的版本号信息、报文头的长度信息、报文整体长度信息、生存时间(time to live)以及分片标记信息等等。当校验请求消息中的信息与预设信息相同时,则确定校验请求消息为有效报文。若该校验请求消息不是有效报文,DPU的处理芯片可以基于访问控制列表(access control list,ACL)策略对该校验请求消息进行丢弃。若该校验请求消息为有效报文,DPU的处理芯片可以基于访问控制列表(access control list,ACL)策略对该校验请求消息进行放行或者统计等相关操作。可以看出,通过校验请求消息是否为有效报文,若校验请求消息为无效报文,则基于ACL策略对其进行丢弃,以节省计算资源。
在一种可能的实施方式中,还可以包括以下步骤:
若在处理流表中未查找到与校验请求消息匹配的目标流表项,则确定处理流表的预留子流表中是否存在可用表项;若预留子流表中存在可用表项,则在可用表项中新建与校验请求消息对应的目标流表项;若预留子流表中不存在可用表项,则释放预留子流表中业务优先级最低的第一流表项,并在第一流表项中新建与校验请求消息对应的目标流表项。
预留子流表可以理解为处理流表中的一个预先设置的预留的子流表,例如,可以将处理流表的容量的百分之十确定为预留子流表。第一流表项是预留子流表中业务优先级最低的第一流表项。在确定预留子流表中存在可用表项的情况下,即预留子流表未超出容量,则可以在预可用表项中新建与校验请求消息对应的目标流表项。在确定预留子流表中不存在可用流表的情况下,即预留子流表超出容量,则释放预留子流表中业务优先级最低的第一流表项,则在第一流表项中新建与校验请求消息对应的目标流表项,可以防止在处理流表中未找到与校验请求消息匹配的目标流表项的情况下,校验请求消息被直接作丢弃处理,进而保证校验请求消息能够被有效处理。
预留子流表中流表项业务优先级的确定方式可以是:可以基于预留子流表中各个流表项对应的报文的服务质量(quality of service,QoS),确定预留子流表中各个流表项的业务优先级。具体地,可以是基于虚拟局域网(virtuallocal area network,VLAN)帧头中的服务等级(class of service,CoS)字段,也可以是基于IP报文头中的互联网协议优先级(Internet Protocol Precedence,IP Precedence)字段和DSCP字段对预留子流表中各个流表项对应的报文进行业务优先级的标识,从而可以根据该标识确定预留子流表中各个流表项的业务优先级。此外,还可以基于ACL策略确定优先级的方式确定预留子流表中各个流表项的业务优先级。例如,业务优先级最低的业务为Permit ip host 20.X.X.X host10.X.X.X,且该业务源IP地址为:20.X.X.X,目的IP地址为10.X.X.X。当检测到预留子流表中流表项中的报文的源IP地址和目的IP地址为上述IP地址,则确定该报文对应的预留子流表对应的流表项为业务优先级最低的流表项,即第一流表项。
其中,校验请求消息对应的目标流表项的新建过程可以是:当DPU的处理芯片接收到校验请求消息经过注册快转输入业务(FPM Ingress)处理时,可以根据校验请求消息的消息关键字段提取流信息,然后在预留子流表中构建目标流表项,同时在索引流哈希(HASH)表中添加正向流,从而完成流创建流程,即目标流表项的建立。进一步地,还可以利用业务模块注册接口提供的挂接函数,在添加正向流前后执行相应的动作(例如,判断校验请求消息中的第一交易数据是否存在自成交行为等等),利用流私有空间,分配业务与该校验请求消息相关的资源。
可以看出,在确定预留子流表中存在可用表项的情况下,则可以在预可用表项中新建与校验请求消息对应的目标流表项;在确定预留子流表中不存在可用流表的情况下,则释放预留子流表中业务优先级最低的第一流表项,则在第一流表项中新建与校验请求消息对应的目标流表项,可以防止在处理流表中未找到与校验请求消息匹配的目标流表项的情况下,校验请求消息被直接作丢弃处理,进而保证校验请求消息能够被有效处理。
步骤A3:获取目标流表项的预设执行动作,基于预设执行动作,对校验请求消息执行步骤A至步骤C。
预设执行动作可以理解为根据目标流表项对应的处理规则,即针对校验请求消息的处理规则。具体可以是判断校验请求消息中的第一交易数据是否存在自成交行为对应的执行动作。此外,还可以包括限制带宽、统计等执行动作。在确定校验请求消息对应的目标流表项之后,根据目标流表项所关联的预设执行动作,可以校验请求消息执行步骤A至步骤C,确定校验请求消息是否存在自成交行为。
在一种可能的实施方式中,目标流表项可以记录有与DPU的硬件资源池的至少一个硬件处理模块的映射关系,步骤A3具体可以包括以下步骤:
根据目标流表项记录的映射关系,从硬件资源池中查找与目标流表项关联的目标硬件处理模块;从硬件资源池中调用目标硬件处理模块,对所述校验请求消息执行步骤A至步骤C。
如图2所示,DPU的处理芯片上可以包括硬件资源池,该硬件资源池中可以包含多个用于实现预设处理功能的硬件处理模块(例如第五硬件处理模块、第六硬件处理模块和第七硬件处理模块等等)。其中,处理流表的流表项记录有与硬件资源池的至少一个硬件处理模块的映射关系。在本申请实施例中,目标流表项可以记录有与硬件资源池中一个或者多个硬件处理模块的映射关系。例如,目标流表项记录有与硬件资源池中的目标硬件处理模块的映射关系,该目标硬件处理模块预先配置有针对校验请求消息的预设处理功能。其中,目标硬件处理模块可以是一个硬件处理模块,也可以是多个硬件处理模块。例如,目标硬件处理模块可以是如图2所示的第五硬件处理模块,也可以是如图2所示的第六硬件处理模块和第七硬件处理模块。具体地,DPU在接收到校验请求消息之后,由于处理流表的目标流表项中记录有针对该校验请求消息的预设处理功能,其预设处理功能可以是获取交易标的标识相关联的历史购买交易数据和历史卖出交易数据。DPU的处理芯片可以根据目标流表项与目标硬件处理模块的映射关系,可以从硬件资源池调用目标硬件处理模块,实现预设处理功能,从而获取到校验请求消息中是否存在自成交行为。可以看出,通过调配DPU的硬件资源池的目标硬件处理模块,确定校验请求消息中是否存在自成交行为,可以提高数据处理的效率。
随着证券市场的蓬勃发展,交易数据也日益庞大,也就是说,校验请求消息中的第一交易数据的数据量可能十分庞大,可能包含多个账户标识以及多个交易标的标识。例如,一个账户标识可能对应多个不同的交易标的标识,或者多个账户标识对应多个相同或者不同的交易标的标识等等。
示例地,可以以交易标的标识可以包括第一交易标的标识和第二交易标的标识为例对本申请实施例进行描述。可以理解的是,交易标的标识可以包括第一交易标的标识和第二交易标的标识,这仅是为了更加清晰地描述本申请实施例的具体实现方式,不应表示本申请实施例只包括两种交易标的标识,校验请求消息中包含交易标的标识的数量需要根据实际情况进行分析。
在一种可能的实施方式中,步骤A具体可以包括以下步骤:
根据第一交易标的标识对应的标的类型,在目标硬件处理模块中确定第一交易标的标识对应的第一硬件处理模块;根据第二交易标的标识对应的标的类型,在目标硬件处理模块中确定第二交易标的标识对应的第二硬件处理模块;调用第一硬件处理模块,获取账户标识针对第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据;调用第二硬件处理模块,获取账户标识针对第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据。
在本申请实施例中,第一交易标的标识和第二交易标的标识对应的标的类型不同,例如,第一交易标的标识对应的标的类型可以是股票,第二交易标的标识对应的标的类型可以是基金。可以预先建立第一硬件处理模块和第一交易标的标识对应的标的类型的映射关系;以及建立第二硬件处理模块和第二交易标的标识对应的标的类型的映射关系。根据前文所述,目标硬件处理模块可以是一个硬件处理模块,也可以是多个硬件处理模块。在本申请实施例中,目标硬件处理模块可以包括第一硬件处理模块和第二硬件处理模块。也就是说,第一硬件处理模块和第二硬件处理模块是目标硬件处理模块中不同的硬件处理模块。可以理解的是,本申请实施例对第一硬件处理模块和第二硬件处理模块包含的硬件处理模块的数量不做限定,可以包含一个或者多个硬件处理模块,具体可以根据实际情况确定。例如,目标硬件处理模块对应图2所示的第五硬件处理模块、第六硬件处理模块和第七硬件处理模块;那么第一硬件处理模块可以对应第五硬件处理模块;第二硬件处理模块可以对应第六硬件处理模块和第七硬件处理模块。
具体地,DPU在硬件资源池中查找到与目标流表项关联的目标硬件处理模块之后,获取校验请求消息中第一交易标的标识和第二交易标的标识分别对应的标的类型;根据第一交易标的标识对应的标的类型与目标硬件处理模块的第一硬件处理模块的映射关系,确定第一交易标的标识对应第一硬件处理模块;以及根据第二交易标的标识对应的标的类型与目标硬件处理模块的第二硬件处理模块的映射关系,确定第二交易标的标识对应第二硬件处理模块。然后调用第一硬件处理模块,根据第一硬件处理模块的预设处理功能,从而获取账户标识针对第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据;以及调用第二硬件处理模块,根据第二硬件处理模块的预设处理功能,从而获取账户标识针对第二交易标的标识相关联的历史购买交易数据和历史卖出交易数据。
可以看出,根据第一交易标的标识和第二交易标的标识对应的标的类型,调配目标硬件处理模块中的与第一交易标的标识和第二交易标的标识适配的硬件处理模块进行查询处理,可以提高目标硬件处理模块中各个硬件处理模块的使用程度,从而可以提高数据处理的效率。
在一种可能的实施方式中,步骤B具体可以包括以下步骤:
将第一交易数据划分为第二交易数据和第三交易数据;根据第二交易数据的数据量,在目标硬件处理模块中确定第二交易数据对应的第三硬件处理模块;根据第三交易数据的数据量,在目标硬件处理模块中确定第三交易数据对应的第四硬件处理模块;调用第三硬件处理模块,根据第二交易数据、历史购买交易数据和历史卖出交易数据,确定第一最大买入价和第一最小卖出价;调用第四硬件处理模块,根据第三交易数据、历史购买交易数据和历史卖出交易数据,确定第二最大买入价和第二最小卖出价;根据第一最大买入价和第二最大买入价,确定最大买入价,根据第一最小卖出价和第二最小卖出价,确定最小卖出价。
具体地,可以根据硬件资源池中单个硬件处理模块的处理能力,将第一交易数据划分为第二交易数据和第三交易数据。例如,单个硬件处理模块具备处理10万数据量的能力,第一交易数据对应的数据量为30万,那么在一种可能的划分方式中,可以将第一交易数据的2/3划分为第二交易数据,将第一交易数据的1/3划分为第三交易数据。即第二交易数据对应的数据量为20万,第三交易数据对应的数据量为10万。或者,第二交易数据和第三交易数据的划分也可以根据预设比值确定,例如,第二交易数据与第三交易数据的预设比值为1/2,那么此时第二交易数据对应的数据量为10万,第三交易数据对应的数据量为20万。
第三硬件处理模块和第四硬件处理模块为目标硬件处理模块中不同的硬件处理模块,其具体的定义可以参考前文第一硬件处理模块和第二硬件处理模块的描述,在此不再赘述。若目标硬件处理模块对应图2所示的第五硬件处理模块、第六硬件处理模块和第七硬件处理模块,单个硬件处理模块具备处理10万数据量的能力,第二交易数据对应的数据量为20万,第三交易数据对应的数据量为10万;那么可以将目标硬件处理模块中的第五硬件处理模块和第七硬件处理模块配置为第三硬件处理模块;将目标硬件处理模块中的第六硬件处理模块配置为第四硬件处理模块。当然,也可以将目标硬件处理模块中的第六硬件处理模块和第七硬件处理模块配置为第三硬件处理模块,将目标硬件处理模块中的第五硬件处理模块配置为第四硬件处理模块,具体的配置方式可以根据实际情况进行确定。第一最大买入价和第一最小卖出价是调用第三硬件处理模块,根据第二交易数据和历史购买交易数据和历史卖出交易数据得到;第二最大买入价和第二最小卖出价是调用第四硬件处理模块,根据第三交易数据和历史购买交易数据和历史卖出交易数据得到。最后将第一最大买入价和第二最大买入价中较大值对应的值作为最大买入价,将第一最小卖出价和第二最小卖出价中较小值对应的值作为最小卖出价。
可以看出,通过第一交易数据的数据量动态分配硬件资源池中硬件资源,确定出最大买入价和最小卖出价,有助于DPU中的硬件资源池中的硬件资源得到最大化地利用,从而可以提高数据处理的效率。
从图3中可以看出,DPU接收第二报盘前置设备的主机CPU发送的校验请求消息,校验请求消息包括账户标识和待校验交易信息,待校验交易信息包括交易标的标识和第一交易数据;然后根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据;进而根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价;若最大买入价小于或者等于最小卖出价,则确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;或者若最大买入价大于最小卖出价,则向主机CPU发送校验失败消息。通过实施本申请实施例,可以使得原本需要由主机CPU完成的校验自成交任务由DPU承担,可以释放主机CPU的计算能力,从而减轻主机CPU的数据处理压力,提高数据处理的效率。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
请参照图4,图4是本申请实施例提供的一种数据处理的装置的结构示意图。该装置应用于第二报盘前置设备装配的DPU。如图4所示,该数据处理的装置400包括通信单元401和处理单元402,各个单元的详细描述如下:
通信单元401,用于接收第二报盘前置设备的主机CPU发送的校验请求消息,校验请求消息包括账户标识和待校验交易信息,待校验交易信息包括交易标的标识和第一交易数据;
处理单元402,用于对所述校验请求消息执行如下步骤A至步骤C:步骤A、根据账户标识获取与交易标的标识相关联的历史购买交易数据和历史卖出交易数据;步骤B、根据第一交易数据、历史购买交易数据和历史卖出交易数据,确定最大买入价和最小卖出价;步骤C、若最大买入价小于或者等于最小卖出价,则确定第一交易数据校验通过,并将第一交易数据发送至撮合服务器;或者最大买入价大于最小卖出价,则向主机CPU发送校验失败消息。
在一种可能的实施方式中,处理单元402具体用于在获取与校验请求消息适配的处理流表;在处理流表中查找与校验请求消息匹配的目标流表项;获取目标流表项的预设执行动作,基于预设执行动作对所述校验请求消息执行如下步骤A至步骤C。
在一种可能的实施方式中,处理单元402具体用于根据校验请求消息的类型提取校验请求消息的消息关键字段;在处理流表中查找与消息关键字段匹配的目标流表项。
在一种可能的实施方式中,目标流表项记录有与DPU的硬件资源池的至少一个硬件处理模块的映射关系,DPU获取目标流表项的预设执行动作,基于预设执行动作,处理单元402具体用于根据目标流表项记录的映射关系,从硬件资源池中查找与目标流表项关联的目标硬件处理模块;调用目标硬件处理模块对所述校验请求消息执行如下步骤A至步骤C。
在一种可能的实施方式中,交易标的标识包括第一交易标的标识和第二交易标的标识,处理单元402还用于根据第一交易标的标识对应的标的类型,在目标硬件处理模块中确定第一交易标的标识对应的第一硬件处理模块;根据第二交易标的标识对应的标的类型,在目标硬件处理模块中确定第二交易标的标识对应的第二硬件处理模块;调用第一硬件处理模块,获取账户标识针对第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据;调用第二硬件处理模块,获取账户标识针对第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据。
在一种可能的实施方式中,处理单元402具体用于将第一交易数据划分为第二交易数据和第三交易数据;根据第二交易数据的数量,在目标硬件处理模块中确定第二交易数据对应的第三硬件处理模块;根据第三交易数据的数量,在目标硬件处理模块中确定第三交易数据对应的第四硬件处理模块;调用第三硬件处理模块,根据第二交易数据、历史购买交易数据和历史卖出交易数据,确定第一最大买入价和第一最小卖出价;调用第三硬件处理模块,根据第三交易数据、历史购买交易数据和历史卖出交易数据,确定第二最大买入价和第二最小卖出价;根据第一最大买入价和第二最大买入价,确定最大买入价,根据第一最小卖出价和第二最小卖出价,确定最小卖出价。
在一种可能的实施方式中,处理单元402还用于若在处理流表中未查找到与校验请求消息匹配的目标流表项,则确定处理流表的预留子流表中是否存在可用表项;若预留子流表中存在可用表项,则在可用表项中新建与校验请求消息对应的目标流表项;若预留子流表中不存在可用表项,则释放预留子流表中业务优先级最低的第一流表项,并在第一流表项中新建与校验请求消息对应的目标流表项。
需要说明的是,各个单元的实现还可以对应参照图3所示的方法实施例的相应描述。
请参照图5,图5是本申请实施例提供的一种计算机设备的结构示意图。如图5所示,该计算机设备500包括处理器501、存储器502和通信接口503,其中存储器502存储有计算机程序504。处理器501、存储器502、通信接口503以及计算机程序504之间可以通过总线505连接。
当计算机设备为第二报盘前置设备装配的DPU时,上述计算机程序504用于执行以下步骤的指令:
所述DPU接收所述第二报盘前置设备的主机CPU发送的校验请求消息,所述校验请求消息包括账户标识和待校验交易信息,所述待校验交易信息包括交易标的标识和第一交易数据;
所述DPU对所述校验请求消息执行如下步骤A至步骤C:
步骤A、所述DPU根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据;
步骤B、所述DPU根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价;
步骤C、若所述最大买入价小于或者等于所述最小卖出价,则所述DPU确定所述第一交易数据校验通过,并将所述第一交易数据发送至撮合服务器;或者若所述最大买入价大于所述最小卖出价,则所述DPU向所述主机CPU发送校验失败消息。
本领域技术人员可以理解,为了便于说明,图5中仅示出了一个存储器和处理器。在实际的终端或服务器中,可以存在多个处理器和存储器。存储器502也可以称为存储介质或者存储设备等,本申请实施例对此不做限定。
应理解,在本申请实施例中,处理器501可以是中央处理单元(centralprocessing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
还应理解,本申请实施例中提及的存储器502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM, PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double datarate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器synchronize link DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
需要说明的是,当处理器501为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
应注意,本文描述的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。
该总线505除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各种说明性逻辑块(illustrative logical block,ILB)和步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现如上述方法实施例中记载的任何一种数据处理的方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种数据处理的方法的部分或全部步骤。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据处理的方法,其特征在于,应用于第二报盘前置设备装配的DPU,包括:
所述DPU接收所述第二报盘前置设备的主机CPU发送的校验请求消息,所述校验请求消息包括账户标识和待校验交易信息,所述待校验交易信息包括交易标的标识和第一交易数据;
所述DPU对所述校验请求消息执行如下步骤A至步骤C:
步骤A、所述DPU根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据;
步骤B、所述DPU根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价;
步骤C、若所述最大买入价小于或者等于所述最小卖出价,则所述DPU确定所述第一交易数据校验通过,并将所述第一交易数据发送至撮合服务器;或者若所述最大买入价大于所述最小卖出价,则所述DPU向所述主机CPU发送校验失败消息。
2.根据权利要求1所述的方法,其特征在于,所述DPU对所述校验请求消息执行如下步骤A至步骤C,包括:
所述DPU获取与所述校验请求消息适配的处理流表;
所述DPU在所述处理流表中查找与所述校验请求消息匹配的目标流表项;
所述DPU获取所述目标流表项的预设执行动作,基于所述预设执行动作对所述校验请求消息执行如下步骤A至步骤C。
3.根据权利要求2所述的方法,其特征在于,所述DPU在所述处理流表中查找与所述校验请求消息匹配的目标流表项,包括:
所述DPU根据所述校验请求消息的类型提取所述校验请求消息的消息关键字段;
所述DPU在所述处理流表中查找与所述消息关键字段匹配的目标流表项。
4.根据权利要求2所述的方法,其特征在于,所述目标流表项记录有与所述DPU的硬件资源池的至少一个硬件处理模块的映射关系,所述DPU获取所述目标流表项的预设执行动作,基于所述预设执行动作对所述校验请求消息执行如下步骤A至步骤C,包括:
所述DPU根据所述目标流表项记录的映射关系,从所述硬件资源池中查找与所述目标流表项关联的目标硬件处理模块;
所述DPU调用所述目标硬件处理模块对所述校验请求消息执行如下步骤A至步骤C。
5.根据权利要求4所述的方法,其特征在于,所述交易标的标识包括第一交易标的标识和第二交易标的标识,所述DPU根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据,包括:
所述DPU根据所述第一交易标的标识对应的标的类型,在所述目标硬件处理模块中确定所述第一交易标的标识对应的第一硬件处理模块;
所述DPU根据所述第二交易标的标识对应的标的类型,在所述目标硬件处理模块中确定所述第二交易标的标识对应的第二硬件处理模块;
所述DPU调用所述第一硬件处理模块,获取所述账户标识针对所述第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据;
所述DPU调用所述第二硬件处理模块,获取所述账户标识针对所述第一交易标的标识相关联的历史购买交易数据和历史卖出交易数据。
6.根据权利要求4所述的方法,其特征在于,所述DPU根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价,包括:
所述DPU将所述第一交易数据划分为第二交易数据和第三交易数据;
所述DPU根据所述第二交易数据的数据量,在所述目标硬件处理模块中确定所述第二交易数据对应的第三硬件处理模块;
所述DPU根据所述第三交易数据的数据量,在所述目标硬件处理模块中确定所述第三交易数据对应的第四硬件处理模块;
所述DPU调用所述第三硬件处理模块,根据所述第二交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定第一最大买入价和第一最小卖出价;
所述DPU调用所述第四硬件处理模块,根据所述第三交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定第二最大买入价和第二最小卖出价;
所述DPU根据所述第一最大买入价和所述第二最大买入价,确定最大买入价,根据所述第一最小卖出价和所述第二最小卖出价,确定最小卖出价。
7.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若在所述处理流表中未查找到与所述校验请求消息匹配的目标流表项,则所述DPU确定所述处理流表的预留子流表中是否存在可用表项;
若所述预留子流表中存在可用表项,则所述DPU在所述可用表项中新建与所述校验请求消息对应的目标流表项;
若所述预留子流表中不存在可用表项,则所述DPU释放所述预留子流表中业务优先级最低的第一流表项,并在所述第一流表项中新建与所述校验请求消息对应的目标流表项。
8.一种数据处理的装置,其特征在于,应用于第二报盘前置设备装配的DPU,包括:
通信单元,用于接收所述第二报盘前置设备的主机CPU发送的校验请求消息,所述校验请求消息包括账户标识和待校验交易信息,所述待校验交易信息包括交易标的标识和第一交易数据;
处理单元,用于对所述校验请求消息执行如下步骤A至步骤C:步骤A、根据所述账户标识获取与所述交易标的标识相关联的历史购买交易数据和历史卖出交易数据;步骤B、根据所述第一交易数据、所述历史购买交易数据和所述历史卖出交易数据,确定最大买入价和最小卖出价;步骤C、若所述最大买入价小于或者等于所述最小卖出价,则确定所述第一交易数据校验通过,并将所述第一交易数据发送至撮合服务器;或者所述最大买入价大于所述最小卖出价,则向所述主机CPU发送校验失败消息。
9.一种计算机设备,其特征在于,包括处理器、存储器和通信接口,其中,所述存储器存储有计算机程序,所述计算机程序被配置由所述处理器执行,所述计算机程序包括用于执行权利要求1至7中任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,所述计算机程序使得计算机执行以实现权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211075426.4A CN115150203B (zh) | 2022-09-02 | 2022-09-02 | 数据处理的方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211075426.4A CN115150203B (zh) | 2022-09-02 | 2022-09-02 | 数据处理的方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115150203A true CN115150203A (zh) | 2022-10-04 |
CN115150203B CN115150203B (zh) | 2022-11-15 |
Family
ID=83415864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211075426.4A Active CN115150203B (zh) | 2022-09-02 | 2022-09-02 | 数据处理的方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115150203B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110390596A (zh) * | 2019-07-30 | 2019-10-29 | 上海金融期货信息技术有限公司 | 一种金融期货交易系统 |
CN112465589A (zh) * | 2020-11-24 | 2021-03-09 | 深圳市富途网络科技有限公司 | 订单处理方法、装置、电子设备及存储介质 |
CN112511438A (zh) * | 2020-11-19 | 2021-03-16 | 锐捷网络股份有限公司 | 一种利用流表转发报文的方法、装置及计算机设备 |
CN113159939A (zh) * | 2021-01-28 | 2021-07-23 | 上海金融期货信息技术有限公司 | 基于分账户风控的国债期货交易系统 |
CN114422367A (zh) * | 2022-03-28 | 2022-04-29 | 阿里云计算有限公司 | 报文处理方法及装置 |
CN114553635A (zh) * | 2022-02-18 | 2022-05-27 | 珠海星云智联科技有限公司 | Dpu网络设备中的数据处理方法、数据交互方法及产品 |
CN114726788A (zh) * | 2022-05-06 | 2022-07-08 | 深圳星云智联科技有限公司 | 应用于dpu的报文传输方法及相关装置 |
CN114885045A (zh) * | 2022-07-07 | 2022-08-09 | 浙江锐文科技有限公司 | 一种在高速智能网卡/dpu内节约dma通道资源方法和装置 |
-
2022
- 2022-09-02 CN CN202211075426.4A patent/CN115150203B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110390596A (zh) * | 2019-07-30 | 2019-10-29 | 上海金融期货信息技术有限公司 | 一种金融期货交易系统 |
CN112511438A (zh) * | 2020-11-19 | 2021-03-16 | 锐捷网络股份有限公司 | 一种利用流表转发报文的方法、装置及计算机设备 |
CN112465589A (zh) * | 2020-11-24 | 2021-03-09 | 深圳市富途网络科技有限公司 | 订单处理方法、装置、电子设备及存储介质 |
CN113159939A (zh) * | 2021-01-28 | 2021-07-23 | 上海金融期货信息技术有限公司 | 基于分账户风控的国债期货交易系统 |
CN114553635A (zh) * | 2022-02-18 | 2022-05-27 | 珠海星云智联科技有限公司 | Dpu网络设备中的数据处理方法、数据交互方法及产品 |
CN114422367A (zh) * | 2022-03-28 | 2022-04-29 | 阿里云计算有限公司 | 报文处理方法及装置 |
CN114726788A (zh) * | 2022-05-06 | 2022-07-08 | 深圳星云智联科技有限公司 | 应用于dpu的报文传输方法及相关装置 |
CN114885045A (zh) * | 2022-07-07 | 2022-08-09 | 浙江锐文科技有限公司 | 一种在高速智能网卡/dpu内节约dma通道资源方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115150203B (zh) | 2022-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111367983B (zh) | 数据库访问方法、系统、设备和存储介质 | |
US20200195740A1 (en) | Subscribe and publish method and server | |
US11546294B2 (en) | Network containers | |
US9385912B1 (en) | Framework for stateless packet tunneling | |
US8352363B2 (en) | Mainframe-based far-distance bicentric transaction information processing method and system | |
US8539089B2 (en) | System and method for vertical perimeter protection | |
US20070130367A1 (en) | Inbound connection prioritization | |
US7333430B2 (en) | Systems and methods for passing network traffic data | |
US20220353339A1 (en) | Efficient flow management utilizing control packets | |
US20220210086A1 (en) | Managing network state for high flow availability within distributed network platform | |
CN114697387B (zh) | 数据包传输方法、装置及存储介质 | |
US10229459B1 (en) | Method and apparatus for routing in transaction management systems | |
CN115150203B (zh) | 数据处理的方法、装置、计算机设备和存储介质 | |
CN115102863B (zh) | Dpu硬件资源池动态配置的方法以及装置 | |
US20230344777A1 (en) | Customized processing for different classes of rdma traffic | |
US20050188070A1 (en) | Vertical perimeter framework for providing application services | |
US20240106760A1 (en) | Network device level optimizations for latency sensitive rdma traffic | |
CN112532610B (zh) | 一种基于tcp分段的入侵防御检测方法及装置 | |
US11620700B2 (en) | Method and system for providing transparency in loan request bidding | |
CN112039712B (zh) | 在云服务器上进行卸载的方法、控制装置、存储介质 | |
CN114513465A (zh) | 负载均衡方法、负载均衡装置、电子设备和存储介质 | |
CN114629744A (zh) | 基于macvlan主机网络的数据访问方法、系统及相关装置 | |
US7290055B2 (en) | Multi-threaded accept mechanism in a vertical perimeter communication environment | |
CN116260855B (zh) | 通信方法、装置、电子设备以及存储介质 | |
US11159434B2 (en) | Adaptive rate limiting of flow probes |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |