数据流量检测方法及装置的制作方法

文档序号:7718588阅读:417来源:国知局
专利名称:数据流量检测方法及装置的制作方法
技术领域
本发明实施例涉及网络技术领域,尤其是一种数据流量检测方法及装置。
背景技术
在传统的文件下载方式中,多个客户端分别从服务器下载文件,仅服务器提供下 载服务,客户端不提供下载服务。基于比特洪流(BitTorrent,简称BT)协议的端对端 (Peer to Peer,简称P2P)的下载方式是客户端既下载文件又提供下载服务,而服务器仅 提供关于客户端和下载文件的目录信息,并且客户端在下载文件时存在一定的散列特征, 因此,参与下载文件的多个客户端中都有其它客户端尚未下载的文件内容,从而能够为其 它客户端提供下载服务。在该种文件下载方式中,多个客户端能够同时从多个不同的地点 下载同一个文件,因此文件下载的数据传输速率大幅度提高。 在BT下载过程中,通过匹配特殊字符串实现对BT流量的检测,具体地,当BT客 户端之间进行对等连接时会存在一个握手的过程,该过程中的数据包中会出现用于标识BT 协议的字段,因此通过匹配数据包是否出现用于标识BT协议的字段即可获知该数据流量 是否是BT流量。 发明人在实施本发明的过程中发现,现有技术至少存在如下缺陷若BT数据经过 加密处理后,BT数据中用于标识BT协议的特征字符串消失,因此根据特征字符串进行BT流 量检测存在严重的漏报现象,降低了 BT数据的识别率。

发明内容
本发明实施例的目的在于提供一种数据流量检测方法及装置,提高加密数据的准 确识别率。 本发明实施例提供一种数据流量检测方法,包括 从接收到的数据包中获取用于表示客户端地址信息的第一地址信息; 若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载服务的客户端
地址信息的第二地址信息相同,则将所述数据包统计为比特洪流BT的数据流量。 本发明实施例还提供一种数据流量检测装置,包括 第一获取模块,用于从接收到的数据包中获取用于表示客户端地址信息的第一地 址信息; 统计模块,用于若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载 服务的客户端地址信息的第二地址信息相同,则将所述数据包统计为比特洪流BT的数据流量。 本发明实施例提供的数据流量检测方法及装置,若数据包是进行加密处理后形成 的数据包,在数据包进行加密处理的过程中并不会改变数据包的第一地址信息,因此若接 收到的数据包携带的第一地址信息与已缓存的第二地址信息相同,则将数据包统计为BT 的数据流量,提高了加密数据包的准确识别率。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。
J方法一个实施例的流程示意图; J方法又一个实施例的流程示意图; J装置一个实施例的结构示意-个实施例的结构示意图;



图1为本发明数据流j 图2为本发明数据流j 图3为本发明数据流j 图4为本发明数据流j
淞效 淞效 淞效 淞效
图5为图4所示实施例所适用网络架构的结构示意图,
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。 图1为本发明数据流量检测方法一个实施例的流程示意图,如图1所示,本发明实 施例包括如下步骤 步骤101、从接收到的数据包中获取用于表示客户端地址信息的第一地址信息;
步骤102、若第一地址信息与已缓存的用于表示能够提供BT下载服务的客户端地 址信息的第二地址信息相同,则将数据包统计为BT的数据流量。 本发明实施例中的第一地址信息具体可以为数据包中携带的客户端的地址信息, 更具体地,可以为客户端的因特网协议(Internet Protocol,简称IP)地址信息以及端口 信息。 本发明实施例提供的数据流量检测方法,若数据包是进行加密处理后形成的数据 包,在数据包进行加密处理的过程中并不会改变数据包中用于表示客户端地址信息的第一 地址信息,因此若接收到的数据包携带的第一地址信息与已缓存的用于表示能够提供BT 下载服务的客户端地址信息的第二地址信息相同,则将数据包统计为BT的数据流量,提高 了加密数据包的准确识别率;若为首次接收到携带有第一地址信息的数据包,则根据该第 一地址信息还可实现首包识别。 图2为本发明数据流量检测方法又一个实施例的流程示意图,如图2所示,本发明 实施例包括如下步骤 步骤201、从接收到的数据包中获取用于表示客户端地址信息的第一地址信息;
步骤202、若第一地址信息与已缓存的用于表示能够提供BT下载服务的客户端地 址信息的第二地址信息相同,则将数据包统计为BT的数据流量; 步骤203、若第一地址信息与已缓存的第二地址信息不相同,则判断数据包是否为 跟踪服务器发送的数据包; 步骤204、若数据包为跟踪服务器发送的数据包,则获取数据包中的第三地址信息; 步骤205、将第三地址信息进行缓存处理,使客户端能够根据该第三地址信息获取 到能够提供BT服务下载的客户端的地址信息; 步骤206、若数据包不是跟踪服务器发送的数据包,则判断数据包是否为分布式哈 希表网络发送的数据包; 步骤207、若数据包为分布式哈希表网络发送的数据包,则获取数据包中的第四地 址信息; 步骤208、将第四地址信息进行缓存处理,使客户端能够通过该第四地址信息获取 到能够提供BT服务下载的分布式哈希表网络的地址信息。 本实施例为了将客户端的地址信息、已缓存的地址信息、跟踪服务器的地址信息、 分布式哈希表(Distributed Hash Table,简称DHT)网络的地址信息进行区别,将客户端 的地址信息用第一地址信息表示,将已缓存的用于表示能够提供BT下载服务的客户端地 址信息用第二地址信息表示,将跟踪服务器的地址信息用第三地址信息表示,将DHT网络 的地址信息用第四地址信息表示。 上述步骤201中,第一地址信息具体可以为提供数据包的客户端的地址信息〈IP, Port〉,其中〈IP, Port〉表示客户端的IP地址和端口信息。 上述步骤202中,已缓存的第二地址信息可以为已经获知的能够提供BT下载服务 的客户端的地址信息〈IP,Port〉,若第一地址信息与第二地址信息相同,则说明具有第一地 址信息的客户端已经能够提供BT下载服务,并且该客户端发送的数据包属于BT的数据流 量,因此将该数据包统计为BT的数据流量。 上述步骤203中,若第一地址信息与已缓存的第二地址信息不相同,则说明该数 据包不是能够提供BT下载服务的客户端的地址信息,因此为了防止将该数据包漏报,需要 判断该数据包是否是跟踪(Tracker)服务器发送的数据包,判断方法具体可以为提取数 据包中的特征字符串;根据特征字符串判断数据包是否为跟踪服务器发送的数据包;由于 来自跟踪服务器的数据包具有用于标识是跟踪服务器发送的数据包的特定字符串,本实施 例为描述清楚,将用于标识是跟踪服务器发送的数据包的特定字符串称为第一特定字符 串,通过该第一特征字符串即可识别出该数据包是否是来自跟踪服务器的数据包;本发明 实施例中,在BT下载开始以及BT下载进行的过程中,跟踪服务器需要与客户端进行通信, 以获取客户端的下载信息,使得客户端通过跟踪服务器获取其它能够提供下载服务的客户 端的地址信息。 上述步骤204和步骤205中,若数据包为跟踪服务器发送的数据包,则获取数据包 中的第三地址信息,并将该第三地址信息进行缓存处理;通过将该第三地址信息进行缓存 处理后,可以使得客户端通过该第三地址信息获取到能够提供BT服务下载的客户端的地 址信息〈IP, Port〉;由于第三地址信息为跟踪服务器的地址信息,而跟踪服务器上记载了 能够提供下载服务的客户端的地址信息,因此当客户端获取到第三地址信息时,即可根据 第三地址信息获取到能够提供BT服务下载的客户端的地址信息。 上述步骤206中,若数据包不是跟踪服务器发送的数据包,为了防止将该数据包 漏报,需要进一步判断该数据包是否是DHT网络发送的数据包,判断方法可以为提取数据 包中的第二特征字符串;根据第二特征字符串判断数据包是否为DHT网络发送的数据包;由于来自DHT网络的数据包具有用于标识是DHT网络发送的数据包的特定字符串,本实施 例为描述清楚,将用于标识是DHT网络发送的数据包的特定字符串称为第二特定字符串, 通过该第二特征字符串即可识别出该数据包是否是来自DHT网络的数据包。
上述步骤207和步骤208中,若数据包为DHT网络发送的数据包,则获取数据包中 的第四地址信息,并将该第四地址信息进行缓存处理;通过将该第四地址信息进行缓存处 理后,可以使得客户端通过该第四地址信息获取到能够提供BT服务下载的DHT网络的地址 信息〈IP, Port〉;本发明实施例中的DHT网络应用于P2P网络,作为一种分布式存储方法, 在不需要服务器的情况下,每个客户端负责一个小范围的路由,并负责存储一小部分数据, 从而实现整个DHT网络的寻址和存储;将连入DHT网络的客户端称为节点(node),节点之 间互相保存有路由信息,因此客户端只要与任何一个已经在DHT网络中的节点连接上,客 户端就可以寻找到更多的节点,从而连入网络。 进一步地,上述步骤203 步骤205与步骤206 步骤208在具体执行过程中并 无先后顺序,可依实际情况设定检测数据包地址信息的顺序。 本发明实施例提供的数据流量检测方法,若数据包是进行加密处理后形成的数据 包,在数据包进行加密处理的过程中并不会改变数据包的第一地址信息,因此若接收到的 数据包携带的第一地址信息与已缓存的第二地址信息相同,则将数据包统计为BT的数据 流量,提高了加密数据包的准确识别率;若首次接收到携带有第一地址信息的数据包,则根 据该第一地址信息还可实现首包识别。 图3为本发明数据流量检测装置一个实施例的结构示意图,如图3所示,本实施例 包括第一获取模块31和统计模块32。 其中,第一获取模块31从接收到的数据包中获取用于表示客户端地址信息的第 一地址信息;若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载服务的客户 端地址信息的第二地址信息相同,则统计模块32将所述数据包统计为比特洪流BT的数据流量。 本发明实施例提供的数据流量检测装置,若数据包是进行加密处理后形成的数据 包,在数据包进行加密处理的过程中并不会改变数据包的第一地址信息,因此若第一获取 模块31获取到的数据包中携带的第一地址信息与已缓存的第二地址信息相同,则统计模 块32将数据包统计为BT的数据流量,因此提高了加密数据包的准确识别率;若为首次接收
到携带有第一地址信息的数据包,则根据该第一地址信息还可实现首包识别。
图4为本发明数据流量检测装置又一个实施例的结构示意图,如图4所示,本实施 例包括第一获取模块41、统计模块42、第一判断模块43、第二获取模块44、第一缓存模块 45、第二判断模块46、第三获取模块47、第二缓存模块48。 其中,第一获取模块41从接收到的数据包中获取用于表示客户端地址信息的第 一地址信息;若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载服务的客户 端地址信息的第二地址信息相同,则统计模块42将所述数据包统计为比特洪流BT的数据 流量;所述第一地址信息与已缓存的第二地址信息不相同,则第一判断模块43判断所述数 据包是否为跟踪服务器发送的数据包;若所述数据包为所述跟踪服务器发送的数据包,则 第二获取模块44获取所述数据包中的第三地址信息;第一缓存模块45将所述第三地址信 息进行缓存处理;若所述数据包不是所述跟踪服务器发送的数据包,则第二判断模块46判断所述数据包是否为分布式哈希表网络发送的数据包;若所述数据包为所述分布式哈希表 网络发送的数据包,则第三获取模块获取所述数据包中的第四地址信息;第二缓存模块48 将所述第四地址信息进行缓存处理。 进一步地,第一判断模块43还可以包括第一提取单元431和第一判断单元432 ; 其中,第一提取单元431提取所述数据包中的第一特征字符串;第一判断单元432根据第一 提取单元431提取到的第一特征字符串判断所述数据包是否为跟踪服务器发送的数据包。
进一步地,第二判断模块46还可以包括第二提取单元461和第二判断单元462 ; 其中,第二提取单元461提取所述数据包中的第二特征字符串;第二判断单元462根据第二 提取单元461提取到的第二特征字符串判断所述数据包是否为分布式哈希表网络发送的 数据包。 本发明实施例提供的数据流量检测装置,若数据包是进行加密处理后形成的数据 包,在数据包进行加密处理的过程中并不会改变数据包的第一地址信息,因此若第一获取 模块41获取到的数据包中携带的第一地址信息与已缓存的第二地址信息相同,则统计模 块42将数据包统计为BT的数据流量,因此提高了加密数据包的准确识别率;若为首次接收
到携带有第一地址信息的数据包,则根据该第一地址信息还可实现首包识别。 可替换地,在上述图4所示实施例中,第一缓存模块45和第二缓存模块48可以合
并为同一个缓存模块对数据包的地址信息进行缓存处理。 图5为图4所示实施例所适用网络架构的结构示意图,如图5所示,在该网络架构 中包括DHT网络51、跟踪服务器52、客户端53、内部网络54、数据流量检测装置55。
其中,数据流量检测装置55位于DHT网络51以及内部网络54的出口处,通过数 据流量检测装置55可以对所有来自内部网络54的数据包以及内部网络54接收到的数据 包进行监测并获知数据包的BT流量信息;数据流量检测装置55还需要对接收到的数据包 进行深度解析,获取数据包中携带的地址信息〈IP, Port〉,并将该地址信息进行缓存处理, 若流经数据流量检测装置55的数据包携带的地址信息〈IP, Port〉与已缓存的地址信息相 同,则表明该数据包来自客户端53,将数据包统计为BT的数据流量。 进一步地,若地址信息〈IP, Port〉与数据流量检测装置55已缓存的地址信息不相
同,则数据流量检测装置55判断数据包是否为跟踪服务器52发送的数据包,若数据包为跟
踪服务器52发送的数据包,则获取数据包中的地址信息,并将该地址信息进行缓存处理,
使客户端53可以通过该地址信息获取到能够提供下载服务的客户端。 进一步地,若数据包不是跟踪服务器52发送的数据包,则数据流量检测装置55判
断数据包是否为DHT网络51发送的数据包,若数据包为分布式哈希表网络发送的数据包,
则数据流量检测装置55获取数据包中的地址信息,并将该地址信息进行缓存处理,使客户
端53可以通过该地址信息获取到DHT网络51中能够提供下载服务的服务器。 在本实施例所提供的网络架构中,若数据包是进行加密处理后形成的数据包,在
数据包进行加密处理的过程中并不会改变数据包的地址信息,因此数据流量检测装置55
通过获取到的数据包中携带的地址信息即可识别出该数据包是来自客户端53、跟踪服务器
52、 DHT网络51的数据包,因此提高了加密数据包的准确识别率;并且,若数据流量检测装
置55首次接收到携带有第一地址信息的数据包,则根据该第一地址信息还可实现首包识别。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过程序 指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执 行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、 RAM、磁碟或者光盘 等各种可以存储程序代码的介质。 最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽 管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然 可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替 换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精 神和范围。
权利要求
一种数据流量检测方法,其特征在于,包括从接收到的数据包中获取用于表示客户端地址信息的第一地址信息;若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载服务的客户端地址信息的第二地址信息相同,则将所述数据包统计为比特洪流BT的数据流量。
2. 根据权利要求l所述的方法,其特征在于,还包括若所述第一地址信息与已缓存的第二地址信息不相同,则判断所述数据包是否为跟踪 服务器发送的数据包;若所述数据包为所述跟踪服务器发送的数据包,则获取所述数据包中的第三地址信息;将所述第三地址信息进行缓存处理,使客户端能够根据所述第三地址信息获取到能够 提供比特洪流服务下载的客户端的地址信息。
3. 根据权利要求2所述的方法,其特征在于,所述判断所述数据包是否为跟踪服务器 发送的数据包包括提取所述数据包中的第一特征字符串;根据所述第一特征字符串判断所述数据包是否为跟踪服务器发送的数据包。
4. 根据权利要求2所述的方法,其特征在于,还包括若所述数据包不是所述跟踪服务器发送的数据包,则判断所述数据包是否为分布式哈 希表网络发送的数据包;若所述数据包为所述分布式哈希表网络发送的数据包,则获取所述数据包中的第四地 址信息;将所述第四地址信息进行缓存处理,使客户端能够通过该第四地址信息获取到能够提 供比特洪流服务下载的分布式哈希表网络的地址信息。
5. 根据权利要求4所述的方法,其特征在于,所述判断所述数据包是否为分布式哈希 表网络发送的数据包包括提取所述数据包中的第二特征字符串;根据所述第二特征字符串判断所述数据包是否为分布式哈希表网络发送的数据包。
6. 根据权利要求1 5任一所述的方法,其特征在于,所述第一地址信息、第二地址信 息、第三地址信息、第四地址信息为所述数据包中携带的因特网协议地址和端口信息。
7. —种数据流量检测装置,其特征在于,包括第一获取模块,用于从接收到的数据包中获取用于表示客户端地址信息的第一地址信息;统计模块,用于若所述第一地址信息与已缓存的用于表示能够提供比特洪流下载服务 的客户端地址信息的第二地址信息相同,则将所述数据包统计为比特洪流BT的数据流量。
8. 根据权利要求7所述的装置,其特征在于,还包括第一判断模块,若所述第一地址信息与已缓存的第二地址信息不相同,则判断所述数 据包是否为跟踪服务器发送的数据包;第二获取模块,用于若所述数据包为所述跟踪服务器发送的数据包,则获取所述数据 包中的第三地址信息;第一缓存模块,用于将所述第三地址信息进行缓存处理。
9. 根据权利要求8所述的装置,其特征在于,所述第一判断模块包括 第一提取单元,用于提取所述数据包中的第一特征字符串;第一判断单元,用于根据所述第一特征字符串判断所述数据包是否为跟踪服务器发送 的数据包。
10. 根据权利要求8所述的装置,其特征在于,还包括第二判断模块,用于若所述数据包不是所述跟踪服务器发送的数据包,则判断所述数 据包是否为分布式哈希表网络发送的数据包;第三获取模块,用于若所述数据包为所述分布式哈希表网络发送的数据包,则获取所 述数据包中的第四地址信息;第二缓存模块,用于将所述第四地址信息进行缓存处理。
11. 根据权利要求IO所述的装置,其特征在于,所述第二判断模块包括 第二提取单元,用于提取所述数据包中的第二特征字符串;第二判断单元,用于根据所述第二特征字符串判断所述数据包是否为分布式哈希表网 络发送的数据包。
全文摘要
本发明实施例涉及一种数据流量检测方法及装置,其中方法包括从接收到的数据包中获取用于表示客户端地址信息的第一地址信息;若第一地址信息与已缓存的用于表示能够提供比特洪流下载服务的客户端地址信息的第二地址信息相同,则将数据包统计为比特洪流BT的数据流量。本发明实施例提供的数据流量检测方法及装置,若数据包是进行加密处理后形成的数据包,在数据包进行加密处理的过程中并不会改变数据包的第一地址信息,因此若接收到的数据包携带的第一地址信息与已缓存的第二地址信息相同,则将数据包统计为BT的数据流量,提高了加密数据包的准确识别率;若首次接收到携带有第一地址信息的数据包,则根据该第一地址信息即可实现首包识别。
文档编号H04L12/56GK101702677SQ200910222150
公开日2010年5月5日 申请日期2009年11月18日 优先权日2009年11月18日
发明者刘永京, 夏祖转 申请人:成都市华为赛门铁克科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1