JP4179788B2 - Information processing apparatus, peer-to-peer communication support method, and computer program - Google Patents

Information processing apparatus, peer-to-peer communication support method, and computer program Download PDF

Info

Publication number
JP4179788B2
JP4179788B2 JP2002088093A JP2002088093A JP4179788B2 JP 4179788 B2 JP4179788 B2 JP 4179788B2 JP 2002088093 A JP2002088093 A JP 2002088093A JP 2002088093 A JP2002088093 A JP 2002088093A JP 4179788 B2 JP4179788 B2 JP 4179788B2
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
list
difference
stored
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.)
Expired - Fee Related
Application number
JP2002088093A
Other languages
Japanese (ja)
Other versions
JP2003288254A (en
Inventor
誠 横澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2002088093A priority Critical patent/JP4179788B2/en
Publication of JP2003288254A publication Critical patent/JP2003288254A/en
Application granted granted Critical
Publication of JP4179788B2 publication Critical patent/JP4179788B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、ピア・ツー・ピア通信技術に関し、特にピア・ツー・ピアで高速にデータを共有するための技術に関する。
【0002】
【発明の背景】
情報処理システムの形態として、サーバですべてのデータを集中的に一元管理するクライアント/サーバ方式に対して、複数の情報処理装置がそれぞれデータを管理して、各情報処理装置が協調して動作するピア・ツー・ピア(Peer−to−Peer:以下P2Pと記す)方式がある。
【0003】
P2P方式において、一台の情報処理装置が他の情報処理装置とデータ共有する場合、相手装置は保持しているが自装置は保持していないデータを取得して、データの同期をとらなければならない。このとき、自装置および相手装置は、いずれもそれぞれの装置が保持しているデータのリストを作成し、これらを比較して、差分データを抽出する。
【0004】
ここで、各情報処理装置が保持しているデータの件数が少ないときはそれほど問題とならないが、データ件数が増えるにつれて、リストを比較して差分データを抽出する処理の負荷が重くなり、時間がかかるようになる。
【0005】
また、P2P方式では、ある情報処理装置が他の情報処理装置と通信を行う場合、仲介サーバなどを介さずに、情報処理装置同士が直接データの送受信を行う。
【0006】
そこで、本発明は、情報処理装置が他の情報処理装置とデータ共有するための処理を高速化することを目的とする。
【0007】
さらに、本発明は、情報処理装置同士がピア・ツー・ピア方式で通信をすることを支援するための装置を提供することを別の目的とする。
【0008】
【課題を解決するための手段】
本発明の一つの実施形態に従う、第1の情報処理装置と第2の情報処理装置とが通信を行うときに支援をするための情報処理装置は、第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストを取得する手段と、前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない第1の差分データを示す第1の差分リストを生成する手段と、前記第1の差分リストを、第2の情報処理装置へ送信する手段とを備える。
【0009】
好適な実施形態では、前記第2のリストと第1のリストとを比較して、第2の情報処理装置に記憶されていて、第1の情報処理装置に記憶されていない第2の差分データを示す第2の差分リストを生成する手段と、前記第2の差分リストを、第1の情報処理装置へ送信する手段と、をさらに備える。
【0010】
【発明の実施の形態】
以下、本発明を適用した実施形態に係るデータ共有を行うネットワーク通信システムについて、図面を用いて説明する。本システムは、ネットワークを介して接続された情報処理装置同士が仲介サーバを使わずに直接通信を行う、いわゆるピア・ツー・ピア方式で分散処理を行うためのシステムである。図1に示す第一の実施形態では、ネットワーク9に情報処理装置1、1、…が接続されている。以下の説明では、そのうちの情報処理装置Aと情報処理装置BとがP2Pで通信を行い、データ(本実施形態では後述するメッセージ)を共有する。
【0011】
情報処理装置1、1、…は、例えば、CPU、メモリ、および外部記憶装置などを有する汎用的なコンピュータシステムにより構成され、以下に説明する構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【0012】
情報処理装置1の機能構成を図2に示す。情報処理装置1は、キーボード、あるいはポインティングデバイスなどの入力装置2、およびCRT、あるいは液晶表示装置などの出力装置3と接続されている。情報処理装置1は、ネットワークインタフェース部11と、メッセージ記憶部12と、情報処理装置の個別情報を記憶する個人情報記憶部13と、入出力装置制御部14と、演算処理部15とを、その内部機能として有する。
【0013】
ネットワークインタフェース部11は、ネットワーク9と接続されている他の情報処理装置との通信を制御する。例えば、ネットワークインタフェース部11は、他の情報処理装置と通信を行うためのコネクションを確立するための制御や、通信を終了するときのコネクションを切断するための制御を行う。さらに、ネットワークインタフェース部11は、メッセージファイルなどのデータを送受信する。
【0014】
メッセージ記憶部12は、投稿されたメッセージファイルを記憶する。本実施形態では、2台の情報処理装置がP2Pによるファイル交換を行って、メッセージ記憶部12に記憶されているメッセージファイルを共有する。メッセージ記憶部12に記憶されているメッセージファイル20のデータ構造の例を図3に示す。メッセージファイル20は、データ項目として、ヘッダ21とボディ25とを有する。ヘッダ21は、さらに、投稿者のメールアドレス(From)211と、ニュースグループ名(Newsgroup)212と、メッセージの件名を示すサブジェクト(Subject)213と、メッセージの投稿日時(Date)214と、メッセージを一意に特定するためのメッセージID(Message−ID)215と、他のメッセージを参照したときの、参照メッセージID(Reference)216とを有する。ボディ25はメッセージ本文251により構成される。
【0015】
図2に戻って、記憶部13には情報処理装置自身の個別情報が記憶されている。例えば、ネットワーク上で自装置を一意に識別するための装置ID131および自装置の演算処理の性能を示す演算処理レベル132を記憶する。装置ID131は、例えば、IPアドレスやMACアドレスを用いることができる。演算処理レベル132は、例えば、自装置のMIPS値などの演算能力に基づいて定める。本実施形態では、演算処理レベル132をレベル1から5までの5段階とし、数字が大きくなるに従って処理性能が高い。
【0016】
入出力装置制御部14は、入力装置2および出力装置3を制御する。
【0017】
演算処理部15は、種々の演算を行う。例えば、演算処理部15は、メッセージ記憶部12に記憶されているメッセージファイルのリストを作成する。メッセージファイルリストは、本実施形態では、少なくともメッセージID215を含む。
【0018】
また、演算処理部15は、自装置の演算処理性能と、通信相手となる他の情報処理装置の演算処理性能の優劣を判定する。この優劣判定は、例えば、演算処理レベル132を参照して行う。この優劣判定の結果、処理性能が優る情報処理装置が、次の差分リストの作成を行う。
【0019】
演算処理部15は、さらに、通信相手となる他の情報処理装置のメッセージファイルリストと自装置のメッセージファイルリストとを比較して、差分リストを作成する。例えば、演算処理部15は、両メッセージファイルリストのメッセージIDをそれぞれソートして、互いに突き合わせることによって差分リストを作成する。差分リストは、例えば、接続要求をした情報処理装置には記憶されているが、接続要求を受け付けた情報処理装置には記憶されていないメッセージファイルのリスト(タイプ1)であったり、これとは反対に、接続要求を受け付けた情報処理装置には記憶されているが、接続要求をした情報処理装置には記憶されていないメッセージファイルのリスト(タイプ2)であったり、あるいは、これらの両方(タイプ3)であったりする。演算処理部15がどのタイプの差分リストを作成するかは、その時々で定めることができる。さらに、演算処理部15は、差分リストに基づいて、メッセージ記憶部12から差分に相当するメッセージファイル(差分ファイル)を抽出する。
【0020】
次に、情報処理装置Aと情報処理装置Bがメッセージ交換を行って、データの同期をとるときの処理手順について、図4および図5を用いて説明する。なお、情報処理装置Aと情報処理装置Bは、いずれも、同一の構成(図2参照)を有するので、これらを区別するため、以下の説明では符号の後ろにAまたはBを付す場合がある。
【0021】
まず、情報処理装置Aのネットワークインタフェース部11Aが情報処理装置Bに対して接続要求を送信する(S101)。この接続要求は、送信先として情報処理装置Bの装置ID131Bが指定され、送信元として情報処理装置Aの装置ID131Aが含まれる。
【0022】
情報処理装置Bのネットワークインタフェース部11Bが接続要求を受け付けて、コネクションを確立するための受付処理を行う。このときに、ネットワークインタフェース部11Bは、自装置の演算処理レベル132Bを情報処理装置Aへ送信する(S201)。ここで、情報処理装置Bの演算処理レベル132Bは「レベル5」とする。
【0023】
情報処理装置Aの演算処理部15Aは、情報処理装置Bの演算処理レベル132Bと自装置の演算処理レベル132Aとを比較して、優劣を判定する(S102)。ここでは、情報処理装置Aの演算処理レベル132Aを「レベル3」とする。この比較の結果、情報処理装置Bの方が情報処理装置Aよりも演算処理レベルが高いことがわかる。従って、差分リストの作成は、演算処理性能が優っている情報処理装置Bが行う。
【0024】
このため、まず、情報処理装置Aの演算処理部15Aは、メッセージ記憶部12Aに記憶されているメッセージファイルのリストを作成する(S103)。そして、このリストを情報処理装置Bへ送信するとともに、差分リストの作成を依頼する(S104)。
【0025】
情報処理装置Bは、演算処理部15Bが、メッセージ記憶部12Bに記憶されているメッセージファイルのリストを作成する(S202)。そして、演算処理部15Bは、ここで作成された情報処理装置Bのリストと情報処理装置Aのリストとを比較して、差分リストを作成する(S203)。ここで作成される差分リストのタイプは、タイプ1またはタイプ2である。ここでは、タイプ2、すなわち、接続要求を受けた情報処理装置(情報処理装置B)に記憶されていて、接続要求をした情報処理装置(情報処理装置A)には記憶されていないファイルの差分リスト(情報処理装置Aの不足リスト)を作成することとする。
【0026】
演算処理部15Bは、この差分リストに基づいて、メッセージファイル記憶部12Bから差分ファイルを抽出し、情報処理装置Aへ送信する(S204)。
【0027】
情報処理装置Aが、この差分メッセージファイルの受信が完了すると(S105)、情報処理装置Bとのコネクションを切断して、通信が完了する(S106、S205)。
【0028】
図4に示す例では、情報処理装置Aが情報処理装置Bの保有するメッセージファイルを取得するのみで、情報処理装置Bは情報処理装置Aの保有するメッセージファイルを取得していない。そこで、図5に示す例では、情報処理装置AおよびBの双方が相手装置の保有するメッセージファイルを取得する。
【0029】
情報処理装置AのステップS101〜S104および情報処理装置BのステップS201〜S202までは、図4の場合と同一である。
【0030】
情報処理装置Bの演算処理部15Bは、ステップ202で作成された情報処理装置Bのリストと情報処理装置Aのリストとを比較して、タイプ3の差分リストを作成する(S211)。すなわち、情報処理装置Aに記憶されていて、情報処理装置Bには記憶されていないファイルの差分リスト(情報処理装置Bの不足リスト)と、情報処理装置Bに記憶されていて、情報処理装置Aには記憶されていないファイルの差分リスト(情報処理装置Aの不足リスト)とを作成する。演算処理部15Bは、自装置に記憶されていて情報処理装置Aに記憶されていない差分ファイルをメッセージファイル記憶部12Bから抽出する(S212)。そして、情報処理装置Aへ、差分ファイルと差分リストとを送信する(S213)。このとき送信する差分リストは、情報処理装置Bにとって不足しているメッセージファイルのリストのみでもよい。
【0031】
情報処理装置Aは、この差分ファイルと差分メッセージを受信する(S111)。そして、演算処理部15Aが、情報処理装置Aに記憶されていて情報処理装置Bには記憶されていない差分ファイルを、メッセージファイル記憶部12Aから抽出し、情報処置装置Bへ送信する(S112)。
【0032】
情報処置装置Bが、差分ファイルの受信を完了すると(S214)、情報処理装置Aと情報処理装置Bとはコネクションを切断して、通信を終了する(S113、S215)。
【0033】
図4および図5の例では、情報処理装置Bの処理性能が優っていたときの例を示したが、情報処理装置Aの処理性能が優っていたときは、情報処理装置Aが情報処理装置Bからメッセージファイルリストを取得し、ステップS203およびステップS211の差分リストの作成に対応する処理を情報処理装置Aが行う。
【0034】
これにより、処理能力の高い情報処理装置が、負荷の大きいファイル比較を行うので、P2Pにおいてファイル共有するための処理を高速化することができる。
【0035】
次に、第2の実施形態について説明する。本実施形態の説明においては、第1の実施形態と異なる部分を主に説明し、共通する部分の説明は省略する場合がある。
【0036】
本実施形態に係る通信システムは、図6に示すように、ネットワーク9に情報処理装置1、1…およびサポートサーバ5がそれぞれ接続されている。
【0037】
サポートサーバ5は、例えば、CPU、メモリ、および外部記憶装置などを有する汎用的なコンピュータシステムにより構成され、以下に説明する構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【0038】
サポートサーバ5は、情報処理装置1、1同士がP2Pで通信を行うときに、通信を支援するためのサービスを提供する。例えば、第1の実施形態では、情報処理装置同士がP2P通信でファイルを共通する場合、いずれかの情報処理装置がメッセージファイルリストを比較して差分リストの作成を行っていたが、本実施形態では、これをサポートサーバ5が行う。従って、サポートサーバ5は、リストを比較する処理を高速に行うことができるような構成を備えることにより、P2Pでのファイル共有を高速で行うことができる。
【0039】
さらに、サポートサーバ5は、これ以外にも様々な付加サービスを提供する。以下、サポートサーバ5について説明する。
【0040】
サポートサーバ5は、図7に示すように、その内部機能として、ネットワークインタフェース部51と、演算処理部52と、課金処理部53と、ユーザ情報記憶部54と、付加サービス情報記憶部55と、履歴記憶部56とを備える。
【0041】
ネットワークインタフェース部51は、ネットワーク9に接続された他の装置との通信を制御する。例えば、ネットワーク9に接続された情報処理装置1から、送信元の情報処理装置のID、およびメッセージファイルのリストを受け付けて、後述する処理で作成された差分リストを返送したりする。あるいは、ネットワークインタフェース部51は、後述する付加サービスの依頼を受け付けて、それに応じた所定の情報を返送する。
【0042】
ここで、本実施形態でネットワークインタフェース部51が受信するメッセージファイルリスト60の例を図8に示す。メッセージファイルリスト60は、例えば、メッセージID61と、投稿者のメールアドレス62と、サブジェクト63とを含む。
【0043】
演算処理部52は、差分リスト作成処理、および後述する付加サービスを提供するための処理を行う。差分リスト作成処理は、例えば、情報処理装置AとBとがP2Pでファイル交換を行う場合には、サポートサーバ5が各情報処理装置A、Bからメッセージファイルリストを取得し、リストの比較を行って差分リストを作成する。また、演算処理部52は、様々な付加サービスのための処理を実行するが、付加サービスの具体例は、付加サービス情報記憶部55の記憶内容とあわせて後述する。
【0044】
ユーザ情報記憶部54は、各ユーザの個人情報などが予め登録されている。例えば図9に示すように、ユーザ情報記憶部54は、データ項目としてユーザのメールアドレス541と、キーワード542と、課金情報543とを有する。
【0045】
ユーザのメールアドレス541は、本システムでは、ユーザを一意に識別するための識別情報である。
【0046】
キーワード542は、各ユーザの特性を表すキーワードであり、例えば、ユーザが興味を持っている分野、あるいは情報を収集したい事項と関連するキーワードである。キーワードは、各ユーザが自ら決定して予め登録しておくか、あるいは、使用を重ねるにつれて、サポートサーバ5が図示しない学習処理部で学習して作成される。
【0047】
課金情報543は、各ユーザに対して課金するときに必要な情報であって、例えば、クレジットカード番号や銀行の口座番号、あるいは会員IDなどの個人を特定するための各種のユニークな情報である。
【0048】
課金処理部53は、上記のサービスを有料で提供する場合は、サービスの利用者に対して課金処理を行う。例えば、課金処理部53は、提供したサービスの種類、あるいはサービスを提供するための処理に要した時間などに応じて金額を決定し、課金情報543に基づいて、各ユーザに対して課金する。
【0049】
付加サービス情報記憶部55は、付加サービスで使用するための情報を記憶する。付加サービス情報記憶部55が記憶するデータの具体例は、次に説明する付加サービスA〜Dの具体例とあわせて説明する。
【0050】
付加サービスAは、演算処理部52がメッセージファイルリストを比較して差分リストを作成したとき、この差分リストをユーザの好みに合わせて重み付けするサービスである。重み付けは、例えば、以下に説明するように、差分リスト内のレコードをユーザ情報記憶に基づいてソートして行う。
【0051】
差分リストは、メッセージファイルリスト60(図8参照)と同一のデータ項目を有する。差分リストの送信先のメールアドレスは定められている。ここで、演算処理部52が、メールアドレス541をキーにして、差分リストに含まれるレコードのサブジェクト63と、ユーザ情報記憶部54のキーワード542とを比較する。サブジェクト63とキーワード542とが一致した場合には、一致したキーワード数に応じて、各レコードごとに点数をつける。そして、差分リスト内のレコードを、点数の高い順、すなわち、ユーザの特性に合致する順にソートする。
【0052】
ここで、サブジェクトとキーワードとが一致する場合とは、サブジェクトとキーワードとが完全一致する場合の他に、形態素解析やシソーラスなどを用いて、類似するあるいは一部が一致する場合を含めてもよい。
【0053】
付加サービスBは、演算処理部52が差分リストに含まれているサブジェクトを、図示しない翻訳辞書を用いて翻訳するサービスである。翻訳できる言語の種類または言語数は、サポートサーバ5が備える翻訳辞書の種類や数に応じて定まる。
【0054】
付加サービスCは、差分リストをフィルタリングして、所定のレコードを取り除くサービスである。取り除くレコードは、例えば、ウイルス等を含む可能性のあるメッセージのIDである。
【0055】
付加サービス情報記憶部55には、ウイルスや反社会的なメッセージなどの情報を含む可能性があるメッセージのメッセージIDのリストである削除対象情報が記憶されている。演算処理部52は、削除対象情報に登録されているメッセージIDが、差分リストに含まれているかどうかをチェックする。そして、差分リストに、削除対象情報に登録されているメッセージIDが含まれていたときは、演算処理部52は、そのメッセージIDを差分リストから削除する。
【0056】
付加サービスDは、各情報処理装置1がメッセージ記憶部12に記憶しているメッセージを削除するためのサービスである。この機能は、例えば、投稿者自らが、何らかの理由で投稿したメッセージを削除したいときや、他人が投稿したメッセージであっても、権限を有する者がメッセージを削除するときに用いることができる。
【0057】
付加サービス情報記憶部55は、削除対象メッセージのメッセージIDのリストである削除リストを記憶する。ユーザは、削除リストへ削除対象のメッセージIDを随時登録することができるが、所定の権限を有する特権ユーザと、権限を有しない通常のユーザとでは登録する内容が異なる。
【0058】
まず、通常のユーザが削除リストへ登録する場合、削除対象のメッセージIDと、登録者のメールアドレスが登録される。
【0059】
演算処理部52は、差分リストを作成するためのリスト比較を行う前に、各情報処理装置1から送られてきたメッセージファイルリストと、削除リストとを比較する。そして、メッセージファイルリストのメッセージID61、および投稿者のメールアドレス62の両方が、削除リストに登録されているものと一致したときは、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除する。メッセージID61、または投稿者のメールアドレス62の一方しか一致しなかったときは、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除しない。このようにすることにより、通常のユーザは、自分が投稿したメッセージのみを削除することができ、それ以外は削除することができない。
【0060】
次に、特権ユーザが削除リストへ登録する場合は、所定の単純パスワードや体系化された暗号鍵等を入力させて、登録者が権限を有する特権ユーザであるかどうかの確認を行う。特権ユーザであることが確認できたときは、メッセージIDのみを削除リストへ登録する。
【0061】
このとき、演算処理部52は、上述の場合と同様に、差分リストを作成するためのリスト比較を行う前に、各情報処理装置1から送られてきたメッセージファイルリストと、削除リストとを比較する。メッセージファイルリストのメッセージID61が、削除リストに登録されているものと一致したら、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除する。つまり、この場合は、誰が投稿したメッセージであっても、メッセージIDが一致すれば、演算処理部52はそのレコードをメッセージファイルリストから削除する。これにより、特権ユーザは自分が投稿したメッセージ以外もメッセージファイルリストから削除できる。
【0062】
これにより、削除対象のメッセージが削除リストに登録されると、削除対象メッセージは、差分ファイルとして抽出されることはなくなるので、少なくともその時点以降は他の情報処理装置へ転送されることがなくなる。
【0063】
さらに、情報処理装置1から送られてきたメッセージファイルリストに削除対象のメッセージIDが含まれていたときは、サポートサーバ5から送信元の情報処理装置へ、このメッセージを削除するように指示をしてもよい。これにより、サポートサーバ5へメッセージファイルリストを転送した情報処理装置から、削除対象メッセージが削除される。
【0064】
また、サポートサーバ5を利用してP2Pでファイル共有を行った情報処理装置1が、削除リストに登録された削除対象のメッセージを保持している場合は、演算処理部52が削除要求を作成し、その情報処理装置へ送信して削除するようにしてもよい。この処理を行うときは、履歴記憶部56を利用する。
【0065】
履歴記憶部56は、サポートサーバ5が提供したサービスの履歴を記憶する。履歴記憶部56は、例えば、図11に示すように、P2P通信を行った2台の情報処理装置のメールアドレス561と、各メールアドレスへ送信済みの差分リスト562とを対応付けて記憶する。
【0066】
演算処理部52が、削除リストと履歴記憶部56に記憶されている送信済み差分リスト562とを比較し、削除リストに登録済みのメッセージIDが含まれているかどうかを判定する。削除リストに登録済みのメッセージIDが含まれている送信済み差分リスト562があれば、その差分リスト562と対応付けてある、送信先のメールアドレス561へ、削除要求を送信する。
【0067】
これにより、削除対象メッセージを、過去にサポートサーバ5を利用した情報処理装置1からも削除することができる。
【0068】
なお、特権ユーザの権限を適当に設定することにより、特権ユーザごとに削除できる範囲を制限することもできる。
【0069】
また、上記の処理では、メッセージファイルリストと削除リストとを比較する処理は、差分リストと削除リストとを比較し、削除対象メッセージIDを削除する処理と置換可能である。
【0070】
次に、本実施形態の典型的な処理手順について、図10を用いて説明する。
【0071】
まず、情報処理装置Aのネットワークインタフェース部11Aが情報処理装置Bへ接続要求を送り、情報処理装置Bのネットワークインタフェース部11Bがその受付処理を行って、両装置間でコネクションを確立する(S31、S41)。
【0072】
次に、情報処理装置AおよびBがそれぞれ、メッセージ記憶部12A、Bに記憶されているメッセージファイルのリスト60を作成し、それぞれの装置のユーザのメールアドレスおよび装置ID131A、Bと併せてサポートサーバ5へ送信する(S32、S42)。このとき、必要に応じて付加サービスの依頼を併せて行う。
【0073】
サポートサーバ5では、演算処理部52がメッセージファイルリストを比較する(S51)。そして、差分リストを作成して、情報処理装置AおよびBへ返信する(S52)。このときの差分リストは、情報処理装置Aの不足リストおよび情報処理装置Bの不足リストを含むタイプ3である。
【0074】
なお、サポートサーバ5は、付加サービスの依頼を受けたときは、それに応じて上述のような、所定の処理を行う。また、これらのサービスを有償で提供するときは、課金処理部53が課金処理を行う。
【0075】
情報処理装置Aは、演算処理部15Aが差分リストに基づいて、情報処理装置Bに不足している差分ファイルを抽出する(S33)。同様に、情報処理装置Bは、演算処理部15Bが差分リストに基づいて、情報処理装置Aに不足している差分ファイルを抽出する(S42)。そして、情報処理装置AおよびBがそれぞれの差分ファイルを交換する(S34、S43)。
【0076】
情報処理装置AおよびBが、それぞれ、差分ファイルの受信を完了すると、互いのコネクションを切断して、通信が完了する(S35、S44)。
【0077】
本実施形態によれば、P2P方式での通信において、サポートサーバが通信を行う情報処理装置に対して様々な支援を行って、豊富な機能を提供することができる。
【0078】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【0079】
例えば、サポートサーバが、P2Pで通信を行うことができる情報処理装置のいずれかと一体に実現することもできる。
【0080】
【発明の効果】
本発明によれば、情報処理装置が他の情報処理装置とP2Pでデータ共有するときの処理を高速化することができる。
【図面の簡単な説明】
【図1】本発明を適用した第一の実施形態に係るデータ共有を行うネットワーク通信システムの構成を示す図である。
【図2】情報処理装置の機能構成を示す図である。
【図3】メッセージのデータ構造の一例を示す図である。
【図4】第一の実施形態における処理手順を示すフローチャートである。
【図5】第一の実施形態における処理手順を示すフローチャートである。
【図6】本発明を適用した第二の実施形態に係るデータ共有を行うネットワーク通信システムの構成を示す図である。
【図7】サポートサーバの機能構成を示す図である。
【図8】メッセージファイルリストのデータ構造の一例を示す図である。
【図9】ユーザ情報記憶部に記憶されているユーザ情報の一例を示す図である。
【図10】第二の実施形態における処理手順を示すフローチャートである。
【図11】履歴記憶部のデータ構造の一例を示す図である。
【符号の説明】
1…情報処理装置、2…入力装置、3…表示装置、5…サポートサーバ、11…ネットワークインタフェース部、12…メッセージ記憶部、13…記憶部、14…入出力装置制御部、15…演算処理部、20…メッセージ、51…ネットワークインタフェース部、52…演算処理部、53…課金処理部、54…ユーザ情報記憶部、55…付加サービス情報記憶部、56…履歴記憶部。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a peer-to-peer communication technique, and more particularly to a technique for sharing data at high speed on a peer-to-peer basis.
[0002]
BACKGROUND OF THE INVENTION
As a form of the information processing system, a plurality of information processing apparatuses manage data individually and operate in cooperation with a client / server system in which all data is centrally managed by a server. There is a peer-to-peer (P2P) method.
[0003]
In the P2P method, when one information processing apparatus shares data with another information processing apparatus, it is necessary to acquire data that is held by the partner apparatus but not by the own apparatus and synchronize the data. Don't be. At this time, each of the own device and the partner device creates a list of data held by each device, compares them, and extracts difference data.
[0004]
Here, when the number of data held by each information processing device is small, there is not much problem, but as the number of data increases, the processing load for comparing the lists and extracting the difference data becomes heavier, and the time It becomes like this.
[0005]
In the P2P method, when an information processing apparatus communicates with another information processing apparatus, the information processing apparatuses directly transmit and receive data without using a mediation server.
[0006]
Accordingly, an object of the present invention is to speed up processing for an information processing apparatus to share data with other information processing apparatuses.
[0007]
Furthermore, another object of the present invention is to provide an apparatus for supporting information processing apparatuses to communicate with each other in a peer-to-peer system.
[0008]
[Means for Solving the Problems]
An information processing apparatus for assisting when the first information processing apparatus and the second information processing apparatus perform communication according to an embodiment of the present invention is stored in the first information processing apparatus Means for obtaining a first list indicating data and a second list indicating data stored in the second information processing apparatus, and comparing the first list and the second list; Means for generating a first difference list indicating first difference data that is stored in one information processing apparatus and not stored in a second information processing apparatus; and Means for transmitting to the information processing apparatus.
[0009]
In a preferred embodiment, the second list is compared with the first list, and is stored in the second information processing apparatus, but is not stored in the first information processing apparatus. And a means for generating a second difference list indicating the above and a means for transmitting the second difference list to the first information processing apparatus.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a network communication system that performs data sharing according to an embodiment to which the present invention is applied will be described with reference to the drawings. This system is a system for performing distributed processing by a so-called peer-to-peer method in which information processing apparatuses connected via a network directly communicate without using an intermediary server. In the first embodiment shown in FIG. 1, information processing apparatuses 1, 1,. In the following description, the information processing apparatus A and the information processing apparatus B communicate by P2P and share data (messages described later in the present embodiment).
[0011]
The information processing devices 1, 1,... Are configured by a general-purpose computer system having, for example, a CPU, a memory, an external storage device, and the like. The components or functions described below execute, for example, a computer program It is realized by.
[0012]
A functional configuration of the information processing apparatus 1 is shown in FIG. The information processing apparatus 1 is connected to an input device 2 such as a keyboard or a pointing device, and an output device 3 such as a CRT or a liquid crystal display device. The information processing device 1 includes a network interface unit 11, a message storage unit 12, a personal information storage unit 13 that stores individual information of the information processing device, an input / output device control unit 14, and an arithmetic processing unit 15. Has as an internal function.
[0013]
The network interface unit 11 controls communication with other information processing apparatuses connected to the network 9. For example, the network interface unit 11 performs control for establishing a connection for performing communication with another information processing apparatus and control for disconnecting the connection when communication is terminated. Further, the network interface unit 11 transmits and receives data such as a message file.
[0014]
The message storage unit 12 stores posted message files. In the present embodiment, two information processing apparatuses exchange files by P2P and share message files stored in the message storage unit 12. An example of the data structure of the message file 20 stored in the message storage unit 12 is shown in FIG. The message file 20 has a header 21 and a body 25 as data items. The header 21 further includes a mail address (From) 211 of the poster, a news group name (Newsgroup) 212, a subject (Subject) 213 indicating the subject of the message, a message posting date (Date) 214, and a message. It has a message ID (Message-ID) 215 for uniquely specifying, and a reference message ID (Reference) 216 when referring to another message. The body 25 is composed of a message body 251.
[0015]
Returning to FIG. 2, the storage unit 13 stores individual information of the information processing apparatus itself. For example, a device ID 131 for uniquely identifying the device itself on the network and a computation processing level 132 indicating the performance of the computation processing of the device itself are stored. For example, an IP address or a MAC address can be used as the device ID 131. The calculation processing level 132 is determined based on the calculation capability such as the MIPS value of the device itself, for example. In the present embodiment, the arithmetic processing level 132 has five levels from level 1 to level 5, and the processing performance increases as the number increases.
[0016]
The input / output device control unit 14 controls the input device 2 and the output device 3.
[0017]
The arithmetic processing unit 15 performs various calculations. For example, the arithmetic processing unit 15 creates a list of message files stored in the message storage unit 12. In the present embodiment, the message file list includes at least a message ID 215.
[0018]
In addition, the arithmetic processing unit 15 determines the superiority or inferiority of the arithmetic processing performance of the own device and the arithmetic processing performance of another information processing device that is a communication partner. This superiority or inferiority determination is performed with reference to the arithmetic processing level 132, for example. As a result of this superiority or inferiority determination, an information processing apparatus with superior processing performance creates the next difference list.
[0019]
The arithmetic processing unit 15 further compares the message file list of another information processing apparatus as a communication partner with the message file list of its own apparatus to create a difference list. For example, the arithmetic processing unit 15 creates a difference list by sorting the message IDs of both message file lists and matching each other. The difference list is, for example, a list of message files (type 1) that is stored in the information processing apparatus that has requested the connection but is not stored in the information processing apparatus that has received the connection request. On the contrary, it is a list of message files (type 2) that is stored in the information processing apparatus that has received the connection request but is not stored in the information processing apparatus that has requested the connection, or both of these ( Type 3). Which type of difference list is created by the arithmetic processing unit 15 can be determined from time to time. Further, the arithmetic processing unit 15 extracts a message file (difference file) corresponding to the difference from the message storage unit 12 based on the difference list.
[0020]
Next, a processing procedure when the information processing apparatus A and the information processing apparatus B exchange messages to synchronize data will be described with reference to FIGS. 4 and 5. In addition, since both the information processing apparatus A and the information processing apparatus B have the same configuration (see FIG. 2), in order to distinguish them, in the following description, A or B may be appended to the reference numerals. .
[0021]
First, the network interface unit 11A of the information processing apparatus A transmits a connection request to the information processing apparatus B (S101). In this connection request, the device ID 131B of the information processing device B is specified as the transmission destination, and the device ID 131A of the information processing device A is included as the transmission source.
[0022]
The network interface unit 11B of the information processing apparatus B receives a connection request and performs a reception process for establishing a connection. At this time, the network interface unit 11B transmits its own processing level 132B to the information processing apparatus A (S201). Here, the calculation processing level 132B of the information processing apparatus B is assumed to be “level 5”.
[0023]
The arithmetic processing unit 15A of the information processing apparatus A compares the arithmetic processing level 132B of the information processing apparatus B with the arithmetic processing level 132A of the own apparatus to determine superiority or inferiority (S102). Here, the arithmetic processing level 132A of the information processing apparatus A is assumed to be “level 3”. As a result of this comparison, it can be seen that the information processing apparatus B has a higher calculation processing level than the information processing apparatus A. Therefore, the creation of the difference list is performed by the information processing apparatus B having excellent arithmetic processing performance.
[0024]
For this reason, first, the arithmetic processing unit 15A of the information processing apparatus A creates a list of message files stored in the message storage unit 12A (S103). Then, the list is transmitted to the information processing apparatus B, and the creation of a difference list is requested (S104).
[0025]
In the information processing apparatus B, the arithmetic processing unit 15B creates a list of message files stored in the message storage unit 12B (S202). Then, the arithmetic processing unit 15B compares the list of the information processing device B created here with the list of the information processing device A, and creates a difference list (S203). The type of the difference list created here is type 1 or type 2. Here, type 2, that is, the difference between files stored in the information processing apparatus (information processing apparatus B) that has received the connection request and not stored in the information processing apparatus (information processing apparatus A) that has requested the connection. A list (shortage list of information processing apparatus A) is created.
[0026]
The arithmetic processing unit 15B extracts a difference file from the message file storage unit 12B based on the difference list, and transmits the difference file to the information processing apparatus A (S204).
[0027]
When the information processing apparatus A completes reception of the differential message file (S105), the connection with the information processing apparatus B is disconnected and communication is completed (S106, S205).
[0028]
In the example illustrated in FIG. 4, the information processing apparatus A only acquires the message file held by the information processing apparatus B, and the information processing apparatus B does not acquire the message file held by the information processing apparatus A. Therefore, in the example shown in FIG. 5, both information processing apparatuses A and B acquire message files held by the counterpart apparatuses.
[0029]
Steps S101 to S104 of the information processing apparatus A and steps S201 to S202 of the information processing apparatus B are the same as in the case of FIG.
[0030]
The arithmetic processing unit 15B of the information processing apparatus B compares the list of the information processing apparatus B created in step 202 with the list of the information processing apparatus A, and creates a type 3 difference list (S211). That is, a difference list of files that are stored in the information processing apparatus A and not stored in the information processing apparatus B (shortage list of the information processing apparatus B), and stored in the information processing apparatus B, the information processing apparatus A difference list of files not stored in A (a shortage list of information processing apparatus A) is created. The arithmetic processing unit 15B extracts, from the message file storage unit 12B, a difference file that is stored in the own device but not stored in the information processing device A (S212). Then, the difference file and the difference list are transmitted to the information processing apparatus A (S213). The difference list transmitted at this time may be only a list of message files that are insufficient for the information processing apparatus B.
[0031]
The information processing apparatus A receives the difference file and the difference message (S111). Then, the arithmetic processing unit 15A extracts the difference file stored in the information processing apparatus A but not stored in the information processing apparatus B from the message file storage unit 12A, and transmits the difference file to the information processing apparatus B (S112). .
[0032]
When the information processing apparatus B completes reception of the difference file (S214), the information processing apparatus A and the information processing apparatus B disconnect from the connection and terminate the communication (S113, S215).
[0033]
4 and 5 show an example when the processing performance of the information processing apparatus B is superior. However, when the processing performance of the information processing apparatus A is superior, the information processing apparatus A is the information processing apparatus. The message file list is acquired from B, and the information processing apparatus A performs processing corresponding to the creation of the difference list in steps S203 and S211.
[0034]
As a result, an information processing apparatus having a high processing capacity performs a file comparison with a large load, so that the process for sharing a file in P2P can be accelerated.
[0035]
Next, a second embodiment will be described. In the description of the present embodiment, portions different from those in the first embodiment will be mainly described, and descriptions of common portions may be omitted.
[0036]
In the communication system according to the present embodiment, as shown in FIG. 6, information processing apparatuses 1, 1... And a support server 5 are connected to a network 9.
[0037]
The support server 5 is configured by, for example, a general-purpose computer system having a CPU, a memory, an external storage device, and the like, and the components or functions described below are realized by executing, for example, a computer program.
[0038]
The support server 5 provides a service for supporting communication when the information processing apparatuses 1 and 1 communicate with each other by P2P. For example, in the first embodiment, when information processing apparatuses share a file by P2P communication, one of the information processing apparatuses compares the message file list and creates a difference list. Then, the support server 5 performs this. Therefore, the support server 5 can perform file sharing in P2P at high speed by providing a configuration capable of performing processing for comparing lists at high speed.
[0039]
Further, the support server 5 provides various additional services other than this. Hereinafter, the support server 5 will be described.
[0040]
As shown in FIG. 7, the support server 5 includes, as its internal functions, a network interface unit 51, an arithmetic processing unit 52, a billing processing unit 53, a user information storage unit 54, an additional service information storage unit 55, A history storage unit 56.
[0041]
The network interface unit 51 controls communication with other devices connected to the network 9. For example, the information processing apparatus 1 connected to the network 9 receives the ID of the information processing apparatus as a transmission source and a list of message files, and returns a difference list created in the process described later. Alternatively, the network interface unit 51 receives a request for an additional service, which will be described later, and returns predetermined information corresponding thereto.
[0042]
Here, an example of the message file list 60 received by the network interface unit 51 in this embodiment is shown in FIG. The message file list 60 includes, for example, a message ID 61, a mail address 62 of a poster, and a subject 63.
[0043]
The arithmetic processing unit 52 performs a difference list creation process and a process for providing an additional service described later. For example, when the information processing apparatuses A and B exchange files by P2P, the support server 5 obtains a message file list from each of the information processing apparatuses A and B and compares the lists. To create a difference list. The arithmetic processing unit 52 executes processing for various additional services. Specific examples of the additional services will be described later together with the storage contents of the additional service information storage unit 55.
[0044]
In the user information storage unit 54, personal information of each user is registered in advance. For example, as illustrated in FIG. 9, the user information storage unit 54 includes a user mail address 541, a keyword 542, and billing information 543 as data items.
[0045]
The user's mail address 541 is identification information for uniquely identifying the user in this system.
[0046]
The keyword 542 is a keyword representing the characteristics of each user. For example, the keyword 542 is a keyword related to a field in which the user is interested or a matter for which information is to be collected. The keywords are determined and registered in advance by each user, or the support server 5 learns with a learning processing unit (not shown) as it is used.
[0047]
The billing information 543 is information necessary for billing each user, for example, various kinds of unique information for identifying an individual such as a credit card number, a bank account number, or a member ID. .
[0048]
The billing processing unit 53 performs billing processing for the service user when the service is provided for a fee. For example, the billing processing unit 53 determines the amount according to the type of service provided or the time required for processing to provide the service, and charges each user based on the billing information 543.
[0049]
The supplementary service information storage unit 55 stores information for use in supplementary services. Specific examples of data stored in the additional service information storage unit 55 will be described together with specific examples of the additional services A to D described below.
[0050]
The additional service A is a service that weights the difference list according to the user's preference when the arithmetic processing unit 52 compares the message file lists and creates the difference list. For example, the weighting is performed by sorting the records in the difference list based on the user information storage, as described below.
[0051]
The difference list has the same data items as the message file list 60 (see FIG. 8). The mail address of the transmission destination of the difference list is determined. Here, the arithmetic processing unit 52 compares the subject 63 of the record included in the difference list with the keyword 542 of the user information storage unit 54 using the mail address 541 as a key. When the subject 63 and the keyword 542 match, a score is assigned to each record according to the number of matched keywords. Then, the records in the difference list are sorted in the descending order of the score, that is, in the order matching the user characteristics.
[0052]
Here, the case where the subject and the keyword match may include the case where the subject and the keyword are completely matched, as well as the case where they are similar or partially match using morphological analysis or thesaurus. .
[0053]
The additional service B is a service in which the arithmetic processing unit 52 translates subjects included in the difference list using a translation dictionary (not shown). The type or number of languages that can be translated is determined according to the type and number of translation dictionaries provided in the support server 5.
[0054]
The additional service C is a service that removes a predetermined record by filtering the difference list. The record to be removed is, for example, an ID of a message that may contain a virus or the like.
[0055]
The additional service information storage unit 55 stores deletion target information that is a list of message IDs of messages that may include information such as viruses and antisocial messages. The arithmetic processing unit 52 checks whether the message ID registered in the deletion target information is included in the difference list. Then, when the message ID registered in the deletion target information is included in the difference list, the arithmetic processing unit 52 deletes the message ID from the difference list.
[0056]
The additional service D is a service for deleting a message stored in the message storage unit 12 by each information processing apparatus 1. This function can be used, for example, when a poster himself wants to delete a message posted for some reason, or when an authorized person deletes a message even if it is a message posted by another person.
[0057]
The additional service information storage unit 55 stores a deletion list that is a list of message IDs of messages to be deleted. The user can register the message ID to be deleted at any time in the deletion list, but the contents to be registered differ between a privileged user having a predetermined authority and a normal user having no authority.
[0058]
First, when a normal user registers in the deletion list, the message ID to be deleted and the mail address of the registrant are registered.
[0059]
The arithmetic processing unit 52 compares the message file list sent from each information processing apparatus 1 with the deletion list before performing the list comparison for creating the difference list. When both the message ID 61 in the message file list and the mail address 62 of the poster match with those registered in the deletion list, the arithmetic processing unit 52 records the message ID record from the message file list. delete. When only one of the message ID 61 and the mail address 62 of the poster matches, the arithmetic processing unit 52 does not delete the record of the message ID from the message file list. By doing in this way, a normal user can delete only the message that he / she posted, and cannot delete other than that.
[0060]
Next, when a privileged user registers in the deletion list, a predetermined simple password, a structured encryption key, or the like is input to check whether the registrant is an authorized privileged user. When it is confirmed that the user is a privileged user, only the message ID is registered in the deletion list.
[0061]
At this time, the arithmetic processing unit 52 compares the message file list sent from each information processing apparatus 1 and the deletion list before performing the list comparison for creating the difference list, as in the above case. To do. When the message ID 61 in the message file list matches that registered in the deletion list, the arithmetic processing unit 52 deletes the record of the message ID from the message file list. In other words, in this case, if the message ID matches, the arithmetic processing unit 52 deletes the record from the message file list regardless of who posted the message. This allows privileged users to delete messages other than their own messages from the message file list.
[0062]
As a result, when a message to be deleted is registered in the deletion list, the message to be deleted is not extracted as a difference file, and therefore is not transferred to another information processing apparatus at least after that point.
[0063]
Further, when the message ID to be deleted is included in the message file list sent from the information processing apparatus 1, the support server 5 instructs the information processing apparatus of the transmission source to delete this message. May be. As a result, the deletion target message is deleted from the information processing apparatus that has transferred the message file list to the support server 5.
[0064]
In addition, when the information processing apparatus 1 that has performed file sharing in P2P using the support server 5 holds the message to be deleted registered in the deletion list, the arithmetic processing unit 52 creates a deletion request. Alternatively, it may be transmitted to the information processing apparatus and deleted. When this processing is performed, the history storage unit 56 is used.
[0065]
The history storage unit 56 stores a history of services provided by the support server 5. For example, as illustrated in FIG. 11, the history storage unit 56 stores the mail addresses 561 of the two information processing apparatuses that have performed P2P communication and the difference list 562 that has been transmitted to each mail address in association with each other.
[0066]
The arithmetic processing unit 52 compares the deletion list with the transmitted difference list 562 stored in the history storage unit 56 and determines whether or not the registered message ID is included in the deletion list. If there is a transmitted difference list 562 that includes a registered message ID in the deletion list, a deletion request is transmitted to the destination mail address 561 associated with the difference list 562.
[0067]
Thereby, the deletion target message can be deleted from the information processing apparatus 1 that has used the support server 5 in the past.
[0068]
In addition, the range which can be deleted for every privileged user can also be restrict | limited by setting the privilege of a privileged user appropriately.
[0069]
In the above processing, the processing for comparing the message file list with the deletion list can be replaced with the processing for comparing the difference list with the deletion list and deleting the deletion target message ID.
[0070]
Next, a typical processing procedure of the present embodiment will be described with reference to FIG.
[0071]
First, the network interface unit 11A of the information processing apparatus A sends a connection request to the information processing apparatus B, and the network interface unit 11B of the information processing apparatus B performs the receiving process to establish a connection between the two apparatuses (S31, S31). S41).
[0072]
Next, the information processing apparatuses A and B respectively create a list 60 of message files stored in the message storage units 12A and 12B, and together with the mail addresses of the users of the respective apparatuses and the apparatus IDs 131A and B, support servers 5 (S32, S42). At this time, a request for additional services is also made as necessary.
[0073]
In the support server 5, the arithmetic processing unit 52 compares the message file lists (S51). Then, a difference list is created and sent back to the information processing apparatuses A and B (S52). The difference list at this time is type 3 including the shortage list of the information processing apparatus A and the shortage list of the information processing apparatus B.
[0074]
When the support server 5 receives a request for additional services, the support server 5 performs the predetermined processing as described above. In addition, when these services are provided for a fee, the charging processing unit 53 performs charging processing.
[0075]
In the information processing apparatus A, the arithmetic processing unit 15A extracts a difference file lacking in the information processing apparatus B based on the difference list (S33). Similarly, in the information processing apparatus B, the arithmetic processing unit 15B extracts a difference file that is lacking in the information processing apparatus A based on the difference list (S42). Then, the information processing apparatuses A and B exchange their difference files (S34, S43).
[0076]
When each of the information processing apparatuses A and B completes reception of the difference file, the mutual connection is cut and communication is completed (S35, S44).
[0077]
According to the present embodiment, in the communication using the P2P method, it is possible to provide various functions by providing various support to the information processing apparatus with which the support server performs communication.
[0078]
The above-described embodiments of the present invention are examples for explaining the present invention, and are not intended to limit the scope of the present invention only to those embodiments. Those skilled in the art can implement the present invention in various other modes without departing from the gist of the present invention.
[0079]
For example, the support server can be realized integrally with any of the information processing apparatuses that can perform P2P communication.
[0080]
【The invention's effect】
According to the present invention, it is possible to speed up processing when an information processing apparatus shares data with other information processing apparatuses in P2P.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a network communication system that performs data sharing according to a first embodiment to which the present invention is applied.
FIG. 2 is a diagram illustrating a functional configuration of the information processing apparatus.
FIG. 3 is a diagram illustrating an example of a data structure of a message.
FIG. 4 is a flowchart showing a processing procedure in the first embodiment.
FIG. 5 is a flowchart showing a processing procedure in the first embodiment.
FIG. 6 is a diagram showing a configuration of a network communication system that performs data sharing according to a second embodiment to which the present invention is applied.
FIG. 7 is a diagram illustrating a functional configuration of a support server.
FIG. 8 is a diagram illustrating an example of a data structure of a message file list.
FIG. 9 is a diagram illustrating an example of user information stored in a user information storage unit.
FIG. 10 is a flowchart showing a processing procedure in the second embodiment.
FIG. 11 is a diagram illustrating an example of a data structure of a history storage unit.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Information processing apparatus, 2 ... Input device, 3 ... Display apparatus, 5 ... Support server, 11 ... Network interface part, 12 ... Message memory | storage part, 13 ... Memory | storage part, 14 ... Input / output device control part, 15 ... Arithmetic processing , 20 ... message, 51 ... network interface unit, 52 ... calculation processing unit, 53 ... charge processing unit, 54 ... user information storage unit, 55 ... additional service information storage unit, 56 ... history storage unit.

