发明内容
本发明的实施例涉及一种用于可记帐对等式文件传输或下载的系统。该系统包括服务器终端、多个客户/对等终端,并可选地包括跟踪器模块,所有这些部件在网络上进行通信。“终端”意味着能够在网络上进行通信的电子设备。跟踪器模块是与网络连接的基于软件和/或硬件的应用或程序,其作为服务器终端的代理,用于执行文件传输/下载系统的某种通信和其它功能。在操作中,服务器终端和/或跟踪器模块将数据文件的网络地址或其它位置传送到想要获得数据文件的第一客户终端。该数据文件被存储在第二客户终端(例如对等终端)上。基于所述位置,第一客户终端以对等式的方式从第二客户终端获得数据文件。所述客户终端之一或二者将记帐数据传送到服务器终端和/或跟踪器模块。记帐数据涉及数据文件在网络上从第二终端到第一终端的传输。例如,记帐数据可包括数据传输速率和在网络上传输的数据量。
在另一实施例中,数据文件被划分为多个片或段,其可被存储在不同的对等终端上。在操作中,服务器终端和/或跟踪器模块将数据文件的每个段的网络地址或其它位置传送到想要获得数据文件的第一客户终端。基于所述位置,第一客户终端以对等式的方式从其它客户终端获得数据文件的所有段。所有的对等终端将记帐数据传送到服务器终端和/或跟踪器模块。数据文件段根据对第一客户终端可用的散列(hash)信息而被验证并重新组合成数据文件。
在另一实施例中,记帐数据在获得数据文件(或数据文件段)之时的期间或随后被自动安全地生成和传送。“自动”意味着无需用户输入或启动,而“安全”意味着不存在用户干预或修改的可能性,包括网络上的可能的安全传输。出于此目的,客户终端可被提供有客户模块(例如,基于软件和/或硬件的应用或程序),其从客户终端协调(i)与服务器终端和/或跟踪器模块的通信,(ii)对等式文件传输,以及(iii)生成和传送记帐数据。
在另一实施例中,记帐数据被服务器终端用来例如基于数据传输速率和/或数据传输量来生成编制帐单(billing)数据。“编制帐单数据”意味着关于对用户或用户帐户所施加的货币或类似收费(例如贷记(credit)或借记)的信息/数据。典型地,从对等终端获得文件或文件部分的用户被收取用于文件传输的费用。传输文件的对等终端可被给予用于传送文件的款项。
在另一实施例中,需要在服务器上建立安全帐户,以便使用用于对等式文件传输的系统。“安全帐户”意味着下述帐户(例如,在一帐户名下组织的相关数据的分组),基于安全特征(诸如帐户标识符和口令保护)而限制对所述帐户的访问。在建立帐户之后,为获得数据文件,客户终端访问服务器上的帐户。随后,客户终端访问服务器上的数据库,用以从服务器获得信息文件。信息文件与数据文件相关联,并可包括涉及数据文件的信息。信息文件还可包括跟踪器模块的网络地址或其它位置,用以从跟踪器模块获得数据文件的位置,或者如果数据文件被分为存储于不同对等终端上的不同部分则获得数据文件部分的相应位置。典型地,跟踪器模块将具有关于数据文件的每片/部分的位置的最新信息。
在另一实施例中,由网络中的服务器或对等终端通过发布文件的网络地址和/或通过在跟踪器和/或服务器上提供信息文件而使将要下载的文件成为可用。数据文件被分为片/段,每个片/段具有相同大小或大致相同的大小,并且其在跟踪器模块或服务器上的信息文件包含数据文件的每个片/部分的网络位置。
在另一实施例中,正下载数据文件的对等终端将定期联系跟踪器模块,向跟踪器模块通知关于数据文件的哪些片/段已被下载以及可用于被其它对等终端下载的信息。
在另一实施例中,在请求数据文件的位置之后,客户终端从跟踪应用和/或服务器终端接收多个网络位置,例如,在对等列表中列出的位置。所述位置与具有可用于对等式传输的数据文件的系统中的对等终端相关联(或者,如果数据文件被划分为段,则其是具有数据文件段的对等终端的位置)。客户终端选择一个或多个对等终端以从中获得数据文件或数据文件段。
如应该理解的那样,系统使用对等式网络模型用于文件下载,以及使用基于帐户的客户-服务器网络模型用于管理文件下载和收集编制帐单信息。因此,所述系统在文件传输方面是高效的,同时保持了在网络带宽使用和编制帐单方面的准确性、安全性以及可记帐性。
具体实施方式
通过参考图2A和3-4B,可记帐的对等式文件下载系统30包括由网络36互连的服务器终端32和多个客户或对等终端34a-34c。对于一个客户终端34a在系统30上获得数据文件38,客户终端34a通过预先建立的帐户40a来访问服务器32。典型地,每个客户终端34a-34c将在服务器上具有帐户40a-40c,使用系统30需要建立帐户。客户终端34a获得关联于数据文件38的信息文件42a,信息文件42a是服务器上的多个信息文件42a-42d之一,对于可用于下载的每个数据文件存在一个信息文件。信息文件42a包含跟踪器模块46的网络地址或其它位置44。客户终端34a访问跟踪器模块46来获得在其上存储有数据文件38的一个或多个终端34b、34c的网络位置48a、48b(参见图3)。客户终端34a选择并联系这些终端之一34b来获得数据文件38,即,在被终端34a联系之后,终端34b将数据文件38在网络36上传送到终端34a。客户终端34a安全地将关于在网络36上传输的数据量的记帐数据50传送到跟踪器模块46,跟踪器模块46出于编制帐单的目的将其转发到服务器32。记帐数据50还可包含对所述文件已在客户终端34a处被获得并可用于由其它终端从终端34a进行下载的指示。如应该理解的那样,系统30使用对等式网络模型用于文件下载,以及使用基于帐户的客户-服务器网络模型用于管理文件下载和收集编制帐单信息。因此,所述系统在文件传输方面是高效的,同时保持了在网络带宽使用和编制帐单方面的准确性、安全性以及可记帐性。
通过参考图2B,系统30可用在某种对等式网络中所使用的方式来配置,在所述对等式网络中,用于下载的数据文件38被划分为多个部分或段39a-39d,每个部分或段具有大约相同的大小,它们被分布在多个对等终端34b-34d之间。这里,客户终端34a从服务器终端32获得关联于数据文件38的信息文件42。(典型地,对于可用于在系统上进行下载的每个数据文件将存在一个信息文件。)信息文件42包含跟踪器模块46的网络地址或其它位置44。客户终端34a访问跟踪器模块46来获得其上存储有数据文件段39a-39d的终端34b-34d的网络位置51。(可替换地,位置51可被包含在信息文件42中。)如果不止一个终端具有相同的数据文件段,则客户终端34a在可用选择之间进行选择。基于所述位置,客户终端34a以对等式的方式从终端34b-34d获得数据文件38的段39a-39d。一旦获得了所有数据文件段/部分,则数据文件段39a-39d根据对客户终端34a可用的散列信息/数据53而被验证并被重新组合成数据文件38。散列数据是用来验证数据文件段39a-39d的数据,用于将数据文件部分39a-39d重新组合成文件38,和/或用于出于快速和高效的数据库存储和检索的目的将数据文件部分39a-39d进行分类。散列数据53可从关联于文件38的信息文件42获得。一个或多个终端34a-34d还将典型地传送记帐数据50,其还可包括对于哪些数据文件部分39a-39d已结束下载并可被其它终端所下载的指示。
本发明的系统30适于与多种类型的通信网络36(包括独立网络和互连网络)一起实现。例如,网络36可包括:有线线路网络(诸如DSL网络)、公共交换电话网络(PSTN)、基于IP(因特网协议)的网络(诸如因特网或其它分组数据网络)、局域网(LAN)以及无线网络(诸如使用CDMA、GSM、IEEE 802.11x和/或UMTS通信等的那些网络)。终端32、34a-34d是能够在网络36上彼此通信的电子设备,并且可包括例如计算机终端、有线线路连接的通信设备(诸如传统的电话和增强的/具有多媒体的电话)、和/或无线单元(诸如移动电话、无线PDA、具有高速数据传输能力的无线设备,诸如遵从“3-G”或“4-G”标准的那些无线设备、装备有“WiFi”的计算机终端)等等。取决于网络36、用于在网络上通信的特定协议以及用于访问网络的终端类型,终端32、34a-34d以标准方式在网络36上彼此通信。在计算机终端和IP网络的情形中,一终端(例如客户终端)将数据请求发送到另一终端(例如服务器终端),且来自服务器终端的数据以分组的形式被传输回客户终端。例如,对于访问因特网上的站点的情形,用户可将网站的IP地址或URI(统一资源标识符)/URL(统一资源定位符)输入到在用户的计算机终端上运行的web浏览器软件程序,例如Microsoft Internet ExplorerTM。URL是遵循标准化格式的字符串,其通过其位置来引用因特网上的资源(诸如网站的主页),并且其可指定用来进行通信的协议、与之通信的主机/服务器、所连接的服务器上的网络通信端口以及到服务器上的资源的路径(例如,其文件名)。一旦URL被输入,服务器终端就会被联系,并且如果数据可用,则服务器终端根据特定URL将所请求的数据传送回用户终端。例如,如果URL对应于网站主页,则存储于服务器上的对应于该主页的数据(典型地为HTML格式)被传送回用户终端。数据被web浏览器翻译/解码,以在用户终端的显示器上重新创建图形形式的网页。
服务器终端32是具有用于在网络上进行通信的通信装置(例如一个或多个标准的网络接口卡/模块、调制解调器等)的标准的服务器配置的终端(或多个终端的分组)。服务器终端32还包括海量存储装置或其它存储器,其可被组织为用于存储帐户40a-40c和信息文件42a-42d的一个或多个数据库52。典型地,服务器终端32还将包括接口54,用于用户(从客户终端34a-34d)访问服务器32以建立帐户等。例如,接口54可以是以本领域公知的标准方式(例如HTML代码)实现的因特网网站。
为在服务器上建立用于对等式文件传输的帐户40a,在客户终端34a上的用户访问接口54。例如,如果接口54是因特网网站等,则用户将启动客户终端34a上的web浏览器程序,并将接口54的URL输入web浏览器。在访问了接口54之后,用户被提供有诸如“建立新帐户”和“访问现有帐户”的选项。用户还被提供有关于系统30的信息,包括编制帐单选项和费率。如果选择了“建立新帐户”选项,则向用户提示输入个人信息以及建立帐户所需的任何其它信息,例如,名字、编制帐单地址、电子邮件地址、付款手段(诸如银行帐户借记或信用卡)以及安全信息(诸如用户名和口令)。此信息作为一个或多个相关联的文件以标准方式被存储在数据库52中,作为用户帐户40a。为了随后访问帐户40a,用户访问接口54,选择“访问现有帐户”功能(等等),并输入帐户和/或安全信息。
服务器终端32还包括存储于数据库52中的信息文件42a-42d,或者所述文件还可被服务器终端32访问。信息文件42a-42d分别对应于可用于在系统30上进行下载/传输的不同数据文件38。(换句话说,每个数据文件38具有存储于服务器32上的相应信息文件42a-42d。)每个信息文件42a-42d包括跟踪器模块46的网络地址或其它位置44,例如,用于在网络36上访问跟踪器模块的跟踪器模块的URL或IP地址。如以下所进一步描述的,跟踪器模块46实质上可以是通用的,例如,跟踪器模块与不止一个数据文件38一起使用,或者它可以被独立地专用于或分配给数据文件38。信息文件42a-42d还包括关于其相应的相关联数据文件38的信息56,诸如文件名、文件类型、文件大小、主题和内容摘要,以及在适当的情况下包括编制帐单信息,诸如用于获得文件的费率。例如,在歌曲或音乐文件的情形中,文件信息56可包括文件名、歌曲名、通常与该歌曲相关联的曲集、演员、音乐流派、文件大小、文件类型(例如MP3)以及用于下载该音乐文件的价钱。信息文件还可包含下述散列数据,所述散列数据与数据文件38相关,或者如果数据文件被划分为用于对等式传输的段,则所述散列数据与每个数据文件段39a-39d相关。
作为下载数据文件38的初始步骤,用户指引客户终端34a通过接口54访问服务器32,如在图3中的步骤100,选择“访问现有帐户”选项等,并输入访问用户帐户40a所需的信息。随后,用户选择用于选择和/或下载数据文件的选项。选择数据文件38可包括使用关键字等来搜索数据文件,搜索文件类别或组,输入文件名或其它标识符(如果已知的话),或者通过可用数据文件的列表或选择进行浏览,所述列表或选择可能被细分为类别、类型或流派(genre)。同样地,接口54可被提供有出于此目的的功能(诸如标准网站搜索功能)、用于浏览的各种经链接的网页、一个或多个索引等。一旦选择了特定的数据文件38,用户就选择“下载”功能等,并可被询问认可用于下载该文件的编制帐单费率或费用。接着,在步骤102,关联于所选择的数据文件38的信息文件42a在网络36上从服务器终端32被传输到客户终端34a。
信息文件42a被用于与信息文件42a中标识出的跟踪器模块46进行联系和通信的目的。出于此目的,客户终端34a将典型地被提供有客户模块58。客户模块58是硬件、硬件/软件、或在客户终端34a上运行的软件应用/程序,并被配置为以标准方式在网络36上进行通信,例如,客户模块58访问客户终端的网络通信装置(网络接口卡、调制解调器等),以在网络36上发送和接收消息和其它数据。客户模块58可以是在客户终端用户接口或操作系统的“后台”中运行的类似于实用程序(utility-like)的软件程序,和/或它可提供用户可访问的功能,诸如显示下载状态、下载历史等。它还可作为用于访问服务器终端32的基于客户终端的接口而运行。典型地,当用户首先建立帐户时,将从服务器32下载客户模块58。接着客户模块58以标准方式被安装在客户终端上。下载和安装客户模块可能需要使用系统30。可替换地,客户模块可被“构建于”客户终端之中。例如,在无线单元的情形中,客户模块可作为无线单元上的标准可用功能而被提供,同时由无线单元的无线服务器供应者或指定第三方来运行系统30。
一旦在客户终端34a接收信息文件42a,在步骤104,客户模块58就在信息文件42a中所提供的跟踪器模块地址/位置44处启动与跟踪器模块46的通信。具体而言,客户模块58将数据文件标识符60传送到跟踪器模块46,并且跟踪器模块通过终端所具有的数据文件38或数据文件段39a-39d的对等列表来进行响应。数据文件标识符60唯一地标识所选择的数据文件38,并将典型地作为信息文件42a中的数据文件信息56的一部分。例如,数据文件标识符可以是数据文件的文件名、数据文件的序列号或索引号等。在某些系统中,客户终端34a还可将联系信息62传送到跟踪器模块。客户终端联系信息62包括跟踪器模块46与客户终端34a通信所需的任何信息,诸如客户终端的网络地址(URL或IP地址)和/或客户终端正在监听的端口。
跟踪器模块46是网络连接的基于软件和/或硬件的程序/应用,其作为服务器终端的代理,用于执行系统30的某种通信和其它功能。例如,跟踪器模块46可被提供用来使用于对等式数据文件传输的对等式联系更便利,用来出于编制帐单目的而收集记帐数据50,和/或用来跟踪哪些终端已在系统上获得哪些数据文件(或数据文件段39a-39d)。跟踪器模块46实现了在HTTP之上分层的简单通信协议(即,被实现为与网络上适当位置处的通信协议(诸如HTTP)一同运行),其中客户终端发送文件标识符60,而且跟踪器模块通过包含具有所选择数据文件38(或根据具体情况为所选择数据文件38的段39a-39d)的客户/对等终端34b、34c的网络位置/地址48a、48b的对等列表64来进行响应。在对等列表64中标识的终端可能之前已在系统30上下载了(或正处在下载过程中)所选择的数据文件38(或数据文件段),同时服务器终端32和/或跟踪器模块46已跟踪到关于这种情况的信息,用于随后由其它客户终端启动的对等式下载。(换句话说,当客户终端在系统上下载文件或文件段时,服务器可被配置为注意到该客户终端现在具有可用于对等式下载的文件或文件段,包括存储该客户终端的网络地址用于稍后提供给想要获得所述数据文件或文件段的客户终端。)可替换地,数据文件可由所标识的对等终端34b、34c之一通过该已标识的对等终端所产生,所述已标识的对等终端已向服务器终端32通知(例如通过客户模块和/或通过访问接口54)数据文件可用于对等式传输。在此情形中,可在服务器终端32的适当位置处采取措施来保卫受版权保护的文件。
如上所述,可存在用于所有对等式事务的一个跟踪器模块/应用46,或者,由于事务量可能需要不止一个跟踪器模块,则可存在多个跟踪器模块46,其在需要时被分配给各事务。可替换地,可存在关联于每个数据文件38的跟踪器模块46,同时所述跟踪器模块被专用于涉及该数据文件的事务。在这种情形中,客户终端将不必将文件标识符60传送到跟踪器模块。取而代之的是,用于下载的数据文件将由已联系过特定跟踪器模块的客户终端所暗指。跟踪器模块46可被存储在服务器终端32或另一网络连接的终端之上。
当跟踪器模块46从客户终端34a接收所选择的数据文件38和/或客户模块联系信息62时,在步骤106,跟踪器模块46通过将对等列表64发送到客户终端34a而进行响应。如上所述,对等列表64包含具有所选择数据文件38或文件段39a-39d的一个或多个对等终端的网络地址/位置48a、48b的列表。这些终端可以是在系统30上具有所选择数据文件38或文件段39a-39d的所有终端或所述终端的某个子集,或者仅是当前在与网络进行有效通信的那些终端。随后,(在客户终端34a上运行的)客户模块58如果下载整个文件38则选择所列出的对等终端之一,或者如果下载多个文件段39a-39d则选择一个或多个对等终端。所述选择可以简单地为在对等列表中列出的第一个有效终端,或者为在网络36上离客户终端34a“最近”的有效对等终端。其它选择标准也是可能的。一旦已选择了对等终端(例如对等终端34b)就开始对等式文件传输。具体而言,在步骤108,客户模块58在网络36上在对等列表64中提供的对等终端34b的位置/地址48a处启动与所选择的对等终端34b的通信。例如,这可包括将对等式文件请求消息65传送到对等终端34b。响应于此,在步骤110,在所选择对等终端34b上适当位置的客户模块使得存储在对等终端34b上的所选择数据文件38(或数据文件段39a)以标准方式被传送到客户终端34a。在客户终端34a处接收数据文件38(或数据文件段39a),并将其存储用于检索和随后的使用。如果数据文件38作为多个数据文件段39a-39d而被获得,则此过程对其它对等终端重复,直到获得所有的段。
在文件或文件段传输期间或在此之后,并且至少定期地,在所选择的对等终端34b和客户终端34a上适当位置处的一个或全部两个客户模块58将记帐数据50传输到跟踪器模块46(步骤112)。记帐数据50可包括关于所传输文件38的数据传输速率的数据68、关于所传输的数据量的数据70、以及标识客户终端34a、对等终端34b的数据72a、72b、和/或关联于这些终端的帐户40a、40b。典型地,传输速率将被用于统计目的,而数据量将出于编制帐单目的被用于流量记录,例如,编制帐单可以基于与传输速率相对的所传输的数据量。可替换地,用户可选择突发(burst)传输速率,其将以较高费率被编制帐单,或者如果编制帐单是以每个文件为基础的,则记帐数据可简单地指示出文件已被成功地传输。记帐数据可在上载和下载量两方面被生成和/或使用,后者指在请求客户终端34a处接收的数据,前者指由对等终端34b传输的数据。上载量可被用作为对等终端的编制帐单贷记的基础,例如,对等终端可能实际上作为系统30中的数据源而被支付或贷记小量金额,从而提供对对等终端的用户的激励,以同意随后到其它对等终端的文件传输。典型地,记帐数据50将以安全方式(例如对称加密)被传送到跟踪器模块和/或服务器终端,用来确保记帐数据不会被客户终端34a的用户所修改。如应该理解的那样,以此方式,生成和传送记帐数据被自动执行,而不存在用户干涉的可能性,同时,使用客户模块(以及分类化/安全生成记帐数据)是使用用于对等式文件传输的系统的先决条件。此外,因为每个对等用户需要建立安全帐户以及使用客户模块,所以安全/可信任的对等式网络被建立,其中确保了用于对等式数据传输的费用的收集。在客户终端34a从多个终端34b-34d获得数据文件段39a-39d的情形中,每个终端34a-34d都可生成记帐数据50。
如果记帐数据50被传送到跟踪器模块46,则在步骤114,跟踪器模块将数据50转发到服务器终端32。服务器终端32使用记帐数据50来生成编制帐单数据66a-66c。“编制帐单数据”意味着关于对用户或用户帐户所施加的货币或类似收费(例如贷记或借记)的信息/数据。因此,编制帐单数据66a-66c可以基于数据传输速率68和/或数据传输量70,并可包括例如对记帐数据50中所标识的或可从中确定的帐户的货币收费。例如,如果编制帐单费率基于数据量70,则帐户40a可被收费如下的美元数额:
$收费=(数据量)×($/单位数据)
($charge=(data volume)×($/unit data))
此信息作为编制帐单数据66a-66c被存储在用户相应的帐户40a-40c中,同时由系统30以标准方式根据用户协定和帐户类型(例如直接银行帐户借记、信用卡收费等)来获得资金。由系统30收集的资金可被用来支付版权许可费,以及支付网络带宽费给网络服务供应者。
如上所述,每次当对等终端获得特定数据文件或数据文件段时,该终端的网络地址或其它位置就被跟踪器模块46和/或服务器终端32关联于数据文件或数据文件段而被跟踪。换句话说,跟踪器模块和/或服务器存储将对等终端的地址/位置关联于数据文件(或数据文件的特定片/段)的数据(例如,存储于数据库或其它存储装置中),作为对对等终端具有可用于对等式传输的数据文件的指示。当另一对等终端稍后请求该数据文件或文件段时,与所述数据文件相关地搜索或另外访问所述数据库或其它存储装置,以编译出该数据文件的相关对等列表64。对等列表中包括的内容可取决于终端是否与网络进行通信,并且同样地,跟踪器模块和/或服务器终端可执行对此状况的测试。可替换地,如果一个对等终端被发现不可用于文件传输,则客户终端可选择对等列表上的可替换对等终端。
从客户终端34a和/或客户模块58的视角看来,对于传输完整文件38的情形,在图4A中概述了系统30的一实施例的运行。在步骤120,客户终端从跟踪器模块/应用46或服务器终端32接收所选择数据文件38的位置。所述位置可以是存储了数据文件的对等终端34b的网络地址或其它位置,或者它可以是数据文件本身的地址或其它位置,例如在对等终端34b上的子地址或位置。在步骤122,客户终端34a在网络36上从对等终端34b获得数据文件38。在步骤124,客户终端34a将记帐数据50传送到跟踪器模块/应用46和/或服务器终端32。如上所述,记帐数据50涉及数据文件在网络上从对等终端到客户终端的传输,例如,数据传输速率和/或数据传输量。典型地,在获得数据文件之时期间或在此之后,记帐数据将被自动安全地生成及传送。换句话说,在获得数据文件之时,客户模块自动地(例如无需用户输入)和安全地(例如不存在用户干涉的可能性)生成记帐数据,并自动和安全地将其传送(例如,诸如加密的安全传送)到跟踪器模块或服务器。
对于多个数据文件段39a-39d的情形,客户终端34a从跟踪器模块/应用46或服务器终端32接收所选择数据文件38的段39a-39d的位置。例如,所述位置可以是存储了数据文件段39a-39d的对等终端34b-34d的网络地址或其它位置。客户终端34a在网络36上从对等终端34b-34d获得数据文件段39a-39d。终端34a-34d将记帐数据50传送到跟踪器模块/应用46和/或服务器终端32。
从跟踪器模块46或服务器终端32的视角看来,在图4B中概述了系统30的一实施例的运行。在步骤126,服务器和/或跟踪器模块在有来自客户终端34a的请求之时将所选择数据文件38的网络地址或其它位置传送到客户终端34a。数据文件38被存储在对等终端34b上。稍后,在步骤128,服务器终端和/或跟踪器模块从客户终端34a和对等终端34b中的任一者或二者接收记帐数据50。记帐数据50涉及数据文件在网络上从对等终端到客户终端的传输,例如,数据传输速率和/或数据传输量。在数据文件段39a-39d的情形中,服务器和/或跟踪器模块在有来自客户终端34a的请求之时将数据文件段39a-39d的网络地址或其它位置传送到客户终端34a。数据文件段39a-39d被存储在对等终端34b-34d上。典型地,服务器终端和/或跟踪器模块将从所有的客户终端34a-34d接收记帐数据50。
系统30可被提供有加密和/或反拷贝措施,从而数据文件38和/或文件段仅可通过系统30被传输到它处。例如,系统可被配置使得每次当数据文件被拷贝或传输时,文件或者被自动地自我加密或者被客户模块自动加密,同时客户模块58具有用于解密文件来使用的功能74。因此,将防止用户以可用形式将数据文件38传输到系统30之外,这可能导致版权侵犯、侵害许可合同等。
如应该理解的那样,数据文件38可源自服务器终端32。例如,可出于版权许可目的而清除音乐或其它数据文件38,并将这将其存储在服务器终端32上。当存储在服务器上的文件(或文件段)第一次被下载时,文件或文件段将以类似于上述方式从服务器终端被传输到下载的客户终端,例如,服务器终端实际上将作为对等终端运行。可替换地,代替在服务器终端32自身上存储文件并从其自身传输文件,可以存在专用的“对等”服务器76,其被配置为以类似于真正的对等终端34b、34c的方式来运行,用于在第一实例中存储和下载数据文件78。对等服务器76的网络地址或其它位置将在对等列表等中提供,如上面所述的那样。在数据文件38或数据文件段被从服务器32或对等服务器76下载之后,服务器32或对等服务器76将被排除在随后的对等列表之外,同时数据文件38改为对等式地进行传输。可替换地,在没有可用于下载特定数据文件或文件段的对等终端的情形中,服务器和/或对等服务器可作为“备份”。
尽管跟踪器模块46使得系统30中的通信功能的高效划分更便利,但是系统30可取而代之地被配置用于单独与服务器终端或终端32一同运行,而不会背离本发明的精神和范围。因此,服务器终端可被配置用于执行上述跟踪器模块的功能,同时客户/对等终端在除了对等式文件传输的所有实例中直接与服务器终端进行通信。
如应该理解的那样,尽管数据文件段39a-39d已被表征为数据文件38的部分或段,但每个数据文件部分本身也是数据文件,例如对数据的分组。这样,数据文件部分可被表征为数据文件,而数据文件38是由多个较小的数据文件或数据文件段所组成的较大的、合成数据文件。
由于可在上述可记帐的对等式文件下载系统中进行某些改变,而不会背离这里所包括的本发明的精神和范围,因此在附图中所示出的或上述说明的所有主题将被解释为仅仅是这里的发明性概念的示例,而不应当被解释为对本发明的限制。