一种对等网络资源共享的方法、装置及系统的制作方法

文档序号:7927207阅读:120来源:国知局

专利名称::一种对等网络资源共享的方法、装置及系统的制作方法
技术领域
:本发明涉及对等网络,尤其涉及一种对等网络资源共享的方法、装置及系统。
背景技术
:P2P(peer-to-peer,对等网络.),是一种通信网络中各方互为客户机或服务器的模式。根据P2P网络拓朴结构的不同,一般将P2POverlay(叠加网络)分为结构化P2POverlay和非结构化P2POverlay两种。图1中,为一种典型的结构化P2POverlay,包括Peer1(节点)……Peer5,每个节点都具有查找,路由等功能,可直接与其他节点交互。结构化P2POverlay—般是基于DHT(DistributedHashTable,分布式散列表)技术,如Chord,CAN,Pastry等,来组织网络中的节点构建网络拓朴的。P2POverlay中,节点发布资源的过程是将本地保存的资源以网络中唯一'的索引(键值key表示),将静态信息key/value发布到网络上。图1中,Peer1通过Put命令向网络发布内容对应的key/value信息;按照特定的P2P规则(DHT算法)找到负责存储该key/value的Root节点Peer2,并将key/value保存在Peer2的Key/Value发布资源列表中。节点获取资源的过程是将本地需要的资源,以网络中唯一的索引表示,根据该索引在网络中查找并获取资源。图1中,当节点Peer3请求某一内容(key)时,向P2POverlay发起Get消息,查找key所对应的value。Get消息根据特定的P2P规则路由到负责存放该key的Root节点Peer2,Peer2根据key索引自己的Key/Value表,得到相应的value后,返给请求节点Peer3。如图2所示,是Peer-Client(用户)结构的结构化P2POverlay。包括PeeM……Peer6,Client挂在Peer之下,通过Peer节点,发布资源或请求资源,与其他Peer(s)或Client(s)进行交互。目前,基于分片方式实现的P2PVOD(VideoonDemand,-见频点播)系统中,都是将媒体内容分割为特定时长的分片,然后通过发布或请求分片,实现资源共享。例如,媒体源将一部1小时长的电影分割为900个分片,每个分片对应4秒钟时长的影片,并用唯一的key标识,然后将每个分片对应的key/value信息发布到P2POverlay上。现有技术中,所发布或请求的某一静态信息key/value,任何时刻对应的都是固定时长的媒体内容,不随时间动态改变。用户需要发布或请求不同的媒体内容,就需要向网络发布或请求不同的key/value。在VOD系统中,节点会在各自的緩冲区中维护最新接收到的媒体内容,随着时间的推移用户所需的媒体内容也在不断变化,緩沖区中保存的内容也将不断更新,因此节点緩冲区中保存的是一种随时间动态变化的资源。例如图2中的Client3,在系统时间12:00:00时,点播了某视频内容的第13分钟,假设节点下载与播放速率相同,Client3有6分钟时长的缓冲区大小;Client3与服务节点'Peer4建立连接后,就开始往緩冲区中存储内容。随着观看时间的推移,緩冲区中保存的内容也在变化。系统时间为12:03:00时,Client3緩沖区中存储有13至16分钟的内容,如图3(a);系统时间为12:06:00时,Client3保存满(有13至19分钟的内容),如图3(b);12:10:00时,Client3緩冲区中已变为17至23分钟的内容,如图3(c);以此类推,Client3緩〉申区中的内容随着时间的推移在动态变化。当Client3保存区中的内容已经变为第22至28分钟的内容时,如图4所示。现有技术实现的基于分片方式的P2PVOD系统中,如果用户要发布緩冲区中的媒休内容,随着时间的推移就需要不断的更新发布的key/value;另一方面,随着时间的推移,用户要获取自己所需的媒体内容,也需要不断向网络请求不同的key/value来获得。在实现本发明过程中,发明人发现现有技术中至少存在如下问题使用分片方式实现的P2PVOD系统中,向网络发布的静态信息对应的分片内容是不随时间变化的;如果发布内容发生变化,只能通过重新发布,即,扭新增加的内容发布到P2POverlay上,将已经发布到P2POverlay上但是现有已经没有的内容老化(移除)掉。由于节点保存区中的内容会随时间动态变化,因此节点需要不断吏新发布,才能正确共享緩冲区中的..内容,从而带来了大量的信令开销;在资源共享方面,用户获取媒体内容时,所需的媒体内'容也会随着时间不断变化;但是现有分片方式实现的P2PVOD系统中,不能通过一次点播请求获得连续的资源,为了满足用户自身的点播需求,需要不断向P2POverlay发送请求消息,查询并获取所需的分片,也同样带来了大量的,令开销。
发明内容本发明的实施例提供了一种动态资源共享的方法、装置友系统,解决了分片方式实现P2PVOD系统中信令处理开销大的问题。本发明实施例的技术方案如下一种对等网络资源发布的方法,包括生成第一资源发布消息,所述第一资源发布消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点;向网络发送所述第一资源发布消息发布动态资源。一种对等网络资源发布装置,包括资源发布消息生成模块用于生成第一资源发布消息,该消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点,或者还包括緩存时长;资源发布消息发送模块,用于向网络发送所述第一资源发布消息。一种对等网络资源请求的方法,包括生成第一资源请求消息,所述第一资源请求消息包含动态资源标识、内容标识、系统时间和点播时间点;向网络发送所述第一资源请求消息请求动态资源;接收到所述网络的响应消息,所述响应消息中包含提供所述动态资源的服务节点信息;■与所述服务节点建立连接,请求获取所述动态资源。一种对等网络资源请求装置,包括请求消息生成模块,用于生成第一资源请求消息,所述第一资源请求消息包含动态资源标识、内容标识、系统时间和点播时间点;请求消息发送模块,用于向网络发送所述第一资源请求消息;接收请求响应模块用于接收所述网络的响应消息,所述响应消息中包含提'供所述动态资源的服务节点信息;连接建立模块用于与所述服务节点建立连接,请求获取所述动态资源;资源获取模块用于从所述服务节点获取所述动态资源。.一种对等网络资源共享的方法,包括第一对等节点接收来自请求节点的请求消息请求动态资源,该请求消息中包含动态资源标识、内容标识、系统时间和点播时间点;第一对等节点根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;第一对等节点向所述请求节点发送请求响应消息,所述响应消息中包含所述服务节点信息。一种对等网络资源共享装置,包括消息接收模块,用于接收来自请求节点的携带动态资源标识的请求消息请求动态资源,该请求消息中包含内容标识、.系统时间和点播时间点。服务节点获取模块,用于根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;消息发送模块用于发送请求响应消息,所述响应消息中包含所述服务节点信息。一种对等网络资源共享.的系统,包括,第一对等节点,用于发送携带动态资源标识的第一资源发布消息发布动态资源,该资源发布消息中包含内容标识、系统时间和发布时刻緩存起始点;第二对等节点,用于接收所述第一资源发布消息,并保存;第三对等节点,用于发送携带动态资源标识的第一资源请求;肖,l请求所述第一对等节点发布的动态资源,,该请求消息中包含内容标识、系统时间和点:潘时间点;所述第二对等节点接收来自所述第三对等节点的第一资源请求消息,根据所述第一资源请求消息获得提供所述动态资源的第一对等节点信息,将所述第一对等节点信息发送给所述第三对等节点';所述第三对等节点与所述第一对等节点建立连接,获取所请求的动态资源。一种对等网络中客户端,包括,发布消息生成模块生成携带动态资源标识的第二资源发布消息,所述消息冲包含内容标识、发布时刻緩存起始点和/或客户端本地时间;发送模块用于向其所归属的对等节点发送所述第二资源发布消息。由上述本发明的实施例提供的技术方案可以看出,系统中通过节点一次性发希随时间变化的资源,可以减少多次发布大量分片产生的信令和处理开销;用户通过请求随时间动态变化的资源;能够获得连续的视频内容,也减少了多次请求分片带来的信令(如P2P的Lookup,Get消息等)开销和处理(如消息路由,Root上Key/Value表查询等)开销;不仅充分利用了终端的资源和能力,还通过降低信令和处理开销提高了网络的并发服务能力。力了更清楚地说明本发明实施例的技术方案,下面将对实施例表示中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为现有技术一种典型的结构化P2P叠加网络示意图;图2为现有技术Peer-Client的结构化P2P叠加网络示意图;图3为本发明实施例的节点保存区动态变化示意图;图4为本发明实施例的节点保存区资源共享示意图;图5为本发明实施例i种对等网络资源发布装置的简化结构示意图;图6为本发明实施例一种对等网络资源请求装置的简化结构示意图;图7为本发明实施例一种对等网络资源共享装置的简化结构示意图;图8为本发明实施例一种对等网络资源共享系统的简化结构示意图;图9为本发明实施例一种对等网络中客户端的简化结构示意图;图10为本发明实施例(一)一种对等网络资源共享方法的简化流程图;图11为本发明实施例(二)一种对等网络资源共享方法的筒化流程图;图12为本发明实施例(三)一种对等网络资源共享方法的简化流程图;图13为本发明实施例(四)混合模式P2P叠加网络的简化网络拓朴示意图;图14为本发明实施例(四)一种对等网络资源共享方法的简化流程图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描迷,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例所述技术方案,将保存区中随时间变化的动态资源,根据该动态资源的变化规律用描述信息(如key/value形式的静态信息)的方式表示出来,将该描述信息发布到网络上,为其他节点提供连续的动态资源、本发明实施例提供了一种对等网络资源发布的方法,包括生成第一资源发布消息,该第一资源发布消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点;向网络发送该第一资源发布消息发布动态资源。在第一资源发布消息中还可以包括緩存时长;当所述消息中包含内容标识(如《功夫》)、系统时间(12:00:00)和发布时刻緩存起始点(如《功夫》第5分钟)时,用户可以从《功夫》的第5分钟开始获取,随着緩存区中内容的不断变化来持续获得资源;当所述消息中包含了緩存时长(如6分钟),用户就可以在6分钟这个较宽泛的范围内有选择的获取,如系统时间为12:06:00时,緩沖区中有5-11分钟的内容,用户可以从第6分钟开始获取,或者从第8分钟开始获取不断变化的动态资源。向网络发送携带动态资源标识的第一资源发布消息发布动态资源具体由以下过程实现生成包含内容标识、舉统时间和发布时刻緩存起始点,或者还包含緩存时长的静态信息形式的第一资源发布消息。当客户端(client)通过其归属的节点(peer)向网络发布动态资源时,peer节点接收来自client的第二资源发布消息,当第二资源发布消息包含内容标识、客户端本地时间和发布时刻緩存起始点(还可包含緩存时长)时,将该消息中的客户端本地时间更新为系统时间后生成第一资源发布消息,peer节点向网络发布所述第一资源发布消息;客户端向其归属的节点发送的第二资源发布消息还包括另一种情况所述消息中包含内容标识和发布时刻緩存起始点(还可包含緩存时长),但不包含客户端本地时间时;在所述消息中添加系统时间后生成第一资源发布消息,peer节点向网络发布该第一资源发布消息;当本地需要发布动态资源时,根据本地所要发布的动态资源生成第一资源发布消息,所述消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点(还可包括緩存时长),peer节点向网络发布该第一资源发布消息。在上面描述的方法中,dient节点发送包含客户端本地时间的第二资源发布消息,其归属的peer节点要将客户端本地时间进行修改,修改为系统时间(因为网络中所有的peer节点需要与系统时钟保持同步,但对client不作同步要求)目的在于在发布或者请求资源时,client节点不会因为时间差导致资源获取错误或不能获得用户需要的资源。向网络发送携带动态资源标识的第一资源发布消息是根据对等网络规则路由到根节点上的,根节点(root节点)负责存储第一资源发布消息中发布的动态资源的信息。peer节点,对等网络发布动态资源的周期是由发布者自己决定的,例如当发布者发现緩存中的内容不能为请求者提供连续的服务时,就需要重新发布动态资源来保证资源共享;比如发布者在资源发布完毕后,不想再为用户提供服务时,就不再发布资源。如图5所示,本发明实施例提供了一种对等网络资源发布装置,包括■资源发布消息生成模块S101:用于生成第一资源发布消息,该消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点,或者还包括緩存时长;资源发布消息发送^t块S102,用于向网络发送第一资源发布消息。该资海发布消息生成模块S101具体包括接收客户发布信息模块S1011:用于接收来自客户端的第二资源发布消自、.系统时间处理模块S1012:当接收吝户发布信息模块S1011接收的第二资源发布消息中包括动态资源标识、内容标识、客户端本地时间和发布时刻緩存起始点(还可包括緩存时长)时,用于将该消息中的客户端本地时间更新为系统时间后生成第一资源发布消息;当接收客户发布信息模块S1011接收的第二资源发布消息中包括动态资源标识、内容标识和发布时刻緩存起始点(还可包括缓存时长),但不包含客户端本地时间时,用于在该消息中中添加的系统时间,生成第一资源发布消息;还可包含资源发布消息生成子模块S1013:用于根据本地所要发布的动态资源生成携带动态资源标识的第一资源发布消息,该消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点(还可包括緩存时长)。所述资源发布消息发送模块S102包括发布消息路由模块S1021:用于把第一资源发布消息路由到根节点(root节点),root节点为负责存储第一资源发布消息中发布的动态资源的信息的对等节点。本发明实施例一种对等网络资源请求的方法,'包括生成第一资源请求消息,第一资源请求消息包含动态资源标识、内容标识(如《功夫》)、系统时间(12:05:00)和点播时间点(如《功夫》第6分钟);向网络发送第一资源请求消息请求动态资源;接收到所述网络的响应消息,响应消息中包含提供所述动态资源的服务节点信息;..与所述服务节点建立连接,请求获取所述动态资源。'当本地需要请求动态资源时,根据需要请求的动态资源生成第一资源请求消息,发送到网络上;当客户端(client)通过其归属的peer节点向网络发送第二资源请求消息,所述消息包含动态资源标识、内容标识、客户端本地时间和点播时间点时,peer节点将所述消息中的客户端本地时间更新为系统时间后生成第一资源请求消息,'发送到网络上;client节点发送的第二资源请求消息还包括另一种情况所述消息包含动态资源标识、内容标识和点#"时间点,peer节点将所述消息中添加系统时间后,生成第一资源请求消息,发布到所述网络上。由上面描述的方法可以看出,client节点需要请求资源,所述第二资源请求消息中包含客户端本地时间时,peer节点要将客户端本地时间更新成与系统时间(peer节点已经同步于系统时钟),以.保证在请求过程中因为时间差,而使请求这不能获得资源,或者获得错误资源。.向网络发送第一资源请求消息是根据对等.网络规则路由到存储所述动态资源的信息的根节点(root节点)上的。如图6所示,本发明实施例一种对等网络资源请求装置,包括请求消息生成模块S201,用.于生成第一资源请求消息,所述消息包含动态资源标识、内容标识、系统时间和点^"时间点;请求消息义送模块S202,用于向网络发送第一资源请求消息;接收请求响应模块S203:用于接收所迷网络的响应消息,响应消息中包含.提供所述动态资源的服务节点信息;连接建立模块S204:用于与服务节点建立连接,请求获取动态资源;资源获取模块S205:用于从服务节点获取动态资源。请求消息生成模块S201具体包括接收客户请求信息模块S2011:用于接收来自客户端的第二资源请求消系统时间处理模块S2012:当第二资源请求〉、肖息中包含动态资源标识、内容标识、客户端本地时间和点播时间点时,用于将所述消息中的客户端本地时间更新为系统时间后,生成第一资源请求消息;或者,当第二资源请求消息中包含动态资源标识、内容标识和点播时间点时,在所述消息中添加系统时间生成第一资源发布消息;、还可包含请求消息生成子模块S2013:用于当本地需要请求动态资源时,根据需要请求的动态资源生成第,一资源请求消息。.请求消息发送模块S202具体包括请求消息路由模块S2021:用于将第一资源请求消息路由到根节点,根节点为存储提供动态资源的服务节点信息的对等节点。本发明实施例一种对等网络资源共享的方法,包括第一对等节点接收来自请求节点的请求消息请求动态资源,该请求消息中包含动态资源标识、内容标识、系统时间和点播时间点;第一对等节点根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;第一对等节点向所述请求节点发送请求响应消息,所述响应消息中包含所述服务节点信息。在接收来自请求节点的携带动态资源标识的请求消息之前,接收端接收来自服务节点的携带动态资源标识的资源发布消息,该资源发布消息中包含内容标识、系统时间和发布时刻緩存起始点(还可包含緩存时长);保存资源发布消息中所述动态资源的信息。根据请求消息中的内容获得提供动态资源的服务节点信息,向请求节点发送请求响应消息,是通过以下技术方案实现的根据请求消息中包含的内容在本地存储的动态资源的动态资源索引表中查找当查找到时,获得与所述请求消息对应的服务节点信息,向请求节点发送请求响应消息,响应消息+包含服务节点信息;否则,向请求节点发送请求失败消息。当请求节点为超级节点时,在本地存储的动态资源的动态资源索引表中没有查找到服务节点信息时,向网络中的其他超级节点发送资源请求消息,所述消息中携带内容标识、系统时间和点播时间点。接收所述其他超级节点返回的所述服务节点信息'如图7所示,本发明实施例一种对等网络中动态资源共享装置,包括消息接收模块S301,用于接收来自请求节点的携带动态资源标识的请求消息请求动态资源,该请求消息中包含内容标识、系统时间和点播时间点。服务节点获取模块S302,用于根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;消息发送模块S303:用于发送请求响应消息,所述响应消息中包含服务节点信息。所述装置还包括动态资源存储模块S304,用于接收服务节点向网络发布的携带动态资源标识的资源发布消息,所述消息中包含内容标识,系统时间和发布时刻緩存起始点,并保存在动态资源索引表中,用动态资源标识来标识该内容。服务节点获取模块S302还包括请求消息查询模块S3021:用于根据请求消息中的内容在本地存储的动态资源索引表中查找,当查找到时,获得与所述请求消息对应的所述服务节点信息;还用于当本地查找不到时,生成向其他的超级节点发送查询服务节点的请求消息;超级节点通信模块S3022:用于将所述请求发送给其他超级节点,并接收其他超级节点返回的所述服务节点信息。如图8所示,本发明实施例一种对等网络资源共享的系统,包括第一对等节点S401,用于发送携带动态资源标识的第一资源发布消息发布动态资源,该资源发布消息中包含内容标识、系'统时间和发布时刻緩存起始点;第二对等节点S402,用于接收第一资源发布消息,并保存;第三对等节点S403,用于发送携带动态资源标识的第一资源请求消息请求第一对等节点发布的动态资源,该请求消息中包含内容标识、系统时间和点播时间点;第二对等节点S402接收来自第三对等节点S403的第一资源请求消息,根据所述消息获得提供动态资源的第一对等节点S401信息,将第一对等节点S401信息发送给第三对等节点S403;第三对等节点S403与第一对等节点S401建立连接,获取所请求的动态资源。该共享系统还包括发布客户端S404,发布客户端归属到第一对等节点S401上发布客户端S404向第一对等节点S401发送第二资源发布消息,所述消息中包含动态资源标识、内容标识、客户端本地时间和发布时刻緩存起始点(还可包括緩存时长);相应地,第一对等节点S401还用于将所述消息中的客户端本地时间更新为系统时间后,生成第一资源发布消息,发送所述消息;.发布客户端S404向第一对等节点S401发送第二资源发布消息还包括另一种情况,所述消息中包含动态资源标识、内容标识和发布时刻缓存起始点(还可包含緩存时长);相应地,第一对等节点S401还用于在第二资源发布消息中添加系统时间生成第一资源发布消息,发送第一资源发布消息。该共享系统还包括请求客户端S405,请求客户端S405归属到所述第三对等节点S403上请求客户端S405向第三对等节点S403发送第二资源请求消息,所述消息中包含动态资源标识、内容标识、客户端本地时间和点播时间点;相应地,第三对等节点S403还用于将第二资源请求消息中的客户端本地时间更新为系统时间后,生成第一资源请求消息;请求客户端S405向第三对等节点S403发送第二资源请求消息,所述消息中包含动态资源标识、内容标识和点播时间-点;相应地,第三对等节点S403还用于在第二资源请求消息中添加系统时间后,生成第一资源请求消息。如图9所示,一种对等网络中客户端,包括发布消息生成模块S501:生成携带动态资源标识的第二资源发布消息,所述消息中包含内容标识、发布时刻緩存起始点和/或客户端本地时间;发送模块S502:用于向其所归属的对等节点发送所述第二资源发布消息。所述客户端还包括请求消息生成模块S503,用于生成携带^态资源标识的第二资源请求消息,所述第二资源请求消息中包含、内容标识、点播时间点和/或客户端本地时伺。为便于对本发明实施例的理解,下面将结合附图对相应的应用实施例进4亍i羊细i兌明。-实施例一本实施例以图1的括构化P2POverlay为例来进行本发明实施例所述技术方案的说明。图1所示的网络中,包括节点Peer1,.....Peer5,每个节点具有P2P查找、路由等功能,可直接与其他节点进行交互。结合图10,本发明实施例一种对等网络资源共享的方法,具体流程如下首先,P2POverlay中所有Peers需要保持与系统时钟同步(如精度到100ms);'此外,需要扩展一个动态资源标识,用于表示发布或请求资源是动态资源。步骤S101:Peer节点Ps1将本地所要发布的动态资源,表示成其对应的描述信息;该描述信息可以为P2P网络中key/value形式的静态信息,可以直接向P2P网络发布。所述描述信息中包含内容标识(如某个视频的名称,《功夫》)、发布时刻緩存起始点(如《功夫》第5分钟),系统时间(如12:10:00),还可以包含緩存时长(如6分钟时长)。'步骤S102:Ps1向P2P网络发布包含所述描述信息(key/value形式的静态信息)和动态资源标识的资源发布消息;根据特定的P2P规则,将资源发布消息路由到负责存储该key/value的Root节点上(根节点);如表1中所示,为本发明实施例中动态资源索引表(key/value表)的信息。表1中,value部分的緩存时长、内容描述等信息为可选择项,还可以根据需求拓展信息表的内容;动态资源标识、发布者、緩存起始点和系统时间为必选项;key中保存的是内容标识,如影片《功夫》,也可以是能够描述所保存的动态资源的内容的相关信息。.、表1:<table>tableseeoriginaldocumentpage23</column></row><table>步骤S103:Root节点将key/value保存到动态资源索引表(key/value表)中,同时使用动态资源标识来标识该key/value;Ps1通过资源发布消息向P2P网络中发布由动态资源表示成的描述信息(key/value形式的静态信息),资源发布消息可以采用Put(key/value,动态资源标识).消息。P2P(对等网络)规则在结构化P2POverlay中,指的是DHT算法,如Chord、Pastry等。步骤S104:当Root节点存储完毕后,向Ps1返回发布成功消息;步骤S105:当Peer节点Pc1请求动态资源时,首先将所要请求动态资源表示成其对应的描述信息(可以是key/value形式的静态信息);该描述信息中包含内容标识、系统时间和点播时间点;步骤S106:Pc1向P2P网络发送包含译key/value形式的描述信息和动态资源标识的资源请求消息,根据特定的P2P规则将该请求消息路由到负责存放该key的Root节》、(根节点);—Pc1向网络发布资源请求消息,该请求消息可以为P2P网络中的Get(key/value,动态资源标识)消息。步骤S107:Root节点根据资源请求消息中的动态资源标识和key/value,在动态资源索引表中查找可提供该描述信息的服务节点Ps1,返回给Pc1回应消息;步骤S108:Pc1与服务节点Ps1建立连接,请求获取所请求的动态资源;步骤S109:服务节点Ps1向请求节点Pc1发送所请求的资源。实施例二本实施例以图2所示的Peer-Client结构的结构化P2POverlay为例,来说明本发明实施例所述的技术方案,Peer-Client结构的结构化P2POverlay包括Peeii......Peer6,Client挂在Peer之下,需要通过Peer节点发布、请求更新或移除资源,与其他Peer(s)或Client(s)进行交互。如图11所示,本发明实施例一种对等网络资源共享的方法,本实施例与实施例一的区别在于实施例一中P2P中的所有节点可以直接向网络发布或请求由动态资源表示成的;l苗述信息;实施例二中Client是归属PeerT的,所以当Client需要发布或请求该资源时,需要先将其所发布或请求的内容发送给其归属的Peer节点,然后由其归属的Pee.r向网络发布或者请求消息。'具体流程如下所有Peers必须保持与系统时钟同步,对Client不做要求;此外,扩展一个动态资源标识,用于表示发布或请求是动态资源。步骤S201:Clienf节点S1将所要发布的动态资源,表示成与其对应的描述信息(可以是key/value形式的静态信息);该信息中包括内容标识、客户端本地时间(S1的本地时间)和发布时刻緩存起始点(或者还可包含緩存时长);步骤S202:S1向其归属的Peer节点Ps1发送包含该key/value形式的描述信息和动态资源标识的第二资源发布消息;(如P2P网络中的Put消息)步骤S203:Ps1收到S1的第二资源发布消息后,将value中S1的本地时间更新为系统时间后,得到value',并生成第一资源发布消息;。步骤S204:Ps1向网络发布包含key/value'形式的描述信息和动态资源标识的第一资源发布消息(如P2P网络中的Put消息);根据特定的P2P规则,将发布消息路由到负责存储该key/value'的Root节点上(根节点);步骤S205:Root节点将key/value'保存到动态资源索引表中,同时使用动态资源标识标识该key/value';步骤S206:当Root节点存储完毕后,向Ps1返回发布成功消息;步骤S207:Ps1向S1反馈发布成功消息;步骤S208:当Client节点C1请求动态资源(如《功夫》的第5分钟开始的视频)时,将所要请求的资源,表示成与其对应的描述信息(可以为key/value形式的静态信息);该描述信息中包括内容标识。客户端本地时间(C1的本地时间)和点播时间点;步骤S209:C1向其归属的Peer节点Pc1发送包含该key/value形式的描述信息和动态资源标识的第二资源请求消息;(如P2P网络中的Get消息)步骤S210:Pc1收到C1的请求消息后,将value中C1的本地时间更新为系统时间后,得到value',生成第一资源发布消息;步骤S211:Pc1向P2POverlay发送包含key/value'形式的描述信息和动态资源标识的第二资源请求消息,根据P2P规则将请求消息路由到负责存放该key的Root节点(根节点);步骤S212:Root节点根据消息中的动态资源标识和key/value',在本地动态资源索引表中查找可提供该描述信息的服务节点,返回给Pc1响应消息;步骤S213:Pc1接到反馈消息后,再返回给C1;步骤S214:C1与服务节点S1建立连接,请求获取动态资源;步骤S215:获取所请求的动态资源。实施例三实施例三是实施例二所述方法的另一种流程实现,两个实施例的区别在于实施例二中Client节点将所要发布或请求的动态资源直接生成了key/value形式的静态信息,该描述信息中包含内容标识、客户端本地时间和发布时刻緩存起始点(该key/value形式的静态信息可以直接向P2P网络发布),通过P2P网络中的发布(Put)或请求(Get)消息发送给其归属的Peer节点,通过Peer节点向网络发布资源;实施例三中Client节点将所要发布或请求的动态资源表示成普通的描述信息(非key/value形式),通过第二资源发布消息发送给其归属的Peer节点,第二资源发布消息为普通的发布消息(Set),该Client节点发送普通的发布消息的目的在于,告知其归属的Peer节点,自己想要请求或者发布动态资源。Peer节点添加上系统时间后,生成P2P网络中key/value形式的静态信息,然后通过P2P网络中的发布或请求消息发送出去。具体流程如图12所示步骤S301:Client节点S1将所要发布的动态资源表示为描述信息;该描述信息不限于key/value形式静态信息',可为其他形式的描述信息(如文本等形式),该描述信息中包含内容标识、发布时刻緩存起始点,或者还包含緩存时长。步骤S302:S1向其归属的Peer节点Ps1发送包含所述描述信息和动态资源标识的第二资源发布;肖,&;该第二资源发布消息为普通的发布消息,如Set消息等。目的是S1通过描述信息的形式将所要发布的动态资源告诉Ps1;步骤S303:当Ps1收到S1的第二资源发布消息后,根据动态资源标识,结合收到的信息,添加系统时间后,生成key/value形式的静态信息,并生成第一资源发布消息;步骤S304:Ps1向网络发布包含key/value形式的描述信息和动态资源标识的第一资源发布消息('如P2P网络中的Put消息);根据特定的P2P规则,将发布消息路由到负责存储该key/value的Root节点上;步骤S305:Root节点将key/value保存到动态资源索引表中,同时使用动态资源标识标识该key/value;(此步骤同实施例二中步骤S204)步骤S306:当Root节点将该描述信息保存完毕后,向Ps1返回发布成功消息;步骤S307:Ps1向S1返回发布成功消息;步骤S308:当Client节点C1请求动态资源(如《功夫》的第5分钟开始的视频)时,S1将所要请求的资源表示为描述信息;该描述信息中包含内容标'识、点纟番时间点;步骤S309:C1向其归属的Peer节点Pc1发送包含描述信息和动态资源标识的第二资源请求消息;该第二资源请求消息为普通的请求消息,如Request消息等。该请求消息的目的是C1通过描述信息的形式将所要请求的资源的内容和状态告诉Pc1。步骤S310:Pc1收到C1的第二资源请求消息后,添加上系统时间,生成key/value形式的描述信息,并生成第一资源请求消息;(同步骤S303)步骤S311:Pc1向网络发送包含key/value形式的描述信息和动态资源标识的第一资源请求消息(如P2P网络中的Get消息),将发布消息路由到负责存储该key/value的Root节点上;步骤S312:Root节点根据消息中的动态资源标识和key/value,在本地Key/Value表中查找可提供该描述信息的服务节点,返回给Pc1响应消息;(同实施例二步骤S211)步骤S313:Pc1摔到反馈消息后,再返回给C1;步骤S314:C1与服务节点S1建立连接,请求获取动态资源;步骤S315:获取所请求的动态资源。实施例四本发明还适用于非结构化P2POverlay。图13所示,为非结构化P2POverlay,整个P2P网络是一个二层结构,由普通节点(CommonNode,CN)和超级节点(SuperNode,SN)组成;一个超级节点管理多个普通节点,各超级节点之间通过Flooding或Gossip消息构成完全的对等关系;每个超级节点上保存其所有普通节点的内容索引信息。非结构化P2POverlay中,节点要发布或请求动态资源,首先要求网络中所有超级节点SN同步系统时钟,普通节点CN不要求;此外,需要扩展一个动态资源标识,用于表示发布或^"求是动态资源。具体流程如图14所示步骤S401:当Source节点(普通节点或超级节点)要发布动态资源时,将所要发布的动态资源表示为有唯一索引的描述信息(如key/value);该描述信息中包含内容标识、系统时间和发布时刻緩存起始点;步骤S402:将描述信息(如key/value形式的静态信息)通过资源发布消息保存到Source节点所归属的超级节点(若Source节点是超级节点,则为其本身)的动态资源索引表中;同时保存发布时刻的系统时间到索引表项中;步骤S403:在内容索引表中,标识该描述信息;步骤S404:请求者将要请求的资源表示为有唯一索引的描述信息(如key/value形式的静态信息);该描述信息中包含内容标识、系统时间和点播时间点;步骤S405:请求者向所归属的超级节点(若Requester点是超级节点,则为其本身)SN—Req发起资源请求消息,消息中携带该描述信息;步骤S406:SN—Req收到该请求消息后,首先查找本地的内容索引表;步骤S407:有,则向请求者返回响应;步骤S408:没有,则向网络中的其他超级节点SN(s)发送资源请求消息,消息中携带动态资源标识、描述信息和系统时间;步骤S409:其他超级节点SN(s)收到该资源请求消息后,查找内容索引表,如果找到可提供服务的服务节点,则向SNLReq返回响应;SN—Req再返回给请求者。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完^,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ReadonlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。权利要求1、一种对等网络资源发布的方法,其特征在于,包括生成第一资源发布消息,所述第一资源发布消息中包含动态资源标识、内容标识、系统时间和发布时刻缓存起始点;向网络发送所述第一资源发布消息发布动态资源。2、如权利要求1所述的方法,其特征在于,所述第一资源发布消息中还包含緩存时长。3、如权利要求1或2所述的方法,其特征在于,所述生成第一资源发布消息具体为.生成包含所述内容标识、系统时间和发布时刻緩存起始点,或者还包括緩存时长的静态信息形式的第一资源发布消息。4、如权利要求1所述的方法,其特征在于,所述生成第一资源发布消息具体包括当客户端需要发布动态资源时,接收来自客户端的第二资源发布消息后,当所述第二资源发布消息包含内容标识、客户端本地时间和发布时刻緩存起始点,或者还包含緩存时长时,将所述第二资源发布消息中的客户端本地时间更新为系统时间后生成第一资源发布消息;或者,当所述第二资源发布消息中包含内容标识和发布时刻緩存起始点,或者还包含緩存时长时;在所述第二资源发布消息中添加系统时间后生成第一资源发布消息;或者,.当本地需要发布动态资源时,根据本地所要发布的动态资源生成第一资源发布消息,所述第一资源发布消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点,或者还包括緩存时长。5、如权利要求1或4所述的方法,其特征在于,所述向网络发送携带动态资源标识的第一资源发布消息发布动态资源具体包括根据对等网络规则将所述资源发布消息路由到根节点,所述根节点为负责存储所述第一资源发布消息中发布的动态资源的信息的对等节点。6、一种对等网络资'源发布装置,其特征在于,包括资源发布消息生成模块用于生成第一资源发布消息,该消息中包含动态资源标识、内容标识、,系统时间和发布时刻緩存起始点,或者还包括緩存时长;资源发布消息发送模块,用于向网络发送所述第一资源发布消息。7、如权利要求6所述的装置,其特征在于,所述资源发布消息生成模块具体包括接收客户发布信息模块用于接收来自客户端的第二资源发布消息;系统时间处理模块当所述接收客户发布信息模块接收的所述第二资源发布消息中包括动态资源标识、内容标识、客户端本地时间和发布时刻緩存起始点,或者还包括緩存时长时时,用于将所述第二资源发布消息中的客户端本地时间更新为系统时间后生成第一资源发布消息;当所述接收客户发布信息模块接收的所述第二资源发布消息中包括动态资源标识、内容标识和发布时刻緩存起始点,或者还包括緩存时长时,用于在所述第二资源发布消息中中添加系统时间,生成第一资源发布消息;和/或,资源发布消息生成子模块用于根据本地所要发布的动态资源生成携带动态资源标识的第一资源发布消息,该消息中包含动态资源标识、内容标识、系统时间和发布时刻緩存起始点,或者还包括緩存时长。8、如权利要求6所述的装置,其特征在于,所述资源发布消息发送模块包括发布消息路由模块用于把所述第一资源发布消息路由到根节点,所述根节点为负责存储所述第一资源发布消息中发布的动态资源的信息的对等节点。9、一种对等网络资源请求的方法,其特征在于,包括生成第一资源请求消息,所述第"资源请求消息包含动态资源标识、内容标识、系统时间和点播时间点;.向网络发送所述第一资源请求消息请求动态资源;接收到所述网络的响应消息,所述响应消息中包含提供所述动态资源的服务节点信息;与所述服务节点建立连接,请求获取所述动态资源。10、如权利要求9所述的方法,其特征在于,所述生成第一资源请求消息包括当本地需要请求所述动态资源时,根据需要请求的动态资源生成所述第一资源请求消息;当客户端需要请求所述动态资源时,接收来自所述客户端的第二资源请求消息,所述消息包含动态资源标识、内容标识、客户端本地时间和点播时间点,将所述第二资源请求消息中的客户端本地时间更新为系统时间后生成所述第一资源请求消息;或者,接收来自客户端的请求消息,所述消息包含动态资源标识、内容标识和点播时间点,将所述第二资源请求消息中添加系统时间后,生成第一资源请求消息,发布到所述网络上。11、如权利要求9所述的方法,其特征在于,所述向网络发送所述第一资源请求消息具体包括.根据对等网络规则将所述第一资源请求消息路由到根节点,所述根节点为存储所述动态资源的信息的对等节点。12、一种对等网络资源请求装置,其特征在于,包括.请求消息生成模块,用于生成第一资源请求消息,所述第一资源请求消息包含动态资源标识、内容标识、系统时间和点播时间点;请求消息发送模块,用于向网络发送所述第一资源请求消息;接收请求响应模块用于接收所述网络的响应消息,所述响应消息中包含提供所缘动态资源的服务节点信息;连接建立模块用于与所述服务节点建立连無,请求获取所述动态资源;资源获取模块用于从所述服务节点获取所述动态资源。13、如权利要求12所述的装置,其特征在于,所述请求消息生成模块具体包括接收客户请求信息模块用于接收来自客户端的第二资源请求消息;系统时间处理模块当所述第二资源请求消息中包含动态资源标i只、内容标识、客户端本地时间和点播时间点时,用于将所述第二资源请求消息中的客户端本地时间更新为系统时间后生成所述第一资源请求消息;或者,当所述第二资源请求消息中包含动态资源标识、内容标识和点播时间点时,在.所述第二资源请求消息中添加系统时间生成第一资源发布消息;和/或,请求消息生成子模块用于当本地需要请求所述动态资源时,根据需要请求的动态资源生成所述第———资源请求消息。14、如权利要求12所述的装置,其特征在于,所述请求消息发送模块具体包括请求消息路由模块用于将所述第一资源请求消息路由到根节点,所述根节点为存储提供所述动态资.源的服务节点信息的对等节点。.15、一种对等网络资源共享的方法,其特征在于,包括第一对等节点接收来自请求节点的请求消息请求动态资源,该请求消息中包含动态资源标识、内容标识.、系统时间和点播时间点;第一对等节点根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;第一对等节点向所述请求节点发送请求响应消息,所述响应消息中包含所述服务节点信息。16、如权利要求15所述的方法,其特征在于,所述接收来自请求节点的携带动态资源标识的请求消息之前,该方法还包括接收来自所述服务节点的携带动态资源标识的资源发布消息,该资源发布消息中包含内容标识、系统时间和发布时刻緩存起始点;或者还包含缓存时长;保存所述资源发布消息中的所述动态资源的信息。17、如权利要求15所述的方法,其特征在于,所述第一对等节点根据所述请求消息中的内容获得提供所述动态资源的服务节点信息具体包括根据所述请求消息中的内容在本地存储的动态资源索引表中查找,当查找到时,获得与所述请求消息对应的所述服务节点信息。'18、如权利要求17所述的方法,其特征在于,当所述第一对等节点为超级节点时,所述第一对等节点根据所述请求消息中的内容获得提供所述动:态资源的服务节点信息还包括当根才居所述请求消息中的内容在本地存储的动态资源索引表中没有查找到时,向网络中的其他超级节点发送资源请求消息,所述消息中携带动态资源标识、内容标识、系统时间和点播'时间点,接收所述其他超级节点返回的所述服务节点信息19、一种对等网络资源共享装置,其特征在于,包括消息接收模块,用于接收来自请求节点的携带动态资源标识的请求消息请求动态资源,该请求消息中包含内容标识、系统时间和点播时间点。服务节点荻取模块,用于根据所述请求消息中的内容获得提供所述动态资源的服务节点信息;消息发送模块用于发送请求响应消息,所述响应消息中,包含所述服务节点信息。20、如权利要求19所述的装置,其特征在于,所述装置还包括动态资源存储模块,用于接收所述服务节点发布的携带动态资源标识的资源发布消息,所述消息中包含内容标识,系统时间和发布时刻緩存起始点,并保存在动态资源索引表中,用动态资源标识来标识该内容。21、如权利要求19所述的装置,其特征在于,所述服务节点获取模块还包括请求消息查询模块用于根据所述请求消息中的内容在本地存储的动态资源索引表中查找,当查找到时,获得与所述请求消息对应的所述服务节点信息;还用于当本地查找不到时,生成向其他的超级节点发送查询所述服务节点的请求消息;,超级节点通信模块用于将所述请求发送给其他超级节点,并接收其他超级节点返回的所述服务节点信息。22、一种对等网络资源共享的系统,其特征在于,包括第一对等节点,用于发送携带动态资源标识的第一资源发布;肖息发布动态资源,该资源发布消息中包含内容标识、系统时间和发布时刻緩存起始点;第二对等节点,用于接收所述第一资源发布消息,并保存;第三对等节点,用于发送携带动态资源标识的第一资源请求〉'肖,1请求所述第一对等节点发布的动态资源,,该请求消息中包含内容标识、系统时间和点一番'时间点;所述第二对等节点接收来自所述第三对等节点的第一资源请求消息,根据所述第一资源请求消息获得提供所述动态资源的第一对等节点信息,将所述第一对等节点信息发送给所述第三对等节点;所述第三对等节点与所述第一对等节点建i连接,获取所请求的动态资源。23、如权利要求22所述的系统,其特征在于,所述系统还包括发布客户端,所述发布客户端归属到所述第一对等节点上所述发布客户端向所述第一对等节点发送第二资源发布消息,所述第二资源发布消息中包含动态资源标识、内容标识、客户端本地时间和发布时刻緩存起始点,或者还包括緩存时长;'相应地,所述第一对等节点还用于将所述消息中的客户端本地时间更新为系统时间生成第一资源发布消息,发送所述第一资源发布消息;或者,所述发布客户端向所述第一对等节点发送第二资源发布消息,所述第二资源发布消息中包含动态资源标识、内容标识和发布时刻緩存起始点,或者还包含緩存时长;相应地,所述第一对等节点还用于在所述第二资源发布消息中添加系统时间生成第一资源发布消息,发送所述第一资源发布消息。24、如权利要求22所述的系统,其特征在于,所述系统还包括请求客户端,所述请求客户端归属到所述第三对等节点上所述请求客户端向所述第三对等节点发送第二资源请求消息,所述消息中包含动态资源标识、内容标识、客户端本地时间和点播时间点;相应地,所述第三对等节点还用于将所述第二资源请求消息中的客户端本地时间更新为系统时间生成所述第一资源请求消息;或者,所述请求客户端向所述第三对等节点发送第二资源请求消息,所述消息中包含动态资源标识、内容标识和点播时间点;相应地,所述第三对等节点还用于在所述第二资源请求消息中添加系统时间生成第一资源请求消自25、一种对等网络中客户端,其特征在于,包括发布消息生成模块生成携带动态资源标识的第二资源发布消息,所述消息中包含内容标识、发布时刻緩存起始点和/或客户端本地时间;发送模块用于向其所归属的对等节点发送所述第二资源发布消息。26、如权利要求25所述的客户端,其特征在于,所述客户端还包括请求消息生成模块,用于生成携带动态资源标识的第二资源请求消息,所述第二资源请求消息中包含、内容标识、点播时间点和/或客户端本地时间。全文摘要本发明公开了一种对等网络资源共享的方法,技术方案包括向网络发送携带动态资源标识的第一资源发布消息发布动态资源,所述资源发布消息中包含内容标识、系统时间和发布时刻缓存起始点。本发明还公开了一种对等网络资源共享的装置和系统。采用本发明所述方法解决了分片方式实现P2PVOD系统中信令处理开销大的问题。文档编号H04L12/56GK101399776SQ200810223979公开日2009年4月1日申请日期2008年10月13日优先权日2008年10月13日发明者晋李,董小青,磊韩申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1