CN1852134A - 一种对bt客户端数据传输的控制方法 - Google Patents
一种对bt客户端数据传输的控制方法 Download PDFInfo
- 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
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的协议字段,若有,则进行限流处理,否则作为正常的数据报文进行接收。
其中,步骤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对所述数据报文进行限流。
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)
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)
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 | 联想网御科技(北京)有限公司 | 基于状态检测的链路层统一资源定位符过滤的方法 |
-
2005
- 2005-07-05 CN CNB2005100829059A patent/CN100362809C/zh active Active
Cited By (6)
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 |