[go: up one dir, main page]

JP2006178754A - Information processor, information processing method, information processing program and peer-to-peer system - Google Patents

Information processor, information processing method, information processing program and peer-to-peer system Download PDF

Info

Publication number
JP2006178754A
JP2006178754A JP2004371530A JP2004371530A JP2006178754A JP 2006178754 A JP2006178754 A JP 2006178754A JP 2004371530 A JP2004371530 A JP 2004371530A JP 2004371530 A JP2004371530 A JP 2004371530A JP 2006178754 A JP2006178754 A JP 2006178754A
Authority
JP
Japan
Prior art keywords
peer
data
shared
information
mode
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.)
Pending
Application number
JP2004371530A
Other languages
Japanese (ja)
Inventor
Kazuhiro Soga
和浩 曽我
Hiromi Obara
裕美 小原
Toshihide Yoshimura
俊秀 吉村
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2004371530A priority Critical patent/JP2006178754A/en
Publication of JP2006178754A publication Critical patent/JP2006178754A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform reference to data at high speed while suppressing the load of a network or resources of each information processor. <P>SOLUTION: The information processor comprises a real-time mode in which all shared data are copied to each peer, a download mode in which only index information such as a file name is shared by each peer and each peer downloads corresponding data in reference to index information when needed, and a reference mode in which part of data or sub-data obtained by contracting the data are shared by each peer, and each peer downloads original data when needed. As the sub-data, a data processing part 72 forms sub-data such as a thumbnail image or index information from original data shared on the P2P network 10, and the data are stored in an application memory 22 managed by a shared data management part 74. In the reference mode, the sub-data are shared by copying them to other peers in logging in the P2P network 10, and the original data are delivered when the original data are requested. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報処理装置、情報処理方法、情報処理プログラム、及びピアツーピアシステムにかかり、特に、ネットワークを介し互いに接続された複数の装置の少なくとも一部が、専用のサーバを介することなく直接通信するピアツーピアシステムに接続可能な情報処理装置、当該情報処理装置で適用可能な情報処理方法、情報処理プログラム、及び当該ピアツーピアシステムに関する。   The present invention relates to an information processing device, an information processing method, an information processing program, and a peer-to-peer system. In particular, at least some of a plurality of devices connected to each other via a network directly communicate without going through a dedicated server. The present invention relates to an information processing apparatus connectable to a peer-to-peer system, an information processing method applicable to the information processing apparatus, an information processing program, and the peer-to-peer system.

従来より、コンピュータ等の装置をネットワークを介して互いに接続するネットワークシステムの形態として、クライアント・サーバシステムと、ピアツーピア(以下、P2Pという)システムとがある。   Conventionally, there are a client / server system and a peer-to-peer (hereinafter referred to as P2P) system as forms of network systems in which devices such as computers are connected to each other via a network.

クライアント・サーバシステムは、サーバが各種情報資源を管理したり各種アプリケーションを提供するサービスを実行し、これをクライアントが利用するシステムであり、主従関係が固定的なシステムある。   The client / server system is a system in which a server executes services for managing various information resources and providing various applications, which are used by clients, and is a system in which a master-slave relationship is fixed.

ネットワークで接続された複数のコンピュータのユーザが、相互の情報を共有して活用するためには、これらの情報を共通してアクセス可能なデータベース或いはファイルをまとめて蓄積して管理するためのサーバを核にして、目的とするアプリケーション・システムを構築して運用する方法が広く使われている。   In order for users of a plurality of computers connected via a network to share and utilize each other's information, a server for storing and managing a database or file that can access these information in common is managed. At the core, a method of building and operating a target application system is widely used.

この方法では、共有したい情報を一括して管理する必要があったり、情報共有のための特別なサーバが必要であったり、その共有システムを構築するため多大なコストが必要である。   In this method, it is necessary to collectively manage information to be shared, a special server for information sharing is required, and a large cost is required to construct the sharing system.

この問題を解決するために、近年では、P2Pシステム型の情報を集中管理しないタイプの情報共有システムが登場し、構築コストの低い情報共有システムが一般的に認知されるようになってきている。   In order to solve this problem, in recent years, information sharing systems of a type that does not centrally manage P2P system type information have appeared, and information sharing systems with low construction costs have been generally recognized.

P2Pシステムでは、基本的には専用のサーバを設けず、ネットワークに接続されたピア(例えばパーソナルコンピュータ等)の各々が、あるときは他のピアに対して所定のサービスを提供してサーバのように動作し、あるときは他のピアが提供するサービスを利用してクライアントのように動作するシステムであり、各ピアが対等なシステムである。このようなP2Pシステムに関して、従来より様々な技術が提案されている(例えば特許文献1及び特許文献2参照)。
特開2002−335269号公報 特開2003−256363号公報
In the P2P system, a dedicated server is basically not provided, and each peer (for example, a personal computer) connected to the network provides a predetermined service to other peers in some cases as a server. In some cases, the system operates like a client using a service provided by another peer, and each peer is an equivalent system. Various techniques have been proposed for such a P2P system (see, for example, Patent Document 1 and Patent Document 2).
JP 2002-335269 A JP 2003-256363 A

しかしながら、P2Pシステムにおいて、データ共有を行うと、各ピアにデータが転送されてしまうため転送時間がかかったり、各ピアのディスクなどのリソースを多く使ってしまう。   However, if data sharing is performed in the P2P system, data is transferred to each peer, so that it takes a long time to transfer, and resources such as a disk of each peer are used.

これを解決するために、P2Pシステムでは、ファイル名等のデータを特定するためのインデックス情報だけが共有されて必要な時に各ピアがデータをダウンロードするダウンモード等のモードがあるが、インデックス情報のみしか共有されないので、実際にデータの内容を確認する際には、データをダウンロードしなければならず、サイズの大きなデータを参照する場合には、時間がかかってしまう、という問題がある。   In order to solve this, in the P2P system, only index information for specifying data such as file names is shared, and there is a mode such as down mode in which each peer downloads data when necessary, but only index information is available. Since only data is shared, there is a problem that data must be downloaded when actually checking the contents of data, and it takes time to refer to large data.

本発明は、上記問題を解決すべく成されたもので、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことを目的とする。   The present invention has been made to solve the above problem, and an object of the present invention is to perform data reference at high speed while suppressing network load and resources of each information processing apparatus.

上記目的を達成するために請求項1に記載の情報処理装置は、複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能な情報処理装置であって、前記ピアツーピアシステム上で共有されるデータの一部を抽出または前記データを縮小したサブデータを作成する作成手段と、前記作成手段によって作成された前記サブデータを前記ピアツーピアシステム上の共有保存先に保存する保存手段と、を備えることを特徴としている。   In order to achieve the above object, an information processing apparatus according to claim 1 is an information processing apparatus that can be connected to a peer-to-peer system in which a plurality of devices are connected and information held for each device can be shared with each other. A creation means for extracting a part of data shared on the peer-to-peer system or creating sub-data obtained by reducing the data; and the sub-data created by the creation means as a shared storage destination on the peer-to-peer system And storing means for storing.

請求項1に記載の発明によれば、作成手段ではピアツーピアシステム上で共有されるデータの一部を抽出またはデータを縮小したサブデータが作成される。作成手段は、例えば、イメージデータのサムネイル画像をサブデータとして作成したり、文書データからイメージをサブデータとして作成したり、文書データのページの一部を抽出したデータをサブデータとして作成したり、音声データのサンプリングレートを落としたデータをサブデータとして作成したりすることで、元データよりも小さいサイズのサブデータを作成する。   According to the first aspect of the present invention, the creating means creates sub-data obtained by extracting a part of data shared on the peer-to-peer system or reducing the data. The creation means, for example, to create a thumbnail image of the image data as sub data, to create an image from the document data as sub data, to create a data obtained by extracting a part of the page of the document data as sub data, For example, sub-data having a smaller size than the original data is created by creating data with a reduced sampling rate of the audio data as sub-data.

また、保存手段では、作成手段によって作成されたサブデータがピアツーピアシステム上の共有保存先に保存される。すなわち、元データよりも小さいサブデータをピアツーピアシステムで共有することが可能となると共に、サブデータを参照することでデータ内容を確認することができる。従って、このように元データよりも小さいサブデータを共有することで、情報を共有する際に、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことが可能となる。   Further, the storage means stores the sub-data created by the creation means in a shared storage destination on the peer-to-peer system. That is, sub-data smaller than the original data can be shared by the peer-to-peer system, and the data content can be confirmed by referring to the sub-data. Therefore, by sharing sub-data smaller than the original data in this way, when information is shared, data can be referred to at high speed while suppressing the network load and resources of each information processing device. Become.

なお、請求項2に記載の発明のように、ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び作成手段によって作成されたサブデータを共有する第3モードを有し、第1乃至第3の何れかのモードを設定する設定手段を更に備えるようにしてもよい。   As described in claim 2, the first mode for sharing all data stored in the shared storage destination on the peer-to-peer system, the second mode for sharing only the index information of the data, and the creation means There may be a third mode for sharing the sub data, and a setting means for setting any one of the first to third modes may be further provided.

この時、設定手段は、請求項3に記載の発明のように、ピアツーピアシステム上に接続された情報処理装置毎、またはデータ毎にモードを設定するようにしてもよい。   At this time, the setting means may set the mode for each information processing apparatus connected on the peer-to-peer system or for each data, as in the third aspect of the invention.

請求項4に記載の情報処理方法は、複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能な情報処理装置における情報処理方法であって、前記ピアツーピアシステ上で共有するデータの一部を抽出または前記データを縮小したサブデータを作成する作成ステップと、前記作成ステップで作成した前記サブデータを前記ピアツーピアシステム上の共有先に保存する保存ステップと、を含むことを特徴としている。   The information processing method according to claim 4 is an information processing method in an information processing device that can be connected to a peer-to-peer system in which a plurality of devices are connected and information held for each device can be shared with each other, and the peer-to-peer A creation step of extracting a part of data shared on the system or creating sub-data obtained by reducing the data; and a saving step of saving the sub-data created in the creation step in a sharing destination on the peer-to-peer system; It is characterized by including.

請求項4に記載の発明によれば、作成ステップではピアツーピアシステム上で共有するデータの一部を抽出またはデータを縮小したサブデータを作成する。作成ステップでは、例えば、イメージデータのサムネイル画像をサブデータとして作成したり、文書データからイメージをサブデータとして作成したり、文書データのページの一部を抽出したデータをサブデータとして作成したり、音声データのサンプリングレートを落としたデータをサブデータとして作成したりすることで、元データよりも小さいサイズのサブデータを作成する。   According to the fourth aspect of the present invention, in the creating step, sub-data obtained by extracting a part of data shared on the peer-to-peer system or reducing the data is created. In the creation step, for example, a thumbnail image of image data is created as sub-data, an image is created from document data as sub-data, data obtained by extracting a part of a page of document data is created as sub-data, For example, sub-data having a smaller size than the original data is created by creating data with a reduced sampling rate of the audio data as sub-data.

また、保存ステップでは、作成ステップで作成したサブデータをピアツーピアシステム上の共有保存先に保存する。すなわち、元データよりも小さいサブデータをピアツーピアシステムで共有することが可能となると共に、サブデータを参照することでデータ内容を確認することができる。従って、このように元データよりも小さいサブデータを共有することで、情報を共有する際に、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことが可能となる。   In the saving step, the sub data created in the creating step is saved in a shared saving destination on the peer-to-peer system. That is, sub-data smaller than the original data can be shared by the peer-to-peer system, and the data content can be confirmed by referring to the sub-data. Therefore, by sharing sub-data smaller than the original data in this way, when information is shared, data can be referred to at high speed while suppressing the network load and resources of each information processing device. Become.

