CN104967685B - 基于Flash P2P的流媒体多级缓存网络加速方法 - Google Patents

基于Flash P2P的流媒体多级缓存网络加速方法 Download PDF

Info

Publication number
CN104967685B
CN104967685B CN201510358411.2A CN201510358411A CN104967685B CN 104967685 B CN104967685 B CN 104967685B CN 201510358411 A CN201510358411 A CN 201510358411A CN 104967685 B CN104967685 B CN 104967685B
Authority
CN
China
Prior art keywords
client
resource
server
network
group
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.)
Active
Application number
CN201510358411.2A
Other languages
English (en)
Other versions
CN104967685A (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.)
Guangdong Decheng Science Co Ltd
Original Assignee
Guangdong Decheng Science 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 Guangdong Decheng Science Co Ltd filed Critical Guangdong Decheng Science Co Ltd
Priority to CN201510358411.2A priority Critical patent/CN104967685B/zh
Publication of CN104967685A publication Critical patent/CN104967685A/zh
Application granted granted Critical
Publication of CN104967685B publication Critical patent/CN104967685B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开一种基于Flash P2P的流媒体多级缓存网络加速方法,搭建CND流媒体网络结构,并把流媒体资源分发到资源服务器和边缘节点缓存服务器中;连接客户端时,引入信令服务器;使得同一组内的客户端能够实现彼此互相连接,从而在同一组内实现了客户端P2P网络结构,组内指的是信令服务器把拥有同一资源的客户端划分成同一小组;将地理位置相近的多个客户端访问的同一个边缘节点缓存服务器和这些客户端划分为一个组;在共同访问同一个边缘节点缓存服务器的组内的客户端中,这些客户端不仅能够从边缘缓存服务器获取资源,也能够从组内的其他客户端获取资源,形成第三级资源缓存来实现流媒体多级缓存网络加速的目的。

Description

