一种会话管理方法及装置的制作方法

文档序号:7678049阅读:147来源:国知局
专利名称:一种会话管理方法及装置的制作方法
技术领域
本发明涉及网络通信技术,尤其涉及一种会话管理方法及装置。
背景技术
随着网络通信技术的进步,为了在网络设备(交换机、路由器以及防火墙等)实现NAT、ASPF、攻击防范等基于会话进行处理的业务需要将会话管理而抽象出来作为公共功能。会话管理在传输层把报文之间的交互关系抽象为会话(通常以五元组作为会话特征), 并根据发起方或响应方的报文信息对会话进行状态更新和超时老化。会话管理通常采用计算机软件的方式实现,其通常需要占用系统的关键的CPU以及内存等系统资源。为了上述业务处理需要,系统往往需要维护大量的会话。为了减轻对系统资源的消耗,需要对会话进行老化,即长时间没有报文交互的会话需要立即老化掉,以释放系统资源。会话管理中通常采用定时老化的方法,老化时间往往是使用网络设备的管理员可以自行配置,比如说UDP会话的老化时间经常被配置为180秒。如果会话老化时间的设置过长可能导致系统资源过多占用,尤其是在存在攻击时,资源消耗很大。但是另一方面,如果会话设置过短,可能影响到一些网络通信应用的正常使用。近些年来,对会话的管理出现了一些新的技术,比如支持基于不同应用的老化管理。可以根据TCP/UDP承载不同的应用提供不同的老化时间。举例来说,可以针对SIP、 FTP、DNS、MSN、QQ等不同的应用分别设置不同的老化时间,使得会话的老化符合业务模型的特点。这种技术的出现在一定程度上缓解了会话老化时间的设置。然而这种缓解远远比不上网络流量膨胀以及各种网络攻击增长所带来了网络设备系统资源消耗的压力。

发明内容
有鉴于此,本发明一种会话管理装置,其应用于网络设备中,用于对会话进行管理,其中该装置包括报文过滤单元,用于根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;并将该尾报文的会话特征提交给快速释放单元;快速释放单元,用于在网络设备完成对报文业务处理之后,根据该尾报文的会话特征查找对应的会话并将该会话老化,以释放该会话所占用的系统资源。优选地,所述预设的会话尾报文特征包括报文端口号,所述会话特征为报文的五元组;其中所述报文的五元组为源IP地址、目的IP地址、源端口、目的端口以及协议类型。优选地,所述过滤出的会话尾报文为DNS回应报文,所述预设的会话尾报文特征还包括DNS报文的QR标志位。优选地,所述会话为UDP会话,。优选地,其特征在于,还包括会话初始管理单元,提取接收到的报文五元组,根据五元组查找会话表,如果找到已经存在的会话,则更新会话定时器;如果没有找到,则根据五元组创建新的会话表项;
定时老化单元,用于在会话定时器超时的时候对会话执行老化操作。本发明还提供一种会话管理方法,其应用于网络设备中,用于对会话进行管理,其中该方法包括A、根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;并将该尾报文的会话特征提交给快速释放单元;B、在网络设备完成对报文业务处理之后,根据该尾报文的会话特征查找对应的会话并将该会话老化,以释放该会话所占用的系统资源。优选地,所述预设的会话尾报文特征包括报文端口号,所述会话特征为报文的五元组;其中所述报文的五元组为源IP地址、目的IP地址、源端口、目的端口以及协议类型。优选地,所述过滤出的会话尾报文为DNS回应报文,所述预设的会话尾报文特征还包括DNS报文的QR标志位。优选地,所述会话为UDP会话,。优选地,还包括C、提取接收到的报文五元组,根据五元组查找会话表,如果找到已经存在的会话, 则更新会话定时器;如果没有找到,则根据五元组创建新的会话表项;D、在会话定时器超时的时候对会话执行老化操作。本发明通过对会话报文的后续报文进行过滤,从中过滤会话尾报文,一旦过滤命中,则触发会话提前老化操作,及时有效地释放了会话对系统资源的占用,对DNS这种会产生大量UDP会话的应用效果尤其明显。


