CN108173780A - 数据处理方法、装置、计算机及存储介质 - Google Patents
数据处理方法、装置、计算机及存储介质 Download PDFInfo
- Publication number
- CN108173780A CN108173780A CN201711230854.9A CN201711230854A CN108173780A CN 108173780 A CN108173780 A CN 108173780A CN 201711230854 A CN201711230854 A CN 201711230854A CN 108173780 A CN108173780 A CN 108173780A
- Authority
- CN
- China
- Prior art keywords
- data packet
- color
- data
- packet
- marker
- 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
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/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/624—Altering the ordering of packets in an individual queue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开涉及一种数据处理方法、装置、计算机及存储介质,用于纠正数据包在通过QoS区域时,因流量动态变化等原因产生的乱序。所述方法包括:在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测第一数据包是否携带乱序标签,在第一数据包携带乱序标签,且当前的缓存中存储有与第一数据包属于同一数据流的标记颜色为第二色的数据包时,将第一数据包的标记颜色重置为第二色,其中,第一色所指示的优先级高于第二色所指示的优先级;将重置标记颜色后的第一数据包插入第一数据包所属数据流对应的数据队列;在数据队列中,将标记颜色为第二色的第一个数据包重置为第一色。
Description
技术领域
本公开涉及计算机技术领域,具体地,涉及一种数据处理方法、装置、计算机及存储介质。
背景技术
QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术,对关键应用和多媒体应用十分必要。当网络过载或拥塞时,QoS能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。
QoS可以采用染色和令牌桶算法来做到限制流速,提供保障带宽等功能。比如,设置两个令牌桶g和m,令牌桶g按照保证带宽的速率填充令牌,令牌桶m按照限制带宽的速率填充令牌。其中g的令牌数小于等于m的令牌数。每个数据包都需要取两种令牌。如果令牌桶g和m都有令牌,则数据包染成绿色;如果令牌桶g和m都没有令牌则染成红色;否则是黄色。在缓存数据包时,QoS缓存队列可采用多队列模型,相同流属于同一队列。数据包在QoS控制节点入队时,找到数据所属数据流的缓存队列,插入到队列中相同颜色的最后一个数据包的后面。
然而,通过上述机制来实现限制流速时,如果流量突变,有可能造成数据包的乱序。如流量突然减小,则可能导致流量变小前的一个数据包因为只有一个令牌桶有令牌而被染成黄色,而下一个数据包因为流量减小,两个令牌桶都有令牌而被染成绿色。这样,根据入队规则,绿色的数据包会插入到黄色的数据包之前,这样就发生了乱序。
发明内容
本公开的目的是提供一种数据处理方法、装置、计算机及存储介质,用于纠正数据包在通过QoS区域时,因流量动态变化等原因产生的乱序。
根据本发明实施例的第一方面,提供一种数据处理方法,包括:
在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级排列的顺序错误;
在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;
将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;
在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
可选的,所述方法还包括:
在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为所述第一色,则确定所述QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;
在所述QoS控制节点的缓存中存储有所述其他数据包时,为该数据包添加所述乱序标签。
可选的,所述方法还包括:
在所述QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为所述第二色,且基于所述QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在所述QoS控制节点的缓存中,并通过计数器记录该数据包对应数据流下的所述第二色的数据包数量加一;
在该数据包从所述QoS控制节点的缓存中发出时,通过所述计数器记录该数据包对应数据流下的所述第二色的数据包数量减一。
可选的,将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列,包括:
在所述数据队列中,确定标记颜色为所述第二色的最后一个数据包;
将重置标记颜色后的所述第一数据包插入到所述最后一个数据包的后方。
根据本发明实施例的第二方面,提供一种数据处理装置,包括:
检测模块,用于在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;
第一重置模块,用于在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;
存储模块,将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;
第二重置模块,用于在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
可选的,所述装置还包括:
确定模块,用于在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为所述第一色,则确定所述QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;
标签添加模块,用于在所述QoS控制节点的缓存中存储有所述其他数据包时,为该数据包添加所述乱序标签。
可选的,所述装置还包括:
计数模块,用于在所述QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为所述第二色,且基于所述QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在所述QoS控制节点的缓存中,并通过计数器记录该数据包对应数据流下的所述第二色的数据包数量加一;及,
在该数据包从所述QoS控制节点的缓存中发出时,通过所述计数器记录该数据包对应数据流下的所述第二色的数据包数量减一。
可选的,所述存储模块用于:
在所述数据队列中,确定标记颜色为所述第二色的最后一个数据包;
将重置标记颜色后的所述第一数据包插入到所述最后一个数据包的后方。
根据本发明实施例的第三方面,提供一种计算机,包括:
存储器,用于存储指令;
处理器,用于根据所述存储器中存储的指令,在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
根据本发明实施例的第四方面,提供一种非临时性计算机可读存储介质,包括一个或多个程序,所述一个或多个程序用于执行第一方面所述的方法。
通过上述技术方案,在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,可以检测第一数据包是否携带乱序标签,若第一数据包携带乱序标签,且当前的缓存中存储有与第一数据包属于同一数据流的标记颜色为第二色的数据包时,可以将第一数据包的标记颜色重置为第二色(第一色所指示的优先级高于第二色所指示的优先级),然后将重置标记颜色后的第一数据包插入第一数据包所属数据流对应的数据队列,并将数据队列中,标记颜色为第二色的第一个数据包重置为第一色。乱序标签可以用来指示数据包在所属的数据流中按优先级排列的顺序可能发生了错误,因此,在第一数据包需要缓存时,将第一数据包重新置色并插入队列可以纠正第一数据包因流量动态变化等原因产生的乱序,同时,将数据队列中标记颜色为第二色的第一个数据包重置为第一色,能够保证各颜色数据包数量不变,确保QoS带宽控制的正确性,保证网络的服务质量。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是根据一示例性实施例示出的一种数据处理方法的流程图;
图2是根据一示例性实施例示出的一种数据处理方法的示意图;
图3是根据一示例性实施例示出的一种数据处理装置的框图;
图4是根据一示例性实施例示出的一种计算机的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
首先,对本公开的实施环境进行举例说明。本公开提供的数据处理方法例如可以应用于多级QoS中,多级QoS为一个QoS控制矩阵,每一级为一个独立控制区域,每级QoS控制区域中与每个数据流相关的QoS控制称为QoS控制节点,每个QoS控制节点有QoS缓存队列,还有记录通过当前QoS控制节点带宽使用状态的令牌桶(用令牌桶实现染色控制,根据数据流的流量大小以及设置的保障带宽、限制带宽的大小,将数据包染成三种颜色)。每一级QoS都可以配置保障带宽,限制带宽,优先级等参数。每一级QoS间相互独立。用户可以在每一级都配置相应的QoS访问策略,保证对不同用户,多种流量,多种业务的分层调度。
数据包从前到后逐次经过每个QoS控制区域,如果在一级QoS控制区域用户没有配置规则,则数据包直接通过,不用判断带宽。否则,每经过一个QoS控制区域,都要做一次带宽判定(即QoS控制节点上有无令牌)。如果有带宽,则数据包通行;如果没有带宽,则数据包缓存在对应QoS缓存队列中;如果没有带宽且QoS缓存队列已满,则数据包丢弃。
多级QoS的每个QoS控制节点比如可以设置两个令牌桶g和m,令牌桶g按照保障带宽gbw的速率填充令牌,令牌桶m按照限制带宽mbw的速率填充令牌。由于保障带宽是保障的最小带宽,是保证某服务流量需求的下限,而限制带宽是限制某服务流量的最大带宽,是上限,比如对于某个服务,需要保证1M带宽让其可以完成基本的服务,但不能让该服务占用过多的带宽,需要限制带宽上限2M,因此g的令牌数小于等于m的令牌数。
数据包通过控制节点时,如果令牌桶g和m都有足够的令牌,则两个令牌桶均消耗该数据包流量大小的令牌,数据包染成绿色(即数据包的标记颜色为绿色),例如设置保障带宽为80M,限制带宽为100M,某任务的流量为50M,那么该任务的数据包将被染成绿色;如果令牌桶g和m都没有足够令牌,则不消耗令牌,数据包染成红色(即数据包的标记颜色为红色);如果令牌桶g的令牌不够,令牌桶m的令牌够,则是染成黄色(即数据包的标记颜色为黄色)。多级中,只要有一级数据包颜色为红色(或绿色),则该数据包被判定为红色(或绿色),否则该数据包为黄色。
QoS的优先级可以分8个等级,其中保障带宽4种(高,中,低,默认),限制带宽4种(高,中,低,默认)。8种优先级的关系如下表。对应的,数据包的标记颜色可以用来指示数据包的优先级,比如,绿色对应下表中QoS内部优先级6-8;黄色对应下表中QoS内部优先级3-5;红色对应下表中QoS内部优先级1-2,等等。
表1保证带宽与限制带宽的优先级关系
QoS缓存队列采用多队列模型,相同流属于同一队列。数据包在QoS控制节点入队时,找到数据所属数据流的缓存队列,插入到队列中相同颜色的最后一个数据包的后面。
在实际应用中,可能因一些原因导致属于同一数据流的数据包发生乱序,以下对可能产生乱序的情况进行举例说明。
一、例如多级QoS控制节点配置的保障带宽为80M,限制带宽为120M,对于某个任务,比如传输一部电影,在刚开始传输时,由于整个网络较为通畅,给该传电影的任务的流量有100M,那么根据带宽控制规则,数据包被染成黄色。如果在电影传输过程中,网络突然拥堵(比如网络中因攻击等原因突然出现大量的数据包,而由于总的可用带宽是有限的,因此原有的服务将会受到影响),该传电影的任务的流量减小为50M,那么根据带宽控制规则,流量减小后,数据包将会被染成绿色。根据入队的规则,本应排在后面的数据包因被染成绿色而排到的前面,进而发生了乱序。
二、例如针对一个传输电影的任务,刚开始传输时,还有其他的任务,比如下载任务、上传任务等同时都在消耗令牌,令牌消耗的速度较快,进而使得传输电影任务的数据包因令牌的不充足而染成了黄色。如果在电影的传输过程中,其他的任务突然结束了,此时令牌的消耗速度将减慢,进而可能使得数据包因令牌足够而染成了绿色。根据入队的规则,本应排在后面的数据包因被染成绿色而排到的前面,进而发生了乱序。
为了解决上述的发生乱序的情况,本公开实施例提供一种数据处理方法,请参见图1,图1是根据一示例性实施例示出的一种数据处理方法的流程图,如图1所示,该数据处理方法可以应用于计算机中,包括以下步骤。
步骤S11:在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测第一数据包是否携带乱序标签。
步骤S12:在第一数据包携带乱序标签,且当前的缓存中存储有与第一数据包属于同一数据流的标记颜色为第二色的数据包时,将第一数据包的标记颜色重置为第二色。
步骤S13:将重置标记颜色后的第一数据包插入第一数据包所属数据流对应的数据队列。
步骤S14:在数据队列中,将标记颜色为第二色的第一个数据包重置为第一色。
本公开实施例中,标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识(比如绿色、黄色、或红色)。第一色的优先级高于第二色,比如第一色为绿色,第二色为黄色。为了便于描述,在下文中均以第一色为绿色,第二色为黄色为例进行说明。
乱序标签用于指示数据包在所属的数据流中按优先级排列的顺序可能发生了错误,由于优先级高的会直接排到队列前方,优先级低的会排到队列的后方,那么比如数据流中某个数据包因数据流量的变化导致优先级高于其他数据包的优先级,则这个数据包有可能发生了乱序,那么可以为该数据包添加乱序标签。
例如,一部视频数据的数据流包括的数据包有数据包1、数据包2和数据包3,正常顺序下,从前往后依次为数据包1、数据包2和数据包3。在某QoS控制节点已经缓存了数据包1和数据包2后,接收到数据包3,需要将数据包3也进行缓存(即将属于同一数据流的数据包归入同一数据队列以便发出)。如果检测到数据包3的颜色标识为绿色且携带有乱序标签,同时,已经缓存的数据包1和数据包2的颜色标识为黄色,那么可以将数据包3的颜色重置为黄色,这样在数据包3入队时便可以根据入队规则正确地排在数据包2的后面,同时将数据队列中第一个黄色的数据包(也就是数据包1)的标识颜色重置为绿色,这样数据包1仍然排在数据包2的前面,且保证QoS控制下的各颜色数据包的数量保持不变,确保QoS带宽控制的正确性。
对于添加乱序标签的方式,本公开实施例不作限定,以下对可能的方式进行说明。
可选的,在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为第一色,则确定QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;在确定QoS控制节点的缓存中存储有其他数据包时,为该数据包添加乱序标签。
QoS控制节点可以是多级QoS中的任一控制节点,数据包在通过QoS控制节点时,有可能之前的控制节点已经给数据包染色了,那么可以直接确定数据包的标记颜色;或者数据包在通过QoS控制节点时,还没有被染色,那么QoS控制节点可以根据节点内设置的带宽规则给数据包染色。例如,QoS控制节点内配置的保障带宽为80M,限制带宽为100M,某任务当前的流量为50M,那么该任务的数据包将被染成绿色,如果某任务当前的流量为90M,那么该任务的数据包将被染成黄色,如果某任务当前的流量为120M,那么该任务的数据包将被染成红色。
如果确定出数据包的标记颜色为绿色(第一色),且当前QoS控制节点缓存队列中存储有与该数据包属于同一数据流且标记颜色为黄色(第二色)的其他数据包时,则可能会发送乱序,那么可以给该数据包打上乱序标签。
例如,一部视频数据的数据流包括的数据包有数据包1和数据包N(N为大于1的正整数),数据包1为视频的第一秒的数据,数据包N为视频的第N秒的数据,正常顺序下,数据包N位于数据包1的后面。数据包1在通过控制节点时,只有一个令牌桶有足够的令牌,因此被染成黄色存储在缓存队列中,数据包N在通过控制节点时,可能因流量突然减小(比如其他的网络任务,如下载等任务正好完成),两个令牌桶中均有令牌而被染成绿色。因此,为了纠正数据包乱序,可以给位于后面的数据包N添加乱序标签,有利于进一步地对数据包错乱的顺序进行调整。
可选的,本公开实施例对于判定QoS控制节点的缓存中是否存储有第二色的数据包的方式不作限定。例如,可以在QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为第二色,且基于QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在QoS控制节点的缓存中,且通过计数器记录该数据包对应数据流下的第二色的数据包数量加一;在该数据包从QoS控制节点的缓存中发出时,通过计数器记录该数据包对应数据流下的第二色的数据包数量减一。
QoS控制节点的缓存中可以存储多个数据流的数据包,因此可以针对不同数据流分别进行缓存的黄包计数。即,对于任一QoS控制节点,针对每个不同的数据流每缓存一个黄色(第二色)的数据包,便会计数加一,从缓存中每发出一个黄包,便会计数减一。这样,在给数据包打乱序标签时,可以直接通过计数器来确定当前QoS控制节点的缓存中是否存储有对应数据流的黄包,进而有利于较好地确定是否要给数据包添加乱序标签。
如果检测到数据包是携带有乱序标签的,那么通过调整数据包的标记颜色来实现对数据包顺序的调整。以下将对可能的方式进行说明。
基于预设的QoS控制策略缓存标记颜色为绿色(第一色)的第一数据包,即第一数据包需要缓存,比如,基于预设的QoS控制策略,QoS控制节点的缓存中存储有与第一数据包属于同一数据流的其他数据包,第一数据包需要在QoS控制节点的缓存中插入该数据流所对应的队列,排队等待发出。
在某个QoS控制节点上需要缓存标记颜色为绿色的第一数据包、第一数据包携带有乱序标签,且当前的缓存中存储有与第一数据包属于同一数据流的标记颜色为第二色的数据包时,那么可以将第一数据包重置为黄色再插入第一数据包所在数据流的数据队列,并在所述数据队列中,将标记颜色为第二色的第一个数据包重置为第一色。本公开实施例中,上述步骤S13-步骤S14的执行顺序,本公开实施例不作限定,例如,可以先重置第一数据包的颜色插入数据队列,再将数据队列中标记颜色为第二色的第一个数据包重置为第一色;或者例如,可以先将数据队列中标记颜色为第二色的第一个数据包重置为第一色,再将第一数据包的标记颜色重置为第二色插入数据队列,等等。
可选的,将重置标记颜色后的第一数据包插入第一数据包所属数据流对应的数据队列,可以先在数据队列中,确定标记颜色为第二色的最后一个数据包,然后将重置标记颜色后的第一数据包插入到最后一个数据包的后方。这样可以将数据流中可能存在的数据包乱序调整为正确的顺序。
例如,一部视频数据的数据流包括的数据包有数据包1、数据包2和数据包3,正常顺序下,从前往后依次为数据包1、数据包2和数据包3。数据包1和数据包2在经过某QoS控制节点时,被染成了黄色存储在该QoS控制节点的缓存中,而本应同样被染成黄色的数据包3因为流量突变的原因被染成了绿色(数据包3被打上了乱序标签),那么在缓存数据包3时,可以将数据包3重置为黄色,再插入到数据队列中数据包2的后方,同时将原本是黄包的数据包1的标记颜色重置为绿色,那么数据包3便正确地排在的数据包1和数据包2的后面,保障了数据流中数据包顺序的正确性,同时还能保证各颜色数据包数量不变,确保QoS带宽控制的正确性。
当然,QoS控制节点在接收到绿色的携带乱序标签的数据包时,有可能不需要缓存,比如,位于该数据包前面的黄包已经发出,那么乱序纠正可以在下一级QoS控制节点中进行。即,在需要缓存绿色的携带乱序标签的数据包时进行乱序纠正。
以下将通过完整的实施例对本公开的技术方案进行说明。请参见图2,图2为根据一示例性实施例示出的一种数据处理方法的示意图。
1)、数据包通过某级QoS控制节点,如果数据包在需要缓存时多级判定为黄色,则该QoS控制节点的黄包计数加一;如果数据包从缓存队列中发出时,黄包计数减一。
2)、如果数据包经过某个结点时,数据包为绿色且黄包计数为非0,则给该数据包打上乱序标签。
3)、在数据包缓存时,如果数据包为绿色,且带有乱序标签,则进行纠正乱序操作:在缓存队列中找到和当前数据包相同的流,找到第一个黄色的包,把它变成绿色,把当前数据包染成黄色,插入队列。
请参见图3,基于同一发明构思,本公开实施例提供一种数据处理装置300,该装置300可以包括:
检测模块301,用于在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;
第一重置模块302,用于在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;
存储模块303,将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;
第二重置模块304,用于在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
可选的,所述装置还包括:
确定模块,用于在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为所述第一色,则确定所述QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;
标签添加模块,用于在所述QoS控制节点的缓存中存储有所述其他数据包时,为该数据包添加所述乱序标签。
可选的,所述装置300还包括:
计数模块,用于在所述QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为所述第二色,且基于所述QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在所述QoS控制节点的缓存中,并通过计数器记录该数据包对应数据流下的所述第二色的数据包数量加一;及,
在该数据包从所述QoS控制节点的缓存中发出时,通过所述计数器记录该数据包对应数据流下的所述第二色的数据包数量减一。
可选的,所述存储模块303用于:
在所述数据队列中,确定标记颜色为所述第二色的最后一个数据包;
将重置标记颜色后的所述第一数据包插入到所述最后一个数据包的后方。
请参见图4,基于同一发明构思,本公开实施例提供一种计算机400,包括:
存储器401,用于存储指令;
处理器402,用于根据所述存储器中存储的指令,在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以对本发明的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,不应理解为对本发明的限制。本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级排列的顺序错误;
在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;
将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;
在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为所述第一色,则确定所述QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;
在所述QoS控制节点的缓存中存储有所述其他数据包时,为该数据包添加所述乱序标签。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为所述第二色,且基于所述QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在所述QoS控制节点的缓存中,并通过计数器记录该数据包对应数据流下的所述第二色的数据包数量加一;
在该数据包从所述QoS控制节点的缓存中发出时,通过所述计数器记录该数据包对应数据流下的所述第二色的数据包数量减一。
4.根据权利要求1-3任一所述的方法,其特征在于,将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列,包括:
在所述数据队列中,确定标记颜色为所述第二色的最后一个数据包;
将重置标记颜色后的所述第一数据包插入到所述最后一个数据包的后方。
5.一种数据处理装置,其特征在于,包括:
检测模块,用于在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;
第一重置模块,用于在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;
存储模块,将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;
第二重置模块,用于在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
确定模块,用于在QoS控制节点接收到数据包时,若确定该数据包的标记颜色为所述第一色,则确定所述QoS控制节点的缓存中是否存储有标记颜色为第二色且与该数据包属于同一数据流的其他数据包;
标签添加模块,用于在所述QoS控制节点的缓存中存储有所述其他数据包时,为该数据包添加所述乱序标签。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
计数模块,用于在所述QoS控制节点每接收到一个数据包时,若确定该数据包的标记颜色为所述第二色,且基于所述QoS控制节点的带宽控制规则确定该数据包需要缓存时,将该数据包存储在所述QoS控制节点的缓存中,并通过计数器记录该数据包对应数据流下的所述第二色的数据包数量加一;及,
在该数据包从所述QoS控制节点的缓存中发出时,通过所述计数器记录该数据包对应数据流下的所述第二色的数据包数量减一。
8.根据权利要求5-7任一所述的装置,其特征在于,所述存储模块用于:
在所述数据队列中,确定标记颜色为所述第二色的最后一个数据包;
将重置标记颜色后的所述第一数据包插入到所述最后一个数据包的后方。
9.一种计算机,其特征在于,包括:
存储器,用于存储指令;
处理器,用于根据所述存储器中存储的指令,在基于预设的服务质量QoS控制策略缓存标记颜色为第一色的第一数据包时,检测所述第一数据包是否携带乱序标签,其中,所述标记颜色为基于令牌桶算法给数据包标记的用于指示优先级的颜色标识,所述乱序标签用于指示数据包在所属的数据流中按优先级入队的顺序错误;在所述第一数据包携带所述乱序标签,且当前的缓存中存储有与所述第一数据包属于同一数据流的标记颜色为第二色的数据包时,将所述第一数据包的标记颜色重置为所述第二色,其中,所述第一色所指示的优先级高于所述第二色所指示的优先级;将重置标记颜色后的所述第一数据包插入所述第一数据包所属数据流对应的数据队列;在所述数据队列中,将标记颜色为所述第二色的第一个数据包重置为所述第一色。
10.一种非临时性计算机可读存储介质,其特征在于,所述非临时性计算机可读存储介质中包括一个或多个程序,所述一个或多个程序用于执行权利要求1至4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230854.9A CN108173780B (zh) | 2017-11-29 | 2017-11-29 | 数据处理方法、装置、计算机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230854.9A CN108173780B (zh) | 2017-11-29 | 2017-11-29 | 数据处理方法、装置、计算机及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108173780A true CN108173780A (zh) | 2018-06-15 |
CN108173780B CN108173780B (zh) | 2021-06-04 |
Family
ID=62524193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711230854.9A Active CN108173780B (zh) | 2017-11-29 | 2017-11-29 | 数据处理方法、装置、计算机及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108173780B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112311693A (zh) * | 2019-07-26 | 2021-02-02 | 华为技术有限公司 | 业务数据的传输方法和装置 |
CN113557564A (zh) * | 2020-02-26 | 2021-10-26 | 京东方科技集团股份有限公司 | 计算机实现方法、设备和计算机程序产品 |
EP3902217A4 (en) * | 2019-01-03 | 2022-01-19 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS FOR PROCESSING MESSAGES |
CN116800549A (zh) * | 2023-08-28 | 2023-09-22 | 深圳市兴意腾科技电子有限公司 | 一种基于计算机软件开发的数据处理方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101478491A (zh) * | 2009-02-10 | 2009-07-08 | 中兴通讯股份有限公司 | 一种实现分组业务区分服务的方法及装置 |
CN102195819A (zh) * | 2011-05-30 | 2011-09-21 | 中兴通讯股份有限公司 | 一种网络设备及其业务流量监管方法 |
CN104219169A (zh) * | 2014-09-30 | 2014-12-17 | 杭州华三通信技术有限公司 | 基于类的队列cbq调度方法和设备 |
US20150071074A1 (en) * | 2013-09-12 | 2015-03-12 | Oracle International Corporation | Methods, systems, and computer readable media for regulation of multi-priority traffic in a telecommunications network |
US9013999B1 (en) * | 2008-01-02 | 2015-04-21 | Marvell International Ltd. | Method and apparatus for egress jitter pacer |
CN106789721A (zh) * | 2017-03-24 | 2017-05-31 | 深圳市吉祥腾达科技有限公司 | 一种基于令牌桶的智能qos方法及系统 |
-
2017
- 2017-11-29 CN CN201711230854.9A patent/CN108173780B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9013999B1 (en) * | 2008-01-02 | 2015-04-21 | Marvell International Ltd. | Method and apparatus for egress jitter pacer |
CN101478491A (zh) * | 2009-02-10 | 2009-07-08 | 中兴通讯股份有限公司 | 一种实现分组业务区分服务的方法及装置 |
CN102195819A (zh) * | 2011-05-30 | 2011-09-21 | 中兴通讯股份有限公司 | 一种网络设备及其业务流量监管方法 |
US20150071074A1 (en) * | 2013-09-12 | 2015-03-12 | Oracle International Corporation | Methods, systems, and computer readable media for regulation of multi-priority traffic in a telecommunications network |
CN104219169A (zh) * | 2014-09-30 | 2014-12-17 | 杭州华三通信技术有限公司 | 基于类的队列cbq调度方法和设备 |
CN106789721A (zh) * | 2017-03-24 | 2017-05-31 | 深圳市吉祥腾达科技有限公司 | 一种基于令牌桶的智能qos方法及系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3902217A4 (en) * | 2019-01-03 | 2022-01-19 | Huawei Technologies Co., Ltd. | METHOD AND APPARATUS FOR PROCESSING MESSAGES |
CN112311693A (zh) * | 2019-07-26 | 2021-02-02 | 华为技术有限公司 | 业务数据的传输方法和装置 |
WO2021017667A1 (zh) * | 2019-07-26 | 2021-02-04 | 华为技术有限公司 | 业务数据的传输方法和装置 |
CN112311693B (zh) * | 2019-07-26 | 2022-08-26 | 华为技术有限公司 | 业务数据的传输方法和装置 |
CN113557564A (zh) * | 2020-02-26 | 2021-10-26 | 京东方科技集团股份有限公司 | 计算机实现方法、设备和计算机程序产品 |
CN113557564B (zh) * | 2020-02-26 | 2023-12-12 | 京东方科技集团股份有限公司 | 计算机实现方法、设备和计算机程序产品 |
CN116800549A (zh) * | 2023-08-28 | 2023-09-22 | 深圳市兴意腾科技电子有限公司 | 一种基于计算机软件开发的数据处理方法及系统 |
CN116800549B (zh) * | 2023-08-28 | 2023-11-03 | 深圳市兴意腾科技电子有限公司 | 一种基于计算机软件开发的数据处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108173780B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108173780A (zh) | 数据处理方法、装置、计算机及存储介质 | |
US9608926B2 (en) | Flexible recirculation bandwidth management | |
US8315168B2 (en) | Priority-based hierarchical bandwidth sharing | |
US7826352B2 (en) | Meter-based hierarchical bandwidth sharing | |
EP3101851B1 (en) | Method and apparatus for data flow restriction | |
US11095561B2 (en) | Phantom queue link level load balancing system, method and device | |
CN103999415B (zh) | 一种用于合并网络应用的装置、方法和中间件 | |
US7327682B2 (en) | Methods and devices for flexible bandwidth allocation | |
CN103442076B (zh) | 一种云存储系统的可用性保障方法 | |
CN104579962B (zh) | 一种区分不同报文的QoS策略的方法及装置 | |
US20040213156A1 (en) | Assigning packet queue priority | |
US20140286349A1 (en) | Communication device and packet scheduling method | |
US8913501B2 (en) | Efficient urgency-aware rate control scheme for multiple bounded flows | |
JP2011526115A (ja) | 特定のトラフィックフローにバックプレッシャーフロー制御を提供すること | |
CN107835131A (zh) | 网络流量调度方法、装置及存储介质 | |
US8416689B2 (en) | Meter-based hierarchical bandwidth sharing | |
CN104135445B (zh) | 一种基于流的链路汇聚负载均衡的方法及装置 | |
CN105991456A (zh) | 一种OpenFlow交换机、网络系统及带宽共享方法 | |
CN107846341A (zh) | 调度报文的方法、相关装置和系统 | |
US7551558B2 (en) | Method and system for controlling bandwidth allocation | |
CN109922003A (zh) | 一种数据发送方法、系统及相关组件 | |
CN103107955B (zh) | 分组传送网队列调度方法和装置 | |
EP3494676A1 (en) | Methods and apparatus for shared buffer allocation in a transport node | |
US8427950B2 (en) | Method, system, and computer program product for identifying common factors associated with network threshold violations | |
Balogh et al. | Average delay and queue length model for WRRPQ |
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 |