CN109818882A - 一种执行QoS策略的方法及装置 - Google Patents
一种执行QoS策略的方法及装置 Download PDFInfo
- Publication number
- CN109818882A CN109818882A CN201910133155.5A CN201910133155A CN109818882A CN 109818882 A CN109818882 A CN 109818882A CN 201910133155 A CN201910133155 A CN 201910133155A CN 109818882 A CN109818882 A CN 109818882A
- Authority
- CN
- China
- Prior art keywords
- message
- qos
- policy
- flow template
- application specific
- 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
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- 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/20—Traffic policing
-
- 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/14—Session management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请供一种执行QoS策略的方法及装置,包括:在报文进入预设转发流程之前,根据报文特征判断是否匹配流模板;若匹配则获取对应的会话结构体,在其尾部加入QoS专用结构体;获取流模板对应的QoS策略,将翻译得到的策略信息填入QoS专用结构体;报文进入预设转发流程后将QoS专用结构体中的策略信息附加到报文上,以使网络设备的交换芯片执行QoS策略。这样将匹配流模板翻译策略与执行策略动作分开,通过处理器匹配流模板翻译策略动作,通过交换芯片执行策略动作,既利用了处理器可执行较复杂的软件代码的优点,也利用了交换芯片执行效率高的优点,将两者的优势结合,有效提升了QoS策略的执行效率,也缓解了处理器的压力。
Description
技术领域
本申请涉及网络通信技术领域,特别涉及一种执行QoS策略的方法及装置。
背景技术
随着网络技术的高速发展,网络中承载的数据流量也越来越大,而带宽资源是有限的,这就对网络通信管理提出了更高的要求,当网络出现拥塞的时候,需要保证重要的业务不受延迟或者不被丢弃,在这样的应用场景下,QoS技术应运而生。QoS(Quality ofService,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好服务的能力,是网络的一种安全机制,其中包含了QoS策略功能,是用来解决网络延迟和阻塞等问题的一种技术。
在现有技术中,QoS策略主要通过网络设备(主要指非交换机的网络设备,例如防火墙等)的CPU实现,CPU根据策略行为对每队列中的报文进行调度或限速等功能。
然而,发明人在实现本发明的过程中发现,QoS匹配策略入队及执行策略出队均由CPU实现,对CPU性能要求较高,当流量较大时,CPU负载达到阈值,将导致一系列未知问题,使网络设备的转发性能下降,策略的执行效率降低。此外,当开启QoS策略时对CPU负载的影响是十分巨大的,CPU需要对每个报文进行处理,尤其是报文的入队与出队过程,进而影响到各类业务的稳定性。
发明内容
有鉴于此,本申请提供一种执行QoS策略的方法及装置,以有效提升QoS策略的执行效率。
具体地,本申请是通过如下技术方案实现的:
一种执行QoS策略的方法,所述方法用于网络设备;所述方法包括:
在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板;
如果所述报文匹配所述流模板,则获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体;
获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体;
当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
一种执行QoS策略的装置,所述装置用于网络设备;所述装置包括:
报文匹配模块,用于在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板;
会话处理模块,用于当所述报文匹配所述流模板时,获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体;
策略翻译模块,用于获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体;
报文处理模块,用于当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
由以上本申请提供的技术方案可见,在本申请的方案中,报文进入预设转发流程之前,由网络设备的处理器根据所述报文的特征对报文进行流模板匹配,匹配上后获取所述报文对应的网络会话的会话结构体,然后在所述会话结构体的尾部加入QoS专用结构体,再获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体。这样当所述报文重新进入所述预设转发流程后,网络设备的处理器便可将所述QoS专用结构体中的所述策略信息附加到所述报文上,使得网络设备的交换芯片可以直接执行所述QoS策略。本方案中将匹配流模板翻译策略与执行策略动作这两部分分开处理,通过处理器匹配流模板翻译策略动作,通过交换芯片执行策略动作,既利用了处理器可执行较复杂的软件代码、实现灵活的流模板和策略定制的优点,规避了其入队出队高消耗操作、性能较低的缺点,也利用了交换芯片执行效率高的优点,规避了其灵活性差的缺点,这样将两者的优势结合,在提升性能的同时也保障了策略的灵活性,有效提升了QoS策略的执行效率。而且处理器仅负责识别流量特征但不执行具体的策略动作,不涉及入队出队高消耗操作,可以有效缓解网络设备的处理器的压力。
附图说明
图1为本申请示出的一种执行QoS策略的方法的流程图;
图2为本申请示出的网络设备中CPU与交换芯片的示意图;
图3为本申请示出的流模板示意图;
图4为本申请示出的数据流示意图;
图5为本申请示出的QoS策略流程图;
图6为本申请示出的一种执行QoS策略的装置的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
请参见图1,图1为本申请示出的一种执行QoS策略的方法的流程图。该方法可用于网络设备,例如防火墙等各类网络设备(非交换机)。作为示例,在一些场景中,该方法具体可由网络设备的处理器如CPU来执行,该CPU支持基本QoS策略。
同时,网络设备一般是具有交换芯片的。作为示例可参见图2所示,图2为本申请示出的网络设备中CPU与交换芯片的示意图。交换芯片通常是支持基本QoS功能的,例如基于队列的基本限速、调度、带宽保证等,芯片QoS的实现是报文在入接口入队,出接口出队,虽然芯片QoS不能像软件QoS一样可以实现灵活的流模板和策略定制,但是性能很高,误差也比较小,本发明利用的就是这一点,即通过软件将QoS策略“翻译”成芯片可以识别的信息,在芯片出接口同时完成入队/出队操作。
如图1所示,所述方法可以包括:
步骤S101,在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板。
对于预设转发流程本实施例并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。作为示例,在一些场景中,预设转发流程可以是快速转发(快转)流程,而本实施例中需要先禁用该快速转发流程,使报文重走慢转流程,以便CPU进行匹配策略的处理。换句话说,在本实施例中,报文进入网络设备后,交换芯片不需要进行任何操作,而是先将报文上送至CPU处理,进入慢转流程。
流模板是报文匹配策略的依据,报文进入设备后根据流模板信息入队归类。对于流模板的具体内容,本实施例也并不进行限制,本领域技术人员可以根据不同需求\不同场景而自行选择、设计,可以在此处使用的这些选择和设计都没有背离本发明的精神和保护范围。
作为示例,在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还可以包括:
预先配置所述QoS流模板。
图3为本申请示出的流模板示意图,可以基于协议名称、源端口范围、目的端口范围来配置流模板,也即可以根据报文的协议名称、源端口、目的端口来判断一个报文是否与流模板相匹配。
作为示例,在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还可以包括:
预先配置QoS策略,以及,将策略动作下发到所述交换芯片。
除了配置流模板之外,还可以预先配置QoS策略,然后将策略动作下发到芯片。策略需要基于物理端口配置,芯片仅知道执行策略的端口以及策略内容,由于芯片不支持匹配流模板,所以芯片并不知道如何将报文入队。策略动作下发完毕后需要禁用快速转发流程,使报文重走慢转流程,以便匹配策略。
步骤S102,如果所述报文匹配所述流模板,则获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体。
会话(session),代表服务器与用户的一次会话过程,这个过程可以是连续的,也可以时断时续的。例如打开客户端浏览器发送第一次请求时,服务器会自动为其创建一个session,并赋予其一个sessionID,发送给客户端的浏览器。以后客户端继续请求本应用中其他资源的时候,就会收到session ID,并根据ID在内存中找到之前创建的session对象,提供给请求使用,该通信过程就是网络会话。
通常每个网络会话都会有一个专属的会话结构体,可以找到这个结构体,并在这个会话结构体的尾部加入QoS专用结构体。
容易理解的是,对于具有同一特征的多个报文,并不需要收到每个报文后都在对应的会话结构体的尾部加入QoS专用结构体,而是只需加入一次即可,下次收到同一特征的报文后,如果之前会话结构体的尾部已加入了QoS专用结构体,则无需重复加入。
此外在一些情况下,报文对应的网络会话可能还未建立,所以报文在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还可以包括:
检测基于所述报文的网络会话是否已经建立;
如果所述网络会话已建立,则允许执行后续步骤。
CPU收到报文后,检测基于该报文的网络会话是否已经建立,如果已经建立,CPU根据流模板对报文特征进行匹配,当报文特征符合预设的流模板时,则认为此条流量命中该条流模板,如果会话没有建立,则可以不执行任何操作,或按其他策略进行处理。
步骤S103,获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体。
策略的配置十分灵活,是可以实现私有定制的,如可以基于时间段、五元组、流量类型等元素进行配置,之后根据流量特征与策略进行匹配,对流量进行分类入队。
作为示例在本实施例或本发明其他某些实施例中,所述QoS策略的内容可以包括:
将所述报文映射到指定队列,基于所述指定队列进行调度。
对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体,可以包括:
获取所述QoS策略中指定队列信息,根据所述指定队列信息将所述QoS专用结构体中的映射队列字段置位。
步骤S104,当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
在本步骤中,流量重新经过快速转发流程,CPU查询到该条流量的会话结构体,对于同一条流量来讲该会话结构体是一致的(即会话与会话结构体一一对应),在该结构体中找到QoS专用结构体。
然后获取QoS专用结构体中的映射队列字段,将映射队列信息填写到报文的哈希头中,例如需要将该条流量映射到3队列,则填写为3。
也即在本实施例或本发明其他某些实施例中,将所述QoS专用结构体中的所述策略信息附加到所述报文上,可以包括:
获取所述QoS专用结构体中映射队列字段的信息,将所述映射队列字段的信息填写到所述报文的哈希头中。
而到了交换芯片一侧,流量找到出接口,交换芯片根据报文哈希头中的映射队列信息将报文入队,剥离哈希头,芯片执行之前中已经下发的策略动作,完成整个策略。
换句话说,作为示例,使所述网络设备的交换芯片执行所述QoS策略,具体可以包括:
使所述网络设备的交换芯片在出接口处剥离所述哈希头,根据所述哈希头的内容执行策略对应的动作。
整个过程中的数据流示意图可参见图4所示。在图4中,报文进入网络设备后,交换芯片先不做处理,而是先将报文上送至CPU处理,进入慢转流程。CPU负责完成流模板匹配等较为复杂的软件QoS处理。软件代码十分灵活,可以根据流量特征匹配流模板,如识别BT下载流量、视频流量、办公流量等,这些都是交换芯片QoS无法识别的具体流量特征,故进交换芯片也无法直接根据流量特征执行策略。CPU处理完成后,报文重新回到交换芯片,在芯片出接口同时完成入队/出队操作。
在本实施例方案中,报文进入预设转发流程之前,由网络设备的处理器根据所述报文的特征对报文进行流模板匹配,匹配上后获取所述报文对应的网络会话的会话结构体,然后在所述会话结构体的尾部加入QoS专用结构体,再获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体。这样当所述报文重新进入所述预设转发流程后,网络设备的处理器便可将所述QoS专用结构体中的所述策略信息附加到所述报文上,使得网络设备的交换芯片可以直接执行所述QoS策略。本方案中将匹配流模板翻译策略与执行策略动作这两部分分开处理,通过处理器匹配流模板翻译策略动作,通过交换芯片执行策略动作,既利用了处理器可执行较复杂的软件代码、实现灵活的流模板和策略定制的优点,规避了其入队出队高消耗操作、性能较低的缺点,也利用了交换芯片执行效率高的优点,规避了其灵活性差的缺点,这样将两者的优势结合,在提升性能的同时也保障了策略的灵活性,有效提升了QoS策略的执行效率。而且处理器仅负责识别流量特征但不执行具体的策略动作,不涉及入队出队高消耗操作,可以有效缓解网络设备的处理器的压力。
下面再结合具体应用场景对本发明方案作进一步描述。当然以下应用场景为例仅为示例性的,在实际应用中,也可以适用于其它应用场景。
请参见图5,图5为本申请示出的QoS策略流程图,可分为两个阶段。
步骤S501,配置QoS流模板\策略。流模板是报文匹配策略的依据,报文进入设备后根据流模板信息入队归类。
步骤S502,将策略动作下发至芯片。策略需要基于物理端口配置,此时芯片仅知道执行策略的端口以及策略内容,由于芯片不支持匹配流模板,所以芯片并不知道如何将报文入队,策略动作下发完毕后需要禁用快速转发,使报文重走慢转流程,以便匹配策略。
步骤S503,将报文上送至CPU处理。报文进入设备后芯片不需要进行任何操作,将报文上送至CPU处理,进入慢转流程。
步骤S504,查询会话是否已建立。CPU收到报文后检测基于该报文的网络会话是否已经建立,如果已经建立,则进入步骤S505,如果会话没有建立,则不执行任何操作,第一阶段结束。
步骤S505,判断是否匹配流模板。CPU根据流模板对报文特征进行匹配,当报文特征符合预设的流模板时,则认为此条流量命中该条流模板,进入步骤S506,否则第一阶段结束。
步骤S506,翻译QoS策略动作填入QoS专用结构体。QoS策略是基于流模板配置的,所以可以找到这条流模板对应的QoS策略,根据策略内容进行翻译,例如若策略是将报文映射到某队列,并基于队列进行调度,则将QoS专用结构体中的映射队列字段置位。
步骤S507,收包进入快速转发流程。流量重新经过快速转发流程,查询到该条流量的会话结构体。
步骤S508,判断会话结构体中是否有QoS专用结构体。如果有QoS专用结构体,则进入步骤S509,否则第二阶段结束。
步骤S509,将QoS专用结构体中的策略信息填入哈希头。获取QoS专用结构体中的映射队列字段,将映射队列信息填写到报文的哈希头中(例如需要将该条流量映射到3队列,则填写为3)。
步骤S510,芯片出口根据哈希头内容执行策略并删除哈希头。流量找到出接口,芯片根据报文哈希头中的映射队列信息将报文入队,剥离哈希头,芯片执行步骤S502中已经下发的策略动作,完成整个策略。
在本实施例方案中,报文进入预设转发流程之前,由网络设备的处理器根据所述报文的特征对报文进行流模板匹配,匹配上后获取所述报文对应的网络会话的会话结构体,然后在所述会话结构体的尾部加入QoS专用结构体,再获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体。这样当所述报文重新进入所述预设转发流程后,网络设备的处理器便可将所述QoS专用结构体中的所述策略信息附加到所述报文上,使得网络设备的交换芯片可以直接执行所述QoS策略。本方案中将匹配流模板翻译策略与执行策略动作这两部分分开处理,通过处理器匹配流模板翻译策略动作,通过交换芯片执行策略动作,既利用了处理器可执行较复杂的软件代码、实现灵活的流模板和策略定制的优点,规避了其入队出队高消耗操作、性能较低的缺点,也利用了交换芯片执行效率高的优点,规避了其灵活性差的缺点,这样将两者的优势结合,在提升性能的同时也保障了策略的灵活性,有效提升了QoS策略的执行效率。而且处理器仅负责识别流量特征但不执行具体的策略动作,不涉及入队出队高消耗操作,可以有效缓解网络设备的处理器的压力。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参见图6,图6为本申请示出的一种执行QoS策略的装置的示意图。该装置可用于网络设备,例如防火墙等各类网络设备(非交换机)。所述装置可以包括:
报文匹配模块601,用于在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板。
作为示例,在一些场景中,预设转发流程可以是快速转发(快转)流程,而本实施例中需要先禁用该快速转发流程,使报文重走慢转流程,以便CPU进行匹配策略的处理。换句话说,在本实施例中,报文进入网络设备后,交换芯片不需要进行任何操作,而是先将报文上送至CPU处理,进入慢转流程。
会话处理模块602,用于当所述报文匹配所述流模板时,获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体。
通常每个网络会话都会有一个专属的会话结构体,可以找到这个结构体,并在这个会话结构体的尾部加入QoS专用结构体。
策略翻译模块603,用于获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体;
策略的配置十分灵活,是可以实现私有定制的,如可以基于时间段、五元组、流量类型等元素进行配置,之后根据流量特征与策略进行匹配,对流量进行分类入队。
报文处理模块604,用于当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
到了交换芯片一侧,流量找到出接口,交换芯片根据报文哈希头中的映射队列信息将报文入队,剥离哈希头,芯片执行之前中已经下发的策略动作,完成整个策略。
作为示例在本实施例或本发明其他某些实施例中:
所述QoS策略的内容包括:将所述报文映射到指定队列,基于所述指定队列进行调度;
所述策略翻译模块在对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体时,具体用于:获取所述QoS策略中指定队列信息,根据所述指定队列信息将所述QoS专用结构体中的映射队列字段置位;
所述报文处理模块在将所述QoS专用结构体中的所述策略信息附加到所述报文上时,具体用于:获取所述QoS专用结构体中映射队列字段的信息,将所述映射队列字段的信息填写到所述报文的哈希头中。
作为示例在本实施例或本发明其他某些实施例中,以使所述网络设备的交换芯片执行所述QoS策略,包括:
以使所述网络设备的交换芯片在出接口处剥离所述哈希头,根据所述哈希头的内容执行策略对应的动作。
作为示例在本实施例或本发明其他某些实施例中,所述装置还可以包括:
会话存在判断模块,用于在所述报文匹配模块根据所述报文的特征判断所述报文是否匹配预设的流模板之前,检测基于所述报文的网络会话是否已经建立;如果所述网络会话已建立,则允许触发所述报文匹配模块。
作为示例在本实施例或本发明其他某些实施例中,所述装置还可以包括:
第一预处理模块,用于在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,预先配置所述QoS流模板。
作为示例在本实施例或本发明其他某些实施例中,所述装置还可以包括:
第二预处理模块,用于预先配置QoS策略,以及,将策略动作下发到所述交换芯片。
在本实施例方案中,报文进入预设转发流程之前,由网络设备的处理器根据所述报文的特征对报文进行流模板匹配,匹配上后获取所述报文对应的网络会话的会话结构体,然后在所述会话结构体的尾部加入QoS专用结构体,再获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体。这样当所述报文重新进入所述预设转发流程后,网络设备的处理器便可将所述QoS专用结构体中的所述策略信息附加到所述报文上,使得网络设备的交换芯片可以直接执行所述QoS策略。本方案中将匹配流模板翻译策略与执行策略动作这两部分分开处理,通过处理器匹配流模板翻译策略动作,通过交换芯片执行策略动作,既利用了处理器可执行较复杂的软件代码、实现灵活的流模板和策略定制的优点,规避了其入队出队高消耗操作、性能较低的缺点,也利用了交换芯片执行效率高的优点,规避了其灵活性差的缺点,这样将两者的优势结合,在提升性能的同时也保障了策略的灵活性,有效提升了QoS策略的执行效率。而且处理器仅负责识别流量特征但不执行具体的策略动作,不涉及入队出队高消耗操作,可以有效缓解网络设备的处理器的压力。
关于上述实施例中的装置,其中各个单元\模块执行操作的具体方式已经在相关方法的实施例中进行了详细描述,此处不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (12)
1.一种执行QoS策略的方法,其特征在于,所述方法用于网络设备;所述方法包括:
在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板;
如果所述报文匹配所述流模板,则获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体;
获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体;
当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
2.根据权利要求1所述的方法,其特征在于:
所述QoS策略的内容包括:将所述报文映射到指定队列,基于所述指定队列进行调度;
对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体,包括:获取所述QoS策略中指定队列信息,根据所述指定队列信息将所述QoS专用结构体中的映射队列字段置位;
将所述QoS专用结构体中的所述策略信息附加到所述报文上,包括:获取所述QoS专用结构体中映射队列字段的信息,将所述映射队列字段的信息填写到所述报文的哈希头中。
3.根据权利要求2所述的方法,其特征在于,使所述网络设备的交换芯片执行所述QoS策略,包括:
使所述网络设备的交换芯片在出接口处剥离所述哈希头,根据所述哈希头的内容执行策略对应的动作。
4.根据权利要求1所述的方法,其特征在于,在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还包括:
检测基于所述报文的网络会话是否已经建立;
如果所述网络会话已建立,则允许执行后续步骤。
5.根据权利要求1所述的方法,其特征在于,在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还包括:
预先配置所述QoS流模板。
6.根据权利要求1所述的方法,其特征在于,在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,所述方法还包括:
预先配置QoS策略,以及,将策略动作下发到所述交换芯片。
7.一种执行QoS策略的装置,其特征在于,所述装置用于网络设备;所述装置包括:
报文匹配模块,用于在报文进入预设转发流程之前,根据所述报文的特征判断所述报文是否匹配预设的流模板;
会话处理模块,用于当所述报文匹配所述流模板时,获取所述报文对应的网络会话的会话结构体,在所述会话结构体的尾部加入QoS专用结构体;
策略翻译模块,用于获取所述流模板对应的QoS策略,对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体;
报文处理模块,用于当所述报文进入所述预设转发流程后,将所述QoS专用结构体中的所述策略信息附加到所述报文上,以使所述网络设备的交换芯片执行所述QoS策略。
8.根据权利要求7所述的装置,其特征在于:
所述QoS策略的内容包括:将所述报文映射到指定队列,基于所述指定队列进行调度;
所述策略翻译模块在对所述QoS策略进行翻译后将得到的策略信息填入所述QoS专用结构体时,具体用于:获取所述QoS策略中指定队列信息,根据所述指定队列信息将所述QoS专用结构体中的映射队列字段置位;
所述报文处理模块在将所述QoS专用结构体中的所述策略信息附加到所述报文上时,具体用于:获取所述QoS专用结构体中映射队列字段的信息,将所述映射队列字段的信息填写到所述报文的哈希头中。
9.根据权利要求8所述的装置,其特征在于,以使所述网络设备的交换芯片执行所述QoS策略,包括:
以使所述网络设备的交换芯片在出接口处剥离所述哈希头,根据所述哈希头的内容执行策略对应的动作。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
会话存在判断模块,用于在所述报文匹配模块根据所述报文的特征判断所述报文是否匹配预设的流模板之前,检测基于所述报文的网络会话是否已经建立;如果所述网络会话已建立,则允许触发所述报文匹配模块。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一预处理模块,用于在根据所述报文的特征判断所述报文是否匹配预设的流模板之前,预先配置所述QoS流模板。
12.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二预处理模块,用于预先配置QoS策略,以及,将策略动作下发到所述交换芯片。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910133155.5A CN109818882B (zh) | 2019-02-22 | 2019-02-22 | 一种执行QoS策略的方法及装置 |
US16/727,094 US11228532B2 (en) | 2019-02-22 | 2019-12-26 | Method of executing QoS policy and network device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910133155.5A CN109818882B (zh) | 2019-02-22 | 2019-02-22 | 一种执行QoS策略的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109818882A true CN109818882A (zh) | 2019-05-28 |
CN109818882B CN109818882B (zh) | 2022-11-01 |
Family
ID=66607169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910133155.5A Active CN109818882B (zh) | 2019-02-22 | 2019-02-22 | 一种执行QoS策略的方法及装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11228532B2 (zh) |
CN (1) | CN109818882B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111277569A (zh) * | 2020-01-10 | 2020-06-12 | 北京融信易安信息技术有限公司 | 一种网络报文解码方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080075128A1 (en) * | 2006-09-25 | 2008-03-27 | Futurewei Technologies, Inc. | Inter-Packet Gap Network Clock Synchronization |
CN105227465A (zh) * | 2014-06-23 | 2016-01-06 | 杭州迪普科技有限公司 | 一种cpu代理方法以及网络设备 |
CN108040019A (zh) * | 2017-12-21 | 2018-05-15 | 杭州迪普科技股份有限公司 | 报文转发的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140092740A1 (en) * | 2012-09-29 | 2014-04-03 | Ren Wang | Adaptive packet deflection to achieve fair, low-cost, and/or energy-efficient quality of service in network on chip devices |
US10028167B2 (en) * | 2015-03-08 | 2018-07-17 | Alcatel-Lucent Usa Inc. | Optimizing quality of service in a content distribution network using software defined networking |
-
2019
- 2019-02-22 CN CN201910133155.5A patent/CN109818882B/zh active Active
- 2019-12-26 US US16/727,094 patent/US11228532B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080075128A1 (en) * | 2006-09-25 | 2008-03-27 | Futurewei Technologies, Inc. | Inter-Packet Gap Network Clock Synchronization |
CN105227465A (zh) * | 2014-06-23 | 2016-01-06 | 杭州迪普科技有限公司 | 一种cpu代理方法以及网络设备 |
CN108040019A (zh) * | 2017-12-21 | 2018-05-15 | 杭州迪普科技股份有限公司 | 报文转发的方法及装置 |
Non-Patent Citations (1)
Title |
---|
钟代军等: "以太网中交换设备安全性能主要技术分析与对策", 《计算机科学》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111277569A (zh) * | 2020-01-10 | 2020-06-12 | 北京融信易安信息技术有限公司 | 一种网络报文解码方法、装置及电子设备 |
CN111277569B (zh) * | 2020-01-10 | 2022-08-16 | 北京融信易安信息技术有限公司 | 一种网络报文解码方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20200274816A1 (en) | 2020-08-27 |
CN109818882B (zh) | 2022-11-01 |
US11228532B2 (en) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ishimori et al. | Control of multiple packet schedulers for improving QoS on OpenFlow/SDN networking | |
US8300772B2 (en) | Method and apparatus for emergency call processing | |
JP5594970B2 (ja) | セッション開始プロトコルメッセージを優先度付けするシステム及び方法 | |
KR100454502B1 (ko) | 아이피 라우터에서 VoIP 트래픽에 대한 QoS를제공하는 장치 및 포워딩방법 | |
Barzilai et al. | Design and implementation of an RSVP-based quality of service architecture for an integrated services Internet | |
WO2019214561A1 (zh) | 一种报文发送的方法、网络节点和系统 | |
EP2279590A1 (en) | Calculating packet delay in a multihop ethernet network | |
US8462634B2 (en) | System and method for automatically adapting audio packet marking in a packet network | |
US20240069977A1 (en) | Data transmission method and data transmission server | |
RU2013103496A (ru) | Способ, устройство и система для перенаправления данных в системе связи | |
WO2020177383A1 (zh) | 数据流处理方法及相关设备 | |
CN109684269A (zh) | 一种pcie交换芯片内核及工作方法 | |
TW200845775A (en) | Message ordering for network based mobility management systems | |
CN102638582A (zh) | 数据通信方法及通信端 | |
WO2016082603A1 (zh) | 一种调度器及调度器的动态复用方法 | |
WO2024021414A1 (zh) | 数据传输 | |
JP3830937B2 (ja) | 高速パケット網のためのパケットスケジューリングシステム及び方法 | |
CN109818882A (zh) | 一种执行QoS策略的方法及装置 | |
US10348785B2 (en) | Apparatus for call management and method thereof | |
Weinrank et al. | Webrtc data channels | |
CN110063048A (zh) | 用于对由一组用户实现的计算机应用进行优先化的系统 | |
JP2007329617A (ja) | 通信制御処理実行方法およびシステム、ならびにそのプログラム | |
WO2021101610A1 (en) | Latency guarantee for data packets in a network | |
US7466653B1 (en) | Quality of service for a stackable network switch | |
Chen et al. | Credit-based low latency packet scheduling algorithm for real-time applications |
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 |