图1是现有技术中典型的会话管理流程。图2是本发明会话管理流程。图3是本发明会话管理装置逻辑结构图。
具体实施例方式本发明提出一种新的会话管理实现方法,其在兼容现有技术的基础上,在不影响正常网络通信业务的情况下,快速释放掉部分占用系统资源的会话。其基本的思路是根据应用的特征找到会话结束的标志,在老化时间到达前就提前释放事实上可以结束的会话。 以下结合图2和图3详细介绍本发明典型的实现方式。步骤101,提取接收到的报文的会话特征,根据预设的会话特征查找会话表,如果找到已经存在的会话,则更新会话定时器,转步骤102 ;如果没有找到,则根据五元组创建新的会话表项,然后转入报文业务处理流程;本步骤由会话匹配单元12执行;对于网络设备的会话管理特性来说,其接收到报文之后首先需要确定该报文是不是某个会话的首报文,如果是,则表明这是一个新的会话,需要在会话表中创新一条新的表项以记录会话特征,并为这个新建的会话表项创建定时器。会话特征是查找的依据,目前比较流行的实现是采用报文的五元组作为会话特征,其中所述五元组包括源IP地址、目的IP 地址、源端口、目的端口以及协议类型(也可称为协议号)。当然在部分应用中也可能采用三元组等其他实现方式。一般来说会话表会存放在网络设备的缓存(Cache)当中,有利于
4实现报文会话特征的快速查找。如果通过查找发现报文不是会话的首报文,即报文的五元组会匹配到会话表中的某个表项下的记录;此时的处理则是更新会话表项对应的定时器。步骤102,根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;然后将过滤出来的尾报文的会话特征提交给快速释放单元;本步骤由报文过滤单元14执行。如果一个报文不是会话的首报文,其正常情况下处理是更新定时器以后转入业务处理流程(如转发处理与安全处理等),本发明步骤102则进一步用预设的会话尾报文特征去匹配这个报文,以确定这个报文是否是所属会话的结束报文,这里相当于对会话的后续报文(首报文之后的报文)进行一次过滤。在不少应用中,会话会有典型的标志会话结束的报文,这个报文并不是通知会话结束,而是说这个报文的出现通常意味着该会话不会再有后续报文。以最为典型的基于 UDP传输协议的DNS应用为例。DNS会话结束的标志是DNS服务器发出DNS响应报文(DNS R印Iy),这个报文的出现DNS会话已经结束。本步骤通过预设的尾报文特征来找到DNS R印Iy这样的尾报文。对于DNS Reply 来说,其典型的报文特征包括知名端口号(端口号为53)以及报文载荷中的QR标志位(0 表示请求报文,1表示响应报文)等。假设本步骤发现一个报文的端口号是53,且QR标志为为1,则一般情况下可以认为该报文是DNS krver发出的DNS R印Iy报文。对于过滤出来的DNS Reply报文,需要将它的会话特征提交给快速释放单元进行快速处理。步骤103,根据该尾报文的会话特征将会话表中对应的会话表项老化,以释放该会话所占用的系统资源。现有技术在步骤101的处理结果依然是更新定时器,由定时老化单元18去查询定时器是否超时,如果超时则执行老化处理。假设定时器老化时间设为100秒,那也就是说这条会话会多占用系统资源100秒才得以释放。DNS应用会产生数量非常庞大的会话,因为几乎所有的用户主机在上网过程中会频繁发送DNS请求,导致网络设备上要维护大量的会话。显然现有技术中DNS应用定时老化占用了巨大的系统资源而难以快速释放。本发明则在步骤102之后先由网络设备对报文进行业务处理,处理完成后立刻转入103进行资源的释放处理。根据报文的五元组找到在会话表中找到对应的会话表项,对其执行老化操作,而不是等到该会话定时器超时才老化。其中老化操作具体为从定时器会话老化链中将会话删除。本发明通过对会话报文的后续报文进行过滤,从中过滤会话尾报文,一旦过滤命中,则触发会话提前老化操作,及时有效地释放了会话对系统资源的占用,对DNS这种会产生大量UDP会话的应用效果尤其明显。以上所述仅仅为本发明较佳的实现方式,任何基于本发明精神所做出的等同的修改皆应涵盖于本发明的权利要求范围中。
权利要求
1.一种会话管理装置,其应用于网络设备中,用于对会话进行管理,其中该装置包括 报文过滤单元,用于根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;并将该尾报文的会话特征提交给快速释放单元;快速释放单元,用于在网络设备完成对报文业务处理之后,根据该尾报文的会话特征查找对应的会话并将该会话老化,以释放该会话所占用的系统资源。
2.根据权利要求1所述的装置,其特征在于,所述预设的会话尾报文特征包括报文端口号,所述会话特征为报文的五元组;其中所述报文的五元组为源IP地址、目的IP地址、源端口、目的端口以及协议类型。
3.根据权利要求2所述的装置,其特征在于,所述过滤出的会话尾报文为DNS回应报文,所述预设的会话尾报文特征还包括DNS报文的QR标志位。
4.根据权利要求1所述的装置,其特征在于,所述会话为UDP会话,。
5.根据权利要求1所述的装置,其特征在于,还包括会话初始管理单元,提取接收到的报文五元组,根据五元组查找会话表,如果找到已经存在的会话,则更新会话定时器;如果没有找到,则根据五元组创建新的会话表项; 定时老化单元,用于在会话定时器超时的时候对会话执行老化操作。
6.一种会话管理方法,其应用于网络设备中,用于对会话进行管理,其中该方法包括A、根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;并将该尾报文的会话特征提交给快速释放单元;B、在网络设备完成对报文业务处理之后,根据该尾报文的会话特征查找对应的会话并将该会话老化,以释放该会话所占用的系统资源。
7.根据权利要求6所述的方法,其特征在于,所述预设的会话尾报文特征包括报文端口号,所述会话特征为报文的五元组;其中所述报文的五元组为源IP地址、目的IP地址、源端口、目的端口以及协议类型。
8.根据权利要求7所述的方法,其特征在于,所述过滤出的会话尾报文为DNS回应报文,所述预设的会话尾报文特征还包括DNS报文的QR标志位。
9.根据权利要求6所述的方法,其特征在于,所述会话为UDP会话,。
10.根据权利要求6所述的方法,其特征在于,还包括C、提取接收到的报文五元组,根据五元组查找会话表,如果找到已经存在的会话,则更新会话定时器;如果没有找到,则根据五元组创建新的会话表项;D、在会话定时器超时的时候对会话执行老化操作。
全文摘要
本发明涉及一种会话管理方法,其应用于网络设备中,用于对会话进行管理,其中该方法包括根据预设的会话尾报文特征从已经建立会话的报文中过滤出表征会话结束的会话尾报文;并将该尾报文的会话特征提交给快速释放单元;在网络设备完成对报文业务处理之后,根据该尾报文的会话特征查找对应的会话并将该会话老化,以释放该会话所占用的系统资源。本发明通过对会话报文的后续报文进行过滤,从中过滤会话尾报文,然后触发会话提前老化操作,及时有效地释放了会话对系统资源的占用,对DNS这种会产生大量UDP会话的应用效果尤其明显。
文档编号H04L12/56GK102185723SQ20111013964
公开日2011年9月14日 申请日期2011年5月27日 优先权日2011年5月27日
发明者万众, 杨光, 汪庆权 申请人:杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1