一种基于BITTORRENT的客户端及其视频点播方法.pdf

上传人:r7 文档编号:1033195 上传时间:2018-03-27 格式:PDF 页数:9 大小:420.72KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910102284.4

申请日:

2009.09.10

公开号:

CN102025752A

公开日:

2011.04.20

当前法律状态:

实审

有效性:

审中

法律详情:

发明专利申请公开后的视为撤回IPC(主分类):H04L29/08申请公开日:20110420|||著录事项变更IPC(主分类):H04L 29/08变更事项:申请人变更前:浙江省公众信息产业有限公司变更后:浙江省公众信息产业有限公司变更事项:地址变更前:310005 浙江省杭州市莫干山路118号变更后:310012 浙江省杭州市华星路99号创业大厦8楼|||实质审查的生效IPC(主分类):H04L 29/08申请日:20090910|||公开

IPC分类号:

H04L29/08; G06F17/30

主分类号:

H04L29/08

申请人:

浙江省公众信息产业有限公司

发明人:

邢小良; 黄炜; 袁江; 叶挺群

地址:

310005 浙江省杭州市莫干山路118号

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

一种基于BitTorrent的客户端及其视频点播方法,其中该客户端包括:会话管理模块,用于对点击链接的频道信息中的torrent文件进行解码并在网络中搜寻拥有该torrent文件内容的连接对象;内容获取模块,用于与拥有torrent文件内容的连接对象相连并获取数据内容;以及播放模块用于播放下载就绪的内容。本发明基于成熟的bittorrent协议,能够迅速搭建起性能优异的整个平台,而不需要考虑到底层的数据传输细节,并且相对公开的bittorrent协议及用户基数能够提高用户体验。

权利要求书

1: 一种基于 BitTorrent 的客户端包括 : 会话管理模块,用于对点击链接的频道信息中的 torrent 文件进行解码并在网络中搜 寻拥有该 torrent 文件内容的连接对象 ; 内容获取模块,用于与拥有 torrent 文件内容的连接对象相连并获取数据内容 ;以及 播放模块用于播放下载就绪的内容。
2: 根据权利要求 1 的客户端,其中会话管理模块进一步包括 : 解码单元,用于对 torrent 文件进行解码以获得 torrent 内容,其中该 torrent 内容包括 n 个文件块 ; 文件管理单元,用于根据所述 n 个文件块来划分相应视频大小的镜像空间并对应编 号; 启动下载单元,用于执行各个文件块的启动下载。
3: 根据权利要求 2 的客户端,其中内容获取模块进一步包括 : libtorrent 节点选择接口,用于筛选拥有各个文件块的连接对象 ; libtorrent 的上传下载接口,用于从连接对象获取相应的数据块 ; 填充单元,用于将获取的数据块填充到在相应编号的镜像空间上。
4: 根据权利要求 1 的客户端,其中连接对象是 SP 和 / 或其他客户端。
5: 一种基于 BitTorrent 的客户端视频点播方法包括步骤 : A、对点击链接的频道信息中的 torrent 文件进行解码并在网络中搜寻拥有该 torrent 文 件内容的连接对象 ; B、与拥有 torrent 文件内容的连接对象相连并获取频道内容 ; C、播放下载就绪的内容。
6: 根据权利要求 5 的方法,其中步骤 A 进一步包括步骤 : A1、解码单元对 torrent 文件进行解码以获得 torrent 内容,其中该 torrent 内容包括 n 个文件块 ; A2、文件管理单元根据所述 n 个文件块来划分相应视频大小的镜像空间并对应编 号; A3、启动下载单元执行各个文件块的启动下载。
7: 根据权利要求 6 的方法,其中步骤 B 进一步包括步骤 : B1、 libtorrent 节点选择接口筛选拥有各个文件块的连接对象 ; B2、 libtorrent 的上传下载接口从连接对象获取相应的数据块 ; B3、填充单元将获取的数据块填充到在相应编号的镜像空间上。
8: 根据权利要求 5 的方法,其中连接对象是 SP 和 / 或其他客户端。

说明书


一种基于 BitTorrent 的客户端及其视频点播方法

    【技术领域】
     本发明涉及流媒体技术领域,尤其是涉及一种基于 BitTorrent 的 P2P 点播系统和方法。 背景技术
     利用 P2P 技术实现大规模的点播和直播服务基本涵盖了 P2P 视频应用最主流的两 个方向,它们分别面向着不同的市场和受众群。 然而用户的需求是多方面的,因此这两 个方向其实都有着很大的市场空间。 由于 P2P 点播比 P2P 直播在用户自由度以及视频资 源的可选择方面显著加强,因此从某种层面上说点播实现的难度更大一些。
     现 在 诸 多 传 统 的 p2p 视 频 开 发 商 也 都 推 出 了 各 自 的 点 播 服 务, pplive, ppstream,迅雷看看, qqlive 等,但是由于点播当中的高度交互性需求,使得实现的复杂 程度较高。
     经过几年的发展 BitTorrent 协议在世界各地爱好者的努力下逐步完善,它的优势 是如果有多个下载者并发的下载同一个文件,那么每个下载者也同时为其它下载者上传 文件,这样,文件源可以支持大量的用户进行下载,而只带来适当的负载的增长。 这是 因为大量的负载被均衡到整个系统中,所以提供源文件的机器的负载只有少量增长。 发明内容
     本发明是鉴于上述技术问题而产生的。 本发明的一个目的是提出一种基于 BitTorrent 的客户端及其视频点播方法。
     在一个方面中,根据本发明的基于 BitTorrent 的 P2P 客户端包括 :会话管理模 块,用于对点击链接的频道信息中的 torrent 文件进行解码并在网络中搜寻拥有该 torrent 文件内容的连接对象 ;内容获取模块,用于与拥有 torrent 文件内容的连接对象相连并获 取数据内容 ;以及播放模块用于播放下载就绪的内容。
     在这个方面中,其中会话管理模块进一步包括 :解码单元,用于对 torrent 文件 进行解码以获得 torrent 内容,其中该 torrent 内容包括 n 个文件块 ;文件管理单元,用于 根据所述 n 个文件块来划分相应视频大小的镜像空间并对应编号 ;以及启动下载单元, 用于执行各个文件块的启动下载。
     在这个方面中,其中内容获取模块进一步包括 :libtorrent 节点选择接口,用于 筛选拥有各个文件块的连接对象 ;libtorrent 的上传下载接口,用于从连接对象获取相应 的数据块 ;以及填充单元,用于将获取的数据块填充到在相应编号的镜像空间上。
     在这个方面中,其中连接对象是 SP 和 / 或其他客户端。
     在另一个方面中,根据本发明的基于 BitTorrent 的客户端视频点播方法包括步 骤 :A、对点击链接的频道信息中的 torrent 文件进行解码并在网络中搜寻拥有该 torrent 文 件内容的连接对象 ;B、与拥有 torrent 文件内容的连接对象相连并获取频道内容 ;以及 C、播放下载就绪的内容。在这个方面中,其中步骤 A 进一步包括步骤 :A1、解码单元对 torrent 文件进行 解码以获得 torrent 内容,其中该 torrent 内容包括 n 个文件块 ;A2、文件管理单元根据所 述 n 个文件块来划分相应视频大小的镜像空间并对应编号 ;以及 A3、启动下载单元执行 各个文件块的启动下载。
     在这个方面中,其中步骤 B 进一步包括步骤 :B1、 libtorrent 节点选择接口筛选 拥有各个文件块的连接对象 ;B2、 libtorrent 的上传下载接口从连接对象获取相应的数据 块 ;以及 B3、填充单元将获取的数据块填充到在相应编号的镜像空间上。
     在这个方面中,其中连接对象是 SP 和 / 或其他客户端。
     本发明基于成熟的 bittorrent 协议,能够迅速搭建起性能优异的整个 p2p 平台,而 不需要考虑到底层的数据传输细节,并且相对公开的 bittorrent 协议及用户基数能够提高 用户体验。 附图说明 结合随后的附图,从下面的详细说明中可显而易见的得出本发明的上述及其他 目的、特征及优点。 在附图中 :
     图 1 示出了根据本发明的基于 BitTorrent 的客户端所应用的 P2P 系统的示意图 ; 图 2 示出了根据本发明的基于 BitTorrent 的客户端的详细方框图 ; 图 3 示出了根据本发明的基于 BitTorrent 的客户端的子方框图 ; 图 4 示出了根据本发明的基于 BitTorrent 的客户端的另一子详细方框图 ; 图 5 示出了根据本发明的基于 BitTorrent 的客户端视频点播方法的流程图 ; 图 6 示出了根据本发明的基于 BitTorrent 的客户端视频点播方法的子流程图 ; 图 7 示出了 torrent 文件内容的示例 ; 图 8 示出了根据本发明的基于 BitTorrent 的客户端视频点播方法的另一子流程图。 具体实施方式
     为了更全面地理解本发明及其优点,下面结合附图及具体实施例对本发明做进 一步详细地说明。
     首先,参考图 1,对根据本发明的基于 BitTorrent 的客户端所应用的 P2P 系统进 行详细的说明。
     如图 1 所示,该系统包括客户端 (TelePlayer)、控制中心 (Control Center) 服务 器、多个 TS(Tracker) 服务器、以及多个 SP 服务器。
     客户端用于输入频道信息,从相对空闲的 SP 服务器或者其他客户端获取片源播 放。 随后对此进行详细地说明。
     控制中心服务器用于根据客户端输入的频道信息和记载在数据库中的各个 TS 的 负载信息,向客户端分配相对闲置的 TS 服务器,从而使得系统能够支持多 Tracker 服务 器,不会因为系统的用户扩张而引起 Tracker 服务器的瓶颈问题。
     多个 TS 服务器中的相对闲置的 TS 服务器用于根据从客户端发送而来的频道信 息,查找拥有该节目且处于相对空闲的 SP 服务器,并将 SP 服务器列表返回给客户端。此外,在 TS 服务器的负载发生变化时要向控制中心服务器汇报自己的负载信息,并以此 作为分配 Tracker 服务器的依据。
     多个 SP 服务器中的相对空闲的 SP 服务器用于向相连的客户端提供片源。
     下面,参考图 2,对根据本发明的基于 BitTorrent 的客户端进行更详细地说明。
     如图 2 所示,根据本发明的基于 BitTorrent 的客户端包括会话管理模块、内容获 取模块、以及播放模块。
     会话管理模块用于对点击链接的频道信息中的 torrent 文件进行解码并在整个 p2p 网络中搜寻拥有 torrent 文件内容的连接对象。 其中该连接对象是 SP 和 / 或其它客户端。
     具体地说,如图 3 所示,会话管理模块包括 :解码模块、文件管理模块、启动 下载模块。
     解码单元对 torrent 文件进行解码以获得 torrent 内容,其中该 torrent 内容包括 n 个文件块。 此外,优选地,将 torrent 内容按序排列到命令执行队列中。
     文件管理单元根据各个文件块信息划分相应视频大小的镜像空间并对应编号。
     启动下载单元执行各个文件块的启动下载。
     内容获取模块与拥有 torrent 文件的连接对象相连,并获取频道内容。
     具体地说,如图 4 所示,内容获取模块包括 :
     libtorrent 节点选择接口用于筛选拥有该区块的连接对象。
     libtorrent 的上传下载接口用于从连接对象获取相应的数据块 ;
     填充单元用于将获取的数据块填充到相应编号的镜像空间上。
     播放模块用于播放下载就绪的内容。
     接下来,结合 2-4,并且参考图 5,对根据本发明的基于 BitTorrent 的客户端视频 点播流程进行详细地说明。 应该注意的是客户端既可以从 SP 服务器获取数据,也可以从 其它客户端获取数据。
     如图 5 所示,该方法包括步骤 :
     步骤 A :通过点击链接获得点播频道信息。 其中链接例如为 http://ip/x.torrent ? id = 24&&genre = MTV&&content。 频道信息为 torrent 格式,例如上述链接示例中的 id = 24&&genre = MTV&&content 即为频道信息,并且其中 x.torrent 文件存储在相应 SP 服 务器中, ip 是存储 x.torrent 文件的 SP 服务器的地址。
     步骤 B :会话管理模块对频道信息中的 torrent 文件进行解码并在整个网络中搜 寻拥有 torrent 文件内容的连接对象。 其中该连接对象是 SP 和 / 或其它客户端。
     具体地说,如图 6 所示,该步骤进一步包括 :
     步骤 B1 :解码单元对 torrent 文件进行解码以获得 torrent 内容,其中该 torrent 内 容包括 n 个文件块。 此外,优选地,将 torrent 内容按序排列到命令执行队列中。
     具体地说,根据点播频道信息中的 ip( 存储 x.torrent 文件的 SP 服务器的地址 ) 获 得 torrent 文件,对该 torrent 文件进行解码以获得 torrent 文件内容,并将其排列到命令执 行队列中。
     图 7 给出了 torrent 文件内容的示例。如图 7 所示,该 torrent 文件内容包括 Tracker 信息、发布者信息、以及 Info 结构,其中 Info 结构进一步包括块信息和文件块 1、文件块 2、......、文件块 n。 其中各文件块结构包含如下子项 :Piece length( 块长度 )、Name( 文件名 )、 Length( 文件大小 )、以及 Md5,其中 Piece length 是整数,用于表示每块的大 小。 Name 是字符串,用于表示文件名。 Length 是整数,用于表示文件大小。 Md5 用 于表示文件的 md5 值,其包含 32 个字符。
     当然, torrent 文件的格式并不局限于此,而是可根据需要而采用任何适当的格 式。
     步骤 B2 :文件管理单元根据各个文件块信息划分相应视频大小的镜像空间并编 号,如下所示。
     镜像块 1 镜像块 2 镜像块 3 ......
     镜像块 n步骤 B3 :启动下载单元执行各个文件块的启动下载。
     具体地说,会话管理模块指示命令执行队列顺序启动加载各文件块 (1 ~ n) 内 容,并且根据各文件块的信息开始在整个网络中搜寻下载该块。 应该注意的是启动下载 并在网络中搜索该块为本领域普通技术人员所公知的技术,因此在这里不再详述。
     步骤 C :内容获取模块与拥有各个 torrent 文件块的连接对象相连,并获取频道 内容。 也就是说,客户端与 TS 发回的拥有该频道内容的 SP 和 / 或其它客户端的地址相 连,并获取频道内容。 应该注意的是 TS 发回拥有该频道内容的 SP 和 / 或其它客户端的 地址为本领域普通技术人员所公知的技术,因此在这里不再详述。
     具体地说,如图 5 所示,该步骤进一步包括 :
     步骤 C1 :libtorrent 节点选择接口筛选拥有该区块的 SP 和 / 或其他客户端 ;
     步骤 C2 :libtorrent 的上传下载接口从连接对象获取相应的数据块 ;
     步骤 C3 :填充单元将获取的数据块填充到在步骤 B2 所划分的相应编号的镜像 空间上。
     步骤 D :播放模块播放下载就绪的视频内容。
     通过上述可知,本发明的优点是传输模块基于成熟的 bittorrent 协议完成的,能 够迅速搭建起性能优异的整个 p2p 平台,而不需要考虑到底层的数据传输细节,减少开 发周期过长的风险 ;并且拥有跨平台的特性,便于移植到各种终端 ( 机顶盒等 ) ;相对公 开的 bittorrent 协议及用户基数能够提高用户体验。
     此外,对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。 因 此,具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实 施例。 因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围 的情况下,可对其做出各种修改。
    

一种基于BITTORRENT的客户端及其视频点播方法.pdf_第1页
第1页 / 共9页
一种基于BITTORRENT的客户端及其视频点播方法.pdf_第2页
第2页 / 共9页
一种基于BITTORRENT的客户端及其视频点播方法.pdf_第3页
第3页 / 共9页
点击查看更多>>
资源描述

《一种基于BITTORRENT的客户端及其视频点播方法.pdf》由会员分享,可在线阅读,更多相关《一种基于BITTORRENT的客户端及其视频点播方法.pdf(9页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102025752A43申请公布日20110420CN102025752ACN102025752A21申请号200910102284422申请日20090910H04L29/08200601G06F17/3020060171申请人浙江省公众信息产业有限公司地址310005浙江省杭州市莫干山路118号72发明人邢小良黄炜袁江叶挺群54发明名称一种基于BITTORRENT的客户端及其视频点播方法57摘要一种基于BITTORRENT的客户端及其视频点播方法,其中该客户端包括会话管理模块,用于对点击链接的频道信息中的TORRENT文件进行解码并在网络中搜寻拥有该TORRENT文件内容。

2、的连接对象;内容获取模块,用于与拥有TORRENT文件内容的连接对象相连并获取数据内容;以及播放模块用于播放下载就绪的内容。本发明基于成熟的BITTORRENT协议,能够迅速搭建起性能优异的整个平台,而不需要考虑到底层的数据传输细节,并且相对公开的BITTORRENT协议及用户基数能够提高用户体验。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书4页附图3页CN102025766A1/1页21一种基于BITTORRENT的客户端包括会话管理模块,用于对点击链接的频道信息中的TORRENT文件进行解码并在网络中搜寻拥有该TORRENT文件内容的连接对象;内容获取。

3、模块,用于与拥有TORRENT文件内容的连接对象相连并获取数据内容;以及播放模块用于播放下载就绪的内容。2根据权利要求1的客户端,其中会话管理模块进一步包括解码单元,用于对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块;文件管理单元,用于根据所述N个文件块来划分相应视频大小的镜像空间并对应编号;启动下载单元,用于执行各个文件块的启动下载。3根据权利要求2的客户端,其中内容获取模块进一步包括LIBTORRENT节点选择接口,用于筛选拥有各个文件块的连接对象;LIBTORRENT的上传下载接口,用于从连接对象获取相应的数据块;填充单元,用于将获取的数据块。

4、填充到在相应编号的镜像空间上。4根据权利要求1的客户端,其中连接对象是SP和/或其他客户端。5一种基于BITTORRENT的客户端视频点播方法包括步骤A、对点击链接的频道信息中的TORRENT文件进行解码并在网络中搜寻拥有该TORRENT文件内容的连接对象;B、与拥有TORRENT文件内容的连接对象相连并获取频道内容;C、播放下载就绪的内容。6根据权利要求5的方法,其中步骤A进一步包括步骤A1、解码单元对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块;A2、文件管理单元根据所述N个文件块来划分相应视频大小的镜像空间并对应编号;A3、启动下载单元执行各。

5、个文件块的启动下载。7根据权利要求6的方法,其中步骤B进一步包括步骤B1、LIBTORRENT节点选择接口筛选拥有各个文件块的连接对象;B2、LIBTORRENT的上传下载接口从连接对象获取相应的数据块;B3、填充单元将获取的数据块填充到在相应编号的镜像空间上。8根据权利要求5的方法,其中连接对象是SP和/或其他客户端。权利要求书CN102025752ACN102025766A1/4页3一种基于BITTORRENT的客户端及其视频点播方法技术领域0001本发明涉及流媒体技术领域,尤其是涉及一种基于BITTORRENT的P2P点播系统和方法。背景技术0002利用P2P技术实现大规模的点播和直播服。

6、务基本涵盖了P2P视频应用最主流的两个方向,它们分别面向着不同的市场和受众群。然而用户的需求是多方面的,因此这两个方向其实都有着很大的市场空间。由于P2P点播比P2P直播在用户自由度以及视频资源的可选择方面显著加强,因此从某种层面上说点播实现的难度更大一些。0003现在诸多传统的P2P视频开发商也都推出了各自的点播服务,PPLIVE,PPSTREAM,迅雷看看,QQLIVE等,但是由于点播当中的高度交互性需求,使得实现的复杂程度较高。0004经过几年的发展BITTORRENT协议在世界各地爱好者的努力下逐步完善,它的优势是如果有多个下载者并发的下载同一个文件,那么每个下载者也同时为其它下载者上。

7、传文件,这样,文件源可以支持大量的用户进行下载,而只带来适当的负载的增长。这是因为大量的负载被均衡到整个系统中,所以提供源文件的机器的负载只有少量增长。发明内容0005本发明是鉴于上述技术问题而产生的。本发明的一个目的是提出一种基于BITTORRENT的客户端及其视频点播方法。0006在一个方面中,根据本发明的基于BITTORRENT的P2P客户端包括会话管理模块,用于对点击链接的频道信息中的TORRENT文件进行解码并在网络中搜寻拥有该TORRENT文件内容的连接对象;内容获取模块,用于与拥有TORRENT文件内容的连接对象相连并获取数据内容;以及播放模块用于播放下载就绪的内容。0007在这。

8、个方面中,其中会话管理模块进一步包括解码单元,用于对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块;文件管理单元,用于根据所述N个文件块来划分相应视频大小的镜像空间并对应编号;以及启动下载单元,用于执行各个文件块的启动下载。0008在这个方面中,其中内容获取模块进一步包括LIBTORRENT节点选择接口,用于筛选拥有各个文件块的连接对象;LIBTORRENT的上传下载接口,用于从连接对象获取相应的数据块;以及填充单元,用于将获取的数据块填充到在相应编号的镜像空间上。0009在这个方面中,其中连接对象是SP和/或其他客户端。0010在另一个方面中,根据。

9、本发明的基于BITTORRENT的客户端视频点播方法包括步骤A、对点击链接的频道信息中的TORRENT文件进行解码并在网络中搜寻拥有该TORRENT文件内容的连接对象;B、与拥有TORRENT文件内容的连接对象相连并获取频道内容;以及C、播放下载就绪的内容。说明书CN102025752ACN102025766A2/4页40011在这个方面中,其中步骤A进一步包括步骤A1、解码单元对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块;A2、文件管理单元根据所述N个文件块来划分相应视频大小的镜像空间并对应编号;以及A3、启动下载单元执行各个文件块的启动下载。。

10、0012在这个方面中,其中步骤B进一步包括步骤B1、LIBTORRENT节点选择接口筛选拥有各个文件块的连接对象;B2、LIBTORRENT的上传下载接口从连接对象获取相应的数据块;以及B3、填充单元将获取的数据块填充到在相应编号的镜像空间上。0013在这个方面中,其中连接对象是SP和/或其他客户端。0014本发明基于成熟的BITTORRENT协议,能够迅速搭建起性能优异的整个P2P平台,而不需要考虑到底层的数据传输细节,并且相对公开的BITTORRENT协议及用户基数能够提高用户体验。附图说明0015结合随后的附图,从下面的详细说明中可显而易见的得出本发明的上述及其他目的、特征及优点。在附图。

11、中0016图1示出了根据本发明的基于BITTORRENT的客户端所应用的P2P系统的示意图;0017图2示出了根据本发明的基于BITTORRENT的客户端的详细方框图;0018图3示出了根据本发明的基于BITTORRENT的客户端的子方框图;0019图4示出了根据本发明的基于BITTORRENT的客户端的另一子详细方框图;0020图5示出了根据本发明的基于BITTORRENT的客户端视频点播方法的流程图;0021图6示出了根据本发明的基于BITTORRENT的客户端视频点播方法的子流程图;0022图7示出了TORRENT文件内容的示例;0023图8示出了根据本发明的基于BITTORRENT的客。

12、户端视频点播方法的另一子流程图。具体实施方式0024为了更全面地理解本发明及其优点,下面结合附图及具体实施例对本发明做进一步详细地说明。0025首先,参考图1,对根据本发明的基于BITTORRENT的客户端所应用的P2P系统进行详细的说明。0026如图1所示,该系统包括客户端TELEPLAYER、控制中心CONTROLCENTER服务器、多个TSTRACKER服务器、以及多个SP服务器。0027客户端用于输入频道信息,从相对空闲的SP服务器或者其他客户端获取片源播放。随后对此进行详细地说明。0028控制中心服务器用于根据客户端输入的频道信息和记载在数据库中的各个TS的负载信息,向客户端分配相对。

13、闲置的TS服务器,从而使得系统能够支持多TRACKER服务器,不会因为系统的用户扩张而引起TRACKER服务器的瓶颈问题。0029多个TS服务器中的相对闲置的TS服务器用于根据从客户端发送而来的频道信息,查找拥有该节目且处于相对空闲的SP服务器,并将SP服务器列表返回给客户端。说明书CN102025752ACN102025766A3/4页5此外,在TS服务器的负载发生变化时要向控制中心服务器汇报自己的负载信息,并以此作为分配TRACKER服务器的依据。0030多个SP服务器中的相对空闲的SP服务器用于向相连的客户端提供片源。0031下面,参考图2,对根据本发明的基于BITTORRENT的客户端。

14、进行更详细地说明。0032如图2所示,根据本发明的基于BITTORRENT的客户端包括会话管理模块、内容获取模块、以及播放模块。0033会话管理模块用于对点击链接的频道信息中的TORRENT文件进行解码并在整个P2P网络中搜寻拥有TORRENT文件内容的连接对象。其中该连接对象是SP和/或其它客户端。0034具体地说,如图3所示,会话管理模块包括解码模块、文件管理模块、启动下载模块。0035解码单元对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块。此外,优选地,将TORRENT内容按序排列到命令执行队列中。0036文件管理单元根据各个文件块信息划分相。

15、应视频大小的镜像空间并对应编号。0037启动下载单元执行各个文件块的启动下载。0038内容获取模块与拥有TORRENT文件的连接对象相连,并获取频道内容。0039具体地说,如图4所示,内容获取模块包括0040LIBTORRENT节点选择接口用于筛选拥有该区块的连接对象。0041LIBTORRENT的上传下载接口用于从连接对象获取相应的数据块;0042填充单元用于将获取的数据块填充到相应编号的镜像空间上。0043播放模块用于播放下载就绪的内容。0044接下来,结合24,并且参考图5,对根据本发明的基于BITTORRENT的客户端视频点播流程进行详细地说明。应该注意的是客户端既可以从SP服务器获取。

16、数据,也可以从其它客户端获取数据。0045如图5所示,该方法包括步骤0046步骤A通过点击链接获得点播频道信息。其中链接例如为HTTP/IP/XTORRENTID24GENREMTVCONTENT。频道信息为TORRENT格式,例如上述链接示例中的ID24GENREMTVCONTENT即为频道信息,并且其中XTORRENT文件存储在相应SP服务器中,IP是存储XTORRENT文件的SP服务器的地址。0047步骤B会话管理模块对频道信息中的TORRENT文件进行解码并在整个网络中搜寻拥有TORRENT文件内容的连接对象。其中该连接对象是SP和/或其它客户端。0048具体地说,如图6所示,该步骤进。

17、一步包括0049步骤B1解码单元对TORRENT文件进行解码以获得TORRENT内容,其中该TORRENT内容包括N个文件块。此外,优选地,将TORRENT内容按序排列到命令执行队列中。0050具体地说,根据点播频道信息中的IP存储XTORRENT文件的SP服务器的地址获得TORRENT文件,对该TORRENT文件进行解码以获得TORRENT文件内容,并将其排列到命令执行队列中。0051图7给出了TORRENT文件内容的示例。如图7所示,该TORRENT文件内容包括TRACKER信息、发布者信息、以及INFO结构,其中INFO结构进一步包括块信息和文件块1、文件块2、文件块N。其中各文件块结构。

18、包含如下子项PIECELENGTH块长度、NAME文说明书CN102025752ACN102025766A4/4页6件名、LENGTH文件大小、以及MD5,其中PIECELENGTH是整数,用于表示每块的大小。NAME是字符串,用于表示文件名。LENGTH是整数,用于表示文件大小。MD5用于表示文件的MD5值,其包含32个字符。0052当然,TORRENT文件的格式并不局限于此,而是可根据需要而采用任何适当的格式。0053步骤B2文件管理单元根据各个文件块信息划分相应视频大小的镜像空间并编号,如下所示。0054镜像块1镜像块2镜像块3镜像块N0055步骤B3启动下载单元执行各个文件块的启动下载。

19、。0056具体地说,会话管理模块指示命令执行队列顺序启动加载各文件块1N内容,并且根据各文件块的信息开始在整个网络中搜寻下载该块。应该注意的是启动下载并在网络中搜索该块为本领域普通技术人员所公知的技术,因此在这里不再详述。0057步骤C内容获取模块与拥有各个TORRENT文件块的连接对象相连,并获取频道内容。0058也就是说,客户端与TS发回的拥有该频道内容的SP和/或其它客户端的地址相连,并获取频道内容。应该注意的是TS发回拥有该频道内容的SP和/或其它客户端的地址为本领域普通技术人员所公知的技术,因此在这里不再详述。0059具体地说,如图5所示,该步骤进一步包括0060步骤C1LIBTOR。

20、RENT节点选择接口筛选拥有该区块的SP和/或其他客户端;0061步骤C2LIBTORRENT的上传下载接口从连接对象获取相应的数据块;0062步骤C3填充单元将获取的数据块填充到在步骤B2所划分的相应编号的镜像空间上。0063步骤D播放模块播放下载就绪的视频内容。0064通过上述可知,本发明的优点是传输模块基于成熟的BITTORRENT协议完成的,能够迅速搭建起性能优异的整个P2P平台,而不需要考虑到底层的数据传输细节,减少开发周期过长的风险;并且拥有跨平台的特性,便于移植到各种终端机顶盒等;相对公开的BITTORRENT协议及用户基数能够提高用户体验。0065此外,对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下,可对其做出各种修改。说明书CN102025752ACN102025766A1/3页7图1图2说明书附图CN102025752ACN102025766A2/3页8图3图4图5说明书附图CN102025752ACN102025766A3/3页9图6图7图8说明书附图CN102025752A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1