CN100362809C - 一种对bt客户端数据传输的控制方法 - Google Patents
一种对bt客户端数据传输的控制方法 Download PDFInfo
- Publication number
- CN100362809C CN100362809C CNB2005100829059A CN200510082905A CN100362809C CN 100362809 C CN100362809 C CN 100362809C CN B2005100829059 A CNB2005100829059 A CN B2005100829059A CN 200510082905 A CN200510082905 A CN 200510082905A CN 100362809 C CN100362809 C CN 100362809C
- Authority
- CN
- China
- Prior art keywords
- message
- data message
- current limliting
- protocol
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种对BT客户端数据传输的控制方法,包括以下步骤:A、接收到数据报文;判断数据报文是否为TCP或UDP报文,若是,则下一步;否则作为正常的报文接收;B、判断数据报文是否命中BT限流表,若是,则进行限流处理,否则,进一步判断该数据报文是否含有BT的协议字段,若有,则进行限流处理,并将数据报文的BT报文特征记录入所述BT限流表,否则作为正常的报文进行接收。使用本发明,可以根据BT报文的协议字段识别报文从而进行限流。
Description
技术领域
本发明涉及互联网管理技术领域,特别是指一种对BT客户端数据传输的控制方法。
背景技术
BT(BitTorrent)作为一种用来进行文件下载的共享软件,是一个多点下载的P2P软件。其特点可简单总结为:下载的人越多,下载速度越快。它用的是一种传销的方式来达到下载资源共享的,其工作原理是:某BT客户端(peer)在下载的同时,也同时将已经下载的数据上传给其他BT客户端。参见图1的组网进行说明。
BT软件会将要下载的文件分成Z个部分,BT客户端甲在服务器随机下载了第N个部分,BT客户端乙在服务器随机下载了第M个部分,随后甲就会根据情况到乙的电脑上去下载乙已经下载好的M部分,乙就会根据情况到甲的电脑上去下载甲已经下载好的N部分,可见,BT客户端在下载数据的时候也向其他BT客户端上载其已经下载的数据,这样就不但减轻了服务器端得负荷,也加快了甲、乙的下载速度,同样减少了地域之间的限制。比如此刻还有BT客户端丙开始下载,要连到服务器去下载的话可能才几K,但是丙还可同时连到甲和乙的电脑上去下载,就快得多了。所以说BT软件的特点是用的人越多,下载的人越多,下载的速度也就越快。
由于BT软件的特点,可同时从多个其他BT客户端下载文件,因此其随之而来的是对网络带宽的严重占用,导致其他网络业务不能正常使用。尤其是在园区网(如校园网、运营商网络)中,由于用户的访问量很大,而出口带宽又是有限的,因此BT软件的大量使用会使得网络中经常出现某BT客户端无休止的占用出口的带宽资源,导致连接数的增加和流量的突然增大,出口瘫痪的事件时有发生。
为了避免因BT客户端下载文件时占用过多带宽,需要对BT客户端的下载过程进行限流,目前通用的方法为:确定出BT客户端之间互连所使用的端口号(即上传/下载文件所使用的端口号),通过封掉所确定出的部分端口来减少BT客户端之间的连接,从而减少其所占用的带宽。例如,当BT客户端之间的连接采用的端口范围为6881~6889时,则可通过封杀所有或部分具有这个端口范围的报文来实现BT的限流。
这种方法在一定程度上是可行的,其前提是要确定出BT客户端建立之间的连接所使用的端口。但是,由于不同BT客户端软件所采用的端口范围有所不同,并且所述端口范围可以通过一定的技术手段进行更改,导致了通过端口限流存在一定的局限性。如下表1示出了一些BT客户端软件及所使用的端口范围:
BT客户端名称 | 所使用的端口范围 |
贪婪ABC | 可以手工设置 |
BitComet | 没有公开 |
BitTorrent Plus | 可以手工设置 |
BitTorrent | 6881~6889 |
比特精灵Bit Spirit | 16881 |
表1
由表1可以看出,由于不同BT客户端所使用的端口范围的可变化性,使得封杀端口来对BT客户端的下载进行限流的方法存在一定的局限性,对于不确定的BT客户端使用的端口,没有办法进行限流。
发明内容
有鉴于此,本发明的主要目的在于提供了一种对BT客户端数据传输的控制方法,可以根据BT报文的协议字段识别报文从而进行限流。
本发明提供的一种对BT客户端数据传输的控制方法,包括以下步骤:
A、接收到数据报文;
B、判断该数据报文是否与预先设置的用于记录需要进行限制的各类BT报文特征的限流表中的一个记录相同,若是,则进行限流处理,然后结束流程;否则,执行步骤C;
C、判断该数据报文是否含有BT的协议字段,若有,则进行限流处理,否则作为正常的数据报文进行接收。
其中,步骤A后进一步包括:判断数据报文是否为TCP或UDP报文,若是,执行步骤B,否则作为正常的数据报文进行接收。
其中,步骤C判断数据报文含有BT的协议字段时,进一步包括:将含有BT协议字段的数据报文的BT报文特征作为一条新记录加入所述BT限流表。
其中,所述BT报文特征包括:源IP地址、目的IP地址、源端口号、目的端口号和协议号。
其中,所述BT的协议字段包括:十进制的数字19和字符串“BitTorrentprotocol”的组合。
其中,步骤A所述接收到数据报文后进一步包括:根据访问控制列表ACL对所述数据报文进行限流,判断所述数据报文是被允许接收或者是被丢弃,当判断所述数据报文被接收后,执行步骤B。
由上述方法可以看出,本发明根据识别出BT报文的协议字段进行限流,解决了使用端口限流的局限性。
并且通过判断是否为TCP或UDP协议,筛选出了基于TCP或UDP协议的BT对等协议的控制报文。
并且,通过建立BT限流表,记录下所识别出报文的BT报文特征(如源IP、目的IP、源端口号、目的端口好、协议号等),对于后续同一类报文,无需再分析BT的特征字段就可识别出BT报文;从而节约了处理时间,提高了效率。解决了逐包分析BT特征而使效率降低的问题。
并且,可以与访问控制列表(ACL)技术相结合,可以根据不同的组网和客户需求来制定BT限流方案,满足BT限流方案的多样性,适应面比较广。
附图说明
图1为BT客户端下载组网示意图。
图2为本发明BT软件下载流量的控制流程图。
具体实施方式
分析BT客户端的数据下载技术,各个BT客户端需要采用BT对等协议实现之间的信息交换。BT对等协议是基于TCP或UDP的,其连接的建立过程是由一个握手开始,后面是循环的消息流,在每个消息的前面,都有一个数字来表示消息的长度。握手的过程首先发送19(十进制),跟着是字符串“BitTorrent protocol”。19是字符串“BitTorrent protocol”的长度。
因此BT报文的识别可参照BT对等协议的握手过程进行识别。由上面的描述,握手的过程首先会发送19,跟着是字符串“BitTorrent protocol”,因此,标识BT报文的协议字段可以认为是数字“19”和字符串“BitTorrentprotocol”的组合。当然,若BT协议的字符串“BitTorrent protocol”发生了该变,则标识BT报文的协议字段也根据实际情况作相应的改变。
本发明的主要思想就是根据协议字段来识别出BT报文,而后记录该报文的特征用于进行限流。这是一种非常可靠的方案,因为无论BT客户端如何变化,它们必须遵守BT对等协议,否则BT客户端之间的链接就建立不起来,更谈不上数据传输。
下面参见图2示出的流程图,对本发明进行详细描述,包括以下步骤:
步骤201:收到数据报文后,首先判断接收的数据报文是否为TCP或UDP报文,若是,则执行步骤202;否则按照正常的数据报文进行接收处理。
存在这一步的原因是目前的BT对等协议是基于TCP或UDP协议的,通过这个步骤可以免去对非TCP或UDP报文的后续的分析,节约了时间。若需要对所有的报文都按照后面的方式分析,或者BT软件可以使用其他协议如UDP来传送数据包文时,这一步可以省略掉。
步骤202:判断该数据报文是否命中BT限流表,若是,则进行BT报文的限流处理,否则执行步骤203。
这里的BT限流表是用来记录同一类BT报文特征的表项,如下表2示出的BT限流表,该BT限流表的表项可包括:源IP地址、目的IP地址、源端口号、目的端口号、协议号及BT标记位等(根据实际情况还可以增加其他表项)。
源IP地址 | 目的IP地址 | 源端口号 | 目的端口号 | 协议号 | BT标记位 |
IP-11 | IP-21 | 6881 | 6889 | TCP | |
IP-12 | IP-22 | 6882 | 6889 | UDP | |
… | … | … | … | … | … |
表2
表2中的内容便是BT报文特征,其中,表2中必要的内容是IP五元组(源IP、目的IP、源端口号、目的端口号、协议号),我们知道,通过IP五元组可以唯一的确定一条数据流,因此可以使用该五元组来标识BT流。表2中的BT标记位可以用来标识对应的IP五元组是否为BT流,若是,则可以将BT标记位记为1(代表真),这样当检测到IP报文对应的BT标记位位1时,则表示该数据报文命中BT限流表。另外,不难理解若表2仅记录BT报文,则可以不需要BT标记位。
当确认数据报文命中BT限流表时,可以按照现有的限流方式进行限流,如进行丢包处理等,限流的具体实现方案有多种,由于为现有技术,这里不再赘述。
步骤203:判断该数据报文是否含有BT的协议字段,若有,则将该数据报文的BT报文特征写入BT限流表,并做BT限流处理,否则按照正常的数据报文进行接收处理。
这里判断数据报文是否包含有BT的协议字段,就是判断该BT报文是否包括数字19和字符串“BitTorrent protocol”全部或部分的组合。
上述方法采用了BT限流表,这样,对于已经识别出的BT报文,接收到后续的同类数据报文时,只需根据BT限流表中记录的BT报文特征,就可识别出是BT数据报文,无需再分析该数据报文的协议字段,最大限度的避免了逐包分析BT协议字段而导致效率的降低,从而节约了处理时间,提高了效率。
另外,将上述步骤和访问控制列表ACL(Access Control List)配合使用,可以根据不同的组网和用户需要来制定ACL,对数据报文进行限流。例如,通过ACL可以指定10.16.0.0网段用户10M的带宽,指定10.15.0.0网段用户20M的带宽。如:可以控制网段为110.10.10.0,24位掩码的用户进行BT限流。根据ACL也可以控制BT限流的方向,如:可以根据源IP来进行BT限流,也可以根据目的IP来进行限流。满足了BT限流方案的多样性,适应面比较广。关于ACL技术由于是公知技术,此处不再赘述。
使用ACL表可应用在上述步骤201接收到数据报文之后。当接收到数据报文后,首先读取ACL表,将数据报文按照ACL表进行处理,判断该数据报文是被允许接收或者是被丢弃,当判断报文被接收后,在按照上述的BT限流过程进行处理。
本发明虽然以BT业务的限流为例进行说明,但是对于类似的业务(如P2P业务),或者病毒的识别,也可以采用本发明的思想,即用协议字段进行识别,并记录识别出的报文的特征(如源IP地址、目的IP地址、源端口号、目的端口号、协议号等)写入一个表项,对后续报文的识别控制可根据该表项记录的报文特征进行识别控制。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种对BT客户端数据传输的控制方法,其特征在于,该方法包括以下步骤:
A、接收到数据报文;
B、判断该数据报文是否与预先设置的用于记录需要进行限制的各类BT报文特征的限流表中的一个记录相同,若是,则进行限流处理,然后结束流程;否则,执行步骤C;
C、判断该数据报文是否含有BT的协议字段,若有,则进行限流处理,否则作为正常的数据报文进行接收。
2.根据权利要求1所述的方法,其特征在于,步骤A后进一步包括:
判断数据报文是否为TCP或UDP报文,若是,执行步骤B,否则作为正常的数据报文进行接收。
3.根据权利要求1所述的方法,其特征在于,步骤C判断数据报文含有BT的协议字段时,进一步包括:
将含有BT协议字段的数据报文的BT报文特征作为一条新的记录加入所述BT限流表。
4.根据权利要求1或3所述的方法,其特征在于,所述BT报文特征包括:
源IP地址、目的IP地址、源端口号、目的端口号和协议号。
5.根据权利要求1所述的方法,其特征在于,所述BT的协议字段包括:十进制的数字19和字符串“BitTorrent protocol”的组合。
6.根据权利要求1所述的方法,其特征在于,步骤A所述接收到数据报文后进一步包括:根据访问控制列表ACL对所述数据报文进行限流,判断所述数据报文是被允许接收或者是被丢弃,当判断所述数据报文被接收后,执行步骤B。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100829059A CN100362809C (zh) | 2005-07-05 | 2005-07-05 | 一种对bt客户端数据传输的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100829059A CN100362809C (zh) | 2005-07-05 | 2005-07-05 | 一种对bt客户端数据传输的控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1852134A CN1852134A (zh) | 2006-10-25 |
CN100362809C true CN100362809C (zh) | 2008-01-16 |
Family
ID=37133604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100829059A Active CN100362809C (zh) | 2005-07-05 | 2005-07-05 | 一种对bt客户端数据传输的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100362809C (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101242337B (zh) * | 2007-02-08 | 2010-11-10 | 张永敏 | 一种计算机网络的内容发布方法及系统 |
CN110138678B (zh) * | 2018-02-08 | 2023-02-24 | 华为技术有限公司 | 数据传输控制方法和装置、以及网络传输设备和存储介质 |
CN113242245A (zh) * | 2021-05-12 | 2021-08-10 | 上海绚显科技有限公司 | 一种tcp消息限流方法、装置、服务器及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084162A1 (en) * | 2001-10-31 | 2003-05-01 | Johnson Bruce L. | Managing peer-to-peer access to a device behind a firewall |
CN1435977A (zh) * | 2002-02-01 | 2003-08-13 | 联想(北京)有限公司 | 防火墙入侵检测与响应的方法 |
WO2004001630A1 (ja) * | 2002-06-19 | 2003-12-31 | Ariel Networks Co., Ltd. | ネットワークシステムおよびプログラム |
CN1474534A (zh) * | 2002-08-09 | 2004-02-11 | 联想(北京)有限公司 | 包过滤的网络协议层用户认证方法 |
CN1475930A (zh) * | 2002-08-15 | 2004-02-18 | 联想(北京)有限公司 | 基于状态检测的链路层资源定位信息过滤的方法 |
-
2005
- 2005-07-05 CN CNB2005100829059A patent/CN100362809C/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030084162A1 (en) * | 2001-10-31 | 2003-05-01 | Johnson Bruce L. | Managing peer-to-peer access to a device behind a firewall |
CN1435977A (zh) * | 2002-02-01 | 2003-08-13 | 联想(北京)有限公司 | 防火墙入侵检测与响应的方法 |
WO2004001630A1 (ja) * | 2002-06-19 | 2003-12-31 | Ariel Networks Co., Ltd. | ネットワークシステムおよびプログラム |
CN1474534A (zh) * | 2002-08-09 | 2004-02-11 | 联想(北京)有限公司 | 包过滤的网络协议层用户认证方法 |
CN1475930A (zh) * | 2002-08-15 | 2004-02-18 | 联想(北京)有限公司 | 基于状态检测的链路层资源定位信息过滤的方法 |
Non-Patent Citations (1)
Title |
---|
利用NBAR来禁止或限制BT流量. 何俊杰.微型电脑应用,第21卷第2005年第4期. 2005 * |
Also Published As
Publication number | Publication date |
---|---|
CN1852134A (zh) | 2006-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6910134B1 (en) | Method and device for innoculating email infected with a virus | |
CN106953737B (zh) | 在计算机网络内使用输出协议提供应用元数据 | |
US8125905B2 (en) | System and method for processing network packet flows | |
US7020783B2 (en) | Method and system for overcoming denial of service attacks | |
US20070053382A1 (en) | Method, apparatus, signals, and medium for managing a transfer of data in a data network | |
WO2006000627A1 (en) | Method for service chaining in a communication network | |
EP2086183A1 (en) | Flow information restricting apparatus and method | |
US20150020188A1 (en) | Network Host Provided Security System for Local Networks | |
CN102724317A (zh) | 一种网络数据流量分类方法和装置 | |
TW200423625A (en) | Quality of service for iSCSI | |
EP1950917B1 (en) | Methods for peer-to-peer application message identifying and operating realization and their corresponding devices | |
US7545743B2 (en) | P2P traffic supporting router and P2P traffic information sharing system using the router | |
CN100362809C (zh) | 一种对bt客户端数据传输的控制方法 | |
Fu et al. | Performance comparison of congestion control strategies for multi-path TCP in the NORNET testbed | |
US20040076121A1 (en) | Method for an internet communication | |
JP2007179523A (ja) | 悪意データを検出する端末装置及び関連方法 | |
US8560715B1 (en) | System, method, and computer program product to automate the flagging of obscure flows as at least potentially unwanted | |
CN101958841A (zh) | 限制p2p应用的方法及设备 | |
CN100542094C (zh) | 一种网际协议报文的统计方法 | |
JP4538370B2 (ja) | 異常通信探知装置 | |
JP4572719B2 (ja) | トラフィック制御装置及びトラフィック制御方法並びにプログラム | |
CN106060155B (zh) | P2p资源共享的方法及装置 | |
JP4559295B2 (ja) | データ通信システム及びデータ通信方法 | |
Briscoe | Internet: Fairer is faster | |
Andon et al. | Modeling conflict processes on the internet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |