一种网络协议识别的方法、装置及其系统的制作方法

文档序号:7800245阅读:219来源:国知局
专利名称:一种网络协议识别的方法、装置及其系统的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种网络协议识别的方法、装置及其系统。
背景技术
随着网络技术的迅速发展和各种网络业务应用的普及,网络己成为人们日常工作生活中不可或缺的信息承载工具,同时人们对网络性能的要求也越来越高,在众多影响网络性能的因素中,网络流量是最为重要的因素之一。因此,对网络协议的分析可以为网络的运行和维护提供重要信息,对于网络性能分析、异常监测、链路状态监测、容量规划等发挥着重要作用。随着互联网公司对于上述领域资金和科研的大量投入,使得网络协议识别技术得到了前所未有的迅猛发展。主要技术包括基于端口的网络协议识别技术、非默认端口网络协议识别技术等。基于端口的网络协议识别技术识别思路清晰、程序实现简单,但缺点是准确率较低。非默认端口网络协议识别技术,是基于网络数据包净荷的一种识别方法,旨在通过网络数据包的数据部分来分析并识别出网络协议类型,但是识别过程复杂,效率较低。

发明内容
本发明实施例提供了一种网络协议识别的方法、装置及其系统,可以迅速、高效地识别出网络会话使用的协议。本发明实施例中提供了一种网络协议识别的方法,包括获取域名服务器DNS对客户端的响应消息,从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在所述客户端IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。本发明实施例还提供了一种网络协议识别装置,包括消息获取单元,用于获取域名服务器DNS对客户端的响应消息;协议名称提取单元,用于从所述响应消息中获取在客户端IP地址和应用服务器 IP地址之间的当前会话所对应的协议名称;匹配单元,当后续会话为在所述客户端IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。本发明实施例还提供一种网络系统,包括客户端、应用服务器、域名服务器DNS和网络协议识别装置,其中所述客户端,用于向所述域名服务器DNS发送查询所述应用服务器的域名的请求;所述域名服务器DNS,用于向所述客户端发送包括所述应用服务器的域名查询结果的响应消息;所述网络协议识别装置,用于获取所述包括所述应用服务器的域名查询结果的响应消息,从所述消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在客户端IP地址和应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称;应用服务器,用于向所述客户端提供会话服务。采用本发明实施例,作为对默认端口识别法和深度包检测(DPI)识别法的辅助识别,通过获取域名服务器DNS对客户端的响应消息,从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在所述客户端 IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称,可以迅速、高效地识别出网络会话使用的协议。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例的一个方法实施例示意图;图2是本发明实施例的另一个方法实施例示意图;图3是本发明实施例的一个装置实施例示意图;图4是本发明实施例的另一个装置实施例示意图;图5是本发明实施例的一个系统实施例示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一本发明实施例中提供了一种网络协议识别的方法,如图1所示,包括SlOl 获取域名服务器DNS对客户端的响应消息;具体的,用户需要访问某种网络应用如ABC,用户会先发ABC应用协议的DNS请求到域名服务器DNS,以查询ABC应用服务器的IP地址。该DNS请求消息中会包含ABC应用的域名;域名服务器DNS收到DNS请求消息后,查询自身系统,并返回对应的DNS应答消息给用户。而该DNS应答消息中会包含ABC应用域名及ABC应用服务器IP地址;当DNS应答消息经过网络协议识别装置时,网络协议识别装置识别出这是一个 DNS消息后,对所述DNS消息进行分析。S103 从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;具体的,从DNS应答消息中提取出对应的应用协议名ABC、ABC应用服务器的IP地址以及用户的IP地址; 查询应用协议ABC是否在当前网络协议识别装置可识别的协议范围内,若协议 ABC在当前网络协议识别装置可识别协议范围内,不需要网络协议识别装置辅助识别,则丢弃本条DNS消息,不必再进行后面的操作;若协议ABC不在当前网络协议识别装置可识别协议范围内,则将应用协议ABC、对应的ABC应用服务器的IP地址、用户IP以及当前的时间, 作为识别应用协议ABC的一条规则A,添加到在线DNS动态规则学习库中,规则ID为10001, 以供网络协议识别装置识别应用协议ABC使用。动态规则学习库如下图所示
[003权利要求
1.一种网络协议识别的方法,其特征在于,包括获取域名服务器DNS对客户端的响应消息,从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在所述客户端IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。
2.如权利要求1所述的方法,其特征在于,所述将所述协议名称作为所述后续会话的协议名称以后,还包括当所述协议名称尚未被识别时,对所述协议名称进行统计排序,以确定出获取次数按从大到小前N个未被识别的协议,所述N为预定阈值。
3.如权利要求2所述的方法,其特征在于,所述确定出次数较多的前N位未被识别协议以后,还包括对每一个所述前N个未被识别的协议中的协议名称,抓取该协议名称对应的所述数据流净荷进行特征分析,得到所述协议的特征。
4.如权利要求3所述的方法,其特征在于,所述抓取所述协议名称对应的所述数据流净荷进行特征分析包括抓取所述数据流净荷的前M个字节进行特征分析,所述M为大于0小于等于100的整数。
5.如权利要求1所述的方法,其特征在于,所述从所述消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称包括对所述响应消息中的域名信息和所述当前会话中的明文字符串信息进行分析,以确定所述协议名称。
6.一种网络协议识别装置,其特征在于,包括消息获取单元,用于获取域名服务器DNS对客户端的响应消息;协议名称提取单元,用于从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;匹配单元,当后续会话为在所述客户端IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。
7.如权利要求6所述的网络协议识别装置,其特征在于,还包括判断单元,用于所述将所述协议名称作为所述后续会话的协议名称以后,判断所述协议名称是否已经被识别;统计排序单元,用于当所述协议名称尚未被识别时,对所述协议名称进行统计排序,以确定出获取次数按从大到小前N个未被识别的协议,所述N为预定阈值。
8.如权利要求7所述的网络协议识别装置,其特征在于,还包括抓取单元,用于所述确定出次数较多的前N位未被识别协议以后,对每一个所述前N个未被识别的协议中的协议名称,抓取该协议名称对应的所述数据流净荷进行特征分析,得到所述协议的特征。
9.如权利要求8所述的网络协议识别装置,其特征在于,所述抓取单元包括第一抓取单元,用于抓取所述数据流净荷的前M个字节进行特征分析;字节数确定单元,用于确定所抓取的所述数据流净荷的字节数,所述M为大于0小于等于100的整数。
10.如权利要求1所述的网络协议识别装置,其特征在于,所述协议名称提取单元包括分析单元,用于对所述消息中的域名信息和所述当前会话中的明文字符串信息进行分析;确定单元,用于根据分析单元对所述消息中的域名信息和所述当前会话中的明文字符串信息进行分析的结果确定所述协议名称。
11.一种网络系统,其特征在于,包括客户端、应用服务器、域名服务器DNS和网络协议识别装置,其中所述客户端,用于向所述域名服务器DNS发送查询所述应用服务器的域名的请求; 所述域名服务器DNS,用于向所述客户端发送包括所述应用服务器的域名查询结果的响应消息;所述网络协议识别装置,用于获取所述包括所述应用服务器的域名查询结果的响应消息,从所述消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在客户端IP地址和应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称;应用服务器,用于向所述客户端提供会话服务。
12.如权利要求11所述的网络系统,其特征在于,所述网络协议识别装置包括 消息获取单元,用于获取域名服务器DNS对客户端的响应消息;协议名称提取单元,用于从所述消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;匹配单元,用于当后续会话为在客户端IP地址和应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。
全文摘要
本发明实施例公开了一种网络协议识别的方法,包括获取域名服务器DNS对客户端的响应消息,从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话所对应的协议名称;当后续会话为在所述客户端IP地址和所述应用服务器IP地址之间的会话时,将所述协议名称作为所述后续会话的协议名称。本发明实施例,通过对DNS响应消息的分析,从所述响应消息中获取在客户端IP地址和应用服务器IP地址之间的当前会话与该会话所使用的网络协议之间的对应关系,从而可以迅速、高效地识别出客户端和应用服务器之间当前会话的协议名称。
文档编号H04L29/06GK102420833SQ20111044468
公开日2012年4月18日 申请日期2011年12月27日 优先权日2011年12月27日
发明者严英洲, 唐华新, 聂宇轩 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1