CN109768927B - 一种HQoS实现方法及装置 - Google Patents
一种HQoS实现方法及装置 Download PDFInfo
- Publication number
- CN109768927B CN109768927B CN201910100702.XA CN201910100702A CN109768927B CN 109768927 B CN109768927 B CN 109768927B CN 201910100702 A CN201910100702 A CN 201910100702A CN 109768927 B CN109768927 B CN 109768927B
- Authority
- CN
- China
- Prior art keywords
- message
- target
- queue
- type
- scheduling
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种HQoS实现方法及装置,该方法包括:当接收到报文时,确定报文匹配的目标队列标识;当目标队列标识为第一类型队列标识时,将报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带所述目标队列标识;当报文到达报文的出端口所在交换芯片的内部环回口时,将报文的第一系统头的目的信息设置为目标队列标识;当通过报文的出端口转发报文时,根据目标队列标识查询报文的出端口上应用的调度策略,并根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度。应用本发明实施例可以降低应用HQoS策略的端口数对HQoS策略应用的限制,扩展HQoS的应用场景。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种HQoS实现方法及装置。
背景技术
HQoS(Hierarchical Quality of Service,分层服务质量)采用分层调度的方式,细化业务流量分类,针对不同的用户和业务来提供服务质量保证。
如图1所示,HQoS采用树状分层调度模型。该模型中,最底层为叶子节点,中间层为分支节点,最顶层为根节点。在接口接收到报文后,HQoS自下而上对报文进行调度。每个叶子节点分别对应一个系统预定义FC(Forwarding Class,转发类),系统预定义FC即为一个调度队列,例如图中的BE(Best Effort,尽力而为的业务)、AF(Assured,对传输质量有保证的业务)和NC(Network Control,最高优先级的业务)。接口收到报文后,根据报文的用户优先级的值查找优先级映射表,将报文放入对应的预定义FC中。每个分支节点分别对应一个FG(Forwarding Group,转发组),一个转发组嵌套多个转发组或预定义转发类。在转发组的嵌套中,进行嵌套的转发组被称为父分支节点,被嵌套的转发组称为子分支节点。根节点为SP(Scheduler Policy,调度策略),调度策略嵌套多个转发组。调度策略SP应用到接口后,可以根据嵌套关系,对接口的流量进行由叶子节点到根节点的分层调度。
然而实践发现,目前的HQoS实现方案中,每个叶子节点对应一个队列,当叶子节点数量较多时,对应的队列个数相应也会较多;当应用HQoS策略端口的数量较多时,如将HQoS应用于包括多个线卡的框式堆叠设备,其队列数量可能会超出交换芯片的规格,导致HQoS应用场景受限。
发明内容
本发明提供一种HQoS实现方法及装置,以解决现有HQoS实现方案中无法当应用HQoS策略的端口过多时,队列数量会超出交换芯片的规格的问题。
根据本发明实施例的第一方面,提供一种HQoS实现方法,包括:
当接收到报文时,确定所述报文匹配的目标队列标识;
当所述目标队列标识为第一类型队列标识时,将所述报文的第一系统头的目的信息设置为目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述目标第二类型队列标识为所述报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识;
当所述报文到达所述报文的出端口所在交换芯片的内部环回口时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
当通过所述报文的出端口转发所述报文时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略,并根据所述调度策略中与所述目标队列标识匹配的分级调度方式对所述报文进行分级调度。
根据本发明实施例的第二方面,提供一种分层服务质量HQoS实现装置,包括:
接收单元,用于接收报文;
确定单元,用于当所述接收单元接收到报文时,确定所述报文匹配的目标队列标识;
报文处理单元,用于当所述目标队列标识为第一类型队列标识时,将所述报文的第一系统头的目的信息设置为目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述目标第二类型队列标识为所述报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识;
所述报文处理单元,还用于当所述报文到达所述报文的出端口所在交换芯片的内部环回口时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
查询单元,用于当通过所述报文的出端口转发所述报文时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略;
调度单元,用于根据所述调度策略中与所述目标队列标识匹配的分级调度方式对所述报文进行分级调度。
应用本发明公开的技术方案,通过将队列资源划分为第一类型队列资源以及第二类型队列资源,将本地队列资源用于HQoS调度,分配给交换芯片上各应用HQoS策略的接口上应用HQoS策略的用户,并为各交换芯片设置内部环回口,且为各交换芯片的内部环回口分配全局队列资源,当接收到报文时,确定所述报文匹配的目标队列标识,若该目标队列标识为第一类型队列标识,则将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识,当通过该报文的出端口对该报文进行转发时,将该报文的第一系统头的目的信息设置为目标队列标识,并根据目标队列标识查询报文的出端口上应用的调度策略,进而,根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度,降低了应用HQoS策略的端口数对HQoS策略应用的限制,扩展了HQoS的应用场景。
附图说明
图1是一种树状分层调度模型的示意图;
图2是本发明实施例提供的一种HQoS实现方法的流程示意图;
图3是本发明实施例提供的一种应用场景的示意图;
图4是本发明实施例提供的另一种应用场景的示意图;
图5是本发明实施例提供的一种HQoS实现装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
请参见图2,为本发明实施例提供的一种HQoS实现方法的流程示意图,其中,该HQoS实现方法可以应用于交换设备,如交换机或其他使用交换芯片的设备(如使用交换芯片的路由器),如图2所示,该HQoS实现方法可以包括以下步骤:
为了便于描述和理解,以下以步骤201~203的执行主体为交换机为例进行说明。
步骤201、当接收到报文时,确定报文匹配的目标队列标识。
本发明实施例中,交换机确定接收到的报文匹配的队列标识(本文中称为目标队列标识)的具体实现将在下文中结合具体实例进行说明,本发明实施例在此不做赘述。
其中,该报文可以为二层报文或三层报文。
步骤202、当目标队列标识为第一类型队列标识时,将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识;其中,目标第二类型队列标识为该报文的出端口所在交换芯片的内部环回口上分配第二类型队列标识。
本发明实施例中,为了降低应用HQoS策略的端口数量对HQoS应用场景的限制,可以将交换设备支持的队列资源中预留一部分作为本地队列资源,该部分本地资源可以分配给应用HQoS策略的用户。
其中,对于交换设备的不同交换芯片,其分配的本地队列资源可以相同,即不同交换芯片上可以允许存在相同的本地队列标识(LocQueID,本文中称为第一类型队列标识),同一交换芯片上分配的第一类型队列标识互不相同。
进一步地,考虑到不同交换芯片上可能存在相同的第一类型队列标识,因此,根据第一类型队列标识可能无法准确对交换芯片进行定位,因此,对于交换设备的各交换设备,还可以分别设置内部环回口,并为各交换芯片的内部环回口分配全局队列资源。
其中,该全局队列资源可以为交换设备支持的队列资源中除本地队列资源之外的部分或全部队列资源;对于交换设备的不同交换芯片或同一交换芯片内,分配的全局队列资源互不相同,即同一交换设备上不允许存在相同的全局队列标识(GlobalQueID,本文中称为第二类型队列标识)。
需要说明的是,在本发明实施例中,交换设备上的任一交换芯片,可以设置一个或多个内部环回口,下文中为便于说明,以一个交换芯片上设置一个内部环回口为例,一个交换芯片上设置多个内部环回口的实现同理可得。
本发明实施例中,当交换机确定接收到的报文匹配的目标队列标识为第一类型队列标识时,为了准确使报文能够准确定向至报文的出端口所在交换芯片,可以将报文的系统头(本文中称为第一系统头)的目标信息设置为报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识(本文中称为第二类型队列标识),并在报文的第二系统头中携带报文匹配的目标队列标识。
其中,该第一系统头和第二系统头可以为同一个系统头,也可以为不同系统头。
步骤203、当报文到达报文的出端口所在交换芯片的内部环回口时,将报文的第一系统头的目的信息设置为目标队列标识。
本发明实施例中,报文在交换设备内部传输时,交换设备可以根据该报文的第一系统头的目的信息确定该报文的出端口所在交换芯片,并将该报文传输至出端口所在交换芯片的内部环回口。
报文到达出端口所在交换芯片的内部环回口时,可以进行内部环回处理,在该过程中,交换设备可以将该报文的第一系统头的目的信息设置为第二系统头中携带的目标队列标识。
在本发明实施例中,可以通过ACL方式实现报文系统头的目的信息的更新,将报文指向系统头中携带的第一类型队列标识,从而实现出端口的分级调度。
相应地,在本发明其中一个实施例中,交换芯片的内部环回口上下发有目标ACL(Access Control List,访问控制策略)表项,该目标ACL表项的匹配项为报文的第一系统头的目的信息为交换芯片的内部环回口上分配的第二类型队列标识,目标ACL表项的动作项为将与匹配项匹配的报文的第一系统头的目的信息修改为第二系统头中携带的第一类型队列标识。
在该实施例中,交换设备将报文定向至出端口所在交换芯片的内部环回口之后,可以根据该报文查询该交换芯片的内部环回口上下发的目标ACL表项,由于该报文的第一系统头中的目的信息为该交换芯片的内部环回口上分配的第二类型队列标识,因此,可以确定该报文与该目标ACL表项的匹配项匹配,此时,交换设备可以将获取该报文的第二系统头中携带的第一类型队列标识(即上述目标队列标识),并将该报文的第一系统头的目的信息设置为该目标队列标识,进而,在通过报文的出端口对报文进行转发时,根据该目标队列标识确定该报文匹配的分级调度方式。
需要说明的是,在本发明实施例中,报文的系统头仅用于报文在交换设备内部传输,当需要通过报文的出端口对报文进行转发时,需要将报文的系统头删除,其具体实现在此不做赘述。
此外,在本发明实施例中,对于一个交换芯片上设置多个内部环回口的实现方案,可以在交换芯片的各内部环回口上均下发上述目标ACL表项,当交换设备接收到报文,且确定报文匹配的目标队列标识为第一类型队列标识时,可以将该报文的第一系统头的目的信息设置为报文出端口所在交换芯片上的任一内部环回口上分配的第二类型队列标识,其具体实现在此不做赘述。
在一个示例中,对于流量较大的交换芯片,为了减低内部环回口的流量处理压力,交换芯片上可以设置多个内部环回口,并设置交换芯片上各接口(外部接口)与内部环回口的对应关系。
例如,假设交换芯片上有20个接口(假设包括接口1~20),则可以在交换芯片上设置2个内部环回口,其中一个内部环回口对应接口1~10,另外一个内部环回口对应接口11~20。
在该示例中,当交换机确定报文的目标队列标识为第一类型队列标识时,可以根据交换芯片上接口与内部环回口的对应关系,将报文的第一系统头的目标信息设置为报文的出端口所在交换芯片上与该出端口对应的内部环回口上分配的第二类型队列标识(本文中称为第一目标第二类型队列标识),将报文的第一系统头的目标信息设置为第一目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识。
步骤204、当通过报文的出端口转发该报文时,根据目标队列标识查询报文的出端口上应用的调度策略,并根据该调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度。
本发明实施例中,当通过报文的出端口转发该报文时,交换设备可以根据第一系统头中的目的信息(即目标队列标识)查询出端口上应用的调度策略,并根据该调度策略中与目标队列标识匹配的分级调度方式对该报文进行分级调度。
在本发明其中一个实施例中,上述分级调度方式可以包括用户组调度方式、用户调度方式以及业务调度方式;
相应地,上述根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度,可以包括:
依次根据用户组调度方式、用户调度方式以及业务调度方式对三层报文进行调度。
在该实施例中,以“用户组”-“用户”-“业务”三级调度结构为例。
举例来说,对于Service(服务)-VLAN(Virtual Local Area Network,虚拟局域网),一个用户对应一个VLAN域,一个VLAN域可以包括一个VLAN或多个VLAN;一个用户组可以包括多个用户(对应多个VLAN域);一个用户的不同优先级的报文对应不同的业务。
又举例来说,对于QoS-Local-ID(QoS本地标识)组网,一个QoS-Local-ID对应一个用户,多个QoS-Local-ID对应一个用户组,对于同一个用户的报文,不同优先级对应不同业务,即“QoS-Local-ID+优先级”对应业务。
相应地,分级调度方式可以包括用户组调度方式、用户调度方式以及业务调度方式。
在该实施例中,交换机可以根据目标队列标识查询报文的出端口上应用的调度策略,以确定匹配的分级调度方式。
具体地,交换机可以根据该目标队列标识确定该报文所属的用户组(本文中称为目标用户组),并从该出端口上应用的目标调度策略中查询该目标用户组对应的用户组调度方式,并利用该用户组调度方式对该报文进行调度。
进一步地,交换机还可以根据该目标队列标识确定该报文对应的用户调度方式,并根据该用户调度方式对该报文进行调度。
最终,交换机还可以根据该目标队列标识以及该报文中的优先级信息,确定该报文对应的业务调度方式,并根据该业务调用方式对该报文进行调度。
即交换机可以依次根据用户组调度方式、用户调度方式以及业务调度方式对该报文进行调度,实现对报文的分级调度。
可见,在图2所示方法流程中,通过将队列资源划分为第一类型队列资源(即本地队列资源)以及第二类型队列资源(即全局队列资源),将本地队列资源用于HQoS调度,分配给交换芯片上各应用HQoS策略的接口上应用HQoS策略的用户,并为各交换芯片设置内部环回口,且为各交换芯片的内部环回口分配全局队列资源,当接收到报文时,确定所述报文匹配的目标队列标识,若该目标队列标识为第一类型队列标识,则将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识,当通过该报文的出端口对该报文进行转发时,将该报文的第一系统头的目的信息设置为目标队列标识,并根据目标队列标识查询报文的出端口上应用的调度策略,进而,根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度,降低了应用HQoS策略的端口数对HQoS策略应用的限制,扩展了HQoS的应用场景。
进一步地,在本发明实施例中,考虑到对于未应用HQoS策略的用户,可以采用统一的调度策略(如普通QoS调度策略),因此,对于任一接口对应的未采用HQoS策略的用户,可以分配相同的队列标识,即未应用HQoS策略的用户所需占用的队列资源较少。
相应地,在本发明其中一个实施例中,对于未应用HQoS策略的用户,可以为其分配第二类型队列资源,当交换机接收到报文,且确定报文匹配的目标队列标识为第二类型标识时,可以将该报文的第一系统头的目的信息设置为该目标队列标识,当通过报文的出端口对应报文进行转发时,可以直接根据目标队列标识查询报文的出端口上应用的调度策略,并根据调度策略中与目标队列标识匹配的调度方式(如普通QoS调度方式)对报文进行调度。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体实例对本发明实施例提供的技术方案进行说明。
为便于理解和描述,对待下发的调度策略,下文中按其转发组的嵌套关系,分为“用户组”、“用户”和“业务”三级调度层次为例进行说明,即“业务”为叶子节点,“用户”为子分支节点,“用户组”为父分支节点。
但应该认识到,在实际应用中,分级调度层次并不限三级,也可以是二级调度层次、四级调度层次(大于等于二级),本发明实施例后续不再复述。
实施例一
在该实施例中,以Service-VLAN组网中的HQoS实现为例,在该组网中,不同“用户”被划分到不同“VLAN域”里,“业务”用“802.1p优先级”进行标识,最细粒度的调度对象是用户的业务。
其中,一个用户对应一个VLAN域,一个VLAN域可以包括一个VLAN或多个VLAN;一个用户组可以包括多个用户(对应多个VLAN域);一个用户的不同优先级的报文对应不同的业务。
请参见图3,在该实施例中,假设用户组1~3分别通过交换设备310的接口311~313(假设接口311~312为交换芯片1上的接口,接口313为交换芯片2上的接口(图3中未示出交换芯片))接入(用户与交换设备310之间还可以存在其他交换设备,图3中未示出),交换设备310的接口311~313上均应用了目标调度策略;其中:
假设用户组1对应的VLAN包括VLAN100~VLAN299,其中,用户11对应的VLAN域为VLAN100~VLAN149;用户12对应的VLAN域为VLAN150~VLAN199;用户13对应的VLAN域为VLAN200~VLAN249;用户14对应的VLAN域为VLAN250~VLAN299;
用户组2对应的VLAN包括VLAN300~VLAN399,其中,用户21对应的VLAN域为VLAN300~VLAN339;用户22对应的VLAN域为VLAN340~VLAN369;用户33对应的VLAN域为VLAN370~VLAN400。
用户组3对应的VLAN包括VLAN400~VLAN450,其中,用户31对应的VLAN域为VLAN400~VLAN420,用户32对应的VLAN域为VLAN421~VLAN450。
在该实施例中,为了实现HQoS,针对应用了目标调度策略的每一个用户,可以在对应的接口上为该用户配置一个Lif(Logic Interface,逻辑接口),以及分配一个LocQueID,并将各用户的Lif的学习信息(learn info)设置为该用户的LocQueID。
假设用户11对应的Lif为Lif1,LocQueID为11;用户12对应的Lif为Lif2,LocQueID为21;用户13对应的Lif为Lif3,LocQueID为31;…;用户31对应的Lif为Lif8,LocQueID为11;用户32对应的Lif为Lif9,LocQueID为21。
在该实施例中,对于各接口(接口311~313)上未应用目标调度策略的用户,分别将其划分至各接口的缺省用户组,为其配置缺省Lif(假设分别为Lif101~Lif103)以及分配缺省GlobalQueID(假设分别为111、121和131)。
在该实施例中,交换芯片1上设置有内部环回口1,并分配有GlobalQueID(假设为141);交换芯片2设置有内部换回2,并分配有GlobalQueID(假设为151)。
其中,交换芯片1的内部环回口1上下发了如表1所示的ACL表项:
表1
交换芯片2的内部环回口上下发了如表2所示的ACL表项:
表2
需要说明的是,本发明实施例中,由于以各交换芯片上的接口(外部接口)为出端口的应用了HQoS策略的用户的报文均会先被重定向至该交换芯片上的内部环回口进行处理,因此,交换芯片的内部环回口的带宽可以设置的比较大(可以根据实际场景中的带宽需求设定)。
此外,对于交换芯片的内部环回口,可以采用普通QoS调度策略进行调度,其具体实现在此不做赘述。
在该实施例中,当交换设备310接收到二层报文时,交换设备310一方面可以根据该二层报文的源MAC地址和VLAN信息查询是否存在匹配的MAC地址表项,若不存在,则交换设备220可以根据该二层报文的入端口以及VLAN信息确定该二层报文对应的Lif,并生成该二层报文对应的MAC地址表项。
举例来说,假设该二层报文的入端口为接口311,VLAN信息(VLAN Tag)为VLAN110,则交换设备310可以确定该二层报文对应的Lif为Lif1,此时,交换设备310可以生成该二层报文对应的MAC地址表项,该MAC地址表项中可以记录该二层报文的源MAC地址、VLAN信息、QueID(Lif1对应的LocQueID,即LocQueID11)以及出端口信息(如端口号)。
需要说明的是,在该实施例中,若交换设备310根据该二层报文的源MAC地址和VLAN信息查询到匹配的MAC地址表项,则交换设备310可以刷新对应的MAC地址表项。
此外,在该实施例中,MAC地址表项也可以通过静态配置的方式实现,如由管理员手动配置包括用户的MAC地址、VLAN信息、QueID以及出端口信息的MAC地址表项,其具体实现在此不做赘述。
另一方面,交换设备310可以根据该二层报文的目的MAC地址和VLAN信息查询匹配的MAC地址表项,并获取所查询到的MAC地址表项中的QueID。
假设交换设备310获取到的所查询的MAC地址表项中的QueID为LocQueID21,出端口为接口313,则交换设备310可以将该二层报文的第一系统头的目的信息设置为交换芯片2的内部环回口(即内部环回口2)上分配的GolbalQueID(即Destination=GolbalQueID151),并在该二层报文中增加第二系统头,该第二系统头中携带有LocQueID21。
其中,第一系统头为报文在交换设备内部传输必须携带的系统头,第二系统头可以为UDH(User Define Header,用户定义头)。
交换设备310可以根据第一系统头中的目的信息将上述增加第一系统头和第二系统头的二层报文定向至交换芯片2的内部环回口(即内部环回口2)。
该二层报文到达交换芯片2的内部环回口2时,交换设备310可以根据该二层报文查询内部环回口2上下发的目标ACL表项(如表2所示的ACL表项),确定该二层报文与该ACL表项的匹配项匹配,因此,交换设备310可以将该二层报文的第一系统头中的目的信息设置为第二系统头中携带的LocQueID(即Destination=LocQueID21)。
进而,当通过接口313转发该二层报文时,交换设备310可以根据二层报文的第一系统头中的目的信息(即LocQueID21)查询接口313上配置的调度策略,以确定与LocQueID21匹配的分级调度方式。
需要说明的是,当交换设备310通过接口313转发该二层报文时,会删除该二层报文增加的系统头,其具体实现在此不做赘述。
其中,交换设备310根据交换芯片2上的LocQueID21可以确定该二层报文的目的用户为用户32,所属用户组为用户组3。
此外,交换设备310可以根据该二层报文中的优先级信息以及该LocQueID21确定该二层报文对应的业务,例如,根据LocQueID21+Pri(二层报文中的优先级)确定对应的业务(假设为业务a)。
进而,交换设备310可以依次使用接口313上应用的调度策略中包括的用户组3的调度方式、用户32的调度方式以及业务a的调度方式对该二层报文进行分级调度。
实施例二
在该实施例中,以QoS-Local-ID组网中的HQoS(基于QoS-Local-ID的HQoS)实现为例。
在该实施例中,一个QoS-Local-ID对应一个用户,多个QoS-Local-ID对应一个用户组,对于同一个用户的报文,不同优先级对应不同业务,即“QoS-Local-ID+优先级”对应业务。
需要说明的是,在该实施例中,交换机中的交换芯片是指三层报文的入方向处理流程依次为FWD阶段-PMF阶段-FEC阶段的处理流程一致的交换芯片,本发明实施例后续不再复述。
请参见图4,在该实施例中,假设用户组1~3分别通过交换设备410的接口411~413(假设接口411~412为交换芯片1上的接口,接口413为交换芯片2上的接口(图4中未示出交换芯片))接入(用户与交换设备410之间还可以存在其他交换设备,图4中未示出),交换设备410的接口411~413上均配置了基于QoS-Local-ID的HQoS策略,其中,接口411上配置了QoS-Local-ID101~QoS-Local-ID103,接口412上配置了QoS-Local-ID201~QoS-Local-ID205,接口413上配置了QoS-Local-ID301~QoS-Local-ID305,用户组1包括用户11~用户13,分别对应QoS-Local-ID101~QoS-Local-ID103,用户组2包括用户21~用户25,分别对应QoS-Local-ID201~QoS-Local-ID205,用户组3包括用户31~用户35,分别对应QoS-Local-ID301~QoS-Local-ID305。
在该实施例中,当交换设备310创建下一跳出端口为接口311的FEC表项时,由于接口311配置了基于QoS-Local-ID的HQoS策略,因此,交换设备310可以根据接口311配置的QoS-Local-ID的数量(3),从目标FEC资源池(假设为FEC资源池0,FEC资源池0包括FEC索引为1~100的FEC表项)分配4个FEC表项(假设为FEC索引分别为1~4),且将FEC索引1记录到接口311对应的下一跳表项中。
其中,FEC表项1(即FEC索引1对应的FEC表项,下同)为未采用基于QoS-Local-ID的HQoS策略的用户对应的FEC表项,该FEC表项中分配的队列标识为GlobalQueID101;FEC表项2为QoS-Local-ID101关联的FEC表项,该FEC表项中分配的队列标识为LocQueID11;FEC表项3为QoS-Local-ID102关联的FEC表项,该FEC表项中分配的队列标识为LocQueID12;FEC表项4为QoS-Local-ID103关联的FEC表项,该FEC表项中分配的队列标识为LocQueID13。
其中,交换设备410可以通过如表3所示的ACL表项实现接口411上配置的QoS-Local-ID到FEC索引的映射:
表1
在该实施例中,当交换设备410创建下一跳出端口为接口412的FEC表项时,由于接口412配置了基于QoS-Local-ID的HQoS策略,因此,交换设备410可以根据接口412配置的QoS-Local-ID的数量(5),从目标FEC资源池分配6个FEC表项(假设为FEC索引分别为11~16),且将FEC索引11记录到接口412对应的下一跳表项中。
其中,FEC表项11为未采用基于QoS-Local-ID的HQoS策略的用户对应的FEC表项,该FEC表项中分配的队列标识为GlobalQueID201;FEC表项12为QoS-Local-ID201关联的FEC表项,该FEC表项中分配的队列标识为LocQueID21;FEC表项13为QoS-Local-ID202关联的FEC表项,该FEC表项中分配的队列标识为LocQueID22;FEC表项14为QoS-Local-ID203关联的FEC表项,该FEC表项中分配的队列标识为LocQueID23;FEC表项15为QoS-Local-ID204关联的FEC表项,该FEC表项中分配的队列标识为LocQueID24;FEC表项16为QoS-Local-ID205关联的FEC表项,该FEC表项中分配的队列标识为LocQueID25。
其中,交换设备410可以通过ACL表项实现接口412上配置QoS-Local-ID到FEC索引的映射,其实现可以参见上述表3相关描述,该实施例在此不做赘述。
在该实施例中,当交换设备410创建下一跳出端口为接口413的FEC表项时,由于接口413配置了基于QoS-Local-ID的HQoS策略,因此,交换设备410可以根据接口413配置的QoS-Local-ID的数量(5),从目标FEC资源池分配6个FEC表项(假设为FEC索引分别为21~26),且将FEC索引21记录到接口413对应的下一跳表项中。
其中,FEC表项21为未采用基于QoS-Local-ID的HQoS策略的用户对应的FEC表项,该FEC表项中分配的队列标识为GlobalQueID301;FEC表项22为QoS-Local-ID301关联的FEC表项,该FEC表项中分配的队列标识为LocQueID31;FEC表项23为QoS-Local-ID302关联的FEC表项,该FEC表项中分配的队列标识为LocQueID32;FEC表项24为QoS-Local-ID303关联的FEC表项,该FEC表项中分配的队列标识为LocQueID33;FEC表项25为QoS-Local-ID304关联的FEC表项,该FEC表项中分配的队列标识为LocQueID34;FEC表项26为QoS-Local-ID305关联的FEC表项,该FEC表项中分配的队列标识为LocQueID35。
其中,交换设备410可以通过ACL表项实现接口413上配置QoS-Local-ID到FEC索引的映射,其实现可以参见上述表3相关描述,该实施例在此不做赘述。
在该实施例中,交换芯片1上设置有内部环回口1,并分配有GlobalQueID(假设为401);交换芯片2设置有内部换回2,并分配有GlobalQueID(假设为501)。
其中,交换芯片1的内部环回口1上下发了如表4所示的ACL表项:
表4
交换芯片2的内部环回口上下发了如表5所示的ACL表项:
表2
在该实施例中,当交换设备410接收到三层报文,并根据该三层报文查询路由表/ARP表,得到的FEC索引为FEC索引11。
由于FEC索引11属于FEC资源池0,因此,交换设备410可以根据该三层报文的源IP地址查询匹配的QoS-Local-ID(假设为QoS-Local-ID203),进而,交换设备310可以根据FEC索引11以及QoS-Local-ID203,查询对应的ACL表项,将QoS-Local-ID102映射为3,进而,确定该三层报文匹配的FEC索引为FEC索引14(11+3=14)。
交换设备410根据FEC索引14查询对应的FEC表项,并将该FEC表项中记录的队列标识(LocQueID23)确定为该三层报文匹配的队列标识,并确定出端口为接口412。
进而,交换设备410可以将该三层报文的第一系统头的目的信息设置为交换芯片1的内部环回口(即内部环回口1)上分配的GolbalQueID(即Destination=GolbalQueID501),并在该三层报文中增加第二系统头,该第二系统头中携带有LocQueID23。
交换设备410可以根据第一系统头中的目的信息将上述增加携带第一系统头和第二系统头的三层报文定向至交换芯片1的内部环回口(即内部环回口1)。
该三层报文到达交换芯片1的内部环回口1时,交换设备410可以根据该三层报文查询内部环回口1上下发的目标ACL表项(如表4所示的ACL表项),确定该三层报文与该ACL表项的匹配项匹配,因此,交换设备410可以将该三层报文的第一系统头中的目的信息设置为第二系统头中携带的LocQueID(即Destination=LocQueID23).
进而,当通过接口412转发该三层报文时,交换设备410可以根据三层报文的第一系统头中的目的信息(即LocQueID23)查询接口412上配置的调度策略,以确定与LocQueID23匹配的分级调度方式。
需要说明的是,当交换设备410通过接口412转发该三层报文时,会删除该三层报文增加的系统头,其具体实现在此不做赘述。
其中,交换设备410根据交换芯片1上的LocQueID23可以确定该三层报文的目的用户为用户24,所属用户组为用户组2。
此外,交换设备410可以根据该三层报文的优先级信息以及该LocQueID23确定该三层报文对应的业务(假设为业务b)。
进而,交换设备410可以依次使用接口412上应用的基于QoS-Local-ID的HQoS策略中包括的用户组2的调度方式、用户24的调度方式以及业务b的调度方式对该三层报文进行调度。
通过以上描述可以看出,在本发明实施例提供的技术方案中,通过将队列资源划分为第一类型队列资源以及第二类型队列资源,将本地队列资源用于HQoS调度,分配给交换芯片上各应用HQoS策略的接口上应用HQoS策略的用户,并为各交换芯片设置内部环回口,且为各交换芯片的内部环回口分配全局队列资源,当接收到报文时,确定所述报文匹配的目标队列标识,若该目标队列标识为第一类型队列标识,则将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识,当通过该报文的出端口对该报文进行转发时,将该报文的第一系统头的目的信息设置为目标队列标识,并根据目标队列标识查询报文的出端口上应用的调度策略,进而,根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度,降低了应用HQoS策略的端口数对HQoS策略应用的限制,扩展了HQoS的应用场景。
请参见图5,为本发明实施例提供的一种HQoS实现装置的结构示意图,其中,该HQoS实现装置可以应用于上述方法实施例中的交换设备,如图5所示,该HQoS实现装置可以包括:
接收单元510,用于接收报文;
确定单元520,用于当接收单元510接收到报文时,确定该报文匹配的目标队列标识;
报文处理单元530,用于当目标队列标识为第一类型队列标识时,将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在该报文的第二系统头中携带目标队列标识;其中,目标第二类型队列标识为该报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识;
报文处理单元530,还用于当该报文到达该报文的出端口所在交换芯片的内部环回口时,将该报文的第一系统头的目的信息设置为目标队列标识;
查询单元540,用于当通过该报文的出端口转发该报文时,根据目标队列标识查询该报文的出端口上应用的调度策略;
调度单元550,用于根据调度策略中与目标队列标识匹配的分级调度方式对该报文进行分级调度。
在可选实施例中,交换芯片的内部环回口上下发有目标访问控制策略ACL表项;其中,目标ACL表项的匹配项为报文的第一系统头的目的信息为交换芯片的内部环回口上分配的第二类型队列标识,目标ACL表项的动作项为将与匹配项匹配的报文的第一系统头的目的信息修改为第二系统头中携带的第一类型队列标识。
在可选实施例中,报文处理单元530,还用于当目标队列标识为第二类型队列标识时,将该报文的第一系统头的目的信息设置为目标队列标识;
查询单元540,还用于当通过该报文的出端口对该报文进行转发时,根据目标队列标识查询该报文的出端口上应用的调度策略;
调度单元550,还用于根据调度策略中与目标队列标识匹配的调度方式对该报文进行调度。
在可选实施例中,交换芯片上设置有一个或多个内部环回口,各内部环回口均分配有对应的第二类型队列标识。
在可选实施例中,当交换芯片上设备有多个内部环回口时,
报文处理单元530,具体用于根据交换芯片上接口与内部环回口的对应关系,将该报文的第一系统头的目标信息设置为第一目标第二类型队列标识,并在该报文的第二系统头中携带目标队列标识;其中,第一目标第二类型队列标识为该报文的出端口所在交换芯片上与该出端口对应的内部环回口上分配的第二类型队列标识。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,通过将队列资源划分为第一类型队列资源以及第二类型队列资源,将本地队列资源用于HQoS调度,分配给交换芯片上各应用HQoS策略的接口上应用HQoS策略的用户,并为各交换芯片设置内部环回口,且为各交换芯片的内部环回口分配全局队列资源,当接收到报文时,确定所述报文匹配的目标队列标识,若该目标队列标识为第一类型队列标识,则将该报文的第一系统头的目的信息设置为目标第二类型队列标识,并在报文的第二系统头中携带目标队列标识,当通过该报文的出端口对该报文进行转发时,将该报文的第一系统头的目的信息设置为目标队列标识,并根据目标队列标识查询报文的出端口上应用的调度策略,进而,根据调度策略中与目标队列标识匹配的分级调度方式对报文进行分级调度,降低了应用HQoS策略的端口数对HQoS策略应用的限制,扩展了HQoS的应用场景。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (10)
1.一种分层服务质量HQoS实现方法,其特征在于,包括:
当接收到报文时,确定所述报文匹配的目标队列标识;
当所述目标队列标识为第一类型队列标识时,将所述报文的第一系统头的目的信息设置为目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述目标第二类型队列标识为所述报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识;
当所述报文到达所述报文的出端口所在交换芯片的内部环回口时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
当通过所述报文的出端口转发所述报文时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略,并根据所述调度策略中与所述目标队列标识匹配的分级调度方式对所述报文进行分级调度;
其中,所述第一类型队列标识为本地队列标识,所述第二类型队列标识为全局队列标识;其中,同一交换芯片上分配的第一类型队列标识不同,同一交换设备上不存在相同的全局队列标识。
2.根据权利要求1所述的方法,其特征在于,所述交换芯片的内部环回口上下发有目标访问控制策略ACL表项;其中,所述目标ACL表项的匹配项为报文的第一系统头的目的信息为所述交换芯片的内部环回口上分配的第二类型队列标识,所述目标ACL表项的动作项为将与所述匹配项匹配的报文的第一系统头的目的信息修改为第二系统头中携带的第一类型队列标识。
3.根据权利要求1所述的方法,其特征在于,所述确定所述报文匹配的目标队列标识之后,还包括:
当所述目标队列标识为第二类型队列标识时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
当通过所述报文的出端口对所述报文进行转发时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略,并根据所述调度策略中与所述目标队列标识匹配的调度方式对所述报文进行调度。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述交换芯片上设置有一个或多个内部环回口,各内部环回口均分配有对应的第二类型队列标识。
5.根据权利要求4所述的方法,其特征在于,当所述交换芯片上设备有多个内部环回口时,
所述将所述报文的第一系统头的目的信息设置为目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识,包括:
根据所述交换芯片上接口与内部环回口的对应关系,将所述报文的第一系统头的目标信息设置为第一目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述第一目标第二类型队列标识为所述报文的出端口所在交换芯片上与该出端口对应的内部环回口上分配的第二类型队列标识。
6.一种分层服务质量HQoS实现装置,其特征在于,包括:
接收单元,用于接收报文;
确定单元,用于当所述接收单元接收到报文时,确定所述报文匹配的目标队列标识;
报文处理单元,用于当所述目标队列标识为第一类型队列标识时,将所述报文的第一系统头的目的信息设置为目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述目标第二类型队列标识为所述报文的出端口所在交换芯片的内部环回口上分配的第二类型队列标识;
所述报文处理单元,还用于当所述报文到达所述报文的出端口所在交换芯片的内部环回口时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
查询单元,用于当通过所述报文的出端口转发所述报文时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略;
调度单元,用于根据所述调度策略中与所述目标队列标识匹配的分级调度方式对所述报文进行分级调度;
其中,所述第一类型队列标识为本地队列标识,所述第二类型队列标识为全局队列标识;其中,同一交换芯片上分配的第一类型队列标识不同,同一交换设备上不存在相同的全局队列标识。
7.根据权利要求6所述的装置,其特征在于,所述交换芯片的内部环回口上下发有目标访问控制策略ACL表项;其中,所述目标ACL表项的匹配项为报文的第一系统头的目的信息为所述交换芯片的内部环回口上分配的第二类型队列标识,所述目标ACL表项的动作项为将与所述匹配项匹配的报文的第一系统头的目的信息修改为第二系统头中携带的第一类型队列标识。
8.根据权利要求6所述的装置,其特征在于,
所述报文处理单元,还用于当所述目标队列标识为第二类型队列标识时,将所述报文的第一系统头的目的信息设置为所述目标队列标识;
所述查询单元,还用于当通过所述报文的出端口对所述报文进行转发时,根据所述目标队列标识查询所述报文的出端口上应用的调度策略;
所述调度单元,还用于根据所述调度策略中与所述目标队列标识匹配的调度方式对所述报文进行调度。
9.根据权利要求6-8任一项所述的装置,其特征在于,所述交换芯片上设置有一个或多个内部环回口,各内部环回口均分配有对应的第二类型队列标识。
10.根据权利要求9所述的装置,其特征在于,当所述交换芯片上设备有多个内部环回口时,
所述报文处理单元,具体用于根据所述交换芯片上接口与内部环回口的对应关系,将所述报文的第一系统头的目标信息设置为第一目标第二类型队列标识,并在所述报文的第二系统头中携带所述目标队列标识;其中,所述第一目标第二类型队列标识为所述报文的出端口所在交换芯片上与该出端口对应的内部环回口上分配的第二类型队列标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910100702.XA CN109768927B (zh) | 2019-01-31 | 2019-01-31 | 一种HQoS实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910100702.XA CN109768927B (zh) | 2019-01-31 | 2019-01-31 | 一种HQoS实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109768927A CN109768927A (zh) | 2019-05-17 |
CN109768927B true CN109768927B (zh) | 2021-04-27 |
Family
ID=66455879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910100702.XA Active CN109768927B (zh) | 2019-01-31 | 2019-01-31 | 一种HQoS实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109768927B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804162B (zh) * | 2019-11-13 | 2024-04-09 | 深圳市中兴微电子技术有限公司 | 一种调度方法、装置、终端设备和存储介质 |
CN114157600A (zh) * | 2020-09-07 | 2022-03-08 | 华为技术有限公司 | 一种转发报文的方法、设备和系统 |
CN114143378B (zh) * | 2021-11-24 | 2023-07-25 | 新华三技术有限公司 | 一种网络优化方法、装置、网关设备及存储介质 |
CN114257892A (zh) * | 2021-12-22 | 2022-03-29 | 苏州盛科通信股份有限公司 | 无源光纤网络中报文多级调度的方法及应用 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143044A (zh) * | 2010-08-12 | 2011-08-03 | 华为技术有限公司 | 一种接入网处理系统及方法 |
CN102594663A (zh) * | 2012-02-01 | 2012-07-18 | 中兴通讯股份有限公司 | 队列调度方法及装置 |
CN103166874A (zh) * | 2013-03-25 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
CN103595654A (zh) * | 2013-11-01 | 2014-02-19 | 福建星网锐捷网络有限公司 | 基于多核CPU的HQoS实现方法、装置及网络设备 |
CN104937885A (zh) * | 2012-08-21 | 2015-09-23 | 博科通讯系统有限公司 | 用于结构交换机的全局vlan |
EP3029896A1 (en) * | 2013-07-31 | 2016-06-08 | ZTE Corporation | Qos implementation method and apparatus in openflow network |
-
2019
- 2019-01-31 CN CN201910100702.XA patent/CN109768927B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143044A (zh) * | 2010-08-12 | 2011-08-03 | 华为技术有限公司 | 一种接入网处理系统及方法 |
CN102594663A (zh) * | 2012-02-01 | 2012-07-18 | 中兴通讯股份有限公司 | 队列调度方法及装置 |
CN104937885A (zh) * | 2012-08-21 | 2015-09-23 | 博科通讯系统有限公司 | 用于结构交换机的全局vlan |
CN103166874A (zh) * | 2013-03-25 | 2013-06-19 | 杭州华三通信技术有限公司 | 一种报文转发方法及设备 |
EP3029896A1 (en) * | 2013-07-31 | 2016-06-08 | ZTE Corporation | Qos implementation method and apparatus in openflow network |
CN103595654A (zh) * | 2013-11-01 | 2014-02-19 | 福建星网锐捷网络有限公司 | 基于多核CPU的HQoS实现方法、装置及网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109768927A (zh) | 2019-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109768927B (zh) | 一种HQoS实现方法及装置 | |
EP2695334B1 (en) | Packet scheduling method and apparatus | |
CN107733799B (zh) | 一种报文传输方法和装置 | |
CN111796905B (zh) | 一种kubernetes容器云平台VLAN网络的实现方法及系统 | |
CN106302206B (zh) | 报文的转发处理方法、装置及系统 | |
US9722923B2 (en) | Method operating in a fixed access network and UEs | |
US7502366B1 (en) | Arrangement in a network switch for prioritizing data frames based on user-defined frame attributes | |
CN105122747A (zh) | Sdn网络中的控制设备和控制方法 | |
WO2020083301A1 (zh) | 一种网络切片的方法、计算机设备及存储介质 | |
WO2016070741A1 (zh) | 一种实现业务带宽分配的方法及装置 | |
CN106453138A (zh) | 一种报文处理方法和装置 | |
JP2010004310A (ja) | パケット中継装置 | |
Alimi et al. | Enhancement of network performance of an enterprises network with VLAN | |
WO2016095142A1 (zh) | 软件定义网络sdn中数据转发的方法、设备和系统 | |
CN102377645B (zh) | 交换芯片及其实现方法 | |
WO2020135705A1 (zh) | Olt设备虚拟化的方法及olt设备、计算机可读介质 | |
KR100916835B1 (ko) | 차등화 서비스 엠피엘에스망에서 네트워크 프로세서를이용한 플로우별 패킷 처리 방법 | |
CN109922003A (zh) | 一种数据发送方法、系统及相关组件 | |
CN103346950A (zh) | 一种机架式无线控制器用户业务板间负载均摊方法及装置 | |
CN112187608B (zh) | 一种基于OpenStack的透明模式服务链实现方法及其系统 | |
CN112995056B (zh) | 一种流量调度方法、电子设备及存储介质 | |
CN109660461B (zh) | 一种HQoS实现方法及装置 | |
CN102035659A (zh) | 域划分时报文的广播方法及装置 | |
US10764177B2 (en) | Efficient implementation of complex network segmentation | |
CN104253751A (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 |