なお、請求項5に記載の発明のように、ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び作成手段によって作成されたサブデータを共有する第3モードを有し、第1乃至第3の何れかのモードを設定する設定ステップを更に備えるようにしてもよい。   As described in the fifth aspect, the first mode for sharing all data stored in the shared storage destination on the peer-to-peer system, the second mode for sharing only the index information of the data, and the creation means There may be further provided a setting step of setting any one of the first to third modes, having a third mode for sharing the sub-data.

この時、設定ステップは、請求項6に記載の発明のように、ピアツーピアシステム上に接続された情報処理装置毎、またはデータ毎にモードを設定するようにしてもよい。   At this time, the setting step may set the mode for each information processing apparatus connected on the peer-to-peer system or for each data as in the invention described in claim 6.

請求項7に記載の情報処理プログラムは、複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能なコンピュータに以下の情報処理を実行させる情報処理プログラムであって、前記処理は、前記ピアツーピアシステ上で共有するデータの一部を抽出または前記データを縮小したサブデータを作成する作成ステップと、前記作成ステップで作成した前記サブデータを前記ピアツーピアシステム上の共有先に保存する保存ステップと、を含むことを特徴としている。   The information processing program according to claim 7 is an information processing program in which a plurality of devices are connected and a computer connectable to a peer-to-peer system capable of sharing information held for each device performs the following information processing. The processing includes a creation step of extracting a part of data shared on the peer-to-peer system or creating sub-data obtained by reducing the data, and the sub-data created in the creation step on the peer-to-peer system. A storage step of storing in a shared destination.

請求項7に記載の発明によれば、請求項4に記載の情報処理方法を情報処理プログラムとして適用したものである。すなわち、作成ステップで作成した元データよりも小さいサブデータを共有することで、情報を共有する際に、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことが可能となる。   According to the invention described in claim 7, the information processing method described in claim 4 is applied as an information processing program. In other words, by sharing sub-data smaller than the original data created in the creation step, when information is shared, data can be referenced at high speed while reducing the network load and resources of each information processing device. It becomes possible.

なお、請求項8に記載の発明のように、ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び作成手段によって作成されたサブデータを共有する第3モードを有し、第1乃至第3の何れかのモードを設定する設定ステップを更に備えるようにしてもよい。   As in the invention described in claim 8, the first mode for sharing all data stored in the shared storage destination on the peer-to-peer system, the second mode for sharing only the index information of the data, and the creation means There may be further provided a setting step of setting any one of the first to third modes, having a third mode for sharing the sub-data.

この時、設定ステップは、請求項9に記載の発明のように、ピアツーピアシステム上に接続された情報処理装置毎、またはデータ毎にモードを設定するようにしてもよい。   At this time, the setting step may set the mode for each information processing apparatus connected on the peer-to-peer system or for each data, as in the ninth aspect of the invention.

請求項10に記載のピアツーピアシステムは、複数のピアが接続されて構成されたピアツーピアシステムであって、請求項1乃至請求項3の何れか1項に記載の情報処理装置をピアとして含むことを特徴としている。   The peer-to-peer system according to claim 10 is a peer-to-peer system configured by connecting a plurality of peers, and includes the information processing apparatus according to any one of claims 1 to 3 as a peer. It is a feature.

請求項10に記載の発明によれば、複数のピアが接続されて構成されたピアツーピアシステムに、請求項1乃至請求項3の何れか1項に記載の情報処理装置をピアとして含んでいるので、上述したように、作成手段によって作成された元データよりも小さいサブデータを共有することで、情報を共有する際に、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことが可能となる。   According to the invention described in claim 10, since the peer-to-peer system configured by connecting a plurality of peers includes the information processing apparatus according to any one of claims 1 to 3 as a peer. As mentioned above, by sharing sub-data smaller than the original data created by the creating means, when sharing information, it is possible to refer to the data while reducing the network load and resources of each information processing device. It can be performed at high speed.

以上説明したように本発明によれば、ピアツーピアシステム上で共有されるデータの一部を抽出または前記データを縮小したサブデータを作成して、ピアツーピアシステム上の共有先に保存することで、元データよりも小さいサブデータを共有することが可能となると共に、サブデータによりデータ内容を確認することができるので、ネットワークの負荷や各情報処理装置のリソースを抑えながら、データの参照を高速に行うことが可能となる、という効果がある。   As described above, according to the present invention, a part of data shared on a peer-to-peer system is extracted or sub-data obtained by reducing the data is created and stored in a shared destination on the peer-to-peer system. Sub-data smaller than data can be shared and the data content can be confirmed by sub-data, so data can be referred to at high speed while reducing network load and resources of each information processing device. There is an effect that it becomes possible.

以下、図面を参照して本発明の実施の形態の一例を詳細に説明する。   Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings.

図1には、P2Pネットワーク10のネットワーク構成について概念的に示した。図1に示すように、P2Pネットワーク10は、仮想的には各ピア12A〜12Gが相互に接続された構成であり、実際には、例えばピア12A〜12Cはファイアウォール14によるアクセス制限下にあるピアであったり、ピア12C〜12Eはインターネットに接続されたピアであったり、ピア12E〜12GはNAT(Network Address Translation)によってアドレス変換されるピアであったりする。   FIG. 1 conceptually shows the network configuration of the P2P network 10. As shown in FIG. 1, the P2P network 10 has a configuration in which the peers 12 </ b> A to 12 </ b> G are virtually connected to each other. In practice, for example, the peers 12 </ b> A to 12 </ b> C are peers that are under access restriction by the firewall 14. The peers 12C to 12E may be peers connected to the Internet, and the peers 12E to 12G may be peers whose addresses are translated by NAT (Network Address Translation).

また、各ピア同士の接続方法は様々であり、IPv4(Internet Protocol version 4)やIPv6(Internet Protocol version 6)の機能を用いるTCP(Transmission Control Protocol)接続を用いたり、HTTP(HyperText Transfer Protocol)を用いたり、SMTP(Simple Mail Transfer Protocol)を用いたりすることができる。   There are various connection methods between peers, such as using TCP (Transmission Control Protocol) connection using IPv4 (Internet Protocol version 4) or IPv6 (Internet Protocol version 6) functions, or using HTTP (HyperText Transfer Protocol). Or SMTP (Simple Mail Transfer Protocol) can be used.

ここで、ピアとは、例えばパーソナルコンピュータ等のコンピュータの他、PDA(Personal Digital Assistance)、携帯電話、プリンタ、コピー機、これらの機能を複数備えた複合機等のハードウェア又はこれらの機能を実現するソフトウェアをいう。また、各ピアは、同じ種類のものであるか異なる種類のものであるかにかかわらずP2Pネットワークに参加することができる。   Here, the term “peer” refers to, for example, a computer such as a personal computer, a PDA (Personal Digital Assistance), a mobile phone, a printer, a copier, a hardware such as a multi-function machine having a plurality of these functions, or these functions. Software. Also, each peer can participate in a P2P network regardless of whether it is of the same type or a different type.

P2Pネットワークの形態としては、図2に示すように、各ピア14A〜14Kの全てが対等な関係にあるピュアP2Pと、図3に示すように、サーバ14Sを設け、一部のサービスの提供をサーバ14Sに委ね、その他のサービスについては各ピア14A〜14Hが対等な関係において実現されるハイブリッドP2Pの形態があり、何れの形態でも本発明を適用可能である。   As a form of the P2P network, as shown in FIG. 2, a pure P2P in which all of the peers 14A to 14K are in an equal relationship and a server 14S as shown in FIG. For other services, there is a hybrid P2P form in which the peers 14A to 14H are realized in an equal relationship with respect to other services, and the present invention can be applied to any form.

また、P2Pネットワークに参加する各ピアにログオンするユーザ又はピアは、図4に示すように、目的に応じたグループを構成することができる。図4では、ピア12A〜12G全てがグループ1に属し、さらに、ピア12A、12C、12E、12Fはグループ2に属しており、ピア12B、12E、12F、12Gはグループ3に属している。なお、各ユーザ又はピアは、単一のグループに属してもよいし、複数のグループに属していてもよい。また、ユーザ又はピアは必ずしもグループに属する必要はない。   Also, users or peers who log on to each peer that participates in the P2P network can configure groups according to the purpose, as shown in FIG. In FIG. 4, all of the peers 12A to 12G belong to the group 1, and the peers 12A, 12C, 12E, and 12F belong to the group 2, and the peers 12B, 12E, 12F, and 12G belong to the group 3. Each user or peer may belong to a single group or may belong to a plurality of groups. Also, a user or peer does not necessarily have to belong to a group.

図5には、P2Pネットワーク10に参加する各ピアの基本構成を示した。図5に示すように、ピア12は、P2P基盤構成部16、P2P基盤管理データ記憶部18、アプリケーション実行部20、及びアプリケーションメモリ22を含んで構成される。   FIG. 5 shows the basic configuration of each peer participating in the P2P network 10. As illustrated in FIG. 5, the peer 12 includes a P2P infrastructure configuration unit 16, a P2P infrastructure management data storage unit 18, an application execution unit 20, and an application memory 22.

P2P基盤構成部16は、メッセージ制御部24、データ管理部26、送信部28、及び受信部30を含んで構成される。   The P2P infrastructure configuration unit 16 includes a message control unit 24, a data management unit 26, a transmission unit 28, and a reception unit 30.

送信部28は、メッセージ制御部24から受け取ったメッセージをネットワーク32へ向けて送信する。   The transmission unit 28 transmits the message received from the message control unit 24 toward the network 32.

受信部30は、P2Pネットワーク10内で送受信されるデータのうち、自ピアにとって必要なデータを受信する。常に受信待機状態となっており、P2Pネットワーク10の他ピアからの各種要求やデータを受信し、メッセージ制御部24に受け渡す。なお、送信部28とは独立かつ並列に動作する。   The receiving unit 30 receives data necessary for its own peer among data transmitted and received in the P2P network 10. It is always in a reception standby state, receives various requests and data from other peers of the P2P network 10, and passes them to the message control unit 24. The transmitter 28 operates independently and in parallel.

図6には、メッセージ制御部24の概略構成を示した。メッセージ制御部24は、図6に示すように、サービス実行部34及びメッセージディスパッチ部36を含んで構成されている。   FIG. 6 shows a schematic configuration of the message control unit 24. As shown in FIG. 6, the message control unit 24 includes a service execution unit 34 and a message dispatch unit 36.

サービス実行部34は、ピア探索サービス部38、告知情報公開サービス部40、告知情報取得サービス部42、グループ管理サービス部44、ユーザ管理サービス部46、及びピア管理サービス部48を含んで構成されており、各サービス部は相互に情報を授受しながら各サービスを実行する。   The service execution unit 34 includes a peer search service unit 38, a notification information disclosure service unit 40, a notification information acquisition service unit 42, a group management service unit 44, a user management service unit 46, and a peer management service unit 48. Each service unit executes each service while exchanging information with each other.

ピア探索サービス部38は、P2Pネットワークに参加しているピアを探索する機能及び自ピアが必要とするサービス(機能)を提供可能なピアを探索する機能を有する。なお、探索の範囲は、必要とするサービスの名称や属性、ホップ数の閾値等を指定することにより制御することができる。ここで、ホップ数とは、メッセージを送信する際に経由するピアの数である。   The peer search service unit 38 has a function of searching for a peer participating in the P2P network and a function of searching for a peer that can provide a service (function) required by the peer. The search range can be controlled by designating the name and attribute of the required service, the threshold value for the number of hops, and the like. Here, the number of hops is the number of peers through which a message is transmitted.

告知情報公開サービス部40は、自ピアが提供可能なサービス等の情報を告知情報としてP2Pネットワーク上に公開する機能を有する。ここで、提供可能なサービスには、例えばアプリケーション実行部20により実行されるアプリケーションの他、後述するグループ管理サービスやユーザ管理サービス等も含まれる。なお、告知情報の公開は、例えば他ピアから問い合わせがあった場合や自ピアの起動時に実行してもよいし、定期的に実行するようにしてもよい。   The notification information disclosure service unit 40 has a function of publishing information such as services that can be provided by its own peer on the P2P network as notification information. Here, the services that can be provided include, for example, a group management service and a user management service, which will be described later, in addition to an application executed by the application execution unit 20. The announcement information may be disclosed, for example, when there is an inquiry from another peer, when the own peer is activated, or periodically.

