点对点网络中的文件下载方法及装置的制作方法

文档序号:6482735阅读:132来源:国知局
专利名称:点对点网络中的文件下载方法及装置的制作方法
技术领域
本发明涉及点对点技术,尤其涉及点对点网络中的文件传输技术。
背景技术
近年来,通过点对点技术提供流媒体下载的服务得到越来越广泛的应用。通常,这 样的服务均采用点对服务器和点模式。服务商提供流媒体资源下载服务器,客户端选择了 所需下载的流媒体文件后,不仅可以从服务器下载该文件的片段,还可以通过该文件的特 征值,通常是由hash函数确定的该文件唯一对应的数字摘要值,在网络中进行搜索,从拥 有该文件的片段的其他客户端那里下载该文件的片段。图1示出了一种现有技术中的系统框图。使用客户端21的用户登录服务器10,并 选择了一个统一资源定位符为U1、数字摘要值为Dl的流媒体文件Fl进行下载,边下载边观 看或收听。在该下载过程中,客户端21不仅以统一资源定位符Ul为匹配条件从服务器10 那里下载文件Fl的片段,也以数字摘要值D 1为匹配条件从点对点网络中的其他拥有文件 Fl的客户端那里下载文件Fl的片段,从而使得下载文件Fl的所有客户端的平均下载速度 比传统的服务器/客户端模式下得以提高。然而,当使用客户端21的用户在观看、收听文件Fl时进行快进,尤其是快进到文 件Fl尚未下载的片段时,在一种现有技术中,采用的方式是认为客户端21发起了一个新 的下载请求,所请求的文件是一个新文件F2,其包括从文件Fl的快进指针到结束部分的内 容。该文件F2对应于统一资源定位符U2以及数字摘要值D2。因为F2不同于F1,所以U2 不同于U1、D2不同于D1。因为几乎不存在与使用客户端21的用户执行相同的快进操作的 用户,从而几乎不存在与客户端21共享文件F2的其他客户端,客户端21基本上只能以统 一资源定位符U2为匹配条件从服务器10那里下载文件F2的片段,使得下载速度降低。因此,需要一种方法,用于在点对点网络中下载文件的片段,并取得平均意义上较 高的下载速度。

发明内容
点对点网络中,一个较大的文件会被分成多个片段,对等实体之间通过交换这些 片段来共享这一文件。一个网络实体可以以一个文件的文件名、数字摘要值或者其他标 识作为索引条件从对等实体处下载该文件的片段。现在点对点网络中通常采用一个文件 和/或其片段的数字摘要值作为索引条件,因为文件和其数字摘要值之间具有非常良好的 “一一对应”的特性。一个文件的数字摘要值通过散列函数来确定,常用的散列函数包括MD5 函数、SHAl函数、等。以一个完整的文件Fl为例,例如但不限于,Fl是一个影音文件。F2是截取F 1的 一部分所形成的文件。通常,文件F2会进行重新分割,这样,文件F2的片段就与文件Fl的 片段不同,因此,也就无法通过合并文件Fl的片段来得到文件F2。这样,想下载文件F2的 网络实体无法与拥有文件Fl的片段的网络实体实现点对点文件共享。
FLV文件是一种现有的流媒体文件格式。FLV是一个二进制文件,由文件头(FLV header)和若干tag组成,tag又可以分成三类音频流、视频流、脚本流(关键字或者文件 信息之类),用于承载媒体内容。在对FLV文件进行点对点传输时,通常进行的分割是每个 片段包含若干tag,例如,每个片段包含一个tag。本文中以下以FLV文件为例进行的描述 中,均默认为一个片段恰好包含一个tag ;对于一个片段包含多个tag的情形,本领域技术 人员应能根据本文的描述自行推导得出。FLV文件的一个特点是,从一个FLV文件的所有 tag中截取一部分连续的tag,无需对这部分连续的tag做任何修改、仅添加一个文件头即 可组成另一个可识别、可播放的FLV文件。例如图2所示,FLV文件Fl包含文件头!7H和多个片段P1至Pn+m,每个片段包含一 个tag ;截取其中的部分片段,例如片段Pn至Pn+m,添加文件头ra,即可组成FLV文件F2。FLV 文件的这种特点,使得想下载文件F2的网络实体与拥有文件Fl的片段的网络实体可以实 现点对点文件共享。根据本发明的第一方面,提供了一种点对点网络的网络实体中的文件下载方法, 所述方法包括以下步骤B.确定一个第一文件的一个指定部分的片段;C.根据第一文件的 第一匹配参数,从点对点网络中下载所述指定部分的片段;D.将所述指定部分的片段中的 至少一部分组成一个可识别的第二文件。根据本发明的第二方面,提供了一种点对点网络的网络实体中的文件下载装置, 包括第一确定装置,用于确定一个第一文件的一个指定部分的片段;片段下载装置,用于 根据第一文件的第一匹配参数,从点对点网络中下载所述指定部分的片段;文件组合装置, 将所述指定部分的片段中的至少一部分组成一个可识别的第二文件。根据本发明的第三方面,提供了一种用户终端,其包括本发明第二方面的文件下 载装置。根据本发明的第四方面,提供了一种计算机存储介质,该介质上存储了可被计算 机读取并运行以执行本发明第一方面的文件下载方法的计算机程序。本发明中的第一文件和第二文件是同一种格式的文件,例如FLV格式的流媒体文 件。本领域技术人员应能理解,与FLV文件具有类似特点的其他格式的文件也可以适用于 本发明。通过使用本发明中的方法、装置、用户终端或计算机存储介质,可以在下载文件时 获得较高的下载速度。


通过阅读以下参照附图对非限制性实施例所作的详细描述,本发明的其它特征、 目的和优点将会变得更明显。图1示出了一种现有技术中的系统框图;图2示出了根据本发明一个实施例的FLV文件的分段示意图;图3示出了根据本发明一个实施例的系统框图;图4示出了根据本发明一个实施例的点对点网络的网络实体中的文件下载方法 的流程图;图5a至图5c示出了根据本发明一个实施例的文件下载过程中的相应用户操作的示意图;图6示出了根据本发明一个实施例的系统框图;图7示出了根据本发明一个实施例的文件下载过程中的相应用户操作的示意图;图8示出了根据本发明一个实施例的点对点网络的网络实体中的文件下载装置 的结构框图;其中,相同或相似的附图标记表示相同或相似的步骤特征或装置(模块)。
具体实施例方式图3示出了根据本发明一个实施例的系统框图。如图所示,点对点网络包括服务 器10以及客户端21、22、23。图3所示的点对点网络是一个采用服务器/客户端架构的网 络,这是目前提供网络视频服务的机构所通常采用的一种网络架构。图3所示系统仅是示 例性而非限制性的,本发明也可以应用于其他架构的网络,例如所有实体之间对等的纯点 对点网络。图4示出了根据本发明一个实施例的点对点网络的网络实体中的文件下载方法 的流程图。通常,这里所说的网络实体是一个客户端,也就是一台计算机,这一文件下载过 程是由客户端中的相应软件所执行的。首先,在步骤S2中,客户端确定一个第一文件的一个指定部分的片段。然后,在步骤S3中,客户端根据第一文件的第一匹配参数,从点对点网络中下载 所述指定部分的片段。然后,在步骤S4中,客户端将所述指定部分的片段中的至少一部分组成一个可识 别的第二文件。图5a至图5c示出了根据本发明一个实施例的文件下载过程中的相应用户操作的 示意图。以下结合图2至图5,对本发明的一个具体实施例进行描述。具体场景是一个用户通过客户端21下载第一文件F1。例如图2所示,该文件Fl 是一个FLV文件,包含文件头ra和多个片段P1至Pn+m,每个片段包含一个tag。服务器10 提供基于超文本传输协议(HTTP)的文件下载服务,其中包括文件F 1。客户端21不仅从 服务器10处下载文件Fl的片段,而且还可以从点对点网络中,例如从客户端22、客户端23 处下载第一文件Fl的片段。首先,客户端21获取第一文件Fl的一个分割指示信息。具体地,客户端21—边在下载第一文件F1,用户一边通过客户端21中的网络播放 器观看第一文件F1。例如图5a所示,播放进度显示窗50中的播放进度指针51用于指示当 前播放进度,例如当前进度为gl (通常用时间表示),点状阴影区域表示当前已经下载的部 分。如果在点状阴影区域内部拖动播放进度指针51,仍然可以顺利播放。当用户将播放进度指针51拖动到点状阴影区域之外的位置,例如图5b中的g2位 置,也就是用户希望从g2代表的时间开始继续观看第一文件Fl的剩余部分,客户端21将 根据用户的操作获取关于第一文件Fl的一个分割指示信息。通常,该分割指示信息包括与 新的进度g2所代表的时间有关的信息。然后,在步骤S2中,客户端21将根据分割指示信息确定第一文件Fl的一个指定部分的片段。具体地,新的进度g2所代表的时间对应于片段Plri,客户端21可以将片段?11至?_ 确定为指定部分的片段,例如图5b中所示,也可以将片段Plri至Pn+m确定为指定部分的片 段,例如图5c中所示。然后,在步骤S3中,客户端21将根据第一文件Fl的第一匹配参数,从点对点网络 中下载指定部分的片段。根据本发明的一些实施例,具体地,第一文件Fl的第一匹配参数是采用散列函数 为其确定的数字摘要值D1,客户端21根据第一文件Fl的数字摘要值Dl作为索引匹配条件 从点对点网络中下载指定部分的片段,例如片段? 至?_。例如,客户端21所下载的片段可 以来自客户端22、客户端23等。数字摘要值Dl可以采用MD5函数或者SHAl函数来计算。 因为文件和其数字摘要值之间具有非常良好的“一一对应”的特性,所以可以保证下载内容 的准确性。本领域技术人员应能理解,点对点网络中文件和其数字摘要值的索引关系表的 建立、维护以及使用的方式并非本发明的重点,现有技术中的任何可行的方式均可应用于 本发明。 根据本发明的一些实施例,第一文件Fl的第一匹配参数也可以采用其文件名,客 户端21根据第一文件Fl的文件名作为索引匹配条件从点对点网络中下载指定部分的片 段,例如片段? 至?_。当然,还可以采用其他参数作为第一文件Fl的第一匹配参数。根据本发明的一些实施例,步骤S3中还包括客户端21根据第一文件Fl的第二 匹配参数,从服务器10处下载指定部分的片段。具体地,第一文件Fl的第二匹配参数是其在服务器10中的统一资源定位符Ul。 客户端21根据第一文件Fl的统一资源定位符Ul从服务器10中下载指定部分的片段,例 如片段? 至?_。当然,第一文件Fl的第二匹配参数也可以采用其他参数。然后,在步骤S4中,客户端21将指定部分的片段中的至少一部分组成一个可识别 的第二文件。具体地,例如图5b中所示,指定部分的片段包括片段Pn至?_。客户端21可以将 片段Pn至Pn+m按顺序组合起来,并添加上文件头ra,组成可识别的第二文件F2,第二文件F2 也是一个FLV文件。可能的情形是,客户端21还未下载完指定部分的所有片段,例如已经下载完的仅 有片段Pn、片段Pn+1 (m > 2)。则客户端21可以将片段Pn、Pn+1按顺序组合起来,并添加上文 件头ra,组成可识别的第二文件F2。本实施例中的场景是用户通过客户端21中的网络播放器观看FLV文件。因此,在 步骤S4之后还包括一个步骤客户端21将第二文件F2提供给网络播放器。这样,用户从 新的进度g2所代表的时间开始继续观看第一文件Fl剩余部分的内容。因为第一文件Fl的 指定部分的片段,也就是对应于第一文件Fl剩余部分内容(亦即第二文件F2的内容)的 片段Pn至?_,可以通过点对点技术从网络中下载,所以可以获得较高的下载速度,用户在 完成拖动播放进度指针的操作后很快就可以流畅地观看第一文件Fl剩余部分的内容,从 而使得用户的体验质量得到改善。图6示出了根据本发明另一个实施例的系统框图。如图所示,点对点网络包括客 户端25、26、27。图6所示的是一个纯点对点网络,这样的网络结构仅是示例性而非限制性
7的。图7示出了根据本发明一个实施例的文件下载过程中的相应用户操作的示意图。以下结合图2、图4、图6、图7,对本发明的一个具体实施例进行描述。具体场景是一个用户通过客户端25下载第一文件Fl的一部分。例如图2所示, 该文件Fl是一个FLV文件,包含文件头ra和多个片段P1至Pn+m,每个片段包含一个tag。 客户端25可以从点对点网络中,例如从客户端26、客户端27处下载第一文件Fl的片段。在步骤S2中,客户端25将确定第一文件Fl的一个指定部分的片段。具体地,客户端25可以通过检索获知第一文件Fl的文件(时间)长度。例如图 7所示,客户端25中可以提供文件长度显示窗口 60来显示整个第一文件Fl的长度。文件 长度显示窗口 60中还包括第一截取指针61和第二截取指针62,其初始默认位置可以分别 设置于文件长度显示窗口 60的开头和末尾。用户可以通过拖动第一截取指针61和第二截 取指针62来确定指定部分的片段。例如,用户将第一截取指针61拖动到tl时刻、将第二 截取指针62拖动到t2时刻。tl时刻对应着片段P2,t2时刻对应着片段Pn+1,客户端25可 以将片段P2SPn+1确定为指定部分的片段,例如图7中所示。或者,客户端25可以提供输入窗口,由用户输入截取开始时刻和截取终止时刻。 例如,用户输入的截取开始时刻为tl、输入的截取终止时刻为t2。tl时刻对应着片段P2, t2时刻对应着片段Pn+1,客户端25可以将片段P2至Pn+1确定为指定部分的片段,例如图7 中所示。然后,在步骤S3中,客户端25将根据第一文件F 1的第一匹配参数,从点对点网 络中下载指定部分的片段。根据本发明的一些实施例,具体地,第一文件Fl的第一匹配参数是采用散列函数 为其确定的数字摘要值D1,客户端25根据第一文件F 1的数字摘要值Dl作为索引匹配条 件从点对点网络中下载指定部分的片段,例如片段P2至Pn+1。例如,客户端25所下载的片 段可以来自客户端26、客户端27等。数字摘要值D 1可以采用MD5函数或者SHAl函数来 计算。因为文件和其数字摘要值之间具有非常良好的“一一对应”的特性,所以可以保证下 载内容的准确性。本领域技术人员应能理解,点对点网络中文件和其数字摘要值的索引关 系表的建立、维护以及使用的方式并非本发明的重点,现有技术中的任何可行的方式均可 应用于本发明。根据本发明的一些实施例,第一文件Fl的第一匹配参数也可以采用其文件名,客 户端25根据第一文件Fl的文件名作为索引匹配条件从点对点网络中下载指定部分的片 段,例如片段&至? +1。当然,还可以采用其他参数作为第一文件Fl的第一匹配参数。然后,在步骤S4中,客户端25将指定部分的片段中的至少一部分组成一个可识别 的第二文件。具体地,例如图7中所示,指定部分的片段包括片段P2至? +1。客户端25可以将 片段P2至Pn+1按顺序组合起来,并添加上文件头ra,组成可识别的第二文件F2,第二文件 F2也是一个FLV文件。因为第一文件Fl的指定部分的片段,也就是对应于第二文件F2的 内容的片段P2至? +1,可以通过点对点技术从网络中下载,所以可以获得较高的下载速度。可能的情形是,客户端25还未下载完指定部分的所有片段,例如已经下载完的仅 有片段P2、片段P3 (η > 2)。则客户端25可以将片段P2、P3按顺序组合起来,并添加上文件
8头ra,组成可识别的第二文件F2。该实施例的一个可能的应用场景是,用户对于第一文件Fl的内容有所了解,并且 只希望下载其中的精华部分。图8示出了根据本发明一个实施例的点对点网络的网络实体中的文件下载装置 的结构框图。如图所示,文件下载装置200包括分割指示信息获取装置201,第一确定装 置202,片段下载装置203,文件组合装置204,第一提供装置205。在本发明的其他一些实 施例中,文件下载装置200包括上述装置201至205中的一部分,以及其他装置。以下结合图2至图5、图8,对本发明的一个具体实施例进行描述。具体场景是一个用户通过客户端21下载第一文件F1。例如图2所示,该文件Fl 是一个FLV文件,包含文件头ra和多个片段P1至Pn+m,每个片段包含一个tag。服务器10 提供基于超文本传输协议(HTTP)的文件下载服务,其中包括文件F1。客户端21不仅从服 务器10处下载文件Fl的片段,而且还可以从点对点网络中,例如从容户端22、客户端23处 下载第一文件Fl的片段。文件下载装置200典型地设置于客户端21中,包括分割指示 信息获取装置201,第一确定装置202,片段下载装置203,文件组合装置204,第一提供装置 205。首先,客户端21中的分割指示信息获取装置201将获取第一文件Fl的一个分割 指不信息。具体地,客户端21—边在下载第一文件F1,用户一边通过客户端21中的网络播放 器观看第一文件F1。例如图5a所示,播放进度显示窗口 50中的播放进度指针51用于指示 当前播放进度,例如当前进度为gl (通常用时间表示),点状阴影区域表示当前已经下载的 部分。如果在点状阴影区域内部拖动播放进度指针51,仍然可以顺利播放。当用户将播放进度指针51拖动到点状阴影区域之外的位置,例如图5b中的g2位 置,也就是用户希望从g2代表的时间开始继续观看第一文件Fl的剩余部分,分割指示信息 获取装置201将根据用户的操作获取关于第一文件Fl的一个分割指示信息。通常,该分割 指示信息包括与新的进度g2所代表的时间有关的信息。然后,客户端21中的第一确定装置202将根据分割指示信息确定第一文件Fl的 一个指定部分的片段。具体地,新的进度g2所代表的时间对应于片段Plri,第一确定装置202可以将片段 确定为指定部分的片段,例如图5b中所示,也可以将片段Plri至Pn+m确定为指定部
分的片段,例如图5c中所示。然后,客户端21中的片段下载装置203将根据第一文件Fl的第一匹配参数,从点 对点网络中下载指定部分的片段。根据本发明的一些实施例,具体地,第一文件Fl的第一匹配参数是采用散列函数 为其确定的数字摘要值D1,片段下载装置203根据第一文件Fl的数字摘要值D 1作为索 引匹配条件从点对点网络中下载指定部分的片段,例如片段Pn至?_。例如,片段下载装置 203所下载的片段可以来自客户端22、客户端23等。数字摘要值Dl可以采用MD5函数或 者SHAl函数来计算。因为文件和其数字摘要值之间具有非常良好的“一一对应”的特性, 所以可以保证下载内容的准确性。本领域技术人员应能理解,点对点网络中文件和其数字 摘要值的索引关系表的建立、维护以及使用的方式并非本发明的重点,现有技术中的任何
9可行的方式均可应用于本发明。根据本发明的一些实施例,第一文件Fl的第一匹配参数也可以采用其文件名,片 段下载装置203根据第一文件Fl的文件名作为索引匹配条件从点对点网络中下载指定部 分的片段,例如片段Pn至?_。当然,还可以采用其他参数作为第一文件Fl的第一匹配参数。根据本发明的一些实施例,片段下载装置203还将根据第一文件Fl的第二匹配参 数,从服务器10处下载指定部分的片段。具体地,第一文件Fl的第二匹配参数是其在服务器10中的统一资源定位符Ul。 片段下载装置203根据第一文件Fl的统一资源定位符Ul从服务器10中下载指定部分的 片段,例如片SPn至?_。当然,第一文件Fl的第二匹配参数也可以采用其他参数。然后,客户端21中的文件组合装置204将指定部分的片段中的至少一部分组成一 个可识别的第二文件。具体地,例如图5b中所示,指定部分的片段包括片段Pn至Pn+m。文件组合装置204 可以将片段Pn至pn+m按顺序组合起来,并添加上文件头ra,组成可识别的第二文件F2,第二 文件F2也是一个FLV文件。可能的情形是,片段下载装置203还未下载完指定部分的所有片段,例如已经下 载完的仅有片段Pn、片段pn+1 (m > 2)。则文件组合装置204可以将片段Pn、Pn+1按顺序组合 起来,并添加上文件头ra,组成可识别的第二文件F2。然后,客户端21中的第一提供装置205将第二文件F2提供给网络播放器。这样, 用户就可以从新的进度g2所代表的时间开始继续观看第一文件Fl剩余部分的内容。因为 第一文件Fl的指定部分的片段,也就是对应于第一文件Fl剩余部分内容(亦即第二文件 F2的内容)的片段?11至?_,可以通过点对点技术从网络中下载,所以可以获得较高的下载 速度,用户在完成拖动播放进度指针的操作后很快就可以流畅地观看第一文件Fl剩余部 分的内容,从而使得用户的体验质量得到改善。以下结合图2、图4、图6、图7、图8,对本发明的另一个具体实施例进行描述。具体场景是一个用户通过客户端25下载第一文件Fl的一部分。例如图2所示, 该文件Fl是一个FLV文件,包含文件头ra和多个片段P1至Pn+m,每个片段包含一个tag。 客户端25可以从点对点网络中,例如从客户端26、客户端27处下载第一文件F 1的片段。 文件下载装置200典型地设置于客户端25中,包括第一确定装置202,片段下载装置203, 文件组合装置204。首先,客户端25中的第一确定装置202将确定第一文件Fl的一个指定部分的片 段。具体地,客户端25中的文件下载装置200可以通过检索获知第一文件Fl的文件 (时间)长度。例如图7所示,文件下载装置200中可以提供文件长度显示窗口 60来显示 整个第一文件Fl的长度。文件长度显示窗60中还包括第一截取指针61和第二截取指针 62,其初始默认位置可以分别设置于文件长度显示窗口 60的开头和末尾。用户可以通过拖 动第一截取指针61和第二截取指针62来确定指定部分的片段。例如,用户将第一截取指 针61拖动到tl时刻、将第二截取指针62拖动到t2时刻。tl时刻对应着片段P2,t2时刻 对应着片段Pn+1,第一确定装置202可以将片段P2至Pn+1确定为指定部分的片段,例如图7中所示。或者,文件下载装置200可以提供输入窗口,由用户输入截取开始时刻和截取终 止时刻。例如,用户输入的截取开始时刻为tl、输入的截取终止时刻为t2。tl时刻对应着 片段P2,t2时刻对应着片段Pn+1,第一确定装置202可以将片段P2至Pn+1确定为指定部分的 片段,例如图7中所示。然后,客户端25中的片段下载装置203将根据第一文件Fl的第一匹配参数,从点 对点网络中下载指定部分的片段。根据本发明的一些实施例,具体地,第一文件Fl的第一匹配参数是采用散列函数 为其确定的数字摘要值D1,片段下载装置203根据第一文件F 1的数字摘要值D 1作为索 引匹配条件从点对点网络中下载指定部分的片段,例如片段P2至? +1。例如,客户端25中 的片段下载装置203所下载的片段可以来自客户端26、客户端27等。数字摘要值Dl可以 采用MD5函数或者SHAl函数来计算。因为文件和其数字摘要值之间具有非常良好的“一一 对应”的特性,所以可以保证下载内容的准确性。本领域技术人员应能理解,点对点网络中 文件和其数字摘要值的索引关系表的建立、维护以及使用的方式并非本发明的重点,现有 技术中的任何可行的方式均可应用于本发明。根据本发明的一些实施例,第一文件Fl的第一匹配参数也可以采用其文件名,客 户端25中的片段下载装置203根据第一文件Fl的文件名作为索引匹配条件从点对点网络 中下载指定部分的片段,例如片段&至? +1。当然,还可以采用其他参数作为第一文件Fl的
第一匹配参数。然后,客户端25中的文件组合装置204将指定部分的片段中的至少一部分组成一 个可识别的第二文件。具体地,例如图7中所示,指定部分的片段包括片段P2至? +1。客户端25中的文 件组合装置204可以将片段P2至Pn+1按顺序组合起来,并添加上文件头ra,组成可识别的 第二文件F2,第二文件F2也是一个FLV文件。因为第一文件Fl的指定部分的片段,也就是 对应于第二文件F2的内容的片段P2至? +1,可以通过点对点技术从网络中下载,所以可以 获得较高的下载速度。可能的情形是,片段下载装置203还未下载完指定部分的所有片段,例如已经下 载完的仅有片段P2、片段p3(n > 2)。则文件组合装置204可以将片段P2、P3按顺序组合起 来,并添加上文件头ra,组成可识别的第二文件F2。该实施例的一个可能的应用场景是,用户对于第一文件Fl的内容有所了解,并且 只希望下载其中的精华部分。上述实施例中的第一文件的指定部分均是多个连续的片段。本领域技术人员应能 理解,第一文件Fl的指定部分也可以是不完全连续的片段,例如,指定部分可以包括片段 P2、P3 以及片段 P7、P8。(n+m 彡 8)。上述实施例中,每个片段包含一个tag,这仅是示例性而非限制性的。对于一个片 段包含多个tag的情形,本领域技术人员应能根据本文的描述自行推导得出。上述实施例中,第一文件和第二文件均是FLV格式的流媒体文件。本领域技术人 员应能理解,与FLV文件具有类似特点的其他格式的文件也可以适用于本发明。本发明中所称的各种装置,可以是软件功能模块,也可以是硬件模块,还可以是集成了软件功能的硬件模块。尽管在附图和前述的描述中详细阐明和描述了本发明,应认为该阐明和描述是说 明性的和示例性的,而不是限制性的;本发明不限于所上述实施方式。本技术领域的一般技术人员可以通过研究说明书、公开的内容及附图和所附的权 利要求书,理解和实施对披露的实施方式的其他改变。在权利要求中,措词“包括”不排除 其他的元素和步骤,并且措辞“一个”不排除复数。在发明的实际应用中,一个零件可能执 行权利要求中所引用的多个技术特征的功能。权利要求中的任何附图标记不应理解为对范 围的限制。
权利要求
一种点对点网络的网络实体中的文件下载方法,所述方法包括以下步骤B.确定一个第一文件的一个指定部分的片段;C.根据第一文件的第一匹配参数,从点对点网络中下载所述指定部分的片段;D.将所述指定部分的片段中的至少一部分组成一个可识别的第二文件。
2.根据权利要求1所述的方法,其特征在于,还包括步骤 A.获取第一文件的一个分割指示信息;所述步骤B中根据所述分割指示信息确定第一文件的所述指定部分的片段。
3.根据权利要求1所述的方法,其特征在于,所述第一匹配参数是采用散列函数为第 一文件确定的数字摘要值。
4.根据权利要求3所述的方法,其特征在于,所述散列函数为MD5函数或SHA1函数。
5.根据权利要求1所述的方法,其特征在于,所述步骤C还包括 根据第一文件的第二匹配参数,从服务器下载所述指定部分的片段。
6.根据权利要求5所述的方法,其特征在于,所述第二匹配参数是所述第一文件的统 一资源定位符。
7.根据权利要求1所述的方法,其特征在于,所述步骤D包括为所述指定部分的片段中的至少一部分加上一个文件头,从而组成所述第二文件。
8.根据权利要求1所述的方法,其特征在于,还包括步骤E.将所述第二文件提供给网络播放器。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述第一文件是一个流媒体 文件。
10.根据权利要求9所述的方法,其特征在于,所述第一文件是一个flv文件。
11.一种点对点网络的网络实体中的文件下载装置,包括第一确定装置,用于确定一个第一文件的一个指定部分的片段; 片段下载装置,用于根据第一文件的第一匹配参数,从点对点网络中下载所述指定部 分的片段;文件组合装置,将所述指定部分的片段中的至少一部分组成一个可识别的第二文件。
12.根据权利要求11所述的文件下载装置,其特征在于,还包括 分割知识信息获取装置,用于获取第一文件的一个分割指示信息;所述第一确定装置根据所述分割指示信息确定第一文件的所述指定部分的片段。
13.根据权利要求11所述的文件下载装置,其特征在于,所述第一匹配参数是采用散 列函数为第一文件确定的数字摘要值。
14.根据权利要求13所述的文件下载装置,其特征在于,所述散列函数为MD5函数或 SHA1函数。
15.根据权利要求11所述的文件下载装置,其特征在于,所述片段下载装置还用于根 据第一文件的第二匹配参数,从服务器下载所述指定部分的片段。
16.根据权利要求15所述的文件下载装置,其特征在于,所述第二匹配参数是所述第 一文件的统一资源定位符。
17.根据权利要求11所述的文件下载装置,其特征在于,所述文件组合装置还用于为 所述指定部分的片段中的至少一部分加上一个文件头,从而组成所述第二文件。
18.根据权利要求11所述的文件下载装置,其特征在于,还包括 第一提供装置,用于将所述第二文件提供给网络播放器。
19.根据权利要求11至18中任一项所述的文件下载装置,其特征在于,所述第一文件 是一个流媒体文件。
20.根据权利要求19所述的文件下载装置,其特征在于,所述第一文件是一个flv文件。
21.一种用户终端,其特征在于,包括权利要求11至20中任一项所述的文件下载装置。
22.—种计算机存储介质,其特征在于,该介质上存储了可被计算机读取并运行以执行 根据权利要求1至10中任一项所述的文件下载方法的计算机程序。
全文摘要
本发明提出了点对点网络中的文件下载方法及装置。根据本发明的第一方面,提供了一种点对点网络的网络实体中的文件下载方法,所述方法包括以下步骤B.确定一个第一文件的一个指定部分的片段;C.根据第一文件的第一匹配参数,从点对点网络中下载所述指定部分的片段;D.将所述指定部分的片段中的至少一部分组成一个可识别的第二文件。通过使用本发明中的方法、装置,可以在下载文件时获得较高的下载速度。
文档编号G06F17/30GK101945032SQ20091005452
公开日2011年1月12日 申请日期2009年7月7日 优先权日2009年7月7日
发明者徐玮, 朱巍, 王闻宇 申请人:上海聚力传媒技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1