JP4226256B2 - Data communication method, data communication system, information processing apparatus, and computer program - Google Patents

Data communication method, data communication system, information processing apparatus, and computer program Download PDF

Info

Publication number
JP4226256B2
JP4226256B2 JP2002088060A JP2002088060A JP4226256B2 JP 4226256 B2 JP4226256 B2 JP 4226256B2 JP 2002088060 A JP2002088060 A JP 2002088060A JP 2002088060 A JP2002088060 A JP 2002088060A JP 4226256 B2 JP4226256 B2 JP 4226256B2
Authority
JP
Japan
Prior art keywords
list
information processing
processing apparatus
data
storage unit
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
JP2002088060A
Other languages
Japanese (ja)
Other versions
JP2003288253A (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 JP2002088060A priority Critical patent/JP4226256B2/en
Publication of JP2003288253A publication Critical patent/JP2003288253A/en
Application granted granted Critical
Publication of JP4226256B2 publication Critical patent/JP4226256B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • 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】
そこで、本発明は、情報処理装置が他の情報処理装置とデータ共有するための処理を高速化することを目的とする。
【0006】
【課題を解決するための手段】
本発明の一つの実施形態に従うデータ通信システムは、第1の情報処理装置と、第2の情報処理装置とを有する。第2の情報処理装置が、第1の情報処理装置よりも処理性能が優る場合、第1の情報処理装置は、第1の情報処理装置に記憶されているデータを示す第1のリストを第2の情報処理装置へ送信する手段を備え、第2の情報処理装置は、前記第1のデータリストを受信する手段と、前記第1のデータリストに基づいて、第2の情報処理装置に記憶されていて、第1の情報処理装置には記憶されていない第1の差分データを抽出する手段と、前記第1の差分データを第1の情報処理装置へ送信する手段とを備える。
【0007】
好適な実施形態では、第1の情報処理装置は、第1の情報処理装置に記憶されていて、第2の情報処理装置に記憶されていない第2の差分データを示す差分データリストを受信する手段と、前記差分データリストに基づいて、第2の差分データを抽出する手段と、前記第2の差分データを第2の情報処理装置へ送信する手段と、をさらに備える。第2の情報処理装置は、前記第1のデータリストに基づいて、前記差分データリストを生成する手段と、前記差分データリストを第1の情報処理装置へ送信する手段と、をさらに備える。
【0008】
本発明の他の実施形態に従う情報処理装置は、自装置の処理性能を示す情報を記憶する記憶部と、通信相手の装置から前記通信相手の装置の処理性能を示す情報を取得して、自装置の処理性能と前記通信相手の装置の処理性能とを比較する比較手段と、前記比較の結果、自装置の処理性能が優る場合、前記通信相手の装置が記憶するデータのリストを取得して、前記通信相手の装置が記憶するデータと自装置が記憶するデータとの差分データを示す差分リストを作成する手段と、前記差分リストに基づいて、前記通信相手の装置から前記差分データを取得する手段とを備える。
【0009】
【発明の実施の形態】
以下、本発明を適用した実施形態に係るデータ共有を行うネットワーク通信システムについて、図面を用いて説明する。本システムは、ネットワークを介して接続された情報処理装置同士が仲介サーバを使わずに直接通信を行う、いわゆるピア・ツー・ピア方式で分散処理を行うためのシステムである。図1に示す第一の実施形態では、ネットワーク9に情報処理装置1、1、…が接続されている。以下の説明では、そのうちの情報処理装置Aと情報処理装置BとがP2Pで通信を行い、データ(本実施形態では後述するメッセージ)を共有する。
【0010】
情報処理装置1、1、…は、例えば、CPU、メモリ、および外部記憶装置などを有する汎用的なコンピュータシステムにより構成され、以下に説明する構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【0011】
情報処理装置1の機能構成を図2に示す。情報処理装置1は、キーボード、あるいはポインティングデバイスなどの入力装置2、およびCRT、あるいは液晶表示装置などの出力装置3と接続されている。情報処理装置1は、ネットワークインタフェース部11と、メッセージ記憶部12と、情報処理装置の個別情報を記憶する個人情報記憶部13と、入出力装置制御部14と、演算処理部15とを、その内部機能として有する。
【0012】
ネットワークインタフェース部11は、ネットワーク9と接続されている他の情報処理装置との通信を制御する。例えば、ネットワークインタフェース部11は、他の情報処理装置と通信を行うためのコネクションを確立するための制御や、通信を終了するときのコネクションを切断するための制御を行う。さらに、ネットワークインタフェース部11は、メッセージファイルなどのデータを送受信する。
【0013】
メッセージ記憶部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により構成される。
【0014】
図2に戻って、記憶部13には情報処理装置自身の個別情報が記憶されている。例えば、ネットワーク上で自装置を一意に識別するための装置ID131および自装置の演算処理の性能を示す演算処理レベル132を記憶する。装置ID131は、例えば、IPアドレスやMACアドレスを用いることができる。演算処理レベル132は、例えば、自装置のMIPS値などの演算能力に基づいて定める。本実施形態では、演算処理レベル132をレベル1から5までの5段階とし、数字が大きくなるに従って処理性能が高い。
【0015】
入出力装置制御部14は、入力装置2および出力装置3を制御する。
【0016】
演算処理部15は、種々の演算を行う。例えば、演算処理部15は、メッセージ記憶部12に記憶されているメッセージファイルのリストを作成する。メッセージファイルリストは、本実施形態では、少なくともメッセージID215を含む。
【0017】
また、演算処理部15は、自装置の演算処理性能と、通信相手となる他の情報処理装置の演算処理性能の優劣を判定する。この優劣判定は、例えば、演算処理レベル132を参照して行う。この優劣判定の結果、処理性能が優る情報処理装置が、次の差分リストの作成を行う。
【0018】
演算処理部15は、さらに、通信相手となる他の情報処理装置のメッセージファイルリストと自装置のメッセージファイルリストとを比較して、差分リストを作成する。例えば、演算処理部15は、両メッセージファイルリストのメッセージIDをそれぞれソートして、互いに突き合わせることによって差分リストを作成する。差分リストは、例えば、接続要求をした情報処理装置には記憶されているが、接続要求を受け付けた情報処理装置には記憶されていないメッセージファイルのリスト(タイプ1)であったり、これとは反対に、接続要求を受け付けた情報処理装置には記憶されているが、接続要求をした情報処理装置には記憶されていないメッセージファイルのリスト(タイプ2)であったり、あるいは、これらの両方(タイプ3)であったりする。演算処理部15がどのタイプの差分リストを作成するかは、その時々で定めることができる。さらに、演算処理部15は、差分リストに基づいて、メッセージ記憶部12から差分に相当するメッセージファイル(差分ファイル)を抽出する。
【0019】
次に、情報処理装置Aと情報処理装置Bがメッセージ交換を行って、データの同期をとるときの処理手順について、図4および図5を用いて説明する。なお、情報処理装置Aと情報処理装置Bは、いずれも、同一の構成(図2参照)を有するので、これらを区別するため、以下の説明では符号の後ろにAまたはBを付す場合がある。
【0020】
まず、情報処理装置Aのネットワークインタフェース部11Aが情報処理装置Bに対して接続要求を送信する(S101)。この接続要求は、送信先として情報処理装置Bの装置ID131Bが指定され、送信元として情報処理装置Aの装置ID131Aが含まれる。
【0021】
情報処理装置Bのネットワークインタフェース部11Bが接続要求を受け付けて、コネクションを確立するための受付処理を行う。このときに、ネットワークインタフェース部11Bは、自装置の演算処理レベル132Bを情報処理装置Aへ送信する(S201)。ここで、情報処理装置Bの演算処理レベル132Bは「レベル5」とする。
【0022】
情報処理装置Aの演算処理部15Aは、情報処理装置Bの演算処理レベル132Bと自装置の演算処理レベル132Aとを比較して、優劣を判定する(S102)。ここでは、情報処理装置Aの演算処理レベル132Aを「レベル3」とする。この比較の結果、情報処理装置Bの方が情報処理装置Aよりも演算処理レベルが高いことがわかる。従って、差分リストの作成は、演算処理性能が優っている情報処理装置Bが行う。
【0023】
このため、まず、情報処理装置Aの演算処理部15Aは、メッセージ記憶部12Aに記憶されているメッセージファイルのリストを作成する(S103)。そして、このリストを情報処理装置Bへ送信するとともに、差分リストの作成を依頼する(S104)。
【0024】
情報処理装置Bは、演算処理部15Bが、メッセージ記憶部12Bに記憶されているメッセージファイルのリストを作成する(S202)。そして、演算処理部15Bは、ここで作成された情報処理装置Bのリストと情報処理装置Aのリストとを比較して、差分リストを作成する(S203)。ここで作成される差分リストのタイプは、タイプ1またはタイプ2である。ここでは、タイプ2、すなわち、接続要求を受けた情報処理装置(情報処理装置B)に記憶されていて、接続要求をした情報処理装置(情報処理装置A)には記憶されていないファイルの差分リスト(情報処理装置Aの不足リスト)を作成することとする。
【0025】
演算処理部15Bは、この差分リストに基づいて、メッセージファイル記憶部12Bから差分ファイルを抽出し、情報処理装置Aへ送信する(S204)。
【0026】
情報処理装置Aが、この差分メッセージファイルの受信が完了すると(S105)、情報処理装置Bとのコネクションを切断して、通信が完了する(S106、S205)。
【0027】
図4に示す例では、情報処理装置Aが情報処理装置Bの保有するメッセージファイルを取得するのみで、情報処理装置Bは情報処理装置Aの保有するメッセージファイルを取得していない。そこで、図5に示す例では、情報処理装置AおよびBの双方が相手装置の保有するメッセージファイルを取得する。
【0028】
情報処理装置AのステップS101〜S104および情報処理装置BのステップS201〜S202までは、図4の場合と同一である。
【0029】
情報処理装置Bの演算処理部15Bは、ステップ202で作成された情報処理装置Bのリストと情報処理装置Aのリストとを比較して、タイプ3の差分リストを作成する(S211)。すなわち、情報処理装置Aに記憶されていて、情報処理装置Bには記憶されていないファイルの差分リスト(情報処理装置Bの不足リスト)と、情報処理装置Bに記憶されていて、情報処理装置Aには記憶されていないファイルの差分リスト(情報処理装置Aの不足リスト)とを作成する。演算処理部15Bは、自装置に記憶されていて情報処理装置Aに記憶されていない差分ファイルをメッセージファイル記憶部12Bから抽出する(S212)。そして、情報処理装置Aへ、差分ファイルと差分リストとを送信する(S213)。このとき送信する差分リストは、情報処理装置Bにとって不足しているメッセージファイルのリストのみでもよい。
【0030】
情報処理装置Aは、この差分ファイルと差分メッセージを受信する(S111)。そして、演算処理部15Aが、情報処理装置Aに記憶されていて情報処理装置Bには記憶されていない差分ファイルを、メッセージファイル記憶部12Aから抽出し、情報処置装置Bへ送信する(S112)。
【0031】
情報処置装置Bが、差分ファイルの受信を完了すると(S214)、情報処理装置Aと情報処理装置Bとはコネクションを切断して、通信を終了する(S113、S215)。
【0032】
図4および図5の例では、情報処理装置Bの処理性能が優っていたときの例を示したが、情報処理装置Aの処理性能が優っていたときは、情報処理装置Aが情報処理装置Bからメッセージファイルリストを取得し、ステップS203およびステップS211の差分リストの作成に対応する処理を情報処理装置Aが行う。
【0033】
これにより、処理能力の高い情報処理装置が、負荷の大きいファイル比較を行うので、P2Pにおいてファイル共有するための処理を高速化することができる。
【0034】
次に、第2の実施形態について説明する。本実施形態の説明においては、第1の実施形態と異なる部分を主に説明し、共通する部分の説明は省略する場合がある。
【0035】
本実施形態に係る通信システムは、図6に示すように、ネットワーク9に情報処理装置1、1…およびサポートサーバ5がそれぞれ接続されている。
【0036】
サポートサーバ5は、例えば、CPU、メモリ、および外部記憶装置などを有する汎用的なコンピュータシステムにより構成され、以下に説明する構成要素または機能は、例えば、コンピュータプログラムを実行することにより実現される。
【0037】
サポートサーバ5は、情報処理装置1、1同士がP2Pで通信を行うときに、通信を支援するためのサービスを提供する。例えば、第1の実施形態では、情報処理装置同士がP2P通信でファイルを共通する場合、いずれかの情報処理装置がメッセージファイルリストを比較して差分リストの作成を行っていたが、本実施形態では、これをサポートサーバ5が行う。従って、サポートサーバ5は、リストを比較する処理を高速に行うことができるような構成を備えることにより、P2Pでのファイル共有を高速で行うことができる。
【0038】
さらに、サポートサーバ5は、これ以外にも様々な付加サービスを提供する。以下、サポートサーバ5について説明する。
【0039】
サポートサーバ5は、図7に示すように、その内部機能として、ネットワークインタフェース部51と、演算処理部52と、課金処理部53と、ユーザ情報記憶部54と、付加サービス情報記憶部55と、履歴記憶部56とを備える。
【0040】
ネットワークインタフェース部51は、ネットワーク9に接続された他の装置との通信を制御する。例えば、ネットワーク9に接続された情報処理装置1から、送信元の情報処理装置のID、およびメッセージファイルのリストを受け付けて、後述する処理で作成された差分リストを返送したりする。あるいは、ネットワークインタフェース部51は、後述する付加サービスの依頼を受け付けて、それに応じた所定の情報を返送する。
【0041】
ここで、本実施形態でネットワークインタフェース部51が受信するメッセージファイルリスト60の例を図8に示す。メッセージファイルリスト60は、例えば、メッセージID61と、投稿者のメールアドレス62と、サブジェクト63とを含む。
【0042】
演算処理部52は、差分リスト作成処理、および後述する付加サービスを提供するための処理を行う。差分リスト作成処理は、例えば、情報処理装置AとBとがP2Pでファイル交換を行う場合には、サポートサーバ5が各情報処理装置A、Bからメッセージファイルリストを取得し、リストの比較を行って差分リストを作成する。また、演算処理部52は、様々な付加サービスのための処理を実行するが、付加サービスの具体例は、付加サービス情報記憶部55の記憶内容とあわせて後述する。
【0043】
ユーザ情報記憶部54は、各ユーザの個人情報などが予め登録されている。例えば図9に示すように、ユーザ情報記憶部54は、データ項目としてユーザのメールアドレス541と、キーワード542と、課金情報543とを有する。
【0044】
ユーザのメールアドレス541は、本システムでは、ユーザを一意に識別するための識別情報である。
【0045】
キーワード542は、各ユーザの特性を表すキーワードであり、例えば、ユーザが興味を持っている分野、あるいは情報を収集したい事項と関連するキーワードである。キーワードは、各ユーザが自ら決定して予め登録しておくか、あるいは、使用を重ねるにつれて、サポートサーバ5が図示しない学習処理部で学習して作成される。
【0046】
課金情報543は、各ユーザに対して課金するときに必要な情報であって、例えば、クレジットカード番号や銀行の口座番号、あるいは会員IDなどの個人を特定するための各種のユニークな情報である。
【0047】
課金処理部53は、上記のサービスを有料で提供する場合は、サービスの利用者に対して課金処理を行う。例えば、課金処理部53は、提供したサービスの種類、あるいはサービスを提供するための処理に要した時間などに応じて金額を決定し、課金情報543に基づいて、各ユーザに対して課金する。
【0048】
付加サービス情報記憶部55は、付加サービスで使用するための情報を記憶する。付加サービス情報記憶部55が記憶するデータの具体例は、次に説明する付加サービスA〜Dの具体例とあわせて説明する。
【0049】
付加サービスAは、演算処理部52がメッセージファイルリストを比較して差分リストを作成したとき、この差分リストをユーザの好みに合わせて重み付けするサービスである。重み付けは、例えば、以下に説明するように、差分リスト内のレコードをユーザ情報記憶に基づいてソートして行う。
【0050】
差分リストは、メッセージファイルリスト60(図8参照)と同一のデータ項目を有する。差分リストの送信先のメールアドレスは定められている。ここで、演算処理部52が、メールアドレス541をキーにして、差分リストに含まれるレコードのサブジェクト63と、ユーザ情報記憶部54のキーワード542とを比較する。サブジェクト63とキーワード542とが一致した場合には、一致したキーワード数に応じて、各レコードごとに点数をつける。そして、差分リスト内のレコードを、点数の高い順、すなわち、ユーザの特性に合致する順にソートする。
【0051】
ここで、サブジェクトとキーワードとが一致する場合とは、サブジェクトとキーワードとが完全一致する場合の他に、形態素解析やシソーラスなどを用いて、類似するあるいは一部が一致する場合を含めてもよい。
【0052】
付加サービスBは、演算処理部52が差分リストに含まれているサブジェクトを、図示しない翻訳辞書を用いて翻訳するサービスである。翻訳できる言語の種類または言語数は、サポートサーバ5が備える翻訳辞書の種類や数に応じて定まる。
【0053】
付加サービスCは、差分リストをフィルタリングして、所定のレコードを取り除くサービスである。取り除くレコードは、例えば、ウイルス等を含む可能性のあるメッセージのIDである。
【0054】
付加サービス情報記憶部55には、ウイルスや反社会的なメッセージなどの情報を含む可能性があるメッセージのメッセージIDのリストである削除対象情報が記憶されている。演算処理部52は、削除対象情報に登録されているメッセージIDが、差分リストに含まれているかどうかをチェックする。そして、差分リストに、削除対象情報に登録されているメッセージIDが含まれていたときは、演算処理部52は、そのメッセージIDを差分リストから削除する。
【0055】
付加サービスDは、各情報処理装置1がメッセージ記憶部12に記憶しているメッセージを削除するためのサービスである。この機能は、例えば、投稿者自らが、何らかの理由で投稿したメッセージを削除したいときや、他人が投稿したメッセージであっても、権限を有する者がメッセージを削除するときに用いることができる。
【0056】
付加サービス情報記憶部55は、削除対象メッセージのメッセージIDのリストである削除リストを記憶する。ユーザは、削除リストへ削除対象のメッセージIDを随時登録することができるが、所定の権限を有する特権ユーザと、権限を有しない通常のユーザとでは登録する内容が異なる。
【0057】
まず、通常のユーザが削除リストへ登録する場合、削除対象のメッセージIDと、登録者のメールアドレスが登録される。
【0058】
演算処理部52は、差分リストを作成するためのリスト比較を行う前に、各情報処理装置1から送られてきたメッセージファイルリストと、削除リストとを比較する。そして、メッセージファイルリストのメッセージID61、および投稿者のメールアドレス62の両方が、削除リストに登録されているものと一致したときは、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除する。メッセージID61、または投稿者のメールアドレス62の一方しか一致しなかったときは、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除しない。このようにすることにより、通常のユーザは、自分が投稿したメッセージのみを削除することができ、それ以外は削除することができない。
【0059】
次に、特権ユーザが削除リストへ登録する場合は、所定の単純パスワードや体系化された暗号鍵等を入力させて、登録者が権限を有する特権ユーザであるかどうかの確認を行う。特権ユーザであることが確認できたときは、メッセージIDのみを削除リストへ登録する。
【0060】
このとき、演算処理部52は、上述の場合と同様に、差分リストを作成するためのリスト比較を行う前に、各情報処理装置1から送られてきたメッセージファイルリストと、削除リストとを比較する。メッセージファイルリストのメッセージID61が、削除リストに登録されているものと一致したら、演算処理部52は、そのメッセージIDのレコードをメッセージファイルリストから削除する。つまり、この場合は、誰が投稿したメッセージであっても、メッセージIDが一致すれば、演算処理部52はそのレコードをメッセージファイルリストから削除する。これにより、特権ユーザは自分が投稿したメッセージ以外もメッセージファイルリストから削除できる。
【0061】
これにより、削除対象のメッセージが削除リストに登録されると、削除対象メッセージは、差分ファイルとして抽出されることはなくなるので、少なくともその時点以降は他の情報処理装置へ転送されることがなくなる。
【0062】
さらに、情報処理装置1から送られてきたメッセージファイルリストに削除対象のメッセージIDが含まれていたときは、サポートサーバ5から送信元の情報処理装置へ、このメッセージを削除するように指示をしてもよい。これにより、サポートサーバ5へメッセージファイルリストを転送した情報処理装置から、削除対象メッセージが削除される。
【0063】
また、サポートサーバ5を利用してP2Pでファイル共有を行った情報処理装置1が、削除リストに登録された削除対象のメッセージを保持している場合は、演算処理部52が削除要求を作成し、その情報処理装置へ送信して削除するようにしてもよい。この処理を行うときは、履歴記憶部56を利用する。
【0064】
履歴記憶部56は、サポートサーバ5が提供したサービスの履歴を記憶する。履歴記憶部56は、例えば、図11に示すように、P2P通信を行った2台の情報処理装置のメールアドレス561と、各メールアドレスへ送信済みの差分リスト562とを対応付けて記憶する。
【0065】
演算処理部52が、削除リストと履歴記憶部56に記憶されている送信済み差分リスト562とを比較し、削除リストに登録済みのメッセージIDが含まれているかどうかを判定する。削除リストに登録済みのメッセージIDが含まれている送信済み差分リスト562があれば、その差分リスト562と対応付けてある、送信先のメールアドレス561へ、削除要求を送信する。
【0066】
これにより、削除対象メッセージを、過去にサポートサーバ5を利用した情報処理装置1からも削除することができる。
【0067】
なお、特権ユーザの権限を適当に設定することにより、特権ユーザごとに削除できる範囲を制限することもできる。
【0068】
また、上記の処理では、メッセージファイルリストと削除リストとを比較する処理は、差分リストと削除リストとを比較し、削除対象メッセージIDを削除する処理と置換可能である。
【0069】
次に、本実施形態の典型的な処理手順について、図10を用いて説明する。
【0070】
まず、情報処理装置Aのネットワークインタフェース部11Aが情報処理装置Bへ接続要求を送り、情報処理装置Bのネットワークインタフェース部11Bがその受付処理を行って、両装置間でコネクションを確立する(S31、S41)。
【0071】
次に、情報処理装置AおよびBがそれぞれ、メッセージ記憶部12A、Bに記憶されているメッセージファイルのリスト60を作成し、それぞれの装置のユーザのメールアドレスおよび装置ID131A、Bと併せてサポートサーバ5へ送信する(S32、S42)。このとき、必要に応じて付加サービスの依頼を併せて行う。
【0072】
サポートサーバ5では、演算処理部52がメッセージファイルリストを比較する(S51)。そして、差分リストを作成して、情報処理装置AおよびBへ返信する(S52)。このときの差分リストは、情報処理装置Aの不足リストおよび情報処理装置Bの不足リストを含むタイプ3である。
【0073】
なお、サポートサーバ5は、付加サービスの依頼を受けたときは、それに応じて上述のような、所定の処理を行う。また、これらのサービスを有償で提供するときは、課金処理部53が課金処理を行う。
【0074】
情報処理装置Aは、演算処理部15Aが差分リストに基づいて、情報処理装置Bに不足している差分ファイルを抽出する(S33)。同様に、情報処理装置Bは、演算処理部15Bが差分リストに基づいて、情報処理装置Aに不足している差分ファイルを抽出する(S42)。そして、情報処理装置AおよびBがそれぞれの差分ファイルを交換する(S34、S43)。
【0075】
情報処理装置AおよびBが、それぞれ、差分ファイルの受信を完了すると、互いのコネクションを切断して、通信が完了する(S35、S44)。
【0076】
本実施形態によれば、P2P方式での通信において、サポートサーバが通信を行う情報処理装置に対して様々な支援を行って、豊富な機能を提供することができる。
【0077】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【0078】
例えば、サポートサーバが、P2Pで通信を行うことができる情報処理装置のいずれかと一体に実現することもできる。
【0079】
【発明の効果】
本発明によれば、情報処理装置が他の情報処理装置と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 device shares data with other information processing devices, it must acquire data that the other device holds but does not hold, and synchronize the data. I must. 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, it does not matter so much, but as the number of data increases, the processing load for comparing the lists and extracting differential data becomes heavier. Will start.
[0005]
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.
[0006]
[Means for Solving the Problems]
A data communication system according to an embodiment of the present invention includes a first information processing device and a second information processing device. When the second information processing device is superior in processing performance to the first information processing device, the first information processing device displays a first list indicating data stored in the first information processing device. Means for transmitting to the second information processing apparatus, wherein the second information processing apparatus stores the first data list in the second information processing apparatus based on the first data list and the means for receiving the first data list. And means for extracting the first difference data that is not stored in the first information processing apparatus and means for transmitting the first difference data to the first information processing apparatus.
[0007]
In a preferred embodiment, the first information processing apparatus receives a difference data list indicating second difference data stored in the first information processing apparatus and not stored in the second information processing apparatus. Means, means for extracting the second difference data based on the difference data list, and means for transmitting the second difference data to the second information processing apparatus. The second information processing apparatus further includes means for generating the difference data list based on the first data list, and means for transmitting the difference data list to the first information processing apparatus.
[0008]
An information processing apparatus according to another embodiment of the present invention obtains information indicating the processing performance of the communication partner device from a storage unit that stores information indicating the processing performance of the device and the communication partner device. The comparison means for comparing the processing performance of the device and the processing performance of the communication partner device, and if the processing performance of the own device is superior as a result of the comparison, obtain a list of data stored in the communication partner device Means for creating a difference list indicating difference data between data stored in the communication partner device and data stored in the own device; and acquiring the difference data from the communication partner device based on the difference list Means.
[0009]
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).
[0010]
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.
[0011]
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.
[0012]
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.
[0013]
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.
[0014]
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.
[0015]
The input / output device control unit 14 controls the input device 2 and the output device 3.
[0016]
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.
[0017]
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.
[0018]
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.
[0019]
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. .
[0020]
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.
[0021]
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”.
[0022]
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.
[0023]
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).
[0024]
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.
[0025]
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).
[0026]
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).
[0027]
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.
[0028]
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.
[0029]
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.
[0030]
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). .
[0031]
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).
[0032]
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.
[0033]
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.
[0034]
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.
[0035]
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.
[0036]
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.
[0037]
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.
[0038]
Further, the support server 5 provides various additional services other than this. Hereinafter, the support server 5 will be described.
[0039]
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.
[0040]
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.
[0041]
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.
[0042]
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.
[0043]
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.
[0044]
The user's mail address 541 is identification information for uniquely identifying the user in this system.
[0045]
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.
[0046]
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. .
[0047]
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.
[0048]
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.
[0049]
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.
[0050]
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.
[0051]
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. .
[0052]
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.
[0053]
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.
[0054]
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.
[0055]
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.
[0056]
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.
[0057]
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.
[0058]
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.
[0059]
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.
[0060]
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.
[0061]
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.
[0062]
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.
[0063]
In addition, when the information processing apparatus 1 that has performed file sharing in P2P using the support server 5 holds a 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.
[0064]
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.
[0065]
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.
[0066]
Thereby, the deletion target message can be deleted from the information processing apparatus 1 that has used the support server 5 in the past.
[0067]
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.
[0068]
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.
[0069]
Next, a typical processing procedure of the present embodiment will be described with reference to FIG.
[0070]
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).
[0071]
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.
[0072]
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.
[0073]
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.
[0074]
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).
[0075]
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).
[0076]
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.
[0077]
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.
[0078]
For example, the support server can be realized integrally with any of the information processing apparatuses that can perform P2P communication.
[0079]
【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 (10)

同一の構成を有する複数の情報処理装置がネットワークを介してピア・ツー・ピア方式で接続されデータ通信によりデータを共有するための方法であって、
前記情報処理装置の各々が、自装置の演算処理の性能を示す演算処理レベルを記憶する第1の記憶部と、データを記憶する第2の記憶部と、を有し、
前記情報処理装置のうち1つが、
他の前記情報処理装置に、接続要求を送信することにより、これらの情報処理装置の間の接続を確立するステップと、
前記ステップにより互いに接続された一対の情報処理装置のうち一方の情報処理装置が、他方の情報報処理装置から送信された、該他方の情報処理装置の演算処理レベルを受信するステップと、
前記一方の情報処理装置が、前記他方の情報処理装置の演算処理レベルと、自装置の演算処理レベルとを比較するステップと、
該一対の情報処理装置のうち、演算処理レベルが低いものを第1の情報処理装置、演算処理レベルが高いものを第2の情報処理装置として、
前記第2の情報処理装置が、前記第1の情報処理装置の前記第2の記憶部に記憶されているデータのリストである第1のリストを取得するステップと、
前記第2の情報処理装置が、自装置の前記第2の記憶部に記憶されているデータのリストである第2のリストと前記第1のリストとに基づき、自装置の前記第2の記憶部に記憶されており、且つ、前記第1の情報処理装置の前記第2の記憶部に記憶されていないデータである第1の差分データを、自装置の前記第2の記憶部から抽出するステップと、
前記第2の情報処理装置が、前記抽出した第1の差分データを、前記第1の情報処理装置に送信するステップと、を含むこと
を特徴とする情報処理装置間のデータ通信方法。
A plurality of information processing devices having the same configuration are connected in a peer-to-peer manner via a network and share data by data communication,
Each of the information processing devices has a first storage unit that stores an arithmetic processing level indicating the performance of arithmetic processing of the own device, and a second storage unit that stores data.
One of the information processing devices is
Establishing a connection between these information processing devices by transmitting a connection request to the other information processing devices;
One of the pair of information processing devices connected to each other by the step receives the arithmetic processing level of the other information processing device transmitted from the other information processing device;
The one information processing apparatus compares the arithmetic processing level of the other information processing apparatus with the arithmetic processing level of the own apparatus;
Among the pair of information processing devices, a low information processing device is a first information processing device, and a high information processing device is a second information processing device.
The second information processing apparatus obtaining a first list that is a list of data stored in the second storage unit of the first information processing apparatus;
The second information processing apparatus is configured to store the second storage of the own apparatus based on a second list that is a list of data stored in the second storage unit of the own apparatus and the first list. First difference data that is stored in the storage unit and not stored in the second storage unit of the first information processing apparatus is extracted from the second storage unit of the own apparatus. Steps,
The second information processing apparatus includes a step of transmitting the extracted first difference data to the first information processing apparatus. A data communication method between the information processing apparatuses.
前記第2の情報処理装置が前記第1のリストを取得するステップは、前記第1の情報処理装置が前記第1のリストを生成して前記第2の情報処理装置に送信することにより該第1のリストを取得し、
前記第2の情報処理装置が前記第1の差分データを抽出するステップは、前記第2の情報処理装置が、前記第2のリストを生成し、該第2のリストと前記第1のリストとに基づき、自装置の前記第2の記憶部に記憶されており、且つ、前記第1の情報処理装置の前記第2の記憶部に記憶されていないデータのリストである第1の差分リストを生成し、該第1の差分リストに基づいて、前記第1の差分データを抽出することを特徴とする請求項1記載のデータ通信方法。
The step of acquiring the first list by the second information processing apparatus is performed by generating the first list and transmitting the first list to the second information processing apparatus. Get a list of 1,
The step of extracting the first difference data by the second information processing apparatus includes the second information processing apparatus generating the second list, the second list, the first list, Based on the first difference list, which is a list of data stored in the second storage unit of the device itself and not stored in the second storage unit of the first information processing device. The data communication method according to claim 1, wherein the first difference data is generated and extracted based on the first difference list.
前記第2の情報処理装置が、
前記第1のリストと前記第2のリストとに基づき、前記第1の差分リストと、前記第1の情報処理装置の前記第2の記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第2の差分リストを生成するステップと、
前記第2の情報処理装置が、前記第2の差分リストを、前記第1の情報処理装置に送信するステップと、
前記第1の情報処理装置が、
前記第2の差分リストに示されるデータである第2の差分データを、自装置の前記第2の記憶部から抽出するステップと、
前記第1の情報処理装置が、前記抽出した第2の差分データを、前記第2の情報処理装置に送信するステップと、をさらに含むこと
を特徴とする請求項2記載のデータ通信方法。
The second information processing apparatus is
Based on the first list and the second list, the first difference list is stored in the second storage unit of the first information processing apparatus, and the first list of the own apparatus is stored. Generating a second difference list that is a list of data not stored in the storage unit of
The second information processing apparatus transmitting the second difference list to the first information processing apparatus;
The first information processing apparatus is
Extracting second difference data, which is data shown in the second difference list, from the second storage unit of the device;
The data communication method according to claim 2, further comprising: the first information processing apparatus transmitting the extracted second difference data to the second information processing apparatus.
同一の構成を有する複数の情報処理装置がネットワークを介してピア・ツー・ピア方式で接続されデータの共有を行うデータ通信システムであって、
前記情報処理装置の各々が、
自装置の演算処理の性能を示す演算処理レベルを記憶する第1の記憶部と、
データを記憶する第2の記憶部と、
他の前記情報処理装置に、接続要求を送信して接続を確立させる接続要求手段と、
前記他の情報処理装置から送信された、該他の情報処理装置の演算処理レベルを受信するレベル取得手段と、
前記他の情報処理装置の前記演算処理レベルと、自装置の前記演算処理レベルとを比較する比較手段と、
リスト取得手段と、
差分データ抽出手段と、
差分データ提供手段と、を有し、
互いに接続された一対の情報処理装置のうち、演算処理レベルが低いものを第1の情報処理装置、演算装置の処理性能が高いものを第2の情報処理装置として、
前記第2の情報処理装置の前記リスト取得手段が、前記第1の情報処理装置の前記第2の記憶部に記憶されているデータのリストである第1のリストを取得し、
前記第2の情報処理装置の前記差分データ抽出手段が、自装置の前記第2の記憶部に記憶されているデータのリストである第2のリストと前記第1のリストとに基づき、自装置の前記第2の記憶部に記憶されており、且つ、前記第1の情報処理装置の前記第2の記憶部に記憶されていないデータである第1の差分データを、自装置の前記第2の記憶部から抽出し、
前記第2の情報処理装置の前記差分データ提供手段が、前記抽出した第1の差分データを、前記第1の情報処理装置に送信すること
を特徴とするデータ通信システム。
A data communication system in which a plurality of information processing apparatuses having the same configuration are connected via a network in a peer-to-peer manner and share data,
Each of the information processing devices
A first storage unit that stores an arithmetic processing level indicating the performance of the arithmetic processing of the own device;
A second storage unit for storing data;
A connection request means for establishing a connection by transmitting a connection request to the other information processing apparatus;
Level acquisition means for receiving an arithmetic processing level of the other information processing apparatus transmitted from the other information processing apparatus;
Comparison means for comparing the arithmetic processing level of the other information processing apparatus and the arithmetic processing level of the own apparatus;
A list acquisition means;
Differential data extraction means;
Differential data providing means,
Among a pair of information processing devices connected to each other, a low information processing device is a first information processing device, and a high information processing device is a second information processing device.
The list acquisition means of the second information processing apparatus acquires a first list that is a list of data stored in the second storage unit of the first information processing apparatus;
The difference data extraction means of the second information processing apparatus is based on a second list that is a list of data stored in the second storage unit of the own apparatus and the first list. The first difference data, which is data stored in the second storage unit and not stored in the second storage unit of the first information processing apparatus, is stored in the second difference of the own apparatus. Extracted from the storage of
A data communication system, wherein the difference data providing means of the second information processing apparatus transmits the extracted first difference data to the first information processing apparatus.
前記情報処理装置の各々は、
リスト生成手段と、
リスト送信手段と、をさらに有し、
前記第1の情報処理装置の前記リスト送信手段が、前記第1のリストを生成して前記第2の情報処理装置に送信し、
前記第2の情報処理装置の前記リスト生成手段が、前記第2のリストを生成し、該第2のリストと前記第1のリストとに基づき、前記第1の差分データのリストである第1の差分リストを生成し、
前記第2の情報処理装置の前記差分データ抽出手段が、前記第1の差分リストに基づいて、前記第1の差分データを抽出すること
を特徴とする請求項4記載のデータ通信システム。
Each of the information processing devices
A list generation means;
A list transmission means;
The list transmission means of the first information processing apparatus generates the first list and transmits the first list to the second information processing apparatus;
The list generating means of the second information processing apparatus generates the second list, and is a first difference data list based on the second list and the first list. Diff list of
5. The data communication system according to claim 4, wherein the differential data extraction unit of the second information processing apparatus extracts the first differential data based on the first differential list.
前記第2の情報処理装置のリスト生成手段が、前記第1のリストと前記第2のリストとに基づき、前記第1の情報処理装置の前記第2の記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第2の差分リストをさらに生成し、
前記第1の情報処理装置の差分データ抽出手段が、前記第2の情報処理装置から取得した前記第2の差分リストに示されるデータである第2の差分データを、自装置の前記第2の記憶部から抽出し、
前記第1の情報処理装置の前記差分データ提供手段が、前記第2の差分データを、前記第2の情報処理装置に送信すること
を特徴とする請求項5記載のデータ通信システム。
The list generation means of the second information processing apparatus is stored in the second storage unit of the first information processing apparatus based on the first list and the second list; and Further generating a second difference list that is a list of data not stored in the second storage unit of the device itself,
The difference data extraction unit of the first information processing apparatus obtains the second difference data, which is the data shown in the second difference list acquired from the second information processing apparatus, as the second difference data of the own apparatus. Extracted from the storage,
The data communication system according to claim 5, wherein the difference data providing unit of the first information processing apparatus transmits the second difference data to the second information processing apparatus.
自装置の演算処理の性能を示す演算処理レベルを記憶する第1の記憶部と、
データを記憶する第2の記憶部と、
自装置と同一の構成を有する他の情報処理装置とネットワークを介してピア・ツー・ピア方式で接続されデータを共有する通信手段と、
ピア・ツー・ピア方式で接続された前記他の情報処理装置から、該他の情報処理装置の演算処理の性能を示す演算処理レベルを取得して、該取得した演算処理レベルと自装置の演算処理レベルとを比較して、どちらの演算処理の性能のほうが高いか判定する比較手段と、
リスト取得手段と、
リスト作成手段と、
差分リスト提供手段と、
差分データ取得手段と、を有し、
前記比較の結果、自装置の演算処理の性能のほうが高い場合、
前記リスト取得手段が、前記他の情報処理装置の記憶部に記憶されているデータのリストである第1のリストを取得し、
前記リスト作成手段が、前記第1のリストと、自装置の前記第2の記憶部に記憶されているデータのリストである第2のリストとに基づき、前記他の情報処理装置の前記記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第1の差分リストを作成し、
前記差分リスト提供手段が、前記第1の差分リストを前記他の情報処理装置に送信し、
前記差分データ取得手段が、前記他の情報処理装置から送信される、前記第1の差分リストに示されるデータである第1の差分データを受信すること
を特徴とする情報処理装置。
A first storage unit that stores an arithmetic processing level indicating the performance of the arithmetic processing of the own device;
A second storage unit for storing data;
A communication means that is connected in a peer-to-peer manner via a network with another information processing apparatus having the same configuration as the own apparatus ;
An arithmetic processing level indicating the performance of arithmetic processing of the other information processing apparatus is acquired from the other information processing apparatus connected by the peer-to-peer method, and the acquired arithmetic processing level and the calculation of the own apparatus are acquired. Comparing means for comparing the processing level and determining which of the processing performance is higher,
A list acquisition means;
List creation means;
A difference list providing means;
Differential data acquisition means,
As a result of the comparison, if the performance of the operation processing of the own device is higher,
The list acquisition means acquires a first list that is a list of data stored in a storage unit of the other information processing apparatus;
Based on the first list and a second list that is a list of data stored in the second storage unit of the own device, the list creation unit is configured to store the storage unit of the other information processing device. And a first difference list that is a list of data that is not stored in the second storage unit of the device,
The difference list providing means transmits the first difference list to the other information processing apparatus;
The information processing apparatus, wherein the difference data acquisition unit receives first difference data that is data transmitted from the other information processing apparatus and indicated in the first difference list.
リスト送信手段、をさらに有し、
前記比較の結果、前記他の情報処理装置の演算処理の性能のほうが高い場合、
前記リスト作成手段が、自装置の前記第2の記憶部に記憶されているデータのリストである前記第1のリストを作成し、
前記リスト送信手段が、前記第1のリストを前記他の情報処理装置に送信し、
前記差分データ取得手段が、前記他の情報処理装置から送信される第2の差分データであって、前記他の情報処理装置が、前記第1のリストと、該他の情報処理装置の記憶部に記憶されているデータのリストである第2のリストとに基づき、該他の情報処理装置の記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第2の差分リストを作成し、該第2の差分リストに基づいて前記他の情報処理装置の記憶部から抽出したデータである第2の差分データを受信すること
を特徴とする請求項7記載の情報処理装置。
A list transmission means,
As a result of the comparison, when the performance of the arithmetic processing of the other information processing apparatus is higher,
The list creating means creates the first list which is a list of data stored in the second storage unit of the device;
The list transmission means transmits the first list to the other information processing apparatus;
The difference data acquisition unit is second difference data transmitted from the other information processing apparatus, and the other information processing apparatus includes the first list and a storage unit of the other information processing apparatus. Data stored in the storage unit of the other information processing apparatus based on the second list, which is a list of data stored in the network, and not stored in the second storage unit of the own apparatus A second difference list that is a list of the second difference data is generated, and second difference data that is data extracted from the storage unit of the other information processing device based on the second difference list is received. The information processing apparatus according to claim 7.
コンピュータに実行させるデータ通信のためのコンピュータプログラムであって、
自装置の演算処理の性能を示す演算処理レベルを記憶する第1の記憶部と、
データを記憶する第2の記憶部と、
を有する前記コンピュータに、
自装置と同一の構成を有し、ピア・ツー・ピア方式でネットワークを介して接続しデータ共有する他の情報処理装置から、該他の情報処理装置の演算処理の性能を示す演算処理レベルを取得する処理と、
自装置の演算処理レベルと前記他の情報処理装置の演算処理レベルとを比較して、どちらの演算処理の性能のほうが高いか判定する処理と、
前記比較の結果、自装置の演算処理の性能のほうが性能が高い場合、
前記他の情報処理装置の記憶部に記憶されているデータのリストである第1のリストを取得して、該第1のリストと、自装置の前記第2の記憶部に記憶されているデータのリストである第2のリストとに基づいて、前記他の情報処理装置の前記記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第1の差分リストを作成する処理と、
前記第1の差分リストを前記他の情報処理装置に送信し、該他の情報処理装置から送信される、前記第1の差分リストに示されるデータである第1の差分データを受信する処理と、を実行させるためのコンピュータプログラム。
A computer program for data communication to be executed by a computer,
A first storage unit that stores an arithmetic processing level indicating the performance of the arithmetic processing of the own device;
A second storage unit for storing data;
The computer having:
An arithmetic processing level indicating the performance of the arithmetic processing of the other information processing apparatus is obtained from another information processing apparatus having the same configuration as that of the own apparatus and connected via a network in a peer-to-peer manner and sharing data. Processing to get,
Comparing the arithmetic processing level of its own apparatus with the arithmetic processing level of the other information processing apparatus, and determining which of the arithmetic processing performance is higher,
As a result of the comparison, if the performance of the operation processing of the own device is higher,
A first list that is a list of data stored in the storage unit of the other information processing apparatus is acquired, and the first list and data stored in the second storage unit of the own apparatus are acquired. A list of data stored in the storage unit of the other information processing apparatus and not stored in the second storage unit of the own apparatus based on the second list which is a list of Processing to create a first difference list;
A process of transmitting the first difference list to the other information processing apparatus and receiving first difference data that is transmitted from the other information processing apparatus and that is data indicated in the first difference list; , A computer program for executing.
前記比較の結果、前記他の情報処理装置の演算処理の性能のほうが性能が高い場合、
前記コンピュータに、
自装置の前記第2の記憶部に記憶されているデータのリストである第1のリストを前記他の情報処理装置に送信する処理と、
前記他の情報処理装置から送信される第2の差分データであって、前記他の情報処理装置が、前記第1のリストと、該他の情報処理装置の記憶部に記憶されているデータのリストである第2のリストとに基づき、該他の情報処理装置の記憶部に記憶されており、且つ、自装置の前記第2の記憶部に記憶されていないデータのリストである第2の差分リストを作成し、該第2の差分リストに基づいて前記他の情報処理装置の記憶部から抽出したデータである第2の差分データを受信する処理と、をさらに実行させる請求項9記載のデータ通信のためのコンピュータプログラム。
As a result of the comparison, when the performance of the arithmetic processing of the other information processing apparatus is higher,
In the computer,
A process of transmitting a first list that is a list of data stored in the second storage unit of the own apparatus to the other information processing apparatus;
Second difference data transmitted from the other information processing apparatus, wherein the other information processing apparatus stores the first list and data stored in the storage unit of the other information processing apparatus. A second list that is a list of data that is stored in the storage unit of the other information processing apparatus and that is not stored in the second storage unit of the own apparatus based on the second list that is a list. The process of creating a difference list and receiving second difference data that is data extracted from a storage unit of the other information processing apparatus based on the second difference list is further executed. Computer program for data communication.
JP2002088060A 2002-03-27 2002-03-27 Data communication method, data communication system, information processing apparatus, and computer program Expired - Fee Related JP4226256B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002088060A JP4226256B2 (en) 2002-03-27 2002-03-27 Data communication method, data communication system, information processing apparatus, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002088060A JP4226256B2 (en) 2002-03-27 2002-03-27 Data communication method, data communication system, information processing apparatus, and computer program