Claims (6)

第1の情報処理装置と第2の情報処理装置とがピア・ツー・ピア通信を行うときに支援をするための情報処理装置であって、
削除対象データを示す削除リストを記憶する記憶手段と、
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する手段と、
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する手段と、
前記差分データを前記第1の情報処理装置から第2の情報処理装置に対して送信できるよう、前記第1の情報処理装置に前記差分リストを送信する手段と
送信された前記差分リストを記憶する履歴記憶手段と、
前記履歴記憶手段に記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第1の情報処理装置に対して、前記削除対象データの削除を要求する手段と、を備える情報処理装置。
An information processing apparatus for assisting when a first information processing apparatus and a second information processing apparatus perform peer-to-peer communication,
Storage means for storing a deletion list indicating data to be deleted;
A first list indicating data stored in the first information processing apparatus and a second list indicating data stored in the second information processing apparatus are respectively displayed on the first information processing apparatus and the second list . The information processing device, and means for receiving from the
A difference list including information specifying difference data stored in the first information processing apparatus and not stored in the second information processing apparatus by comparing the first list with the second list. Means for generating;
Means for transmitting the difference list to the first information processing apparatus so that the difference data can be transmitted from the first information processing apparatus to the second information processing apparatus ;
History storage means for storing the transmitted difference list;
It is determined whether or not the deletion target data is included in the difference list stored in the history storage unit, and if it is included, a request to delete the deletion target data is issued to the first information processing apparatus. And an information processing apparatus.
第1の情報処理装置と第2の情報処理装置とがピア・ツー・ピア通信を行うときに支援をするための情報処理装置であって、An information processing apparatus for assisting when a first information processing apparatus and a second information processing apparatus perform peer-to-peer communication,
削除対象データを示す削除リストを記憶する記憶手段と、  Storage means for storing a deletion list indicating data to be deleted;
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する手段と、  A first list indicating data stored in the first information processing apparatus and a second list indicating data stored in the second information processing apparatus are respectively displayed on the first information processing apparatus and the second list. The information processing device, and means for receiving from the
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する手段と、  A difference list including information specifying difference data stored in the first information processing apparatus and not stored in the second information processing apparatus by comparing the first list with the second list. Means for generating;
前記差分データを前記第2の情報処理装置から第1の情報処理装置に対して送信要求できるよう、前記第2の情報処理装置に前記差分リストを送信する手段と、  Means for transmitting the difference list to the second information processing apparatus so that the difference information can be transmitted from the second information processing apparatus to the first information processing apparatus;
送信された前記差分リストを記憶する履歴記憶手段と、  History storage means for storing the transmitted difference list;
前記履歴記憶手段に記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第2の情報処理装置に対して、前記削除対象データの削除を要求する手段と、を備える情報処理装置。  It is determined whether or not the deletion target data is included in the difference list stored in the history storage unit, and if it is included, the second information processing apparatus is requested to delete the deletion target data And an information processing apparatus.
第1の情報処理装置と第2の情報処理装置とのピア・ツー・ピア通信を支援する情報処理装置の動作のための方法であって、
前記情報処理装置は、削除対象データを示す削除リストを記憶する記憶手段を備え、
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する処理と、
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する処理と、
前記差分データを前記第1の情報処理装置から第2の情報処理装置に対して送信できるよう、前記第1の情報処理装置に前記差分リストを送信する処理と、
送信された前記差分リストを記憶する履歴記憶処理と、
前記履歴記憶処理により記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第1の情報処理装置に対して、前記削除対象データの削除を要求する処理と、を実施するピア・ツー・ピア通信の支援方法。
A method for the operation of an information processing apparatus that supports peer-to-peer communication between a first information processing apparatus and a second information processing apparatus,
The information processing apparatus includes storage means for storing a deletion list indicating data to be deleted,
First list indicating the data stored in the first information processing apparatus, and the first information processing apparatus a second a second list indicating the data stored in the information processing apparatus, respectively, the second Processing received from the information processing apparatus ,
A difference list including information specifying difference data stored in the first information processing apparatus and not stored in the second information processing apparatus by comparing the first list with the second list. Process to generate,
A process of transmitting the difference list to the first information processing apparatus so that the difference data can be transmitted from the first information processing apparatus to the second information processing apparatus;
A history storage process for storing the transmitted difference list;
It is determined whether or not the deletion target data is included in the difference list stored by the history storage process, and if included, the first information processing apparatus is requested to delete the deletion target data. And a peer-to-peer communication support method for performing the processing .
第1の情報処理装置と第2の情報処理装置とのピア・ツー・ピア通信を支援する情報処理装置の動作のための方法であって、A method for the operation of an information processing apparatus that supports peer-to-peer communication between a first information processing apparatus and a second information processing apparatus,
前記情報処理装置は、削除対象データを示す削除リストを記憶する記憶手段を備え、  The information processing apparatus includes storage means for storing a deletion list indicating data to be deleted,
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処  A first list indicating data stored in the first information processing apparatus, and a second information processing; 理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する処理と、Processing for receiving a second list indicating data stored in the physical device from the first information processing device and the second information processing device, respectively;
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する処理と、  A difference list including information specifying difference data stored in the first information processing apparatus and not stored in the second information processing apparatus by comparing the first list with the second list. Process to generate,
前記差分データを前記第2の情報処理装置から第1の情報処理装置に対して送信要求できるよう、前記第2の情報処理装置に前記差分リストを送信する処理と、  A process of transmitting the difference list to the second information processing device so that the difference information can be transmitted from the second information processing device to the first information processing device;
送信された前記差分リストを記憶する履歴記憶処理と、  A history storage process for storing the transmitted difference list;
前記履歴記憶処理により記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第2の情報処理装置に対して、前記削除対象データの削除を要求する処理と、を実施するピア・ツー・ピア通信の支援方法。  It is determined whether or not the deletion target data is included in the difference list stored by the history storage processing, and if included, the second information processing device is requested to delete the deletion target data. And a peer-to-peer communication support method for performing the processing.
コンピュータに、第1の情報処理装置と第2の情報処理装置とのピア・ツー・ピア通信を支援する手順を実行させるプログラムであって、
前記コンピュータを、制御手段と、削除対象データを示す削除リストを記憶する記憶手段として機能させ、
前記制御手段に対して、
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する手順と、
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する手順と、
前記差分データを前記第1の情報処理装置から第2の情報処理装置に対して送信できるよう、前記第1の情報処理装置に前記差分リストを送信する手順と、
送信された前記差分リストを記憶する履歴記憶手順と、
前記履歴記憶手順により記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第1の情報処理装置に対して、前記削除対象データの削除を要求する手順と、を実行させることを特徴とするプログラム。
A computer, a program for executing the steps of supporting a peer-to-peer communication with the first information processing apparatus and the second information processing apparatus,
Causing the computer to function as control means and storage means for storing a deletion list indicating deletion target data;
For the control means,
A first list indicating data stored in the first information processing apparatus and a second list indicating data stored in the second information processing apparatus are respectively displayed on the first information processing apparatus and the second list . a step of receiving from the information processing apparatus, of,
The first list and by comparing the second list, have been stored in the first information processing apparatus, the difference list including information identifying the differential data which is not stored in the second information processing apparatus The steps to generate
Transmitting the difference list to the first information processing apparatus so that the difference data can be transmitted from the first information processing apparatus to the second information processing apparatus;
A history storage procedure for storing the transmitted difference list;
It is determined whether or not the deletion target data is included in the difference list stored by the history storage procedure, and if it is included, a request to delete the deletion target data is issued to the first information processing apparatus. And a program for executing the program.
コンピュータに、第1の情報処理装置と第2の情報処理装置とのピア・ツー・ピア通信を支援する手順を実行させるプログラムであって、A program for causing a computer to execute a procedure for supporting peer-to-peer communication between a first information processing apparatus and a second information processing apparatus,
前記コンピュータを、制御手段と、削除対象データを示す削除リストを記憶する記憶手段として機能させ、  Causing the computer to function as control means and storage means for storing a deletion list indicating deletion target data;
前記制御手段に対して、  For the control means,
第1の情報処理装置に記憶されているデータを示す第1のリスト、および第2の情報処理装置に記憶されているデータを示す第2のリストをそれぞれ第1の情報処理装置と、第2の情報処理装置と、から受信する手順と、  A first list indicating data stored in the first information processing apparatus and a second list indicating data stored in the second information processing apparatus are respectively displayed on the first information processing apparatus and the second list. The information processing apparatus of
前記第1のリストと第2のリストとを比較して、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない差分データを特定する情報を含む差分リストを生成する手順と、  A difference list including information specifying difference data stored in the first information processing apparatus and not stored in the second information processing apparatus by comparing the first list with the second list. The steps to generate,
前記差分データを前記第2の情報処理装置から第1の情報処理装置に対して送信要求できるよう、前記第2の情報処理装置に前記差分リストを送信する手順と、  Transmitting the difference list to the second information processing apparatus so that the second information processing apparatus can request transmission of the difference data from the second information processing apparatus to the first information processing apparatus;
送信された前記差分リストを前記記憶手段に記憶する履歴記憶手順と、  A history storage procedure for storing the transmitted difference list in the storage means;
前記履歴記憶手順により記憶された差分リストに前記削除対象データが含まれるか否かを判定し、含まれる場合には、前記第2の情報処理装置に対して、前記削除対象データの削除を要求する手順と、を実行させることを特徴とするプログラム。  It is determined whether or not the deletion target data is included in the difference list stored by the history storage procedure, and if it is included, the second information processing apparatus is requested to delete the deletion target data And a program for executing the program.
JP2002088093A 2002-03-27 2002-03-27 Information processing apparatus, peer-to-peer communication support method, and computer program Expired - Fee Related JP4179788B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002088093A JP4179788B2 (en) 2002-03-27 2002-03-27 Information processing apparatus, peer-to-peer communication support method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002088093A JP4179788B2 (en) 2002-03-27 2002-03-27 Information processing apparatus, peer-to-peer communication support method, and computer program

