CN109656705A - 一种数据处理的方法和装置 - Google Patents

一种数据处理的方法和装置 Download PDF

Info

Publication number
CN109656705A
CN109656705A CN201811572778.4A CN201811572778A CN109656705A CN 109656705 A CN109656705 A CN 109656705A CN 201811572778 A CN201811572778 A CN 201811572778A CN 109656705 A CN109656705 A CN 109656705A
Authority
CN
China
Prior art keywords
queue
information
message
core
connection
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
Application number
CN201811572778.4A
Other languages
English (en)
Inventor
鲍晓玲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN201811572778.4A priority Critical patent/CN109656705A/zh
Publication of CN109656705A publication Critical patent/CN109656705A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请提供了一种数据处理的方法和装置,所述方法包括:获取第一信息;判断所述第一信息是否满足预设处理条件;若是,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接由多核处理器的第一核建立的连接,所述第一队列为先进先出队列。本申请在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。

Description

一种数据处理的方法和装置
技术领域
本申请涉及计算机网络领域,具体涉及数据处理的方法和装置。
背景技术
随着互联网应用类型的不断增加及应用形式的不断变化,层出不穷的安全威胁时刻发生在我们身边。在这种情况下,网络安全设备被大量应用于实际环境中,为了适配当前需求的变化,网络安全产品架构也发生了很大变化,从传统的单一中央多核处理器(简称CPU)处理,进化为多个CPU并行处理,极大地提高了网络安全设备转发数据的性能。其中,CPU0维护完整的连接表,用于实现策略匹配、新建连接等;数据核匹配快速连接表,用于实现报文的快速转发,快速连接表是完整连接表的一部分,由CPU0统一维护管理。
数据报文由网卡收到后,先送到数据核,查找数据核快速连接表,如果匹配,则由数据核直接快速转发;如果不匹配则继续上送至CPU0,CPU0进行整机连接表匹配。CPU0整机连接表中存在对应连接表则匹配转发,不存在则进入新建连接流程处理。
CPU0处理首包新建连接、策略匹配时间比较长,导致连接写入数据核快速连接表之前,有部分报文继续上送CPU0处理,而连接写入数据核连接表后,又存在CPU0和数据核并行处理数据的情况。由于数据核转发路径短,后收到的报文通过数据核转发可能会比稍早通过CPU0转发的报文更快的被转发出去,造成少量报文乱序。
随着高性能网络安全设备越来越普遍,应用越来越广,这种问题越来越突出,而且难以解决。这会导致对于报文乱序敏感的业务通信严重受到影响。
发明内容
本申请提供一种数据处理的方法,一种数据处理的装置;以解决数据传送过程中乱序的问题。
为了解决上述技术问题,本申请实施例提供了如下的技术方案:
本申请提供了一种数据处理的方法,包括:
获取第一信息;
判断所述第一信息是否满足预设处理条件;
若是,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接由多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
优选的,所述获取第一信息,包括:
从与所述多核处理器的第二核共享的第一存储地址中读取所述第一信息。
优选的,所述利用第一连接根据队列顺序发送第一队列中保存的报文,包括:
获取第一队列中的第一条报文;
从所述报文中提起第一特征信息;
根据队列顺序发送所述第一队列中与所述第一特征信息相关联的报文。
优选的,在所述利用第一连接根据队列顺序发送第一队列中保存的报文后,还包括:
向所述多核处理器的第一核发送的第二信息,所述第二信息满足预设处理结束条件。
本申请提供了一种数据处理的装置,包括:
第一获取单元,用于获取第一信息;
判断单元,用于判断所述第一信息是否满足预设处理条件;
第一发送单元,用于若所述判断单元的输出结果为“是”,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接为多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
本申请提供了一种数据处理的方法,包括:
获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列;
根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
优选的,所述根据所述报文建立第一连接,包括:
从所述报文中提取第一特征信息;
根据所述第一特征信息建立第一连接。
优选的,所述向多核处理器的第二核发送第一信息,包括:
将所述第一信息保存在与所述多核处理器的第二核共享的第一存储地址中。
优选的,所述方法还包括:
获取所述多核处理器的第二核发送的第二信息;
判断所述第二信息是否满足预设处理结束条件;
若是,则将与所述第一连接相关联的信息保存在连接信息数据集中。
本申请提供了一种数据处理的装置,包括:
第二获取单元,用于获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列;
第二发送单元,用于根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
基于上述实施例的公开可以获知,本申请实施例具备如下的有益效果:
本申请提供了一种数据处理的方法和装置,所述方法包括:获取第一信息;判断所述第一信息是否满足预设处理条件;若是,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接由多核处理器的第一核建立的连接,所述第一队列为先进先出队列。本申请在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。
附图说明
图1为本申请实施例提供的一种数据处理的方法的流程图;
图2为本申请实施例提供的一种数据处理的装置的单元框图;
图3为本申请实施例提供的又一种数据处理的方法的流程图;
图4为本申请实施例提供的又一种数据处理的装置的单元框图。
具体实施方式
下面,结合附图对本申请的具体实施例进行详细的描述,但不作为本申请的限定。
应理解的是,可以对此处公开的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本申请的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且与上面给出的对本申请的大致描述以及下面给出的对实施例的详细描述一起用于解释本申请的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本申请的这些和其它特性将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本申请进行了描述,但本领域技术人员能够确定地实现本申请的很多其它等效形式,它们具有如权利要求所述的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本申请的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本申请的具体实施例;然而,应当理解,所公开的实施例仅仅是本申请的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本申请模糊不清。因此,本文所公开的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本申请。
本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本申请的相同或不同实施例中的一个或多个。
数据报文由网卡收到后,先送到数据核,查找数据核快速连接表,如果匹配,则由数据核直接快速转发;如果不匹配则继续上送至CPU0,CPU0进行整机连接表匹配。CPU0整机连接表中存在对应连接表则匹配转发,不存在则进入新建连接流程处理。
CPU0处理首包新建连接、策略匹配时间比较长,导致连接写入数据核快速连接表之前,有部分报文继续上送CPU0处理,而连接写入数据核连接表后,又存在CPU0和数据核并行处理数据的情况。由于数据核转发路径短,后收到的报文通过数据核转发可能会比稍早通过CPU0转发的报文更快的被转发出去,造成少量报文乱序。
乱序的具体情况描述如下:
1、数据核从网卡收到报文1后,查找数据核快速连接表,如果不能从所述快速连接表中获得链接信息,则将报文1保存在预设由CPU0处理的报文慢速队列。
2、CPU0轮询所述报文慢速队列,处理报文1,查找策略、新建连接,然后将所述新建连接的信息下发到数据核的快速连接表中。
3、当报文1还未建起连接或者下发快速连接表的情况下,数据核收到报文2和报文3,由于查找数据核快速连接表不匹配,则将所述报文2和报文3保存在所述报文慢速队列中。
4、报文1新建连接,并且下发数据核快速连接表后,此时数据核收到报文4和报文5,匹配快速连接表,可以快速转发。
由于数据核处理路径短,可能存在数据核处理报文4和报文5比CPU0处理报文2和报文3快,由此,导致到达目的端的报文顺序为报文1、报文4、报文5、报文2和报文3,造成报文乱序。
本申请提供的具体实施例就是要解决数据传送过程中乱序的问题。
本申请提供一种数据处理的方法;本申请还提供一种数据处理的装置;本申请还提供又一种数据处理的方法;本申请还提供又一种数据处理的装置。在下面的实施例中逐一进行详细说明。
对本申请提供的第一实施例,即一种数据处理的方法的实施例。
下面结合图1对本实施例进行详细说明,其中,图1为本申请实施例提供的数据处理的方法的流程图。
本实施例主要以多核架构中预设处理所述报文快速队列的CPU核作为主要实施例对象。例如,CPU1。
下述所述的多核处理器的第一核,也就是预设处理所述报文慢速队列的CPU核,例如,CPU0。
报文,是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。
报文也是网络传输的单位,传输过程中按照预设结构封装成分组、包、帧进行传输。
步骤S101,获取第一信息。
所述第一信息,是由多核架构中多核处理器中处理所述报文慢速队列的CPU核发送。例如,所述CPU0向所述CPU1发送第一信息,所述第一信息可以是消息或数据包或CPU0与CPU1共享的变量;对于共享的变量,CPU1按照预设时间间隔查询该变量。
优选的,所述获取第一信息,包括:从与所述多核处理器的第二核共享的第一存储地址中读取所述第一信息。
所述第一存储地址,可以是一个寄存器地址,也可以是一个变量的地址。例如,CPU1定时读取所述第一存储地址的信息,以获取第一信息。
步骤S102,判断所述第一信息是否满足预设处理条件。
所述预设处理条件,也就是由处理所述报文快速队列的核处理所述报文慢速队列的条件。
例如,在现有技术中,通常由CPU0处理所述报文慢速队列,CPU1处理所述报文快速队列。当CPU1接收到的报文无法从快速连接表中获得相应的连接信息,则将该报文放在慢速队列,由CPU0处理该报文,从而可能引发乱序。
本实施例,为了防止多核处理给报文传输带来的混乱,当出现上述情况时,仅由一个多核处理器的核发送相应的报文,当处理结束后,在转换到多核处理,以避免报文传输混乱。
所述第一信息作为一个标志信息,所述预设处理条件也就是一个判断标志信息的条件。例如,预设处理条件:当保存在所述第一存储地址中的信息为1时,表示由CPU1处理所述报文慢速队列;预设非处理条件:当保存在所述第一存储地址中的信息为0,表示由CPU0处理所述报文慢速队列。
步骤S103,若是,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接由多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
所述多核处理器,指在一枚处理器中集成两个或多个完整的计算引擎(内核),此时处理器能支持系统总线上的多个处理器,由总线控制器提供所有总线控制信号和命令信号。例如,所述多核处理器的第一核为CPU0;所述第一连接由多核处理器的第一核建立的连接,CPU0建立连接后,就停止处理所述报文慢速队列。
报文发送端与目标端初次建立连接需要耗费很长时间,为了节省后续连接的时间,通常的处理方法是将初次建立的连接保存在内存中,这样可以减少每次连接所耗费的时间。
队列,是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。
所述第一队列采用先进先出的方式,可以保证报文按照先到先发的顺序传送,避免乱序的发生。
所述第一队列,也就是前面所述的所述报文慢速队列。
所述队列顺序,也就是先进先出的顺序。
所述利用第一连接根据队列顺序发送第一队列中保存的报文,包括:
步骤S103-1,获取第一队列中的第一条报文。
步骤S103-2,从所述报文中提起第一特征信息。
同一数据源发送的一条数据通常具有相同的特征信息。所述特征信息,也就是网络信息五元组,包括:源地址信息、目的地址信息、协议信息、源端口信息和目的端口信息。网络设备通过所述特征信息区分报文。
所述第一特征信息也包括网络信息五元组。
所述从所述报文中提起第一特征信息,也就是从第一队列中的第一条报文中提起网络信息五元组。
步骤S103-3,根据队列顺序发送所述第一队列中与所述第一特征信息相关联的报文。
在所述利用第一连接根据队列顺序发送第一队列中保存的报文后,还包括:
向所述多核处理器的第一核发送的第二信息,所述第二信息满足预设处理结束条件。
也就是向所述多核处理器的第一核(比如,CPU0)发送所述报文慢速队列中的报文处理结束。以便所述第一核将建立的第一连接保存到连接信息数据集(比如,快速连接表)中。
优选的,所述第二信息,是保存在与所述多核处理器的第一核共享的存储地址中的信息。
同时,将保存在所述第一存储地址中的信息变更为符合预设非处理条件。
例如,预设处理条件:当保存在所述第一存储地址中的信息为1时,表示由CPU1处理所述报文慢速队列;预设非处理条件:当保存在所述第一存储地址中的信息为0时,表示由CPU0处理所述报文慢速队列。
优选的,所述第二信息是保存在所述第一存储地址中的信息。也就是所述第一信息和所述第二信息均保存在所述第一存储地址中。例如,当所述第一存储地址保存的值为1时,表示由所述多核处理器中预设处理所述报文快速队列的CPU核处理所述报文慢速队列中的报文;当所述第一存储地址保存的值为0时,表示由所述多核处理器中预设处理所述报文慢速队列的CPU核处理所述报文慢速队列中的报文。
在上述处理过程中,所述预设处理所述报文快速队列的CPU核(比如,CPU1)并行处理所述报文快速队列。
本实施例在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。
与本申请提供的第一实施例相对应,本申请还提供了第二实施例,即一种数据处理的装置。由于第二实施例基本相似于第一实施例,所以描述得比较简单,相关的部分请参见第一实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
图2示出了本申请提供的一种数据处理的装置的实施例。图2为本申请实施例提供的一种数据处理的装置的单元框图。
本实施例主要以多核架构中预设处理所述报文快速队列的CPU核作为主要实施例对象。例如,CPU1。
下述所述的多核处理器的第一核,也就是预设处理所述报文慢速队列的CPU核,例如,CPU0。
请参见2所示,本申请提供一种数据处理的装置,包括:第一获取单元201,判断单元202,第一发送单元203。
第一获取单元201,用于获取第一信息;
判断单元202,用于判断所述第一信息是否满足预设处理条件;
第一发送单元203,用于若所述判断单元的输出结果为“是”,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接为多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
在所述第一获取单元201中,包括:
第一获取子单元,用于从与所述多核处理器的第二核共享第一存储地址中读取所述第一信息。
在所述第一发送单元203中,包括:
获取第一条报文子单元,用于获取第一队列中的第一条报文。
提起特征信息子单元,用于从所述报文中提起第一特征信息。
发送子单元,用于根据队列顺序发送所述第一队列中与所述第一特征信息相关联的报文。
在所述第一发送单元203后,还包括:
发送第二信息单元,用于向所述多核处理器的第一核发送的第二信息,所述第二信息满足预设处理结束条件。
本实施例在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。
与本申请提供的第一实施例相对应,本申请还提供了第三实施例,即一种一种数据处理的方法。由于第三实施例基本相似于第一实施例,所以描述得比较简单,相关的部分请参见第一实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
图3示出了本申请提供的一种数据处理的方法的实施例。图3为本申请实施例提供的又一种数据处理的方法的流程图。
本实施例主要以多核架构中预设处理所述报文慢速队列的CPU核作为主要实施例对象。例如,CPU0。
下述所述的多核处理器的第二核,也就是预设处理所述报文快速队列的CPU核,例如,CPU1。
请参见3所示,本实施例提供一种数据处理的方法。
步骤S301,获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列。
步骤S302,根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
所述第一信息可以是消息或数据包或多核架构处理器多核共享的变量。例如,对于共享的变量,CPU1按照预设时间间隔查询该变量。
优选的,所述向多核处理器的第一核发送第一信息,包括:
将所述第一信息保存在与所述多核处理器的第二核共享的第一存储地址中。
所述根据所述报文建立第一连接,包括:
步骤S302-1,从所述报文中提取第一特征信息。
同一数据源发送的一条数据通常具有相同的特征信息。所述特征信息,也就是网络信息五元组,包括:源地址信息、目的地址信息、协议信息、源端口信息和目的端口信息。网络设备通过所述特征信息区分报文。
所述第一特征信息也包括网络信息五元组。
所述从所述报文中提起第一特征信息,也就是从第一队列中的第一条报文中提起网络信息五元组。
步骤S302-2,根据所述第一特征信息建立第一连接。
报文发送端与目标端初次建立连接需要耗费很长时间,为了节省后续连接的时间,通常的处理方法是将初次建立的连接保存在内存中,这样可以减少每次连接所耗费的时间。
所述建立第一连接,就是在内存中保存与目标端相关联的信息,其中,包括路由信息。以便向目标端再次发送报文时,通过已经建立起来的连接信息,可以直接到达目标端。
进一步的,所述根据所述第一特征信息建立第一连接,包括以下步骤:
步骤S302-2-1,向与所述第一特征信息相关联的目标端发送建立连接的请求信息。
所述目标端,也就是最终接收报文的目的地。
所述第一特征信息相关联的目标端,也就是第一特征信息的五元组中目的地址信息和目的端口信息记载的目的地。
所述请求信息,是通讯信息传送中发送端向目标端发送的一种信息。通常,请求信息中包含请求的特定信息。例如,所述建立连接的请求信息中包括特定信息为1;目标端接收到该请求信息后,便可知道发送端的请求信息为建立连接;如果目标端同意建立连接,则向发送端发送返回信息,该返回信息中包括特定信息为2,表示同意建立连接。
步骤S302-2-2,获取与所述请求信息相关联的返回信息。
步骤S302-2-3,判断所述返回信息是否满足预设连接条件。
步骤S302-2-4,若是,则与所述目标端建立第一连接。
在建立第一连接后,所述多核架构中预设处理所述报文慢速队列的CPU核将处于等待状态。
当所述多核架构中预设处理所述报文快速队列的CPU核(比如,CPU1)处理完所述报文慢速队列中的报文后,向所述多核架构中预设处理所述报文慢速队列的CPU核(比如,CPU0)发送一处理结束的信息。
本实施例所述方法还包括:
步骤S303,获取所述多核处理器的第二核发送的第二信息。
优选的,所述第二信息,是保存在与所述多核处理器的第一核共享的存储地址中的信息。
同时,将保存在所述第一存储地址中的信息变更为符合预设非处理条件。
例如,预设处理条件:当保存在所述第一存储地址中的信息为1时,表示由CPU1处理所述报文慢速队列;预设非处理条件:当保存在所述第一存储地址中的信息为0时,表示由CPU0处理所述报文慢速队列。
优选的,所述第二信息是保存在所述第一存储地址中的信息。也就是所述第一信息和所述第二信息均保存在所述第一存储地址中。例如,当所述第一存储地址保存的值为1时,表示由所述多核处理器中预设处理所述报文快速队列的CPU核处理所述报文慢速队列中的报文;当所述第一存储地址保存的值为0时,表示由所述多核处理器中预设处理所述报文慢速队列的CPU核处理所述报文慢速队列中的报文。
所述多核处理器的第二核,也就是所述多核架构中预设处理所述报文快速队列的CPU核,例如,CPU1。
步骤S304,判断所述第二信息是否满足预设处理结束条件。
步骤S305,若是,则将与所述第一连接相关联的信息保存在连接信息数据集中。
所述连接信息数据集,保存着所有已建立的连接信息。例如,快速连接表。
所述数据集,可以是数据库文件、注册表文件、配置文件或文本文件。
当使用时,将连接信息数据集中的连接信息保存在内存中,获取报文后,将所述报文与内存中的连接信息匹配,这样可减少建立连接所耗费的时间。
本实施例在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。
与本申请提供的第三实施例相对应,本申请还提供了第四实施例,即一种数据处理的装置。由于第四实施例基本相似于第三实施例,所以描述得比较简单,相关的部分请参见第三实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
图4示出了本申请提供的一种数据处理的装置的实施例。图4为本申请实施例提供的又一种数据处理的装置的单元框图。
本实施例主要以多核架构中预设处理所述报文慢速队列的CPU核作为主要实施例对象。例如,CPU0。
下述所述的多核处理器的第二核,也就是预设处理所述报文快速队列的CPU核,例如,CPU1。
请参见4所示,本实施例提供一种数据处理的装置,包括:第二获取单元401,第二发送单元402。
第二获取单元401,用于获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列。
第二发送单元402,用于根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
在所述第二发送单元402中,包括:
提取特征信息子单元,用于从所述报文中提取第一特征信息。
建立连接子单元,用于根据所述第一特征信息建立第一连接。
在所述建立连接子单元中,包括:
请求子单元,用于向与所述第一特征信息相关联的目标端发送建立连接的请求信息。
获取返回信息子单元,用于获取与所述请求信息相关联的返回信息。
判断返回信息子单元,用于判断所述返回信息是否满足预设连接条件。
建立第一连接子单元,用于若所述判断返回信息的输出结果为“是”,则与所述目标端建立第一连接。
在所述第二发送单元402中,还包括:
保存子单元,用于将所述第一信息保存在与所述多核处理器的第二核共享的第一存储地址中。
所述装置还包括:
获取第二信息单元,用于获取所述多核处理器的第二核发送的第二信息。
判断第二信息单元,用于判断所述第二信息是否满足预设处理结束条件。
保存连接信息单元,用于若所述判断第二信息单元的输出结果为“是”,则将与所述第一连接相关联的信息保存在连接信息数据集中。
本实施例在多核转发架构下,解决了新建乱序的问题,保证了网关设备的转发性能不受影响。提高了网关设备在数据传送业务(比如,音视频数据传送业务、文件传送业务)运行的稳定性,保证数据报文按照顺序发送。
以上实施例仅为本申请的示例性实施例,不用于限制本申请,本申请的保护范围由权利要求书限定。本领域技术人员可以在本申请的实质和保护范围内,对本申请做出各种修改或等同替换,这种修改或等同替换也应视为落在本申请的保护范围内。