Publications (2)

Publication Number Publication Date
JP2003288253A JP2003288253A (en) 2003-10-10
JP4226256B2 true JP4226256B2 (en) 2009-02-18

Family

ID=29234049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002088060A Expired - Fee Related JP4226256B2 (en) 2002-03-27 2002-03-27 Data communication method, data communication system, information processing apparatus, and computer program

Country Status (1)

Country Link
JP (1) JP4226256B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4354314B2 (en) 2004-03-16 2009-10-28 株式会社日立製作所 Server difference management system and information processing apparatus control method
US9807780B2 (en) * 2012-11-19 2017-10-31 Nec Corporation Data sharing system

Also Published As

Publication number Publication date
JP2003288253A (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
US10581778B2 (en) Method and system for filtering communication
Clarke A distributed decentralised information storage and retrieval system
US7117358B2 (en) Method and system for filtering communication
CN108718341B (en) Method for sharing and searching data
US20020091667A1 (en) Method and apparatus for optimizing networking potential using a secured system for an online community
GB2344908A (en) Controlling access to data over the internet
RU2576495C2 (en) System and method for global directory service
CN112769837B (en) Communication transmission method, device, equipment, system and storage medium based on WebSocket
CN1514653A (en) Information route method and system based on secret strategy
US20030177124A1 (en) System for searching secure servers
JP4179788B2 (en) Information processing apparatus, peer-to-peer communication support method, and computer program
CN111932076B (en) Rule configuration and release method and device and computing equipment
JP4226256B2 (en) Data communication method, data communication system, information processing apparatus, and computer program
JP3477654B2 (en) E-mail matching method and device
US20090300206A1 (en) Methods and systems for protecting e-mail addresses in publicly available network content
NO20013308L (en) Device for searching the Internet
JP3669283B2 (en) Information acquisition method
JP2007233468A (en) Information processor and information processing method
JPH11184776A (en) Electronic mail system
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
Adar et al. Shock: Aggregating information while preserving privacy
JP7081232B2 (en) Profile management system, information management method, program, information processing equipment
EP1427169A1 (en) File-downloading system and method

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: 20080513

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081014

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: 20081111

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: 20081126

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

Free format text: PAYMENT UNTIL: 20111205

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4226256

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121205

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: 20131205

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

LAPS Cancellation because of no payment of annual fees