Publications (2)

Publication Number Publication Date
JP2003288254A JP2003288254A (en) 2003-10-10
JP4179788B2 true JP4179788B2 (en) 2008-11-12

Family

ID=29234071

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002088093A Expired - Fee Related JP4179788B2 (en) 2002-03-27 2002-03-27 Information processing apparatus, peer-to-peer communication support method, and computer program

Country Status (1)

Country Link
JP (1) JP4179788B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100496172B1 (en) * 2004-05-29 2005-06-17 주식회사 티나루 Dual web service system using host server in p2p web server configuration
JP4747733B2 (en) 2005-08-22 2011-08-17 ブラザー工業株式会社 Node device, shared information update processing program, shared information update method, and information sharing system
JP4403124B2 (en) * 2005-09-22 2010-01-20 株式会社ドリームボート System, apparatus, method and program for content sharing
WO2014128807A1 (en) * 2013-02-22 2014-08-28 日本電気株式会社 Data sharing system

Also Published As

Publication number Publication date
JP2003288254A (en) 2003-10-10

Similar Documents

Publication Publication Date Title
JP5174888B2 (en) System and method for creating shared information list of peer-to-peer network related applications
US10769101B2 (en) Selective data migration and sharing
Clarke A distributed decentralised information storage and retrieval system
US7761383B2 (en) Method and apparatus for optimizing networking potential using a secured system for an online community
US20080250503A1 (en) Method and system for filtering communication
CN108718341B (en) Method for sharing and searching data
GB2344908A (en) Controlling access to data over the internet
US7512666B2 (en) Global network of web card systems and method thereof
KR20080081160A (en) Strategies for sending content to a target device
RU2576495C2 (en) System and method for global directory service
JP2000066970A (en) Personal relationship information management system, its method and recording medium
CN1514653A (en) Information route method and system based on secret strategy
JP2009080726A (en) User authentication mechanism
JP4369104B2 (en) Community formation support system, its terminal, server and program
JP4179788B2 (en) Information processing apparatus, peer-to-peer communication support method, and computer program
JP4226256B2 (en) Data communication method, data communication system, information processing apparatus, and computer program
JP3477654B2 (en) E-mail matching method and device
NO20013308L (en) Device for searching the Internet
WO2013005939A2 (en) Method for service providing solution for one-sided love using internet or smart device
JPH11184776A (en) Electronic mail system
JP2002024422A (en) System and method for managing registered information and recording medium therefor
EP3588347B1 (en) Systems and methods for identifying unknown attributes of web data fragments when launching a web page in a browser
JP2002259254A (en) System and method for authenticating terminal, information providing device and program
JP7081232B2 (en) Profile management system, information management method, program, information processing equipment
Eldin et al. A privacy preferences architecture for context aware applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050217

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080520

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080717

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080812

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080826

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4179788

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120905

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120905

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees