[发明专利]一种定时器管理模块有效
申请号: | 201210174020.1 | 申请日: | 2012-05-30 |
公开(公告)号: | CN102752282A | 公开(公告)日: | 2012-10-24 |
发明(设计)人: | 刘德明;马骏 | 申请(专利权)人: | 苏州云初网络技术有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56 |
代理公司: | 北京中恒高博知识产权代理有限公司 11249 | 代理人: | 宋敏 |
地址: | 215500 江苏省苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 定时器 管理 模块 | ||
技术领域
本发明涉及通信技术领域,具体地,涉及一种定时器管理模块。
背景技术
服务质量(Quality of Service,简称QoS),是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。在正常情况下,如果网络只用于特定的无时间限制的应用系统,并不需要QoS,比如Web应用、或E-mail设置等。但是,对关键应用和多媒体应用就十分必要,例如,当网络过载或拥塞时,QoS 能确保重要业务量不受延迟或丢弃,同时保证网络的高效运行。
可见,QoS是现代网络之间互连的协议(Internet Protocol,简称IP,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议)网络设备的重要的功能,典型的QoS功能包括数据报文的调度和数据流的整形(shaping)。
在QoS的数据流整形功能中,定时器是实现平滑和限制QoS数据流整形功能的必要资源。QoS的数据流整形功能涉及大量的运算,相比于软件QoS实现数据流整形功能而言,硬件QoS一般可以提供更快的报文处理速度。随着网络处理器能力的发展和并行多核CPU技术的提高,软件QoS不仅可以和硬件QoS媲美,同时具有成本低和使用灵活等优点。
不同于一般网络协议的定时溢出要求,软件QoS所需定时器的要求包括:⑴精度高,定时分辨率可以到50-100us;⑵数量大,可能同时需要几万个定时器;⑶操作速度快,定时器操作要尽量小地影响网络设备端口的吞吐量。这些要求,使得定时器在软件QoS环境下的实现极具挑战性。
在上述定时器管理技术中,一般包括四种操作,即创建定时器、删除定时器、定时器溢出检查和定时器溢出处理。其中,在定时器溢出处理操作中,当定时器溢出后,通常的处理方式是调用提前设置好的回调函数,基本不涉及管理开销;另外三种操作(即创建定时器、删除定时器与定时器溢出检查),都希望速度越快越好。
由于软件QoS所需定时器的数量较大,难免占用较多的内存空间。另外,软件QoS所需定时器一般采用单时间轮的管理方式,在单时间轮的定时器管理操作中,定时器溢出检查花费的时间较长;并且,采用单时间轮的管理方式,除了可以实现线性查找外,没有办法区分当前槽内事件应该现在处理或是在将来的轮回中处理。
在实现本发明的过程中,发明人发现现有技术中至少存在占用内存空间大、溢出检查时间长与难以确定当前活跃事件的处理时机等缺陷。
发明内容
本发明的目的在于,针对上述问题,提出一种定时器管理模块,至少可以应用于软件QoS与网络数据流定时溢出管理等方面,以实现占用内存空间小、溢出检查时间短、扩展性强、以及易确定当前活跃事件的处理时机的优点。
为实现上述目的,本发明采用的技术方案是:一种定时器管理模块,包括处理事件的紧急程序自前至后依次降低、且包含的时间单位自前至后依次增大的多级时间轮;在所述多级时间轮中,后级时间轮的始端,挂接在与该后级时间轮相邻的前级时间轮的末端。
进一步地,所述多级时间轮,至少包括依次挂接的第一级时间轮、第二级时间轮与第三级时间轮,其中:
所述第一级时间轮,用于采用单时间轮结构,对当前活跃的短定时事件,根据预先设定的紧急程序进行处理;
所述第二级时间轮,用于采用复合时间轮结构,对当前等待的短定时事件处理时机的紧急程序进行排布;并在相应短定时事件的处理时机到来时,将该相应短定时事件前移至第一级时间轮,根据第一级时间轮中预先设定的紧急程序进行处理;
所述第三级时间轮,用于采用单时间轮结构,对当前等待的长定时事件,根据预先设定的紧急程序依次迁移至第二级时间轮及第一级时间轮,根据第一级时间轮中预先设定的紧急程序进行处理。
进一步地,所述第一级时间轮,包括构成单时间轮结构、且分别对应定时器的分辨率时间单位的第1至第256时间槽,所述第1至第256时间槽的索引依次为0-255。
进一步地,在所述第1至第256时间槽中每个时间槽的下方,均挂接有与相应时间槽对应、且通过链表连接的定时事件。
进一步地,所述第二级时间轮,包括构成复合时间轮结构的主时间轮,以及分别与所述主时间轮中每个时间槽对应、且依次挂接在所述主时间轮中多个时间槽下方的多个子时间轮。
进一步地,所述主时间轮,包括索引依次为0-63的第1至第64时间槽;所述主时间轮中的第1时间槽,与第一级时间轮的第256时间槽挂接;
所述多个子时间轮,包括依次挂接在第1至第64时间槽下方的第1至第64子时间轮。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州云初网络技术有限公司,未经苏州云初网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210174020.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:微型面包车加装电动实现混合动力的传动装置
- 下一篇:隔热双保险轮胎