CN1937554A - 一种使p2p文件下载流量本地化的方法 - Google Patents
一种使p2p文件下载流量本地化的方法 Download PDFInfo
- Publication number
- CN1937554A CN1937554A CNA2006100965594A CN200610096559A CN1937554A CN 1937554 A CN1937554 A CN 1937554A CN A2006100965594 A CNA2006100965594 A CN A2006100965594A CN 200610096559 A CN200610096559 A CN 200610096559A CN 1937554 A CN1937554 A CN 1937554A
- Authority
- CN
- China
- Prior art keywords
- file
- download
- client
- network
- file download
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开一种使P2P文件下载流量本地化的方法,该方法的步骤是:通过协议分析识别P2P文件下载数据分组,得到当前流行的下载文件列表,并依据此文件列表把相应的P2P文件下载并缓存在本地。本发明在不需要终端用户更新P2P客户端的情况下,通过定制的P2P客户端主动向本地的P2P下载用户提供文件下载服务,从而减少终端用户的下载等待时间;同时本发明还主动切断本地P2P客户端到外网的P2P文件下载连接,从而减少P2P文件下载对网络出口带宽的占用。本发明能在优化因特网服务提供商出口带宽的同时提高终端用户满意度,做到终端用户及因特网服务提供商双赢。
Description
一、技术领域
本发明涉及一种使因特网中P2P文件下载流量本地化的方法,适用于互联网服务提供领域。
二、背景技术
随着因特网技术的普及,在90年代后期,以Napster为代表的P2P(peer-to-peer)应用开始在因特网上流行。在P2P系统中,一个终端P2P程序既是客户端也是服务器。相比于传统的Client/Server模式,在P2P应用中,信息的发布和交换不再依赖于特定的服务器,因而使得信息的发布和交换更加方便快捷,从而使终端个人用户在因特网上发布信息成为可能。在2000年代初期,以Gnutella和KaZZa为代表的P2P文件交换网络开始流行。基于P2P的文件交换系统目前已经发展到第二代,以BitTorrent和eDonkey系列为代表。
由于大量因特网用户使用P2P软件来下载和共享文件,而这些文件又以视频文件和软件为主(这些文件长度可达几百兆,甚至几千兆字节),因此P2P文件下载占据了大量的网络带宽。同时由于当前的P2P文件共享软件在选择伙伴(peer)时带有一定的盲目性,如一个北京的用户可能会选择从一个远在美国的用户那里下载一个文件的片断,但在离他几幢楼之外的一个同在北京的用户也有该用户想要下载的内容。这样就造成了宝贵的核心网带宽的严重浪费。另一方面,由于P2P文件下载对带宽的占用,使得网络拥塞,造成了P2P应用自身和其它网络应用(如Web浏览,Email等)的服务质量的下降。
基于以上背景,本发明提出一种对P2P文件下载流量进行本地化的方法,这种方法的基本思想是主动把当前流行的P2P文件下载到本地进行缓存,当本地有P2P用户下载这些被缓存的文件时,一方面本技术会主动把这些文件送给该P2P用户,另一方面又会主动关闭该P2P用户与外网的P2P连接。由于P2P文件下载的流量被限制在本地进行,一方面我们节省了核心网带宽,使得这些带宽可以用来提高所有网络应用的服务质量,另一方面由于文件下载在本地进行,P2P下载的速率也相应提高。
三、发明内容
1、发明目的:本发明的目的是提供一种使因特网中P2P文件下载的网络流量本地化的方法,使用这种方法后,能大幅度降低核心因特网流量,同时提高终端用户的P2P文件下载速率和其它因特网应用的服务质量,在优化网络带宽的同时,提高终端用户满意度。
2、技术方案:本发明所述的一种使P2P文件下载流量本地化的方法包括二个子系统:P2P下载检测及控制子系统和P2P文件缓存及分发子系统。其中P2P下载检测及控制子系统用来对P2P文件下载进行监视和控制;P2P文件缓存及分发子系统对P2P文件进行缓存和向用户提供本地P2P文件下载。这两个子系统在具体部署时可灵活配置:一个P2P文件下载检测及控制子系统可以和一个或多个分级的P2P文件缓存及分发子系统配合工作。其方法包括如下步骤:
步骤1:利用分光器或网络设备的镜像功能导出原始数据,可以监测到流经某条通信链路上的所有IP分组。对这些IP分组用已知的P2P文件下载协议(例如BitTorrent和eDonkey)进行分析,就可以得到属于特定P2P文件下载协议的分组。对协议的内容进行分析,可以得到被请求下载的文件名及发送请求的客户端的ID值和IP地址和监听端口号等信息。例如BitTorrent客户端发送的下载请求是基于TCP连接的,具有如下格式的数据:
“GET/URI?info_hash=文件ID&peer_id=客户端ID&port=本地监听端口号…”其中info_hash是所请求的文件的ID值,peer_id是客户端自身的ID值,port是用来接受别的客户端连接请求的端口号。根据BitTorrent的下载请求数据包中的内容,可以得到所请求的文件ID,客户端的IP地址和ID号,以及客户端所监听的端口号。类似地,也可以对eDonkey等协议进行相应的分析。
根据获得的数据,可以进一步得到如下统计信息:
1)文件流行程度的列表(表1)
文件名 | 总请求下载次数 | 特定时间段(如一天)请求下载次数 |
文件-1 | 1000 | 100 |
文件-2 | 600 | 80 |
… | ||
文件-n | 1 | 1 |
表1反映了P2P文件下载网络中不同的文件的流行程度。例如文件-1在当前时间段内被请求下载了100次,它的总请求次数是1000次等。
2)文件对应的客户端信息列表(表2)
文件名 | 客户端信息列表 |
文件-1 | (client_1_1,ip_1_1,port_1_1) |
文件-2 | (client_2_1,ip_2_1,port_2_1),(client_2_2,ip_2_2,port_2_2),(client_2_3,ip_2_3,port_2_3) |
… | … |
文件-n | (client_n_1,ip_n_1,port_n_1),(client_n_2,ip_n_2,port_n_2),…,(client_n_x,ip_n_x,port_n_x) |
表2反映了正在请求同一个文件的当前活跃客户端的信息。例如正在请求文件-1的客户端数目是1,这个客户端的ID是client_1_1,IP地址是ip_1_1,用来监听其它客户端连接请求的端口号是port_1_1。
3)客户端到外网的P2P文件下载TCP连接列表(表3)
客户端ID | 到外网的P2P文件下载TCP连接信息 |
Client_1 | connection_1_1 |
Client_2 | connection_2_1,connection_2_2,…,connection_2_x |
… | … |
Client_m | connection_m_1,connection_m_2,…,connection_m_y |
表3反映了一个客户端到外网的P2P文件下载的TCP连接信息。例如Client_1有一个到外网的文件下载TCP连接。在这里每个TCP连接用一个四元组(源IP地址,源端口号,目的IP地址,目的端口号)来表示。一个P2P下载连接正在下载哪个文件可以由表2中的信息来判定,例如,如果client_1_1的一个到外部网络的TCP连接的源IP地址和端口号分别为ip_1_1和port_1_1,则这个连接为下载文件-1的P2P下载连接。
步骤2:根据表1,当某一文件的流行程度超过了特定的门限后,P2P下载检测及控制子系统通知P2P文件缓存及分发子系统把这个文件下载到本地进行缓存。文件流行程度的标准可以是:当特定时间间隔(如24小时)内文件被请求的次数超过X(如5)次;或文件请求在时间上符合某一特定的分布。
步骤3:当P2P文件缓存及分发子系统收到P2P下载检测及控制子系统下载某一文件的请求后,下载文件并缓存在本地。在下载文件时优先从内部网络中下载,只有当内部网络中不能下载此文件时,才从外部网络中下载。
步骤4:当P2P文件缓存及分发子系统中缓存有某个文件(或文件的部分内容)之后,P2P下载及控制子系统就可以依据表2和表3的信息,按一定的方式(例如根据P2P总体流量,或单个连接的流量,或随机的方式等)断开下载这个文件的到外部网络的TCP连接。断开连接的方法可以通过给TCP连接二端的P2P客户端发送TCP连接复位分组或指示网络设备过滤该连接的分组。同时P2P文件下载及连接控制子系统通知P2P文件缓存及分发子系统为这些连接被断开的P2P客户端提供文件下载服务。
步骤5:当P2P文件缓存及分发子系统收到为某个内部网络的P2P客户端提供内容的指令后,它将主动发起一个或多个到该P2P客户端的连接,并开始向此客户端提供文件内容。
功能模块:本发明包含的二个子系统:P2P文件下载检测及控制子系统、P2P文件缓存及分发子系统,它们的结构如附图1所示。这两个子系统的功能如下所述:
P2P文件下载及控制子系统完成如下功能:
(1)对原始数据进行分析,从中得到P2P文件下载数据分组,并进行特定的P2P协议分析(P2P文件下载检测模块)。
(2)从P2P分组中提取当前流行的文件列表,文件所对应的活动客户端信息,以及每个客户端所对应的P2P文件下载连接信息(表1-3)等(P2P内容统计模块)。
(3)对连接到外网的P2P文件下载连接进行管理,按规则断开到外网的P2P文件传输连接(P2P连接控制模块)。
P2P文件缓存及分发子系统由缓存及控制模块及定制P2P客户端组成,缓存及控制模块完成的功能如下:
(1)根据下载文件的流行程度指挥定制P2P客户端去主动下载并缓存特定文件。
(2)对缓存的P2P文件进行管理,为流行度高的文件优化缓存的力度(如提供更高的网络带宽,更快的访问速度等);及时清除过期文件。
定制P2P客户端完成如下功能:
(1)完成标准的P2P文件下载协议,如BitTorrent,eDonkey。
(2)根据缓存及控制模块的指令,主动向指定的其它P2P客户端发起连接及文件传输请求。
(3)与标准P2P客户端相比,定制P2P客户端不设流量控制,即使它不向别的标准客户端索要文件块,它也不会拒绝向别的客户端提供文件内容。
3、有益效果:本发明能降低P2P文件下载对网络核心资源的占用;提高P2P文件下载用户的下载速度;提高上网用户的服务质量。
四、附图说明
图1:P2P文件下载流量本地化方法的结构图。
图2:一个P2P文件下载检测及制子系统与多个P2P文件缓存及分发子系统配合的情形。
五、具体实施方式
本发明的具体实施方式如图1所示。城域网/省域网通过路由器-1与因特网骨干网的路由器-2相连。通过分光或镜像,得到路由器-1与路由器-2间的所有IP数据分组。IP数据分组被送到P2P文件下载检测及控制子系统中的P2P文件下载检测模块,经该模块检测出P2P文件下载分组,并经P2P内容统计模块分析得到文件流行程度的列表、文件对应的客户端信息列表、客户端到外网的P2P文件下载TCP连接列表等信息。
P2P文件缓存及分发子系统中的缓存及控制模块根据文件流行程度的列表指挥定制的Client群主动下载并缓存文件。当本地的P2P客户端请求一个本地已经缓存(或部分缓存)了文件时,P2P文件下载检测及控制子系统通知定制的Client群主动向P2P用户提供相应的文件;同时P2P文件下载检测及控制子系统中的P2P连接控制模块主动切断本地P2P用户到外部网络的文件下载连接。
图2显示了一个P2P文件下载检测及控制子系统和多个P2P文件缓存及分发子系统配合的情形。在这种情形下,P2P文件下载检测及控制子系统被安装在省级互联网出口处,而多个P2P文件缓存及分发子系统被安装在城域网的出口。这种方式将使得P2P缓存更靠近终端用户,从而降低城域网间的P2P文件下载流量。
Claims (2)
1、一种使P2P文件下载流量本地化的方法,其特征是该方法包含如下的步骤:
(1)利用分光器或网络设备的镜像功能导出原始数据,监测到流经某条通信链路上的所有IP分组;
(2)用P2P文件下载协议对上述IP分组进行协议分析,得到下载文件的流行程度列表、下载文件所对应的当前活动P2P客户端列表、P2P客户端所对应的网络连接信息列表;
(3)根据所得到的下载文件流行程度列表,将当前流行程度高的文件下载到本地进行缓存;
(4)当监测到某个P2P文件下载用户向P2P网络请求下载一个本地已经缓存或部分缓存的文件时,通过标准的P2P协议主动向该用户提供该文件内容,并切断该用户与外部网络其它P2P客户端的网络连接。
2、根据权利要求1所述的一种使P2P文件下载流量本地化的方法,其特征是在对下载文件进行本地缓存时,优先从本地的P2P客户端中取数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100965594A CN1937554A (zh) | 2006-09-30 | 2006-09-30 | 一种使p2p文件下载流量本地化的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100965594A CN1937554A (zh) | 2006-09-30 | 2006-09-30 | 一种使p2p文件下载流量本地化的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1937554A true CN1937554A (zh) | 2007-03-28 |
Family
ID=37954834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006100965594A Pending CN1937554A (zh) | 2006-09-30 | 2006-09-30 | 一种使p2p文件下载流量本地化的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1937554A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729581A (zh) * | 2008-10-28 | 2010-06-09 | 华为技术有限公司 | 一种在p2p网络中实现重定向的方法、系统及设备 |
CN101873348A (zh) * | 2010-06-09 | 2010-10-27 | 清华大学 | 基于网络出口设备的云存储系统及其网络访问方法 |
WO2011147251A1 (zh) * | 2010-05-24 | 2011-12-01 | 华为技术有限公司 | 移动宽带网络中本地化流量交换的控制方法、装置及系统 |
CN101478559B (zh) * | 2008-05-29 | 2012-08-29 | 北京东方网信科技股份有限公司 | 一种支持多域的p2p流量缓存方法及其系统 |
CN102739712A (zh) * | 2011-04-08 | 2012-10-17 | 中国移动通信集团贵州有限公司 | 一种网络缓存数据分发的方法和系统 |
CN103067517A (zh) * | 2012-12-31 | 2013-04-24 | 网宿科技股份有限公司 | 结合重定向和主动连接的p2p缓存服务器系统和实现方法 |
CN103747105A (zh) * | 2014-01-26 | 2014-04-23 | 深圳市远行科技有限公司 | 一种网络文件的缓存方法及系统 |
CN103825916A (zh) * | 2012-11-16 | 2014-05-28 | 腾讯科技(深圳)有限公司 | 一种资源下载方法及系统 |
CN104137133A (zh) * | 2012-02-21 | 2014-11-05 | 维亚塞斯公司 | 测量观众的方法 |
CN104243344A (zh) * | 2014-10-11 | 2014-12-24 | 网宿科技股份有限公司 | 一种有效数据包捕获方法及请求重定向服务器 |
CN104822084A (zh) * | 2015-04-30 | 2015-08-05 | 华南理工大学 | 基于并发流的p2p实时播放系统快速频道切换方法 |
CN107231423A (zh) * | 2017-06-07 | 2017-10-03 | 北京奇艺世纪科技有限公司 | 一种文件分发方法及系统 |
US9998533B2 (en) | 2009-05-31 | 2018-06-12 | International Business Machines Corporation | P2P content caching system and method |
-
2006
- 2006-09-30 CN CNA2006100965594A patent/CN1937554A/zh active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101478559B (zh) * | 2008-05-29 | 2012-08-29 | 北京东方网信科技股份有限公司 | 一种支持多域的p2p流量缓存方法及其系统 |
CN101729581A (zh) * | 2008-10-28 | 2010-06-09 | 华为技术有限公司 | 一种在p2p网络中实现重定向的方法、系统及设备 |
US9998533B2 (en) | 2009-05-31 | 2018-06-12 | International Business Machines Corporation | P2P content caching system and method |
WO2011147251A1 (zh) * | 2010-05-24 | 2011-12-01 | 华为技术有限公司 | 移动宽带网络中本地化流量交换的控制方法、装置及系统 |
CN101873348A (zh) * | 2010-06-09 | 2010-10-27 | 清华大学 | 基于网络出口设备的云存储系统及其网络访问方法 |
CN102739712A (zh) * | 2011-04-08 | 2012-10-17 | 中国移动通信集团贵州有限公司 | 一种网络缓存数据分发的方法和系统 |
CN104137133A (zh) * | 2012-02-21 | 2014-11-05 | 维亚塞斯公司 | 测量观众的方法 |
CN104137133B (zh) * | 2012-02-21 | 2017-11-10 | 维亚塞斯公司 | 测量观众的方法 |
CN103825916A (zh) * | 2012-11-16 | 2014-05-28 | 腾讯科技(深圳)有限公司 | 一种资源下载方法及系统 |
CN103825916B (zh) * | 2012-11-16 | 2018-07-10 | 腾讯科技(深圳)有限公司 | 一种资源下载方法及系统 |
CN103067517B (zh) * | 2012-12-31 | 2016-03-30 | 网宿科技股份有限公司 | 结合重定向和主动连接的p2p缓存服务器系统和实现方法 |
CN103067517A (zh) * | 2012-12-31 | 2013-04-24 | 网宿科技股份有限公司 | 结合重定向和主动连接的p2p缓存服务器系统和实现方法 |
CN103747105A (zh) * | 2014-01-26 | 2014-04-23 | 深圳市远行科技有限公司 | 一种网络文件的缓存方法及系统 |
CN104243344A (zh) * | 2014-10-11 | 2014-12-24 | 网宿科技股份有限公司 | 一种有效数据包捕获方法及请求重定向服务器 |
CN104243344B (zh) * | 2014-10-11 | 2018-06-19 | 网宿科技股份有限公司 | 一种有效数据包捕获方法及请求重定向服务器 |
CN104822084A (zh) * | 2015-04-30 | 2015-08-05 | 华南理工大学 | 基于并发流的p2p实时播放系统快速频道切换方法 |
CN104822084B (zh) * | 2015-04-30 | 2018-01-05 | 华南理工大学 | 基于并发流的p2p实时播放系统快速频道切换方法 |
CN107231423A (zh) * | 2017-06-07 | 2017-10-03 | 北京奇艺世纪科技有限公司 | 一种文件分发方法及系统 |
CN107231423B (zh) * | 2017-06-07 | 2019-12-13 | 北京奇艺世纪科技有限公司 | 一种文件分发方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1937554A (zh) | 一种使p2p文件下载流量本地化的方法 | |
KR101453594B1 (ko) | 관리된 멀티미디어 전달 네트워크 및 멀티미디어 서비스 제공 방법 | |
US8606846B2 (en) | Accelerating peer-to-peer content distribution | |
CN101641685B (zh) | 用对等模型和客户端服务器模型传送文件到客户端的方法 | |
CN100556129C (zh) | 一种对等连接流媒体直播系统和装置 | |
CN104836821B (zh) | 一种基于路由器设备的网络加速方法、装置和设备 | |
US20090100128A1 (en) | Accelerating peer-to-peer content distribution | |
CN103108008B (zh) | 一种下载文件的方法及文件下载系统 | |
CN101039281B (zh) | 一种流媒体服务器负荷分担方法 | |
CN103001964B (zh) | 一种局域网环境下的缓存加速方法 | |
CN102231762B (zh) | 一种可以无限水平扩展的p2p服务器系统 | |
Roverso et al. | Smoothcache 2.0: Cdn-quality adaptive http live streaming on peer-to-peer overlays | |
CN102231761A (zh) | 一种p2p数据交互方法 | |
Haßlinger et al. | Efficiency of caches for content distribution on the internet | |
CN110990448B (zh) | 一种支持容错的分布式查询方法及装置 | |
WO2009076251A2 (en) | Accelerating peer-to-peer content distribution | |
US20150058420A1 (en) | Method for broadcasting a piece of content in an it network | |
Li et al. | Challenges, designs, and performances of large-scale open-P2SP content distribution | |
CN101964741B (zh) | 一种节点列表发送方法和设备 | |
CN101179705B (zh) | 伙伴资源节点选择方法和装置 | |
CN102340522A (zh) | 数据传输方法和装置 | |
CN103916328B (zh) | 内容分发网络及对等网络的流量控制方法及系统 | |
KR100648572B1 (ko) | 컨텐츠 전송 네트워크 시스템 | |
JP2004343186A (ja) | トラフィック分離方法並びにトラフィック分離装置、アドレス情報収集ノード及びトラフィック分離システム装置 | |
Hasslinger et al. | User access to popular data on the Internet and approaches for IP traffic flow optimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |