CN100588172C - 一种实现网络预订存储的系统和方法 - Google Patents

一种实现网络预订存储的系统和方法 Download PDF

Info

Publication number
CN100588172C
CN100588172C CN 200710097227 CN200710097227A CN100588172C CN 100588172 C CN100588172 C CN 100588172C CN 200710097227 CN200710097227 CN 200710097227 CN 200710097227 A CN200710097227 A CN 200710097227A CN 100588172 C CN100588172 C CN 100588172C
Authority
CN
China
Prior art keywords
download
data resource
user
server
sharing users
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
CN 200710097227
Other languages
English (en)
Other versions
CN101072166A (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.)
Shenzhen Tencent Computer Systems Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN 200710097227 priority Critical patent/CN100588172C/zh
Publication of CN101072166A publication Critical patent/CN101072166A/zh
Priority to PCT/CN2008/070167 priority patent/WO2008131653A1/zh
Application granted granted Critical
Publication of CN100588172C publication Critical patent/CN100588172C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • 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
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities

Abstract

本发明公开了一种实现网络预订存储的系统和方法。本发明的系统,包括管理服务器、预订服务器、存储服务器,所述管理服务器,用于将从网络中获得的共享用户信息发送至预订服务器;所述预订服务器,用于接收来自下载用户的预订事件,当所述预订事件所对应的数据资源处于可下载状态时,将获得的与所述数据资源相对应的共享用户信息发送至存储服务器;所述存储服务器,用于利用所述共享用户信息与共享用户建立连接,下载所述数据资源。本发明的方法和系统解决了共享用户在网络中而下载用户不在网络中时,下载用户无法从共享用户处获得所需的数据资源的问题,较大地提高网络中各个用户之间的数据资源传递效率,方便网络中用户下载数据资源。

Description

