CN102497433A - 一种网页flash player实现p2p的系统和方法 - Google Patents
一种网页flash player实现p2p的系统和方法 Download PDFInfo
- Publication number
- CN102497433A CN102497433A CN2011104231745A CN201110423174A CN102497433A CN 102497433 A CN102497433 A CN 102497433A CN 2011104231745 A CN2011104231745 A CN 2011104231745A CN 201110423174 A CN201110423174 A CN 201110423174A CN 102497433 A CN102497433 A CN 102497433A
- Authority
- CN
- China
- Prior art keywords
- client node
- client
- piecemeal
- server
- node
- 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
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种网页FLASHPLAYER实现P2P的系统和方法。所述系统包括服务器侧系统和客户端节点,所述服务器侧系统包括流媒体服务器,用于存储和向客户端节点传输媒体文件数据;以及P2P服务器,用于存储各客户端节点信息;所述客户端节点从所述流媒体服务器下载媒体文件数据,也可以通过FLASHPLAYER与其它客户端节点进行媒体文件数据传输。所述方法基于该系统实现了客户端节点之间的P2P媒体数据和消息传输。本发明基于FLASHPLAYER实现peer节点之间的P2P通信和视频内容的P2P传输,从而最大限度利用了大量peer节点之间的带宽而降低了视频网站服务器的流量压力。
Description
技术领域
本发明涉及互联网视频技术领域,更具体地,涉及一种网页FLASH PLAYER实现P2P的系统和方法 。
背景技术
近年来,互联网视频业务发展迅速,越来越多的网民在专业的视频网站上长时间收看高清影视剧等视频内容。现有的互联网视频业务基本上是由互联网视频网站的服务器保存视频文件并以流媒体的形式将视频内容实时传送给用户端设备,用户通过本地设备的FLASH PLAYER在网页上播放和观赏相应的视频流。然而,视频流量的急速增加,给视频网站后端服务器带来巨大的压力,视频网站运营商只能被动地通过不停地增加服务器设备来减轻压力,也大大增加了运营成本。
P2P技术是将客户端节点(下文称为peer节点)视为对等节点,允许peer节点相互之间进行通信,peer节点可以从其他对等节点上下载数据,也可以将自身拥有的数据上传到其他peer节点。由此,可以在很大程度上缓解网站后端服务器的流量压力,并且充分利用了peer节点之间的带宽资源。然而,现有技术中还没有将P2P传输应用到互联网的在线视频播放的先例。
发明内容
基于现有互联网视频网站的上述需求,本发明提供了一种网页FLASH PLAYER实现P2P的系统和方法。用户在网页上是通过Flash Player收看视频的,本发明基于FLASH PLAYER实现peer节点之间的P2P通信和视频内容的P2P传输,从而最大限度利用了大量peer节点之间的带宽而降低了视频网站服务器的流量压力。
首先,介绍一下实现本发明所涉及的两个重要概念:一为组播,即把信息同时传递给一组目的地址。二为RTMFP,RTMFP是Adobe公司开发的一套新的通信协议,该协议可以让使用Adobe Flash Player的终端用户之间进行直接通信。用Adobe AIR框架开发的程序也可以用此协议来发布直播、实时信息。RTMFP的数据在终端用户之间流动,而不是和服务器,因此很适合于大范围的部署。RTMFP因为采用了UDP也提升了传送的速度。UDP是Internet上一种更有效传送音频视频的方法,虽然会有一些丢包,错包。RTMFP有两个特性可以帮助解决一些连接错误:(1)快速连接恢复:连接在意外情况下将快速恢复。例如,一个无线连接掉线了,一旦重连,它将迅速拥有所有的传送能力;(2)IP动态化:一个活动的网络会话将以PEER来标识,即使它变了一个IP,也可以保持原来的会话。例如,一个笔记本在一个新的无线网络环境下获得了一个新IP地址,它将立刻继续刚才的会话。
本发明提供一种网页FLASH PLAYER实现P2P的系统,包括服务器侧系统和客户端节点,其特征在于,
所述服务器侧系统包括:流媒体服务器,用于存储和向客户端节点传输媒体文件数据;以及P2P服务器,用于存储各客户端节点信息;
所述客户端节点从所述流媒体服务器下载媒体文件数据,也可以通过FLASH PLAYER与其它客户端节点进行媒体文件数据传输。
优选地,若干个所述客户端节点组成一个P2P组,P2P组内的客户端节点可以进行消息和媒体文件数据的传输。进一步优选地,所述客户端节点通过IP组播或手动添加与所述P2P组内的其它客户端节点建立连接并向其它客户端节点分发消息。
优选地,所述媒体文件被划分为若干个分块,所述客户端节点可以从服务器侧系统下载和存储至少一个所述分块,并且,所述客户端可以从其它客户端节点下载或向其它客户端分发所述分块。进一步优选地,所述客户端节点向所述P2P服务器上报自身所存储的所述分块,并且可以向所述P2P服务器请求自身所需要的分块;所述P2P服务器向发起请求的客户端节点返回存储有该节点所需要的分块的客户端节点地址;所述发起请求的客户端节点建立与所述被返回的客户端节点地址的连接并取得所述所需要的分块。
优选地,客户端节点通过Action Script语言编程基于RTMFP实现消息和媒体文件的数据传输。
本发明进一步提供了一种网页FLASH PLAYER实现P2P的方法,其特征在于,包括以下步骤:
客户端节点与服务器侧系统建立连接;
所述客户端节点加入P2P组;
所述客户端与所述P2P组内的其它客户端节点建立连接并向其它客户端节点分发消息;
所述客户端从所述服务器侧系统下载媒体文件数据,也可以通过FLASH PLAYER与所述其它客户端节点进行媒体文件数据传输。
优选地,所述方法进一步包括:将所述媒体文件划分为若干个分块,所述客户端节点从服务器侧系统下载和存储至少一个所述分块;所述客户端可以从其它客户端节点下载或向其它客户端分发所述分块。进一步优选地,所述客户端节点向所述服务器侧系统上报自身所存储的所述分块,并且可以向所述服务器侧请求自身所需要的分块;所述服务器侧系统向发起请求的客户端节点返回存储有该节点所需要的分块的客户端节点地址;所述发起请求的客户端节点建立与所述被返回的客户端节点地址的连接并取得所述所需要的分块。
优选地,所述客户端节点通过Action Script语言编程基于RTMFP实现消息和媒体文件的数据传输。
本发明建立基于P2P架构的互联网在线视频系统,将各客户端节点视为对等节点,使客户端节点之间可以相互传输媒体文件数据,利用了客户端节点之间的带宽资源,相比传统的互联网视频业务的网络架构,缓解了视频网站服务器的流量压力,提高了视频传输效率,改善了用户体验。
附图说明
图1是本发明实施例的系统架构示意图;
图2是本发明实施例的peer节点传输数据示意图。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合具体实施方式并配合附图详予说明。
图1是本发明实施例的系统架构示意图。本发明须采用Adobe公司的Flash Player 10.1作为终端播放器,在作为客户端节点的各个peer节点10均安装Flash Player 10.1,并且基于上述RTMFP协议让使用Adobe Flash Player的peer节点之间进行直接通信。FMS4 20与Stratus 30构成服务器侧系统。其中,FMS4 20作为流媒体服务器,用于存储和向客户端节点传输媒体文件数据;Stratus 30为P2P服务器,存储各个peer节点10的信息等。如图1中的箭头所示,各peer节点10可以从所述流媒体服务器FMS4 20下载媒体文件数据,也可以通过FLASH PLAYER与其它客户端节点进行媒体文件数据传输。
图2是peer节点之间传输数据示意图。如图2所示,peer节点A、B、C是组成一个P2P组的三个节点,P2P组内的peer节点可以进行消息和媒体文件数据的传输。节点间数据传输的过程为:
a. 一个完整的媒体文件被划分为6块,并被编号为1-6;
b. peer节点A从服务器侧系统的流媒体服务器下载了第2、第3块,peer节点B从服务侧系统下载了第5、第6块,peer节点C从服务侧系统下载了第1、第4块;
c. peer节点A将自身存储的第2、第3块分发给peer节点B、C,同理,peer节点B将自身存储的第5、第6块分发给peer节点A、C,peer节点C将自身存储的第1、第4块分发给peer节点A、B;
d. peer节点之间的数据传输完成后,A、B、C各自均存储了完整的文件。
下面结合图1-2介绍本发明的网页FLASH PLAYER实现P2P的方法。Adobe的Flash Player 10.1+ FMS4+Stratus架构,并不直接支持P2P(包括消息分发、分布式存储),需要在Peer节点上使用Action Script语言编程基于RTMFP实现消息和媒体文件的P2P数据传输。
1. 与服务器侧系统建立连接
建立一个新的连接类对象netConn,并调用其connect()成员函数与服务侧建立连接,并获取Key:
netConn.connect( “rtmfp://stratus.adobe.com/my-developer-key” );
2. 加入P2P组
编写类如下列程序,将该Peer节点加入P2P对等网络组:
a. 新建立将要加入的P2P组的描述符:
groupSpec:GroupSpecifier = new GroupSpecifier(“GroupName”);
b. 设置P2P组的属性,允许分发,允许服务侧系统在P2P分发过程中起协助作用:
groupSpec.postingEnabled = true;
groupSpec.serverChannelEnabled = true;
c. 加入该P2P组:
netGroup=newNetGroup(netConn,groupSpec.groupspecWithAuthorizations() );
3. 与组内的其他Peer节点建立连接:
有两种方式可以将该Peer节点与组内的其他Peer节点联系在一起:
a. IP组播发现:
GroupSpecifier.ipMulticastMemberUpdatedEnabled = true;
GroupSpecifier.addIPMulticastAddress(address:String);
b. 手动添加:
NetGroup.addNeighbor(peerID:String);
4. 向其他Peer节点分发消息
例如,向组内的Peer节点分发消息“Hi,All!”,编程实现如下:
varmsg:Object = new Object();
msg.text = “Hi, All!”;
msg.sender = netConn.nearID;
netGroup.post (msg);
5. 在上述基础上,可以进一步实现文件的分布式存储和P2P传输。即peer节点从所述服务器侧系统下载媒体文件数据,也可以通过FLASH PLAYER与所述其它peer节点进行媒体文件数据传输。Peer节点之间的媒体文件分块传输过程如下:
1)Peer节点A向Stratus 30上报自身存储的文件分块1和5:
NetGroup.addHaveObjects( 1, 5 );
2)Peer节点B想要分块5,向Stratus 30发起请求:
NetGroup.addWantObjects( 5 );
3)Stratus 30向Peer节点B返回Peer节点A的地址,Peer节点B与Peer节点A建立通信,Peer节点A将分块5写入Peer节点B。
综上所述,本发明建立基于P2P架构的互联网在线视频系统,将各客户端节点视为对等节点,使客户端节点之间可以相互传输媒体文件数据,利用了客户端节点之间的带宽资源,相比传统的互联网视频业务的网络架构,缓解了视频网站服务器的流量压力,提高了视频传输效率,改善了用户体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种网页FLASH PLAYER实现P2P的系统,包括服务器侧系统和客户端节点,其特征在于,
所述服务器侧系统包括:流媒体服务器,用于存储和向客户端节点传输媒体文件数据;以及P2P服务器,用于存储各客户端节点信息;
所述客户端节点从所述流媒体服务器下载媒体文件数据,也可以通过FLASH PLAYER与其它客户端节点进行媒体文件数据传输。
2.根据权利要求1所述的系统,其特征在于,若干个所述客户端节点组成一个P2P组,P2P组内的客户端节点可以进行消息和媒体文件数据的传输。
3.根据权利要求2所述的系统,其特征在于:所述客户端节点通过IP组播或手动添加与所述P2P组内的其它客户端节点建立连接并向其它客户端节点分发消息。
4.根据权利要求1所述的系统,其特征在于,所述媒体文件被划分为若干个分块,所述客户端节点可以从服务器侧系统下载和存储至少一个所述分块,并且,所述客户端可以从其它客户端节点下载或向其它客户端分发所述分块。
5.根据权利要求4所述的系统,其特征在于,所述客户端节点向所述P2P服务器上报自身所存储的所述分块,并且可以向所述P2P服务器请求自身所需要的分块;所述P2P服务器向发起请求的客户端节点返回存储有该节点所需要的分块的客户端节点地址;所述发起请求的客户端节点建立与所述被返回的客户端节点地址的连接并取得所述所需要的分块。
6.根据以上权利要求中任意一项所述的系统,其特征在于,客户端节点通过Action Script语言编程基于RTMFP实现消息和媒体文件的数据传输。
7.一种网页FLASH PLAYER实现P2P的方法,其特征在于,包括以下步骤:
客户端节点与服务器侧系统建立连接;
所述客户端节点加入P2P组;
所述客户端与所述P2P组内的其它客户端节点建立连接并向其它客户端节点分发消息;
所述客户端从所述服务器侧系统下载媒体文件数据,也可以通过FLASH PLAYER与所述其它客户端节点进行媒体文件数据传输。
8.根据权利要求7所述的方法,其特征在于,所述方法进一步包括:将所述媒体文件划分为若干个分块,所述客户端节点从服务器侧系统下载和存储至少一个所述分块;所述客户端可以从其它客户端节点下载或向其它客户端分发所述分块。
9.根据权利要求8所述的方法,其特征在于,所述客户端节点向所述服务器侧系统上报自身所存储的所述分块,并且可以向所述服务器侧请求自身所需要的分块;所述服务器侧系统向发起请求的客户端节点返回存储有该节点所需要的分块的客户端节点地址;所述发起请求的客户端节点建立与所述被返回的客户端节点地址的连接并取得所述所需要的分块。
10.根据权利要求7-9中任意一项所述的方法,其特征在于,所述客户端节点通过Action Script语言编程基于RTMFP实现消息和媒体文件的数据传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110423174.5A CN102497433B (zh) | 2011-12-16 | 2011-12-16 | 一种网页flash player实现p2p的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110423174.5A CN102497433B (zh) | 2011-12-16 | 2011-12-16 | 一种网页flash player实现p2p的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102497433A true CN102497433A (zh) | 2012-06-13 |
CN102497433B CN102497433B (zh) | 2015-04-15 |
Family
ID=46189218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110423174.5A Active CN102497433B (zh) | 2011-12-16 | 2011-12-16 | 一种网页flash player实现p2p的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102497433B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821107A (zh) * | 2012-08-24 | 2012-12-12 | 乐视网信息技术(北京)股份有限公司 | Flash P2P 避开安全沙箱的方法 |
CN103795810A (zh) * | 2014-03-03 | 2014-05-14 | 深圳市华曦达科技股份有限公司 | 数据分发系统及方法以及该数据分发系统中的中心服务器 |
CN104917790A (zh) * | 2014-03-11 | 2015-09-16 | 北京风行在线技术有限公司 | 一种基于p2p的数据传输方法、装置和系统 |
CN104980814A (zh) * | 2014-04-03 | 2015-10-14 | 南京汇智明华信息科技有限公司 | 一种适用于高清无失真视频的播放器引擎 |
CN105049938A (zh) * | 2015-08-31 | 2015-11-11 | 河南大学 | 一种基于Spice和内存共享的视频播放方法 |
CN105187561A (zh) * | 2015-09-29 | 2015-12-23 | 北京暴风科技股份有限公司 | 一种区域化跨平台数据共享的方法及系统 |
CN107454163A (zh) * | 2017-08-03 | 2017-12-08 | 山东捷瑞数字科技股份有限公司 | 一种多终端展项互联展示控制方法 |
CN110213337A (zh) * | 2019-05-09 | 2019-09-06 | 北京猫盘技术有限公司 | 分布式存储系统及穿透方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582919A (zh) * | 2009-04-14 | 2009-11-18 | 冯俊秋 | 网络电视播放方法及系统 |
CN101867777A (zh) * | 2010-04-20 | 2010-10-20 | 南京邮电大学 | 一种基于对等计算机顶盒的视频点播传输方法 |
US20110196942A1 (en) * | 2007-07-26 | 2011-08-11 | Realnetworks, Inc. | Adaptive variable fidelity media distribution system and method |
-
2011
- 2011-12-16 CN CN201110423174.5A patent/CN102497433B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110196942A1 (en) * | 2007-07-26 | 2011-08-11 | Realnetworks, Inc. | Adaptive variable fidelity media distribution system and method |
CN101582919A (zh) * | 2009-04-14 | 2009-11-18 | 冯俊秋 | 网络电视播放方法及系统 |
CN101867777A (zh) * | 2010-04-20 | 2010-10-20 | 南京邮电大学 | 一种基于对等计算机顶盒的视频点播传输方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102821107A (zh) * | 2012-08-24 | 2012-12-12 | 乐视网信息技术(北京)股份有限公司 | Flash P2P 避开安全沙箱的方法 |
CN102821107B (zh) * | 2012-08-24 | 2015-05-20 | 乐视网信息技术(北京)股份有限公司 | Flash P2P 避开安全沙箱的方法 |
CN103795810A (zh) * | 2014-03-03 | 2014-05-14 | 深圳市华曦达科技股份有限公司 | 数据分发系统及方法以及该数据分发系统中的中心服务器 |
CN104917790A (zh) * | 2014-03-11 | 2015-09-16 | 北京风行在线技术有限公司 | 一种基于p2p的数据传输方法、装置和系统 |
CN104980814A (zh) * | 2014-04-03 | 2015-10-14 | 南京汇智明华信息科技有限公司 | 一种适用于高清无失真视频的播放器引擎 |
CN105049938A (zh) * | 2015-08-31 | 2015-11-11 | 河南大学 | 一种基于Spice和内存共享的视频播放方法 |
CN105187561A (zh) * | 2015-09-29 | 2015-12-23 | 北京暴风科技股份有限公司 | 一种区域化跨平台数据共享的方法及系统 |
CN105187561B (zh) * | 2015-09-29 | 2019-03-12 | 暴风集团股份有限公司 | 一种区域化跨平台数据共享的方法及系统 |
CN107454163A (zh) * | 2017-08-03 | 2017-12-08 | 山东捷瑞数字科技股份有限公司 | 一种多终端展项互联展示控制方法 |
CN110213337A (zh) * | 2019-05-09 | 2019-09-06 | 北京猫盘技术有限公司 | 分布式存储系统及穿透方法 |
CN110213337B (zh) * | 2019-05-09 | 2022-08-02 | 北京猫盘技术有限公司 | 分布式存储系统及穿透方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102497433B (zh) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102497433B (zh) | 一种网页flash player实现p2p的系统和方法 | |
US10701187B2 (en) | Multicast-unicast protocol converter | |
CN104348710B (zh) | 用于获取和关联web实时通信交互流特性的方法和系统 | |
CN101252591B (zh) | 实现上下行数据分离的方法和装置 | |
CN104518908B (zh) | 用于提供网络管理的方法和系统 | |
JP2018523442A (ja) | ユーザプレーン用ソフトウェア定義トポロジ(sdt) | |
US9654329B2 (en) | Content distribution over a network | |
CN102845123A (zh) | 虚拟私云的连接方法及隧道代理服务器 | |
CN102137005A (zh) | 一种通信系统中的数据转发方法、装置和系统 | |
CN103023873A (zh) | 一种跨终端的实时交互幻灯片在线分发方法 | |
CN102394899A (zh) | 提高文件下载速度的点播系统及方法 | |
CN103929438A (zh) | 基于网页浏览器通信的防火墙穿越方法、设备和系统 | |
CN102547474A (zh) | 扩展xmpp协议融合rmtp实现视频监控系统及方法 | |
CN101651620B (zh) | 一种Overlay多播树重构方法、多播树节点及系统 | |
CN104955169A (zh) | 基于Wi-Fi Direct的网络及其通信方法 | |
CN107465654B (zh) | 用于广播电视台各业务子网间内容分发与安全查杀的系统 | |
CN104969521A (zh) | 数据发送处理方法及路由器 | |
CN103701626B (zh) | 带宽信息的获得方法以及获得带宽信息的设备 | |
CN103347001A (zh) | 一种新型serverless的移动终端会议演示方法 | |
Fakhrazeev et al. | Big telemetry data processing in the scope of modern Internet of Things | |
CN109873817A (zh) | 一种一对一访问网络的方法和装置 | |
CN103731506B (zh) | 一种内容注入方法、第一业务服务节点和内容分发网络 | |
Zhai et al. | An improved DDS publish/subscribe automatic discovery algorithm | |
CN202652408U (zh) | 一种基于sip协议的地图视频监控系统及视频传输系统 | |
CN104394483A (zh) | 一种互联网视频点播系统中的流量本地化优化处理方法 |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210701 Address after: 100025 1508, 12 / F, building 3, 105 yaojiayuan Road, Chaoyang District, Beijing Patentee after: LECLOUD COMPUTING Co.,Ltd. Address before: 100026 8 / F, block C, Oriental media center, 4 Guanghua Road, Chaoyang District, Beijing Patentee before: LE SHI INTERNET INFORMATION & TECHNOLOGY CORP., BEIJING |
|
PP01 | Preservation of patent right | ||
PP01 | Preservation of patent right |
Effective date of registration: 20230811 Granted publication date: 20150415 |