CN101421993B - 节点设备、记录存储控制程序的记录介质和信息存储的方法 - Google Patents
节点设备、记录存储控制程序的记录介质和信息存储的方法 Download PDFInfo
- Publication number
- CN101421993B CN101421993B CN200780012893XA CN200780012893A CN101421993B CN 101421993 B CN101421993 B CN 101421993B CN 200780012893X A CN200780012893X A CN 200780012893XA CN 200780012893 A CN200780012893 A CN 200780012893A CN 101421993 B CN101421993 B CN 101421993B
- Authority
- CN
- China
- Prior art keywords
- information
- node device
- node
- stored
- link information
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2854—Wide area networks, e.g. public data networks
- H04L12/2856—Access arrangements, e.g. Internet access
- H04L12/2869—Operational details of access network equipments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1048—Departure or maintenance mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明旨在提供一种节点设备或类似设备,通过将当所述的节点设备参与到系统中时所使用的连接信息存储到硬盘或者类似的器件当中,可使所述的节点设备或类似设备在参与到系统中时能够获取最新的连接信息而不致把处理负担加载于某一具体的节点设备之上。本发明提供一种信息通信系统中的节点设备,所述的信息通信系统具有能够通过网络彼此通信的多个节点设备,在该信息通信系统中,由所述多个节点设备共享的公共信息可被存储起来,以便传播到多个节点设备。所述的节点设备包括:第一存储装置,是易失性的,用于存储与多个所述节点设备进行通信时所使用的连接信息,所述的连接信息包括能够指示一个或一个以上具体节点设备的节点信息;当参与到系统中时,将存储在第一存储装置中的连接信息存储到第二存储装置的装置;和当退出系统后再次参与到系统中时,用于将从存储在第二存储装置中的连接信息所包含的节点信息的节点设备所获得的连接信息存储到第一存储装置中的装置。
Description
技术领域
本发明涉及一种节点设备或类似设备的技术领域,该节点设备或类似设备包括在具有能够通过网络相互通信的多个节点设备的信息通信系统中,多个节点设备共享的多个公共信息存储在该信息通信系统中以便被传播到多个节点设备。
背景技术
近年来,各种诸如音乐和电影的内容在属于网络的节点设备中传输/接收的信息通信系统被积极地研究和发展,所述信息通信系统为,例如,P2P型信息通信系统,在该P2P型信息通信系统中内容传播到多个节点设备并通常被多个节点设备所使用。作为解决服务器集中访问和高管理成本之类问题的方法,P2P型系统正被予以关注,而这些问题是传统客户-服务器型模型的缺陷。
在对等信息通信系统中,例如,在通过使用分布式散表(下文称为DHT)逻辑构建的覆盖网络中,每个节点设备无法对所有参与覆盖网络的节点设备的连接信息(诸如目的地信息)进行识别,但是在其RAM(随机存取存储器)中,作为表信息,仅有作为从联络节点设备或类似设备中获得的节点设备的一部分的节点设备的的连接信息,节点设备在参与覆盖网络时首先访问联络节点设备。在查询数据或类似信息的时候,CPU(中央处理器)直接访问RAM查阅表信息。专利文件1和2公开了使用DHT的技术。
多块内容被存储以便被传播到系统中的节点设备。另外,节点设备中各个内容的位置的信息也作为高速缓存信息由节点设备传播和管理。
专利文献1:日本未经审查的专利申请公报第2003-99337号
专利文献2:日本未经审查的专利申请公报第2003-216521号
发明内容
本发明解决的问题
当参与这样的覆盖网络的节点设备从系统退出(关掉电源)时,存储在RAM中的用来与另一个节点设备通信的连接信息和类似信息丢失。
在再次参与覆盖网络的时候,节点设备不得不再次从联络节点设备获取连接信息。
然而,从局部中断或类似情况恢复过来之后,来自许多节点设备的访问立即集中于联络节点设备上,以致过度的处理负担置于联络节点设备上。随着参与系统的节点设备数目的增加,处理负担变得严重,不仅联络节点设备而且整个网络都有可能慢下来。
鉴于上述问题,提出了本发明。本发明的目的是提供一种节点设备、记录存储控制程序的记录介质和信息记录的方法,通过将节点设备参与系统时使用的连接信息存储到硬盘或类似装置中,即使在从系统退出以后连接信息并不被删除而被保留下来,基于包括在存储在硬盘等等中的连接信息内的节点信息,在没有将处理负担加于具体的节点设备的情况下,通过获取在再参与系统的时候使用的连接信息,上述信息记录的方法能够在参与系统的时候获取最新的连接信息。
用于解决所述问题的手段
为了解决该问题,本发明的技术特征1的发明涉及一种节点设备,该节点设备包括在信息通信系统中,该信息通信系统具有多个能够通过网络互相通信的节点设备,并且多块由节点设备共享的公共信息被存储在该信息通信系统中,以便于被传播到多个节点设备。
节点设备包括:
第一存储装置,该存储装置是易失性,用于存储在与节点设备通信的时候使用的连接信息,连接信息包括节点信息,节点信息表示一个或一个以上具体的节点设备;
第一存储控制装置,当节点设备本身参与到信息通信系统中时,第一存储器控制装置用于在预定时刻将存储在第一存储装置内的连接信息存储到第二存储装置中,第二存储装置是非易失性的;和
连接信息获取装置,当节点设备本身退出信息通信系统然后再次参与信息通信系统的时候,利用包括在存储在第二存储装置中的连接信息内的节点信息,连接信息获取装置用于获取将要存储在第一存储装置中的连接信息。
连接信息获取装置包括:
节点信息读取装置,用于读取包括在存储在第二存储装置中的连接信息内的节点信息,
参与通知装置,参与通知装置用于发送参与通知,参与通知基于所读取得节点信息通知参与信息通信系统的节点信息的节点设备,和
参与通知发送结果确定装置,用于确定参与通知的发送成功与否,
其中,当参与通知发送结果确定装置确定参与通知发送成功时,连接信息获取装置从参与通知的发送目的地的节点设备获取存储在该发送目的地的节点设备的连接信息;和
其中,节点设备包括第二存储控制装置,该第二存储控制装置用于将连接信息获取装置所获取的连接信息存储在第一存储装置中。
利用这种结构,每个参与到信息通信系统中的节点设备在参与到系统期间,将连接信息从诸如RAM的第一存储装置存储到第二存储装置,连接信息是在与另一个节点设备进行通信的时候所使用的。当节点设备退出信息通信系统然后再次参与系统的时候,基于包括在存储在第二存储装置中的连接信息内的节点信息,节点设备从参与系统的另一个节点设备获取将要存储在第一存储装置中的连接信息。因此,在没有过度的处理负担置于单个具体的节点设备上的情况下,参与系统的时候,能够获取最新的连接信息。
为了解决所述问题,技术特征2的发明涉及如技术特征1所述的节点设备,进一步包括:
节点信息有/无确定装置,用于在参与通知发送结果确定装置确定参与通知的发送失败时,确定存储在第二存储装置内的连接信息是否仍包含另一个节点信息,
其中,当所述节点信息有/无确定装置确定连接信息中没有其它的节点信息时,
参与通知装置,所述参与通知装置向参与管理节点设备发送所述参与通知,所述参与管理节点设备为包括在所述信息通信系统内的另一个节点设备,其用于管理参与所述信息通信系统,
连接信息接收装置从参与管理节点设备接收连接信息,连接信息包括至少一个或一个以上包括在信息通信系统内的节点设备的节点信息,
第二存储控制装置将从参与管理节点设备接收的连接信息存储到第一存储装置内,和
其中,在节点信息有/无确定装置确定另有一个节点信息仍然包含在连接信息中的情况下,
参与通知装置向与包含在连接信息内的另外一个节点信息相对应的节点设备发送参与通知。
利用这种结构,当节点设备退出系统然后再次参与系统的时候,为了接收连接信息,节点设备能够尝试向所有节点信息的节点设备发送参与通知,节点信息包括在存储在第二存储装置中的连接信息内的。即使在所有包括在连接信息内的节点信息的节点设备已经退出系统的情况下,能够从参与管理节点设备获得连接信息,参与管理节点设备控制对诸如用于联络的节点设备参与系统。
为了解决所述问题,技术特征3的发明涉及如技术特征1或技术特征2所述的节点设备,进一步包括:
第三存储控制装置,当节点设备本身从信息通信系统中退出然后再次参与到信息通信系统中时,第三存储控制装置用于将存储在第二存储装置中的连接信息存储到第一存储装置中;和
节点信息选择装置,用于从由第三存储控制装置从第二存储装置再次存储到第一存储装置的连接信息所包含的节点信息中选择任何节点信息。
其中,基于被选择的节点信息,参与通知装置向节点信息的节点设备发送参与通知。
因为存储在第二存储装置中的连接信息被临时存储在第一存储装置中,并且参与通知发送所至的节点设备被选择,所以参与到系统的工作能够顺利地执行。
为了解决所述问题,技术特征4的发明涉及如技术特征3所述的节点设备,进一步包括:
删除装置,用于在参与通知发送结果确定装置确定参与通知发送失败时,删除节点信息选择装置从存储在第一存储装置内的连接信息中所选择的节点信息,
其中,节点信息有/无确定装置确定节点信息是否仍然存在于存储在第一存储装置中的连接信息中,
其中,在节点信息有/无确定装置确定在连接信息中没有节点信息的情况下,
参与通知装置将参与通知发送给参与管理节点设备,
连接信息接收装置从参与管理节点设备接收信息通信系统中至少一个或一个以上节点设备的节点信息所产生的连接信息,
第二存储控制装置将从参与管理节点设备处接收到的连接信息存储到第一存储装置内,用以取代存储在第一存储装置内的连接信息,以及
其中,在节点信息有/无确定装置确定节点信息仍然存在于连接信息之中的情况下,
节点信息选择装置从包含在连接信息内的节点信息中挑选任何节点信息。
利用这种结构,当节点设备退出系统然后再次参与系统的时候,为了接收连接信息,节点设备能够尝试向包括在存储在第二存储装置中的连接信息内的节点信息的所有节点设备发送参与通知。即使在所有包括在连接信息内的节点信息的节点设备已经退出系统的情况下,能够从参与管理节点设备获得连接信息,参与管理节点设备控制对诸如用于联络的节点设备参与系统。
为了解决所述问题,技术特征5的发明涉及如技术特征1到4中任何一项所述的节点设备,进一步包括:
公共信息存储装置,用于存储公共信息;和
公开通知装置,用于向被第二存储控制装置存储在第一存储装置内的任一节点信息的节点设备发送公共信息的公开通知,以便存储在公共信息存储装置内的公共信息能够被包含在信息通信系统内的其它节点设备共享。
利用这种结构,参与到系统中之后,节点设备的公共信息能够与其它节点设备共享。
为了解决所述问题,技术特征6的发明涉及如技术特征1到5中任何一项所述的节点设备,
进一步包括第一存储时间确定装置,用于确定自第一存储控制装置将存储在第一存储装置内的连接信息存储到第二存储装置内至目前为止所经过的时间是否比第一预定存储时间更长,
其中,在第一存储时间确定装置确定经过的时间比第一预定存储时间更长的情况下,参与通知装置向参与管理节点设备发送参与通知。
利用这种结构,在存储在第二存储装置中的连接信息相对较旧的情况下,能够从管理节点设备获得连接信息,该管理节点设备控制诸如用于联络的节点设备的参与系统。
为了解决所述问题,技术特征7的发明涉及如技术特征1所述的节点设备,
进一步包括第二存储时间确定装置,用于确定自第一存储控制装置将存储在第一存储装置内的连接信息存储到第二存储装置内至目前为止所经过的时间是否比第二预定存储时间更长,
其中,在第二存储时间确定装置确定经过的时间短于第二预定存储时间的情况下,连接信息获取装置获取存储在第二存储装置内的连接信息,和
第二存储控制装置将由连接信息获取装置从第二存储装置获得的连接信息存储到第一存储装置内。
利用这种结构,当存储在第二存储装置中的连接信息会相对较新时,该连接信息能够在再参与到系统中后被使用。
为了解决所述问题,技术特征8的发明涉及如技术特征7所述的节点设备,进一步包括:
公共信息存储装置,用于存储公共信息;
公开通知装置,用于向被第二存储控制装置存储在第一存储装置内的任一节点信息的节点设备发送公共信息的公开通知,以便存储在公共信息存储装置内的公共信息能够被包含在信息通信系统内的其它节点设备共享;和
公开通知发送结果确定装置,用于确定公开通知的发送成功与否。
利用这种结构,在再参与系统之后利用存储在第二存储装置中的连接信息的情况下,能够确定连接信息是否是适当地被使用的信息。
为了解决所述问题,技术特征9的发明涉及如技术特征8所述的节点设备,
其中,连接信息获取装置包括:
参与通知装置,用于在公开通知发送结果确定装置确定公开通知发送失败的情况下,向包含在信息通信系统中的另外一个节点设备发送参与通知,报告向信息通信系统的参与,另外一个节点设备是用于管理向信息通信系统中参与的参与管理节点设备;和
连接信息接收装置,用于从参与管理节点设备接收连接信息,该连接信息包含信息通信系统所包含的至少一个所述节点设备的所述节点信息,和
其中,第二存储控制装置将从参与管理节点设备处接收到的连接信息存储到第一存储装置内。
利用这种结构,在再参与系统之后利用存储在第二存储装置连接信息的情况下,即使当公开通知的发送失败和连接信息不是被适当地使用的信息,最新的连接信息能够从诸如用于联络的节点设备的参与管理节点设备获得。
为了解决所述问题,技术特征10的发明涉及如技术特征1到9中任何一项所述的节点设备,
其中,第一存储装置存储多个公共信息中的指示节点设备位置的位置信息,节点设备存储将被该节点设备本身所管理的公共信息,第一存储装置还存储与由多个节点设备共享的多个公共信息有关的公共信息相关信息,
第一存储控制装置在预定时刻将存储在第一存储装置内的位置信息和公共信息相关信息存储到第二存储装置,并且
当节点设备自身从信息通信系统退出然后再次参与到信息通信系统中时,第二存储控制装置将存储在第二存储装置内的位置信息和公共信息相关信息再次存储到第一存储装置内。
利用这种结构,每个参与到信息通信系统中的节点设备在参与系统期间,将获取的高速缓存信息和目录信息从诸如RAM的第一存储装置存储到第二存储装置。当节点设备本身从系统退出然后再次参与到系统中时,节点设备获取存储在第二存储装置中的高速缓存信息和目录信息,高速缓存信息和目录信息被存储在第一存储装置中并且能被使用。因此,节点设备能够顺利地参与到系统之中。
为了解决所述问题,技术特征11的发明涉及如技术特征1到10中任何一项所述的节点设备,
其中,所述预定时刻至少是以下任何一个:
每当预定时间度过时;
每当存储在第一存储装置内的连接信息、位置信息或公共信息相关信息被更新时,所述的更新与向/从包含在信息通信系统内的其他节点设备发送/接收信息有关;以及
当节点设备自身的电源被关闭时。
利用这种结构,当参与到系统中的时候,节点设备能够可靠地将连接信息等等存储到第二存储装置中。
为了解决所述问题,技术特征12的发明涉及如技术特征1到11中任何一项所述的节点设备,
其中,节点设备在信息通信系统中通过覆盖网络相连接,并且
包括在连接信息内的节点信息包括节点ID和节点设备的目的地信息,该节点ID用于唯一地识别在覆盖网络的识别信息空间中的节点信息的节点设备。
利用这种结构,因为节点信息被存储,该节点信息包括另一个节点设备的节点ID和与另一个节点设备进行通信所必须的目的地信息,所以,节点设备能够顺利地再参与到对等信息通信系统中。
为了解决所述问题,技术特征13的发明涉及如技术特征1到12中任何一项所述的节点设备,
其中,所述第一存储装置是设置在所述节点设备中的RAM,
所述第二存储装置为硬盘、闪存、EEPROM或带有备用电源的半导体存储器。
利用这种结构,即使当第二存储装置为任何的硬盘、闪速存储器、EEPROM和带有备用电源的半导体存储器时,在节点设备参与到系统中的时候,在与另一个节点设备进行通信的时候使用的连接信息能够被从诸如RAM的第一存储装置存储到第二存储装置中。在再参与到系统中的时候,最新的连接信息能够基于存储在第二存储装置中的连接信息被获取。
为了解决这种问题,技术特征14的发明涉及一种记录存储器控制程序的记录介质,记录存储器控制程序用于使电脑起如技术特征1到13的任何一项所述的节点设备的作用。
为了解决这种问题,技术特征15的发明涉及一种信息通信系统中的信息存储方法,信息通信系统具有能够通过网络相互通信的多个节点设备,在该系统中,由多个节点设备共享的多个公共信息可被存储起来,以便传播到多个节点设备,其特征在于,
信息存储方法包括:
连接信息的存储过程,即将与节点设备进行通信时所使用的连接信息存储在易失性的第一存储装置中,连接信息包括能够指示一个或一个以上具体节点设备的节点信息;
第一存储控制过程,即在节点设备自身参与到信息通信系统中的预定时刻,将存储在第一存储装置中的连接信息存储到非易失性的第二存储装置中;和
连接信息获取过程,即当节点设备自身从信息通信系统退出然后再次参与到信息通信系统时,利用存储在第二存储装置中的连接信息所包含的节点信息获取即将被存储在所述第一存储装置内的连接信息,
连接信息获取过程包括:
读取存储在第二存储装置中的连接信息所包含的节点信息的过程,
发送参与通知的过程,即基于被读取的节点信息,将参与信息通信系统的节点信息通知节点设备,和
参与通知发送结果确定过程,用以确定参与通知的发送成功与否,
其中,当在参与通知发送结果确定过程中确定参与通知已发送成功时,连接信息获取过程从参与通知的发送目的地的节点设备获取存储在该发送目的地的节点设备的连接信息;并且
其中,信息存储方法包括第二存储控制过程,用以将获取的连接信息存储到第一存储装置中。
本发明的效果
根据本发明,参与信息通信系统中的每个节点设备将连接信息从诸如RAM的第一存储装置存储到第二存储装置,该连接信息--诸如由节点信息构成的表信息--是在与另一个节点设备进行通信的时候所使用的。当节点设备退出信息通信系统然后再次参与信息通信系统的时候,利用包括存储利用第二存储装置中的连接信息内的节点信息,节点设备从参与系统的另一个节点设备获取将要存储利用第一存储装置中的连接信息。因此,在没有过度的处理负担置于单个具体的节点设备上的情况下,参与系统的时候,能够获取最新的连接信息。
附图说明
[图1]显示作为一个实施例的在内容发布系统中的每个节点设备的连接模式的实例的示意图。
[图2]显示节点设备1的概要结构实例的框图。
[图3A到3C]显示由DHT产生的路由表状态的实例的示意图。
[图4A到4D]图4A显示在层1的表的实例。图4B显示在层2的表的实例,图4C显示在层3的表的实例。图4D显示完整的路由表的实例。
[图5A到5D]图5A和5D是显示在DHT的ID空间中节点设备1将要参与内容发布系统S的状态的示意图。图5B和5C是显示在DHT的ID空间中节点设备1被参与内容发布系统S的状态。
[图6]显示DHT的ID空间中内容ID和节点ID的实例的示意图。
[图7]显示在DHT的ID空间中内容被公开的状态和内容被检索的状态的示意图。
[图8]显示节点设备1中的主过程的实例的流程图。
[图9]显示节点设备1中的“表信息读取处理过程”的实例的流程图。
[图10A和10B]图10A是显示节点设备1中的“高速缓存信息读取处理过程”的实例的流程图。图10B是显示节点设备1中“目录信息读取处理过程”的实例的流程图。
[图11]显示节点设备1中“将存储在RAM中的表信息、高速缓存信息和目录信息存储到硬盘存储单元22的处理过程”的实例的流程图。
[图12]显示节点设备1中“将存储在RAM中的表信息、高速缓存信息和目录信息存储到硬盘存储单元22的处理过程”的实例的流程图。
附图标记的说明
1 节点设备
1CC 用于联络的节点设备
3 IX
4 ISP
5 DSL供应商的装置
6 FTTH(入户光纤)供应商的装置
7 通信线路
8 网络
9 覆盖网络
11 控制器
12 存储器
13 缓冲存储器
14 解码器
15 视频处理器
16 显示单元
17 声音处理器
18 扬声器
20 通信单元
21 输入单元
22 硬盘存储器
23 总线
S 内容发布系统
具体实施方式
1.内容发布系统和类似系统的结构
首先,参照图1说明作为信息通信系统的内容发布系统的示意结构,在信息通信系统中信息被多个节点设备共享。
图1是显示作为实施例的在内容发布系统中的每个节点设备的连接模式的实例的示意图。
如图1下框501所示,诸如因特网的网络8(现实世界的网络)由作为中继设备的IX(因特网交换机)3、ISP(因特网服务供应商)4、DSL(数字用户线路)供应商的装置5、FTTH(入户光纤)供应商的装置6、通信线路(例如,电话线、光缆等等)7等构成。
对于彼此通过网络8相连接的每个节点设备1a、1b、1c…1x、1y、1z…来说,包括IP(因特网协议)地址以及端口号和节点ID(标识符)的目的地信息被作为节点信息被分配,其中,节点ID作为用于无条件识别节点设备的唯一值。相同的节点ID不分配给多个节点设备。在下文中,在涉及任何节点设备1a、1b、1c…1x、1y、1z…的情况下,为了方便起见,上述节点被称为节点设备1。
在内容发布系统S中,当节点设备1访问另一个节点设备的信息时,节点设备1必须知道另一个节点设备1的诸如IP地址的目的地信息,该另一个节点设备1具有该信息。
作为这样的系统的实例,如图1上框500所示覆盖网络9通过DHT的使用算法来构造。具体地,覆盖网络9表示这样一种网络,在该网络中,构建通过使用现存的网络8形成的虚拟连接。实施例的内容发布系统S由参与覆盖网络9的节点设备1构成。
它通过节点ID足以无条件地识别一个设备。例如:通过用共同的散列函数(散列算法)散列序列号、机器名等等获取的散列值被用作GUID(全局唯一标识符),其中,序列号、机器名或类似信息是出厂时预先分配的。散列值能够被用作节点设备1的节点ID。
节点ID的比特数必须足够大到能够容纳内容发布系统S中的操作节点设备的最大数目。例如:当比特数为128时,2^128(几乎为340×10^36)个节点设备能够被操作。可以预料,SHA-1(安全散列算法1)(产生的位数为160比特)和MD5(消息摘要5)(产生的位数为120比特)作为已知的散列函数被用于实际中。当序列号或机器码彼此不相同时,用共同的散列函数获取的节点ID具有相同值的可能性是极低的。因为散列函数是已知的,所以不说明其细节。
1-2.节点设备的结构和功能
现在说明节点设备1的结构和功能。图2是显示节点设备1的概要结构实例的框图,如该图所示,本实施例的节点设备包括:控制器11,如计算机,由具有计算功能的CPU、工作RAM(随机存取存储器)(第一存储装置的实例)和各种数据和程序(包括本发明的存储控制程序)构成,工作RAM用于存储表信息(连接信息的实例)、高速缓存信息(位置信息的实例)、目录信息(公共信息相关信息的实例)和类似信息;存储器12,由HDD等等构成,用于存储程序(还有其中没有存储内容数据的节点设备1);缓冲存储器13,用于临时存储接收到的内容数据;解码器14,用于解码(解压缩、解密或类似信息)包括在内容数据中的编码视频数据(视频信息)和音频数据(声音信息)和类似信息;视频处理器15,用于在解码的视频数据和类似信息上进行预定的绘图过程并将结果数据作为视频信号输出;显示单元16,诸如CRT或液晶显示器,基于从视频处理器15输出的视频信号,用于显示视频图像的显示单元16;声音处理器17,用于将解码的音频数据数模(D/A)转换为模拟音频信号,由放大器放大模拟声频信号,并输出放大的信号;扬声器18,用于将从声音处理器17输出的音频信号作为声波输出;通信单元20,用于对通过网络8发往/来自另一个节点1的信息进行通信控制;作为输入装置的输入单元(比如键盘、鼠标和操作面板)21,用于接收用户指令并根据该指令向控制器11提供指令信号;和硬盘存储器22(第二存储装置的实例),作为可再写非易失性存储装置,用于存储内容数据、表信息、高速缓存信息、目录信息和类似信息。控制器11、存储器12、缓冲存储器13、解码器14、通信单元20,和硬盘存储器22通过总线23彼此相连接。
当控制器11中的CPU执行记录在存储器12等等上的各种程序时,控制器11以集中方式控制本实施例中的节点设备1的整体操作,并与上述组件协同,起第一存储装置、第二存储装置、第一存储控制装置、第二存储控制装置、第三存储器控制装置、连接信息获取装置、节点信息读取装置、参与通知装置、参与通知发送结果确定装置、连接信息接收装置、节点信息有/无确定装置、节点信息选择装置、删除装置、公共信息存储装置、公开通知装置、第一存储时间确定装置、第二存储时间确定装置和公开通知发送结果确定装置的作用。
用于联络的节点设备1CC为本发明参与管理节点设备的实例,它是第一次参与内容发布系统S的节点设备访问的节点设备。节点设备1CC从正要参与系统但还未曾参与过系统的节点设备1接收参与消息并将存储于其本身中的表信息发送到节点设备1。
本实施例的使用分布式散表(在下文中称为DHT)的算法和内容发布的具体机理将在下文说明。在说明期间,将详细说明存储在控制器11的作为本发明的第一存储装置的实例的RAM和作为第二存储装置的实例的硬盘存储器22中的表信息和类似信息。
1-3.DHT的概要
下面说明根据本实施例使用分布式散表(在下文称为DHT)的算法。
本实施例基于使用DHT的算法构造的覆盖网络9。设置在覆盖网络9(图1上框500)上的节点设备1为参与覆盖网络9的节点设备1,换句话说,节点设备1参与内容发布系统S。
为了参与这样的内容发布系统S,没有参与系统的节点设备1必须获取被用来与另一个节点设备通信的表信息(连接信息的实例),该表信息为被参与系统的节点设备(包括用于联络的节点设备1CC)所保存的最新的表信息。根据本发明,当节点设备1参与内容发布系统S时,节点设备1将存储在控制器11的RAM中的表信息存储到硬盘存储器22内,再次参与系统的时候,基于包括在存储在硬盘存储器22中的表信息中的节点信息,获取最新的表信息。具体地,参与系统的请求被发送给与包括在存储在硬盘存储器22内的表信息中的节点信息有关的节点设备,并拷贝该表信息。利用这种结构,在没有将处理负载加给用于联络的固定节点联络1CC的情况下,最新的表信息被获取。
参照图3A到3C和图4A到4D,将说明表信息产生方法。因为表信息是当其在多个节点设备间传递时被产生(更新)的,因此它也被称为路由表。
图3A到3C是显示由DHT产生的路由表的状态的实例的示意图。图4A到4D是显示路由表(表信息)的实例的示意图。
首先,如图4A所示,ID空间被分成一些区域。为了产生路由表,该区域是通过划分ID空间被获取的。实际上,ID空间经常被分成大约16个区域。为了说明的简单性,该ID空间被分成4个区域,并且ID用位长为16比特的四进制数表示。节点设备1N的节点ID被设为“10230210”,产生节点设备1N的路由表的实例将作说明。
层1的路由
首先,当ID空间被分成四个区域并且每个区域用四进制数表示的时候,ID空间被分成四个区域,四个区域的最高位彼此不同,分别为“0XXXXXXX”、″1XXXXXXX″、″2XXXXXXX″和″3XXXXXXX″(X表示从0到3的自然数,下面的说明也一样)。一确定的节点设备(在下文中称为节点设备1N)的节点ID为“10230210”,以便节点设备1N处于示意图中左下区域“1XXXXXXX”。节点设备1N适当地选择处于除了其所在的区域(也就是,区域“1XXXXXXX”)外的节点设备1,并且将诸如节点ID的IP地址等目的地信息存储到层1的表中。图4A显示层1的表的实例。因为第二表示节点设备1N本身,所以,不必存储诸如IP地址的目的地信息。
层2的路由
其次,如图3B所示,在路由划分的四个区域中的节点设备1N所在的区域进一步地被分成四个区域“10XXXXXX”、“11XXXXXX”、“12XXXXXX”、和“13XXXXXX”。以类似于上述的方式,节点设备1适当地选择除节点设备1N所在的区域之外的区域,诸如节点ID的IP地址的目的地信息被存储到层2的表内。图4B显示层2的表的实例。因为第一列显示节点设备1N本身,所以,不必存储诸如IP地址的目的地信息。
层3的路由
其次,如图3C所示,在路由划分的四个区域中的节点设备1N所在的区域进一步地被分成四个区域“100XXXXX”、“101XXXXX”、“102XXXXX”和“103XXXXX”。以类似于上述的方式,节点设备1适当地选择除节点设备1N所在的区域之外的区域,诸如节点ID的IP地址的目的地信息被存储到层1的表内。图4B显示层2的表的实例。因为第三列显示节点设备1N本身,所以,不必存储诸如IP地址的目的地信息。既然没有节点设备处于第二和第四列中的区域,第二和第四列为空。
通过在层4到层8类似地产生路由表,如图4D所示,所有16比特的ID都能够被包括。在表中,层越高,更多的空白变得显著。
如上所述,每个节点设备1存储诸如另一个节点设备1的IP地址的目的地信息和节点ID的区域—也就是DHT中的层和所述的列,以便彼此相联系。具体地说,各个节点设备1存储控制器11的RAM中的路由表(在下文中,称为表信息)。在路由表中,诸如节点的IP地址的目的地信息属于任何的多个被划分的区域,该目的地信息被指定作为与所述区域相联系的层。节点设备1所在的区域进一步地被分成多个区域。诸如节点设备1的IP地址的目的地信息属于任何的多个被划分的区域,该目的地信息被指定作为下一层的地址。
实际上,当没有参与内容发布系统S的节点设备1参与到内容发布系统S并获取如上所述的表信息时,首先,如果节点设备1从未参与系统并且将要第一次参与系统(第一次参与),那么节点设备1向用于联络的节点设备1CC发送“参与消息”(参与通知的实例),并且从用于联络的节点设备1CC获取表信息(参照图5A)。
当参与系统的时候,节点设备1将从用于联络的节点设备1CC获取的表信息存储到控制器11的RAM中。当在内容检索或内容公开期间传递消息的时候,已经存储的表信息被使用并且动态地重写入最新的信息(参照图5B)。具体地,在信息传送,如内容发布,或类似处理过程中,在节点设备1知道另一个节点设备1的存在的时候,该节点设备1确定表的列,该列与另一个节点设备1的节点ID相配,然后该节点设备1另外写入(更新)表的数据。在节点设备1知道另一个节点设备退出的时候,节点设备1从表中删除另一个节点设备的节点ID。
当参与内容发布系统S时,节点设备1将存储在控制器11的RAM中的表信息存储到硬盘存储器22内(参照图5C)。当节点设备1从系统退出然后再次参与系统时,节点设备1选择非用于联络的节点设备1CC的节点的信息,“参与消息”从写入在存储在硬盘存储器22中的表信息的节点信息发送到该节点。具体地,节点设备1将临时存储在硬盘存储器22中的表信息传递(并存储)到控制器11的工作RAM中(参照图5D的箭头),从表信息选择节点设备,根据利用被选的节点信息的节点ID作为键的路由,向被选的节点设备1发送“参与消息”(包括节点设备1本身的节点信息和被选的节点信息的节点ID),并且接收表信息(参照图5D)。接收到的表信息,被存储在控制器11的RAM中,并被用来向另一个节点设备传递信息。
因为表信息总是通过发送/接收诸如消息和内容的分布等信息动态地重写,所以,通过从目前参与系统的节点设备1接收的表信息,能够获取最新的表信息,该最新的表信息包括相对少量的已经退出系统的节点设备的节点信息,也包括相对大量的正在参与系统的节点设备的节点信息。特别是,在再参与系统的情况下,处理负载不会被加到用于联络的节点设备1CC上。因此能够提供更方便的系统。
当节点设备1基于节点设备过去参与系统所使用的表信息(表信息存储在硬盘存储器22中)选择目前参与系统的节点设备1时,节点设备1选择节点标识符相对远离该节点设备1本身的节点ID的节点设备1。利用这种结构,包括节点设备1本身的节点信息的“参与消息”能够被传递到相对较多的节点设备1,并且其本身的存在能够被通知给相对较多的节点设备。
1-4.内容的存储和发布
现在说明被节点设备1共享的内容的存储和该内容的发布。在多个参与内容发布系统S的节点设备1中,内容的数据(诸如电影和音乐)作为共享信息被存储以便于传播,共享信息被从一个节点设备1发布到另一个节点设备1。唯一的内容ID赋予每个内容块。内容ID具有类似于节点ID的长度(例如:128比特)。内容ID通过服务器100确定并被发布给各个内容块,服务器100用于向内容发布系统S提供内容并把该内容注册到节点设备1。
图6显示各个由32比特构成的节点ID和内容ID被分配并被显示在ID空间上的状态。示意图中的实心圆表示节点ID,实心菱形表示内容ID。假设ID的数目在逆时针方向上递增。
基于内容ID和节点ID是否具有“预定关系”,如图6所示的ID空间中的节点设备1和将被节点设备1控制的内容被确定。“预定关系”是在预定的规则下被确定的。本实施例使用“控制具有确定的内容ID的内容的节点设备是节点设备1,节点设备1具有最靠近确定的内容ID的节点ID”的规则。也就是说,节点设备具有最靠近内容ID(例如:ID的较高的位最相匹配)的节点ID,并且其值等于或小于内容ID的值,该节点设备控制存储内容的节点设备1的位置信息。
例如:“预定关系”被限定为节点ID的值不超过内容ID的值,并且内容ID和节点ID之间的差异是最小的。在示意图所示的实例中,基于定义,内容IDa被具有节点IDa的节点设备控制,内容IDb被具有节点IDb的节点设备控制。只要把内容发布到节点设备1的控制一致,任何定义都可以被使用。
象在内容IDc和IDd被具有节点IDc的节点设备1控制的情况一样,确定的节点设备可以控制多块不同的内容数据。“控制”并不意味着内容的存储/保持,而是意味着“知道节点设备1存储着内容的数据(内容数据)”,也就是说,诸如节点设备的IP地址的目的地信息的存储器(高速缓存)保存着该内容。
表1显示被节点设备1存储到控制器11的RAM中的高速缓存信息的实例。
表1
内容ID | 位置信息 |
31330012 | IP地址1 |
12013010 | IP地址2 |
31001211 | IP地址3 |
22123122 | IP地址4 |
诸如IP地址(内容的位置信息)等的目的地信息包括在“公开消息”(公开通知的实例)内,当节点设备保存内容公开新的内容时,“公开消息”被发送,节点设备1接收并获取目的地信息,以便新的内容能够被参与内容发布系统S的其它的节点设备看到,然后将它写入存储在控制器11的RAM内的高速缓存信息中(表1)。在本实施例中,不但其节点ID与内容ID具有预定关系的节点设备1将内容的位置信息作为高速缓存信息存储到控制器11的RAM内,而且在节点设备间传递“公开消息”的路径上的节点设备1也将内容的位置信息作为的高速缓存信息存储到控制器11的RAM内。
公开内容和将高速缓存信息存储到节点设备的控制器11的RAM中的处理过程将在下文说明。
1-5.内容的公开和内容的位置信息的存储
图7是显示使用DHT公开新的内容的状态的实例的示意图。
保存内容的节点设备从内容的标题或类似信息获取内容ID,并将“公开消息”发送给具有和内容ID相同的节点ID的节点设备(在该时间点,该节点设备实际是否存在是未知的)。
具有节点ID“12003030”的节点设备公开由其本身保存的具有内容ID“31330012”的内容的处理过程将被说明。
首先,节点设备1a参照存储在控制器11的RAM内的表信息(见图4D)中的层1的表,并将该“公开消息”发送给具有和内容ID“31330012”的区域相同的区域中的节点ID的节点设备。具体地说,因为处于“3XXXXXXX”的区域内,“公开消息”被传输到节点设备1b,该节点设备1b知道在属于区域“3XXXXXXX”的节点设备1之中的诸如IP地址的目的地信息(也就是说,其中诸如IP地址的目的地信息被存储在表信息中)。
在图7所示的实例中,具有诸如节点ID为“30100000”的节点设备1b的IP地址的目的地信息被存储在节点设备1a的表信息中,以便节点设备1a向具有节点ID的“30100000”的节点设备1b发送“公开消息”。
接收“公开消息”的节点设备1b参照表信息中层2的表,并将该“公开消息”传递给节点设备1c(节点ID“31012001”),其中,表信息被节点设备1b本身存储在控制器11的RAM内,节点设备1c知道在属于区域“31XXXXXX”的节点设备1之中的诸如IP地址的目的地信息。
如上所述,“公开消息”以从高位与内容ID的各位进行匹配的方式被传递,并最终到达节点设备1d。
“公开消息”被最终传递到的节点设备1d存储包括在“公开消息”内的内容ID和保持内容的节点设备1a的IP地址“IP地址1”,该IP地址“IP地址1”作为内容的位置信息。在本实施例中,节点设备1b和1c根据表信息从保存内容的节点设备1a传递(中继)“公开消息”,节点设备1b和1c也将包括在“公开消息”内的内容ID和保存内容的节点设备1a的IP地址“IP地址1”存储到高速缓存信息中,其中,IP地址“IP地址1”作为内容的位置信息,高速缓存信息存储在自身的控制器11的RAM内。
同样,“搜索消息”用于查询包括内容ID的内容的位置,当内容察看被请求时,根据使用包括在“搜索消息”中的内容ID作为键的路由,“搜索消息”在节点设备之中被传递。当“搜索消息”到达在其RAM中存储内容的高速缓存信息的节点设备时,节点设备从节点设备接收保存内容的节点设备的IP地址作为内容的位置信息,接收IP地址的节点设备访问保存内容的节点设备并请求发布。在图7所示的实例中,包括被检索内容的内容ID“31330012”的“搜索消息”,从节点设备1e发送,经过另一个节点设备,到达具有内容ID“31330012”位置信息的节点设备1c。节点设备1e从节点设备1c获取节点设备1a的“IP地址1”作为内容ID为“31330012”的内容的位置信息。根据IP地址1,节点设备1e请求节点设备1a发布内容,并从节点设备1a接收内容发布。
请求内容发布的节点设备1e,从具有内容的位置信息的节点设备1c接收内容的位置信息,并发送/接收信息。通过所述操作,节点设备1c和1e知道彼此的存在。在节点设备1e中,节点设备1c的节点信息(诸如IP地址和节点ID等的目的地信息)被加到存储在控制器11的RAM内的表信息。类似地,在节点设备1c中,如果节点设备1e的节点信息不在存储在控制器11的RAM内的表信息中,那么,节点设备1e的节点信息被加入。
保持内容的节点设备1a和请求内容发布的节点设备1e进行信息的发送/接收,也就是说,内容向/从彼此中发布,从而知道彼此的存在。在节点设备1a中,当节点设备1e的节点信息不在存储在控制器11的RAM内的表信息中,节点设备1e的节点信息被加入。同样,在节点设备1e中,类似地,当节点设备1a的节点信息不在存储在控制器11的RAM内的表信息中,节点设备1a的节点信息被加入。
在本实施例中,目录信息(公共信息相关信息的实例)也被存储在控制器11的RAM内。当内容发布被请求和内容被检索时,目录信息构成被引用的目录列表,通常被其它的节点设备1共用(共享)。在目录信息中,与与内容ID相关的内容的属性信息被写入。属性信息的实例为:内容名称(在内容是电影的情况下为电影标题,在内容是音乐块的情况下为音乐块标题,在内容是广播节目的情况下为程序标题)、风格(在内容是电影的情况下为动作、恐怖电影、喜剧电影、爱情故事和类似内容,在内容是音乐的情况下为摇滚、爵士、流行、经典和类似内容,在内容是广播节目的情况下为戏剧、运动、新闻、电影、音乐、动画、综艺和类似内容)、艺术家名(在内容是音乐的情况下为歌手、组合和类似内容)、演员(在内容是电影或广播节目的情况下为演员阵容)。本发明的申请人已经提出关于被其它节点设备1共用(共享)的目录信息的专利申请(日本专利申请号2006-109158和2006-109159)。因为在多个节点设备1之中共享目录信息的方法已在上述申请中详细说明,这里不再说明该方法。
2.节点设备的处理过程操作
接着,参照附图,说明每个节点设备的具体处理过程操作。
2-1.主过程
图8为显示节点设备1中的主过程的实例的流程图;所述过程在控制器11控制下被运行。当节点设备1的电源接通并且用户操作输入单元21指令参与到内容发布系统S时,处理过程开始。
首先,执行读取表信息的处理过程(步骤S1)、读取高速缓存信息(步骤S2)和读取目录信息的处理过程(步骤S3)。在每个读取处理过程中,如果节点设备1过去参与过内容发布系统S,那么,信息从硬盘存储22获得并被存储到控制器11的RAM内。稍后说明步骤S1到S3中的处理过程。
其次,确定电源是否关掉(步骤S4)。在电源没有关掉(步骤S4为否)的情况下,“另一个处理过程”被进行(步骤S5)。“另一个处理过程”为根据发自另一个节点设备1的“参与消息”发送节点设备1本身的表信息的处理过程、根据发自另一个节点设备1的“搜索消息”执行的内容检索处理过程(保存内容的节点设备的检索)、响应发自另一个节点设备1的内容发布请求进行的内容发布处理过程、传递各种消息的处理过程或类似处理过程。
控制器11起第一存储控制装置的作用,并执行将存储在RAM内的表信息、高速缓存信息和目录信息存储到硬盘存储器22内的处理过程(步骤S6)。程序移到步骤S4。
如此,处理过程在步骤S5和S6反复地进行,直到步骤S4中确定电源关闭。
步骤S1到S3为在参与内容发布系统S前执行的处理过程。步骤S4到S6为在参与内容发布系统S期间执行的处理过程。
2-2.读取各种信息的处理过程
将参照图9和10说明步骤S1到S3中运行的读取表信息、高速缓存信息、和目录信息的处理过程。
2-2-1.表信息读取处理过程
图9为显示步骤S1中运行的“表信息读取处理过程”的实例的流程图。
首先,确定表信息是否被存储在硬盘存储器22内(步骤S11)。在表信息没有存储在硬盘存储器22内的情况下,例如节点设备1过去从未参与内容发布系统S的情况和存储在硬盘存储器22的表信息被擦除的情况(步骤S11中为否),如图6A所示,“参与消息”被发给用于联络的节点设备1CC,以获取(接收)表信息,然后表信息被存储在RAM内(步骤S12)。
另一方面,在表信息被存储在硬盘存储器22内的情况下(步骤S11为是),控制器11起第三存储控制装置的作用。控制器11临时读取存储在硬盘存储器22内的表信息,将它存储到工作RAM内(步骤S13),然后进一步地从硬盘存储器22获取表示表信息被存储在硬盘存储器22内的时间的存储时间(步骤S14)。
控制器11起第二存储时间确定装置的作用并确定从存储时间直到目前的时间(经过的时间)的时间间隔是否在第二预定存储时间(例如,两小时)内(步骤S15)。当经过时间比第二预定存储时间长(步骤S15中为否),存储在硬盘存储器22内的表信息(表信息中的节点信息)不是在这次参与系统的时候被照样使用的最新信息,因此,控制器11转入步骤S16后的处理过程,也就是从节点设备(包括用于联络的节点设备1CC)拷贝表信息的处理过程,这些节点设备目前正在参与系统。
在步骤S16中,控制器11起第一存储时间确定装置的作用,并且确定从存储时间到目前时间的时间间隔(经过的时间)是否在比步骤S15(步骤S16)中被用来确定的第二预定存储时间更长第一预定存储时间(例如:10天)内。当经过的时间比第一预定存储时间更长(步骤S16为否)时,控制器11向用于联络的节点设备1CC发送“参与消息”,从用于联络的节点设备1CC获取(接收)表信息,并将表信息存储到RAM中(步骤S12)。如上所述,当经过的时间比第一预定存储时间更长,存储在硬盘存储器22内的表信息为旧信息。可以认为,即使当参与消息被在旧表信息中发送给节点设备时,失败的可能性仍较高。因此,表信息从用于联络的节点设备1CC被获取。
另一方面,在步骤S16中确定经过的时间在第一预定存储时间内(步骤S16为是)时,从根据表信息所选的的节点设备1上获取表信息。具体地,首先控制器11起节点信息有/无确定装置的作用,并且确定节点信息是否存在于RAM的表信息中(步骤S17)。在RAM中的表信息有节点信息(步骤S17为是)的情况下,控制器11起节点信息选择装置并参与通知装置的作用,从RAM的表信息中选择节点信息,并向对应于节点信息的节点设备1发送“参与消息”(步骤S18)。
控制器11起参与通知发送结果确定装置的作用,确定“参与消息”的发送成功与否。具体地,控制器11确定表信息是否能够从作为“参与消息”目的地的节点设备接收(步骤S19)。作为“参与消息”的目的地的节点设备是通过使用包括在“参与消息”内的节点ID作为键的路由被提供所述消息的节点设备(步骤S18中被选中)。
当确定表信息不能被接收(步骤S19为否)时,控制器11起删除装置的作用,从表信息中擦除步骤S18中被选择的节点信息(步骤S20),然后返回步骤S17。当节点设备1上次参与内容发布系统S时,存储在硬盘存储器22内的表信息是被执行处理过程的节点设备使用的表信息。因而,在自从上次参与后经过相当长的时间的情况下,当时间过去后,上次参与系统的节点设备从系统中退出。如上所述,在首先接收“参与消息”的节点设备1已经退出的情况下,在“参与消息”在多个节点设备1之间中继期间发生通信错误及类似情况下,表信息不能被接收。除非表信息中的节点信息在步骤S18中被选择,以及确定表信息中没有节点信息(步骤S17为否),或除非表信息的接收被确认(步骤S19为是),步骤S17到S19中的处理过程被反复地执行。
当控制器11起连接信息接收装置的作用并且表信息的接收被确认(步骤S19为是)时,控制器11起第二存储控制装置的作用并且将接收到的表信息存储到RAM内,代替步骤S13(步骤S21)中被传递到工作RAM中的表信息。
在步骤S17中确定表信息中没有节点信息(步骤S17为否)的情况下,以类似于节点设备1第一次参与内容发布系统S的情况的方式,控制器11转入步骤S12,将“参与消息”发送到用于联络的节点设备1CC,接收表信息,并将表信息存储到RAM内。
随后,控制器11确定将被其它参与系统的节点设备1共用的内容是否被存储(保存)到存储器12内(步骤S22)。在将被共享的内容没有被存储在存储器12内(步骤S22为否)的情况下,处理过程结束。在将被共享的内容被存储在存储器12内(步骤S22为是)的情况下,控制器11起公开通知装置的作用,根据保存的内容,在步骤S12或S21中,在存储在RAM内的表信息的基础上发送“公开消息”(步骤S23),然后结束处理过程。
在步骤S15中确定从存储时间到目前时间的时间间隔(经过的时间)在第二预定存储时间内(步骤S15为是)的情况下,控制器11转到步骤S24到S26的处理过程。也就是说,当在步骤S13中从硬盘存储器22获得的表信息为新时(在使得节点设备1从系统退出然后立刻(例如:在两个小时内)再参与系统的情况下),节点设备1上次参与系统时使用的表信息仍然是最新信息的可能性较高。因此,上次使用的表信息照样使用。
确定被其它参与系统的节点设备1共享的内容是否存储在存储器12内(步骤S24)。在被共享的内容没有存储在存储器12内(步骤S24为否)的情况下,处理过程结束。在被共享的内容存储在存储器12内(步骤S24为是)的情况下,控制器11起公开通知装置的作用并且基于步骤S13中存储在RAM内的表信息发送与保持的内容有关的“公开消息”(步骤S25)。
其次,控制器11起公开通知发送结果确定装置的作用,确定“公开消息”的发送成功与否(步骤S26)。具体地,当从作为“公开消息”的第一目的地的节点设备接收到接收确认通知时,可以确定消息发送成功。在预定的等待时间之后,当没有从作为第一目的地的节点设备接收到接收确认通知(发生超时)时,可以确定消息发送失败。作为“公开消息”的第一目的地的节点设备为在图7所示的实例中的节点设备1b。在“公开消息”发送成功的情况下,处理过程结束。在“公开消息”发送失败(步骤S26为否)的情况下,存储在步骤S13中的表信息被从RAM中删除。控制器11移到步骤S12,从用于联络的节点设备1CC获取表信息,并将它存储到RAM内。
如上所述,在节点设备再参与系统并使用存储在硬盘存储器22内的表信息的情况下,表信息能否被使用由确定“公开消息”是否能够被发送确定。在公开消息发送失败的情况下,与存储在硬盘存储器22内的表信息中保留节点信息有关的节点设备1没有参与系统的可能性被确定较高。因而,最新的表信息从用于联络的节点设备1CC被获取。
在步骤S13中,临时读取存储在硬盘存储器22内的表信息、将其存储到RAM内、从表信息选择节点信息的各种工作被执行。换句话说,在没有将表信息存储到RAM的情况下,在表信息被存储在硬盘存储器22内的状态,CPU通过总线23访问存储在硬盘存储器22内的表信息。利用这种结构,控制器11起节点信息读取装置的作用并向节点信息的节点设备发送“参与消息”,节点信息读取装置用于读取包括在存储在硬盘存储器22内的表信息的节点信息。
2-2-2.高速缓存信息读取处理过程
步骤S2中的高速缓存信息读取处理过程将参照图10A中显示“高速缓存信息读取处理过程”的实例的流程图进行说明。
首先,确定高速缓存信息是否被存储在硬盘存储器22内(步骤S31)。在高速缓存信息没有被存储在硬盘存储器22内的情况下,例如节点设备1过去没有参与内容发布系统S的情况下(步骤S31为否),处理过程照样结束。
另一方面,在高速缓存信息被存储在硬盘存储器22(步骤S31为是)的情况下,控制器11起第二存储控制装置的作用,读取存储在硬盘存储器22内的高速缓存信息,将其存储到RAM内(步骤S32),然后结束处理过程。
2-2-3.目录信息读取处理过程
步骤S3中的目录信息读取处理过程将参照图10B中显示“目录信息读取处理过程”的实例的流程图进行说明。该处理过程类似于“高速缓存信息读取处理过程”。
首先,确定目录信息是否被存储在硬盘存储器22内(步骤S41)。在目录信息没有被存储在硬盘存储器22内的情况下,例如节点设备1过去从未参与内容发布系统S的情况下(步骤S41为否),处理过程照样结束。
另一方面,在目录信息被存储在硬盘存储器22(步骤S41为是),控制器11起第二存储控制装置的作用,读取存储在硬盘存储器22内的目录信息,将其存储到RAM内(步骤S42),然后结束处理过程。
2-3.存储各种的信息的处理过程
下面参照图11和12说明在步骤S6中运行将表信息、高速缓存信息和目录信息存储到硬盘存储器22内的处理过程。
表信息、高速缓存信息和目录信息存储在控制器11的RAM内并在参与内容发布系统S期间被使用,在预定的时间,被存储到硬盘存储器22内。
下面说明每个预定时间内将信息存储到硬盘存储器22内的方法和每一次结合向另一个节点设备发送信息/从另一个节点设备接收信息,表信息、高速缓存信息和目录信息中的任何一项被更新时将信息存储到硬盘存储器22内的方法。
2-3-1.每个预定时间存储信息的方法
下面说明每个预定时间将表信息、高速缓存信息和目录信息存储到硬盘存储器22内的方法。图11为显示步骤S6中运行的“将存储RAM内的表信息、高速缓存信息和目录信息存储到硬盘存储器22的处理过程”的实例的流程图。
首先,确定从上次执行将信息存储到硬盘存储器22内的处理过程后预定时间是否已经过去被确定(步骤S61)。在预定时间已经过去(步骤S61为否)的情况下,处理过程结束。在预定时间已经过去(步骤S61为是)的情况下,控制器11起第一存储控制装置的作用。控制器11将RAM内的表信息和存储时间存储到硬盘存储器22(步骤S62),然后移到步骤S63。在过去存储的表信息被存储到硬盘存储器22内的情况下,表信息被改写。
其次,在步骤S63中,确定高速缓存信息是否被存储在RAM内(步骤S31)。在高速缓存信息被存储在RAM中(步骤S63为是)的情况下,确定存储在RAM中的高速缓存信息的容量是否比硬盘存储器22中的高速缓存信息存储区的存储容量更大被确定(步骤S64)。
当存储在RAM内的高速缓存信息容量等于或小于硬盘存储器22中的高速缓存信息存储区域的存储容量(步骤S64为否)时,所有存储在RAM中的高速缓存信息被存储在硬盘存储器22中(步骤S65)。控制器11移到步骤S67。另一方面,在存储在RAM内的高速缓存信息的容量大于硬盘存储器22内的高速缓存信息存储区的存储容量(步骤S64为是)的情况下,在存储在RAM中的高速缓存信息中,仅仅具有接近节点设备本身节点ID的内容ID的内容的位置信息被存储到硬盘存储器22中(步骤S66)。
其后,在步骤S67中,确定目录信息是否被存储在RAM中(步骤S67)。在目录信息没有存储在RAM中(步骤S67为否)的情况下,处理过程结束。在目录信息被存储在RAM中(步骤S67为是)的情况下,目录信息被存储在硬盘存储器22中(步骤S68),然后,处理过程结束。
2-3-2.当被更新时存储信息的方法
当任何信息被更新时,将表信息、高速缓存信息和目录信息存储到硬盘存储器22内的方法将被说明。图12为显示步骤S6中运行的“将存储RAM内的表信息、高速缓存信息和目录信息存储到硬盘存储器22的处理过程”的实例的流程图。
首先,确定存储在RAM中的表信息是否已经更新(重写)(步骤S71)。在表信息被更新(步骤S71为是)的情况下,控制器11起第一存储控制装置的作用,将RAM中表信息和存储时间存储到硬盘存储器22中(步骤S72)。在硬盘存储器22中有过去的表信息下,表信息被改写。在表信息没有被更新(步骤S71为否)的情况下,程序移到步骤S73。
其次,在步骤S73中,确定高速缓存信息是否被更新(重写)(步骤S73)。在高速缓存信息没有被更新(步骤S73为否)的情况下,程序移到步骤S77。在高速缓存信息被更新(步骤S73为是)的情况下,确定存储在RAM内的高速缓存信息的容量是否比硬盘存储器22中的高速缓存信息存储区的存储容量更大(步骤S74)。
当存储在RAM内的高速缓存信息的容量等于或小于硬盘存储器22中的高速缓存信息存储区的存储容量(步骤S74为否)时,所有存储在RAM内的高速缓存信息被存储在硬盘存储器22中(步骤S75)。控制器11移到步骤S77。另一方面,在存储在RAM内的高速缓存信息的容量大于硬盘存储器22中的高速缓存信息存储区的存储容量(步骤S74为是)的情况下,在存储在RAM中的高速缓存信息中,仅仅具有接近节点设备本身节点ID的内容ID的内容的位置信息被存储到硬盘存储器22中(步骤S76)。
其后,在步骤S77中,确定目录信息是否被更新(重写)(步骤S77)。在目录信息没有被更新(步骤S77为否)的情况下,处理过程结束。在目录信息被更新(步骤S77为是)的情况下,目录信息被存储在硬盘存储器22中(步骤S78),然后处理过程结束。
在步骤S64和S74中,确定存储在RAM中的高速缓存信息的容量是否比硬盘存储器22中的高速缓存信息存储区的存储容量更大。预先确定内容的位置信息块数也是可以的,该内容的位置信息被存储在硬盘存储器22中的高速缓存信息存储区。在具有位置信息的高速缓存信息的数目比确定数目大的情况下,仅仅具有接近节点设备本身的节点ID的内容ID的内容的位置信息可以被作为高速缓存信息存储到硬盘存储器22中。预先确定将高速缓存信息从RAM存储到硬盘存储器22中的处理过程时间的上限作为存储处理过程时间(例如:几分钟)也是可能的,按具有接近于节点设备本身的节点ID的内容ID的内容的位置信息的顺序依次从RAM中读取信息,在经过预定的存储处理过程时间以后,完成读取操作。
进一步地说,在本实施例中,已经在每个预定时间将存储在RAM中的信息存储到硬盘存储器22的方法和当信息被更新时将信息存储到硬盘存储器22的方法。作为另一个结构,例如,当在步骤S4中断电被确认(步骤S4为是)时,信息被存储到硬盘存储器22中,然后,电源可以被关掉。
在上述实施例中,当参与内容发布系统S时,存储在控制器11的RAM中并被使用的表信息被存储到硬盘存储器22,以便在下次参与系统的时候能被使用。即使在节点设备退出系统后(即使在电源被关掉后),存储在硬盘存储器22中的信息仍然没有被删除。在从系统退出以后,在再次参与系统的时候,基于存储在硬盘存储器22中的表信息,它的表信息被拷贝并正参与系统的节点设备(节点参与消息发送给该节点设备)被选择。因此,在没有将处理负载加给用于联络的节点联络1CC上的情况下,在参与系统时最新的表信息被获取。
基于节点设备过去参与系统时被使用的表信息(存储在硬盘存储器22中的表信息)为基础,选择目前参与系统的节点设备的时候,具有相对远离节点设备本身的节点ID的节点ID的节点设备被选择。利用这种结构,通过将包括节点设备本身节点信息的“参与消息”传递给相对较多的节点设备,相对较多的节点设备能够知道该节点设备参与系统中。表信息中层1的节点ID(参照图4D)是离节点设备本身节点ID最远的。层8的节点ID是离节点设备本身的节点ID最近的。因而,足以从写入层1的节点ID中选择相对远离节点设备本身的节点ID的节点ID。
本发明的第一存储装置并不限于工作RAM,也可以是易失性存储器,当电源关掉时,其存储的数据丢失。第二存储装置并不限于硬盘存储器22,也可以是非易失性存储装置,在其中,即使在从系统退出之后(即使电源被关掉之后),在参与系统期间存储的信息不被删除而被保留。例如,第二存储装置可以是闪速存储器、EEPROM(电可擦可编程只读存储器)、闪速存储器、带有备用电源的半导体存储器或类似元件。进一步地,第二存储装置并不限于诸如硬盘存储器22的节点设备1的组件,也可以是连接到节点设备1的外部存储器或类似装置。
虽然上述实施例是在以使用通过DHT使用算法构建的覆盖网络9为前提下说明的,但本发明并不限于该前提,也能够应用于其它的计算机网络系统。
2006年4月12日提交的日本专利申请(第2006-110293号)所有的公开内容,包括说明书、权利要求的范围、附图和摘要,通过引用并让本发明。
Claims (10)
1.一种信息通信系统中的节点设备,所述的信息通信系统具有能够通过网络相互通信的多个节点设备,在该系统中,由所述多个节点设备共享的多个公共信息可被存储起来,以便传播到所述多个节点设备,其特征在于,
所述节点设备包括:
第一存储装置,是易失性的,用于存储与所述信息通信系统中一个以上其他的节点设备进行通信时所使用的连接信息,所述连接信息包括能够指示所述一个以上其他的节点设备的节点信息;
第一存储控制装置,当所述节点设备本身参与到所述信息通信系统中时,该第一存储控制装置用于在预定时刻将存储在所述第一存储装置内的所述连接信息存储到第二存储装置中,所述第二存储装置是非易失性的;和
连接信息获取装置,在所述节点设备本身退出所述信息通信系统之后再次参与到所述信息通信系统中时,用于利用存储在所述第二存储装置中的所述连接信息所包含的节点信息选择所述信息通信系统中与该节点信息对应的节点设备,并从选择的节点设备获取即将被存储到所述第一存储装置中的所述选择的节点设备的连接信息,
所述的连接信息获取装置包括:
节点信息读取装置,用于读取存储在所述第二存储装置中的所述连接信息所包含的节点信息,
参与通知装置,用于向所读取的节点信息的节点设备发送参与通知,该参与通知基于所读取的节点信息通知参与所述信息通信系统,和
参与通知发送结果确定装置,用于确定所述参与通知的发送成功与否,
其中,当所述参与通知发送结果确定装置确定所述参与通知已发送成功时,所述连接信息获取装置从作为所述参与通知的发送目的地的节点设备获取存储在该作为发送目的地的节点设备的连接信息;并且
其中,所述节点设备包括第二存储控制装置,用于将所述连接信息获取装置所获取的所述连接信息存储在所述第一存储装置中。
2.如权利要求1所述的节点设备,其特征在于,进一步包括:
节点信息有/无确定装置,用于在所述参与通知发送结果确定装置确定所述参与通知的发送失败时,确定存储在所述第二存储装置内的所述连接信息是否仍包含另一个节点信息,
其中,当所述节点信息有/无确定装置确定在所述连接信息中没有其它的节点信息时,
参与通知装置,所述参与通知装置向参与管理节点设备发送参与通知,所述参与管理节点设备为包括在所述信息通信系统内的另一个节点设备,其用于管理节点设备参与所述信息通信系统,
连接信息接收装置,所述连接信息接收装置从所述参与管理节点设备接收连接信息,该连接信息包含所述信息通信系统中的一个以上节点设备的所述节点信息,
所述第二存储控制装置将从所述参与管理节点设备处接收的连接信息存储到所述第一存储装置内,和
其中,在所述节点信息有/无确定装置确定另有一个节点信息仍然包含在所述连接信息中的情况下,
所述的参与通知装置向与包含在所述连接信息内的另外一个节点信息相对应的节点设备发送参与通知。
3.如权利要求2所述的节点设备,其特征在于,进一步包括:
第三存储控制装置,用于在所述节点设备本身从所述信息通信系统中退出然后再次参与到所述信息通信系统中时,将存储在所述第二存储装置内的连接信息存储到所述第一存储装置中;和
节点信息选择装置,用于从由所述第三存储控制装置从第二存储装置再次存储到所述第一存储装置的所述连接信息所包含的所述节点信息中选择任何节点信息,
其中,基于被选择的节点信息,所述的参与通知装置向节点信息的节点设备发送参与通知。
4.如权利要求3所述的节点设备,其特征在于,
进一步包括删除装置:
其中,所述节点信息有/无确定装置确定节点信息是否仍然存在于由所述第三存储控制装置从第二存储装置再次存储到所述第一存储装置中的所述连接信息中,
其中,在所述节点信息有/无确定装置确定在所述第一存储装置中的所述连接信息中没有节点信息的情况下,
所述参与通知装置将所述参与通知发送给所述参与管理节点设备,
连接信息接收装置从所述参与管理节点设备接收所述信息通信系统中一个以上所述节点设备的节点信息所产生的连接信息,
所述第二存储控制装置将从所述参与管理节点设备处接收到的所述连接信息存储到所述第一存储装置内,用以取代存储在所述第一存储装置内的连接信息,以及
其中,在所述节点信息有/无确定装置确定节点信息仍然存在于所述第一存储装置中的所述连接信息之中的情况下,
所述节点信息选择装置从包含在由所述第三存储控制装置从第二存储装置再次存储到所述第一存储装置中的所述连接信息内的节点信息中挑选任何节点信息,
所述参与通知装置向所挑选的节点信息的节点设备发送参与通知;
所述参与通知发送结果确定装置用于确定所述参与通知的发送成功与否;
在所述参与通知发送结果确定装置确定一个或多个所述参与通知发送失败时,所述删除装置删除所述节点信息选择装置从存储在所述第一存储装置内的所述连接信息中对应的所挑选的所述节点信息。
5.如权利要求1所述的节点设备,其特征在于,进一步包括:
公共信息存储装置,用于存储所述公共信息;和
公开通知装置,用于向被所述第二存储控制装置存储在所述第一存储装置内的任一所述节点信息的所述节点设备发送所述公共信息的公开通知,以便存储在所述公共信息存储装置内的所述公共信息能够被包含在所述信息通信系统内的其它所述节点设备共享。
6.如权利要求2所述的节点设备,其特征在于,
进一步包括第一存储时间确定装置,用于确定自所述第一存储控制装置将存储在所述第一存储装置内的连接信息存储到所述第二存储装置内至目前为止所经过的时间是否比第一预定存储时间更长,
其中,在所述第一存储时间确定装置确定所述经过的时间比所述第一预定存储时间更长的情况下,所述参与通知装置向所述参与管理节点设备发送参与通知。
7.如权利要求1所述的节点设备,其特征在于,
进一步包括第二存储时间确定装置,用于确定自所述第一存储控制装置将存储在所述第一存储装置内的所述连接信息存储到所述第二存储装置内至目前为止所经过的时间是否比第二预定存储时间更长,
其中,在所述第二存储时间确定装置确定所述经过的时间短于所述第二预定存储时间的情况下,所述连接信息获取装置获取存储在所述第二存储装置内的所述连接信息,和
所述第二存储控制装置将由所述连接信息获取装置从所述第二存储装置获得的所述连接信息存储到所述第一存储装置内。
8.如权利要求7所述的节点设备,其特征在于,进一步包括:
公共信息存储装置,用于存储所述公共信息;
公开通知装置,用于向被所述第二存储控制装置存储在所述第一存储装置内的任一所述节点信息的节点设备发送所述公共信息的公开通知,以便存储在所述公共信息存储装置内的所述公共信息能够被包含在所述信息通信系统内的其它所述节点设备共享;和
公开通知发送结果确定装置,用于确定所述公开通知的发送成功与否。
9.如权利要求1所述的节点设备,其特征在于,
其中,所述第一存储装置是设置在节点设备中的RAM,
所述第二存储装置为硬盘、闪存、EEPROM或带有备用电源的半导体存储器。
10.一种信息通信系统中的信息存储方法,所述信息通信系统具有能够通过网络相互通信的多个节点设备,在该系统中,由所述多个节点设备共享的多个公共信息可被存储起来,以便传播到多个节点设备,其特征在于,
所述的信息存储方法包括:
连接信息的存储过程,即将与所述信息通信系统中一个以上其他的节点设备进行通信时所使用的连接信息存储在易失性的第一存储装置中,所述的连接信息包括能够指示所述一个以上其他的节点设备的节点信息;
第一存储控制过程,即在所述节点设备自身参与到所述信息通信系统中的预定时刻,将存储在第一存储装置中的所述连接信息存储到非易失性的第二存储装置中;和
连接信息获取过程,即当所述节点设备自身从所述信息通信系统退出之后再次参与到所述信息通信系统时,利用存储在所述第二存储装置中的所述连接信息所包含的所述节点信息选择所述信息通信系统中与该节点信息对应的节点设备,并从选择的节点设备获取即将被存储在所述第一存储装置中的所述选择的节点设备的连接信息,
所述的连接信息获取过程包括:
读取存储在所述第二存储装置中的连接信息所包含的节点信息的过程,
发送参与通知的过程,即基于被读取的节点信息,通知所读取的节点信息的节点设备参与所述信息通信系统,和
参与通知发送结果确定过程,用以确定所述参与通知的发送成功与否,
其中,当在所述参与通知发送结果确定过程中确定所述参与通知已发送成功时,所述连接信息获取过程从作为所述参与通知的发送目的地的节点设备获取存储在该作为该发送目的地的节点设备的连接信息;并且
其中,所述信息存储方法包括第二存储控制过程,用以将获取的所述连接信息存储到所述第一存储装置中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006110293A JP4655986B2 (ja) | 2006-04-12 | 2006-04-12 | ノード装置、記憶制御プログラム及び情報記憶方法 |
JP110293/2006 | 2006-04-12 | ||
PCT/JP2007/055515 WO2007116630A1 (ja) | 2006-04-12 | 2007-03-19 | ノード装置、記憶制御プログラムを記録した記録媒体及び情報記憶方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101421993A CN101421993A (zh) | 2009-04-29 |
CN101421993B true CN101421993B (zh) | 2013-06-19 |
Family
ID=38580931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780012893XA Active CN101421993B (zh) | 2006-04-12 | 2007-03-19 | 节点设备、记录存储控制程序的记录介质和信息存储的方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8654678B2 (zh) |
EP (1) | EP2012476B1 (zh) |
JP (1) | JP4655986B2 (zh) |
CN (1) | CN101421993B (zh) |
AT (1) | ATE547871T1 (zh) |
WO (1) | WO2007116630A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4862463B2 (ja) * | 2006-04-11 | 2012-01-25 | ブラザー工業株式会社 | 情報通信システム、コンテンツカタログ情報検索方法、及びノード装置等 |
JP4655986B2 (ja) * | 2006-04-12 | 2011-03-23 | ブラザー工業株式会社 | ノード装置、記憶制御プログラム及び情報記憶方法 |
JP2010152704A (ja) * | 2008-12-25 | 2010-07-08 | Hitachi Ltd | 計算機システムの運用管理システム及び管理方法 |
JP5338783B2 (ja) * | 2010-09-30 | 2013-11-13 | ブラザー工業株式会社 | 情報通信システム、ノード装置、情報通信方法及びプログラム |
US9641475B2 (en) * | 2011-06-03 | 2017-05-02 | Sony Corporation | Electronic mail receiving device and method |
CN105025027A (zh) * | 2015-07-27 | 2015-11-04 | 浪潮(北京)电子信息产业有限公司 | 一种多控存储系统的rpc安全认证方法 |
CN115190136B (zh) * | 2021-04-21 | 2024-03-01 | 统信软件技术有限公司 | 一种数据存储方法、数据传输方法及计算设备 |
CN118013515A (zh) * | 2024-04-09 | 2024-05-10 | 山东浪潮科学研究院有限公司 | 用于隐私保护的分布式计算方法及装置、存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1450755A (zh) * | 2002-04-11 | 2003-10-22 | 兄弟工业株式会社 | 设备管理系统、探测设备、设备及程序 |
CN1744548A (zh) * | 2004-08-27 | 2006-03-08 | 索尼株式会社 | 信息分发系统及其方法、终端、服务器、及终端连接方法 |
Family Cites Families (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6044205A (en) | 1996-02-29 | 2000-03-28 | Intermind Corporation | Communications system for transferring information between memories according to processes transferred with the information |
US5453979A (en) * | 1994-01-27 | 1995-09-26 | Dsc Communications Corporation | Method and apparatus for generating route information for asynchronous transfer mode cell processing |
US5548712A (en) * | 1995-01-19 | 1996-08-20 | Hewlett-Packard Company | Data storage system and method for managing asynchronous attachment and detachment of storage disks |
US7114801B2 (en) | 1995-04-27 | 2006-10-03 | Hewlett-Packard Development Company, L.P. | Method and apparatus for providing ink to an ink jet printing system |
US5900896A (en) | 1995-04-27 | 1999-05-04 | Hewlett-Packard Company | Ink cartridge adapters |
US5805824A (en) | 1996-02-28 | 1998-09-08 | Hyper-G Software Forchungs-Und Entwicklungsgesellschaft M.B.H. | Method of propagating data through a distributed information system |
JP3438849B2 (ja) * | 1996-03-07 | 2003-08-18 | 日本電信電話株式会社 | Pvcパス再設定方法 |
JP3564485B2 (ja) * | 1997-03-03 | 2004-09-08 | 日本電信電話株式会社 | 情報処理方法及びシステム |
JP2000358039A (ja) * | 1999-06-17 | 2000-12-26 | Sony Corp | 情報処理装置および方法、並びに媒体 |
US7117273B1 (en) | 2000-01-25 | 2006-10-03 | Cisco Technology, Inc. | Methods and apparatus for maintaining a map of node relationships for a network |
US7418498B2 (en) * | 2001-01-24 | 2008-08-26 | Telecommunication Systems, Inc. | System and method to publish information from servers to remote monitor devices |
US7689696B2 (en) * | 2000-01-31 | 2010-03-30 | Telecommunication Systems, Inc. | System and method for re-directing requests from browsers for communications over non-IP based networks |
US6993587B1 (en) | 2000-04-07 | 2006-01-31 | Network Appliance Inc. | Method and apparatus for election of group leaders in a distributed network |
JP2001325140A (ja) | 2000-05-17 | 2001-11-22 | Mitsubishi Electric Corp | ファイル転送装置 |
AU2001288757A1 (en) | 2000-09-01 | 2002-03-13 | Op40, Inc. | System, method, uses, products, program products, and business methods for distributed internet and distributed network services |
US6970939B2 (en) | 2000-10-26 | 2005-11-29 | Intel Corporation | Method and apparatus for large payload distribution in a network |
US7296088B1 (en) * | 2000-11-17 | 2007-11-13 | Microsoft Corporation | System and method for determining the geographic location of internet hosts |
US20020062336A1 (en) | 2000-11-22 | 2002-05-23 | Dan Teodosiu | Resource coherency among resources cached in a peer to peer environment |
AU2002234258A1 (en) * | 2001-01-22 | 2002-07-30 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US20040122741A1 (en) | 2002-01-25 | 2004-06-24 | David Sidman | Apparatus, method and system for effecting information access in a peer environment |
EP1364277A4 (en) | 2001-01-25 | 2005-03-30 | David Sidman | DEVICE, METHOD AND SYSTEM FOR ESTABLISHING INFORMATION ACCESS IN A PEER ENVIRONMENT |
US7069295B2 (en) * | 2001-02-14 | 2006-06-27 | The Escher Group, Ltd. | Peer-to-peer enterprise storage |
US6950820B2 (en) * | 2001-02-23 | 2005-09-27 | International Business Machines Corporation | Maintaining consistency of a global resource in a distributed peer process environment |
WO2002078265A1 (en) * | 2001-03-26 | 2002-10-03 | Nokia Corporation | Configuration method and system |
US6813372B2 (en) * | 2001-03-30 | 2004-11-02 | Logitech, Inc. | Motion and audio detection based webcamming and bandwidth control |
JP2002318720A (ja) | 2001-04-19 | 2002-10-31 | Oki Electric Ind Co Ltd | コンテンツ配信管理システム |
US6880100B2 (en) * | 2001-07-18 | 2005-04-12 | Smartmatic Corp. | Peer-to-peer fault detection |
US7054867B2 (en) | 2001-09-18 | 2006-05-30 | Skyris Networks, Inc. | Systems, methods and programming for routing and indexing globally addressable objects and associated business models |
JP4658412B2 (ja) | 2001-09-20 | 2011-03-23 | 富士通株式会社 | データ共有装置 |
WO2003037009A1 (en) * | 2001-10-23 | 2003-05-01 | Meshnetworks, Inc. | System and method for providing a congestion optimized address resolution protocol for wireless ad-hoc networks |
US7412535B2 (en) * | 2001-12-19 | 2008-08-12 | International Business Machines Corporation | Method and system for caching fragments while avoiding parsing of pages that do not contain fragments |
US20050066219A1 (en) | 2001-12-28 | 2005-03-24 | James Hoffman | Personal digital server pds |
JP2003216521A (ja) | 2002-01-28 | 2003-07-31 | Nippon Telegr & Teleph Corp <Ntt> | コンテンツの配置方法、この方法のプログラム、このプログラムを記録した記録媒体 |
US7492787B2 (en) * | 2002-03-29 | 2009-02-17 | Fujitsu Limited | Method, apparatus, and medium for migration across link technologies |
US7099695B1 (en) * | 2002-05-24 | 2006-08-29 | Sprint Spectrum L.P. | Method and system of selecting antennas and equipment for use within a wireless communication system |
US6996678B1 (en) * | 2002-07-31 | 2006-02-07 | Cisco Technology, Inc. | Method and apparatus for randomized cache entry replacement |
US7263560B2 (en) * | 2002-08-30 | 2007-08-28 | Sun Microsystems, Inc. | Decentralized peer-to-peer advertisement |
JP2004127074A (ja) | 2002-10-04 | 2004-04-22 | Nippon Telegr & Teleph Corp <Ntt> | P2pネットワークにおけるファイル検索方法、端末、プログラム、および記録媒体 |
US7551634B2 (en) | 2002-11-12 | 2009-06-23 | Fujitsu Limited | Communication network system |
US7251670B1 (en) | 2002-12-16 | 2007-07-31 | Cisco Technology, Inc. | Methods and apparatus for replicating a catalog in a content distribution network |
US7406535B2 (en) * | 2002-12-20 | 2008-07-29 | Symantec Operating Corporation | Role-based message addressing for a computer network |
JP2004258994A (ja) | 2003-02-26 | 2004-09-16 | Nippon Telegr & Teleph Corp <Ntt> | P2pネットワークにおける動的なファイル検索方法、端末、プログラム、および記録媒体 |
US20040181607A1 (en) | 2003-03-13 | 2004-09-16 | Zhichen Xu | Method and apparatus for providing information in a peer-to-peer network |
US7870218B2 (en) * | 2003-04-09 | 2011-01-11 | Nec Laboratories America, Inc. | Peer-to-peer system and method with improved utilization |
US7805448B2 (en) | 2003-04-18 | 2010-09-28 | Hewlett-Packard Development Company, L.P. | Storing attribute values of computing resources in a peer-to-peer network |
JP4203354B2 (ja) | 2003-05-19 | 2008-12-24 | パナソニック株式会社 | コンテンツ配信装置およびコンテンツ受信装置 |
JP2004355114A (ja) | 2003-05-27 | 2004-12-16 | Nippon Telegr & Teleph Corp <Ntt> | 意味情報ネットワークシステム、セッションリジューム方法及びセッションリジュームプログラム |
JP2004362033A (ja) | 2003-06-02 | 2004-12-24 | Sony Corp | コンテンツ管理方法、コンテンツ管理システム、端末装置およびサーバ装置 |
US7321939B1 (en) * | 2003-06-27 | 2008-01-22 | Embarq Holdings Company Llc | Enhanced distributed extract, transform and load (ETL) computer method |
JP2005071227A (ja) | 2003-08-27 | 2005-03-17 | Sony Corp | メタデータ流通管理システム,メタデータ流通管理装置,個人別メタデータ管理装置,クライアント端末,メタデータ流通管理方法およびコンピュータプログラム |
US7783777B1 (en) | 2003-09-09 | 2010-08-24 | Oracle America, Inc. | Peer-to-peer content sharing/distribution networks |
US20060064503A1 (en) * | 2003-09-25 | 2006-03-23 | Brown David W | Data routing systems and methods |
US7685253B1 (en) * | 2003-10-28 | 2010-03-23 | Sun Microsystems, Inc. | System and method for disconnected operation of thin-client applications |
US20050120134A1 (en) * | 2003-11-14 | 2005-06-02 | Walter Hubis | Methods and structures for a caching to router in iSCSI storage systems |
US7188937B2 (en) | 2004-01-29 | 2007-03-13 | Hewlett-Packard Development Company, L.P. | Printing-fluid venting assembly |
US7593353B2 (en) | 2004-03-13 | 2009-09-22 | International Business Machines Corporation | Methods and apparatus for content delivery via application level multicast with minimum communication delay |
US7730207B2 (en) * | 2004-03-31 | 2010-06-01 | Microsoft Corporation | Routing in peer-to-peer networks |
US7418454B2 (en) * | 2004-04-16 | 2008-08-26 | Microsoft Corporation | Data overlay, self-organized metadata overlay, and application level multicasting |
US7924726B2 (en) * | 2004-07-12 | 2011-04-12 | Cisco Technology, Inc. | Arrangement for preventing count-to-infinity in flooding distance vector routing protocols |
US7360879B2 (en) | 2004-07-29 | 2008-04-22 | Castle Steven T | Inkjet pen adapter |
JP4696498B2 (ja) * | 2004-08-20 | 2011-06-08 | ブラザー工業株式会社 | 情報配信システム、ノード装置、所在情報検索方法、及び所在情報検索処理プログラム等 |
JP2006109159A (ja) | 2004-10-06 | 2006-04-20 | Mitsubishi Electric Corp | 車載用オーディオ装置 |
JP2006109158A (ja) | 2004-10-06 | 2006-04-20 | Olympus Imaging Corp | 電子機器及び電子機器システム並びにオーディオ再生システム |
US20060080273A1 (en) * | 2004-10-12 | 2006-04-13 | International Business Machines Corporation | Middleware for externally applied partitioning of applications |
JP2006110293A (ja) | 2004-10-15 | 2006-04-27 | Suetaro Noda | トイレリモコン |
US7604324B2 (en) | 2004-10-27 | 2009-10-20 | Brother Kogyo Kabushiki Kaisha | Apparatus for ejecting droplets |
FR2878673B1 (fr) * | 2004-11-26 | 2007-02-09 | Univ Picardie Jules Verne Etab | Systeme et procede de sauvegarde distribuee perenne |
WO2006068365A1 (en) * | 2004-12-21 | 2006-06-29 | Electronics And Telecommunications Research Institute | P2p overlay network construction method and apparatus |
US7562125B2 (en) * | 2005-02-02 | 2009-07-14 | Cisco Technology, Inc. | Techniques for locating distributed objects on a network based on physical communication costs |
JP2008533564A (ja) * | 2005-02-24 | 2008-08-21 | ゼラウンド システムズ リミテッド | データ管理のための方法および装置 |
US20060195532A1 (en) * | 2005-02-28 | 2006-08-31 | Microsoft Corporation | Client-side presence documentation |
EP1864424A1 (en) * | 2005-03-17 | 2007-12-12 | Xynk Pty Ltd | A method and system of communication with identity and directory management |
JP2006277338A (ja) * | 2005-03-29 | 2006-10-12 | Brother Ind Ltd | 情報処理装置及び蓄積装置、情報処理方法及び蓄積方法並びに情報処理用プログラム及び蓄積装置用プログラム |
US20070079004A1 (en) | 2005-09-30 | 2007-04-05 | Junichi Tatemura | Method and apparatus for distributed indexing |
US7668173B2 (en) * | 2005-12-01 | 2010-02-23 | Azalea Networks | Method and system for an adaptive wireless routing protocol in a mesh network |
US7778972B1 (en) | 2005-12-29 | 2010-08-17 | Amazon Technologies, Inc. | Dynamic object replication within a distributed storage system |
JP2007235471A (ja) * | 2006-02-28 | 2007-09-13 | Brother Ind Ltd | コンテンツ配信システム、コンテンツ配信方法、端末装置、及びそのプログラム |
EP1999871A2 (en) * | 2006-03-10 | 2008-12-10 | Peerant Inc. | Peer to peer inbound contact center |
JP4692355B2 (ja) * | 2006-03-30 | 2011-06-01 | ブラザー工業株式会社 | 情報通信システム、情報通信方法、情報通信システムに含まれるノード装置および情報処理プログラム |
US7881223B2 (en) * | 2006-03-31 | 2011-02-01 | Panasonic Corporation | Method for on demand distributed hash table update |
JP2007280303A (ja) * | 2006-04-11 | 2007-10-25 | Brother Ind Ltd | 情報通信システム、コンテンツカタログ情報配信方法、及びノード装置等 |
JP4862463B2 (ja) * | 2006-04-11 | 2012-01-25 | ブラザー工業株式会社 | 情報通信システム、コンテンツカタログ情報検索方法、及びノード装置等 |
JP4655986B2 (ja) * | 2006-04-12 | 2011-03-23 | ブラザー工業株式会社 | ノード装置、記憶制御プログラム及び情報記憶方法 |
JP2007304849A (ja) | 2006-05-11 | 2007-11-22 | Sony Corp | 管理装置、情報処理装置、管理方法および情報処理方法 |
JP2008234445A (ja) * | 2007-03-22 | 2008-10-02 | Brother Ind Ltd | コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム |
JP4702314B2 (ja) * | 2007-03-23 | 2011-06-15 | ブラザー工業株式会社 | コンテンツ分散保存システム、ノード装置、ノード処理プログラム、及びコンテンツデータ取得方法 |
JP4930148B2 (ja) * | 2007-03-29 | 2012-05-16 | ブラザー工業株式会社 | 情報処理装置、情報処理方法及び情報処理用プログラム |
-
2006
- 2006-04-12 JP JP2006110293A patent/JP4655986B2/ja active Active
-
2007
- 2007-03-19 EP EP07738960A patent/EP2012476B1/en active Active
- 2007-03-19 AT AT07738960T patent/ATE547871T1/de active
- 2007-03-19 CN CN200780012893XA patent/CN101421993B/zh active Active
- 2007-03-19 WO PCT/JP2007/055515 patent/WO2007116630A1/ja active Application Filing
-
2008
- 2008-10-10 US US12/285,675 patent/US8654678B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1450755A (zh) * | 2002-04-11 | 2003-10-22 | 兄弟工业株式会社 | 设备管理系统、探测设备、设备及程序 |
CN1744548A (zh) * | 2004-08-27 | 2006-03-08 | 索尼株式会社 | 信息分发系统及其方法、终端、服务器、及终端连接方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101421993A (zh) | 2009-04-29 |
JP4655986B2 (ja) | 2011-03-23 |
EP2012476A4 (en) | 2009-12-30 |
WO2007116630A1 (ja) | 2007-10-18 |
EP2012476A1 (en) | 2009-01-07 |
US20090052349A1 (en) | 2009-02-26 |
JP2007288286A (ja) | 2007-11-01 |
EP2012476B1 (en) | 2012-02-29 |
ATE547871T1 (de) | 2012-03-15 |
US8654678B2 (en) | 2014-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101421993B (zh) | 节点设备、记录存储控制程序的记录介质和信息存储的方法 | |
CN100568201C (zh) | 信息处理设备、存储设备、信息处理方法和存储方法 | |
US9128833B2 (en) | Two level addressing in storage clusters | |
JP4506558B2 (ja) | データ配信方法 | |
US20090172201A1 (en) | Peer to peer syncronization system and method | |
CN110192198A (zh) | 访问存储的资源的安全性 | |
WO2006038433A1 (ja) | ノード装置、共用情報更新方法、共用情報保存方法、プログラム | |
WO2006115220A1 (ja) | コンテンツ管理システム | |
CN109660496A (zh) | 校验信息的获取、资源校验和发布方法、装置及电子设备 | |
JP4779733B2 (ja) | 配信システム及び配信システム制御方法、蓄積装置及び蓄積装置用プログラム並びにノード装置及びノード装置用プログラム | |
CN110199277A (zh) | 在数据资源中包括元数据 | |
JP2003345692A (ja) | 情報処理装置および方法、情報管理装置および方法、記録媒体、並びにプログラム | |
US8312068B2 (en) | Node device, information communication system, method for managing content data, and computer readable medium | |
JP5353567B2 (ja) | 情報処理システム、情報処理装置、ノード装置及びプログラム並びに情報処理方法 | |
CN114443677A (zh) | 对象存储服务系统 | |
JP2009232272A (ja) | コンテンツ分散保存システム、コンテンツ再生方法、ノード装置、管理装置、ノード処理プログラム、及び管理処理プログラム | |
JP4935734B2 (ja) | コンテンツ分散保存システム、ノード装置及びノード処理プログラム並びにノード処理方法 | |
WO2007125698A1 (ja) | ノード装置、情報処理方法及びノード装置用プログラムが記録された記録媒体 | |
CN111435342A (zh) | 海报的更新方法、更新系统以及管理系统 | |
JP5157770B2 (ja) | ノード装置、プログラム及び保存指示方法 | |
CN116560788A (zh) | 一种多Kafka集群下的数据读写方法及装置 | |
JP2008084089A (ja) | ノード装置、情報分割保存システム、情報処理プログラム及び情報利用方法 | |
JP4736830B2 (ja) | 配信システム、制御装置、配信先装置、ノード装置、制御装置用プログラム、配信先装置用プログラム及びノード装置用プログラム | |
JP2009020669A (ja) | コンテンツ分散保存システム、コンテンツデータ保存方法、稼働率管理装置、及びノード装置等 | |
JP2009187141A (ja) | 情報配信システム及び同システムにおける重複数調整方法 |
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 |