このように各ピアの告知情報公開サービス部40によって告知情報がP2Pネットワーク上に公開されることにより、P2Pネットワークに参加している各ピアは、P2Pネットワーク上でどのようなサービスを利用できるかを把握することができる。   In this way, the announcement information is published on the P2P network by the announcement information disclosure service unit 40 of each peer, so what kind of service each peer participating in the P2P network can use on the P2P network can be determined. I can grasp it.

告知情報取得サービス部42は、ピア探索サービス部38によって探索されたピアから送信された告知情報又は他ピアから自発的に送信された告知情報を取得し、データ管理部26へ受け渡す。データ管理部26では、取得した告知情報をピア情報としてP2P基盤管理データ記憶部18に記憶させる。これにより、ピアは、P2Pネットワークに参加している他ピアがどのようなサービスを提供しているのかを把握することができる。   The notification information acquisition service unit 42 acquires the notification information transmitted from the peer searched by the peer search service unit 38 or the notification information spontaneously transmitted from another peer, and passes it to the data management unit 26. The data management unit 26 stores the acquired notification information in the P2P infrastructure management data storage unit 18 as peer information. Thereby, the peer can grasp what service is provided by other peers participating in the P2P network.

グループ管理サービス部44は、同じ目的を有するピア同士で構成されたグループへの参加や脱退、新たなグループの作成等をグループ情報に基づいて管理する機能を有する。グループ情報は、例えば少なくともグループIDとユーザIDとの対応関係を表す情報であり、P2P基盤管理データ記憶部18に記憶される。このグループ情報を参照することにより、どのグループにどのユーザが属しているかを把握することができる。   The group management service unit 44 has a function of managing participation in or withdrawal from a group composed of peers having the same purpose, creation of a new group, and the like based on group information. The group information is, for example, information representing a correspondence relationship between at least a group ID and a user ID, and is stored in the P2P infrastructure management data storage unit 18. By referring to this group information, it is possible to grasp which user belongs to which group.

ユーザ管理サービス部46は、ユーザ情報を管理する機能を有する。ユーザ情報は、例えばピアIDとそのピアにログオンしているユーザIDとの対応関係を表すログオン情報や、ユーザの名前、IP(Internet Protocol)アドレス、メールアドレス等のユーザ自身に関する情報、そのユーザが属するグループのグループID等の情報を含み、P2P基盤管理データ記憶部18に記憶される。   The user management service unit 46 has a function of managing user information. The user information includes, for example, logon information indicating a correspondence relationship between a peer ID and a user ID logged on to the peer, information on the user such as a user name, an IP (Internet Protocol) address, and a mail address. It includes information such as the group ID of the group to which it belongs and is stored in the P2P infrastructure management data storage unit 18.

ピア管理サービス部48は、P2Pネットワークに参加しているピアのピア情報を管理する機能を有する。   The peer management service unit 48 has a function of managing peer information of peers participating in the P2P network.

メッセージディスパッチ部36は、アプリケーション実行部20からのメッセージや他ピアとの間で送受信されるメッセージを解析し、サービス実行部34のうち解析したメッセージに関する処理を行うべきサービス部へ制御を渡す。   The message dispatch unit 36 analyzes a message from the application execution unit 20 and a message transmitted / received to / from another peer, and passes control to a service unit that should perform processing related to the analyzed message in the service execution unit 34.

P2P基盤管理データ記憶部18は、経路情報18A、グループ情報18B、隣接情報18C、ピア情報18D、及びユーザ情報18Eを記憶する。   The P2P infrastructure management data storage unit 18 stores route information 18A, group information 18B, adjacent information 18C, peer information 18D, and user information 18E.

経路情報18Aは、P2Pネットワークにおける経路の情報、例えば後述するスパニングツリーに関する情報を含む。   The route information 18A includes information on a route in the P2P network, for example, information related to a spanning tree described later.

グループ情報18Bは、前述したように例えば少なくともグループIDとユーザIDとの対応関係を表す情報である。   As described above, the group information 18B is information representing a correspondence relationship between at least a group ID and a user ID, for example.

隣接情報18Cは、自ピアに隣接するピアに関する情報、例えばピアID等の情報を含む。ここで、隣接するピアとは、例えば自ピアから送信したパケットに対する応答時間が予め定めた所定時間内のピアとすることができる。隣接情報は、例えば他ピアと通信する課程において得られる応答時間に基づいて生成することができるが、オペレータの操作等により手動的に設定するようにしてもよい。   The adjacency information 18C includes information on a peer adjacent to the own peer, for example, information such as a peer ID. Here, the adjacent peer can be, for example, a peer within a predetermined time that is a response time for a packet transmitted from the own peer. The adjacent information can be generated based on, for example, a response time obtained in a process of communicating with another peer, but may be set manually by an operator's operation or the like.

ピア情報18Dは、ピア探索サービス部38によって探索されたピアに関する情報、例えばピアID等の情報や、告知情報取得サービス部42によって取得したP2Pネットワーク上の各ピアが提供しているサービスに関する情報等を含む。ここで、ピアIDには、例えばIPアドレスやURI(Uniform Resource Identifier)等を用いることができる。   The peer information 18D is information related to the peer searched by the peer search service unit 38, for example, information such as a peer ID, information related to a service provided by each peer on the P2P network acquired by the notification information acquisition service unit 42, etc. including. Here, for example, an IP address or a URI (Uniform Resource Identifier) can be used as the peer ID.

ユーザ情報18Eは、前述したようにユーザのログオン情報やユーザ自身に関する情報等を含む。   As described above, the user information 18E includes user logon information, information about the user himself, and the like.

アプリケーション実行部20は、各種アプリケーションを実行するものであり、メッセージ制御部24を介して他ピアとメッセージの送受信を行う。また、アプリケーションメモリ22は、アプリケーション実行部20の実行に関連する各種の情報を記憶するためのメモリである。   The application execution unit 20 executes various applications, and transmits and receives messages to and from other peers via the message control unit 24. The application memory 22 is a memory for storing various types of information related to the execution of the application execution unit 20.

次に、P2Pネットワークにおいて、目的のサービスを検索し実行する場合の具体例について説明する。   Next, a specific example in the case where the target service is searched and executed in the P2P network will be described.

まず、他ピアへメッセージを転送する機能を有する転送機能付きピアと、転送機能を備えず、転送機能付きピアを介して他ピアとメッセージの送受信を行うエンドピアと、からなるP2Pネットワークにおいて、転送機能付きピア及びエンドピアのP2P基盤構成部16で実行される処理について説明する。なお、転送機能付きピアは、図示しない転送機能サービス部をサービス実行部34に備えた構成である。   First, in a P2P network comprising a peer with a transfer function that has a function of transferring a message to another peer and an end peer that does not have a transfer function and that transmits and receives messages to and from another peer via the peer with a transfer function Processing executed by the peer peer and end peer P2P infrastructure configuration unit 16 will be described. In addition, the peer with a transfer function has a configuration in which the service execution unit 34 includes a transfer function service unit (not shown).

図7にはエンドピアで実行される処理のフローチャートを、図8には転送機能付きピアで実行される処理のフローチャートを示した。   FIG. 7 shows a flowchart of processing executed by the end peer, and FIG. 8 shows a flowchart of processing executed by the peer with transfer function.

図7に示すように、エンドピアは、ステップ100において、転送機能付きピアの探索要求を、例えば自ピアに予め記憶された設定情報に設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストにより他の転送機能付きピアに対してP2Pネットワークに送信する。これは、ピア探索サービス部38により実行される。   As shown in FIG. 7, in step 100, the end peer sends a search request for a peer with a forwarding function to, for example, another peer with a forwarding function set in the setting information stored in the peer in advance, It transmits to the peer-to-peer network to other peers with a transfer function by broadcasting. This is executed by the peer search service unit 38.

そして、ステップ102において、転送機能付きピアが存在するか否かを判断し、転送付きピアが存在する場合には、ステップ104へ移行し、転送機能付きピアが存在しない場合には、ステップ102へ戻り、例えば所定時間経過後に再度転送機能付きピアを探索する。   In step 102, it is determined whether or not there is a transfer function peer. If there is a transfer function peer, the process proceeds to step 104. If there is no transfer function peer, the process proceeds to step 102. Return, for example, search for a peer with a transfer function again after a predetermined time.

ステップ104では、自ピアにログオンしているユーザ又は自ピアが属するグループに属している他ユーザがログオンしている他ピアの告知情報を取得するよう転送機能付きピアに要求する。これは、告知情報取得サービス部42により実行される。   In step 104, a request is made to the peer with transfer function to acquire notification information of the other peer logged on by the user logged on to the peer or another user belonging to the group to which the peer belongs. This is executed by the notification information acquisition service unit 42.

ステップ106では、転送機能付きピアから告知情報を受信したか否かを判断し、受信していない場合には、ステップ110へ移行し、受信した場合には、ステップ108において、受信した告知情報をP2P基盤管理データ記憶部18にピア情報18Dとして記憶させる。   In step 106, it is determined whether or not the notification information has been received from the peer with transfer function. If not received, the process proceeds to step 110. If received, the received notification information is changed to step 108 in step 108. It is stored as peer information 18D in the P2P infrastructure management data storage unit 18.

ステップ110では、サービス要求が発生したか否かを判断する。例えば自ピアにログオンしているユーザの操作等によってアプリケーション実行部20によりアプリケーションが実行され、サービス要求が発生した場合には、アプリケーション実行部20からメッセージ制御部24へサービス要求が通知される。この場合、ステップ112へ移行し、サービス要求が発生していない場合には、ステップ116へ移行する。   In step 110, it is determined whether a service request has occurred. For example, when an application is executed by the application execution unit 20 by an operation of a user logged on to the peer and a service request is generated, the service request is notified from the application execution unit 20 to the message control unit 24. In this case, the process proceeds to step 112. If a service request has not occurred, the process proceeds to step 116.

ステップ112では、発生したサービス要求に対応したメッセージを作成して転送機能付きピアに送信する。例えば、アプリケーション実行部20からのサービス要求が、所望のファイルを取得する要求だった場合には、アプリケーション実行部20から通知されたファイル名等の所望のファイルを特定するための情報を含むファイル探索要求メッセージを転送機能付きピアに送信する。   In step 112, a message corresponding to the generated service request is created and transmitted to the peer with transfer function. For example, when the service request from the application execution unit 20 is a request to acquire a desired file, a file search including information for specifying the desired file such as a file name notified from the application execution unit 20 Send a request message to a peer with forwarding capability.

ステップ114では、送信したメッセージに対する応答処理を行う。すなわち、送信したメッセージに対する応答メッセージを受信し、受信した応答メッセージの内容に応じた処理を行う。例えば、サービス要求が所定のファイルを取得する要求であった場合には、そのファイルを所有しているピアがあれば、そのピア情報が応答メッセージとして受信されるので、これをアプリケーション実行部20に通知する。この場合、アプリケーション実行部20では、受信したピア情報に基づいて、所望のファイルを所有しているピアにファイル送信要求を送信するようメッセージ制御部24に依頼する。これにより、所望のファイルを取得することができる。   In step 114, response processing for the transmitted message is performed. That is, a response message for the transmitted message is received, and processing corresponding to the content of the received response message is performed. For example, if the service request is a request to acquire a predetermined file, if there is a peer that owns the file, the peer information is received as a response message, and this is sent to the application execution unit 20. Notice. In this case, the application execution unit 20 requests the message control unit 24 to transmit a file transmission request to the peer that owns the desired file based on the received peer information. Thereby, a desired file can be acquired.

そして、ステップ116では、転送機能付きピアから、他ピアから何らかのサービス提供又は情報提供を要求する要求メッセージを受信したか否かを判断し、要求メッセージを受信していた場合には、ステップ118へ移行し、要求メッセージを受信していない場合には、ステップ106へ戻って上記と同様の処理を繰り返す。   In step 116, it is determined whether or not a request message for requesting some service provision or information provision from another peer is received from the peer with transfer function. If the request message has been received, the process proceeds to step 118. If the request message has not been received, the process returns to step 106 and the same processing as described above is repeated.

ステップ118では、要求に対する処理を実行する。そして、ステップ120において、処理結果に対応したメッセージを転送機能付きピアに送信する。例えば、他ピアからファイル探索の要求メッセージを受信した場合には、その要求メッセージをファイル検索を実行するアプリケーション実行部20へ渡す。これによりアプリケーション実行部20においてファイル検索が実行され、検索結果がメッセージ制御部24に通知される。メッセージ制御部24では、アプリケーション実行部20から通知された検索結果に基づいて応答メッセージを作成し、ファイル探索要求メッセージの送信元のピアに送信する。例えばファイルが検索できた場合には、自ピアのピアID等の情報を含めた応答メッセージを作成して、ファイル探索要求メッセージの送信元のピアに送信する。これにより、送信元のピアでは、所望のファイルが検索できたか否かを確認することができる。   In step 118, processing for the request is executed. In step 120, a message corresponding to the processing result is transmitted to the peer with transfer function. For example, when a file search request message is received from another peer, the request message is passed to the application execution unit 20 that executes file search. As a result, the file search is executed in the application execution unit 20 and the search result is notified to the message control unit 24. The message control unit 24 creates a response message based on the search result notified from the application execution unit 20, and transmits the response message to the transmission source peer of the file search request message. For example, if the file can be searched, a response message including information such as the peer ID of the own peer is created and transmitted to the peer that is the transmission source of the file search request message. Thus, the transmission source peer can confirm whether or not a desired file has been searched.

次に、転送機能付きピアで実行される処理について説明する。   Next, processing executed by the peer with a transfer function will be described.

転送機能付きピアは、まず図8に示すステップ200において、例えば自ピアに予め記憶された設定情報に設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストにより他の転送機能付きピアに対して、グループ情報やユーザ情報等の各種情報を送信するよう要求し、これらの情報を取得する。取得した情報は、P2P基盤管理データ記憶部18に記憶される。これにより、P2Pネットワークを構成しているピアの情報やログオンしているユーザの情報を得ることができる。   First, in step 200 shown in FIG. 8, the peer with a forwarding function is connected to another peer with a forwarding function set in the setting information stored in advance in its own peer, or another peer with a forwarding function by multicast or broadcast, for example. Requests to transmit various information such as group information and user information, and obtains the information. The acquired information is stored in the P2P infrastructure management data storage unit 18. Thereby, it is possible to obtain information on the peers constituting the P2P network and information on logged-on users.

ステップ202では、P2P基盤管理データ記憶部18に記憶された隣接情報18Cを、自ピアの隣の転送機能付きピア全てに告知する。隣接情報18Cには、自ピアの隣の転送機能付きピアの情報が少なくとも含まれ、さらに、他のピアが有している隣接情報を既に取得している場合には、その隣接情報も含まれる。   In step 202, the adjacent information 18C stored in the P2P infrastructure management data storage unit 18 is notified to all peers with a transfer function adjacent to the peer. The adjacency information 18C includes at least information on a peer with a transfer function next to its own peer, and further includes adjacency information if adjacent information possessed by another peer has already been acquired. .

ステップ204では、隣の転送機能付きピアに隣接情報を送信するよう要求し、取得する。このように、自ピアの隣の転送機能付きピアと隣接情報を交換する。   In step 204, the neighboring peer with transfer function is requested to acquire the neighbor information and is acquired. In this way, neighbor information is exchanged with a peer with a transfer function next to the peer.

そして、ステップ206では、交換した隣接情報に基づき、スパニングツリーの構成情報を生成し、P2P基盤管理データ記憶部18に経路情報として記憶する。ここで、スパニングツリーとは、メッセージの転送経路が、ループのない木構造となるような経路を表す。例えばP2Pネットワークが、図9(A)に示すように、グループ1にのみ属する転送機能付きピア501、グループ2にのみ属する転送機能付きピア502、グループ1、2の何れにも属する転送機能付きピア5012、何れのグループにも属さない転送機能付きピア50n、これらの各転送機能付きピアの背後に存在するエンドピア(図9では図示省略)で構成されていたとする。この場合、スパニングツリーは、図9(B)に示すようなループのない木構造の経路となる。 In step 206, configuration information of the spanning tree is generated based on the exchanged adjacent information, and is stored as route information in the P2P infrastructure management data storage unit 18. Here, the spanning tree represents a route in which a message transfer route has a tree structure without a loop. For example, as shown in FIG. 9A, the P2P network has a transfer function that belongs only to group 1, a transfer function peer 50 1 that belongs only to group 2, a transfer function peer 50 2 that belongs only to group 2, and a transfer function that belongs to any of groups 1 and 2 . It is assumed that the attached peer 50 12 , the peer 50 n with a transfer function that does not belong to any group, and end peers (not shown in FIG. 9) that exist behind these peers with the transfer function. In this case, the spanning tree is a tree-structured path without a loop as shown in FIG.

次のステップ208では、エンドピアからのメッセージ送信要求を受信したか否かを判断し、受信している場合にはステップ210へ移行し、受信していない場合には、ステップ212へ移行する。   In the next step 208, it is determined whether or not a message transmission request from the end peer has been received. If received, the process proceeds to step 210. If not received, the process proceeds to step 212.

ステップ210では、スパニングツリーの構成情報としての経路情報に基づいて、メッセージを転送する。例えば、図9(A)に示すようなネットワークが構築されている場合において、エンドピアが例えばグループ1に属しており、グループ1向けの要求メッセージを転送機能付きピアに送信した場合について説明する。この場合、転送機能付きピアは、グループ1に属しているエンドピアに対してのメッセージ転送を担う転送機能付きピアを全て含み、この転送機能付きピア全てにメッセージが転送されるようなスパニングツリー、例えば図9(C)に示すようなスパニングツリーを経路情報に基づいて計算する。そして、転送機能付きピアは、計算されたスパニングツリーに基づいて、隣の転送機能付きピア全てにエンドピアからの要求メッセージを転送する。これにより、図9(C)に示すスパニングツリー上の転送機能付きピアにメッセージが転送され、グループ1のエンドピア全てにメッセージが転送される。なお、グループ2向けのメッセージ送信要求を転送機能付きピアに送信した場合は、図9(D)に示すようなスパニングツリーが計算される。   In step 210, the message is transferred based on the path information as the configuration information of the spanning tree. For example, in the case where a network as shown in FIG. 9A is constructed, a case where the end peer belongs to, for example, group 1 and a request message for group 1 is transmitted to the peer with transfer function will be described. In this case, the forwarding peer includes all the forwarding peers responsible for forwarding messages to end peers belonging to group 1, and a spanning tree in which messages are forwarded to all the forwarding peers, for example, A spanning tree as shown in FIG. 9C is calculated based on the path information. Then, the forwarding function peer forwards the request message from the end peer to all the neighboring forwarding function peers based on the calculated spanning tree. As a result, the message is transferred to peers with a transfer function on the spanning tree shown in FIG. 9C, and the message is transferred to all end peers of group 1. When a message transmission request for group 2 is transmitted to a peer with a transfer function, a spanning tree as shown in FIG. 9D is calculated.

次のステップ212では、隣の転送機能付きピアからメッセージを受信したか否かを判断し、受信した場合にはステップ214へ移行し、受信していない場合には、ステップ208へ戻って上記と同様の処理を繰り返す。なお、定期的にステップ200へ戻ってスパニングツリーを定期的に計算するようにしてもよい。   In the next step 212, it is determined whether or not a message has been received from the adjacent peer with transfer function. If received, the process proceeds to step 214. If not received, the process returns to step 208 to return to the above. Similar processing is repeated. Note that it is also possible to periodically return to step 200 and periodically calculate the spanning tree.

ステップ214では、計算したスパニングツリーに基づき、メッセージを転送する必要がある場合、すなわちスパニングツリー上における隣の転送機能付きピアのうちメッセージを転送していない転送機能付きピアが存在する場合には、その転送機能付きピアにメッセージを転送する。また、受信したメッセージが、自ピアがメッセージの転送を担うエンドピアと同一のグループ宛であった場合には、そのメッセージをエンドピアへ転送する。   In step 214, if the message needs to be forwarded based on the calculated spanning tree, that is, if there is a peer with forwarding function that does not forward the message among neighboring peers with forwarding function on the spanning tree, The message is transferred to the peer with the transfer function. If the received message is addressed to the same group as the end peer that is responsible for transferring the message, the received message is transferred to the end peer.

このように、スパニングツリーを各転送機能付きピアが計算し、このスパニングツリー計算に従ってメッセージを転送することにより、同じグループ内のエンドピア間においてメッセージの送受信が可能となる。   Thus, each peer with a forwarding function calculates a spanning tree and forwards a message according to this spanning tree calculation, whereby it is possible to send and receive messages between end peers in the same group.

上記のような転送機能付きピアによってメッセージを転送する構成は、主にLAN(Local Area Network)等の比較的小規模のネットワークでP2Pネットワークを構築する場合に適しているが、大規模のネットワークでP2Pネットワークを構成する場合には、ファイアウォールやゲートウェイ等を介して、異なるネットワークに接続されたピア間でメッセージの送受信が行われる。以下では、このような比較的大規模なネットワークでP2Pネットワークを構築する場合に適した形態について説明する。   The configuration of transferring a message by a peer with a transfer function as described above is suitable mainly when a P2P network is constructed with a relatively small network such as a LAN (Local Area Network). When configuring a P2P network, messages are transmitted and received between peers connected to different networks via a firewall, a gateway, or the like. Below, the form suitable when constructing a P2P network with such a comparatively large-scale network is demonstrated.

図10に示すP2Pネットワーク11は、複数のネットワーク52〜58を含み、ネットワーク52は、ルータ60、62を介してネットワーク54と接続されると共に、ルータ64を介してネットワーク58と接続される。また、ネットワーク56は、ルータ66を介してネットワーク58と接続される。   A P2P network 11 illustrated in FIG. 10 includes a plurality of networks 52 to 58, and the network 52 is connected to the network 54 via routers 60 and 62 and is connected to the network 58 via a router 64. The network 56 is connected to the network 58 via the router 66.

ネットワーク52は、エンドピア52A、52B、及び待ち合わせ機能付きピア52Cを含んで構成され、ネットワーク54はエンドピア54Aを含んで構成され、ネットワーク56はエンドピア56Aを含んで構成され、ネットワーク58は中継機能付きピア58Aを含んで構成されている。なお、待ち合わせ機能付きピアは、図示しない待ち合わせ機能サービス部をサービス実行部34に備えた構成であり、中継機能付きピア58Aは、図示しない中継機能サービス部をサービス実行部34に備えた構成である。   The network 52 is configured to include end peers 52A and 52B and a queuing function peer 52C, the network 54 is configured to include an end peer 54A, the network 56 is configured to include an end peer 56A, and the network 58 is a relay function peer. 58A is included. Note that the peer with waiting function has a configuration in which a service function unit (not shown) is provided in the service execution unit 34, and the peer 58A with relay function has a configuration in which the service execution unit 34 has a relay function service unit (not shown). .

このように構成されたP2Pネットワーク11において、エンドピアは、図7のフローチャートの示す処理とほぼ同様の処理を実行する。すなわち、P2Pネットワーク11におけるエンドピアで実行される処理は、図7のフローチャートの説明において、転送機能付きピアを待ち合わせ機能付きピアに言い換えた処理を実行すると考えることができる。   In the P2P network 11 configured as described above, the end peer executes substantially the same processing as that shown in the flowchart of FIG. That is, the process executed by the end peer in the P2P network 11 can be considered to execute the process in which the transfer function peer is replaced with the waiting function peer in the description of the flowchart of FIG.

また、中継機能付きピアは、基本的には所謂ゲートウェイとしての動作をするピアである。中継機能付きピアは、まず、例えば自ピアに記憶された設定情報に予め設定された他のピアに対して、又はマルチキャストやブロードキャストにより他のピアに対して、グループ情報やユーザ情報等の各種情報を送信するよう要求し、これらの情報を取得しておく。そして、他ピアからメッセージを受信した場合には、送信先として指定されたピアにメッセージを転送する。   The peer with a relay function is basically a peer that operates as a so-called gateway. A peer with a relay function first has various information such as group information and user information for other peers set in advance in the setting information stored in its own peer, or for other peers by multicast or broadcast. Is requested to transmit the information. When a message is received from another peer, the message is transferred to the peer designated as the transmission destination.

次に、待ち合わせ機能付きピアで実行される処理について、図11に示すフローチャートを参照して説明する。   Next, processing executed by the peer with a waiting function will be described with reference to the flowchart shown in FIG.

まず、ステップ300において、例えば自ピアに記憶された設定情報に予め設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストによって、他のピアに対してグループ情報やユーザ情報等の各種情報を送信するよう要求する。   First, in step 300, for example, for other peers with transfer function preset in the setting information stored in the own peer, or for various peers such as group information and user information for other peers by multicast or broadcast. Request to send information.

ステップ302では、他ピアから何らかの情報、例えばステップ300で要求したグループやユーザ情報等の情報や、他ピアからの告知情報等を受信したか否かを判断し、受信した場合には、ステップ304へ移行し、受信していない場合には、ステップ306へ移行する。   In step 302, it is determined whether or not any information from other peers, for example, information such as group and user information requested in step 300, announcement information from other peers, etc. is received. If it has not been received, the process proceeds to step 306.

ステップ304では、他ピアから受信した情報をP2P基盤管理データ記憶部18に記憶させる。例えば受信した情報がグループ情報であればグループ情報18BとしてP2P基盤管理データ記憶部18に記憶させ、受信した情報がユーザ情報であればユーザ情報18EとしてP2P基盤管理データ記憶部18に記憶させる。   In step 304, the information received from the other peer is stored in the P2P infrastructure management data storage unit 18. For example, if the received information is group information, it is stored in the P2P infrastructure management data storage unit 18 as group information 18B, and if the received information is user information, it is stored in the P2P infrastructure management data storage unit 18 as user information 18E.

ステップ306では、エンドピアから何らかのサービス提供又は情報提供を要求する要求メッセージを受信したか否かを判断し、受信している場合には、ステップ308へ移行し、受信していない場合には、ステップ302へ戻って上記と同様の処理を繰り返す。   In Step 306, it is determined whether or not a request message for requesting some service provision or information provision has been received from the end peer. If received, the process proceeds to Step 308. If not received, Step 306 is performed. Returning to 302, the same processing as described above is repeated.

ステップ308では、要求メッセージに対応した情報が自ピアのP2P基盤管理データ記憶部18に記憶されているか否かを判断し、記憶されている場合には、ステップ310へ移行し、記憶されていない場合には、ステップ312へ移行する。   In step 308, it is determined whether or not information corresponding to the request message is stored in the P2P infrastructure management data storage unit 18 of the own peer. If it is stored, the process proceeds to step 310 and is not stored. If so, the process proceeds to step 312.

ステップ310では、要求メッセージに対応した情報をP2P基盤管理データ記憶部18から読み出して要求元のピアに送信する。   In step 310, information corresponding to the request message is read from the P2P infrastructure management data storage unit 18 and transmitted to the requesting peer.

一方、ステップ312では、要求メッセージを隣接のピアに転送する。これにより、要求メッセージが他ピアに伝搬される。これにより、要求メッセージに対応した処理を実行可能なピアから応答メッセージが送信される。   On the other hand, in step 312, the request message is transferred to the adjacent peer. As a result, the request message is propagated to other peers. As a result, a response message is transmitted from a peer capable of executing processing corresponding to the request message.

ステップ314では、要求メッセージに対応した処理を実行可能なピアから送信された応答メッセージを受信し、これを要求元のエンドピアに送信する。   In step 314, a response message transmitted from a peer capable of performing processing corresponding to the request message is received and transmitted to the requesting end peer.

ここで、ネットワーク54のピア54Aが告知情報の探索要求を行う場合について説明する。この場合、ピア54Aは、待ち合わせ機能付きピアを検索し、検索された待ち合わせ機能付きピア52Cに告知情報の探索要求メッセージを送信する。これにより待ち合わせ機能付きピア52Cは、自ピアに他ピアの告知情報が蓄積されていれば、これをピア54Aに送信し、蓄積されていない場合には、例えば隣のピア52A、52B等に告知情報を送信するよう要求する。このとき、ピア52Aは、自ピアの告知情報と、自ピアに記憶されている他ピアの告知情報、例えばピア56Aの告知情報がすでに記憶されている場合には、その告知情報とを待ち合わせ機能付きピア52Cに送信する。ピア52Cについても同様である。待ち合わせ機能付きピア54Cは、他ピアから送信された告知情報を蓄積すると共に、ピア54Aに送信する。   Here, a case where the peer 54A of the network 54 makes a search request for notification information will be described. In this case, the peer 54A searches for a peer with a waiting function, and transmits a search request message for notification information to the searched peer 52C with a waiting function. As a result, the peer 52C with the waiting function transmits the notification information of the other peer to the peer 54A if it is stored in its own peer, and if not, for example, notifies the adjacent peers 52A, 52B, etc. Request to send information. At this time, the peer 52A waits for the notification information of its own peer and the notification information of the other peer stored in its own peer, for example, when the notification information of the peer 56A is already stored. To the attached peer 52C. The same applies to the peer 52C. The queuing function-equipped peer 54C accumulates the notification information transmitted from other peers and transmits it to the peer 54A.

以上のように、待ち合わせ機能付きピアは、他ピアから送信された告知情報等の各種情報を自ピアに蓄積しておき、エンドピアからの要求に対応した情報が自ピアに記憶されている場合には、その情報をエンドピアに送信する。従って、P2Pネットワーク11のように大規模なネットワークにおけるメッセージの送受信の効率を向上させることができる。   As described above, a peer with a waiting function accumulates various information such as notification information transmitted from other peers in its own peer, and information corresponding to a request from an end peer is stored in its own peer. Sends the information to the end peer. Therefore, the efficiency of message transmission / reception in a large-scale network such as the P2P network 11 can be improved.

次に、アプリケーション実行の具体例として、アプリケーションがファイル共有サービスの場合におけるアプリケーション実行部20の処理について説明する。   Next, as a specific example of application execution, processing of the application execution unit 20 when the application is a file sharing service will be described.

この場合、アプリケーション実行部20は、ファイル名等の所望のファイルを特定するための情報を少なくとも含んだファイル探索要求をメッセージ制御部24のメッセージディスパッチ部36に通知する。メッセージディスパッチ部36では、このファイルを所有するピアを探索するようピア探索サービス部38に対して要求する。これにより、ピア探索サービス部38によって所望のファイルを所有するピアが探索され、アプリケーション実行部20に通知される。そして、アプリケーション実行部20では、探索されたピアに対してファイルを送信するよう要求し、取得する。なお、所望のファイルを所有しているピアの情報を既に取得しており、自ピアに記憶されていた場合には、ピア探索を実行せずに、直接そのピアにファイル送信要求を送信してファイルを取得すればよい。   In this case, the application execution unit 20 notifies the message dispatch unit 36 of the message control unit 24 of a file search request including at least information for specifying a desired file such as a file name. The message dispatch unit 36 requests the peer search service unit 38 to search for a peer that owns this file. As a result, the peer search service unit 38 searches for a peer that owns the desired file and notifies the application execution unit 20 of it. Then, the application execution unit 20 requests the acquired peer to transmit a file and acquires it. If the information of the peer that owns the desired file has already been acquired and stored in its own peer, a file transmission request is sent directly to that peer without performing peer search. Just get the file.

このように、アプリケーション実行部20は、メッセージ制御部24を介して他ピアとメッセージの送受信を行い、サービスを提供する。   As described above, the application execution unit 20 transmits and receives messages to and from other peers via the message control unit 24 to provide services.

なお、P2Pネットワークの構築について上記は一例であり、例えば上記特許文献1に記載されたプロトコルや、JXTAプロトコルのPDP(Peer Discovery Protocol:ピア発見プロトコル)、PRP(Peer Resolver Protocol:ピア解決プロトコル)、PIP(Peer Information Protocol:ピア情報プロトコル)、PMP(Peer Membership Protocol:ピアメンバーシッププロトコル)、PBP(Peer Binding Protocol:ピアバインディングプロトコル)、PEP(Peer Endpoint Protocol:ピアエンドポイントプロトコル)等の公知のプロトコルを用いてP2Pネットワークを構築してもよい。   Note that the above is an example of the construction of the P2P network. For example, the protocol described in Patent Document 1, the PX (Peer Discovery Protocol) of the JXTA protocol, the PRP (Peer Resolver Protocol), Known protocols such as PIP (Peer Information Protocol), PMP (Peer Membership Protocol), PBP (Peer Binding Protocol), PEP (Peer Endpoint Protocol) May be used to construct a P2P network.

ところで、上述のように構成されたP2Pネットワークでは、各ピアで情報を共有する際には、リアルタイムモードとダウンロードモードを有する。なお、リアルタイムモードは、共有するデータの全てが各ピアにコピーされるモードであり、ダインロードモードは、ファイル名等のインデックス情報のみを各ピアで共有し、必要な時に各ピアがインデックス情報を参照して対応するデータをダウンロードするモードである。   By the way, the P2P network configured as described above has a real-time mode and a download mode when information is shared by each peer. The real-time mode is a mode in which all of the shared data is copied to each peer, and the dyne load mode shares only the index information such as the file name with each peer, and each peer acquires the index information when necessary. In this mode, the corresponding data is downloaded by referring to it.

しかしながら、ダウンロードモードでは、インデックス情報のみしか共有していないので、データの内容については共有されないので、内容を確認するためには、データをダウンロードして確認する必要があり、利便的ではないと共に、ダウンロードする時間がかかってしまう。   However, since only the index information is shared in the download mode, the contents of the data are not shared, so in order to confirm the contents, it is necessary to download and confirm the data, which is not convenient, It takes time to download.

そこで、本実施の形態では、リアルタイムモードとダウンロードモードの中間のモード(以下、参照モードという)が設定されており、参照モードによって、データの参照を高速に行うことを可能にしている。   Therefore, in the present embodiment, an intermediate mode between the real time mode and the download mode (hereinafter referred to as a reference mode) is set, and data can be referred to at high speed by the reference mode.

参照モードは、例えば、データの一部またはデータを縮小したサブデータを各ピアで共有し、必要な時に各ピアが元データをダウンロードするモードであり、これによってデータの一部または縮小したサブデータを参照することができる。なお、参照モードは、アプリケーション実行部20によって実行される。   The reference mode is, for example, a mode in which a part of data or sub-data in which data is reduced is shared by each peer, and each peer downloads original data when necessary, whereby a part of data or sub-data in which data is reduced Can be referred to. The reference mode is executed by the application execution unit 20.

ここで、参照モードを行うアプリケーション実行部20の構成について説明する。図12は、参照モードを実行するアプリケーション実行部20及びアプリケーションメモリ22を備えたピアが接続されたP2Pネットワークの一例を示すブロック図である。   Here, the configuration of the application execution unit 20 that performs the reference mode will be described. FIG. 12 is a block diagram illustrating an example of a P2P network to which a peer including an application execution unit 20 that executes the reference mode and an application memory 22 is connected.

アプリケーション実行部20は、データ共有部70、データ加工部72、及び共有データ管理部74を含んで構成され、アプリケーションメモリ22には、P2Pネットワーク10に接続された各ピアと共有する各種データが記憶される。   The application execution unit 20 includes a data sharing unit 70, a data processing unit 72, and a shared data management unit 74. The application memory 22 stores various types of data shared with each peer connected to the P2P network 10. Is done.

データ共有部70は、P2Pネットワーク10に接続された各ピアと上述したように各種データを共有する機能を有し、アプリケーションメモリ22に記憶されたデータをP2Pネットワーク10に接続されたピアと共有する。共有方法としては、上述したモードに応じたデータ共有を行う。すなわち、リアルタイムモードの場合には共有するデータの全てが各ピアにコピーされることで共有され、ダウンロードモードの場合にはインデックス情報のみが各ピアで共有され、参照モードの場合にはデータの一部または縮小したサブデータが各ピアで共有される。   The data sharing unit 70 has a function of sharing various data with each peer connected to the P2P network 10 as described above, and shares the data stored in the application memory 22 with the peer connected to the P2P network 10. . As a sharing method, data sharing according to the above-described mode is performed. That is, in the real-time mode, all of the shared data is shared by being copied to each peer, in the download mode only the index information is shared among the peers, and in the reference mode, one piece of data is shared. Partial or reduced sub-data is shared by each peer.

また、データ共有部70によって共有されるデータは、データ表示部76で表示することで確認することができる。データ表示部76での表示は、後述する共有ファイル参照UI(User Interface)画面80(図13参照)等を用いて行う。   The data shared by the data sharing unit 70 can be confirmed by displaying it on the data display unit 76. The display on the data display unit 76 is performed using a shared file reference UI (User Interface) screen 80 (see FIG. 13) described later.

データ加工部72は、P2Pネットワーク10上で共有するデータ(元データ)から、サムネイル画像、目次情報等のサブデータを作成する。例えば、データ加工部70は、イメージデータの解像度を落とす処理、イメージのサムネイル画像を作成する処理、写真から撮影日時や撮影場所(例えば、GPS情報等を含む場合)などの情報を抽出する処理、文書の先頭ページのサムネイル画像を作成する処理、文書からイメージを作成する処理(例えば、文書全体のイメージやページの一部から抽出、縮小、拡大、変形などの処理を行う事でイメージを作成する処理等)、音声データのサンプリングレートを落とす処理、音声データの一部を抽出する処理等を行うことでサブデータを作成する。そして、データ加工部72によって作成されるサブデータとしては、例えば、サムネイル画像、目次、索引、挿絵、コメント、文書概要、音声データの一部(音楽データの場合はレートを落としたものや、音楽の一部分等)、作成者や日時や表題等の属性情報等を挙げることができる。   The data processing unit 72 creates sub-data such as thumbnail images and table of contents information from data (original data) shared on the P2P network 10. For example, the data processing unit 70 performs a process of reducing the resolution of image data, a process of creating a thumbnail image of an image, a process of extracting information such as a shooting date and a shooting location (for example, including GPS information) from a photograph, Processing to create a thumbnail image of the first page of a document, processing to create an image from a document (for example, creating an image by performing extraction, reduction, enlargement, transformation, etc. from an image of the entire document or a part of a page) Sub-data is generated by performing processing for reducing the sampling rate of the audio data, processing for extracting a part of the audio data, and the like. The sub-data created by the data processing unit 72 includes, for example, a thumbnail image, a table of contents, an index, an illustration, a comment, a document outline, a part of audio data (music data with a reduced rate, ), Attribute information such as the creator, date and title, and the like.

共有データ管理部74は、データ加工部72で作成されたサブデータや、P2Pネットワーク10上で共有される各種データのアプリケーションメモリ22への読込み/書き込みを管理する。   The shared data management unit 74 manages reading / writing of the sub data created by the data processing unit 72 and various data shared on the P2P network 10 to the application memory 22.

アプリケーションメモリ22に記憶されるデータは、例えば、図12に示すように、モード(リアルタイムモード、ダウンロードモード、参照モード)の設定を表す属性を含む本体データや、該属性を含む上述のサブデータ等が記憶される。   The data stored in the application memory 22 is, for example, as shown in FIG. 12, main data including an attribute indicating the setting of a mode (real time mode, download mode, reference mode), the above-described sub data including the attribute, etc. Is memorized.

ここで、上述のリアルタイムモード、ダウンロードモード、及び参照モードの設定方法について説明する。図13は、上述の共有ファイルの参照を行うための共有ファイル参照UI画面80及びモード設定画面82の一例を示す図である。   Here, the setting method of the above-mentioned real-time mode, download mode, and reference mode is demonstrated. FIG. 13 is a diagram showing an example of a shared file reference UI screen 80 and a mode setting screen 82 for referring to the shared file described above.

共有ファイルの参照を指定する操作がユーザによって行われた場合に、例えば、図13に示すような共有ファイル参照UI画面80を表示する。   When an operation for designating reference to a shared file is performed by the user, for example, a shared file reference UI screen 80 as shown in FIG. 13 is displayed.

共有ファイル参照UI画面80では、例えば、共有フォルダやその共有フォルダ内の共有ファイルを表示すると共に、表示された共有フォルダ内の情報を表示する。図13では、左側に共有フォルダ1内の情報を階層表示し、右側にはユーザによって指定された共有フォルダ1内のファイルが表示されている一例を示す。   On the shared file reference UI screen 80, for example, a shared folder and a shared file in the shared folder are displayed, and information in the displayed shared folder is displayed. FIG. 13 shows an example in which information in the shared folder 1 is hierarchically displayed on the left side, and files in the shared folder 1 designated by the user are displayed on the right side.

モードの設定は、例えば、共有ファイル参照UI画面80に表示されたファイル(図13ではファイル1〜5)を指定して、プロパティを開く等の操作を行うことで、モード設定画面82を表示し、当該モード設定画面82を用いてモードの設定を行うことができる。例えば、図13では、モード設定画面82上で参照モードが選択されている一例を示す。この状態で表示された“OK”ボタンを選択する操作を行うことで参照モードに設定することができる。   For example, the mode setting screen 82 is displayed by specifying a file (files 1 to 5 in FIG. 13) displayed on the shared file reference UI screen 80 and performing an operation such as opening a property. The mode can be set using the mode setting screen 82. For example, FIG. 13 shows an example in which the reference mode is selected on the mode setting screen 82. The reference mode can be set by performing an operation of selecting the “OK” button displayed in this state.

なお、図13では、各ファイル毎にモード設定を行う例を示すが、各ピア毎にモード設定を行うようにしてもよいし、各ピア毎及び各ファイル毎の両方設定を行うようにしてもよい。また、各ピア毎及び各ファイル毎にモード設定を行う場合には、例えば、各ピア毎の設定を優先する等の優先順位を設けるようにしてもよい。   Although FIG. 13 shows an example in which mode setting is performed for each file, mode setting may be performed for each peer, or both settings may be performed for each peer and each file. Good. In addition, when mode setting is performed for each peer and for each file, for example, a priority order such as giving priority to the setting for each peer may be provided.

続いて、共有データを登録する際に行われるアプリケーション実行部20の処理について説明する。図14は、共有データを登録する際に行われるアプリケーション実行部20で行われる処理の流れの一例を示すフローチャートである。   Next, processing of the application execution unit 20 that is performed when registering shared data will be described. FIG. 14 is a flowchart illustrating an example of the flow of processing performed by the application execution unit 20 performed when registering shared data.

まず、ステップ400では、アプリケーション実行部20は、共有ファイルの登録が指示されたか否か判定する。該判定は、例えば、上述の共有ファイル参照UI画面80を用いて共有フォルダ内に共有するデータがコピーされたか否か等をアプリケーション実行部20が判定することによってなされ、該判定が否定された場合にはそのまま処理を終了して他の処理を実行し、肯定された場合には、ステップ402へ移行する。   First, in step 400, the application execution unit 20 determines whether registration of a shared file has been instructed. The determination is made, for example, when the application execution unit 20 determines whether or not the data to be shared in the shared folder is copied using the shared file reference UI screen 80 described above, and the determination is denied. If the result is affirmative, the process is terminated and other processes are executed.

ステップ402では、アプリケーション実行部20は、登録対象のファイルから日時情報やファイル名等のインデックス情報を取得して、図13に示すような共有ファイル参照UI画面80をデータ表示部76に表示する。   In step 402, the application execution unit 20 acquires index information such as date information and file name from the registration target file, and displays a shared file reference UI screen 80 as shown in FIG. 13 on the data display unit 76.

次に、ステップ404では、アプリケーション実行部20は、参照モード設定か否か判定する。該判定は、共有ファイル参照UI画面80からプロパティを開く操作等が指示されてモード設定画面82が開かれ、該モード設定画面82で参照モードが選択指示されか否かを判定することによってなされ、該判定が肯定された場合には、ステップ406へ移行し、否定された場合には、ステップ410へ移行する。   Next, in step 404, the application execution unit 20 determines whether or not the reference mode is set. The determination is made by instructing whether to open a property from the shared file reference UI screen 80 and opening the mode setting screen 82, and determining whether or not the reference mode is instructed on the mode setting screen 82. If the determination is affirmative, the process proceeds to step 406. If the determination is negative, the process proceeds to step 410.

ステップ406では、データ加工部72がサブデータを作成してステップ408へ移行する。すなわち、上述したように、データ加工部72によりサムネイル画像等のサブデータが元データから作成され、P2Pネットワーク10の共有保存先であるアプリケーションメモリ22に記憶される。   In step 406, the data processing unit 72 creates sub data and proceeds to step 408. That is, as described above, sub-data such as thumbnail images is created from the original data by the data processing unit 72 and stored in the application memory 22 that is a shared storage destination of the P2P network 10.

ステップ408では、共有データ管理部74は、元データをダウンロードモードに設定し、データ加工部72で作成したサブデータをリアルタイムモードに設定する。すなわち、参照モードが設定された場合には、各ピアでは共有ファイルを参照する際には、サブデータを共有することができるので、該サブデータを参照することでデータの内容を把握することが可能となり、必要な場合にのみ元データをダウンロードすることができる。また、各ピアではサブデータのみを共有するので、ネットワークの負荷や各ピアのリソースを抑えながら、データの参照を高速に行うことできる。   In step 408, the shared data management unit 74 sets the original data to the download mode, and sets the sub data created by the data processing unit 72 to the real time mode. That is, when the reference mode is set, each peer can share sub-data when referring to the shared file, so that the contents of the data can be grasped by referring to the sub-data. It becomes possible and the original data can be downloaded only when necessary. Also, since each peer shares only sub-data, data can be referred to at high speed while suppressing the network load and resources of each peer.

一方、ステップ404の判定が否定されたステップ410へ移行すると、ステップ410では、アプリケーション実行部20はリアルタイムモードか否か判定する。該判定は、上述の参照モードの判定と同様に、共有ファイル参照UI画面80からプロパティを開く操作等が指示されてモード設定画面82が開かれ、該モード設定画面82でリアルタイムモードが選択指示されか否かを判定することによってなされ、該判定が肯定された場合には、ステップ412へ移行し、否定された場合には、ステップ414へ移行する。   On the other hand, when the process proceeds to step 410 where the determination in step 404 is negative, in step 410, the application execution unit 20 determines whether or not the real-time mode is set. As in the above-described determination of the reference mode, the determination is instructed to open a property or the like from the shared file reference UI screen 80, the mode setting screen 82 is opened, and the real-time mode is selected and instructed on the mode setting screen 82. If the determination is affirmative, the process proceeds to step 412. If the determination is negative, the process proceeds to step 414.

ステップ412では、共有データ管理部74は、登録対象のファイルの属性をリアルタイムモードに設定してアプリケーションメモリ22に記憶して、共有ファイル登録時の処理を終了する。すなわち、P2Pネットワーク10で当該ファイルを共有する際には、データ共有部70がP2Pネットワーク10に参加している全てのピアに対して当該ファイルをコピーする。これによって各ピアでは元データを参照することが可能となる。   In step 412, the shared data management unit 74 sets the attribute of the file to be registered to the real-time mode and stores it in the application memory 22, and ends the process when registering the shared file. That is, when sharing the file in the P2P network 10, the data sharing unit 70 copies the file to all peers participating in the P2P network 10. As a result, each peer can refer to the original data.

一方、ステップ410の判定が否定されたステップ414へ移行すると、ステップ414では、アプリケーション実行部20は、ダウンロードモードか否か判定する。該判定は、上述の参照モードの判定と同様に、共有ファイル参照UI画面80からプロパティを開く操作等が指示されてモード設定画面82が開かれ、該モード設定画面82でダウンロードモードが選択指示されか否かを判定することによってなされ、該判定が肯定された場合には、ステップ416へ移行し、否定された場合には、ステップ418へ移行する。   On the other hand, if the determination in step 410 is negative, the process proceeds to step 414. In step 414, the application execution unit 20 determines whether or not the download mode is set. As in the determination of the reference mode described above, this determination is instructed to open a property from the shared file reference UI screen 80 and the mode setting screen 82 is opened. On the mode setting screen 82, the download mode is selected and instructed. If the determination is affirmative, the process proceeds to step 416. If the determination is negative, the process proceeds to step 418.

ステップ416では、共有データ管理部74は、登録対象ファイルの属性をインデックス情報を用いたダウンロードモードに設定してアプリケーションメモリ22に記憶して、共有ファイル登録時の処理を終了する。すなわち、P2Pネットワーク10で当該ファイルを共有する際には、データ共有部70がP2Pネットワーク10に参加している全てのピアに対してインデックス情報のみをコピーする。これによって各ピアでは必要に応じて元データをダウンロードして参照することが可能となる。   In step 416, the shared data management unit 74 sets the attribute of the registration target file to the download mode using the index information, stores it in the application memory 22, and ends the process at the time of registering the shared file. That is, when sharing the file in the P2P network 10, the data sharing unit 70 copies only the index information to all peers participating in the P2P network 10. As a result, each peer can download and refer to the original data as necessary.

一方、ステップ414の判定が否定されてステップ418へ移行すると、ステップ418では、アプリケーション実行部20は、ピアの設定に応じたモード設定を行う。すなわち、各ファイル毎の設定ではなく、予めピア毎に設定されたモードに応じたファイルの登録が行われて共有ファイル登録時の処理を終了する。なお、ピア毎のモード設定は、ファイル毎のモード設定と同様の方法で行うことが可能である。   On the other hand, if the determination in step 414 is negative and the process proceeds to step 418, in step 418, the application execution unit 20 performs mode setting according to the peer setting. That is, instead of setting for each file, the file is registered according to the mode set for each peer in advance, and the process at the time of registering the shared file is terminated. The mode setting for each peer can be performed by the same method as the mode setting for each file.

次に、上述のように登録された共有ファイルを参照する際に行われるアプリケーション実行部20の処理について説明する。図15は、登録された共有データを参照する際に行われるアプリケーション実行部20での処理の流れの一例を示すフローチャートである。   Next, the process of the application execution unit 20 performed when referring to the shared file registered as described above will be described. FIG. 15 is a flowchart illustrating an example of a processing flow in the application execution unit 20 performed when referring to registered shared data.

まず、アプリケーション実行部20は、ステップ500で共有ファイル参照が指示されたか否か判定する。該判定は、例えば、データ表示部76に共有ファイル参照UI画面80を表示する指示がなされたか否かを判定することによってなされ、該判定が否定された場合には、共有ファイル参照時の処理を終了して、その他の処理を行う。   First, the application execution unit 20 determines whether or not a shared file reference is instructed in step 500. The determination is made, for example, by determining whether or not an instruction to display the shared file reference UI screen 80 is given on the data display unit 76. If the determination is negative, processing at the time of referring to the shared file is performed. Exit and do other processing.

ステップ500の判定が肯定されると、ステップ502へ移行して、アプリケーション実行部20は、共有ファイル参照UI画面表示処理を行い、ステップ504へ移行する。なお、共有ファイル参照UI画面表示処理は、図13に示すような共有ファイル参照UI画面80をデータ表示部76に表示すると共に、指示に応じて選択されたファイル等を反転表示する等の処理を行う。   If the determination in step 500 is affirmed, the process proceeds to step 502 where the application execution unit 20 performs a shared file reference UI screen display process and proceeds to step 504. In the shared file reference UI screen display process, a shared file reference UI screen 80 as shown in FIG. 13 is displayed on the data display unit 76, and a file selected according to an instruction is displayed in reverse video. Do.

ステップ504では、アプリケーション実行部20は、参照ファイルが指定されたか否か判定する。すなわち、共有ファイル参照UI画面80を用いて、参照対象のファイルを指定する操作がなされたか否かが判定され、該判定が否定された場合には、ステップ502に戻って、ファイルの選択操作等に応じたファイルの反転表示等がなされながら上述の処理が繰り返され、ステップ504の判定が肯定されたところでステップ506へ移行する。   In step 504, the application execution unit 20 determines whether a reference file is specified. That is, it is determined whether or not an operation for designating a reference target file has been performed using the shared file reference UI screen 80. If the determination is negative, the process returns to step 502 to select a file, etc. The above-described processing is repeated while the file is inverted in accordance with the above, and when the determination in step 504 is affirmed, the process proceeds to step 506.

ステップ506では、アプリケーション実行部20は参照対象のファイルがダウンロードモードか否か判定する。すなわち、共有データ管理部74がアプリケーションメモリ22に記憶された参照対象に選択されたファイルの属性(モード)を読み出して、読み出した属性に基づいて判定を行い、該判定が肯定された場合には、ステップ508へ移行し、否定された場合にはステップ514へ移行する。   In step 506, the application execution unit 20 determines whether the reference target file is in the download mode. That is, when the shared data management unit 74 reads the attribute (mode) of the file selected as the reference target stored in the application memory 22, makes a determination based on the read attribute, and when the determination is affirmed The process proceeds to step 508, and if the result is negative, the process proceeds to step 514.

ステップ508では、アプリケーション実行部20は、インデックス情報をデータ表示部76に表示してステップ510へ移行し、元データ表示が指示されたか否か判定する。ここで元データの参照が指示された場合には、ステップ512へ移行して元データを保持するピアからP2P基盤構成部16を介してダウンロードしてデータ表示部76に表示してステップ520へ移行する。また、ステップ510の判定が否定された場合(例えば、他の参照ファイルが選択指定された場合等)にはそのままステップ520へ移行する。   In step 508, the application execution unit 20 displays the index information on the data display unit 76, proceeds to step 510, and determines whether the original data display is instructed. When the reference to the original data is instructed here, the process proceeds to step 512 and is downloaded from the peer holding the original data via the P2P infrastructure configuration unit 16 and displayed on the data display unit 76 and then the process proceeds to step 520. To do. If the determination in step 510 is negative (for example, when another reference file is selected and designated), the process proceeds to step 520 as it is.

一方、ステップ506の判定が否定されてステップ514へ移行すると、ステップ514では、アプリケーション実行部20は参照対象のファイルが参照モードか否か判定する。すなわち、共有データ管理部74がアプリケーションメモリ22に記憶された参照対象に選択されたファイルの属性(モード)を読み出して、読み出した属性に基づいて判定を行い、該判定が肯定された場合には、ステップ518へ移行し、否定された場合にはリアルタイムモードと判定してステップ516へ移行する。   On the other hand, if the determination in step 506 is negative and the process proceeds to step 514, in step 514, the application execution unit 20 determines whether the reference target file is in the reference mode. That is, when the shared data management unit 74 reads the attribute (mode) of the file selected as the reference target stored in the application memory 22, makes a determination based on the read attribute, and when the determination is affirmed The process proceeds to step 518. If the result is negative, the real time mode is determined and the process proceeds to step 516.

ステップ516では、アプリケーション実行部20は、P2Pネットワーク10にログオン時等にコピーされている元データをデータ表示部76に表示してステップ520へ移行する。   In step 516, the application execution unit 20 displays the original data copied to the P2P network 10 at the time of logon or the like on the data display unit 76 and proceeds to step 520.

一方、ステップ518では、共有データ管理部74は、P2Pネットワーク10にログオン時等にアプリケーションメモリ22にコピーされているインデックス情報及びサブデータをデータ表示部76に表示してステップ520へ移行する。すなわち、P2Pネットワーク10にログオンされた時には、参照モードの場合にはインデックス情報と元データよりもデータサイズが小さいサブデータのみが各ピアにコピーされるが、元データよりも小さいサブデータを共有するので、ネットワークの負荷や各ピアのリソースを抑えながら、データの参照を高速に行うことができる。なお、この時、参照対象のファイルのダウンロードが指示する操作等が行われた場合には、アプリケーション実行部20は、参照対象のファイルを保持するピアからP2P基盤構成部16を介してファイルをダウンロードする。すなわち、ダウンロードモードと同様に、必要な時だけ元データを参照することができる。また、参照モードでは、データ加工部72で作成されたサムネイル画像等を表示するので、ダウンロードモードでは確認できない、ファイルの内容の少なくとも一部を確認することができる。   On the other hand, in step 518, the shared data management unit 74 displays the index information and sub data copied to the application memory 22 when logging on to the P2P network 10 on the data display unit 76, and proceeds to step 520. That is, when logged on to the P2P network 10, in the reference mode, only the index information and sub data having a data size smaller than the original data are copied to each peer, but the sub data smaller than the original data is shared. Therefore, it is possible to perform data reference at high speed while suppressing the network load and resources of each peer. At this time, if an operation instructed to download the file to be referenced is performed, the application execution unit 20 downloads the file from the peer holding the file to be referenced via the P2P infrastructure configuration unit 16. To do. That is, as in the download mode, the original data can be referred to only when necessary. In the reference mode, thumbnail images and the like created by the data processing unit 72 are displayed, so that at least a part of the file contents that cannot be confirmed in the download mode can be confirmed.

そして、ステップ520では、アプリケーション実行部20はファイル参照を終了するか否か判定する。該判定は、例えば、共有ファイル参照UI画面80を閉じる操作等がなされたか否か等を判定することによってなされ、該判定が否定された場合には、ステップ502へ戻って上述の処理が繰り返され、ステップ520の判定が肯定されたところで、共有ファイル参照時の処理を終了する。   In step 520, the application execution unit 20 determines whether to end the file reference. This determination is made, for example, by determining whether or not an operation for closing the shared file reference UI screen 80 has been performed. If the determination is negative, the process returns to step 502 and the above processing is repeated. When the determination in step 520 is affirmed, the process at the time of referring to the shared file is terminated.

このように、本実施の形態では、P2Pネットワーク10で情報を共有する際には、3つのモードを設定することができる。そして、リアルタイムモードでは、P2Pネットワーク10にログオン時に、全てのデータがコピーされるので、データ転送時間は長くなってしまうが、共有しているデータ内容を全て確認することができ、ダウンロードモードでは、インデックス情報のみからデータ内容を推測する必要があるが、P2Pネットワーク10にログオン時にはインデックス情報のみが共有されるので、高速に共有ファイルのインデックス情報を確認することができる。そして、参照モードでは、データ加工部72で作成された元データよりも小さいサブデータを確認することができるので、データの内容を把握することができる。そして、元データよりも小さいサブデータを共有するので、ネットワークの負荷や各ピアのリソースを抑えて、データを高速に参照することができる。   Thus, in the present embodiment, three modes can be set when information is shared in the P2P network 10. In the real-time mode, all data is copied when logging on to the P2P network 10, so the data transfer time becomes long, but all shared data contents can be confirmed. In the download mode, Although it is necessary to infer the data contents from only the index information, only the index information is shared when logging on to the P2P network 10, so that the index information of the shared file can be confirmed at high speed. In the reference mode, sub-data smaller than the original data created by the data processing unit 72 can be confirmed, so that the contents of the data can be grasped. Since the sub-data smaller than the original data is shared, it is possible to refer to the data at high speed while suppressing the network load and the resources of each peer.

なお、上記の実施の形態において、データ加工部72で作成するサブデータのサイズは、各ピアのパフォーマンスを考慮して可変可能なようにしてもよい。例えば、サブデータの大きさをユーザが設定可能なようにしてもよいし、P2Pネットワークの速度などを考慮して自動的に設定するようにしてもよい。   In the above embodiment, the size of the sub data created by the data processing unit 72 may be variable in consideration of the performance of each peer. For example, the size of the sub data may be set by the user, or may be automatically set in consideration of the speed of the P2P network.

P2Pネットワークのネットワーク構成図である。It is a network block diagram of a P2P network. ピュアP2Pのネットワーク構成図である。It is a network block diagram of pure P2P. ハイブリッドP2Pのネットワーク構成図である。It is a network block diagram of hybrid P2P. P2Pネットワークのグループについて説明するための概念図である。It is a conceptual diagram for demonstrating the group of a P2P network. ピアの基本的構成のブロック図である。It is a block diagram of the basic composition of a peer. メッセージ制御部のブロック図である。It is a block diagram of a message control part. エンドピアで実行される処理のフローチャートである。It is a flowchart of the process performed by an end peer. 転送機能付きピアで実行される処理のフローチャートである。It is a flowchart of the process performed by the peer with a transfer function. スパニングツリーのイメージ図である。It is an image figure of a spanning tree. P2Pネットワークの他の形態のネットワーク構成図である。It is a network block diagram of the other form of a P2P network. 待ち合わせ機能付きピアで実行される処理のフローチャートである。It is a flowchart of the process performed by the peer with a waiting function. 参照モードを実行するアプリケーション実行部及びアプリケーションメモリを備えたピアが接続されたP2Pネットワークの一例を示すブロック図である。It is a block diagram which shows an example of the P2P network to which the peer provided with the application execution part which performs reference mode, and an application memory was connected. 共有ファイル参照UI画面及びモード設定画面の一例を示す図である。It is a figure which shows an example of a shared file reference UI screen and a mode setting screen. 共有データを登録する際の本発明の実施の形態に係わるアプリケーション実行部で行われる処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the process performed in the application execution part concerning embodiment of this invention at the time of registering shared data. 登録された共有データを参照する際の本発明の実施の形態に係わるアプリケーション実行部20で行われる処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of the process performed in the application execution part 20 concerning embodiment of this invention at the time of referring the registered shared data.

符号の説明Explanation of symbols

10 P2Pネットワーク
12 ピア
16 P2P基盤構成部
20 アプリケーション実行部
22 アプリケーションメモリ
70 データ共有部
72 データ加工部
74 共有データ管理部
76 データ表示部
80 共有ファイル参照UI画面
82 モード設定画面
10 P2P network 12 Peer 16 P2P infrastructure configuration unit 20 Application execution unit 22 Application memory 70 Data sharing unit 72 Data processing unit 74 Shared data management unit 76 Data display unit 80 Shared file reference UI screen 82 Mode setting screen

Claims (10)

複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能な情報処理装置であって、
前記ピアツーピアシステム上で共有されるデータの一部を抽出または前記データを縮小したサブデータを作成する作成手段と、
前記作成手段によって作成された前記サブデータを前記ピアツーピアシステム上の共有保存先に保存する保存手段と、
を備えることを特徴とする情報処理装置。
An information processing device that can be connected to a peer-to-peer system in which a plurality of devices are connected and information held for each device can be shared with each other,
Creating means for extracting a part of data shared on the peer-to-peer system or creating sub-data by reducing the data;
Storage means for storing the sub-data created by the creation means in a shared storage destination on the peer-to-peer system;
An information processing apparatus comprising:
前記ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び前記作成手段によって作成されたサブデータを共有する第3モードを有し、前記第1乃至第3の何れかのモードを設定する設定手段を更に備えることを特徴とする請求項1に記載の情報処理装置。   A first mode in which all data stored in the shared storage destination on the peer-to-peer system is shared, a second mode in which only the index information of the data is shared, and a third mode in which the sub-data created by the creating means is shared The information processing apparatus according to claim 1, further comprising setting means for setting any one of the first to third modes. 前記設定手段は、前記ピアツーピアシステム上に接続された前記情報処理装置毎、またはデータ毎にモードを設定することを特徴とする請求項2に記載の情報処理装置。   The information processing apparatus according to claim 2, wherein the setting unit sets a mode for each of the information processing apparatuses connected on the peer-to-peer system or for each data. 複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能な情報処理装置における情報処理方法であって、
前記ピアツーピアシステ上で共有するデータの一部を抽出または前記データを縮小したサブデータを作成する作成ステップと、
前記作成ステップで作成した前記サブデータを前記ピアツーピアシステム上の共有先に保存する保存ステップと、
を含むことを特徴とする情報処理方法。
An information processing method in an information processing apparatus that can be connected to a peer-to-peer system in which a plurality of apparatuses are connected and information held for each apparatus can be shared with each other,
A creation step of extracting a part of data shared on the peer-to-peer system or creating sub-data obtained by reducing the data;
Storing the sub-data created in the creating step in a shared destination on the peer-to-peer system;
An information processing method comprising:
前記ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び前記作成手段によって作成されたサブデータを共有する第3モードを有し、前記第1乃至第3の何れかのモードを設定する設定ステップを更に備えることを特徴とする請求項4に記載の情報処理方法。   A first mode in which all data stored in the shared storage destination on the peer-to-peer system is shared, a second mode in which only the index information of the data is shared, and a third mode in which the sub-data created by the creating means is shared 5. The information processing method according to claim 4, further comprising a setting step of setting any one of the first to third modes. 前記設定ステップは、前記ピアツーピアシステム上に接続された前記情報処理装置毎、またはデータ毎にモードを設定することを特徴とする請求項5に記載の情報処理方法。   6. The information processing method according to claim 5, wherein the setting step sets a mode for each of the information processing apparatuses connected on the peer-to-peer system or for each data. 複数の装置が接続され、各装置毎に保持された情報を互いに共有可能なピアツーピアシステムに接続可能なコンピュータに以下の情報処理を実行させる情報処理プログラムであって、
前記処理は、
前記ピアツーピアシステ上で共有するデータの一部を抽出または前記データを縮小したサブデータを作成する作成ステップと、
前記作成ステップで作成した前記サブデータを前記ピアツーピアシステム上の共有先に保存する保存ステップと、
を含むことを特徴とする情報処理プログラム。
An information processing program for causing a computer that can be connected to a peer-to-peer system capable of sharing information held for each device to which a plurality of devices are connected, to execute the following information processing:
The process is
A creation step of extracting a part of data shared on the peer-to-peer system or creating sub-data obtained by reducing the data;
Storing the sub-data created in the creating step in a shared destination on the peer-to-peer system;
An information processing program comprising:
前記ピアツーピアシステム上の共有保存先に保存された全データを共有する第1モード、データのインデックス情報のみを共有する第2モード、及び前記作成手段によって作成されたサブデータを共有する第3モードを有し、前記第1乃至第3の何れかのモードを設定する設定ステップを更に備えることを特徴とする請求項7に記載の情報処理プログラム。   A first mode in which all data stored in the shared storage destination on the peer-to-peer system is shared, a second mode in which only the index information of the data is shared, and a third mode in which the sub-data created by the creating means is shared The information processing program according to claim 7, further comprising a setting step of setting any one of the first to third modes. 前記設定ステップは、前記ピアツーピアシステム上に接続された前記情報処理装置毎、またはデータ毎にモードを設定することを特徴とする請求項8に記載の情報処理プログラム。   The information processing program according to claim 8, wherein the setting step sets a mode for each of the information processing apparatuses connected on the peer-to-peer system or for each data. 複数のピアが接続されて構成されたピアツーピアシステムであって、
請求項1乃至請求項3の何れか1項に記載の情報処理装置をピアとして含むことを特徴とするピアツーピアシステム。
A peer-to-peer system configured by connecting multiple peers,
The peer-to-peer system characterized by including the information processing apparatus of any one of Claim 1 thru | or 3 as a peer.
JP2004371530A 2004-12-22 2004-12-22 Information processor, information processing method, information processing program and peer-to-peer system Pending JP2006178754A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004371530A JP2006178754A (en) 2004-12-22 2004-12-22 Information processor, information processing method, information processing program and peer-to-peer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004371530A JP2006178754A (en) 2004-12-22 2004-12-22 Information processor, information processing method, information processing program and peer-to-peer system

Publications (1)

Publication Number Publication Date
JP2006178754A true JP2006178754A (en) 2006-07-06

Family

ID=36732815

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004371530A Pending JP2006178754A (en) 2004-12-22 2004-12-22 Information processor, information processing method, information processing program and peer-to-peer system

Country Status (1)

Country Link
JP (1) JP2006178754A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819140A1 (en) * 2006-02-13 2007-08-15 Sony Corporation Information processing apparatus, image sharing method, and program
JP2009100922A (en) * 2007-10-23 2009-05-14 Shimadzu Corp Communication method between devices

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1819140A1 (en) * 2006-02-13 2007-08-15 Sony Corporation Information processing apparatus, image sharing method, and program
US8392850B2 (en) 2006-02-13 2013-03-05 Sony Corporation Information processing apparatus and method, and program for handling images
JP2009100922A (en) * 2007-10-23 2009-05-14 Shimadzu Corp Communication method between devices

Similar Documents

Publication Publication Date Title
US7978631B1 (en) Method and apparatus for encoding and mapping of virtual addresses for clusters
JP5050095B2 (en) Method, system, and node for P2P content sharing
JP4274231B2 (en) Relay server and relay communication system
JP5847185B2 (en) Content sharing method and apparatus using group change information in content-centric network environment
JP2006178782A (en) Information processing method, delivery information processing method, delivery information processing program and delivery processor
JP3872051B2 (en) System and method for searching and distributing contents, and program
JP2006268138A (en) Image forming apparatus, information processing method, information processing program and peer-to-peer system
JP2006268166A (en) Information processor, information processing method, and program
JP4635611B2 (en) Information processing apparatus, method, and program
JP2006178754A (en) Information processor, information processing method, information processing program and peer-to-peer system
JP2006190205A (en) Network system, information processing method, information processing program, and information processor
Othman et al. Design and implementation of application based routing using openflow
JP2006184953A (en) Information processor, information processing method, information processing program, and peer-to-peer system
JP4534758B2 (en) Information processing apparatus, information processing method, information processing program, and peer-to-peer system
JP5338783B2 (en) Information communication system, node device, information communication method and program
Melazzi et al. The potential of Information Centric Networking in two illustrative use scenarios: mobile video delivery and network management in disaster situations
JP2006184954A (en) Information processor, information processing method, information processing program and peer-to-peer system
JP5494550B2 (en) Management device, management system, management method, and management program
JP2006178783A (en) Network, setting management method, setting-managing information processor and setting-managing program
JP4483570B2 (en) Information processing apparatus, method, and program
JP2006195547A (en) Information processing apparatus, method, and program
JP2005208913A (en) Shared album preparing system, shared album preparing method, and shared album preparing program
JP2006268572A (en) Information processor and method, and information processing program
JP2006171899A (en) Information processor, information processing method, information processing program and peer-to-peer system
JP2006178749A (en) Information processor, network system, method, and program