Claims (10)

1.一种数据处理的方法,其特征在于,包括:
获取第一信息;
判断所述第一信息是否满足预设处理条件;
若是,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接由多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
2.根据权利要求1所述的方法,其特征在于,所述获取第一信息,包括:
从与所述多核处理器的第二核共享的第一存储地址中读取所述第一信息。
3.根据权利要求1所述的方法,其特征在于,所述利用第一连接根据队列顺序发送第一队列中保存的报文,包括:
获取第一队列中的第一条报文;
从所述报文中提起第一特征信息;
根据队列顺序发送所述第一队列中与所述第一特征信息相关联的报文。
4.根据权利要求1所述的方法,其特征在于,在所述利用第一连接根据队列顺序发送第一队列中保存的报文后,还包括:
向所述多核处理器的第一核发送的第二信息,所述第二信息满足预设处理结束条件。
5.一种数据处理的装置,其特征在于,包括:
第一获取单元,用于获取第一信息;
判断单元,用于判断所述第一信息是否满足预设处理条件;
第一发送单元,用于若所述判断单元的输出结果为“是”,则利用第一连接根据队列顺序发送第一队列中保存的报文,其中,所述第一连接为多核处理器的第一核建立的连接,所述第一队列为先进先出队列。
6.一种数据处理的方法,其特征在于,包括:
获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列;
根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
7.根据权利要求6所述的方法,其特征在于,所述根据所述报文建立第一连接,包括:
从所述报文中提取第一特征信息;
根据所述第一特征信息建立第一连接。
8.根据权利要求6所述的方法,其特征在于,所述向多核处理器的第二核发送第一信息,包括:
将所述第一信息保存在与所述多核处理器的第二核共享的第一存储地址中。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取所述多核处理器的第二核发送的第二信息;
判断所述第二信息是否满足预设处理结束条件;
若是,则将与所述第一连接相关联的信息保存在连接信息数据集中。
10.一种数据处理的装置,其特征在于,包括:
第二获取单元,用于获取第一队列中的第一条报文,其中,所述第一队列为先进先出队列;
第二发送单元,用于根据所述报文建立第一连接并向多核处理器的第二核发送第一信息。
CN201811572778.4A 2018-12-21 2018-12-21 一种数据处理的方法和装置 Pending CN109656705A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811572778.4A CN109656705A (zh) 2018-12-21 2018-12-21 一种数据处理的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811572778.4A CN109656705A (zh) 2018-12-21 2018-12-21 一种数据处理的方法和装置

