非对称路由环境中HTTP上行流量的处理方法及系统与流程

文档序号:14253159阅读:835来源:国知局
非对称路由环境中HTTP上行流量的处理方法及系统与流程

本发明涉及网络业务识别技术领域,具体涉及一种非对称路由环境下单边http上行流量的分析。



背景技术:

dpi(deeppacketinvestigate)深度包检测技术,是一种基于应用层的流量检测技术,当数据流通过基于dpi技术的网络系统时,该系统通过深入读取数据包载荷的内容来对osi七层协议中的应用层信息进行分析,从而可以识别出用户的访问行为、访问的数据等。

理想情况下(对称路由),用户发送的请求报文和服务器返回给用户的响应报文会走相同的网络路径,也就是说,dpi设备可以同时捕获到用户的上下行流量,获取到完整的报文。这种情况下,非常有利于分析人员及dpi设备去识别出用户的访问行为。

随着dpi设备部署的环境越来越复杂,发现非对称环境下(用户请求的报文和服务器响应的报文只有一边流经dpi设备)的流量越来越越多,而只有单边流量会急剧降低dpi设备的分析能力。

http(hypertexttransportprotocol)是超文本传输协议的缩写,它用于传送www方式的数据,关于http协议的详细内容请参考rfc2616。http协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、url、协议版本、以及包含请求修饰符、客户信息和内容的类似于mime的消息结构。服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。

本方法就是针对这种因非对称路由环境而产生的单向上行的http流量,通过引入爬虫技术,对数据包中服务器的ip、端口、uri进行访问,从而获取完整的上下行流量,然后对这些完整的流量进行分析。这样,就将分析单边上行http流量转换为分析完整的上下行流量。从而提高dpi设备的分析能力。



技术实现要素:

本发明提供了一种分析因非对称路由环境而产生的单边上行http流量的方法和系统,以解决现有技术中dpi设备分析能力低的问题。

为解决上述问题,本发明的一种分析因非对称路由环境而产生的单边上行http流量的方法,其特征在于包括以下步骤:

步骤101,提取单边上行http流量中的服务器端ip地址、端口、uri相关信息,

步骤102,将步骤101中提到的信息反馈给爬虫模块,

步骤103,爬虫模块根据步骤101中提到的信息构造请求报文,并将请求报文发出,等待并接收服务器端的响应报文,

步骤104,判断爬虫是否爬取到页面,如果是,则进入步骤205,否则,由于爬取不到页面,无法确定该服务器ip地址、端口信息属于哪个应用的服务器ip地址和端口,步骤结束,

步骤205,对这些页面内容进行识别,同时对爬取的页面进行具体的分析,提取相关的信息,

步骤206,判断这些页面内容能否识别为某个具体的应用,如果可以,则直接进入步骤208;否则,进入步骤207,

步骤207,在http页面不能识别为某个应用时,协议分析人员对爬取的http页面进行分析,以确定该页面所属应用;

步骤208,在确定http页面所属具体应用后,将该ip地址及端口信息作为该应用特征更新至设备中;同时爬取页面提取到的信息作为应用特征更新至设备中。

优选的,所述步骤207中不能识别某个应用的情形包括这些页面含有指向某应用的特征,但规则库没有覆盖到该应用,或者虽然覆盖到了该应用,但规则有遗漏。

优选的,所述步骤207中的分析包括将遗漏的特征规则补充至规则库,或者对gzip响应内容进行解压来确定该页面所属应用。

优选的,所述方法适用于http协议、dns以及ftp协议。

此外,本发明还提出了一种分析因非对称路由环境而产生的单边上行未知流量的系统,其特征在于该系统包括:

信息提取模块,该信息提取模块提取单边上行http流量中的服务器端ip地址、端口、uri相关信息,

反馈模块,将信息提取模块提到的信息反馈给爬虫模块,

爬虫模块,爬虫模块根据信息提取模块提到的信息构造请求报文,并将请求报文发出,等待并接收服务器端的响应报文,

页面爬取判断模块,其判断爬虫是否爬取到页面,如果是,则由页面识别分析模块对这些页面内容进行识别,同时对爬取的页面进行具体的分析,提取相关的信息,否则,由于爬取不到页面,无法确定该服务器ip地址、端口信息属于哪个应用的服务器ip地址和端口,结束分析,

应用判断模块,在页面识别分析模块识别到页面内容后,判断这些页面内容能否识别为某个具体的应用,如果能够确定http页面所属具体应用,则由信息更新模块将该ip地址及端口信息作为该应用特征更新至设备中,同时将爬取页面提取到的信息作为应用特征更新至设备中;在http页面不能识别为某个应用时,由协议分析人员对爬取的http页面进行分析,以确定该页面所属应用后,将该ip地址及端口信息作为该应用特征更新至设备中;同时将爬取页面提取到的信息作为应用特征更新至设备中。

优选的,所述应用判断模块不能识别某个应用的情形包括这些页面含有指向某应用的特征,但规则库没有覆盖到该应用,或者虽然覆盖到了该应用,但规则有遗漏。

优选的,所述应用判断模块中的分析包括将遗漏的特征规则补充至规则库,或者对gzip响应内容进行解压来确定该页面所属应用。

优选的,根据权利要求5或6或7所述的方法,所系统适用于http协议、dns以及ftp协议的分析。

当本发明通过提出了一种分析因非对称路由环境而产生的单边上行未知流量的方法,将爬虫技术引用到协议识别分析中,解决了在非对称环境下只有http上行流量而没有http下行流量的问题,解决了非对称环境下流量不全导致对应http流量不识别的问题。同时通过爬虫构造相应的请求得到对应的http下行流量,对这些流量进行分析、总结,有利于现网设备流量的识别问题。

本专利提到的方案不仅仅限于http协议,还包括dns,ftp等开源协议。

附图说明

图1示出了本发明的逻辑框图

图2示出了本发明的方法在应用时得到的服务器响应图

图3示出了某网站返回的下行流量

图4示出了另一网站返回的下行流量

具体实施方式

以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定和覆盖的多种不同方式实施。

请参考图1,本发明提供了分析因非对称路由环境而产生的单边上行未知流量的方法,具体步骤如下:分析单边http上下流量,并提取服务器端ip,端口,uri等信息,并将这些信息反馈给爬虫模块;使用爬虫模块根据上述反馈的信息构造请求发送到服务器并对服务器返回的页面内容进行解析、提取信息同时对页面内容进行识别,同时将相关信息下发到设备以提高设备的识别结果,具体包括:

步骤101,提取单边上行http流量中的服务器端ip地址、端口、uri等相关信息

步骤102,将步骤101中提到的信息反馈给爬虫模块

步骤103,爬虫模块根据步骤101中提到的信息构造请求报文,并将请求报文发出,等待并接收服务器端的响应报文

步骤104,判断爬虫是否爬取到页面。如果是,进入步骤205、305;否则,由于爬取不到页面,无法确定该ip及端口属于那个应用的服务器的ip和端口,程序到此结束。

步骤205,对这些页面内容进行识别。

步骤206,判断些页面内容能否识别为某个具体的应用。如果可以,则直接进入步骤208;否则,进入步骤207。例如,得到服务器的响应如图2所示

可以根据图2中server字段所述内容,判定这个页面的请求属于对优酷视频网站的访问。

步骤207,在http页面不能识别为某个应用时,需要协议分析人员对爬取的http页面进行分析,以确定该页面所属应用。比如,这些页面含有指向某应用的特征,但由于规则库没有覆盖到该应用,或者虽然覆盖到了该应用,但规则有遗漏,这时就需要协议分析人员把这些特征规则补充至规则库。如果没有指向某应用的特征,这时就需要进行一些其它分析,包括但不限于对gzip响应内容进行解压等,来确定该页面所属应用。

步骤208,在确定http页面所属应用后,将该ip及端口作为该应用特征更新至设备中,例如图2中三元组<223.74.1.123、9679、tcp>反馈到设备后,设备在一定时间内碰到三元组是<223.74.1.123、9679、tcp>的流量,可以直接判定为优酷视频流量。

步骤305,对爬取的页面进行具体的分析,提取相关的信息。例如图3是这是某网站返回的下行流量,通过info字段提取后面的内容作为特征,后面设备遇到这种http请求,都可以识别成该网站。

图4是另一网站返回的下行流量,通过"serviceurls":"rtmfp://115.182.63.93:8120",我们认为ip为115.182.63.93,端口为8120,再加上rtmfp协议使用的是udp协议,因为将三元组<115.232.63.93,8120,udp>作为特征下发到设备,设备遇到这样的三元组都认为是该网站的业务。

当然这里提取的页面信息,不仅仅指包括上面2种信息。

此外,相应的,本发明还提供了一种分析因非对称路由环境而产生的单边上行未知流量的系统。本发明的方法和系统不仅仅限于http协议,还包括dns,ftp等开源协议。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1