CN1852134A - 一种对bt客户端数据传输的控制方法 - Google Patents

一种对bt客户端数据传输的控制方法 Download PDF

Info

Publication number
CN1852134A
CN1852134A CN 200510082905 CN200510082905A CN1852134A CN 1852134 A CN1852134 A CN 1852134A CN 200510082905 CN200510082905 CN 200510082905 CN 200510082905 A CN200510082905 A CN 200510082905A CN 1852134 A CN1852134 A CN 1852134A
Authority
CN
China
Prior art keywords
data message
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.)
Granted
Application number
CN 200510082905
Other languages
English (en)
Other versions
CN100362809C (zh
Inventor
马爱亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2005100829059A priority Critical patent/CN100362809C/zh
Publication of CN1852134A publication Critical patent/CN1852134A/zh
Application granted granted Critical
Publication of CN100362809C publication Critical patent/CN100362809C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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客户端数据传输的控制方法。
背景技术
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的协议字段,若有,则进行限流处理,否则作为正常的数据报文进行接收。
其中,步骤A后进一步包括:判断数据报文是否为TCP或UDP报文,若是,继续当前步骤,否则作为正常的数据报文进行接收。
其中,设置一个记录同一类BT报文特征的BT限流表;步骤B前进一步包括:判断数据报文是否命中BT限流表,若是,则进行限流处理,否则,执行步骤B。
其中,步骤B判断数据报文含有BT的协议字段时,进一步包括:将含有BT协议字段的数据报文的BT报文特征记录入所述BT限流表。
其中,所述BT报文特征包括:源IP地址、目的IP地址、源端口号、目的端口号和协议号;所述命中为:数据报文符合所设置的BT报文特征。
其中,所述BT的协议字段包括:十进制的数字19和字符串“BitTorrentprotocol”的组合。
其中,步骤A后进一步包括:根据访问控制列表ACL对所述数据报文进行限流。
由上述方法可以看出,本发明根据识别出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 (7)

1、一种对BT客户端数据传输的控制方法,其特征在于,该方法包括以下步骤:
A、接收到数据报文;
B、判断该数据报文是否含有BT的协议字段,若有,则进行限流处理,否则作为正常的数据报文进行接收。
2、根据权利要求1所述的方法,其特征在于,步骤A后进一步包括:
判断数据报文是否为TCP或UDP报文,若是,继续当前步骤,否则作为正常的数据报文进行接收。
3、根据权利要求1或2所述的方法,其特征在于,设置一个记录同一类BT报文特征的BT限流表;
步骤B前进一步包括:判断数据报文是否命中BT限流表,若是,则进行限流处理,否则,执行步骤B。
4、根据权利要求3所述的方法,其特征在于,步骤B判断数据报文含有BT的协议字段时,进一步包括:
将含有BT协议字段的数据报文的BT报文特征记录入所述BT限流表。
5、根据权利要求3或4所述的方法,其特征在于,所述BT报文特征包括:
源IP地址、目的IP地址、源端口号、目的端口号和协议号;
所述命中为:数据报文符合所设置的BT报文特征。
6、根据权利要求1所述的方法,其特征在于,所述BT的协议字段包括:十进制的数字19和字符串“BitTorrent protocol”的组合。
7、根据权利要求1所述的方法,其特征在于,步骤A后进一步包括:根据访问控制列表ACL对所述数据报文进行限流。
CNB2005100829059A 2005-07-05 2005-07-05 一种对bt客户端数据传输的控制方法 Active CN100362809C (zh)

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 true CN1852134A (zh) 2006-10-25
CN100362809C 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)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008095396A1 (fr) * 2007-02-08 2008-08-14 Yongmin Zhang Procédé et système de distribution de contenu pour réseau informatique
WO2019153931A1 (zh) * 2018-02-08 2019-08-15 华为技术有限公司 数据传输控制方法和装置、以及网络传输设备和存储介质
CN113242245A (zh) * 2021-05-12 2021-08-10 上海绚显科技有限公司 一种tcp消息限流方法、装置、服务器及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
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 联想(北京)有限公司 防火墙入侵检测与响应的方法
JP2004023597A (ja) * 2002-06-19 2004-01-22 Ariel Networks Co Ltd ネットワークシステムおよびプログラム
CN1271816C (zh) * 2002-08-09 2006-08-23 联想(北京)有限公司 包过滤的网络协议层用户认证方法
CN100339845C (zh) * 2002-08-15 2007-09-26 联想网御科技(北京)有限公司 基于状态检测的链路层统一资源定位符过滤的方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008095396A1 (fr) * 2007-02-08 2008-08-14 Yongmin Zhang Procédé et système de distribution de contenu pour réseau informatique
CN101242337B (zh) * 2007-02-08 2010-11-10 张永敏 一种计算机网络的内容发布方法及***
WO2019153931A1 (zh) * 2018-02-08 2019-08-15 华为技术有限公司 数据传输控制方法和装置、以及网络传输设备和存储介质
CN110138678A (zh) * 2018-02-08 2019-08-16 华为技术有限公司 数据传输控制方法和装置、以及网络传输设备和存储介质
CN110138678B (zh) * 2018-02-08 2023-02-24 华为技术有限公司 数据传输控制方法和装置、以及网络传输设备和存储介质
CN113242245A (zh) * 2021-05-12 2021-08-10 上海绚显科技有限公司 一种tcp消息限流方法、装置、服务器及存储介质

Also Published As

Publication number Publication date
CN100362809C (zh) 2008-01-16

Similar Documents

Publication Publication Date Title
US6910134B1 (en) Method and device for innoculating email infected with a virus
US7020783B2 (en) Method and system for overcoming denial of service attacks
US7742473B2 (en) Accelerator module
CN1237769C (zh) 可设定策略的端到端对话中继控制方法
US7095715B2 (en) System and method for processing network packet flows
EP1734718A2 (en) Computer-implemented method with real-time response mechanism for detecting viruses in data transfer on a stream basis
EP1301801A1 (en) Method for preventing denial of service attacks
CN1643878A (zh) 利用分布规则配置和控制内容传递中的网格资源的方法和设备
CN1279856A (zh) 识别和封锁可执行对象的方法和***
TW200423625A (en) Quality of service for iSCSI
US20050226216A1 (en) P2P traffic supporting router and P2P traffic information sharing system using the router
US20070091808A1 (en) System and method of managing data flow in a network
CN1863154B (zh) 对点对点应用进行限流的方法
CN1852134A (zh) 一种对bt客户端数据传输的控制方法
US20090052443A1 (en) Method and apparatus for managing dynamic filters for nested traffic flows
CN101087298B (zh) 一种基于tcp/udp上行会话数目控制p2p下载带宽的方法
US20100146100A1 (en) Flexible Application Classification
US8601094B2 (en) Method and computer program product utilizing multiple UDP data packets to transfer a quantity of data otherwise in excess of a single UDP packet
CN1741473A (zh) 一种网络数据包有效性判定方法及***
US7860129B2 (en) Device, system and method for data transfer optimization
GB2401281A (en) Propagation of viruses through an information technology network
JP4538370B2 (ja) 異常通信探知装置
JP4559295B2 (ja) データ通信システム及びデータ通信方法
US20050086390A1 (en) Efficient packet desegmentation on a network adapter
Briscoe Internet: Fairer is faster

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