一种实现网络预订存储的系统和方法
技术领域
本发明涉及计算机技术领域,特别是指一种实现网络预订存储的系统和方法。
背景技术
随着计算机网络技术的发展,网络中的资源共享变得更加快捷、方便。目前采用的最多的资源共享方式是点到点(P2P,Peer-to-Peer)技术,P2P技术不同于采用客户/服务器(Client/Server)模式的共享技术,但有相同之处,可作为客户/服务器技术的一种补充。
在采用P2P技术的互联网中,用户可通过自己计算机中的P2P软件共享网络中所有安装P2P软件的计算机所拥有的部分资源,这些资源包括处理资源、存储资源、网络连接资源等,这些资源借助于网络,能被网络中其它计算机直接访问而无需经过中间实体。在共享的过程中,网络中的计算机既可以是资源提供者,即服务器(Server),又可以是资源获取者,即客户端(Client)。因此,从共享的角度来看,网络中安装有P2P软件的计算机之间是一种对等的关系,计算机之间可以直接进行数据传输,而不再需要通过服务器中转所要共享的存储资源,从而能够降低网络中服务器的负载。
由于网络中大量用户的计算机采用P2P技术,使用户之间的文件共享非常容易,并且在网络流量中占据着大部分带宽。根据CacheLogic公司的统计,在2006年1月,BT(Bit torrent)、电驴eDonkey等采用P2P技术的共享下载软件所产生的网络流量,已经占据整个互联网71%的带宽。借助P2P技术的软件,用户可以通过互联网轻松地获取分布在全球各个计算机中的共享文件,尤其是热门文件,通过P2P技术能够在互联网中非常迅速地传播扩散。
网络中采用P2P技术时,其网络逻辑结构主要分为集中式/半分布式结构和全分布式结构。其中,在采用P2P技术互联网中,普遍采用集中式/半分布式结构,这类结构的网络中设置有管理服务器或超级节点作为集中管理节点,负责管理网络中的共享资源,例如共享文件的管理和维护,具体包括管理文件索引信息、文件网络链接定位信息、用户在线状态信息等。参见图1,以现有技术中的管理服务器为例说明文件资源共享的过程,在图1中,用户A是文件资源的下载者,用户B是文件资源的提供者。
步骤S101:用户A向管理服务器发送查询请求;
用户A使用自己的计算机通过管理服务器查询所需要的文件资源;
步骤S102:管理服务器将用户B的信息发送给用户A;
管理服务器接收到用户A的查询请求后,在自身的服务器上查询后,查询到用户B拥有用户A所需的文件资源,将用户B的信息发送给用户A;
步骤S103:用户A与用户B之间进行数据传输。
用户A收到用户B的信息后,与用户B建立P2P连接,用户A从用户B处接收所需要的文件资源。
在上述采用P2P技术的网络中,由于网络中的各个用户的计算机接入、离开网络具有很强的动态特性。因此,当用户B的计算机离开网络,或用户A的计算机由于自身原因退出网络,不能以足够的时间在网络中获取用户B全部的文件资源时,都会造成用户A只获得到用户B的部分文件资源,剩余的文件资源只能等到下次与用户B同时接入到网络中时获得。但是,用户A与用户B的计算机是否能同时接入到网络中是不确定的,从而导致当用户B的计算机接入网络中,而此前请求下载的用户A已经退出网络,无法将文件资源共享给用户A。
由此可见,虽然网络的文件资源是丰富的,但存在用户有下载请求而无法获得相应资源的问题。
发明内容
有鉴于此,本发明在于提供一种实现网络预订存储的系统和方法,以解决上述用户有下载请求,但无法获得相应资源的问题。
为解决上述问题,本发明提供一种实现网络预订存储的系统,包括管理服务器、预订服务器、存储服务器,
所述管理服务器,用于将从网络中获得的共享用户信息发送至预订服务器;所述共享用户为网络中拥有与预订事件所对应数据资源的用户;
所述预订服务器,用于接收来自下载用户的预订事件,当所述预订事件所对应的数据资源处于可下载状态时,将获得的与所述数据资源相对应的共享用户信息发送至存储服务器;
所述存储服务器,用于在无需下载用户与网络保持连接的情况下,利用所述共享用户信息与共享用户建立连接,下载所述数据资源,并在所述数据资源全部下载完毕后,通过即时通信消息通知下载用户,以便下载用户连接到网络下载所述数据资源。
其中,
所述预订服务器,包括:接收单元,判断单元,发送单元,
所述接收单元,用于接收来自下载用户的预订事件;
所述判断单元,用于当得知所述预订事件所对应的数据资源处于可下载状态时,通知所述发送单元;
所述发送单元,用于将获得的与所述数据资源相对应的共享用户信息发送至存储服务器。
其中,所述预订服务器,用于接收到来自下载用户的预订消息后,将预订消息中的预订事件发送至管理服务器;
所述管理服务器,用于将网络中拥有与所述预订事件相应数据资源的所述共享用户信息发送至预订服务器。
其中,所述预订服务器,用于接收到来自下载用户的预订消息后,将预订消息中的预订事件保存在预订数据库中,收到来自管理服务器的所述共享用户信息后,利用所述共享用户信息判断所述共享用户拥有的所述数据资源是否对应于所述预订数据库中的预订事件,如果是,将所述共享用户信息发送至存储服务器;
所述存储服务器,在将所述数据资源全部下载完成后,通知所述预订服务器删除所述预订事件。
其中,所述预订服务器还用于,接收到来自下载用户的预订消息后,先判断预订消息中的预订事件所对应的数据资源是否在存储服务器中,如果在,则将所述数据资源发送至下载用户。
其中,所述管理服务器,还用于所述下载用户从所述共享用户下载所述数据资源时中断后,记录中断后所述下载用户的下载进度;
所述管理服务器在从网络中获得所述共享用户信息发送至预订服务器的同时,发送所述下载进度信息;
所述预订服务器,还用于将获得的共享用户信息发送至存储服务器的同时,发送所述下载进度信息;
所述存储服务器,在利用所述共享用户信息与共享用户建立连接后,利用所述进度信息下载所述数据资源中的剩余部分。
本发明还提供一种实现网络预订存储的方法,
接收并存储来自下载用户的预订事件;
步骤A:预订服务器判断所述预订事件相对应的数据资源是否处于可下载状态,如果不是,则返回本步骤,直至判断所述数据资源处于可下载状态后,将从管理服务器获取的与所述数据资源相对应的共享用户信息发送至存储服务器,存储服务器在无需下载用户与网络保持连接的情况下,利用共享用户信息与共享用户建立连接下载并存储所述数据资源,并在所述数据资源全部下载完毕后,通过即时通信消息通知下载用户,以便下载用户连接到网络下载所述数据资源;
其中,所述共享用户为网络中拥有与预订事件所对应数据资源的用户。
其中,步骤A中所述判断是否可以下载所述预订事件相对应的数据资源为:
判断网络中是否存在拥有所述数据资源相对应的共享用户,如果存在,则处于可下载状态,如果不存在,则处于不可下载状态。
其中,步骤A中所述判断是否可以下载所述预订事件相对应的数据资源为:
利用共享用户信息判断共享用户所拥有的数据资源是否与步骤A中接收到的预订事件相对应,如果相对应,则处于可下载状态,如果不相对应,则处于不可下载状态。
其中,在步骤A之后,该方法进一步包括:
发送所述预订事件的下载用户一方从所述存储服务器下载所述数据资源。
其中,该方法进一步包括:
步骤A中存储服务器下载并存储所述数据资源的过程中,追踪并记录下载进度信息。
其中,步骤A中存储服务器下载并存储所述数据资源的过程中,如果出现中断,则重新执行步骤A;
在所述重新执行步骤A的过程中,下载并存储所述数据资源为:
利用所记录的下载进度信息,对所述数据资源中未下载的部分进行下载,直至将所述数据资源全部下载完成后,将与所述数据资源相对应的预订事件从预订服务器中删除。
其中,在下载用户发起下载请求时,该方法进一步包括:
判断存储服务器中是否保存有与该下载请求相对应的所述数据资源,如果是,则直接从该存储服务器中下载对应的所述数据资源。
本发明的实施例在下载用户离开网络后,服务器通过预订事件从共享用户处获得数据资源并保存,当获得全部的数据资源后,通知下载用户,下载用户从服务器中获得所需的数据资源。本发明的实施例解决了共享用户在网络中而下载用户不在网络中时,下载用户无法从共享用户处获得所需的数据资源的问题,较大地提高网络中各个用户之间的数据资源传递效率,为网络中用户下载数据资源带来了方便。特别是对于下载用户在获得数据资源的过程中,如果与共享用户的连接出现中断,则服务器为下载用户获得在中断后未获得的数据资源,并在下载完成后,通知下载用户获得数据资源,为网络中下载用户获得数据资源带来方便。
附图说明
图1是现有技术中文件资源共享的流程图;
图2是本发明系统实施例一的结构图;
图3是本发明实施例二的流程图;
图4是本发明实施例三的流程图
图5是本发明实施例四的流程图;
图6是本发明实施例五的流程图
图7是本发明实施例六的结构图。
具体实施方式
为详细说明本发明解决现有技术中所存在的问题,下面结合附图详细说明本发明的各个实施例。
参见图2,首先说明本发明系统的实施例一。在此实施例中,系统包括管理服务器、预订服务器和存储服务器,
所述管理服务器,用于将从网络中获得的共享用户信息发送至预订服务器;
所述预订服务器,用于接收来自下载用户的预订事件,当所述预订事件所对应的数据资源处于可下载状态时,将获得的与所述数据资源相对应的共享用户信息发送至存储服务器;
所述存储服务器,用于利用所述共享用户信息与共享用户建立连接,下载所述数据资源。
其中,下载用户是指需要从网络中下载数据资源的用户,共享用户是指网络中拥有与预订事件所对应数据资源的用户,而共享用户信息是指这些共享用户的地址链接信息,如IP地址、端口等。数据资源为各类形式的文件等。
在该实施例中,如果用户A作为下载用户,则用户A可向预订服务器发送预订消息,预订服务器解析接收到预订消息,解析出预订消息中的预订事件,预订事件中包括有多个描述属性。描述属性包括文件名关键词、文件类型、预订事件有效期、文件大小限制、匹配下载的文件数目上限、文件内容哈希值等。
解析出的预订事件后,预订服务器可通过预订事件中的描述属性先向存储服务器中查询,查询存储服务器中是否已经存有与解析出的预订事件相对应的数据资源,如果存储服务器中之前为其它用户下载并存储有这类数据资源,则存储服务器与用户A建立连接,用户A获得所需的数据资源。
当然,用户A向预订服务器发送预订消息的同时,还可同时向管理服务器发送相同的预订消息。管理服务器将解析预订消息,并按照解析出的预订事件查找网络中的共享用户,如果网络中存在有共享用户,且共享用户为用户B和用户C,则管理服务器将共享用户B、共享用户C的信息发送至用户A,用户A与用户B、用户C之间建立连接,用户A获得数据资源。如果此时用户A还与存储服务器建立连接,则用户A可同时从用户B、用户C及存储服务器处获得数据资源,以便能够用最少的时间来获得所需的数据资源。
当存储服务器中没有用户A所要获得的数据资源时,管理服务器会将用户B和用户C的用户信息发送给用户A和预订服务器。此时,用户A既可通过用户信息直接与用户B、用户C建立连接,获得数据资源;用户A也可向预订服务器发送命令,由预订服务器通知存储服务器,由存储服务器通过用户B、用户C建立连接,获得用户A所需要的数据资源。存储服务器获得并存储用户A所需要的全部数据资源后,以邮件、短信或其它形式的即时通信消息通知用户A进行下载。
由于用户B、用户C作为数据资源的提供者,不可能保证实时在网络中,如果用户B、用户C没有在网络中,管理服务器则无法查询出用户B、用户C的用户信息,也就无法向预订服务器和用户A提供共享用户信息,用户A没有共享用户信息,也会离开网络。管理服务器会向预订服务器发送没有共享用户信息的通知,预订服务器接收到该通知后,会将解析出的预订事件存储到预订数据库中。如果用户B、用户C加入到网络中后,管理服务器发现后会将用户B、用户C的用户信息发送至预订服务器,预订服务器接收到用户B、用户C的用户信息后,判断所述预订数据库中是否有与用户信息相对应的预订事件,由于预订数据库中已经存有用户A的预订事件,则预订服务器会触发存储服务器执行操作,存储服务器会按照用户B、用户C的用户信息建立连接,获得用户A所需要的数据资源。存储服务器获得并存储用户A所需要的全部数据资源后,以邮件、短信或其它形式的及时通信消息通知用户A进行下载。
在上述的实施例中,当共享用户不存在网络中时,下载用户可将获得数据资源的操作由网络中的存储服务器来完成;当共享用户存在于网络中时,下载用户既可离开网络,由网络中的服务器完成获得数据资源的操作。还可以由下载用户直接通过共享用户来获得数据资源,如前面所描述的用户A接收管理服务器发送的用户B、用户C的用户信息,通过用户信息与用户B、用户C建立连接,获得所需要的数据资源。
在用户A通过用户B、用户C获得数据资源的过程中,管理服务器会将用户A获得数据资源的进度信息实时发送至预订服务器,预订服务器会将进度信息存储到预订数据库中。如果用户A与用户B、用户C之间的数据资源的传输过程出现中断,例如用户A离开网络。此时,预订服务器会通过进度信息没有变化来发现这种情况,而预订服务器会通知存储服务器继续获得用户A未获得的剩余数据资源,存储服务器会通过预订服务器中存储的来自管理服务器的用户信息,与用户B、用户C建立连接,并按照预订数据库中的进度信息获得用户A未获得的剩余数据资源。存储服务器获得并存储用户A所需要的全部数据资源后,以邮件、短信或其它形式的即时通信消息通知用户A进行下载。
上述系统实施例中的预订服务器,在运行预订数据库时可以是静态存储,也可以动态加载,相比而言,动态加载的访问与检索速度较快,但需要预订服务器具有较多的系统内存。对于已经实现完成的预订事件,可以将其静态存储,从而减少内存占用。相对而言,如果预订规模较小,则预订服务器可以嵌入管理服务器设备,否则应单独架设网络设备。需要注意的是,如果作为独立设备运行,为了不影响管理服务器的正常网络操作,将预订服务器和管理服务器连接在同一个网段内,即连接在同一个网路交换机中,采取类似于网络入侵检测系统的并联架构,预订服务器在网络交换机端口上旁路侦听管理服务器上的用户数据。
上述系统实施例中的存储服务器,可根据每个用户的服务等级分配不同容量的存储空间并设定阈值,处理用户预订所下载的文件大小不能超出此容量阈值。存储服务器还可对其存储的文件做索引,以便快速查找。当两个用户的预订事件相同,即所预订的内容有重复,则存储服务器端可以直接在用户存储空间内复制文件或直接对重复需求的文件建立对象引用,以便及时向用户发送其所需要的数据资源。存储服务器可以是单个或集群存储设备,也可以采取分布式存储的策略。对于分布式存储的情况,系统支持同时指派多个存储服务器从文件提供者下载文件的不同片段,从而能够利用多源文件传输协议(MFTP)实现快速上传和下载。
上面所描述的系统实施例详细说明系统中各个服务器的关系及功能,下面详细描述实现预订存储流程的实施例。首先描述实施例二,参见图3,
步骤S301:下载用户发送预订消息;
为便于传输,下载用户将预订事件以预订消息的形式同时发送至预订服务器和管理服务器。
步骤S302:预订服务器解析所述预订消息;
预订服务器从预订消息中解析出预订事件并保存在预订数据库中。在预订数据库中,记录有所有下载用户的用户信息和该下载用户的所预订的数据资源的下载记录信息,如是否已经全部下载到存储服务器中,已下载的进度信息等。
步骤S303:预订服务器判断存储服务器中是否存在相应的数据资源;
预订服务器判断之前是否存在其它下载用户也预订相同的数据资源,该数据资源是否被存储服务器全部下载且并未被取走,如果是,则执行步骤S304,如果否,则结束;
步骤S304:预订服务器通知存储服务器,存储服务器向下载用户发送数据资源;
由于存储服务器中存储有其它下载用户预订的数据资源,还未被取走,存储服务器接收到来自预订服务器的通知,得到下载用户信息,直接将相应的数据资源复制后发送给下载用户。
步骤S305:管理服务器解析预订消息;
管理服务器解析预订消息,获得预订事件。
步骤S306:管理服务器判断是否存在共享用户信息;
管理服务器判断是网络中是否存在拥有与所述预订事件相对应数据资源的共享用户信息。如果有,则执行步骤S307,如果没有,则执行步骤S308。
步骤S308:通知下载用户;
管理服务器通知网络中不存在共享用户。
步骤S307:管理服务器判断下载用户是否需要下载;
当网络中存在有共享用户信息后,如果下载用户要通过共享用户建立连接下载,则执行步骤S309,如果下载用户不进行连接,则执行步骤S310。
步骤S309:下载用户进行连接;
下载用户通过管理服务器获得共享用户信息,与共享用户之间建立P2P连接,下载所需的数据资源。
步骤S310:存储服务器进行下载;
如果下载用户没有与共享用户建立连接,则表明下载用户可能会离开网络,此时,管理服务器会通知预订服务器,并在通知中附着共享用户信息,预订服务器收到共享用户信息后,触发存储服务器利用共享用户信息与共享用户之间建立P2P连接,并获得下载用户所需的数据资源。
在步骤S304、步骤S309、步骤S310之后,下载用户获得到所有的数据资源后,执行步骤S311。
步骤S311:更新预订数据库;
预订数据库进行更新,将预订数据库中的预订事件删除,并记录相关日志。
存储服务器获得并存储了下载用户所需要的全部数据资源后,以邮件、短信或其它形式的及时通信消息通知下载用户,下载用户接到通知后从存储服务器中获得所述数据资源。
在实施例一中,下载用户向预订服务器提交预订事件后,便可以由存储服务器直接下载,存储服务器全部下载后,再通知下载用户。步骤S304与步骤S309可同时进行,这样会加快下载用户的下载速度,为下载用户获得全部的数据资源节省时间。在步骤S309中,下载用户进行下载时,如果下载用户在没有获得全部数据资源后离开网络,则下载用户只获得数据资源的部分片段,对于这种情况,通过实施例二说明解决的方案,参见图4,
步骤S401:下载用户发送预订消息;
步骤S402:预订服务器解析所述预订消息;
步骤S403:预订服务器将预订事件发送至管理服务器;
由于预订服务器判断出存储服务器中没有下载用户所需的数据资源,将预订事件发送至管理服务器;
步骤S404:管理服务器判断出存在共享用户信息;
步骤S405:管理服务器判断出下载用户自行下载;
步骤S406:下载用户进行连接,获得数据资源;
下载用户与共享用户建立连接,获得数据资源;
步骤S407:管理服务器判断下载用户是否下线;
在下载用户获得数据资源的过程中,管理服务器不断判断下载用户是否还在网络中,如果在,则继续判断;如果不在,则执行步骤S408;
步骤S408:管理服务器通知预订服务器;
由于下载用户可能会由于多种原因断开网络连接,此时,管理服务器将会通知预订服务器该下载用户下线,即下载用户已经断开网络,并通知预订服务器相应的共享用户信息、进度信息等;
步骤S409:预订服务器触发存储服务器下载;
由于所有P2P系统都支持文件下载追踪并记录进度信息,预订服务器触发存储服务器参考进度信息,利用共享用户信息与共享用户建立连接,从共享用户处获得下载用户下线后未获得数据资源的剩余片段。
步骤S410:更新预订数据库。
存储服务器获得并存储下载用户下线后未获得数据资源的剩余片段后,以邮件、短信或其它形式的及时通信消息通知下载用户,下载用户接到通知后从存储服务器中获得数据资源的剩余片段。
上述两个实施例都是共享用户在网络中,下载用户离开网络或下载用户在下载过程中断开网络后,网络是如何为下载用户下载并保存数据资源的。由于在网络中,共享用户和下载用户都具有很强的动态性,还可能会出现下载用户上线提交预订事件后,共享用户不在网络中,如实施例一中的步骤S306、S308,但是,之后共享用户上线,此时,如果下载用户已经离开网络或还在网络中,对于这类情况的解决方案,通过实施例三进行说明,参见图5,
步骤S501:管理服务器判断网络中是否有共享用户加入;
管理服务器不停的判断网络中是否有共享用户加入,当判断出有共享用户加入到网络中后,管理服务器将共享用户信息发送到预订服务器;
步骤S502:预订服务器检索预订数据库;
预订服务器收到共享用户信息后,根据该共享用户所拥有的数据资源检索预订数据库,由于预订服务器之前已经将预订事件存储到预订数据库中,而预订事件与数据资源之间存在相互对应关系,能够通过数据资源检索预订数据库中是否存在相应的预订事件。
步骤S503:判断是否存在预订事件;
通过数据资源检索预订数据库中是否存在预订事件。如果存在,则执行步骤S504,如果不存在,则结束。
步骤S504:判断下载用户是否在线;
预订数据库中存在有相应的预订事件,表明有下载用户需要从共享用户处获得相应的数据资源,此时,先判断下载用户是否在网络中,即是否在线。预订服务器将下载用户信息发送至管理服务器,由管理服务器判断下载用户是否在线,如果在线,则执行步骤S505,如果不在线,则执行步骤S507。
步骤S505:管理服务器判断下载用户是否建立连接;
如果是,则执行步骤S506,如果否,则执行步骤S507。
步骤S506:下载用户建立连接;
当下载用户需要自行下载时,则下载用户可通过预订服务器或管理服务器处获得共享用户信息,并与共享用户建立P2P连接,获得所需的数据资源。
步骤S507:存储服务器进行下载;
如果下载用户不在线或下载用户由于其它原因无法与共享用户建立连接,则管理服务器通知预订服务器,由预订服务器触发存储服务器,存储服务器通过预订服务器中的共享用户信息,与共享用户建立连接,获得下载用户所需的全部数据资源。
步骤S508:更新预订数据库;
在下载结束后,预订数据库都会进行更新,将预订数据库中的预订事件删除,并记录相关日志。
存储服务器获得并存储了下载用户所需要的全部数据资源后,以邮件、短信或其它形式的及时通信消息通知下载用户,下载用户接到通知后从存储服务器中获得所述数据资源。
在实施例三中,下载用户选择自行下载,即执行步骤S 506,在下载用户从共享用户处获得数据资源的过程中,如果下载用户与网络断开连接,这种情况可采取实施例二中步骤S407至步骤S410进行解决;当然,还可能存在的情况是下载用户与共享用户之间建立连接后,由于共享用户离开网络,下载用户只获得部分数据资源后也离开网络,之后,共享用户再次加入网络,对于这种情况,通过实施例四进行说明解决的方案。参见图6,
步骤S601:管理服务器通知预订服务器;
由于共享用户离开网络,下载用户和共享用户断开连接,管理服务器将会通知预订服务器该共享用户下线,即共享用户已经断开网络,并通知预订服务器断开前的进度信息等;
步骤S602:预订服务器记录接收到的信息;
预订服务器会将所接收到信息记录到预订数据库中,与相应的预订事件保存在一起;
步骤S603:管理服务器判断网络中是否有共享用户加入;
管理服务器不停的判断网络中是否有共享用户加入,当有共享用户加入到网络中后,管理服务器将共享用户信息发送到预订服务器。新加入的共享用户可以是上次断开前相同的共享用户,也可以不同的共享用户,只要该共享用户有下载用户所需的数据资源即可。
步骤S604:预订服务器检索预订数据库;
预订服务器收到共享用户信息后,会根据该共享用户所拥有的数据资源检索预订数据库,由于预订服务器之前已经将预订事件存储到预订数据库中,而预订事件与数据资源之间存在相互对应关系,能够通过数据资源检索预订数据库中是否存在相应的预订事件。
步骤S605:判断是否存在预订事件;
通过数据资源检索预订数据库中是否存在预订事件。如果存在,表明有下载用户需要从共享用户处获得相应的数据资源,则执行步骤S606,如果不存在,则结束。
步骤S606:判断下载用户是否在线;
此时,先判断下载用户是否在网络中,即是否在线。预订服务器将下载用户信息发送至管理服务器,由管理服务器判断下载用户是否在线,如果在线,则执行步骤S607,如果不在线,则执行步骤S609。
步骤S607:管理服务器判断下载用户是否建立连接;
如果是,则执行步骤S608,如果否,则执行步骤S609。
步骤S608:下载用户建立连接;
当下载用户需要自行下载时,则下载用户可通过预订服务器或管理服务器处获得共享用户信息,并与共享用户建立P2P连接,获得上次断开后未获得数据资源的剩余片段。
步骤S609:存储服务器进行下载;
如果下载用户不在线或下载用户由于其它原因无法与共享用户建立连接,则管理服务器通知预订服务器,预订服务器将在预订数据库中查找,找到相应的预订事件中所记录的下载用户的进度信息,由预订服务器触发存储服务器,存储服务器通过预订服务器中的共享用户信息,与共享用户建立连接,按照进度信息获得上次下载用户在与共享用户断开后未获得数据资源的剩余片段。
步骤S610:更新预订数据库;
在下载结束后,预订数据库都会进行更新,将预订数据库中的预订事件删除,并记录相关日志。
存储服务器获得并存储下载用户下线后未获得数据资源的剩余片段后,以邮件、短信或其它形式的及时通信消息通知下载用户,下载用户接到通知后从存储服务器中获得数据资源的剩余片段。
由于系统在工作过程中,共享用户加入到网络中后,预订服务器接收到共享用户消息次数可能非常频繁,为减少预订服务器的负担,可建立多个预订服务器实现负载均衡,多个预订服务器可采用集群或分布式结构;还可以按照时间周期或接收到共享用户信息数量的阈值作为触发预订服务器的工作条件。
在上述各个实施例中,预订服务器在实现网络预订存储功能时,具有很关键的作用,关于预订服务器的组成,通过本发明的实施例六进行说明,参见图7,
预订服务器701,包括:接收单元702,判断单元703,发送单元704,
所述接收单元702,用于接收来自下载用户的预订事件;
所述判断单元703,用于当得知所述预订事件所对应的数据资源处于可下载状态时,通知所述发送单元704;
所述发送单元704,用于将获得的与所述数据资源相对应的共享用户信息发送。
在上面所描述的各个实施例中,各个服务器、下载用户、共享用户之间在进行数据传输时建立的连接可以是P2P连接,但不仅限于这种连接方式。还可通过其它的连接方式进行数据传输,如超级旋风等,存储服务器也可通过网络硬盘等方式实现。
对于本发明各个实施例中所阐述的系统和方法,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1、一种实现网络预订存储的系统,其特征在于,包括管理服务器、预订服务器、存储服务器,
所述管理服务器,用于将从网络中获得的共享用户信息发送至预订服务器;所述共享用户为网络中拥有与预订事件所对应数据资源的用户;
所述预订服务器,用于接收来自下载用户的预订事件,当所述预订事件所对应的数据资源处于可下载状态时,将获得的与所述数据资源相对应的共享用户信息发送至存储服务器;
所述存储服务器,用于在无需下载用户与网络保持连接的情况下,利用所述共享用户信息与共享用户建立连接,下载所述数据资源,并在所述数据资源全部下载完毕后,通过即时通信消息通知下载用户,以便下载用户连接到网络下载所述数据资源。
2、根据权利要求1所述的一种实现网络预订存储的系统,其特征在于,
所述预订服务器,包括:接收单元,判断单元,发送单元,
所述接收单元,用于接收来自下载用户的预订事件;
所述判断单元,用于当得知所述预订事件所对应的数据资源处于可下载状态时,通知所述发送单元;
所述发送单元,用于将获得的与所述数据资源相对应的共享用户信息发送至存储服务器。
3、根据权利要求1所述的一种实现网络预订存储的系统,其特征在于,
所述预订服务器,用于接收到来自下载用户的预订消息后,将预订消息中的预订事件发送至管理服务器;
所述管理服务器,用于将网络中拥有与所述预订事件相应数据资源的所述共享用户信息发送至预订服务器。
4、根据权利要求1所述的一种实现网络预订存储的系统,其特征在于,
所述预订服务器,用于接收到来自下载用户的预订消息后,将预订消息中的预订事件保存在预订数据库中,收到来自管理服务器的所述共享用户信息后,利用所述共享用户信息判断所述共享用户拥有的所述数据资源是否对应于所述预订数据库中的预订事件,如果是,将所述共享用户信息发送至存储服务器;
所述存储服务器,在将所述数据资源全部下载完成后,通知所述预订服务器删除所述预订事件。
5、根据权利要求1所述的一种实现网络预订存储的系统,其特征在于,所述预订服务器还用于,接收到来自下载用户的预订消息后,先判断预订消息中的预订事件所对应的数据资源是否在存储服务器中,如果在,则将所述数据资源发送至下载用户。
6、根据权利要求1所述的一种实现网络预订存储的系统,其特征在于,所述管理服务器,还用于所述下载用户从所述共享用户下载所述数据资源时中断后,记录中断后所述下载用户的下载进度;
所述管理服务器在从网络中获得所述共享用户信息发送至预订服务器的同时,发送所述下载进度信息;
所述预订服务器,还用于将获得的共享用户信息发送至存储服务器的同时,发送所述下载进度信息;
所述存储服务器,在利用所述共享用户信息与共享用户建立连接后,利用所述进度信息下载所述数据资源中的剩余部分。
7、一种实现网络预订存储的方法,其特征在于,该方法包括:
接收并存储来自下载用户的预订事件;
步骤A:预订服务器判断所述预订事件相对应的数据资源是否处于可下载状态,如果不是,则返回本步骤,直至判断所述数据资源处于可下载状态后,将从管理服务器获取的与所述数据资源相对应的共享用户信息发送至存储服务器,存储服务器在无需下载用户与网络保持连接的情况下,利用共享用户信息与共享用户建立连接下载并存储所述数据资源,并在所述数据资源全部下载完毕后,通过即时通信消息通知下载用户,以便下载用户连接到网络下载所述数据资源;
其中,所述共享用户为网络中拥有与预订事件所对应数据资源的用户。
8、根据权利要求7所述的一种实现网络预订存储的方法,其特征在于,步骤A中所述判断是否可以下载所述预订事件相对应的数据资源为:
判断网络中是否存在拥有所述数据资源相对应的共享用户,如果存在,则处于可下载状态,如果不存在,则处于不可下载状态。
9、根据权利要求7所述的一种实现网络预订存储的方法,其特征在于,步骤A中所述判断是否可以下载所述预订事件相对应的数据资源为:
利用共享用户信息判断共享用户所拥有的数据资源是否与步骤A中接收到的预订事件相对应,如果相对应,则处于可下载状态,如果不相对应,则处于不可下载状态。
10、根据权利要求8或9所述的一种实现网络预订存储的方法,其特征在于,在步骤A之后,该方法进一步包括:
发送所述预订事件的下载用户一方从所述存储服务器下载所述数据资源。
11、根据权利要求7所述的一种实现网络预订存储的方法,其特征在于,该方法进一步包括:
步骤A中存储服务器下载并存储所述数据资源的过程中,追踪并记录下载进度信息。
12、根据权利要求11所述的一种实现网络预订存储的方法,其特征在于,
步骤A中存储服务器下载并存储所述数据资源的过程中,如果出现中断,则重新执行步骤A;
在所述重新执行步骤A的过程中,下载并存储所述数据资源为:
利用所记录的下载进度信息,对所述数据资源中未下载的部分进行下载,直至将所述数据资源全部下载完成后,将与所述数据资源相对应的预订事件从预订服务器中删除。
13、根据权利要求7、8、9、11或12任意一项所述的一种实现网络预订存储的方法,其特征在于,在下载用户发起下载请求时,该方法进一步包括:
判断存储服务器中是否保存有与该下载请求相对应的所述数据资源,如果是,则直接从该存储服务器中下载对应的所述数据资源。
14、根据权利要求10所述的一种实现网络预订存储的方法,其特征在于,在下载用户发起下载请求时,该方法进一步包括:
判断存储服务器中是否保存有与该下载请求相对应的所述数据资源,如果是,则直接从该存储服务器中下载对应的所述数据资源。
CN 200710097227 2007-04-28 2007-04-28 一种实现网络预订存储的系统和方法 Active CN100588172C (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200710097227 CN100588172C (zh) 2007-04-28 2007-04-28 一种实现网络预订存储的系统和方法
PCT/CN2008/070167 WO2008131653A1 (fr) 2007-04-28 2008-01-23 Système et procédé pour la réalisation d'une mémoire d'abonnement à un réseau et serveur d'abonnement

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200710097227 CN100588172C (zh) 2007-04-28 2007-04-28 一种实现网络预订存储的系统和方法

Publications (2)

Publication Number Publication Date
CN101072166A CN101072166A (zh) 2007-11-14
CN100588172C true CN100588172C (zh) 2010-02-03

Family

ID=38899162

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710097227 Active CN100588172C (zh) 2007-04-28 2007-04-28 一种实现网络预订存储的系统和方法

Country Status (2)

Country Link
CN (1) CN100588172C (zh)
WO (1) WO2008131653A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109861901A (zh) * 2017-11-30 2019-06-07 可可株式会社 用于分享预订信息及票券的方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100588172C (zh) * 2007-04-28 2010-02-03 腾讯科技(深圳)有限公司 一种实现网络预订存储的系统和方法
CN101902346A (zh) 2009-05-31 2010-12-01 国际商业机器公司 P2p内容缓存系统和方法
CN102118406B (zh) * 2009-12-31 2013-08-07 Tcl集团股份有限公司 一种终端设备离线下载方法及门户服务系统
CN102148843A (zh) * 2010-02-05 2011-08-10 腾讯科技(深圳)有限公司 异步下载系统及方法
US8898318B2 (en) * 2010-06-03 2014-11-25 Microsoft Corporation Distributed services authorization management
CN102209050B (zh) * 2011-05-24 2012-07-18 苏州阔地网络科技有限公司 一种用户信息共享的即时通讯系统及方法
CN103281234A (zh) * 2012-12-07 2013-09-04 北京奇虎科技有限公司 即时通信中的文件处理方法及系统
CN103269302A (zh) * 2012-12-07 2013-08-28 北京奇虎科技有限公司 用于即时通信的共享文件管理方法和系统
CN103347041B (zh) * 2013-05-31 2016-04-13 中国联合网络通信集团有限公司 视频共享控制方法和装置
CN103546549B (zh) * 2013-10-12 2017-12-12 深圳Tcl新技术有限公司 终端离线数据共享的方法及系统
CN104753961A (zh) * 2015-04-22 2015-07-01 腾讯科技(北京)有限公司 一种多媒体数据的处理方法、客户端及服务器
CN109522254B (zh) * 2017-10-30 2022-04-12 上海寒武纪信息科技有限公司 运算装置及方法
CN109861955A (zh) * 2018-09-03 2019-06-07 西安新路网络科技有限公司 一种流量特征防私接方法
CN115695434A (zh) * 2022-09-28 2023-02-03 聚好看科技股份有限公司 一种负载均衡方法、装置和电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004192147A (ja) * 2002-12-09 2004-07-08 Pentax Corp ダウンロードシステムおよびダウンロード装置
EP1599812A2 (en) * 2003-02-28 2005-11-30 Koninklijke Philips Electronics N.V. A method of sharing files between user stations in a network
US7480314B2 (en) * 2004-07-29 2009-01-20 Realnetworks Asia Pacific Co., Ltd. Method for providing multimedia data via communication network
CN100588172C (zh) * 2007-04-28 2010-02-03 腾讯科技(深圳)有限公司 一种实现网络预订存储的系统和方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109861901A (zh) * 2017-11-30 2019-06-07 可可株式会社 用于分享预订信息及票券的方法及装置
US11019006B2 (en) 2017-11-30 2021-05-25 Kakao Corp. Method and apparatus for sharing booking information and ticket
CN109861901B (zh) * 2017-11-30 2022-03-25 可可株式会社 用于分享预订信息及票券的方法及装置

Also Published As

Publication number Publication date
CN101072166A (zh) 2007-11-14
WO2008131653A1 (fr) 2008-11-06

Similar Documents

Publication Publication Date Title
CN100588172C (zh) 一种实现网络预订存储的系统和方法
CN102523256B (zh) 内容的管理方法的方法、装置和系统
EP2321908B1 (en) Method and system for message processing
US8250171B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN100438408C (zh) 一种实现代理下载的方法、装置及系统
KR101467512B1 (ko) 피투피 네트워크 시스템 및 그의 운용 방법
EP2069952A2 (en) Virtual peer for a content sharing system
CN101090371B (zh) 一种即时通讯系统中用户信息管理的方法及系统
KR20130088774A (ko) 분할 콘텐트 전달 시스템 및 방법
US8086629B2 (en) Content delivery apparatus, content delivery method, and content delivery program
CN103581245A (zh) 一种内容分发网络内容分发的方法及系统
CN101355591A (zh) 一种p2p网络及其调度方法
WO2008034352A1 (fr) Procédé, système et serveur frontière destinés à distribuer des ressources
CN101841553A (zh) 网络上请求资源的位置信息的方法、用户节点和服务器
JP2006244223A (ja) P2pコンテンツ転送方法
KR20100060304A (ko) 네트워크 구조를 고려한 분산형 컨텐트 전달 시스템 및 그 방법
CN102420864B (zh) 一种面向海量数据的数据交换方法
CN107395686A (zh) 切换长连接的方法、设备和系统
Li et al. SCOM: A scalable content centric network architecture with mobility support
CN106357723A (zh) 一种基于云主机的多集群缓存信息同步系统和方法
CN103401951B (zh) 基于对等架构的弹性云分发方法
CN111800516B (zh) 一种基于p2p的物联网设备管理方法及装置
CN101741869A (zh) 提供内容的方法和系统
KR100436431B1 (ko) 피어투피어 네트워크상에서의 협업적인 정보 교환시스템
KR100435985B1 (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
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SHENZHEN TENCENT COMPUTER SYSTEM CO., LTD.

Free format text: FORMER OWNER: TENGXUN SCI-TECH (SHENZHEN) CO., LTD.

Effective date: 20130114

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518044 SHENZHEN, GUANGDONG PROVINCE TO: 518057 SHENZHEN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20130114

Address after: The South Road in Guangdong province Shenzhen city Fiyta building 518057 floor 5-10 Nanshan District high tech Zone

Patentee after: Shenzhen Tencent Computer System Co., Ltd.

Address before: 2, 518044, East 410 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.