法律状态公告日
法律状态信息
法律状态
2017-03-29
授权
授权
2014-06-25
实质审查的生效 IPC(主分类):H04L29/08 申请日:20140225
实质审查的生效
2014-05-28
公开
公开
技术领域
本发明涉及一种点播学习系统,具体涉及一种基于P2P的SCORM标准课件点播学习培训系统,本发明还涉及一种基于P2P的SCORM标准课件播放系统及其实现方法,本发明属于计算机技术领域。
背景技术
在线课件学习是企业在线培训系统中的主要业务之一,传统的课件大部分以基于SCORM标准的音视频多媒体课件为主,现有SCORM课件点播方式通过流媒体服务进行发布,当点播用户增多且并发点播时,对系统产生较大负载压力,现有流媒体服务器和网络带宽难以支持较好的服务性能。
发明内容
为解决现有技术的不足,本发明的目的在于提供一种基于P2P的SCORM标准课件播放系统及其实现方法。
为了实现上述目标,本发明采用如下的技术方案:
基于P2P的SCORM标准课件播放系统,其特征在于,包括:P2P目录服务器、P2P客户端、Active插件。
前述的基于P2P的SCORM标准课件播放系统,其特征在于,所述P2P客户端包括:
分段信息同步模块:用于将分段信息更新到P2P目录服务器;
心跳连接模块:用于定时向P2P目录服务器发送心跳包;
分段管理模块:用于管理每个分段的大小起始、结束位置;
异常管理模块:用于对P2P客户端在P2P传输时接收的异常进行处理;
负载均衡模块:用于在P2P目录服务器选源时进行负载均衡处理;
所述P2P目录服务器包括:
心跳与更新管理模块:用于接收P2P客户端的心跳包,更新终端资源拥有情况;
资源请求管理模块:用于接收P2P客户端的请求、选源处理并生成种子列表;
P2P传输模块:用于实现P2P传输;
所述Active插件加载在课件网页中,负责向P2P客户端传递下载、网页关闭信息。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,包括如下步骤:
步骤一:用户点击视频课件后,网页Active插件阻断流媒体服务访问请求,并向P2P客户端发送下载请求,并等待下载请求的返回状态,当返回状态为成功时,启动P2P服务模式,否则为流媒体服务模式;
步骤二:P2P客户端接收到插件请求后,本地P2P客户端向P2P目录服务器发送下载种子文件请求,请求种子列表文件;
步骤三:P2P目录服务器接收到请求后,选出种子,生成种子列表,发送给请求P2P客户端;
步骤四:本地P2P客户端基于种子列表选择下载源,启动多线程并发下载课件;
步骤五:P2P客户端接受到其他P2P客户端的下载申请后,接受申请并启动传输过程,并更新P2P目录服务器,本终端当前的线程数加1。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述步骤一包括:
步骤1a:在用户点击视频课件时,若P2P服务未启动,课件视频自动切换到流媒体服务,该过程对学习者是透明的;
步骤1b:在用户点击视频课件播放后,课件还在传输过程中,P2P目录服务器突然异常,P2P客户端检测到P2P目录服务器异常,并弹出提示框,然后P2P客户端自动退出。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述P2P服务未启动的情况包括:P2P客户端未启动, P2P目录服务器异常。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述步骤三包括:按照选源策略选出6个种子,若不足6个则选择全部,若没有则为空。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述步骤四包括:若种子数大于等于4个,则按顺序将前4个作为下载源,若种子数大于1且小于4个,则种子列表中所有的种子都作为下载源,若种子列表为空,则直接向P2P目录服务器申请下载。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述步骤五包括:当该P2P客户端上传线程数达到4时,P2P目录服务器在选源时将不会将此P2P客户端作为种子节点。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述步骤五包括:
步骤5a:当P2P客户端刚开始下载时, P2P客户端会直接从P2P目录服务器进行下载;P2P目录服务器达到上传上限后,如果再有P2P客户端申请则不会提供下载,会弹出提示框“P2P目录服务器繁忙,请刷新课件网页重新学习”;
步骤5b:当P2P客户端下载完一个分段后,会自动更新到P2P目录服务器,再有别的P2P客户端来申请下载该资源,即可从已下完分段的P2P客户端去下载该分段;若P2P客户端上传线程数达到上限4,P2P目录服务器则不会选择此P2P客户端为别的P2P客户端提供上传服务;
步骤5c:当P2P客户端申请的资源种子数量超过设定数值,P2P目录服务器会根据策略和均衡机制选出6个发送给P2P客户端进行下载,若少于6个则全部发送。
前述基于P2P的SCORM标准课件播放系统的实现方法,其特征在于,所述策略和均衡机制包括如下三类:
第一类:对于同一地区网段内的查看用户,用户登录系统后系统会识别出用处属于哪个地区的学员,会提供该地区的P2P客户端下载;P2P客户端用此P2P客户端访问P2P目录服务器选源时,只选择该地区内的用户;
第二类:P2P目录服务器选源时,按照线程上传数排序选择;
第三类:P2P目录服务器选源时,按照心跳来回时间差排序选择。
本发明的有益之处在于:本发明在不改变传统SCORM课件点播学习系统总体架构和用户使用方式的前提下,引入P2P技术解决了高并发、大吞吐的问题,解决了传统企业SCORM在线课件学习系统用户高速增长、地域分散、硬件投入大的问题,使现有课件学习点播系统可以满足企业在线培训系统快速增长的学习需求、提高课件播放的质量、降低企业培训成本投入,可广泛应用于其他企业在线培训系统。
附图说明
图1为本发明的系统运行示意图;
图2为本发明的P2P服务与流媒体服务切换流程图;
图3为本发明的P2P传输基本流程图;
图4为本发明的P2P传输的异常处理流程图;
图5为本发明的P2P目录服务器选源策略流程图。
具体实施方式
以下结合附图和具体实施例对本发明作具体的介绍。
随着互联网媒体传播技术的发展,P2P这一新型技术从机制上改变了原有集中式内容发布模式,尤其适用于用户数量较大的内容共享应用。针对企业在线培训系统用户高速增长、集中式发布课件学习内容的现状,P2P技术非常适用于在线网络学习系统中,以提升系统的承载能力。因此,本研究的目的是在不改变现有网络大学系统架构和用户使用方式的情况下,提出基于P2P的在线课件学习系统改进可行性方案,改变了传统SCORM标准课件点播学习系统难以应对高并发、大吞吐的问题,使得现有课件学习点播系统可以满足苏电大学快速增长的学习需求、提高课件播放的质量、降低企业培训成本投入。
本发明所要解决的技术问题是:
如何保证系统两种工作模式的兼容性问题,现有在线学习系统为流媒体点播服务模式,若在原有基础上,基于P2P技术设计一种新的分布式资源发布模式,需要保证整个系统在两种服务模式方面的相互切换、相互补充;
Media Player 播放器如何支持P2P工作模式问题,在现有系统工作模式下,Media Player作为P2P客户端与媒体P2P目录服务器通过实时流媒体传输协议RTP、RTCP和UDP协议进行内容传输,系统采用“边播放边传输”方式工作;
P2P系统内容发布负载均衡问题,P2P系统中的负载均衡问题指如何保证在多个系统终端并发播放时,防止出现种子选择热点问题,P2P机制本身的优势在于同一个内容播放的用户越多,后来的用户下载的速度就越快,但如果没有好的机制避免其热点问题,其优势就难以发挥出来。
为解决上述技术问题,本发明提供一种基于P2P的SCORM标准课件播放系统,包括P2P目录服务器、P2P客户端和Active插件,其特征在于传统SCORM标准课件点播系统利用B/S架构,采用流媒体播放服务的基础上,为解决高并发、集中式课件发布易拥堵的问题,在不改变原有系统总体架构和用户使用方式的前提下,引入P2P技术解决。参照图1所示,该系统主要包括P2P目录服务器和P2P客户端、Active插件。
其中,P2P客户端包括:
分段信息同步模块:用于将分段信息更新到P2P目录服务器;
心跳连接模块:用于定时向P2P目录服务器发送心跳包;
分段管理模块:用于管理每个分段的大小起始、结束位置;
异常管理模块:用于对P2P客户端在P2P传输时接收的异常进行处理;
负载均衡模块:用于在P2P目录服务器选源时进行负载均衡处理;
P2P目录服务器包括:
心跳与更新管理模块:用于接收P2P客户端的心跳包,更新终端资源拥有情况;
资源请求管理模块:用于接收P2P客户端的请求、选源处理并生成种子列表;
P2P传输模块:用于实现P2P传输;
Active插件加载在课件网页中,负责向P2P客户端传递下载、网页关闭信息。
如图1所示,用户在终端上点播视频课件时,课件网页中的Active插件将点播信息通知P2P客户端;P2P客户端再与P2P目录服务器交互申请下载视频课件资源;P2P目录服务器接收P2P客户端请求,生成种子列表,并反馈给P2P客户端;P2P客户端根据种子列表进行下载。具体流程描述包括如下步骤:
步骤一:用户点击视频课件后,网页Active插件首先阻断流媒体服务访问请求,向P2P客户端发送下载请求,并等待请求的返回状态,当返回状态为成功时,启动P2P服务模式,否则为流媒体服务模式;
步骤二:P2P客户端接收到插件请求后,本地P2P客户端向P2P目录服务器发送下载种子文件请求,请求种子列表文件;
步骤三:P2P目录服务器接收到请求后,按照选源策略选出6个种子(若不足6个则选择全部,若没有则为空),生成种子列表,发送给请求P2P客户端;
步骤四:本地P2P客户端基于种子列表选择下载源,启动多线程并发下载课件。若种子数大于等于4个,则按顺序将前4个作为下载源,若种子数大于1小于4个,则列表中所有的种子都作为下载源,若列表为空,则直接向P2P目录服务器申请下载;
步骤五:P2P客户端接受到其他P2P客户端的下载申请后,接受申请并启动传输过程,并更新P2P目录服务器本终端当前的传线程数加1。当该P2P客户端上传线程数达到4时,P2P目录服务器在选源时将不会将此P2P客户端作为种子节点。
进一步而言:在P2P服务与流媒体服务切换策略设计上,图2描述了P2P服务与流媒体服务切换的策略设计,主要包括:
在P2P服务传输启动前切换:在用户点击视频课件时,若P2P服务未启动,无论是P2P客户端未启动,还是P2P目录服务器异常,课件视频会自动切换到流媒体服务,该过程对学习者是透明的;
在P2P服务传输中切换:在用户点击视频课件播放后,课件还在传输过程中,P2P目录服务器突然异常,P2P客户端会检测到P2P目录服务器异常,并弹出提示框,“课件传输失败,请关闭课件重新打开,学习进度不会丢失”,然后P2P客户端自动退出。
在P2P传输策略设计上,如图3描述了P2P传输的基本策略流程:
刚开始下载时,没有其他的种子P2P客户端,P2P客户端会直接从P2P目录服务器进行下载。P2P目录服务器达到上传上限后,再有P2P客户端申请则不会提供P2P客户端下载,会弹出提示框“P2P目录服务器繁忙,请刷新课件网页重新学习”。
当P2P客户端下载完一个分段后,会自动更新到P2P目录服务器,再有别的P2P客户端来申请下载该资源,即可从已下完分段的P2P客户端去下载该分段。若P2P客户端上传线程数达到上限4,P2P目录服务器则不会选择此P2P客户端为别的P2P客户端提供上传服务。
当P2P客户端申请的资源种子数量超过设定数值(可以人工设定,比如10),P2P目录服务器会根据一定的策略和均衡机制选出6个发送给P2P客户端进行下载,若少于6个则全部发送。
图4描述了P2P传输的异常策略流程,P2P客户端申请某段资源的下载后,若连接其中某个种子P2P客户端失败,则向P2P目录服务器重新申请,更新种子列表,选择一个新的P2P客户端继续失败线程下载。如此,重复2次后仍不能连接下载的话,则不再尝试申请别的用户作为源继续完成下载,而是直接转向P2P目录服务器完成该线程下载。
在P2P服务选源策略&均衡处理机制上,
P2P目录服务器在选源时,按照以下策略的优先级顺序选择适合的种子生成种子列表,并发送给请求的P2P客户端。如图5所示:
一、同一地区网段内查看用户:用户登录系统后系统会识别出用处属于哪个地区的学员,会提供该地区的P2P客户端下载。P2P客户端用此P2P客户端访问P2P目录服务器选源时,只会选择该地区内的用户;
二、按照线程上传数排序选择: P2P客户端定时向P2P目录服务器发送一个心跳连接包,包中附带一些上传线程、心跳来回时间戳等信息,P2P目录服务器会记录这些信息并在选源时会用到这些数据。为了保持当前的状态更新,心跳包的时间设定为1分钟比较合理。P2P客户端会向P2P目录服务器发送心跳包,更新实时的上传线程数,分片信息等。P2P目录服务器选源时,也会根据用户的上传线程数进行排序,优先选择上传线程少的P2P客户端作为源,这样既可以保证源的质量,也可以做到负载均衡;
三、按照心跳来回时间差排序选择:P2P客户端发送的心跳包,会计算一个来回的时间差,这个时间差能够反映一定的网络带宽与机器性能的问题。P2P目录服务器选源时根据时间差的大小排序,优先选择时间差小的客户机作为源。
本发明在不改变传统SCORM课件点播学习系统总体架构和用户使用方式的前提下,引入P2P技术解决了高并发、大吞吐的问题,解决了传统企业SCORM在线课件学习系统用户高速增长、地域分散、硬件投入大的问题,使现有课件学习点播系统可以满足企业在线培训系统快速增长的学习需求、提高课件播放的质量、降低企业培训成本投入,可广泛应用于其他企业在线培训系统。
以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
机译: 基于P2P的跳过播放系统及其方法
机译: 基于P2P的跳过播放系统及其方法
机译: 基于寿命模式的具有火灾感应功能的P2P P2P灯和基于寿命模式和P2P的火灾感知的P2P方法