一种上行业务数据的处理方法及装置的制造方法

文档序号:8225984阅读:376来源:国知局
一种上行业务数据的处理方法及装置的制造方法【
技术领域
】[0001]本发明属于通信
技术领域
,尤其涉及一种上行业务数据的处理方法及装置。【
背景技术
】[0002]为满足用户对不同应用不同服务质量的要求,需要网络能根据用户的要求分配和调度资源,对不同的业务数据流提供不同的服务质量:对实时性强且重要的数据报文优先处理;对于实时性不强的普通数据报文,提供较低的处理优先级,网络拥塞时甚至丢弃,这即是服务质量(QualityofService,QoS)技术。[0003]利用Q0S对业务数据进行整流,通常的做法是在支持QoS功能的网关设备下挂载若干队列,每个队列的限速速率和优先级均由用户进行配置。然而,基于目前的QoS调度算法,无法做到对网关设备下挂载的同一队列既进行限速,又进行调度。【
发明内容】[0004]本发明实施例的目的在于提供一种上行业务数据的处理方法,旨在实现在网关设备中对上行业务数据同时进行限速和调度。[0005]本发明实施例是这样实现的,一种上行业务数据的处理方法,包括:[0006]在网关设备netfilter框架的两个HOOK点上分别加载第一中介队列MQ设备和第二MQ设备;[0007]获取用户配置的服务质量QoS规则;[0008]当上行业务数据经过所述第一MQ设备时,所述第一MQ设备根据所述QoS规则,对上行业务数据进行限速处理;[0009]当业务数据经过所述第二MQ设备时,所述第二MQ设备根据所述QoS规则,对上行业务数据进行调度。[0010]本发明实施例的另一目的在于提供一种上行业务数据的处理装置,所述装置包括:[0011]加载单元,用于在网关设备netfilter框架的两个HOOK点上分别加载第一中介队列MQ设备和第二MQ设备;[0012]获取单元,用于获取用户配置的服务质量QoS规则;[0013]限速单元,用于当上行业务数据经过所述第一MQ设备时,所述第一MQ设备根据所述QoS规则,对上行业务数据进行限速处理;[0014]调度单元,用于当业务数据经过所述第二MQ设备时,所述第二MQ设备根据所述QoS规则,对上行业务数据进行调度。[0015]本发明实施例通过在网关设备的两个HOOK点上分别加载两个MQ设备,来对网关设备下挂载的同一队列同时进行限速和调度,提高了网关设备对上行业务数据的QoS服务质量。【附图说明】[0016]图1是本发明实施例提供的上行业务数据的处理方法的实现流程图;[0017]图2是本发明实施例提供的上行业务数据的处理方法SlOl的具体实现流程图;[0018]图3是本发明另一实施例提供的上行业务数据的处理方法的实现流程图;[0019]图4是本发明实施例提供的上行业务数据的处理装置的结构框图。【具体实施方式】[0020]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。[0021]本发明实施例提供的上行业务数据的处理方法可以应用于网关(Gateway)设备中,通过在网关设备的两个HOOK点上分别加载两个MQ设备,来对网关设备下挂载的同一队列同时进行限速和调度。需要说明的是,在下文对本发明实施例的阐述中,所述业务数据,若未特别说明,均指的是输入网关设备的、来自LAN侧设备的业务数据,S卩,网关设备的上行业务数据。[0022]图1示出了本发明实施例提供的上行业务数据的处理方法的实现流程,详述如下:[0023]在SlOl中,在网关设备netfilter框架的两个HOOK点上分别加载第一中介队列(Intermediatequeueingdevice,IMQ)设备和第二IMQ设备。[0024]所述MQ设备,是一个虚拟的网卡设备,与物理网卡不同的是,通过它可以进行全局的流量整形;所述netfilter框架,就是在整个网络流程的若干位置放置了一些检测点(Η00Κ点),并在每个HOOK点上登记了一些处理函数(例如包过滤、网络地址转换(NetworkAddressTranslat1n,NAT)等)进行处理,且所述处理函数可以由用户自定义的功能函数。[0025]在本实施例中,在网关设备业务数据流经的两个HOOK点上分别加载两个MQ设备,用于对流经HOOK点的业务数据分别执行QoS中的限速和调度。其中,可以通过ifconfig工具、vnetconfig工具来驱动第一MQ设备和第二頂Q设备,使其加载至相应的Η00Κ点,上述驱动和加载过程可以被标准的Linux内核所支持。[0026]作为本发明的一个实施例,两个IMQ设备可以依次挂载在网关设备的数据入口处的Η00Κ点上和数据出口处的Η00Κ点上,包括:[0027]在所述网关设备数据入口处的Η00Κ点加载第一IMQ设备,在所述网关设备数据出口处的Η00Κ点加载第二頂Q设备;或者,[0028]在所述网关设备数据入口处的Η00Κ点加载第二IMQ设备,在所述网关设备数据出口处的Η00Κ点加载第一頂Q设备。[0029]S卩,可以调换第一MQ设备和第二MQ设备的顺序关系,先进行限速,后进行调度,或者先进行调度,后进行限速。[0030]优选地:[0031]在所述网关设备netfilter框架的PRER0UTE点上加载所述第一MQ设备;[0032]在所述网关设备netfilter框架的P0STR0UTE点上加载所述第二MQ设备。[0033]所述PREROUTE点(即NF_IP_PRE_ROUTING)和所述P0STR0UTE点(即NF_IP_P0ST_ROUTING)为netfilter框架中的五个HOOK点中的两个,其中,所述PRER0UTE点为刚刚进入网关设备的业务数据所要通过的HOOK点,所述P0STR0UTE点为所有马上要输出网络设备的业务数据所要通过的HOOK点,将两个MQ设备分别设置在这两个HOOK点上,从而在网关设备的第一个入口对业务数据进行限速,在网关设备的最后一个出口对业务数据进行调度,从而实现对网关设备下挂载的队列既进行限速,又进行调度。[0034]作为本发明的一个实施例,所述第一MQ设备和所述第二MQ设备可以支持动态插拔,以此实现对网关设备QoS流量控制功能的灵活控制,可以自主选择是否启用两个IMQ设备来进行业务数据的限速和调度。如图2所示,SlOl具体包括:[0035]S201,在iptables中配置MQ模块,所述MQ模块用于动态加载第一MQ设备和第二MQ设备。[0036]本实施例中,MQ设备位于网关设备的三层路由中,因此,在iptables中配置MQ模块,该頂Q模块专门用于实现第一頂Q设备和第二頂Q设备的动态加载。[0037]S202,命令iptables,通过所述MQ模块加载所述第一MQ设备和所述第二MQ设备。[0038]则在执行完图1所示流程中对业务数据的限速和调度之后,所述方法还包括:[0039]S203,命令iptables,通过所述MQ模块卸载所述第一MQ设备和所述第二MQ设备。[0040]在配置好MQ模块之后,通过命令iptables,即可以实现对第一頂Q设备和第二MQ设备的动态加载。若需要对经过网关设备的业务数据同时进行限速和调度,则加载第一IMQ设备和第二MQ设备,当业务数据的Q0S流量控制完成后,或者不需要对业务数据同时进行限速和调度的场景之下,可以卸载第一MQ设备和第二MQ设备,从而对虚拟资源实现灵活控制。[0041]在S102中,获取用户配置的服务质量QoS规则。[0042]获取用户配置的QoS规则,所述QoS规则包括队列优先级和所述网关设备出口的总限速。[0043]其中,用户可以通过QoS页面或者其他配置工具,配置一系列的QoS规则,包括队列优先级和网关设备出口的总限速。当用户配置好QoS规则之后,第一IMQ设备和第二IMQ设备便可以根据该QoS规则中的队列优先级在其设备之下挂载相应的队列,并获知该QoS规则中网关设备出口的总限速。[0044]在S103中,当上行业务数据经过所述第一MQ设备时,所述第一MQ设备根据所述QoS规则,对上行业务数据进行限速处理。[0045]在本实施例中,利用第一MQ设备来控制业务数据的入口总闸,根据配置当前第1页1 2 
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1