CN111262792B - 报文转发方法、装置、网络设备及存储介质 - Google Patents
报文转发方法、装置、网络设备及存储介质 Download PDFInfo
- Publication number
- CN111262792B CN111262792B CN202010050619.9A CN202010050619A CN111262792B CN 111262792 B CN111262792 B CN 111262792B CN 202010050619 A CN202010050619 A CN 202010050619A CN 111262792 B CN111262792 B CN 111262792B
- Authority
- CN
- China
- Prior art keywords
- kernel
- service
- message
- core
- packet
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种报文转发方法、装置、网络设备及存储介质,应用于具有多核处理器CPU的网络设备,所述方法包括:接收业务报文;判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,所述第一内核与第二内核为所述多核CPU中不同的内核;若存在,则在确定所述业务报文不属于预设业务时,使用逐包转发的方式转发所述业务报文。本申请根据各内核的繁忙或空闲的信息,智能地选择报文转发方式的方案,使得网络设备在流量大小不同的时间段和/或不同应用场景下自动切换报文的转发方式,并且能够保证预设业务的最佳转发方式,从而保证更加智能、高效地进行负载分担,进而能够保证网络数据的完整性和安全性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种报文转发方法、装置、网络设备及存储介质。
背景技术
随着网络的快速发展,对网络设备的性能要求越来越高,传统的网络设备也从早期的单核CPU发展到多核CPU,即一台网络设备具有多个CPU内核协同工作,大大提升了具有单台网络设备的网络性能。目前,网络设备的多核CPU基本上会拥有8个、16个、32个、48个、甚至更多数量的内核。
目前,具有多核CPU的网络设备使用两种方式将接收的业务报文转发到CPU内核上处理:逐流转发和逐包转发。逐流转发是指,用五元组(源IP地址、源端口号、目的IP地址、目的端口号、协议号)或三元组(源IP地址、目的IP地址、协议号)来区分和划定一条业务流,属于同一条业务流的业务报文会被转发到同一个或多个CPU内核上进行业务处理。逐包转发是指,将业务报文依次发送到不同的CPU内核进行处理,使用逐包转发方式转发业务报文时属于同一条业务流的不同报文可能会被转发到不同的CPU内核上进行业务处理。
当网络设备选择使用逐流转发方式转发报文时,若某一条业务流的业务报文激增时,则可能会导致网络设备某些CPU内核繁忙丢包,而其他CPU内核空闲。当网络设备选择使用逐包转发方式转发报文时,由于某些业务不支持逐包转发方式,则会出现丢包,业务中断的现象。
发明内容
为避免上述问题,本申请提供了一种报文转发方法、装置、网络设备及存储介质。
第一方面,本申请提供了一种报文转发方法,该方法应用于具有多核处理器CPU的网络设备,所述方法包括:
接收业务报文;
判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,所述第一内核与第二内核为所述多核CPU中不同的内核;
若存在,则在确定所述业务报文不属于预设业务时,使用逐包转发的方式转发所述业务报文。
可选的,所述报文转发方法还包括:
当判定所述业务报文满足以下至少一条件时,确定所述业务报文属于预设业务,所述条件包括:
所述业务报文的应用特征对应的业务为具有时序性的业务、
所述业务报文的报文特征成功匹配预设特征库的特征。
可选的,所述报文转发方法还包括:
若所述多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发所述业务报文。
可选的,所述报文转发方法还包括:
若所述业务报文属于预设业务,则确定使用逐流转发的方式转发所述业务报文。
可选的,所述判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,包括:
检测所述多核CPU中各个内核的利用率;
判断所述多核CPU中第一内核的利用率是否大于第一阈值、且第二内核的利用率是否小于第二阈值的第二内核,或判断所述多核CPU中任意两个内核的利用率差值绝对值是否大于第三阈值;
若是,则判定所述多核CPU中存在第一内核繁忙且第二内核空闲的情况。
第二方面,本申请还公开了一种报文转发装置,应用于具有多核处理器CPU的网络设备,所述装置包括:
接收单元,用于接收业务报文;
控制单元,用于判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,所述第一内核与第二内核为所述多核CPU中不同的内核;
若存在,则在确定所述业务报文不属于预设业务时,使用逐包转发的方式转发所述业务报文。
可选的,所述控制单元,具体用于:
当判定所述业务报文满足以下至少一条件时,确定所述业务报文属于预设业务,所述条件包括:
所述业务报文的应用特征对应的业务为具有时序性的业务、
所述业务报文的报文特征成功匹配预设特征库的特征。
可选的,所述控制单元,还用于装置还包括:
若所述多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发所述业务报文。
可选的,控制单元,具体用于:
若所述报文所述业务报文属于预设业务,则确定使用逐流转发的方式转发所述业务报文。
可选的,所述控制单元,具体用于:
检测所述多核CPU中各个内核的利用率;
判断所述多核CPU中第一内核的利用率是否大于第一阈值、且第二内核的利用率是否小于第二阈值的第二内核,或判断所述多核CPU中任意两个内核的利用率差值绝对值是否大于第三阈值;
若是,则判定所述多核CPU中存在第一内核繁忙且第二内核空闲的情况。
第三方面,本申请还公开了一种网络设备,所述网络设备包括多核处理器CPU和机器可读存储介质,所述机器可读存储介质存储有能够被所述多核CPU执行的机器可执行指令,所述多核CPU被所述机器可执行指令促使:实现第一方面任一所述的报文转发方法的步骤。
第四方面,一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的报文转发方法的步骤。
与现有技术相比,本申请实施例提供了一种网络设备能够基于自身CPU内核的利用率,根据各内核的繁忙或空闲的信息,智能地选择报文转发方式的方案,使得网络设备在流量大小不同的时间段和/或不同应用场景下自动切换报文的转发方式,并且能够保证预设业务的最佳转发方式,从而保证更加智能、高效地进行负载分担,进而能够保证网络数据的完整性和安全性。因此,通过本申请实施例,网络设备既能够根据业务流量的大小自动切换转发方式,又能够保证使用最适合的转发方式转发某些预设业务的业务报文。同时由于本申请实施例是网络设备自动地切换报文转发方式,因此不需要人为参与,提高了网络设备转发报文的效率和智能化。
附图说明
图1为本申请一实施例提供的报文转发方法的流程示意图;
图2为本申请一实施例提供的预设业务的报文格式示意图;
图3为本申请另一实施例提供的报文转发方法的流程示意图;
图4为本申请再一实施例提供的报文转发方法的流程示意图;
图5为本申请一实施例提供的报文转发装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
发明人发现,相关技术中,当网络设备选择使用逐流转发方式转发报文时,若某一条业务流的业务报文激增时,则可能会导致网络设备某些CPU内核繁忙丢包,而其他CPU内核空闲。当网络设备选择使用逐包转发方式转发报文时,由于某些业务不支持逐包转发方式,则会出现丢包,业务中断的现象。为保证网络设备正常地均衡转发业务报文,需要专业技术人员现场查看业务流量和设备资源使用情况,人工操作进行转发模式的切换,效率低且不智能化。
为避免上述问题,本申请实施例提供了一种报文转发方法、装置、网络设备及存储介质,以使网络设备既能够根据业务流量的大小自动切换转发方式,又能够保证使用最适合的转发方式转发某些特殊的业务报文。
请参阅图1,本申请实施例提供了一种报文转发方法,该方法应用于具有多核处理器CPU的网络设备,所述方法包括步骤102-106。
在步骤102、接收业务报文。
在步骤104、判断多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,第一内核与第二内核为多核CPU中不同的内核。
在一个实施例中,网络设备接收到业务报文后,可以检测该网络设备中多核CPU的每一个内核的利用率。然后依据各个内核的利用率,判断多核CPU中是否存在第一内核繁忙且第二内核空闲的情况。
一个示例中,当确定多核CPU中第一内核的利用率大于第一阈值、且第二内核的利用率小于第二阈值的第二内核时,则判定多核CPU中是否存在第一内核繁忙且第二内核空闲的情况。其中,第一阈值、第二阈值可依据经验设定,一般来说,第一阈值大于第二阈值。例如:第一阈值为95%,第二阈值为5%,或者,第一阈值为90%,第二阈值为20%。
在另一个示例中,当确定多核CPU中任意两个内核的利用率差值绝对值大于第三阈值时,则判定多核CPU中是否存在第一内核繁忙且第二内核空闲的情况。其中,第三阈值可依据经验设定,例如:第三阈值可以为10%、5%、或者3%等。
在步骤106、若存在,则在确定业务报文不属于预设业务时,使用逐包转发的方式转发业务报文。
在本申请实施例中,若存在第一内核繁忙且第二内核空闲的情况,则在确定业务报文不属于预设业务时,使用逐流转发的方式转发该业务报文。
本申请实施例提供了一种网络设备能够基于自身CPU内核的利用率,根据各内核的繁忙或空闲的信息,智能地选择报文转发方式的方案,使得网络设备在流量大小不同的时间段和/或不同应用场景下自动切换报文的转发方式,并且能够保证预设业务的最佳转发方式,从而保证更加智能、高效地进行负载分担,进而能够保证网络数据的完整性和安全性。因此,通过本申请实施例,网络设备既能够根据业务流量的大小自动切换转发方式,又能够保证使用最适合的转发方式转发某些预设业务的业务报文。同时由于本申请实施例是网络设备自动地切换报文转发方式,因此不需要人为参与,提高了网络设备转发报文的效率和智能化。
在一个实施例中,预设业务可以为某些特殊的业务,例如对具有时序性的业务,在本申请中,需要依据时间顺序按序处理的业务,我们称之为具有时序性的业务。比如VOIP(Voice over Internet Protocol,缩写为VoIP)业务或者视频业务,这类业务的业务报文是需要依据时间顺序按序处理的,若不按序处理,则会造成接收端播放错误。因此,此类业务报文不适合用逐包方式转发,应当使用逐流方式转发。
此时,可以提取业务报文的应用特征,当提取的应用特征所对应的业务为具有时序性的业务时,认为该业务报文属于预设业务。在本申请实施例中,应用特征为可以表示业务报文的协议、和/或携带的业务数据类型的特征。
例如:假设预设业务为音频业务。接收到业务报文后,解析该业务报文,得到该业务报文的报文头和有效载荷,并得知该报文为RTP报文,其中报文头格式具体如图2,其中:
1.V:RTP协议的版本号,占2位,当前协议版本号为2。
2.P:填充标志,占1位,如果P=1,则在该报文的尾部填充一个或多个额外的八位组,它们不是有效载荷的一部分。
3.X:扩展标志,占1位,如果X=1,则在RTP报头后跟有一个扩展报头。
4.CC:CSRC计数器,占4位,指示CSRC标识符的个数。
5.M:标记,占1位,不同的有效载荷有不同的含义,对于视频,标记一帧的结束;对于音频,标记会话的开始。
6.PT:有效载荷类型,占7位,用于说明RTP报文中有效载荷的类型,如GSM音频、JPEM图像等,在流媒体中大部分是用来区分音频流和视频流的,这样便于客户端进行解析。
7.序列号:占16位,用于标识发送者所发送的RTP报文的序列号,每发送一个报文,序列号增加1。这个字段当下层的承载协议用UDP的时候,网络状况不好的时候可以用来检查丢包。同时出现网络抖动的情况可以用来对数据进行重新排序,在helix服务器中这个字段是从0开始的,同时音频包和视频包的sequence是分别记数的。
8.时间戳(Timestamp):占32位,时间戳反映了该RTP报文的第一个八位组的采样时刻。接收者使用时戳来计算延迟和延迟抖动,并进行同步控制。
9.同步信源(SSRC)标识符:占32位,用于标识同步信源。该标识符是随机选择的,参加同一视频会议的两个同步信源不能有相同的SSRC。
10.特约信源(CSRC)标识符:每个CSRC标识符占32位,可以有0~15个。每个CSRC标识了包含在该RTP报文有效载荷中的所有特约信源。
假设上述PT字段为用于表示GSM音频的负载数据类型编号,则可以通过PT字段的数值确定业务报文的应用特征为PT特征,表示该业务报文携带GSM音频数据,此时认为该业务报文属于预设业务。
应当理解的是,针对不同协议的业务报文,表示该业务报文的协议、和/或携带的业务数据类型的特征可以是在报文头,也可以是在载荷中,本申请实施例仅作示例。
在另一个实施例中,可以将某些业务设定为预设业务,例如可以将重要的业务(比如FTP业务)设定为预设业务。此时可在预设特征库中存储预设业务的报文特征,当业务报文的报文特征成功匹配预设特征库的特征时,判定该业务报文为预设业务。例如:将FTP业务设定为预设业务,并在预设特征库中存储FTP报文的报文特征,当业务报文的报文特征成功匹配FTP报文的报文特征时,认为该业务报文为FTP报文,则该业务报文属于预设业务。
在一个实施例中,请参阅图3,基于图1所示实施例提供的报文转发方法,还包括步骤105、若多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发业务报文。
在另一个实施例中,图1-图3任一所示的报文转发方法还包括步骤107、若业务报文属于预设业务,则确定使用逐流转发的方式转发业务报文。
在一个示例中,多核CPU包括控制内核和业务内核,其中,控制内核用于管理用户态、内核态进程、内存申请或释放,业务内核用于业务处理。在步骤104中,控制内核判断多核CPU中的业务内核是否存在第一内核繁忙且第二内核空闲的情况,其中,第一内核与第二内核为多核CPU中不同的业务内核。相应的,步骤105具体为:若控制内核判定多核CPU中不存在第一内核丢包且第二内核空闲的情况,则控制内核确定使用逐流转发的方式转发业务报文。步骤106具体为:若存在,则控制内核在确定业务报文不属于预设业务时,使用逐包转发的方式转发业务报文。具体107具体为:若控制内核确定业务报文属于预设业务,则确定使用逐流转发的方式转发业务报文。
为能更好地理解本申请提供的方案,以下具体举例说明。
假设网络设备包括16核CPU:内核0-内核15,其中,内核0、内核1作为控制内核,用于管理用户态、内核态进程、内存申请或释放,内核2-15用于业务处理的业务内核,上一次处理业务报文的内核为内核3,目前使用逐流转发的方式转发业务报文。具体的,以下以控制内核为内核0为例进行说明,请参阅图4,所示的方法包括步骤401-405。
在步骤401、网络设备通过接口接收到业务报文后,该业务报文被转发到网络设备的CPU。
在步骤402、内核0获取内核2-15中每个内核的利用率。再基于获取到的利用率,判断内核2-15中是否存在第一内核大于第一阈值95%且第二内核小于第二阈值5%的情况,其中,第一内核与第二内核为多核CPU中不同的内核。
若存在,则执行步骤403。若不存在,则执行步骤405。
在一个示例中,假设在本实施例中,内核0获取到内核2-15的利用率如下表1所示。
表1
内核 | 内核2 | 内核3 | 内核4 | 内核5 | 内核6 | 内核7 | 内核8 | 内核9 | 内核10 |
利用率 | 0.00% | 89.36% | 91.08% | 90.88% | 89.68% | 89.39% | 88.12% | 87.62% | 87.91% |
内核 | 内核11 | 内核12 | 内核13 | 内核14 | 内核15 | ||||
利用率 | 90.63% | 90.58% | 90.64% | 90.72% | 95.03% |
由上述表1可知,内核2-15中存在第一内核(内核15)大于第一阈值95%且第二内核(内核2)小于第二阈值5%的情况,执行步骤404。
在另一个示例中,假设在本实施例中,内核0获取到内核2-15的利用率如下表2所示。
表2
内核 | 内核2 | 内核3 | 内核4 | 内核5 | 内核6 | 内核7 | 内核8 | 内核9 | 内核10 |
利用率 | 88.19% | 89.36% | 91.08% | 90.88% | 89.68% | 89.39% | 88.12% | 87.62% | 87.91% |
内核 | 内核11 | 内核12 | 内核13 | 内核14 | 内核15 | ||||
利用率 | 90.63% | 90.58% | 90.64% | 90.72% | 91.03% |
由上述表2可知,内核2-15中并不存在第一内核大于第一阈值95%且第二内核小于第二阈值5%的情况,执行步骤405。
在步骤403、内核0确定业务报文是否属于预设业务。
若不属于,则执行步骤404。若属于,则执行步骤405。
在步骤404、内核0确定使用逐包转发的方式转发业务报文。具体的,内核0确定使用逐包方式转发业务报文,CPU的协处理器依据负载分担策略(例如顺序、哈希算法等),确定处理该业务报文的目标内核,并向该目标内核发送该业务报文,目标内核接收并处理该业务报文。例如,内核0确定使用逐包方式转发业务报文,上一次处理业务报文的内核为内核3,CPU的协处理器对该业务报文的参数(ip、端口号或入接口编号)进行哈希算法,确定当前处理业务报文的内核应当为内核4(即目标内核),因此CPU的协处理器向内核4发送该业务报文。内核4接收并处理此业务报文。
应当理解的是,由于之前是逐流转发的方式转发业务报文,因此需要切换为逐包转发的方式转发业务报文。若之前是逐包转发的方式转发业务报文,则继续使用逐包转发的方式转发业务报文即可。
在步骤405、内核0确定使用逐流转发的方式转发业务报文。具体的,内核0确定使用逐流转发的方式转发业务报文,CPU的协处理器解析该业务报文,依据该业务报文的报文特征(例如五元组信息),确定该业务报文所属的业务流,并确定处理该业务报文所属业务流的目标内核(假设为内核5),向内核5转发该业务报文。内核5接收并处理此业务报文。
应当理解的是,由于之前是逐流转发的方式转发业务报文,因此此时继续使用逐流转发的方式转发业务报文即可。若之前是逐包转发的方式转发业务报文,则需要切换为逐流转发的方式转发业务报文。
请参阅图5,本申请还公开了一种报文转发装置,应用于具有多核处理器CPU的网络设备,装置包括:接收单元500、控制单元501。具体的,接收单元500可以为收发器或转发芯片的接口,控制单元501为多核CPU中的控制内核。
接收单元500,用于接收业务报文;
控制单元501,用于判断多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,第一内核与第二内核为多核CPU中不同的内核;
若存在,则在确定业务报文不属于预设业务时,使用逐包转发的方式转发业务报文。
可选的,控制单元501,具体用于:
当判定业务报文满足以下至少一条件时,确定业务报文属于预设业务,条件包括:
业务报文的应用特征对应的业务为具有时序性的业务、
业务报文的报文特征成功匹配预设特征库的特征。
可选的,控制单元501,还用于装置还包括:
若多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发业务报文。
可选的,控制单元501,具体用于:
若报文业务报文属于预设业务,则确定使用逐流转发的方式转发业务报文。
可选的,控制单元501,具体用于:
检测多核CPU中各个内核的利用率;
判断多核CPU中第一内核的利用率是否大于第一阈值、且第二内核的利用率是否小于第二阈值的第二内核,或判断多核CPU中任意两个内核的利用率差值绝对值是否大于第三阈值;
若是,则判定多核CPU中存在第一内核繁忙且第二内核空闲的情况。
本申请实施例还公开了一种网络设备,所述网络设备包括多核处理器CPU和机器可读存储介质,所述机器可读存储介质存储有能够被所述多核CPU执行的机器可执行指令,所述多核CPU被所述机器可执行指令促使:实现前述任一报文转发方法的步骤。
本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现前述任一报文转发方法的步骤。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (12)
1.一种报文转发方法,其特征在于,应用于具有多核处理器CPU的网络设备,所述方法包括:
接收业务报文;
判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,所述第一内核与第二内核为所述多核CPU中不同的内核;
若存在,则在确定所述业务报文不属于预设业务时,使用逐包转发的方式转发所述业务报文。
2.根据权利要求1所述的方法,其特征在于,还包括:
当判定所述业务报文满足以下至少一条件时,确定所述业务报文属于预设业务,所述条件包括:
所述业务报文的应用特征对应的业务为具有时序性的业务、
所述业务报文的报文特征成功匹配预设特征库的特征。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发所述业务报文。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述业务报文属于预设业务,则确定使用逐流转发的方式转发所述业务报文。
5.根据权利要求1-4任一所述的方法,其特征在于,所述判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,包括:
检测所述多核CPU中各个内核的利用率;
判断所述多核CPU中第一内核的利用率是否大于第一阈值、且第二内核的利用率是否小于第二阈值的第二内核,或判断所述多核CPU中任意两个内核的利用率差值绝对值是否大于第三阈值;
若是,则判定所述多核CPU中存在第一内核繁忙且第二内核空闲的情况。
6.一种报文转发装置,其特征在于,应用于具有多核处理器CPU的网络设备,所述装置包括:
接收单元,用于接收业务报文;
控制单元,用于判断所述多核CPU中是否存在第一内核繁忙且第二内核空闲的情况,其中,所述第一内核与第二内核为所述多核CPU中不同的内核;
若存在,则在确定所述业务报文不属于预设业务时,使用逐包转发的方式转发所述业务报文。
7.根据权利要求6所述的装置,其特征在于,所述控制单元,具体用于:
当判定所述业务报文满足以下至少一条件时,确定所述业务报文属于预设业务,所述条件包括:
所述业务报文的应用特征对应的业务为具有时序性的业务、
所述业务报文的报文特征成功匹配预设特征库的特征。
8.根据权利要求6所述的装置,其特征在于,所述控制单元,还用于:
若所述多核CPU中不存在第一内核丢包且第二内核空闲的情况,则确定使用逐流转发的方式转发所述业务报文。
9.根据权利要求6所述的装置,其特征在于,所述控制单元,还用于:
若所述业务报文属于预设业务,则确定使用逐流转发的方式转发所述业务报文。
10.根据权利要求6-9任一所述的装置,其特征在于,所述控制单元,具体用于:
检测所述多核CPU中各个内核的利用率;
判断所述多核CPU中第一内核的利用率是否大于第一阈值、且第二内核的利用率是否小于第二阈值的第二内核,或判断所述多核CPU中任意两个内核的利用率差值绝对值是否大于第三阈值;
若是,则判定所述多核CPU中存在第一内核繁忙且第二内核空闲的情况。
11.一种网络设备,其特征在于,所述网络设备包括多核处理器CPU和机器可读存储介质,所述机器可读存储介质存储有能够被所述多核CPU执行的机器可执行指令,所述多核CPU被所述机器可执行指令促使:实现权利要求1-5任一所述的报文转发方法的步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的报文转发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010050619.9A CN111262792B (zh) | 2020-01-17 | 2020-01-17 | 报文转发方法、装置、网络设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010050619.9A CN111262792B (zh) | 2020-01-17 | 2020-01-17 | 报文转发方法、装置、网络设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111262792A CN111262792A (zh) | 2020-06-09 |
CN111262792B true CN111262792B (zh) | 2022-04-01 |
Family
ID=70954247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010050619.9A Active CN111262792B (zh) | 2020-01-17 | 2020-01-17 | 报文转发方法、装置、网络设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111262792B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11140075B1 (en) * | 2020-03-13 | 2021-10-05 | Juniper Networks, Inc. | Network traffic steering among CPU cores using forwarding path elements |
CN113992589B (zh) * | 2021-10-21 | 2023-05-26 | 绿盟科技集团股份有限公司 | 一种报文分流方法、装置及电子设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004673A (zh) * | 2010-11-29 | 2011-04-06 | 中兴通讯股份有限公司 | 多核处理器负载均衡的处理方法及系统 |
CN104618253A (zh) * | 2015-01-22 | 2015-05-13 | 大唐移动通信设备有限公司 | 一种动态变更的传输报文处理方法和装置 |
CN104852852A (zh) * | 2015-04-08 | 2015-08-19 | 汉柏科技有限公司 | 一种多核处理设备的报文处理方法及多核处理系统 |
WO2016011894A1 (zh) * | 2014-07-25 | 2016-01-28 | 华为技术有限公司 | 报文处理方法和装置 |
WO2017067215A1 (zh) * | 2015-10-21 | 2017-04-27 | 深圳市中兴微电子技术有限公司 | 众核网络处理器及其微引擎的报文调度方法、系统、存储介质 |
CN107579925A (zh) * | 2017-09-29 | 2018-01-12 | 迈普通信技术股份有限公司 | 报文转发方法及装置 |
CN108259369A (zh) * | 2018-01-26 | 2018-07-06 | 迈普通信技术股份有限公司 | 一种数据报文的转发方法及装置 |
CN108632165A (zh) * | 2018-04-23 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法、装置及设备 |
CN108833281A (zh) * | 2018-06-01 | 2018-11-16 | 新华三信息安全技术有限公司 | 一种报文转发方法及网络设备 |
CN108881060A (zh) * | 2018-06-29 | 2018-11-23 | 新华三信息安全技术有限公司 | 一种处理通信报文的方法及装置 |
CN109656705A (zh) * | 2018-12-21 | 2019-04-19 | 北京天融信网络安全技术有限公司 | 一种数据处理的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9696787B2 (en) * | 2014-12-10 | 2017-07-04 | Qualcomm Innovation Center, Inc. | Dynamic control of processors to reduce thermal and power costs |
-
2020
- 2020-01-17 CN CN202010050619.9A patent/CN111262792B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004673A (zh) * | 2010-11-29 | 2011-04-06 | 中兴通讯股份有限公司 | 多核处理器负载均衡的处理方法及系统 |
WO2016011894A1 (zh) * | 2014-07-25 | 2016-01-28 | 华为技术有限公司 | 报文处理方法和装置 |
CN104618253A (zh) * | 2015-01-22 | 2015-05-13 | 大唐移动通信设备有限公司 | 一种动态变更的传输报文处理方法和装置 |
CN104852852A (zh) * | 2015-04-08 | 2015-08-19 | 汉柏科技有限公司 | 一种多核处理设备的报文处理方法及多核处理系统 |
WO2017067215A1 (zh) * | 2015-10-21 | 2017-04-27 | 深圳市中兴微电子技术有限公司 | 众核网络处理器及其微引擎的报文调度方法、系统、存储介质 |
CN107579925A (zh) * | 2017-09-29 | 2018-01-12 | 迈普通信技术股份有限公司 | 报文转发方法及装置 |
CN108259369A (zh) * | 2018-01-26 | 2018-07-06 | 迈普通信技术股份有限公司 | 一种数据报文的转发方法及装置 |
CN108632165A (zh) * | 2018-04-23 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法、装置及设备 |
CN108833281A (zh) * | 2018-06-01 | 2018-11-16 | 新华三信息安全技术有限公司 | 一种报文转发方法及网络设备 |
CN108881060A (zh) * | 2018-06-29 | 2018-11-23 | 新华三信息安全技术有限公司 | 一种处理通信报文的方法及装置 |
CN109656705A (zh) * | 2018-12-21 | 2019-04-19 | 北京天融信网络安全技术有限公司 | 一种数据处理的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111262792A (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109391560B (zh) | 网络拥塞的通告方法、代理节点及计算机设备 | |
CN109314662B (zh) | 数据传输方法及装置 | |
US10135740B2 (en) | Method and apparatus for limiting rate by means of token bucket, and computer storage medium | |
CN110943933B (zh) | 一种实现数据传输的方法、装置和系统 | |
US9838209B2 (en) | Method for subscribing to streams from multicast clients | |
US9258247B2 (en) | Method and apparatus for load sharing | |
US9590910B1 (en) | Methods and apparatus for handling multicast packets in an audio video bridging (AVB) network | |
CN106685827B (zh) | 一种下行报文的转发方法及ap设备 | |
CN106330742B (zh) | 一种流量控制的方法及网络控制器 | |
CN111262792B (zh) | 报文转发方法、装置、网络设备及存储介质 | |
EP3846397A1 (en) | Method for implementing data transmission, apparatus, and system | |
US8787160B2 (en) | Method, apparatus, and system for judging path congestion | |
CN112751833B (zh) | Rtp报文识别方法、装置、电子设备及可读存储介质 | |
US11777846B2 (en) | Ultra reliable segment routing | |
US8730800B2 (en) | Method, apparatus, and system for transporting video streams | |
US20120213133A1 (en) | Method and system for identifying media type transmitted over an atm network | |
US9537764B2 (en) | Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program | |
CN107800653B (zh) | 报文压缩方法及装置 | |
CN110336759B (zh) | 基于rdma的协议报文转发方法及装置 | |
CN115460651A (zh) | 数据传输方法及装置、可读存储介质、终端 | |
KR101568881B1 (ko) | 헤더 압축 효율 향상 방법 및 그를 위한 패킷 송신 장치 | |
US11973814B2 (en) | Method and controller for audio and/or video content delivery | |
WO2023078357A1 (zh) | 一种信息处理方法、装置、设备及可读存储介质 | |
WO2023246616A1 (zh) | 网络拥塞控制方法及装置 | |
CN109167731B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |