一种基于p2p网络和cdn网络的数据传输系统和方法

文档序号:7564698阅读:396来源:国知局
专利名称:一种基于p2p网络和cdn网络的数据传输系统和方法
技术领域
本发明涉及一种基于P2P网络和CDN网络的数据传输系统和方法,涉及流媒体、计 算机网络等交叉领域。
背景技术
P2P是英文Peer-to-Peer (对等)的简称,又被称为“点对点”。“对等”技术是一 种新兴的网络技术,主要依赖于网络中参与者的计算能力和带宽,而并非把所有依赖都聚 集在成本较为昂贵的服务器上去。P2P亦是point-to-point (点对点)的简称。也就是说 它自己的下载的同时,也要上载给网络上的其他节点。参与P2P网路的用户越多,相应的上 载者就越多,上载者数量越多,P2P终端到服务器上取数据的机会也就越小,所以P2P的存 在不但使服务器压力大大减少,更达到了人数越多速度就越快的效果。然而,在P2P流媒体领域,由于P2P这种分布式系统先天的不确定性,可能会引起 某一时刻,大量的p2p网络中的节点涌向服务器,会导致服务器不堪重负,严重的将会导致 服务器当机,以至于整个服务无法访问。轻者也可能使用户播放不够流畅影响用户体验。

发明内容
为了克服现有技术的缺陷,本发明首先提出一种基于P2P网络和⑶N网络的数据 传输系统,包括一源服务器,一⑶N网络,以及一 P2P网络;所述源服务器用于存储源数 据;所述⑶N网络,包括多个⑶N节点,每一⑶N节点包括一⑶N服务器;所述P2P网络,包 括个多P2P节点,各P2P节点能够从P2P网络和⑶N节点获取数据;各P2P节点在从P2P网 络和CDN节点获取数据时,优先地从P2P网络中的其他P2P节点获取数据。进一步,在各个P2P节点中,每个P2P节点能够选择是否放弃从P2P网络中获取数 据;如果放弃从P2P网络中获取数据,那么该节点所需要的所有数据由CDN网络直接供给。当P2P节点开启一个频道时,播放端将依次向P2P子系统和⑶N网络发送此节目 相关的HTTP请求,请求包含此频道的数据源地址;如果该P2P节点没有放弃从P2P网络中 获取数据,则优先从P2P网络获取数据,否则,将全部从CDN网络获取数据。该系统进一步包含一个P2P子系统,P2P节点通过开启/关闭该P2P子系统来选 择是否放弃从P2P网络中获取数据;该P2P子系统监听一个已经和播放端约定好的端口,当 播放端有请求到达时,该P2P子系统启动优先到P2P网络获取数据功能,并将获得的数据即 时的推给播放端。当用户关闭P2P子系统时,播放端将前往⑶N网络获取数据,⑶N网络中的各⑶N 节点根据P2P节点的请求,向源服务器获取相应的源数据,将该源数据传输至P2P节点;在 用户开启P2P子系统的情况下,P2P子系统优先到P2P网络获取数据,如果P2P网络不存在 所需要的数据,该P2P子系统进一步根据下载调度策略的需要前往CDN网络获取数据。本发明进一步提出了一种基于P2P网络和⑶N网络的数据传输方法,所述⑶N网 络包括多个CDN节点,每一⑶N节点包括一⑶N服务器;当用户的请求到达指定节点时,⑶N的服务器将用户请求的内容提供给用户,所述P2P网络包括个多P2P节点;该方法包括以下 步骤
步骤1,所述P2P 节点中的播放器开启一个频道,该播放器向P2P子系统发送此节目相 关的http请求,该http请求包含此频道的数据源地址;步骤2,所述P2P子系统判断该P2P 节点是否放弃从P2P网络中获取数据,如果没有放弃,则P2P子系统根据调度策略,优先从 P2P网络获取数据,否则,从⑶N网络获取数据。以及一种基于P2P网络和⑶N网络的数据传输方法,所述⑶N网络包括多个⑶N 节点,每一 CDN节点包括一 CDN服务器;当用户的请求到达指定节点时,CDN的服务器将用 户请求的内容提供给用户,所述P2P网络包括个多P2P节点;各P2P节点能够从P2P网络和 CDN节点获取数据;该方法包括以下步骤步骤1,所述P2P节点中的播放器开启一个频道, 该播放器向P2P子系统发送此节目相关的http请求,该http请求包含此频道的数据源地 址;步骤2,所述P2P子系统监听一个已经和播放端约定好的端口,当播放端有请求到达时, 该P2P子系统启动优先到P2P网络获取数据功能,并将获得的数据即时的推给播放端。本发明所提供的上述技术方案,能够解决在短时间内,大量的p2p网络中的节点 涌向服务器,所引起的服务器不堪重负,导致服务器当机这一技术问题。


附图1是本发明提供的基于P2P网络和⑶N网络的数据传输系统的示意图; 附图2是本发明提供的基于P2P网络和CDN网络的数据传输方法的示意图。
具体实施例方式为了避免在短时间内,大量P2P节点涌向服务器,而导致服务器无法提供正常的 服务。本发明提出的解决方案中,引入了 CDN (Conetent Delivery Network)网络,即内容 分发网络,其目的是通过在现有的服务器端增加一层新的网络架构,将服务器数据发布到 最接近用户的网络“边缘”,使用户可以就近获取想要的数据,从而缓解网络拥挤的状况,提 高响应速度,从根本上解决了由于带宽不足,高利记体育,服务器分布不均等因素所导致的用 户获取数据的延时过大的问题。另外,CDN网络还提供了统一的文件分发平台,即不需要诸 如windows media server, flash media server这类软件,而是实时的拉取这些软件所产 生的流数据,在通过⑶N分发给用户。附图1示出了本发明提供的基于P2P网络和⑶N网络的数据传输系统。该系统包 括一源服务器,用于存储源数据,例如视频素材、影像等;
一⑶N网络,包括多个⑶N节点,每一⑶N节点包括一⑶N服务器;当用户的请求到达 指定节点时,CDN的服务器将用户请求的内容提供给用户。一 P2P网络,包括个多P2P节点,各P2P节点优先地从P2P网络中的其他P2P节点 获取数据。另一方面,各P2P节点也可以从CDN节点中获取数据。在各个P2P节点中,每个P2P节点能够选择是否放弃从P2P网络中获取数据。如 果用户放弃P2p网络,那么用户所需要的所有数据将完全由强大的CDN网络直接供给。从 而,避免了因p2p带来的不确定性而导致的用户不良体验。当P2P节点开启一个频道时,播放端将依次向P2P子系统和⑶N网络发送此节目相关的HTTP请求,请求包含此频道的数据源地址。如果该P2P节点没有放弃从P2P网络中 获取数据,则优先从P2P网络获取数据,否则,将全部从CDN网络获取数据。上述基于P2P网络和⑶N网络的数据传输系统中,P2P网络不直接连接到源服务 器中。进一步包含一个P2P子系统,该P2P子系统监听一个已经和播放端约定好的端口,当 播放端有请求到达时,也就是P2P子系统监听到有用户请求时,便会启动优先到P2P网络获 取数据功能,并将获得的数据即时的推给播放端。当用户关闭P2P子系统时,播放端将前往⑶N网络获取数据,⑶N网络中的各⑶N 节点根据P2P节点的请求,向源服务器获取相应的源数据,将该源数据传输至P2P节点。在 用户开启P2P子系统的情况下,P2P子系统优先到P2P网络获取数据,如果P2P网络不存在 所需要的数据,该P2P子系统进一步根据下载调度策略的需要前往CDN网络获取数据。附图2示出了本发明提供的基于P2P网络和CDN网络的数据传输方法的示意图。 该方法包括以下步骤
步骤1,P2P节点中的播放器开启一个频道,该播放器向P2P子系统发送此节目相关的 HTTP请求,请求包含此频道的数据源地址。步骤2,P2P子系统判断该P2P节点是否放弃从P2P网络中获取数据,如果没有放 弃,则P2P子系统根据调度策略,优先从P2P网络获取数据,否则,将全部从CDN网络获取数据。上述步骤2中,所述⑶N网络,包括多个⑶N节点,每一⑶N节点包括一⑶N服务 器;当用户的请求到达指定节点时,CDN的服务器将用户请求的内容提供给用户。上述步骤1中,P2P网络,包括个多P2P节点,各P2P节点优先地从P2P网络中的 其他P2P节点获取数据。另一方面,各P2P节点也可以从CDN节点中获取数据。另一个可选的实施方式中,所述步骤2中,P2P子系统监听一个已经和播放端约定 好的端口,当播放端有请求到达时,该P2P子系统启动优先到P2P网络获取数据功能,并将 获得的数据即时的推给播放端。本发明中,CDN网络取代了传统的基于私有协议的数据源服务器,而统一利用 HTTP协议的TOB服务器,在可靠性、稳定性、及扩展性方面有质的提高,而且还节约了服务 器端的开发成本。综上所述,P2P网络的提出及解决了用户数量剧增的情况下服务器压力 过大的问题,也大大加强了用户间的资源利用率,而CDN网络的提出解决了由于P2P网络的 不确定性带来的用户体验问题。本发明所提出的基于P2P网络和CDN网络的数据传输系统 和方法,使得用户得到良好体验的同时,又从一定程度上降低了 P2P子系统优化的难度。本发明所述的方法和系统并不限于具体实施方式
中所述的实施例,本领域技术人 员根据本发明的技术方案得出其他的实施方式,同样属于本发明的技术创新范围。
权利要求
1.一种基于P2P网络和⑶N网络的数据传输系统,包括一源服务器,一⑶N网络,以 及一 P2P网络;其特征在于所述源服务器用于存储源数据;所述⑶N网络,包括多个⑶N节点,每一⑶N节点包括一⑶N服务器;所述P2P网络,包括个多P2P节点,各P2P节点能够从P2P网络和⑶N节点获取数据; 各P2P节点在从P2P网络和⑶N节点获取数据时,优先地从P2P网络中的其他P2P节点获 取数据。
2.如权利要求1所述的系统,其特征在于在各个P2P节点中,每个P2P节点能够选择是否放弃从P2P网络中获取数据;如果放弃 从P2P网络中获取数据,那么该节点所需要的所有数据由CDN网络直接供给。
3.如权利要求1所述的系统,其特征在于当P2P节点开启一个频道时,播放端将依次向P2P子系统和⑶N网络发送此节目相关 的HTTP请求,请求包含此频道的数据源地址;如果该P2P节点没有放弃从P2P网络中获取 数据,则优先从P2P网络获取数据,否则,将全部从CDN网络获取数据。
4.如权利要求1所述的系统,其特征在于该系统进一步包含一个P2P子系统,P2P节点通过开启/关闭该P2P子系统来选择是 否放弃从P2P网络中获取数据;该P2P子系统监听一个已经和播放端约定好的端口,当播放 端有请求到达时,该P2P子系统启动优先到P2P网络获取数据功能,并将获得的数据即时的 推给播放端。
5.如权利要求4所述的系统,其特征在于当用户关闭P2P子系统时,播放端将前往CDN网络获取数据,CDN网络中的各CDN节点 根据P2P节点的请求,向源服务器获取相应的源数据,将该源数据传输至P2P节点;在用户 开启P2P子系统的情况下,P2P子系统优先到P2P网络获取数据,如果P2P网络不存在所需 要的数据,该P2P子系统进一步根据下载调度策略的需要前往CDN网络获取数据。
6.一种基于P2P网络和CDN网络的数据传输方法,所述⑶N网络包括多个⑶N节点,每一⑶N节点包括一⑶N服务器;当用户的请求到 达指定节点时,CDN的服务器将用户请求的内容提供给用户,所述P2P网络包括个多P2P节 点;其特征在于该方法包括以下步骤步骤1,所述P2P节点中的播放器开启一个频道,该播放器向P2P子系统发送此节目相 关的http请求,该http请求包含此频道的数据源地址;步骤2,所述P2P子系统判断该P2P节点是否放弃从P2P网络中获取数据,如果没有放 弃,则P2P子系统根据调度策略,优先从P2P网络获取数据,否则,从CDN网络获取数据。
7.一种基于P2P网络和⑶N网络的数据传输方法,所述⑶N网络包括多个⑶N节点,每一⑶N节点包括一⑶N服务器;当用户的请求到 达指定节点时,CDN的服务器将用户请求的内容提供给用户,所述P2P网络包括个多P2P节 点;各P2P节点能够从P2P网络和CDN节点获取数据;其特征在于该方法包括以下步骤步骤1,所述P2P节点中的播放器开启一个频道,该播放器向P2P子系统发送此节目相关的http请求,该http请求包含此频道的数据源地址;步骤2,所述P2P子系统监听一个已经和播放端约定好的端口,当播放端有请求到达 时,该P2P子系统启动优先到P2P网络获取数据功能,并将获得的数据即时的推给播放端。
全文摘要
本发明提供一种基于P2P网络和CDN网络的数据传输方法和系统,P2P节点能够从P2P网络和CDN节点获取数据;利用P2P子系统监听一个已经和播放端约定好的端口,当播放端有请求到达时,该P2P子系统启动优先到P2P网络获取数据功能,并将获得的数据即时的推给播放端。本发明所提供的技术方案,能够解决在短时间内,大量的p2p网络中的节点涌向服务器,所引起的服务器不堪重负,导致服务器当机这一技术问题。
文档编号H04L29/08GK102065150SQ201110009629
公开日2011年5月18日 申请日期2011年1月18日 优先权日2011年1月18日
发明者李茗, 杨永强, 祝晓光 申请人:乐视网信息技术(北京)股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1