用于有效实时分组传送的自适应队列机制及其自适应队列建立系统的制作方法

文档序号:7623402阅读:148来源:国知局
专利名称:用于有效实时分组传送的自适应队列机制及其自适应队列建立系统的制作方法
技术领域
本发明涉及用于在多媒体数据传输环境中,支持QoS(服务质量)的技术,以及更具体地说,涉及队列机制。
背景技术
随着Internet、移动通信等等正快速扩展,传送的多媒体数据量也增加。这种多媒体数据包括应当保证的实时传输的服务,诸如语音呼叫和视频通信服务。
目前,在保证网络设备中的多媒体数据服务,诸如语音中,存在用于不同高容量分组的传输请求。即,如果当许多用户使用网络服务时,不能提供足够的服务,在实时传送多媒体数据,诸如语音呼叫时,会产生问题。
在典型的OS(操作系统)中提供的排队技术是基于单个队列的FCFS(先入先服务)系统。如图1中所示,FCFS系统仅使用一个队列102,以及通过简单操作实现排队函数enqueue()的排队单元100和实现出队函数dequeue()的出队单元104,执行排队和调度。通过排队单元100的排队函数的排队不执行所有呼入分组的过滤,而是将分组顺序地插入一个队列102中。通过按在队列102中接收的顺序,将分组传送到输出链路,执行通过出队单元102的出队函数的调度。
如上所述,由于相对于不同类型的分组,典型的OS仅使用一个队列,OS使用简单的算法以及不复杂。然而,当OS以仅使用一个传输队列的FCFS方式,执行排队和调度时,OS不能执行适当的传输,导致实时安全性恶化,诸如由于专用业务信道的长期队列占用,诸如文件传输,在其他业务信道中出现资源缺乏。
作为通过在多媒体数据传输环境中,支持QoS,提高要求实时传输的服务的实时安全性的排队技术,存在使用根据服务的目的,具有不同优先级的许多队列的优先级排队系统。在优先级排队系统中,基于不同业务类,映射各个队列。尽管可以使用不同调度系统来执行优先级排队,与存储在低优先级队列中的分组相比,优先服务存储在高优先级队列中的分组。
如上所述,通过使用优先级排队系统和向要求实时传输的多媒体数据提供高优先级类,与在FCFS系统中获得的安全性相比,能提高实时传输的安全性。
然而,传统的优先级排队系统在操作系统期间不操作,而在系统的启动期间操作,而不是在操作系统期间生成队列。因此,在改变类和队列的设定值,诸如增加、删除等等的情况下,要求重启系统。

发明内容
因此,已经设计了本发明来至少解决在现有技术中出现的上述和其他问题,以及提供甚至在系统操作期间,如果对特定业务,要求实时服务,能通过动态生成类来保证优先级的用于有效实时分组传送的自适应队列机制及其自适应队列建立系统。
本发明还提供用于有效实时分组传送的自适应队列机制及其自适应队列建立系统,即使在系统操作期间,也能动态地生成或删除类。
本发明还提供用于有效实时分组传送的自适应队列机制及其自适应队列建立系统,即使在系统操作期间,也能根据动态生成的类,动态地生成或删除用于分类分组的过滤器。
为此,根据本发明的自适应队列建立系统使用从用户模式到内核模式的系统调用,增加或删除类和/或过滤器。
根据本发明的自适应队列机制包括对应于缺省类的缺省优先级队列、根据至少一个动态类动态生成的动态优先级队列、具有对应于所指定的动态类并动态生成的过滤信息以便与所指定的动态类交互作用的过滤器,以及用于使用过滤器,划分用于分组的类的分类器。
分类器搜索具有与由分组获得的传输信息匹配以便插入优先级队列的一个中的过滤信息的过滤器,将对应于所搜索的过滤器的动态类确定为用于该分组的类以及如果所搜索的过滤器不存在,将缺省类确定为用于该分组的类。


从下述结合附图的详细描述,本发明的上述和其他目的、特征和优点将更显而易见,其中图1是典型的FSFC排队系统的框图;图2是根据本发明的实施例的自适应队列机制的排队和调度系统的框图;图3是说明根据本发明的实施例的类和过滤器的生成的视图;图4是根据本发明的实施例的自适应队列建立系统的框图;以及图5是示例说明根据本发明的实施例的分组分类过程的流程图。
具体实施例方式
在下文中,将参考附图,详细地描述本发明的优选实施例。在本发明的下述描述中,相同的标记用于相同的元件,即使在不同图中。另外,将省略在此包含的已知功能和结构的详细描述,当它会使本发明的主题反而不清楚时。
图2是根据本发明的实施例的自适应队列机制的排队和调度系统的框图。在图2中,排队单元200包括分类器202,除缺省优先级队列210外,还提供三个动态优先级队列204至208。由出队单元212执行队列的调度。由稍后说明的图4的自适应队列建立系统,动态生成、增加或删除动态优先级队列204至208。
基于两个基本原理,构造自适应队列机制。类是表示具有优先级的队列的基本单元。过滤器是类的条件,以及用来确定和分类分组的类。可以提供一个或多个过滤器。
图3是说明根据本发明的实施例的类和过滤器的生成的视图。在除缺省类306外,生成动态类0至动态类2300至304的情况下,分别对应于动态类300至304,生成多个过滤器308至312,以便它们彼此交互作用。动态类300至304分别对应于图2的动态优先级队列204至208。过滤器308至312具有用于分类分组的过滤信息。过滤信息由相应的过滤器,例如源IP(网际协议)地址和目的地IP地址、源端口号和目的地端口号,以及协议信息,设置为由将过滤的分组获得的传输信息。协议信息可以是TCP(传输控制协议)、IP(网际协议)等等。
如果假定提供给缺省类306的优先级是“缺省优先级”,以及提供给动态类300至304的优先级是“优先级0”、“优先级1”和“优先级2”,优先级中的关系提供为“优先级0>优先级1>优先级2>缺省优先级”。
例如,可以通过相对高的优先级分配实时音频数据或视频数据,Web或Internet业务可以具有下一优先级,E-mail可以具有下一优先级,以及具有网络管理数据的分组可以具有最低优先级。
使用术语“动态类”来将它与缺省存在的“缺省类”区分开来以及表示它是动态生成和/或删除的类。使用“动态优先级队列”来将它与缺省存在的“缺省优先级队列”区分开来以及表示它是动态生成和/或删除的队列。
为支持用于生成和/或删除类和过滤器的基于类的操作,诸如类添加addclass、类删除deleteclass、过滤器添加addfilter、过滤器删除deletefilter等等存在和使用系统调用,控制OS(操作系统)的内核的内部通信。
图4是根据动态生成、添加或删除动态类以及与动态类交互作用的过滤器的本发明的实施例的自适应队列建立系统的框图。图4的自适应队列建立系统划分成用户模式和内核模式。在用户模式中,提供类添加系统调用单元400、过滤器添加系统调用单元404、类删除系统调用单元408和过滤器删除系统调用单元412。在内核模式中,提供类添加单元402、过滤器添加单元406、类删除单元410和过滤器删除单元414。
类添加系统调用单元400构造对内核的类添加系统调用,以及传送定义将添加的动态类的参数。然后,响应来自类添加系统调用单元400的类添加系统调用,类添加单元402根据从类添加系统调用单元400传送的参数,生成新动态类和相应的动态优先级队列。
如上所述,从类添加系统调用单元400传送到类添加单元402的参数包括新动态类的类标识符(ID)和赋予该新动态类的优先级。
下表1示例说明类添加系统调用单元400如何实现类添加函数addclass,以及下表2示例说明类添加单元402的实现。表1和2示例说明应用于将Linux用作其OS的系统的本发明的例子。
表1

表2


过滤器添加系统调用单元404构造对内核的过滤器添加系统调用,定义将添加的过滤器,以及传送表示过滤信息的参数。然后,过滤器添加单元406响应过滤器添加系统调用,根据从过滤器增加系统调用单元404传送的参数,生成与由从过滤器添加系统调用单元传送的参数指定的动态类交互作用的新过滤器。
如上所述,从过滤器添加系统调用单元404传送到过滤器添加单元406的参数包括新过滤器将与之交互作用的类标识符(ID)以及新过滤器的过滤器标识符(ID)。另外,过滤器信息包括源IP地址和目的地IP地址,即将由应用于新过滤器的分组使用的传输信息、源端口号以及目的地端口号以及协议信息。
表3示例说明过滤器添加系统调用单元400如何实现过滤器添加函数addfilter,以及下表4示例说明过滤器添加单元406的实现。表3和4示例说明应用于将Linux用作其OS的系统的本发明的例子。
表3


表4

类删除系统调用单元408构造对内核的类删除系统调用以及传送定义将删除的动态类的参数。然后,类删除单元410响应类删除系统调用,删除指定动态类以及相应的动态优先级队列。指定将删除的动态类的参数包括将删除的动态类的类ID。
从表1和2所示的类添加系统调用单元400和类添加单元402的实现,能容易理解类删除系统调用单元408和类删除单元410的实现,因此,将省略其详细说明。
过滤器删除系统调用单元412构造对内核的过滤器删除系统调用,以及传送指定将删除的过滤器的参数。然后,过滤器删除单元414响应过滤器删除系统调用,删除所指定的过滤器。指定将删除的过滤器的参数包括将删除的动态类的类ID和将删除的过滤器的过滤器ID。
从表3和4所示的过滤器添加系统调用单元408和过滤器添加单元406的实现,能容易理解过滤器删除系统调用单元412和过滤器删除单元414的实现,因此,将省略其详细说明。
尽管图2表示已经生成的动态优先级队列204至208,以及图3表示已经生成的动态类300至304和过滤器308至312,在初始级,仅存在缺省类306和相应的缺省优先级队列210。初始地,图2的系统操作为与如上所述的图1的系统相同的队列机制。如果在该情况下,生成要求优先级传输的多媒体数据,网络管理器调用表1的类添加函数addclass。
由类添加调用单元410实现在内核中对类添加单元402的系统调用,以及由类添加单元402生成新动态类和相应的动态优先级队列。另外,调用表3的过滤器添加函数addfilter以及添加用于过滤将分类成新动态类的过滤器。
尽管不必增加新动态类,有时要求分类具有来自与先前添加的动态类交互作用的过滤器的过滤信息的不同传输信息的分组。在这种情况下,生成具有与过滤信息相同的分组的传输信息的新过滤器并添加到相应的动态类。
如果在除图2所示的缺省优先级队列210外,生成动态优先级队列204全208的情况下,将插入动态优先级队列204全208的一个的分组输入到排队单元200,包括在排队单元200中的分类器202使用过滤器,分类分组的类。
图5示例说明由分类器202执行的分组分类过程。参考图5,如果在步骤500输入分组,在步骤502,分类器搜索具有与由所输入的分组获得的传输信息相符的过滤信息的过滤器。然后,在步骤504,分类器根据搜索具有与传输信息相符的过滤信息的过滤器的结果,执行步骤506或508。
如果搜索到具有与由所输入的分组获得的传输信息相符的过滤信息的过滤器,在步骤506,分类器将对应于所搜索的过滤器的动态类确定为用于所输入的分组的类,以及终止相应分组的分类。通过比较,如果未搜索到过滤器,在步骤508,分类器将缺省类确定为用于分组的类,以及终止相应的分组的分类。
分类器实现如表5所示的分类函数classify。表5示例说明将本发明应用于将Linux用作其OS的系统的例子,以及表5的分类函数classify插入排队单元200的排队函数的前面部分。
如表5所示,将过滤信息设置为包括源IP地址和目的地IP信息、源端口号和目的地端口号和协议信息的传输信息。
表5



如上所述,如果分类器202通过过滤,分类具有与由各个类获得的过滤信息相符的传输信息的分组,排队单元200根据所确定的类,将分组插入优先级队列中。根据出队单元212的调度,移出和传送插入各个类的分组。例如可以实现出队单元212来以应用于典型的优先级排队的WRR(加权循环法)方式执行调度。
因此,通过使用内核系统调用,动态生成优先级队列以及执行用于所需服务的分组过滤,当根据特定业务,要求实时服务时,能保证实时数据传输而不重启系统。
在上述描述中,已经说明本发明的详细实施例,但在本发明的范围内,可以实现许多改进。
特别地,在本发明的实施例中,示例根据网络管理器的操作,通过调用实现类和过滤器的添加和删除。然而,当在将所需优先级赋予具有预定传输信息的分组后,要求传送分组时,可以根据相应的分组的传输信息,自动进行表1和3所示的函数的调用。
另外,尽管示例单独地执行类删除和过滤器删除,由于在执行类删除后,不需要用于相应类的过滤器,当类删除单元410删除类时,可以自动地删除对应于该类的过滤器。
另外,尽管示例动态地生成、添加或删除类和过滤器,根据需要,可以动态地生成和删除类或过滤器。
另外,尽管示例过滤信息包括源IP地址和目的地IP地址、源端口号和目的地端口号,可以有选择地将它们包括在过滤信息中或有关分组的其他信息可以另外包括在过滤信息中。
尽管参考其某些优选实施例,示出和描述了本发明,本领域的技术人员将理解在不背离如由附加权利要求定义的本发明的精神和范围的情况下,可以在形式和细节方面做出各种改变。
权利要求
1.一种队列机制中的自适应队列建立系统,用于实时分组传输,包括类添加系统调用单元,用于执行对内核的类添加系统调用以及传送定义将添加的动态类的参数;以及类添加单元,用于响应所述类添加系统调用,根据所述参数,生成新动态类和相应的动态优先级队列。
2.如权利要求1所述的自适应队列建立系统,其中,所述参数包括所述新动态类的类标识符(ID)和赋予所述新动态类的优先级。
3.如权利要求1所述的自适应队列建立系统,进一步包括类删除系统调用单元,用于执行对所述内核的类删除系统调用,以及传送指定将删除的动态类的参数;以及类删除单元,用于响应所述类删除系统调用,删除所指定的动态类和相应的动态优先级队列。
4.如权利要求3所述的自适应队列建立系统,其中,指定将删除的动态类的参数包括将删除的动态类的类标识符(ID)。
5.一种队列机制中的自适应队列建立系统,用于实时分组传输,包括过滤器添加系统调用单元,用于执行对内核的过滤器添加系统调用,定义将添加的过滤器以及传送表示过滤信息的参数;以及过滤器添加单元,用于响应所述过滤器添加系统调用,根据所述参数,生成与由所述参数指定的动态类交互作用的新动态过滤器。
6.如权利要求5所述的自适应队列建立系统,其中,所述参数包括动态类的类标识符(ID)和所述新过滤器的过滤器ID;以及其中,所述过滤信息包括为将由应用于所述新过滤器的分组获得的传输信息的源IP(网际协议)地址和目的地IP地址、源端口号和目的地端口号,以及协议信息。
7.如权利要求5所述的自适应队列建立系统,进一步包括过滤器删除系统调用单元,用于执行对所述内核的过滤器删除系统调用,以及传送指定将删除的过滤器的参数;以及过滤器删除单元,用于响应所述过滤器删除系统调用,删除所指定的过滤器。
8.如权利要求7所述的自适应队列建立系统,其中,指定将删除的过滤器的参数包括对应于将删除的过滤器的动态类的类标识符(ID),以及将删除的过滤器的过滤器ID。
9.一种用于实时分组传送的自适应队列机制,包括对应于缺省类的缺省优先级队列;动态生成并对应于至少一个动态类的至少一个动态优先级队列;具有对应于所述至少一个动态类的过滤信息并动态生成以便与所述至少一个动态类交互作用的至少一个过滤器;以及分类器,用于搜索具有与由将插入所述优先级队列的一个中的分组获得的传输信息相符的过滤信息的过滤器、将对应于所搜索的过滤器的动态类确定为用于所述分组的类、以及如果不存在所搜索的过滤器,将所述缺省类确定为用于所述分组的类。
10.如权利要求9所述的自适应队列机制,其中,所述分类器包括在排队单元中,用于将所输入的分组插入所述优先级队列中的所确定的类的优先级队列中。
11.如权利要求9所述的自适应队列机制,其中,所述过滤信息和所述传输信息包括源IP(网际协议)地址和目的地IP地址、源端口号和目的地端口号,以及协议信息。
12.如权利要求9所述的自适应队列机制,进一步包括类添加系统调用单元,用于执行对内核的类添加系统调用以及传送定义将添加的动态类的参数;以及类添加单元,用于响应所述类添加系统调用,根据所述参数,生成新动态类和相应的动态优先级队列。
13.如权利要求12所述的自适应队列机制,其中,所述参数包括所述新动态类的类标识符(ID)和赋予所述新动态类的优先级。
14.如权利要求12所述的自适应队列机制,进一步包括类删除系统调用单元,用于执行对所述内核的类删除系统调用,以及传送指定将删除的动态类的参数;以及类删除单元,用于响应所述类删除系统调用,删除所指定的动态类和相应的动态优先级队列。
15.如权利要求12所述的自适应队列机制,进一步包括类删除系统调用单元,用于执行对所述内核的类删除系统调用,以及传送指定将删除的动态类的参数;以及类删除单元,用于响应所述类删除系统调用,删除所指定的动态类和相应的动态优先级队列以及删除对应于所删除的动态类的过滤器。
16.如权利要求14所述的自适应队列机制,其中,指定将删除的动态类的参数包括将删除的动态类的类标识符(ID)。
17.如权利要求15所述的自适应队列机制,其中,指定将删除的动态类的参数包括将删除的动态类的类标识符(ID)。
18.如权利要求9所述的自适应队列机制,进一步包括过滤器添加系统调用单元,用于执行对内核的过滤器添加系统调用,定义将添加的过滤器以及传送表示过滤信息的参数;以及过滤器添加单元,用于响应所述过滤器添加系统调用,根据用于将添加的过滤器的所述参数,生成与由用于将添加的过滤器的所述参数指定的动态类交互作用的新过滤器。
19.如权利要求12所述的自适应队列机制,进一步包括过滤器添加系统调用单元,用于执行对内核的过滤器添加系统调用,定义将添加的过滤器以及传送表示过滤信息的参数;以及过滤器添加单元,用于响应所述过滤器添加系统调用,根据用于将添加的过滤器的所述参数,生成与由用于将添加的过滤器的所述参数指定的动态类交互作用的新过滤器。
20.如权利要求18所述的自适应队列机制,其中,定义将添加的过滤器的所述参数包括对应于所述新过滤器的动态类的类标识符(ID)和所述新过滤器的过滤器ID;以及其中,所述过滤信息和所述传输信息包括源IP(网际协议)地址和目的地IP地址、源端口号和目的地端口号,以及协议信息。
21.如权利要求18所述的自适应队列机制,进一步包括过滤器删除系统调用单元,用于执行对所述内核的过滤器删除系统调用,以及传送指定将删除的过滤器的参数;以及过滤器删除单元,用于响应所述过滤器删除系统调用,删除所指定的过滤器。
22.如权利要求21所述的自适应队列机制,其中,指定将删除的过滤器的参数包括对应于将删除的过滤器的动态类的类标识符(ID),以及将删除的过滤器的过滤器ID。
全文摘要
公开了一种用于有效实时分组传送的自适应队列机制及其自适应队列建立系统。自适应队列建立系统使用从用户模式到内核模式的系统调用,增加或删除类和/或过滤器。自适应队列机制包括对应于缺省类的缺省优先级队列、根据至少一个动态类动态生成的动态优先级队列、具有根据所指定的动态类建立的过滤信息并动态生成以便与所指定的动态类交互作用的过滤器,以及用于使用过滤器,分类用于分组的类的分类器。
文档编号H04L12/54GK1822564SQ20051009998
公开日2006年8月23日 申请日期2005年9月13日 优先权日2005年2月19日
发明者南相俊 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1