欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种基于DSCP对报文进行分流的方法、系统、设备及介质独创技术22595字

一种基于DSCP对报文进行分流的方法、系统、设备及介质

2021-02-12 23:53:57

一种基于DSCP对报文进行分流的方法、系统、设备及介质

  技术领域

  本发明涉及数据处理领域,更具体地,特别是指一种基于DSCP对报文进行分流的方法、系统、计算机设备及可读介质。

  背景技术

  在云计算时代,对网络设备、客户端、服务器等用于发送、接受、转发报文的设备对处理报文的能力要求越来越高,报文数量级的提升也给这些设备带来了很大的负荷,盲目地提升设备处理报文的硬件能力,不但得不到理想的效果,还增加了成本,所以,对报文分类、优先处理重要报文的技术出现了。目前在报文中增加优先级控制字段的协议有很多种,比如IP优先级、TOS优先级、DSCP优先级、802.1p优先级等。利用这些协议实现更高性能的分流限速成了需要攻克的难题。目前Openstack支持DSCP协议的功能是给通过开启此功能的端口的报文固定打上一个Tag来表示此报文的优先级,由于只能给一个端口配置固定的优先级,故所有通过此端口出方向的报文只能都打成一个Tag,无法根据报文源、目的IP不通分别打上不通的Tag,也无法根据报文协议不通分别打上不通的Tag等,导致DSCP功能变得单一,使用起来很不方便。

  发明内容

  有鉴于此,本发明实施例的目的在于提出一种基于DSCP对报文进行分流的方法、系统、计算机设备及计算机可读存储介质,通过配置DSCP规则,并将报文与配置的DSCP规则进行比对,对报文中的优先级值进行修改,并基于优先级值对报文进行分流,从而弥补了openstack框架下DSCP规则配置单一、功能缺乏的短板,优化了限速的精确性,丰富了规则功能,可以使报文DSCP字段发挥更大的作用,也可以使openstack框架下的用户拥有更多的限速管理方案。

  基于上述目的,本发明实施例的一方面提供了一种基于DSCP对报文进行分流的方法,包括如下步骤:创建服务质量策略,并在所述服务质量策略中配置DSCP规则;检测所述DSCP规则中是否存在冲突的规则,并响应于所述DSCP规则中不存在冲突的规则,将所述服务质量策略绑定到端口;响应于所述端口接收到报文,获取所述报文的元素信息,并将所述元素信息与所述DSCP规则进行比对;以及基于比对的结果对所述报文中的优先级值进行修改,并基于所述优先级值对所述报文进行分流。

  在一些实施方式中,所述在所述服务质量策略中配置DSCP规则包括:在所述服务策略中配置基准DSCP规则,并设置所述基准DSCP规则对应的优先级值为第一数字;以及基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字。

  在一些实施方式中,所述基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字包括:设置目的IP为第一字段的报文对应的优先级值为第二数字;设置目的IP为第二字段的报文对应的优先级值为第三数字;以及设置目的IP不为第一字段和第二字段的报文对应的优先级值为第四数字。

  在一些实施方式中,所述检测所述DSCP规则中是否存在冲突的规则包括:判断是否存在同一报文能够对应两个或两个以上不同的优先级值。

  在一些实施方式中,还包括:响应于所述DSCP规则中存在冲突的规则,按照优先级值从大到小的顺序修改对应的规则。

  在一些实施方式中,所述基于比对的结果对所述报文中的优先级值进行修改包括:判断所述报文是否符合修改的条件。

  在一些实施方式中,所述判断所述报文是否符合修改的条件包括:判断所述端口配置的设备优先级值是否大于所述报文的设备优先级值,响应于所述端口配置的设备优先级值大于报文的设备优先级值,确定所述报文符合修改的条件。

  本发明实施例的另一方面,还提供了一种基于DSCP对报文进行分流系统,包括:创建模块,配置用于创建服务质量策略,并在所述服务质量策略中配置DSCP规则;检测模块,配置用于检测所述DSCP规则中是否存在冲突的规则,并响应于所述DSCP规则中不存在冲突的规则,将所述服务质量策略绑定到端口;比对模块,配置用于响应于所述端口接收到报文,获取所述报文的元素信息,并将所述元素信息与所述DSCP规则进行比对;以及执行模块,配置用于基于比对的结果对所述报文中的优先级值进行修改,并基于所述优先级值对所述报文进行分流。

  本发明实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现如上方法的步骤。

  本发明实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。

  本发明具有以下有益技术效果:通过配置DSCP规则,并将报文与配置的DSCP规则进行比对,对报文中的优先级值进行修改,并基于优先级值对报文进行分流,从而弥补了openstack框架下DSCP规则配置单一、功能缺乏的短板,优化了限速的精确性,丰富了规则功能,可以使报文DSCP字段发挥更大的作用,也可以使openstack框架下的用户拥有更多的限速管理方案。

  附图说明

  为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

  图1为本发明提供的基于DSCP对报文进行分流的方法的实施例的示意图;

  图2为本发明提供的基于DSCP对报文进行分流的计算机设备的实施例的硬件结构示意图。

  具体实施方式

  为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

  需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。

  基于上述目的,本发明实施例的第一个方面,提出了一种基于DSCP对报文进行分流的方法的实施例。图1示出的是本发明提供的基于DSCP对报文进行分流的方法的实施例的示意图。如图1所示,本发明实施例包括如下步骤:

  S1、创建服务质量策略,并在服务质量策略中配置DSCP规则;

  S2、检测DSCP规则中是否存在冲突的规则,并响应于DSCP规则中不存在冲突的规则,将服务质量策略绑定到端口;

  S3、响应于端口接收到报文,获取报文的元素信息,并将元素信息与DSCP规则进行比对;以及

  S4、基于比对的结果对报文中的优先级值进行修改,并基于优先级值对报文进行分流。

  QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,可以用来解决网络延迟和阻塞等问题。DSCP(Differentiated Services Code Point,差分服务代码点)是IETF于1998年12月发布的QoS分类标准。它在每个数据包IP头部的服务类别TOS标识字节中,利用已使用的6比特和未使用的2比特,通过编码值来区分优先级。报文Tag是报文参数某个字段的值,例如三层报文IP头中的协议类型字段的值、带vlan信息中vlan ID字段的值,都可以表示为报文某一种Tag。

  创建服务质量策略,在服务质量策略中配置DSCP规则。

  在一些实施方式中,所述在所述服务质量策略中配置DSCP规则包括:在所述服务策略中配置基准DSCP规则,并设置所述基准DSCP规则对应的优先级值为第一数字;以及基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字。例如,基准DSCP规则对应的优先级值为第一数字可以是入方向所有报文DSCP字段打Tag为26。多个子规则对应的优先级值为不同数字可以是出方向的报文根据目的IP或者源IP不同DSCP字段打Tag也不同。

  在一些实施方式中,所述基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字包括:设置目的IP为第一字段的报文对应的优先级值为第二数字;设置目的IP为第二字段的报文对应的优先级值为第三数字;以及设置目的IP不为第一字段和第二字段的报文对应的优先级值为第四数字。例如:出方向的并且目的IP为10.12.11.0/24段的报文,DSCP字段打Tag为24;目的IP为10.12.12.0/24段的报文,DSCP字段打Tag为22;目的IP不为10.12.11.0/24和10.12.12.0/24字段的报文,DSCP字段打Tag为18。

  检测DSCP规则中是否存在冲突的规则,响应于DSCP规则中不存在冲突的规则,将服务质量策略绑定到端口。

  在一些实施方式中,所述检测所述DSCP规则中是否存在冲突的规则包括:判断是否存在同一报文能够对应两个或两个以上不同的优先级值。例如,当某一条子规则为:创建一条入方向报文且源IP为10.10.0.0/24且源端口为80的报文给DSCP字段打Tag为16,由于当报文为入方向且源IP为10.10.0.0/24且源端口为80时对应两个优先级值16和24,所以,该子规则和基准DSCP规则冲突,无法配置。

  在一些实施方式中,还包括:响应于所述DSCP规则中存在冲突的规则,按照优先级值从大到小的顺序修改对应的规则。继续上例,可以先修改基准规则为入方向且源IP不为10.10.0.0/24且源端口不为80的报文打Tag为24后,再配置子规则。可以继续创建不冲突的DSCP规则,也可以创建限制最大带宽、突发流量、最小带宽保证等规则。

  在其他的实施例中,可以根据五元组元素进一步配置子规则。五元组是指源IP地址、源端口、目的IP地址、目的端口和传输层协议。

  响应于端口接收到报文,获取报文的元素信息,并将元素信息与DSCP规则进行比对。

  基于比对的结果对报文中的优先级值进行修改,并基于优先级值对报文进行分流。策略运行时,可以直接添加、修改、删除策略下的规则,及时生效。当此端口不再需要执行此策略时,可以解除端口绑定,删除策略。

  在一些实施方式中,所述基于比对的结果对所述报文中的优先级值进行修改包括:判断所述报文是否符合修改的条件。

  在一些实施方式中,所述判断所述报文是否符合修改的条件包括:判断所述端口配置的设备优先级值是否大于所述报文的设备优先级值,响应于所述端口配置的设备优先级值大于报文的设备优先级值,确定所述报文符合修改的条件。由于DSCP协议只使用了IP头中服务类型字段的前6个比特,后两个比特预留未使用(默认是00),可以用这两个比特增加一个设备优先级值的概念,用于在变更报文tag字段时参考,比如接受到一个报文,报文中的此字段为01,当前端口的设备优先级值为00,则表示报文的设备优先级不高,没有达到修改字段的级别,直接转发,不匹配DSCP规则;但如果端口的设备优先级值为02,则说明配置的DSCP规则优先,按照配置的规则修改DSCP字段的值后转发。

  本发明实施例在兼容公共协议中DSCP值的基础上,增加了DSCP规则匹配的条件,使匹配条件更加丰富,规则更加精确,增加规则冲突校验算法机制来达到功能的多样化和更强的使用性,同时也使报文IP头中的服务类型字段发挥更大的作用。

  需要特别指出的是,上述基于DSCP对报文进行分流的方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于基于DSCP对报文进行分流的方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。

  基于上述目的,本发明实施例的第二个方面,提出了一种基于DSCP对报文进行分流系统,包括:创建模块,配置用于创建服务质量策略,并在所述服务质量策略中配置DSCP规则;检测模块,配置用于检测所述DSCP规则中是否存在冲突的规则,并响应于所述DSCP规则中不存在冲突的规则,将所述服务质量策略绑定到端口;比对模块,配置用于响应于所述端口接收到报文,获取所述报文的元素信息,并将所述元素信息与所述DSCP规则进行比对;以及执行模块,配置用于基于比对的结果对所述报文中的优先级值进行修改,并基于所述优先级值对所述报文进行分流。

  在一些实施方式中,所述创建模块配置用于:在所述服务策略中配置基准DSCP规则,并设置所述基准DSCP规则对应的优先级值为第一数字;以及基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字。

  在一些实施方式中,所述创建模块还配置用于:设置目的IP为第一字段的报文对应的优先级值为第二数字;设置目的IP为第二字段的报文对应的优先级值为第三数字;以及设置目的IP不为第一字段和第二字段的报文对应的优先级值为第四数字。

  在一些实施方式中,所述检测模块配置用于:判断是否存在同一报文能够对应两个或两个以上不同的优先级值。

  在一些实施方式中,还包括:修改模块,配置用于响应于所述DSCP规则中存在冲突的规则,按照优先级值从大到小的顺序修改对应的规则。

  在一些实施方式中,所述执行模块配置用于:判断所述报文是否符合修改的条件。

  在一些实施方式中,所述执行模块还配置用于:判断所述端口配置的设备优先级值是否大于所述报文的设备优先级值,响应于所述端口配置的设备优先级值大于报文的设备优先级值,确定所述报文符合修改的条件。

  基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行以实现如下步骤:S1、创建服务质量策略,并在服务质量策略中配置DSCP规则;S2、检测DSCP规则中是否存在冲突的规则,并响应于DSCP规则中不存在冲突的规则,将服务质量策略绑定到端口;S3、响应于端口接收到报文,获取报文的元素信息,并将元素信息与DSCP规则进行比对;以及S4、基于比对的结果对报文中的优先级值进行修改,并基于优先级值对报文进行分流。

  在一些实施方式中,所述在所述服务质量策略中配置DSCP规则包括:在所述服务策略中配置基准DSCP规则,并设置所述基准DSCP规则对应的优先级值为第一数字;以及基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字。

  在一些实施方式中,所述基于所述基准DSCP规则配置多个子规则,并设置多个所述子规则对应的优先级值为与第一数字不同的数字包括:设置目的IP为第一字段的报文对应的优先级值为第二数字;设置目的IP为第二字段的报文对应的优先级值为第三数字;以及设置目的IP不为第一字段和第二字段的报文对应的优先级值为第四数字。

  在一些实施方式中,所述检测所述DSCP规则中是否存在冲突的规则包括:判断是否存在同一报文能够对应两个或两个以上不同的优先级值。

  在一些实施方式中,还包括:响应于所述DSCP规则中存在冲突的规则,按照优先级值从大到小的顺序修改对应的规则。

  在一些实施方式中,所述基于比对的结果对所述报文中的优先级值进行修改包括:判断所述报文是否符合修改的条件。

  在一些实施方式中,所述判断所述报文是否符合修改的条件包括:判断所述端口配置的设备优先级值是否大于所述报文的设备优先级值,响应于所述端口配置的设备优先级值大于报文的设备优先级值,确定所述报文符合修改的条件。

  如图2所示,为本发明提供的上述基于DSCP对报文进行分流的计算机设备的一个实施例的硬件结构示意图。

  以如图2所示的装置为例,在该装置中包括一个处理器301以及一个存储器302,并还可以包括:输入装置303和输出装置304。

  处理器301、存储器302、输入装置303和输出装置304可以通过总线或者其他方式连接,图2中以通过总线连接为例。

  存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的基于DSCP对报文进行分流的方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的基于DSCP对报文进行分流的方法。

  存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据基于DSCP对报文进行分流的方法的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

  输入装置303可接收输入的用户名和密码等信息。输出装置304可包括显示屏等显示设备。

  一个或者多个基于DSCP对报文进行分流的方法对应的程序指令/模块存储在存储器302中,当被处理器301执行时,执行上述任意方法实施例中的基于DSCP对报文进行分流的方法。

  执行上述基于DSCP对报文进行分流的方法的计算机设备的任何一个实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

  本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时执行如上方法的计算机程序。

  最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,基于DSCP对报文进行分流的方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

  以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。

  应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。

  上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。

  本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

  所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

《一种基于DSCP对报文进行分流的方法、系统、设备及介质.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)