Publications (1)

Publication Number Publication Date
CN109656705A true CN109656705A (zh) 2019-04-19

Family

ID=66115645

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811572778.4A Pending CN109656705A (zh) 2018-12-21 2018-12-21 一种数据处理的方法和装置

Country Status (1)

Country Link
CN (1) CN109656705A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262792A (zh) * 2020-01-17 2020-06-09 新华三信息安全技术有限公司 报文转发方法、装置、网络设备及存储介质
CN115883440A (zh) * 2021-09-27 2023-03-31 成都鼎桥通信技术有限公司 数据处理方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1642138A (zh) * 2004-01-09 2005-07-20 华为技术有限公司 一种cpu与协处理单元通信的方法及系统
CN101013383A (zh) * 2007-02-13 2007-08-08 杭州华为三康技术有限公司 实现多核cpu进行报文联合处理的系统及方法
US20160173451A1 (en) * 2014-12-11 2016-06-16 Oracle International Corporation Dynamic Denial of Service Protection
CN106411778A (zh) * 2016-10-27 2017-02-15 东软集团股份有限公司 数据转发的方法及装置
CN106789617A (zh) * 2016-12-22 2017-05-31 东软集团股份有限公司 一种报文转发方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1642138A (zh) * 2004-01-09 2005-07-20 华为技术有限公司 一种cpu与协处理单元通信的方法及系统
CN101013383A (zh) * 2007-02-13 2007-08-08 杭州华为三康技术有限公司 实现多核cpu进行报文联合处理的系统及方法
US20160173451A1 (en) * 2014-12-11 2016-06-16 Oracle International Corporation Dynamic Denial of Service Protection
CN106411778A (zh) * 2016-10-27 2017-02-15 东软集团股份有限公司 数据转发的方法及装置
CN106789617A (zh) * 2016-12-22 2017-05-31 东软集团股份有限公司 一种报文转发方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111262792A (zh) * 2020-01-17 2020-06-09 新华三信息安全技术有限公司 报文转发方法、装置、网络设备及存储介质
CN111262792B (zh) * 2020-01-17 2022-04-01 新华三信息安全技术有限公司 报文转发方法、装置、网络设备及存储介质
CN115883440A (zh) * 2021-09-27 2023-03-31 成都鼎桥通信技术有限公司 数据处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CA2509404C (en) Using direct memory access for performing database operations between two or more machines
EP1155370B1 (en) Method and apparatus for extending the range of the universal serial bus protocol
US20190044879A1 (en) Technologies for reordering network packets on egress
CN104796337A (zh) 一种转发报文的方法及装置
CN108494817A (zh) 数据传输方法、相关装置及系统
CN105141603B (zh) 通信数据传输方法及系统
US11750418B2 (en) Cross network bridging
CN109547162B (zh) 基于两套单向边界的数据通信方法
WO2019000866A1 (zh) 一种数据处理方法及物联网网关
CN101599991A (zh) 一种基于高速通信协议的提升网络文件系统性能的方法
CN102546612A (zh) 用户态下基于rdma协议的远程过程调用实现方法
CN109327511A (zh) 一种基于http协议的数据请求方法和服务器
CN113259415B (zh) 一种网络报文处理方法、装置及网络服务器
CN109656705A (zh) 一种数据处理的方法和装置
CN103440213B (zh) 一种应用于具有多cpu和网卡的系统的网卡驱动方法
CN111131499A (zh) 并发和异步任务处理方法及其设备
CN103905484B (zh) 处理超文本传输协议请求的方法及装置
US10305772B2 (en) Using a single work item to send multiple messages
CN105471718B (zh) 一种全双工消息队列的实现方法
CN107819697A (zh) 数据传输方法、交换机及数据中心
CN108234595B (zh) 日志传输方法及系统
CN106067865B (zh) 数据报文的转发方法和装置
CN106209666A (zh) 一种基于负载均衡器的链路复用方法及系统
CN111130968A (zh) 一种解决Modbus总线通信粘包的方法及终端
CN111782322A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20190419