基于Flash P2P的流媒体多级缓存网络加速方法
技术领域
本发明涉及计算机网络领域,特别涉及一种基于Flash P2P的流媒体多级缓存网络加速方法。
背景技术
缓存技术是一项能较好解决在计算机网络环境下数据访问性能的技术,通过对数据资源进行缓存,可以降低客户端访问网络资源的延迟和带宽消耗以达到网络加速的目的。CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的网络结构中增加一层新的网络架构,然后在互联网各处安置节点服务器,在现有互联网络基础之上构成了一层智能虚拟网络,并将网站的资源内容发布到最接近用户的网络边缘节点服务器上,它能能够实时的根据各节点的连接、负载状况、网络流量、用户距离、服务响应时间等综合信息,动态地调整分配策略,将请求重定向到最近的服务节点上,使用户能够快速的选取最近的资源节点获取内容。以此来解决网络的拥塞状况,提供用户请求资源的响应速度。
RTMFP全称是实时流媒体协议,是Adobe公司开发的一套新的通信协议,该协议可以让使用Adobe Flash Player的终端用户之间进行直接通信,并且具有低延迟、断连恢复、动态IP变动等特点。通过使用RTMFP,那些流媒体通信的应用,比如社区、音视频播放就有能力来发布高质量的通信解决方案。此方案提升了目前Flash Player在视频方面的体验,解决视频服务的关键点即带宽。通过在此协议上架构的流媒体的服务,可以很快捷的实现用户在Web端的P2P通信。
P2P是peer to peer的缩写,即对等互联,反应的是一种网络连接方式。通常与C/S模式的结构作对比,解决传统的C/S模式面临的拒绝服务、DoS攻击、超额存储等问题。它将内容转移到网络的边缘处,去除中心节点,把各个对等节点在应用层自组织的连接起来。P2P网络一般具有以下特点:
1、网络的参与者共享自己拥有的硬件资源,如带宽、存储等。
2、网络参与者通过网络提供自己拥有的特定资源,并且能被其他对等节点直接访问。
3、P2P网络中的参与者既是资源需求者,又是资源提供者。
发明内容
本发明提供一种基于Flash P2P的流媒体多级缓存网络加速方法,是一种在内容分发网络(CDN)下通过客户端之间的P2P连接来实现多级缓存的方法,并利用客户端数据缓存实现客户端之间的资源互传,达到网络加速的目的。
为解决上述技术问题,本发明的技术方案如下:
一种基于Flash P2P的流媒体多级缓存网络加速方法,
1)搭建CND流媒体网络结构,并把流媒体资源分发到资源服务器和边缘节点缓存服务器中;
2)连接客户端时,引入信令服务器;使得组内的客户端能够实现彼此互相连接,在组内实现了客户端P2P网络结构,组内的客户端是指信令服务器把拥有同一资源的客户端划分成同一小组;
3)将地理位置相近的多个客户端访问的同一个边缘节点缓存服务器和这些客户端划分为一个组;
4)在共同访问同一个边缘节点缓存服务器的组内的客户端中,这些客户端不仅能够从边缘缓存服务器获取资源,也能够从组内的其他客户端获取资源,以此形成流媒体资源的第三级缓存。
进一步的,流媒体多级缓存方法是指对资源的分层缓存,多级缓存采用了三级缓存;
站点服务器从资源服务器和数据库中获取资源,并将内容发到各个边缘缓存服务器,作为原始存储,定义为一级缓存;
各边缘缓存节点处理来自客户端的访问请求并返回请求资源,同时将这些请求到的数据缓存起来,在其他用户再次访问相同数据时,加快请求资源的返回,此为二级缓存;
客户端获取资源之后,由于有浏览器缓存的存在,能将频繁使用的数据缓存到本地,减少下次请求的通信开销,加快资源的读取渲染速度,每一个客户端又是P2P网络的一个节点,通过和其他客户端的连接,将缓存中的数据贡献给其他需要的客户端,从其他的客户端的角度来说,在客户端对数据的缓存就是第三级缓存。
进一步的,所述客户端为支持Flash Player的客户端。
进一步的,采用RTMFP协议来构建客户端的P2P网络,客户端需要交换各自的信息才能连接在一起,则需要信令服务,信令是一个协调沟通的过程,为了让客户端之间构成会话,客户端需要交换以下信令信息:发起和关闭一个通话控制信息;错误信息;元数据信息;确保通信安全的密钥;网络数据;客户端的信令处理需要一种来回传递信息的方法,这种机制需要利用支持RTMFP协议的服务器支持,需要自己创建它。
进一步的,在客户端与信令服务器之间通信并实现客户端之间流媒体缓存文件互传都是使用RTMFP协议通信实现的;RTMFP协议在应用层面提供了三个可供调用的API,分别是:
NetConnection,在Flash Player应用程序和信令服务器之间创建双向连接;
NetGroup,NetGroup中的addHaveObjects()、removeHaveObjects()、addWantObjects()、removeWantObjects()、writeRequestedObject()和denyRequestedObject()将大型数据分解成数据片段,然后将其复制到对等组中的所有节点;
对象复制有两个集合,Have集:存放自己已经有的对象片段的索引集合,分享数据用;Want集:存放自己想获取的对象片段是索引集合,获取数据用。
进一步的,浏览器的缓存机制使用的是HTTP协议定义的缓存机制;在HTTP 1.1中,使用了Cache-Control策略。
与现有技术相比,本发明技术方案的有益效果是:本发明的流媒体多级缓存网络加速技术是在CDN网络技术的架构下经过拓展实现的。本发明中提出的流媒体多级缓存策略是基于openRTMFP实现的一项流媒体视频服务,本发明针对这些技术的特点,利用CDN网络结构的稳定性,结合通过支持RTMFP流媒体服务器连接的客户端之间点对点连接的特性。因此,在客户端之间建立一个P2P的数据资源网络,形成第三级资源缓存来实现流媒体多级缓存网络加速的目的。
附图说明
图1为由CDN网络结构和组内客户端P2P网络组成网络结构示意图。
图2为CDN的服务流程图。
图3为本发明客户端P2P的信息流传输示意图。
图4为网络加速服务的系统结构示意图。
图5为本发明的网络架构示意图。
图6为浏览器缓存的执行过程流程图。
图7为RTMFP流媒体系统结构图。
具体实施方式
下面结合附图和实施例对本发明的技术方案做进一步的说明。
本发明提供一种基于Flash P2P的流媒体多级缓存网络加速方法,该方法实现了一种用户请求流媒体服务资源网络加速的流程,在各个客户端之间建立P2P网络,实现流媒体资源的第三级的缓存,以此形成客户端之间流媒体资源的互传,到达网络加速的目的。
本发明提供的一种基于Flash P2P的流媒体多级缓存网络加速方法,具体是:
1、借助CDN网络加速服务的优势,搭建一个属于本发明的CND流媒体网络结构,并把流媒体资源分发到资源服务器和边缘节点缓存服务器中。
2、在客户端连接的时候,引入信令服务器。使得组内的客户端可以实现彼此互相连接,在组内实现了客户端P2P网络结构。
3、由于地理位置相近的多个客户端很大可能访问同一个边缘节点缓存服务器,可以把边缘节点缓存服务器和这些客户端划分为一个组。
4、在共同访问同一个边缘节点缓存服务器的组内的客户端中,这些客户端不仅可以从边缘缓存服务器获取资源,也可以从组内的其他客户端获取资源,以此形成流媒体资源的第三级缓存。
如图1所示,主要由CDN网络结构和组内客户端P2P网络组结构组成流媒体多级缓存技术的系统。
具体实施方法如下:
在图1中,不包含左上角椭圆虚框中的内容,这是一种比较常见的包含CDN的网站结构。CDN(Content delivery network),即内容分发网络,是一种大型的分布式网络系统。CDN的主要组件包括分布式存储、负载均衡、网络请求重定向和内容管理4个主要部件,而在这些组件中,内容管理和负载均衡是CDN的核心所在。其通过在互联网各处安置节点服务器,在现有互联网络基础之上构成了一层智能虚拟网络。它能够实时的根据各节点的连接情况、负载状况以及网络流量、用户的距离、服务的响应时间等综合信息,动态地调整分配策略,将用户的请求重定向到离用户最近的服务节点上,减轻服务器的压力,增强了系统的性能和扩展性。其CDN的服务流程如图2所示。
在CDN网络结构下,模拟用户访问网站的过程,服务的请求流程为:
1)用户在浏览器提交域名;
2)DNS服务器对域名进行解析和验证,将解析得到的IP地址返回给用户,这里的IP地址为CDN域名解析服务器的IP地址;
3)请求转到CDN域名服务器,CDN域名服务器返回指定域名的CNAME;
4)对CNAME进行再解释,得到CDN缓存服务器的IP地址,返回IP地址给用户;
5)用户得到解析后的IP地址,根据IP地址再次发出请求;
6)如果缓存服务器有符合请求的内容存在,则返回给用户,用户端呈现内容,请求访问到此结束;否则跳转到步骤7);
7)缓存服务器根据内部DNS得到源服务器IP,请求递交给源服务器,向真实主机请求数据;
8)主机返回数据,缓存服务器首先将得到的数据缓存,然后将数据返回给用户端;
9)用户端获取数据,显示内容。
在这种CDN结构下,通过增加边缘缓存服务器和内部负责调度的DNS,合理地让用户请求到距离最近的边缘缓存服务器,这样有效地减少了中心站的访问压力。即使某个节点遭遇访问延迟或是被攻击,也可以通过冗余节点,快速响应用户的请求。由于CDN的体系结构,它具有本地加速、远程加速、带宽优化、服务端镜像和抗攻击的特点。其中抗攻击的特点是因为CDN这个一个大的集群,广泛分布且具有智能冗余机制,可以有效地预防黑客入侵以及各种DDoS攻击对服务访问的影响,保证数据安全,提供更优的服务质量。
在图1中,左上角椭圆虚框中的内容,这是一种共享同一个边缘节点服务器的组内客户端P2P网络组结构。在这个网络结构中新添加的服务器——信令服务器。它的作用是客户端通过访问信令服务器,发布并交换自己的连接信息,其他客户端即可通过信令服务器与其建立连接,实现客户端之间的互联。而在引入信令服务器之后,组内的客户端可以实现彼此互相连接,在组内实现了P2P网络。组内的客户端不仅可以从边缘缓存服务器获取资源,也可以从组内的其他客户端获取资源,但是,边缘服务器并不参与P2P,因此就无需修改原有的网络架构。
如图3,有一个中心服务器负责记录共享信息(索引信息)并应答对这些信息的查询。与C/S模式的差异是在C/S结构中,客户端之间没有数据流,通过中心服务器交换数据。而P2P登录与信息查询都与中心服务器连接,但查询到数据后,就与存放数据的客户端直接建立连接。P2P流媒体技术是一种低成本高效率的传输技术,它充分利用了对等用户的闲置上行带宽来协助服务器分发流媒体资源。客户端并非都从服务器上获取资源,客户端也从其他客户端上获取所需数据。因此,在增加用户的同时,无须相应的增加资源服务器和带宽,从而大大降低了服务器的负载和网络带宽的占用。
与传统的P2P文件共享系统相比,P2P流媒体系统需要为流媒体的数据传输提供更为严格的资源和控制管理,其中最突出的两个问题便是时延和网络的不可控性。
(1)时延
P2P技术实现流媒体数据分发实际上是一种基于应用层的组播方式实现的,由于采用P2P方式的分发,每个数据往往要经过多个路由才能到达请求段,这种方式必然会带来时延的叠加效应,离对等节点以及信令服务器越远的用户得到的数据时间越久。
(2)网络的不可控性
P2P网络结构具有随机动态变化的特点,用户加入、退出P2P网络有一定的随机型。如果不采取相应的措施处理,必然会导致流媒体数据的传输质量下降。针对此问题,一般是利用本地缓存技术,为用户观看过程中的抖动留出处理时间,使用户能够顺序观看。
本实施方式通过将这两种网络结构融合起来,形成了一个P2P+CDN的网络结构,其共同构成了网络加速服务。这种网络加速服务的系统结构如图4所示。
从图4中可以看出其实现过程为,通过利用组内客户端P2P网络加速技术与CDN网络结构融合,形成客户端流媒体资源的第三级缓存策略,客户端就近和多层边缘缓存服务器访问站点资源,实现流媒体网络加速服务。在组内客户端的P2P网络中,由于客户端之间可以互传资源,在多个客户端上传资源时,客户端下载几乎可以达到自身带宽的最大速度而不受服务器端带宽的限制。而且在这个组内的P2P网络结构中,客户端可通过访问信令服务器以此获得其它客户端的连接信息,从而合理地选择最近的客户端进行连接。这样就能减少对边缘节点服务器的访问压力。
这里提出的多级缓存策略是指架构图内纵向结构中对资源的分层缓存,这里采用了三级缓存。从下往上看,站点服务器从资源服务器和数据库中获取资源,并将内容发到各个边缘缓存节点,作为原始存储,定义为一级缓存。各边缘服务器的作用不仅仅是处理来自客户端的访问请求并返回请求资源,还要将这些请求到的数据按照一定的逻辑规则缓存起来,方便其他用户再次访问相同数据时,加快请求资源的返回,此为二级缓存。客户端获取资源之后,由于有浏览器缓存的存在,可以将频繁使用的数据缓存到本地,减少下次请求的通信开销,加快资源的读取渲染速度。每一个客户端又是P2P网络的一个节点,通过和其他客户端的连接,将缓存中的数据贡献给其他需要的客户端,从其他的客户端的角度来说,在客户端对数据的缓存就是第三级缓存。
多级缓存方法似乎使得资源存储变得复杂,但考虑到用户对资源访问热度的集中性,下一级缓存通常都是上一级缓存的真子集,因此存储逻辑就变得简单。在多级缓存中,请求资源的过程是客户端总是从第三级缓存开始寻找,找不到资源才会向上一级请求资源。这样做的好处是将大部分重复的热门资源请求在小范围P2P网络解决掉,冷门资源的请求交由边缘缓存服务器提供,就可以很少甚至几乎不用访问源站服务器,大大减少对整个网站的带宽资源,服务器资源的投入,降低成本。对用户来说,与P2P网络中的其他节点的距离要比与边缘缓存服务器的距离更近,连接速度更快,加速效果更好,如果恰好和部分节点处在同一个局域网内,甚至可以抵消外部网络造成的各种延迟。
这种流媒体多级缓存策略,第一缓存和第二缓存都是利用现有的CDN网络结构实现,本发明主要是增加了第三级缓存策略的实现,第三级缓存结构的架构图,如图5所示。
在图5的网络架构中,客户端A在下载播放的同时会在缓存中存储这些视频流媒体文件将访问地址上传给边缘节点缓存服务器,服务器更新索引文件,加入客户端A的资源地址。当客户端B需要访问这段视频流媒体文件时,客户端可以不通过向边缘节点缓存服务器获取资源,而是根据客户端A的资源地址直接获取流媒体资源文件。减缓边缘节点服务器的压力。
其中这个三级缓存结构的两个关键组件是,信令服务器和客户端。
(1)支持Flash Player的客户端
这里的网络加速服务是基于Flash Player内的RTMFP协议的基础上构建的,需要参与的客户端支持Flash Player插件。使用RTMFP协议的网络通信部分,可以快速使各个客户端构成P2P网络。无论是PC端还是移动端,大部分浏览器都提供了Flash Player插件的支持,所以大部分客户端不需要任何安装就可以进行基于P2P的Web通信。
(2)信令服务器
使用RTMFP协议来构建客户端的P2P网络,客户端就需要交换各自的信息才能连接在一起,这时候就需要信令服务(Signaling)。信令是一个协调沟通的过程,为了让客户端之间构成会话,客户端需要交换以下信令信息:发起和关闭一个通话控制信息;错误信息;元数据信息;确保通信安全的密钥;网络数据(如主机在外网的IP地址和端口)。客户端的信令处理需要一种来回传递信息的方法,这种机制需要利用支持RTMFP协议的服务器支持,需要自己创建它。
在这些客户端与信令服务器之间通信并实现客户端之间流媒体缓存文件互传都是使用RTMFP协议通信实现的。RTMFP协议在应用层面提供了三个可供调用的API,分别是NetConnection,在Flash Player应用程序和信令服务器之间创建双向连接。NetConnection对象如同客户端与服务器之间的管道。NetGroup,NetGroup的addHaveObjects()、removeHaveObjects()、addWantObjects()、removeWantObjects()、writeRequestedObject()和denyRequestedObject()以将大型数据分解成数据片段,然后将其复制到对等组中的所有节点。对象复制有两个集合。Have集:存放自己已经有的对象片段的索引集合,分享数据用。Want集:存放自己想获取的对象片段是索引集合,获取数据用。
在客户端通信技术完善之后,客户端缓存即浏览器缓存技术变得很重要。浏览器都提供了缓存,缓存访问过的站点的图片、文本、脚本文件,甚至可以缓存页面播放器点播的视频文件。浏览器的缓存机制使用的是HTTP协议定义的缓存机制。在HTTP 1.1中,使用了Cache-Control策略。原理是通过指明缓存资源的有效期,来控制浏览器是重新向服务器发出请求获取数据还是从浏览器缓存中读取数据。Cache-Conctrol有多个设置选项,HTTP协议头中Cache-Control的可选值如表格所示:
表1
字段 说明
public 响应可以被任何缓存区缓存
private 对于单个用户的整个或部分响应消息,不能被共享缓存处理服务器可以仅仅描述部分响应消息,对其他用户的请求无效
no-cache 请求或响应的消息不能缓存
no-store 防止重要的信息被意外发布在请求消息中发送将会导致请求和响应消息都不能使用缓存
max-age 客户端可以接受生存期不大于指定时间的响应(以秒为单位)
min-fresh 客户端可以接受响应时间小雨当前时间加上指定时间的响应
max-stale 客户端可以接受超出超时时间的响应消息
字段Last-Modified/If-Modified-Since,Etag/If-None-Match也需要配合Cache-Control使用,关于这四个字段的说明,如表格所示:
表2
字段 说明
Last-Modified 标示响应资源的最后修改时间,由服务器告知浏览器资源
If-Modified-Since Cache-Control标识了max-age,资源有Last-Modified声明,再次向服务器请求时带上If-Modified-Since,表示请求时间。服务器收到请求后发现有If-Modified-Since,就与被请求资源的最后修改时间进行比对。若最后修改时间较新,则响应整片资源,HTTP 200;若最后修改时间较旧,则响应HTTP 304,浏览器继续使用保存的Cache
Etag 服务器响应请求时,告知浏览器当前请求资源在服务器的唯一标识
If-None-Match Cache-Control标识乐乐max-age,资源有Etag声明,再次向服务器请求时带上If-None-Match。服务器收到请求后发现有If-None-Match,就与被请求资源的对应校验串比对,绝对返回200或304
Etag是资源在服务端的唯一标识符,由服务器自动生成,可以更加精准的控制缓存内容。如果同时使用Last-Modified和Etag,服务器会优先验证Etag,当Etag一致,才会对比Last-Modified。
浏览器缓存的执行过程流程图如图6所示。
在这些浏览器缓存流媒体文件之后,其浏览器之间进行文件互传使用的协议是RTMFP协议,RTMFP协议基于用户数据报协议(UDP)。在传递实时流媒体时,基于UDP的协议相对于基于TCP的协议拥有更多的优势,比如更低的延迟和运营成本,以及对丢失包的允许误差也更大一些。需要用到服务器端连接来建立起客户端之间的初始化连接,也可用来进行服务器端的数据调用或者作为进入其他系统的网关。它的工作原理首先需要在客户端与支持RTMFP协议的信令服务器之间创建RTMFP协议的连接。服务器利用客户端传过来的身份信息进行解析归组并且存储。而客户端用协议建立的API与服务器进行通信,包括个人身份信息、请求资源信息等;然后利用服务器返回给客户端的信息取得获取资源的具体位置,然后以流的方式去获取所需的资源。
所以根据这种RTMFP传输协议,需要构建RTMFP流媒体系统。RTMFP流媒体系统由三部分组成,分别是资源服务器(准备流媒体服务),通信转发服务器(通信转发)和支持FlashPlayer的客户端。
(1)资源服务器
由于RTMFP协议对流媒体的编码格式有要求,所以需要流媒体服务器将输入的音频视频进行编码。视频源视频文件。RTMFP协议要求音频需要进行AAC编码,视频进行H.264编码。之后,将编码后的音频和视频数据封装成FLV进行输出。对于内容服务器没有特殊的要求,可以是普通的Web服务器,也可以是CDN的边缘缓存服务器。
(2)通信转发服务器
主要用于转发连接。首先服务器保存客户端的连接信息,并根据客户端的信息进行分组,当新的用户向服务器请求资源时,服务器判断当前维护的客户端节点信息中有没有新用户所需要的,若有,就把客户端信息返还给新用户;若无,则返回资源服务器给新用户。
(3)客户端
已有资源的客户端使用流分割器将流资源进行分割,形成连续的、长度均等的后缀的文件,这些文件在客户端进行存储。生成这些小文件的同时也会生成包含这些文件指针的索引文件,索引文件也存储转发服务器中。之所以采用FLV格式对编码后的媒体流进行封装,是因为它能够将音视频媒体流严格按照时间顺序进行交织复用,任意截取和分段,每一个分段都可能不依赖于之前的分段而独立进行解码和播放。客户端依照索引文件中的顺序依次下载每一个可用的媒体文件,当下载达到一定数量后就会按序拼装成一个连贯的流,然后由播放器解码播放。RTMFP流媒体系统如图7所示。
综上所述,本发明是基于缓存的P2P与CDN融合的技术,通过结合P2P资源共享性、CDN资源传输加速的等优点、利用HLS流媒体传输协议的特性,即把整个流拆分成一个个很小的文件,从而提高流媒体的网络传输、响应速度和网络结构的健壮性。并且此多级缓存结构具有扩展性强、服务器带宽需求低、高并发等特点。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (3)

1.一种基于Flash P2P的流媒体多级缓存网络加速方法,其特征在于,
1)搭建CDN流媒体网络结构,并把流媒体资源分发到资源服务器和边缘节点缓存服务器中;
2)连接客户端时,引入信令服务器;使得组内的客户端能够实现彼此互相连接,在组内实现了客户端P2P网络结构,组内的客户端是指信令服务器把拥有同一资源的客户端划分成同一小组;
3)将地理位置相近的多个客户端访问的同一个边缘节点缓存服务器和这些客户端划分为一个组;
4)在共同访问同一个边缘节点缓存服务器的组内的客户端中,这些客户端不仅能够从边缘缓存服务器获取资源,也能够从组内的其他客户端获取资源,以此形成流媒体资源的第三级缓存;
流媒体多级缓存方法是指对资源的分层缓存,多级缓存采用了三级缓存;
站点服务器从资源服务器和数据库中获取资源,并将内容发到各个边缘缓存服务器,作为原始存储,定义为一级缓存;
各边缘缓存节点处理来自客户端的访问请求并返回请求资源,同时将这些请求到的数据缓存起来,在其他用户再次访问相同数据时,加快请求资源的返回,此为二级缓存;
客户端获取资源之后,由于有浏览器缓存的存在,能将频繁使用的数据缓存到本地,减少下次请求的通信开销,加快资源的读取渲染速度,每一个客户端又是P2P网络的一个节点,通过和其他客户端的连接,将缓存中的数据贡献给其他需要的客户端,从其他的客户端的角度来说,在客户端对数据的缓存就是第三级缓存;
在多级缓存中,请求资源的过程是客户端总是从第三级缓存开始寻找,找不到资源才会向上一级请求资源;
采用RTMFP协议来构建客户端的P2P网络,客户端需要交换各自的信息才能连接在一起,则需要信令服务,信令是一个协调沟通的过程,为了让客户端之间构成会话,客户端需要交换以下信令信息:发起和关闭一个通话控制信息、错误信息、元数据信息、确保通信安全的密钥、网络数据;客户端的信令处理需要一种来回传递信息的机制,这种机制需要利用支持RTMFP协议的服务器支持,需要客户端创建这种机制;
在客户端与信令服务器之间通信并实现客户端之间流媒体缓存文件互传都是使用RTMFP协议通信实现的;RTMFP协议在应用层面提供了三个可供调用的API,分别是:
NetConnection,在Flash Player应用程序和信令服务器之间创建双向连接;
NetGroup,NetGroup中的addHaveObjects()、removeHaveObjects()、addWantObjects()、removeWantObjects()、writeRequestedObject()和denyRequestedObject()将大型数据分解成数据片段,然后将其复制到对等组中的所有节点;
对象复制有两个集合,Have集:存放自己已经有的对象片段的索引集合,分享数据用;Want集:存放自己想获取的对象片段是索引集合,获取数据用。
2.根据权利要求1所述的基于Flash P2P的流媒体多级缓存网络加速方法,其特征在于,所述客户端为支持Flash Player的客户端。
3.根据权利要求1所述的基于Flash P2P的流媒体多级缓存网络加速方法,其特征在于,浏览器的缓存机制使用的是HTTP协议定义的缓存机制;在HTTP 1.1中,使用了Cache-Control策略。
CN201510358411.2A 2015-06-25 2015-06-25 基于Flash P2P的流媒体多级缓存网络加速方法 Active CN104967685B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510358411.2A CN104967685B (zh) 2015-06-25 2015-06-25 基于Flash P2P的流媒体多级缓存网络加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510358411.2A CN104967685B (zh) 2015-06-25 2015-06-25 基于Flash P2P的流媒体多级缓存网络加速方法

Publications (2)

Publication Number Publication Date
CN104967685A CN104967685A (zh) 2015-10-07
CN104967685B true CN104967685B (zh) 2018-12-14

Family

ID=54221622

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510358411.2A Active CN104967685B (zh) 2015-06-25 2015-06-25 基于Flash P2P的流媒体多级缓存网络加速方法

Country Status (1)

Country Link
CN (1) CN104967685B (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10567538B2 (en) * 2016-03-08 2020-02-18 Huawei Technologies Co., Ltd Distributed hierarchical cache management system and method
CN105915585A (zh) * 2016-03-31 2016-08-31 乐视控股(北京)有限公司 用于节点群组的缓存机制确定方法及系统
CN106170023B (zh) * 2016-08-31 2019-04-26 网宿科技股份有限公司 一种网络资源的处理方法、装置、系统以及服务器
CN107995244A (zh) * 2016-10-27 2018-05-04 北京优朋普乐科技有限公司 一种直播多媒体资源的数据请求方法及装置
CN106708923B (zh) * 2016-11-09 2019-07-09 武汉大学 一种基于移动群智网络的本地缓存文件分享方法
WO2018098820A1 (zh) * 2016-12-02 2018-06-07 深圳前海达闼云端智能科技有限公司 数据发送、接收的方法、装置、服务器及计算机程序产品
CN108259542B (zh) * 2016-12-29 2020-02-07 腾讯科技(深圳)有限公司 资源的传输方法和装置
CN107786668B (zh) * 2017-11-09 2020-06-12 成都知道创宇信息技术有限公司 一种基于cdn网络的权重缓存网站方法
CN108810070B (zh) * 2018-03-28 2021-06-15 广州视源电子科技股份有限公司 一种资源共享方法、装置、智能设备和存储介质
CN108712343A (zh) * 2018-05-14 2018-10-26 网宿科技股份有限公司 流媒体资源的分发方法、系统、边缘节点及中心调度系统
CN109167820A (zh) * 2018-08-13 2019-01-08 彩讯科技股份有限公司 一种应用程序的下载方法、装置、存储介质及终端
CN109040308A (zh) * 2018-09-12 2018-12-18 杭州趣链科技有限公司 一种基于ipfs的文件分发系统及文件分发方法
CN109640107B (zh) * 2018-12-13 2021-07-27 网易(杭州)网络有限公司 一种视频直播数据传输方法和装置
TWI713357B (zh) * 2019-04-11 2020-12-11 王志強 影音串流使用階層式資料中心的故障轉移方法
CN110677683B (zh) * 2019-09-30 2022-03-04 北京奇艺世纪科技有限公司 视频存储、视频访问方法及分布式存储、视频访问系统
CN110971671B (zh) * 2019-11-14 2022-11-15 用友网络科技股份有限公司 一种缩短远距离通信时网络连接延迟的方法及系统
CN111343504B (zh) * 2020-05-21 2020-09-18 腾讯科技(深圳)有限公司 视频处理方法、装置、计算机设备和存储介质
CN111881394B (zh) * 2020-07-28 2024-01-12 万商云集(成都)科技股份有限公司 一种应用中间层的请求处理方法及系统
CN112803982A (zh) * 2021-02-03 2021-05-14 南通先进通信技术研究院有限公司 一种基于cdn缓存技术的卫星组播分发系统及其工作方法
CN113179328A (zh) * 2021-05-19 2021-07-27 上海七牛信息技术有限公司 一种用于pcdn网络的资源分发方法及系统
CN114124939B (zh) * 2021-11-25 2024-03-26 北京奇艺世纪科技有限公司 一种预缓存文件处理方法、装置及文件预缓存系统
CN114363289B (zh) * 2021-12-22 2023-08-01 天翼阅读文化传播有限公司 一种基于规则引擎的虚拟网络智能调度系统
CN115002129B (zh) * 2022-05-09 2023-05-12 珠海迈科智能科技股份有限公司 一种增加可分享用户基数的p2p流媒体控制系统及其方法
CN115002132B (zh) * 2022-05-23 2024-05-28 苏州思萃工业互联网技术研究所有限公司 一种用于pcdn网络预缓存资源的分发方法、系统及计算机设备
CN116884393A (zh) * 2023-08-03 2023-10-13 北京中科深智科技有限公司 一种压弹式多级缓冲生成式ai通信方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231762A (zh) * 2011-08-12 2011-11-02 乐视网信息技术(北京)股份有限公司 一种可以无限水平扩展的p2p服务器架构
CN103634692A (zh) * 2013-12-06 2014-03-12 南京理工大学连云港研究院 基于cdn和p2p的混合流媒体视频点播系统
CN103812757A (zh) * 2012-11-13 2014-05-21 中兴通讯股份有限公司 一种实时通信的浏览器紧急呼叫方法、系统和移动装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8312164B2 (en) * 2010-04-14 2012-11-13 Adobe Systems Incorporated Media quality enhancement among connected media communication devices
CN102281474B (zh) * 2011-09-02 2013-03-27 乐视网信息技术(北京)股份有限公司 一种网络直播及录制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102231762A (zh) * 2011-08-12 2011-11-02 乐视网信息技术(北京)股份有限公司 一种可以无限水平扩展的p2p服务器架构
CN103812757A (zh) * 2012-11-13 2014-05-21 中兴通讯股份有限公司 一种实时通信的浏览器紧急呼叫方法、系统和移动装置
CN103634692A (zh) * 2013-12-06 2014-03-12 南京理工大学连云港研究院 基于cdn和p2p的混合流媒体视频点播系统

Also Published As

Publication number Publication date
CN104967685A (zh) 2015-10-07

Similar Documents

Publication Publication Date Title
CN104967685B (zh) 基于Flash P2P的流媒体多级缓存网络加速方法
WO2021213184A1 (zh) 一种基于分布式选举的端到端内容分发网络系统和分发方法
US8756296B2 (en) Method, device and system for distributing file data
ES2429222B1 (es) Método y nodo de extremo para distribuir flujo continuo de contenido en tiempo real en una red de distribución de contenido
CN105872044A (zh) 基于WebRTC的流媒体多级缓存网络加速系统和方法
CN101938508B (zh) 对等网络流媒体直播系统中延时减小的方法和系统
EP2288085B1 (en) P2p based method, device and system for playing media
WO2007039576A1 (en) A content distribution system and a user request redirection method thereof
CN101146022B (zh) 节点重叠内容分发网络
CN102404378A (zh) 一种流媒体分发传输网络系统
JP4938074B2 (ja) リソースの位置情報の要求方法、当該方法のためのユーザノードおよびサーバ
US20100241757A1 (en) System and Method for Storing Streaming Media File
Mathieu et al. Information-centric networking: A natural design for social network applications
CN103634692A (zh) 基于cdn和p2p的混合流媒体视频点播系统
TWI351849B (en) Apparatus and method for transmitting streaming se
TW201405324A (zh) 雲端資料儲存系統及基於該系統的資料儲存與共用方法
CN102523298A (zh) 基于移动终端的视频采集分享系统及其处理方法
CN106161649A (zh) 一种基于重定向机制的cdn智能调度方法
CN106453451A (zh) 共享自适应内容数据链路快取缓存网络技术(sadcn)
WO2012152771A2 (en) Content server of a service provider's cdn
CN107920042A (zh) 一种直播间页面的优化传输方法和服务器
Kazemzadeh et al. Publiy+: A peer-assisted publish/subscribe service for timely dissemination of bulk content
WO2012029248A1 (ja) データ転送システム
Pettersen et al. Jovaku: Globally distributed caching for cloud database services using DNS
KR20090076719A (ko) 피어투피어 오버레이 네트워크 환경에서의 콘텐츠 공유시스템 및 그 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 526040, Guangdong City, Zhaoqing province Guta road employment training center building fifth South

Applicant after: GUANGDONG DECHENG SCIENTIFIC EDUCATION CO.,LTD.

Address before: 526040 Guta Middle Road, Guangdong, China, No. 16, No.

Applicant before: GUANGDONG DECHENG NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Network Acceleration Method of Streaming Media Multilevel Cache Based on Flash P2P

Effective date of registration: 20221104

Granted publication date: 20181214

Pledgee: Zhaoqing Rural Commercial Bank Co.,Ltd. Dinghu sub branch

Pledgor: GUANGDONG DECHENG SCIENTIFIC EDUCATION CO.,LTD.

Registration number: Y2022980020833

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20231027

Granted publication date: 20181214

Pledgee: Zhaoqing Rural Commercial Bank Co.,Ltd. Dinghu sub branch

Pledgor: GUANGDONG DECHENG SCIENTIFIC EDUCATION CO.,LTD.

Registration number: Y2022980020833

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: An Acceleration Method for Streaming Media Multi level Caching Network Based on Flash P2P

Effective date of registration: 20231114

Granted publication date: 20181214

Pledgee: Zhaoqing Rural Commercial Bank Co.,Ltd. Dinghu sub branch

Pledgor: GUANGDONG DECHENG SCIENTIFIC EDUCATION CO.,LTD.

Registration number: Y2023980065552

PE01 Entry into force of the registration of the contract for pledge of patent right