CN110750469A - 一种应用数据的处理方法及装置 - Google Patents
一种应用数据的处理方法及装置 Download PDFInfo
- Publication number
- CN110750469A CN110750469A CN201810813542.9A CN201810813542A CN110750469A CN 110750469 A CN110750469 A CN 110750469A CN 201810813542 A CN201810813542 A CN 201810813542A CN 110750469 A CN110750469 A CN 110750469A
- Authority
- CN
- China
- Prior art keywords
- application data
- application
- application process
- port
- logic port
- 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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/128—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用数据的处理方法及装置,接收网卡基于数据平面开发工具集DPDK发送的应用数据,该应用数据包括应用进程对应的应用程序接口API信息,基于配置流表确定API信息对应的逻辑端口,并将应用数据通过确定的逻辑端口发送给应用进程,从而使得应用进程能够直接获取到应用数据,缩短应用数据的处理时间,提高系统资源的利用率。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种应用数据的处理方法及装置。
背景技术
针对网络中的应用数据进行处理时,在网卡接收到应用数据时,需要先通过中断方式通知内核协议栈对应用数据进行处理,内核协议栈收到应用数据后,不管是否必要都会对应用数据进行合法性检测、判别、筛选和匹配等操作,在确定满足条件后,再将应用数据进行复制,并基于套接字(socket)向应用程序发送。
现有的这种处理方式中,由于需要绕到内核协议栈,经过内核协议栈的处理后在发送给应用程序,导致处理路径较长,浪费系统资源。
发明内容
本发明提供一种应用数据的处理方法及装置,用以提高系统资源的利用率。
第一方面,本发明提供一种应用数据的处理方法,包括:
接收第一网卡基于数据平面开发工具集DPDK发送的第一应用数据,所述第一应用数据包括应用进程对应的应用程序接口API信息;
基于配置流表确定所述API信息对应的逻辑端口,所述配置流表包括API信息与逻辑端口的对应关系;
将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程。
可选的,所述通过网卡接收第一应用数据之前,所述方法还包括:
接收所述应用进程发送的注册请求消息,所述注册请求消息中包括所述应用进程的API信息;
从逻辑端口信息表中为所述应用进程分配逻辑端口;
将分配的所述逻辑端口发送给所述应用进程,并将所述应用进程的API信息和分配的所述逻辑端口对应保存在所述配置流表中。
可选的,所述注册请求消息中还包括用于指示所请求的缓存区大小的指示信息;
所述方法还包括:
为所述应用进程分配所述逻辑端口对应的缓存区。
可选的,所述将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程,包括:
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,以便于所述应用进程基于所述逻辑端口从所述缓存区获取所述第一应用数据;或者,
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,轮循获取所述缓存区存储的包括第一应用数据在内的多个应用数据,并从所述逻辑端口发送给所述应用进程。
可选的,所述注册请求消息中还包括所请求的逻辑端口的优先级信息;
从逻辑端口信息表中为所述应用进程分配逻辑端口后,所述方法还包括:
基于所述优先级信息配置所述逻辑端口的优先级。
可选的,所述方法还包括:
在接收包括第一网卡在内的多个网卡发送的多个应用数据时,按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储到对应的缓存区中。
可选的,所述方法还包括:
接收所述应用程序通过所述逻辑端口发送的第二应用数据,并将所述第二应用数据通过DPDK发送给所述第一网卡。
第二方面,本发明提供一种应用数据的处理装置,包括:
接收单元,用于接收第一网卡基于数据平面开发工具集DPDK发送的第一应用数据,所述第一应用数据包括应用进程对应的应用程序接口API信息;
处理单元,用于基于配置流表确定所述API信息对应的逻辑端口,所述配置流表包括API信息与逻辑端口的对应关系;
发送单元,用于将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程。
可选的,所述接收单元还用于:接收所述应用进程发送的注册请求消息,所述注册请求消息中包括所述应用进程的API信息;
所述处理单元还用于:从逻辑端口信息表中为所述应用进程分配逻辑端口;
所述发送单元还用于:将分配的所述逻辑端口发送给所述应用进程,并将所述应用进程的API信息和分配的所述逻辑端口对应保存在所述配置流表中。
可选的,所述注册请求消息中还包括用于指示所请求的缓存区大小的指示信息;
所述处理单元还用于:为所述应用进程分配所述逻辑端口对应的缓存区。
可选的,所述发送单元具体用于按如下方式将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程:
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,以便于所述应用进程基于所述逻辑端口从所述缓存区获取所述第一应用数据;或者,
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,轮循获取所述缓存区存储的包括第一应用数据在内的多个应用数据,并从所述逻辑端口发送给所述应用进程。
可选的,所述注册请求消息中还包括所请求的逻辑端口的优先级信息;
所述处理单元还用于:基于所述优先级信息配置所述逻辑端口的优先级。
可选的,所述处理单元还用于:在接收包括第一网卡在内的多个网卡发送的多个应用数据时,按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储到对应的缓存区中。
可选的,所述接收单元还用于:接收所述应用程序通过所述逻辑端口发送的第二应用数据;
所述发送单元还用于:将所述第二应用数据通过DPDK发送给所述第一网卡。
第三方面,本发明还提供一种应用数据的处理装置,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行第一方面所述的方法。
第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行第一方面所述的方法。
本发明提供了一种应用数据的处理方法及装置,通过接收网卡基于DPDK发送的应用数据,该应用数据包括应用进程对应的应用程序接口API信息,基于保存有API信息与逻辑端口对应关系的配置流表确定API信息对应的逻辑端口,并将该应用数据通过确定的逻辑端口发送给应用进程,使得应用数据无需经过内核协议栈的处理,应用进程可直接获取到应用数据,缩短了应用数据的处理时间,从而提高系统资源的利用率。
附图说明
图1为本发明实施例提供的一种应用数据的处理方法流程图;
图2为本发明实施例提供的另一应用数据的处理方法流程图;
图3为本发明实施例提供的一种应用数据的处理装置的结构框图;
图4为本发明实施例提供的另一种应用数据的处理装置示意图。
具体实施方式
下面将结合附图对本发明实施例作进一步地详细描述。
通常,在对应用数据进行处理时,需要将应用数据发送给内核协议栈,并且内核协议栈会对应用数据进行合法性检测、判别、筛选以及匹配,直至满足条件,再将应用数据发送给应用程序的socket,这种处理方式需要经过逐层解析,才能获取到需要的数据,整个处理过程浪费大量的时间资源,并且浪费内核的处理资源。
有鉴于此,本申请实施例提供了一种应用数据的处理方法及装置,网卡通过数据平面开发工具集(Data Plane Development Kit,DPDK)传输应用数据。DPDK可以使得网卡绕过内核处理来发送应用数据。网卡发送的应用数据中包括应用进程对应的应用程序接口API信息,并确定与该API信息对应的逻辑端口,不同的逻辑端口对应不同的应用进程,从而可以通过逻辑端口将应用数据发送给应用进程,无需将应用数据发送给内核协议栈进行处理,直接将应用数据发送给应用进程,缩短应用数据的处理时间,并提高系统资源的利用率。
需要理解的是,在下文的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
为了描述方便,本申请实施例中,将网卡通过DPDK发送的应用数据称为第一应用数据,将应用进程发送的应用数据称为第二应用数据。
图1所示为本发明实施例提供的一种应用数据的处理方法流程图,图1所示方法的执行主体可以为配置在电子设备中一个处理装置,或者处理模块。为了描述方便,本申请实施例中,可定义执行主体为“增强以太模块”,下文所涉及的方法的执行主体均以此进行说明。
参阅图1所示,该方法包括:
S101:增强以太模块接收第一网卡基于DPDK发送的第一应用数据。
具体的,网卡基于DPDK技术发送应用数据给增强以太模块,该应用数据可包括应用进程对应的应用程序接口API信息,绕过了内核协议栈对数据的处理过程。
S102:基于配置流表确定API信息对应的逻辑端口。
本申请实施例中,可通过配置流表中预先保存的API信息与逻辑端口之间的对应关系,确定与应用数据中包括的API信息对应的逻辑端口。
S103:通过确定的逻辑端口向应用进程发送第一应用数据。
本发明实施例中,第一网卡基于DPDK发送第一应用数据至增强以太模块,该第一应用数据包括应用进程对应的应用程序接口API信息,增强以太模块中预先保存用于表征API信息与逻辑端口的对应关系的配置流表,根据配置流表能够确定该API信息对应的逻辑端口,不同的应用进程对应不同的逻辑端口,从而增强以太模块可以将第一应用数据通过确定的逻辑端口发送给应用进程,使得应用数据无需经过内核协议栈的处理,应用进程可直接获取到应用数据,提高系统资源的利用率。
本申请实施例中,增强以太模块能够统一对外部物理网口(网卡)进行管理,并且配置有逻辑端口,逻辑端口与应用进程对应的API是一一对应的。对于应用进程来说,其不需要知道物理网口,仅需知道逻辑端口即可。增强以太模块支持各种套接字格式的解析功能。
进一步的,在接收应用数据之前,可以为应用进程分配逻辑端口。具体的,如图2所示的方法,该方法包括:
S201:接收应用进程发送的注册请求消息。
具体的,增强以太模块中可设置有逻辑端口,逻辑端口的数量可以在电子设备启动后即配置好。应用进程按照先注册后使用的方式,从而应用进程通过API向增强以太模块注册逻辑端口,即应用进程向增强以太模块发送注册请求消息,注册请求消息中包括应用进程对应的API信息。
S202:在逻辑端口信息表中为应用进程分配逻辑端口。
本申请实施例中,逻辑端口信息可预先保存在逻辑端口信息表中,增强以太模块在接收到注册请求消息之后,可为应用进程分配逻辑端口,以传输应用数据。
S203:将分配的逻辑端口发送给应用进程,并将应用进程的API信息和分配的逻辑端口对应保存在配置流表中。
具体的,增强以太模块可将分配的逻辑端口发送给应用进程,并将注册请求消息中包括的应用进程的API信息以及为应用进程分配的逻辑端口保存在配置流表中。
可以理解的是,应用进程的API信息与逻辑端口之间具有预设对应关系。其中,API信息中可包括:源IP地址、源端口、目的IP地址、目的端口、和传输层协议。即,API信息与逻辑端口之间的对应关系为一对一的关系。
由于,增强以太模块调度应用数据可能会有延迟,因此增强以太模块可以先将网卡发来的应用数据存储在应用进程对应的缓存区中。由此,应用进程可以指示以太增强模块为自身分配的缓存区的大小。应用进程可以在发送给增强以太模块的注册请求消息中携带用于指示该注册请求的缓存区大小的指示信息。
进一步的,增强以太模块为该应用进程分配逻辑端口对应的缓存区。
可选地,增强以太模块接收到的应用数据无法及时调度时,可以先将应用数据保存在增强以太模块的应用进程对应的缓存区中,一种方式,应用进程可直接从缓存区获取应用数据。
具体的,增强以太模块接收到第一应用数据后,确定第一应用数据包括的API信息对应的逻辑端口,从而通过逻辑端口确定该逻辑端口对应的缓存区,并将第一应用数据存储到确定的缓存区中。
另一种方式,增强以太模块可以通过轮循的方式调度缓存区存储的应用数据,并从逻辑端口依次将获取到的应用数据发送给对应的应用进程。
具体的,增强以太模块接收到第一应用数据后,确定第一应用数据包括的API信息对应的逻辑端口,然后基于逻辑端口,将第一应用数据存储到缓存区中。之后轮循获取缓存区存储的包括第一应用数据在内的多个应用数据,并从逻辑端口发送给应用进程。
进一步的,应用进程还可以向增强以太模块定制逻辑端口的优先级。具体的,注册请求消息中还可包括:应用进程所请求的逻辑端口的优先级信息。
具体的,应用进程在向增强以太模块发送注册请求消息时,该注册请求消息中可携带有逻辑端口的优先级信息,故,在为应用进程分配逻辑端口后,可基于该优先级信息配置逻辑端口的优先级。
本申请实施例中,可以理解为,从逻辑端口信息表中为应用进程分配逻辑端口后,该方法还包括:基于优先级信息配置逻辑端口的优先级。逻辑端口的优先级指示逻辑端口对应的缓存区的调度优先级。
需要说明的是,本申请实施例的电子设备包括多个网卡,并且运行有多个应用进程。由于发送的注册请求消息中可包括逻辑端口的优先级信息,以及所请求的缓存区大小的指示信息,故,增强以太模块在接收到多个网卡发送的多个应用数据时,可按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储在分配的缓存区中。
更进一步的,增强以太模块还可接收应用进程通过逻辑端口发送的应用数据,并将应用数据通过DPDK发送给网卡。
当只有一个网卡时,应用进程会默认通过唯一的网卡发送应用数据,当有多个网卡时,内部会维护一个表项,该表项是根据接收的地址解析协议(Address ResolutionProtocol,ARP)数据构建的。当应用进程发送应用数据时,增强以太模块会由应用数据的目的IP,找寻实际发送应用数据的网卡。若没有找到对应的网卡,则可通过配置的端口发送应用数据,如果没有配置的端口,则将该应用数据丢弃。
具体的,增强以太模块可通过确定的逻辑端口接收应用进程发送的应用数据,该应用数据包括应用进程对应的应用程序的API信息,即增强以太模块可通过逻辑端口接收应用进程发送的应用程序的API信息,该API信息与逻辑端口之间具有预设对应关系。并且增强以太模块可将应用数据通过DPDK发送给网卡。多个应用进程对应多个应用数据,应用进程发送的应用程序的API信息与网卡之间也可预先配置对应关系。例如,应用进程1发送的应用程序的API信息(应用数据1)与网卡1之间有预设的对应关系,增强以太模块可将应用数据1发送给网卡1。
可以理解是,上述所举例子的对应关系只是一种示例性说明,具体的对应关系并不限于此。
基于与上述一种应用数据的处理方法实施例相同的构思,本发明实施例还提供了一种应用数据的处理装置。图3所示为本发明实施例提供的一种应用数据的处理装置的结构框图,包括:
接收单元101,用于接收第一网卡基于数据平面开发工具集DPDK发送的第一应用数据。
其中,该第一应用数据包括应用进程对应的应用程序接口API信息。
处理单元102,用于基于配置流表确定API信息对应的逻辑端口,该配置流表包括API信息与逻辑端口的对应关系。
发送单元103,用于将第一应用数据通过确定的逻辑端口发送给应用进程。
可选的,接收单元101还用于:接收应用进程发送的注册请求消息,该注册请求消息中包括应用进程的API信息。
处理单元102还用于:从逻辑端口信息表中为应用进程分配逻辑端口。
发送单元103还用于:将分配的逻辑端口发送给所述应用进程,并将应用进程的API信息和分配的逻辑端口对应保存在配置流表中。
进一步的,注册请求消息中还包括用于指示所请求的缓存区大小的指示信息。
处理单元102还用于:为应用进程分配逻辑端口对应的缓存区。
具体的,发送单元103具体用于按如下方式将第一应用数据通过确定的逻辑端口发送给应用进程:
基于逻辑端口,将第一应用数据存储到缓存区中,以便于应用进程基于所述逻辑端口从缓存区获取第一应用数据;或者,基于逻辑端口,将第一应用数据存储到缓存区中,轮循获取缓存区存储的包括第一应用数据在内的多个应用数据,并从逻辑端口发送给应用进程。
优选的,注册请求消息中还包括所请求的逻辑端口的优先级信息。
处理单元102还用于:基于优先级信息配置逻辑端口的优先级。
进一步的,处理单元102还用于:在接收包括第一网卡在内的多个网卡发送的多个应用数据时,按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储到对应的缓存区中。
更进一步的,接收单元101还用于:接收应用程序通过逻辑端口发送的第二应用数据。
发送单元103还用于:将第二应用数据通过DPDK发送给第一网卡。
需要说明的是,本发明实施例中上述涉及的应用数据的处理装置中各个单元的功能实现可以进一步参照相关方法实施例的描述,在此不再赘述。
本申请实施例还提供了另外一种应用数据的处理装置,如图4所示,该装置包括:
存储器202,用于存储程序指令。
处理器200,用于调用所述存储器中存储的程序指令,按照获得的程序执行本申请实施例所述的任一方法流程。
收发机201,用于在处理器200的控制下接收和发送语音数据处理的指令。
其中,在图3中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器200代表的一个或多个处理器和存储器202代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。
收发机201可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。
处理器200负责管理总线架构和通常的处理,存储器302可以存储处理器200在执行操作时所使用的数据。
处理器200可以是中央处理器(CPU)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行上述本申请实施例提供的任一方法的程序。
所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD))等。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种应用数据的处理方法,其特征在于,包括:
接收第一网卡基于数据平面开发工具集DPDK发送的第一应用数据,所述第一应用数据包括应用进程对应的应用程序接口API信息;
基于配置流表确定所述API信息对应的逻辑端口,所述配置流表包括API信息与逻辑端口的对应关系;
将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程。
2.如权利要求1所述的方法,其特征在于,所述通过网卡接收第一应用数据之前,所述方法还包括:
接收所述应用进程发送的注册请求消息,所述注册请求消息中包括所述应用进程的API信息;
从逻辑端口信息表中为所述应用进程分配逻辑端口;
将分配的所述逻辑端口发送给所述应用进程,并将所述应用进程的API信息和分配的所述逻辑端口对应保存在所述配置流表中。
3.如权利要求2所述的方法,其特征在于,所述注册请求消息中还包括用于指示所请求的缓存区大小的指示信息;
所述方法还包括:
为所述应用进程分配所述逻辑端口对应的缓存区。
4.如权利要求3所述的方法,其特征在于,所述将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程,包括:
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,以便于所述应用进程基于所述逻辑端口从所述缓存区获取所述第一应用数据;或者,
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,轮循获取所述缓存区存储的包括第一应用数据在内的多个应用数据,并从所述逻辑端口发送给所述应用进程。
5.如权利要求4所述的方法,其特征在于,所述注册请求消息中还包括所请求的逻辑端口的优先级信息;
从逻辑端口信息表中为所述应用进程分配逻辑端口后,所述方法还包括:
基于所述优先级信息配置所述逻辑端口的优先级。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
在接收包括第一网卡在内的多个网卡发送的多个应用数据时,按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储到对应的缓存区中。
7.如权利要求2-6任一项所述的方法,其特征在于,所述方法还包括:
接收所述应用进程通过所述逻辑端口发送的第二应用数据,并将所述第二应用数据通过DPDK发送给所述第一网卡。
8.一种应用数据的处理装置,其特征在于,包括:
接收单元,用于接收第一网卡基于数据平面开发工具集DPDK发送的第一应用数据,所述第一应用数据包括应用进程对应的应用程序接口API信息;
处理单元,用于基于配置流表确定所述API信息对应的逻辑端口,所述配置流表包括API信息与逻辑端口的对应关系;
发送单元,用于将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程。
9.如权利要求8所述的装置,其特征在于,所述接收单元还用于:接收所述应用进程发送的注册请求消息,所述注册请求消息中包括所述应用进程的API信息;
所述处理单元还用于:从逻辑端口信息表中为所述应用进程分配逻辑端口;
所述发送单元还用于:将分配的所述逻辑端口发送给所述应用进程,并将所述应用进程的API信息和分配的所述逻辑端口对应保存在所述配置流表中。
10.如权利要求9所述的装置,其特征在于,所述注册请求消息中还包括用于指示所请求的缓存区大小的指示信息;
所述处理单元还用于:为所述应用进程分配所述逻辑端口对应的缓存区。
11.如权利要求10所述的装置,其特征在于,所述发送单元具体用于按如下方式将所述第一应用数据通过确定的所述逻辑端口发送给所述应用进程:
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,以便于所述应用进程基于所述逻辑端口从所述缓存区获取所述第一应用数据;或者,
基于所述逻辑端口,将所述第一应用数据存储到所述缓存区中,轮循获取所述缓存区存储的包括第一应用数据在内的多个应用数据,并从所述逻辑端口发送给所述应用进程。
12.如权利要求11所述的装置,其特征在于,所述注册请求消息中还包括所请求的逻辑端口的优先级信息;
所述处理单元还用于:基于所述优先级信息配置所述逻辑端口的优先级。
13.如权利要求12所述的装置,其特征在于,所述处理单元还用于:在接收包括第一网卡在内的多个网卡发送的多个应用数据时,按照确定的每个应用数据对应的逻辑端口的优先级,将接收到的多个应用数据分别存储到对应的缓存区中。
14.如权利要求9-13任一项所述的装置,其特征在于,所述接收单元还用于:接收所述应用程序通过所述逻辑端口发送的第二应用数据;
所述发送单元还用于:将所述第二应用数据通过DPDK发送给所述第一网卡。
15.一种应用数据的处理装置,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1~7任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1~7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810813542.9A CN110750469A (zh) | 2018-07-23 | 2018-07-23 | 一种应用数据的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810813542.9A CN110750469A (zh) | 2018-07-23 | 2018-07-23 | 一种应用数据的处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110750469A true CN110750469A (zh) | 2020-02-04 |
Family
ID=69275138
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810813542.9A Pending CN110750469A (zh) | 2018-07-23 | 2018-07-23 | 一种应用数据的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750469A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103797465A (zh) * | 2011-09-14 | 2014-05-14 | 阿尔卡特朗讯 | 用于提供隔离的虚拟空间的方法与设备 |
CN106549869A (zh) * | 2015-09-21 | 2017-03-29 | 北京信威通信技术股份有限公司 | 数据包处理方法及装置 |
US20170364425A1 (en) * | 2016-06-20 | 2017-12-21 | Stratus Technologies Bermuda Ltd. | Method and apparatus for performing checkpointing on a network device |
CN107872431A (zh) * | 2016-09-27 | 2018-04-03 | 中兴通讯股份有限公司 | 一种数据收发方法、装置及基站 |
CN107911237A (zh) * | 2017-11-10 | 2018-04-13 | 南京邮电大学 | 一种基于dpdk的用户空间内数据包快速检测方法 |
CN108289063A (zh) * | 2017-09-11 | 2018-07-17 | 上海金融期货信息技术有限公司 | 一种低延迟通讯系统 |
-
2018
- 2018-07-23 CN CN201810813542.9A patent/CN110750469A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103797465A (zh) * | 2011-09-14 | 2014-05-14 | 阿尔卡特朗讯 | 用于提供隔离的虚拟空间的方法与设备 |
CN106549869A (zh) * | 2015-09-21 | 2017-03-29 | 北京信威通信技术股份有限公司 | 数据包处理方法及装置 |
US20170364425A1 (en) * | 2016-06-20 | 2017-12-21 | Stratus Technologies Bermuda Ltd. | Method and apparatus for performing checkpointing on a network device |
CN107872431A (zh) * | 2016-09-27 | 2018-04-03 | 中兴通讯股份有限公司 | 一种数据收发方法、装置及基站 |
CN108289063A (zh) * | 2017-09-11 | 2018-07-17 | 上海金融期货信息技术有限公司 | 一种低延迟通讯系统 |
CN107911237A (zh) * | 2017-11-10 | 2018-04-13 | 南京邮电大学 | 一种基于dpdk的用户空间内数据包快速检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11895577B2 (en) | Network slice selection method and apparatus | |
US10572290B2 (en) | Method and apparatus for allocating a physical resource to a virtual machine | |
CN106371894B (zh) | 一种配置方法、装置和数据处理服务器 | |
EP3716577A1 (en) | Cloud service migration method and apparatus, and electronic device | |
US10341264B2 (en) | Technologies for scalable packet reception and transmission | |
US11074205B2 (en) | Managing efficient selection of a particular processor thread for handling an interrupt | |
WO2017181875A1 (zh) | 虚拟化网络的部署方法和部署系统 | |
US11201836B2 (en) | Method and device for managing stateful application on server | |
US11734172B2 (en) | Data transmission method and apparatus using resources in a resource pool of a same NUMA node | |
CN106873970B (zh) | 一种操作系统的安装方法和装置 | |
EP2704009A2 (en) | Information processing apparatus, information processing method, and program | |
CN116320469B (zh) | 一种虚拟化视频编解码系统及方法、电子设备和存储介质 | |
US11416399B2 (en) | Dedicated memory buffers for supporting deterministic inter-FPGA communication | |
CN108028806B (zh) | 网络功能虚拟化nfv网络中分配虚拟资源的方法和装置 | |
CN113849260A (zh) | 一种实例的处理核分配方法及装置 | |
US20130227243A1 (en) | Inter-partition communication in multi-core processor | |
CN107566543B (zh) | 一种节点标识设置方法和装置 | |
CN106933646B (zh) | 一种创建虚拟机的方法及装置 | |
CN110750469A (zh) | 一种应用数据的处理方法及装置 | |
US11979769B2 (en) | Virtualization of transceivers for multi-tenant programmable network-based devices | |
CN111625358B (zh) | 一种资源分配方法、装置、电子设备及存储介质 | |
US11784884B2 (en) | Code activation management method for network slicing solutions, and corresponding entity, server and computer program | |
CN109543460B (zh) | 基于微内核对数据进行加解密的方法、装置及电子设备 | |
WO2022111173A1 (zh) | 网络切片接入方法、设备、系统及存储介质 | |
US8861410B2 (en) | Method and apparatus for scalable network transaction identifier for interconnects |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200204 |
|
RJ01 | Rejection of invention patent application after publication |