(57)【要約】【課題】  特定のアプリケーションから他ピアへ送信される送信データや他ピアから受信した受信データを取得し、取得したデータに適切な処理を行うことによりユーザの利便性を向上させることができる情報処理装置、方法、及びプログラムを提供する。【解決手段】  メールスヌープ部８０は、メールツールとしてのＭＵＡ９０からメールの読み出しを要求する要求コマンドをＰＯＰ３要求受付部８０Ｆで受付、ＰＯＰ３要求送信部８０ＧによりＰＯＰ３サーバ７６Ｂに送信する。ＰＯＰ３サーバ７６Ｂから送信されたメールは、宛先解釈部８０Ｍによって、宛先が所定のフィルタ条件に合致するか否かが判断され、フィルタ条件に合致するメールの場合には、そのメールがアプリケーションメモリに記憶される。【選択図】        図１３
2006180229.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報処理装置が接続されたネットワークに接続される情報処理装置であって、
所定のアプリケーションを実行するアプリケーション実行手段と、
前記アプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得する取得手段と、
前記取得手段により取得したデータに関する所定の処理を実行する処理手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記アプリケーション実行手段は、前記他の情報処理装置とメールの送受信を行うためのメールアプリケーションを含み、前記処理手段は、前記取得手段により取得した前記他の情報処理装置からの受信メールの宛先アドレスが、所定の受信メール用フィルタ条件を満たす場合に、前記受信メールを記憶手段に記憶させることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記アプリケーション実行手段は、前記他の情報処理装置と第１のフォーマットによるメールの送受信を行うためのメールアプリケーションを含み、前記処理手段は、前記取得手段により取得した前記アプリケーション実行手段が他の情報処理装置へ送信する送信メールの宛先アドレスが、所定の送信メール用フィルタ条件を満たす場合に、前記送信メールを前記第１のフォーマットと異なる第２のフォーマットに変換して前記他の情報処理装置へ送信することを特徴とする請求項１又は請求項２記載の情報処理装置。
【請求項４】
前記処理手段は、前記取得手段により取得した前記他の情報処理装置から送信された前記第２のフォーマットによるメールを前記第１のフォーマットに変換し、変換したメールを前記メールアプリケーションに引き渡すことを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記アプリケーション実行手段は、前記他の情報処理装置としてのＷｅｂサーバが提供するＷｅｂサイトの情報を要求するＷｅｂブラウザを含み、前記処理手段は、前記取得手段が取得した前記Ｗｅｂサーバから送信されたＷｅｂデータを記憶手段に記憶させることを特徴とする請求項１乃至請求項４の何れか１項に記載の情報処理装置。
【請求項６】
前記アプリケーション実行手段は、前記他の情報処理装置としてのＷｅｂサーバが提供するＷｅｂサイトの情報を要求するＷｅｂブラウザを含み、前記処理手段は、前記取得手段が取得した前記Ｗｅｂブラウザが要求したＷｅｂサイトのアドレスを記憶手段に記憶させることを特徴とする請求項１乃至請求項５の何れか１項に記載の情報処理装置。
【請求項７】
前記ネットワークは、複数の情報処理装置の少なくとも一部が特定のサーバを介さずに通信するピアツーピアネットワークであることを特徴とする請求項１乃至請求項６の何れか１項に記載の情報処理装置。
【請求項８】
複数の情報処理装置が接続されたネットワークに接続される情報処理装置により実行される情報処理方法であって、
所定のアプリケーションを実行するアプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得し、
取得したデータに関する所定の処理を実行する
ことを特徴とする情報処理方法。
【請求項９】
複数の情報処理装置が接続されたネットワークに接続される情報処理装置により実行される情報処理プログラムであって、
所定のアプリケーションを実行するアプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得するステップと、
取得したデータに関する所定の処理を実行するステップと、
を含むことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、方法、及びプログラムに係り、より詳しくは、ネットワークを介して互いに接続された複数の装置の少なくとも一部が、専用のサーバを介することなく直接通信するピアツーピアシステムに接続可能な情報処理装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
従来より、コンピュータ等の装置をネットワークを介して互いに接続するネットワークシステムの形態として、クライアント・サーバシステムと、ピアツーピア（以下、Ｐ２Ｐという）システムとがある。
【０００３】
クライアント・サーバシステムは、サーバが各種情報資源を管理したり各種アプリケーションを提供するサービスを実行し、これをクライアントが利用するシステムであり、主従関係が固定的なシステムある。
【０００４】
これに対し、Ｐ２Ｐシステムでは、基本的には専用のサーバを設けず、ネットワークに接続されたピア（例えばパーソナルコンピュータ等）の各々が、あるときは他のピアに対して所定のサービスを提供してサーバのように動作し、あるときは他のピアが提供するサービスを利用してクライアントのように動作するシステムであり、各ピアが対等なシステムである。このようなＰ２Ｐシステムに関して、従来から様々な技術が提案されている（例えば特許文献１及び特許文献２参照）。
【特許文献１】特開２００２−３３５２６９号公報
【特許文献２】特開２００３−２５６３６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、近年では、プライベートだけでなく仕事においてもメールを使用して社内や社外の人とコミュニケーションすることが通常のように行われており、上記のＰ２Ｐシステムにおいても同様にメールによるコミュニケーションを行うことが可能である。
【０００６】
このような場合に、例えば、仕事上の連絡をメールで行いたいが、社内の人と社外の人とがメールの宛先に混在している場合にインターネットを介してメールが平文で社外の人に送信された場合、そのメールに社外秘の情報が含まれていた場合には、秘匿性の面で問題がある。
【０００７】
この問題を解決するためには、例えばＳ／ＭＩＭＥ（Secure Multipurpose Internet Mail Extensions）方式のようなメールを暗号化して送信するアプリケーションを用いればよいが、そのためには、送信メールのＴｏフィールドやＣＣフィールド等に指定される全ての宛先のメンバーが、ＰＫＩ（Public Key Infrastructure）に基づく電子証明書を所有している必要があると共に、場合によってはメールツール（Message User Agent : MUA）も特定されてしまうため、利便性が悪化する。さらに、社内のメンバー同士によるメールの送受信、すなわちインターネット等を介さずに行われるメールの送受信には基本的に暗号化を必要としないので、本来なら必要のない電子証明書をわざわざ用いてメールの送受信を行う必要があり、運用コストが高くなる、という問題もある。
【０００８】
また、社内のメンバーに対しては、平文によりメールを送信し、社外のメンバーに対しては、メールを暗号化したり通信路を暗号化する等の方法によりメールを送信する方法も考えられるが、情報を一元的に扱うことができず実際の運用に手間がかかると共に、１回の操作で全メンバーに安全にメールを送信することができず、利便性が大幅に低下してしまう。
【０００９】
また、例えば社内でメーリングリストを作成したい場合、通常は、社内の管理者にメーリングリストに参加したい旨を伝えてメーリングリストにメールアドレスを追加してもらう必要があるが、管理者以外のユーザは、簡単にメーリングリストを作成したり削除したりすることができず、不便な場合がある。
【００１０】
この問題を解決するため、例えばメールアプリケーションでアプリケーション内部だけで意味のあるグループ名を定義して、そのグループ名にメールを送信した場合には、メールアプリケーション内部で宛先を展開してから送信するといった方法もあるが、この場合、メーリングリストの今までのメールのアーカイブを作成したくても実現するのは困難である。
【００１１】
本発明は、上記問題を解決すべく成されたものであり、アプリケーションを利用するユーザの利便性を向上させることができる情報処理装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、請求項１記載の発明は、複数の情報処理装置が接続されたネットワークに接続される情報処理装置であって、所定のアプリケーションを実行するアプリケーション実行手段と、前記アプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得する取得手段と、前記取得手段により取得したデータに関する所定の処理を実行する処理手段と、を備えたことを特徴とする。
【００１３】
この発明によれば、情報処理装置はネットワークに接続される。例えば請求項７に記載したように、前記ネットワークは、複数の情報処理装置の少なくとも一部が特定のサーバを介さずに通信するピアツーピアネットワークとすることができる。
【００１４】
そして、所定のアプリケーションを実行するアプリケーション実行手段が他の情報処理装置へ送信する送信データ及び他の情報処理装置から受信した受信データの少なくとも一方を取得手段により取得し、取得したデータに関する所定の処理を処理手段により実行する。
【００１５】
例えば、請求項２に記載したように、前記アプリケーション実行手段は、前記他の情報処理装置とメールの送受信を行うためのメールアプリケーションを含み、前記処理手段は、前記取得手段により取得した前記他の情報処理装置からの受信メールの宛先アドレスが、所定の受信メール用フィルタ条件を満たす場合に、前記受信メールを記憶手段に記憶させる構成とすることができる。
【００１６】
そして、記憶手段に記憶した受信メールを他の情報処理装置と共有することにより、メーリングリストとして用いることができる。このように、受信メール用フィルタ条件を設定するだけでメーリングリスト等を容易に構築することができる。
【００１７】
また、請求項３に記載したように、前記アプリケーション実行手段は、前記他の情報処理装置と第１のフォーマットによるメールの送受信を行うためのメールアプリケーションを含み、前記処理手段は、前記取得手段により取得した前記アプリケーション実行手段が他の情報処理装置へ送信する送信メールの宛先アドレスが、所定の送信メール用フィルタ条件を満たす場合に、前記送信メールを前記第１のフォーマットと異なる第２のフォーマットに変換して前記他の情報処理装置へ送信する構成とすることができる。
【００１８】
これにより、例えば送信メール用フィルタ条件に合致する宛先に対しては、例えば暗号化を含む第２のフォーマットに変換してメールを送信し、その他の宛先には通常の第１のフォーマットで送信することができる。従って、例えば社内の人には第１のフォーマットで、社外の人には第２のフォーマットでメールを送信することが可能となり、安全性を高めることができる。また、メールアプリケーションを切り替える必要がなく、ユーザの利便性を向上させることができる。
【００１９】
また、請求項４に記載したように、前記処理手段は、前記取得手段により取得した前記他の情報処理装置から送信された前記第２のフォーマットによるメールを前記第１のフォーマットに変換し、変換したメールを前記メールアプリケーションに引き渡すようにしてもよい。
【００２０】
このように、他の情報処理装置から送信された第２のフォーマットによるメールを第１のフォーマットに変換してメールアプリケーションに引き渡すので、メールの送信元に応じてメールアプリケーションを切り替える必要がなく、ユーザの利便性を向上させることができる。
【００２１】
また、請求項５に記載したように、前記アプリケーション実行手段は、前記他の情報処理装置としてのＷｅｂサーバが提供するＷｅｂサイトの情報を要求するＷｅｂブラウザを含み、前記処理手段は、前記取得手段が取得した前記Ｗｅｂサーバから送信されたＷｅｂデータを記憶手段に記憶させる構成とすることができる。この記憶手段に記憶させたＷｅｂデータを他の情報処理装置と共有することにより、所望のＷｅｂデータが既に他の情報処理装置で取得したＷｅｂデータである場合には、わざわざＷｅｂサイトから取得する必要がなく、速やかに所望のＷｅｂデータを取得することができる。
【００２２】
また、請求項６に記載したように、前記アプリケーション実行手段は、前記他の情報処理装置としてのＷｅｂサーバが提供するＷｅｂサイトの情報を要求するＷｅｂブラウザを含み、前記処理手段は、前記取得手段が取得した前記Ｗｅｂブラウザが要求したＷｅｂサイトのアドレスを記憶手段に記憶させる構成としてもよい。これにより、人気のあるＷｅｂサイト等を容易に把握することが可能となる。
【００２３】
請求項８記載の発明は、複数の情報処理装置が接続されたネットワークに接続される情報処理装置により実行される情報処理方法であって、所定のアプリケーションを実行するアプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得し、取得したデータに関する所定の処理を実行することを特徴とする。
【００２４】
また、請求項９記載の発明は、複数の情報処理装置が接続されたネットワークに接続される情報処理装置により実行される情報処理プログラムであって、所定のアプリケーションを実行するアプリケーション実行手段が他の情報処理装置へ送信する送信データ及び前記他の情報処理装置から受信した受信データの少なくとも一方を取得するステップと、取得したデータに関する所定の処理を実行するステップと、を含むことを特徴とする。
【発明の効果】
【００２５】
以上説明したように、本発明によれば、アプリケーションを利用するユーザの利便性を向上させることができる、という効果を有する。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施形態について説明する。
【００２７】
図１には、Ｐ２Ｐネットワーク１０のネットワーク構成について概念的に示した。図１に示すように、Ｐ２Ｐネットワーク１０は、仮想的には各ピア１２Ａ〜１２Ｇが相互に接続された構成であり、実際には、例えばピア１２Ａ〜１２Ｃはファイアウォール１４によるアクセス制限下にあるピアであったり、ピア１２Ｃ〜１２Ｅはインターネットに接続されたピアであったり、ピア１２Ｅ〜１２ＧはＮＡＴ（Network Address Translation）によってアドレス変換されるピアであったりする。
【００２８】
また、各ピア同士の接続方法は様々であり、ＩＰｖ４（Internet Protocol version 4）やＩＰｖ６（Internet Protocol version 6）の機能を用いるＴＣＰ（Transmission Control Protocol）接続を用いたり、ＨＴＴＰ（HyperText Transfer Protocol）を用いたり、ＳＭＴＰ（Simple Mail Transfer Protocol）を用いたりすることができる。
【００２９】
ここで、ピアとは、例えばパーソナルコンピュータ等のコンピュータの他、ＰＤＡ（Personal Digital Assistance）、携帯電話、プリンタ、コピー機、これらの機能を複数備えた複合機等のハードウェア又はこれらの機能を実現するソフトウェアをいう。また、各ピアは、同じ種類のものであるか異なる種類のものであるかにかかわらずＰ２Ｐネットワークに参加することができる。
【００３０】
Ｐ２Ｐネットワークの形態としては、図２に示すように、各ピア１４Ａ〜１４Ｋの全てが対等な関係にあるピュアＰ２Ｐと、図３に示すように、サーバ１４Ｓを設け、一部のサービスの提供をサーバ１４Ｓに委ね、その他のサービスについては各ピア１４Ａ〜１４Ｈが対等な関係において実現されるハイブリッドＰ２Ｐの形態があり、何れの形態でも本発明を適用可能である。
【００３１】
また、Ｐ２Ｐネットワークに参加する各ピアにログオンするユーザ又はピアは、図４に示すように、目的に応じたグループを構成することができる。図４では、ピア１２Ａ〜１２Ｇ全てがグループ１に属し、さらに、ピア１２Ａ、１２Ｃ、１２Ｅ、１２Ｆはグループ２に属しており、ピア１２Ｂ、１２Ｅ、１２Ｆ、１２Ｇはグループ３に属している。なお、各ユーザ又はピアは、単一のグループに属してもよいし、複数のグループに属していてもよい。また、ユーザ又はピアは必ずしもグループに属する必要はない。
【００３２】
図５には、Ｐ２Ｐネットワーク１０に参加する各ピアの基本構成を示した。図５に示すように、ピア１２は、Ｐ２Ｐ基盤構成部１６、Ｐ２Ｐ基盤管理データ記憶部１８、アプリケーション実行部２０、及びアプリケーションメモリ２２を含んで構成される。
【００３３】
Ｐ２Ｐ基盤構成部１６は、メッセージ制御部２４、データ管理部２６、送信部２８、及び受信部３０を含んで構成される。
【００３４】
送信部２８は、メッセージ制御部２４から受け取ったメッセージをネットワーク３２へ向けて送信する。
【００３５】
受信部３０は、Ｐ２Ｐネットワーク１０内で送受信されるデータのうち、自ピアにとって必要なデータを受信する。常に受信待機状態となっており、Ｐ２Ｐネットワーク１０の他ピアからの各種要求やデータを受信し、メッセージ制御部２４に受け渡す。なお、送信部２８とは独立かつ並列に動作する。
【００３６】
図６には、メッセージ制御部２４の概略構成を示した。メッセージ制御部２４は、図６に示すように、サービス実行部３４及びメッセージディスパッチ部３６を含んで構成されている。
【００３７】
サービス実行部３４は、ピア探索サービス部３８、告知情報公開サービス部４０、告知情報取得サービス部４２、グループ管理サービス部４４、ユーザ管理サービス部４６、及びピア管理サービス部４８を含んで構成されており、各サービス部は相互に情報を授受しながら各サービスを実行する。
【００３８】
ピア探索サービス部３８は、Ｐ２Ｐネットワークに参加しているピアを探索する機能及び自ピアが必要とするサービス（機能）を提供可能なピアを探索する機能を有する。なお、探索の範囲は、必要とするサービスの名称や属性、ホップ数の閾値等を指定することにより制御することができる。ここで、ホップ数とは、メッセージを送信する際に経由するピアの数である。
【００３９】
告知情報公開サービス部４０は、自ピアが提供可能なサービス等の情報を告知情報としてＰ２Ｐネットワーク上に公開する機能を有する。ここで、提供可能なサービスには、例えばアプリケーション実行部２０により実行されるアプリケーションの他、後述するグループ管理サービスやユーザ管理サービス等も含まれる。なお、告知情報の公開は、例えば他ピアから問い合わせがあった場合や自ピアの起動時に実行してもよいし、定期的に実行するようにしてもよい。
【００４０】
このように各ピアの告知情報公開サービス部４０によって告知情報がＰ２Ｐネットワーク上に公開されることにより、Ｐ２Ｐネットワークに参加している各ピアは、Ｐ２Ｐネットワーク上でどのようなサービスを利用できるかを把握することができる。
【００４１】
告知情報取得サービス部４２は、ピア探索サービス部３８によって探索されたピアから送信された告知情報又は他ピアから自発的に送信された告知情報を取得し、データ管理部２６へ受け渡す。データ管理部２６では、取得した告知情報をピア情報としてＰ２Ｐ基盤管理データ記憶部１８に記憶させる。これにより、ピアは、Ｐ２Ｐネットワークに参加している他ピアがどのようなサービスを提供しているのかを把握することができる。
【００４２】
グループ管理サービス部４４は、同じ目的を有するピア同士で構成されたグループへの参加や脱退、新たなグループの作成等をグループ情報に基づいて管理する機能を有する。グループ情報は、例えば少なくともグループＩＤとユーザＩＤとの対応関係を表す情報であり、Ｐ２Ｐ基盤管理データ記憶部１８に記憶される。このグループ情報を参照することにより、どのグループにどのユーザが属しているかを把握することができる。
【００４３】
ユーザ管理サービス部４６は、ユーザ情報を管理する機能を有する。ユーザ情報は、例えばピアＩＤとそのピアにログオンしているユーザＩＤとの対応関係を表すログオン情報や、ユーザの名前、メールアドレス等のユーザ自身に関する情報、そのユーザが属するグループのグループＩＤ等の情報を含み、Ｐ２Ｐ基盤管理データ記憶部１８に記憶される。
【００４４】
ピア管理サービス部４８は、Ｐ２Ｐネットワークに参加しているピアのピア情報を管理する機能を有する。
【００４５】
メッセージディスパッチ部３６は、アプリケーション実行部２０からのメッセージや他ピアとの間で送受信されるメッセージを解析し、サービス実行部３４のうち解析したメッセージに関する処理を行うべきサービス部へ制御を渡す。
【００４６】
Ｐ２Ｐ基盤管理データ記憶部１８は、経路情報１８Ａ、グループ情報１８Ｂ、隣接情報１８Ｃ、ピア情報１８Ｄ、及びユーザ情報１８Ｅを記憶する。
【００４７】
経路情報１８Ａは、Ｐ２Ｐネットワークにおける経路の情報、例えば後述するスパニングツリーに関する情報を含む。
【００４８】
グループ情報１８Ｂは、前述したように例えば少なくともグループＩＤとユーザＩＤとの対応関係を表す情報である。
【００４９】
隣接情報１８Ｃは、自ピアに隣接するピアに関する情報、例えばピアＩＤ等の情報を含む。ここで、隣接するピアとは、例えば自ピアから送信したパケットに対する応答時間が予め定めた所定時間内のピアとすることができる。隣接情報は、例えば他ピアと通信する課程において得られる応答時間に基づいて生成することができるが、オペレータの操作等により手動的に設定するようにしてもよい。
【００５０】
ピア情報１８Ｄは、ピア探索サービス部３８によって探索されたピアに関する情報、例えばピアＩＤ等の情報や、告知情報取得サービス部４２によって取得したＰ２Ｐネットワーク上の各ピアが提供しているサービスに関する情報等を含む。ここで、ピアＩＤには、例えばＩＰアドレスやＵＲＩ（Uniform Resource Identifier）等を用いることができる。
【００５１】
ユーザ情報１８Ｅは、前述したようにユーザのログオン情報やユーザ自身に関する情報等を含む。
【００５２】
アプリケーション実行部２０は、各種アプリケーションを実行するものであり、メッセージ制御部２４を介して他ピアとメッセージの送受信を行う。また、アプリケーションメモリ２２は、アプリケーション実行部２０の実行に関連する各種の情報を記憶するためのメモリである。
【００５３】
次に、Ｐ２Ｐネットワークにおいて、目的のサービスを検索し実行する場合の具体例について説明する。
【００５４】
まず、他ピアへメッセージを転送する機能を有する転送機能付きピアと、転送機能を備えず、転送機能付きピアを介して他ピアとメッセージの送受信を行うエンドピアと、からなるＰ２Ｐネットワークにおいて、転送機能付きピア及びエンドピアのＰ２Ｐ基盤構成部１６で実行される処理について説明する。なお、転送機能付きピアは、図示しない転送機能サービス部をサービス実行部３４に備えた構成である。
【００５５】
図７にはエンドピアで実行される処理のフローチャートを、図８には転送機能付きピアで実行される処理のフローチャートを示した。
【００５６】
図７に示すように、エンドピアは、ステップ１００において、転送機能付きピアの探索要求を、例えば自ピアに予め記憶された設定情報に設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストにより他の転送機能付きピアに対してＰ２Ｐネットワークに送信する。これは、ピア探索サービス部３８により実行される。
【００５７】
そして、ステップ１０２において、転送機能付きピアが存在するか否かを判断し、転送付きピアが存在する場合には、ステップ１０４へ移行し、転送機能付きピアが存在しない場合には、ステップ１０２へ戻り、例えば所定時間経過後に再度転送機能付きピアを探索する。
【００５８】
ステップ１０４では、自ピアにログオンしているユーザ又は自ピアが属するグループに属している他ユーザがログオンしている他ピアの告知情報を取得するよう転送機能付きピアに要求する。これは、告知情報取得サービス部４２により実行される。
【００５９】
ステップ１０６では、転送機能付きピアから告知情報を受信したか否かを判断し、受信していない場合には、ステップ１１０へ移行し、受信した場合には、ステップ１０８において、受信した告知情報をＰ２Ｐ基盤管理データ記憶部１８にピア情報１８Ｄとして記憶させる。
【００６０】
ステップ１１０では、サービス要求が発生したか否かを判断する。例えば自ピアにログインしているユーザの操作等によってアプリケーション実行部２０によりアプリケーションが実行され、サービス要求が発生した場合には、アプリケーション実行部２０からメッセージ制御部２４へサービス要求が通知される。この場合、ステップ１１２へ移行し、サービス要求が発生していない場合には、ステップ１１６へ移行する。
【００６１】
ステップ１１２では、発生したサービス要求に対応したメッセージを作成して転送機能付きピアに送信する。例えば、アプリケーション実行部２０からのサービス要求が、所望のファイルを取得する要求だった場合には、アプリケーション実行部２０から通知されたファイル名等の所望のファイルを特定するための情報を含むファイル探索要求メッセージを転送機能付きピアに送信する。
【００６２】
ステップ１１４では、送信したメッセージに対する応答処理を行う。すなわち、送信したメッセージに対する応答メッセージを受信し、受信した応答メッセージの内容に応じた処理を行う。例えば、サービス要求が所定のファイルを取得する要求であった場合には、そのファイルを所有しているピアがあれば、そのピア情報が応答メッセージとして受信されるので、これをアプリケーション実行部２０に通知する。この場合、アプリケーション実行部２０では、受信したピア情報に基づいて、所望のファイルを所有しているピアにファイル送信要求を送信するようメッセージ制御部２４に依頼する。これにより、所望のファイルを取得することができる。
【００６３】
そして、ステップ１１６では、転送機能付きピアから、他ピアから何らかのサービス提供又は情報提供を要求する要求メッセージを受信したか否かを判断し、要求メッセージを受信していた場合には、ステップ１１８へ移行し、要求メッセージを受信していない場合には、ステップ１０６へ戻って上記と同様の処理を繰り返す。
【００６４】
ステップ１１８では、要求に対する処理を実行する。そして、ステップ１２０において、処理結果に対応したメッセージを転送機能付きピアに送信する。例えば、他ピアからファイル探索の要求メッセージを受信した場合には、その要求メッセージをファイル検索を実行するアプリケーション実行部２０へ渡す。これによりアプリケーション実行部２０においてファイル検索が実行され、検索結果がメッセージ制御部２４に通知される。メッセージ制御部２４では、アプリケーション実行部２０から通知された検索結果に基づいて応答メッセージを作成し、ファイル探索要求メッセージの送信元のピアに送信する。例えばファイルが検索できた場合には、自ピアのピアＩＤ等の情報を含めた応答メッセージを作成して、ファイル探索要求メッセージの送信元のピアに送信する。これにより、送信元のピアでは、所望のファイルが検索できたか否かを確認することができる。
【００６５】
次に、転送機能付きピアで実行される処理について説明する。
【００６６】
転送機能付きピアは、まず図８に示すステップ２００において、例えば自ピアに予め記憶された設定情報に設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストにより他の転送機能付きピアに対して、グループ情報やユーザ情報等の各種情報を送信するよう要求し、これらの情報を取得する。取得した情報は、Ｐ２Ｐ基盤管理データ記憶部１８に記憶される。これにより、Ｐ２Ｐネットワークを構成しているピアの情報やログインしているユーザの情報を得ることができる。
【００６７】
ステップ２０２では、Ｐ２Ｐ基盤管理データ記憶部１８に記憶された隣接情報１８Ｃを、自ピアの隣の転送機能付きピア全てに告知する。隣接情報１８Ｃには、自ピアの隣の転送機能付きピアの情報が少なくとも含まれ、さらに、他のピアが有している隣接情報を既に取得している場合には、その隣接情報も含まれる。
【００６８】
ステップ２０４では、隣の転送機能付きピアに隣接情報を送信するよう要求し、取得する。このように、自ピアの隣の転送機能付きピアと隣接情報を交換する。
【００６９】
そして、ステップ２０６では、交換した隣接情報に基づき、スパニングツリーの構成情報を生成し、Ｐ２Ｐ基盤管理データ記憶部１８に経路情報として記憶する。ここで、スパニングツリーとは、メッセージの転送経路が、ループのない木構造となるような経路を表す。例えばＰ２Ｐネットワークが、図９（Ａ）に示すように、グループ１にのみ属する転送機能付きピア５０1、グループ２にのみ属する転送機能付きピア５０2、グループ１、２の何れにも属する転送機能付きピア５０12、何れのグループにも属さない転送機能付きピア５０n、これらの各転送機能付きピアの背後に存在するエンドピア（図９では図示省略）で構成されていたとする。この場合、スパニングツリーは、図９（Ｂ）に示すようなループのない木構造の経路となる。
【００７０】
次のステップ２０８では、エンドピアからのメッセージ送信要求を受信したか否かを判断し、受信している場合にはステップ２１０へ移行し、受信していない場合には、ステップ２１２へ移行する。
【００７１】
ステップ２１０では、スパニングツリーの構成情報としての経路情報に基づいて、メッセージを転送する。例えば、図９（Ａ）に示すようなネットワークが構築されている場合において、エンドピアが例えばグループ１に属しており、グループ１向けの要求メッセージを転送機能付きピアに送信した場合について説明する。この場合、転送機能付きピアは、グループ１に属しているエンドピアに対してのメッセージ転送を担う転送機能付きピアを全て含み、この転送機能付きピア全てにメッセージが転送されるようなスパニングツリー、例えば図９（Ｃ）に示すようなスパニングツリーを経路情報に基づいて計算する。そして、転送機能付きピアは、計算されたスパニングツリーに基づいて、隣の転送機能付きピア全てにエンドピアからの要求メッセージを転送する。これにより、図９（Ｃ）に示すスパニングツリー上の転送機能付きピアにメッセージが転送され、グループ１のエンドピア全てにメッセージが転送される。なお、グループ２向けのメッセージ送信要求を転送機能付きピアに送信した場合は、図９（Ｄ）に示すようなスパニングツリーが計算される。
【００７２】
次のステップ２１２では、隣の転送機能付きピアからメッセージを受信したか否かを判断し、受信した場合にはステップ２１４へ移行し、受信していない場合には、ステップ２０８へ戻って上記と同様の処理を繰り返す。なお、定期的にステップ２００へ戻ってスパニングツリーを定期的に計算するようにしてもよい。
【００７３】
ステップ２１４では、計算したスパニングツリーに基づき、メッセージを転送する必要がある場合、すなわちスパニングツリー上における隣の転送機能付きピアのうちメッセージを転送していない転送機能付きピアが存在する場合には、その転送機能付きピアにメッセージを転送する。また、受信したメッセージが、自ピアがメッセージの転送を担うエンドピアと同一のグループ宛であった場合には、そのメッセージをエンドピアへ転送する。
【００７４】
このように、スパニングツリーを各転送機能付きピアが計算し、このスパニングツリー計算に従ってメッセージを転送することにより、同じグループ内のエンドピア間においてメッセージの送受信が可能となる。
【００７５】
上記のような転送機能付きピアによってメッセージを転送する構成は、主にＬＡＮ（Local Area Network）等の比較的小規模のネットワークでＰ２Ｐネットワークを構築する場合に適しているが、大規模のネットワークでＰ２Ｐネットワークを構成する場合には、ファイアウォールやゲートウェイ等を介して、異なるネットワークに接続されたピア間でメッセージの送受信が行われる。以下では、このような比較的大規模なネットワークでＰ２Ｐネットワークを構築する場合に適した形態について説明する。
【００７６】
図１０に示すＰ２Ｐネットワーク１１は、複数のネットワーク５２〜５８を含み、ネットワーク５２は、ルータ６０、６２を介してネットワーク５４と接続されると共に、ルータ６４を介してネットワーク５８と接続される。また、ネットワーク５６は、ルータ６６を介してネットワーク５８と接続される。
【００７７】
ネットワーク５２は、エンドピア５２Ａ、５２Ｂ、及び待ち合わせ機能付きピア５２Ｃを含んで構成され、ネットワーク５４はエンドピア５４Ａを含んで構成され、ネットワーク５６はエンドピア５６Ａを含んで構成され、ネットワーク５８は中継機能付きピア５８Ａを含んで構成されている。なお、待ち合わせ機能付きピアは、図示しない待ち合わせ機能サービス部をサービス実行部３４に備えた構成であり、中継機能付きピア５８Ａは、図示しない中継機能サービス部をサービス実行部３４に備えた構成である。
【００７８】
このように構成されたＰ２Ｐネットワーク１１において、エンドピアは、図７のフローチャートの示す処理とほぼ同様の処理を実行する。すなわち、Ｐ２Ｐネットワーク１１におけるエンドピアで実行される処理は、図７のフローチャートの説明において、転送機能付きピアを待ち合わせ機能付きピアに言い換えた処理を実行すると考えることができる。
【００７９】
また、中継機能付きピアは、基本的には所謂ゲートウェイとしての動作をするピアである。中継機能付きピアは、まず、例えば自ピアに記憶された設定情報に予め設定された他のピアに対して、又はマルチキャストやブロードキャストにより他のピアに対して、グループ情報やユーザ情報等の各種情報を送信するよう要求し、これらの情報を取得しておく。そして、他ピアからメッセージを受信した場合には、送信先として指定されたピアにメッセージを転送する。
【００８０】
次に、待ち合わせ機能付きピアで実行される処理について、図１１に示すフローチャートを参照して説明する。
【００８１】
まず、ステップ３００において、例えば自ピアに記憶された設定情報に予め設定された他の転送機能付きピアに対して、又はマルチキャストやブロードキャストによって、他のピアに対してグループ情報やユーザ情報等の各種情報を送信するよう要求する。
【００８２】
ステップ３０２では、他ピアから何らかの情報、例えばステップ３００で要求したグループやユーザ情報等の情報や、他ピアからの告知情報等を受信したか否かを判断し、受信した場合には、ステップ３０４へ移行し、受信していない場合には、ステップ３０６へ移行する。
【００８３】
ステップ３０４では、他ピアから受信した情報をＰ２Ｐ基盤管理データ記憶部１８に記憶させる。例えば受信した情報がグループ情報であればグループ情報１８ＢとしてＰ２Ｐ基盤管理データ記憶部１８に記憶させ、受信した情報がユーザ情報であればユーザ情報１８ＥとしてＰ２Ｐ基盤管理データ記憶部１８に記憶させる。
【００８４】
ステップ３０６では、エンドピアから何らかのサービス提供又は情報提供を要求する要求メッセージを受信したか否かを判断し、受信している場合には、ステップ３０８へ移行し、受信していない場合には、ステップ３０２へ戻って上記と同様の処理を繰り返す。
【００８５】
ステップ３０８では、要求メッセージに対応した情報が自ピアのＰ２Ｐ基盤管理データ記憶部１８に記憶されているか否かを判断し、記憶されている場合には、ステップ３１０へ移行し、記憶されていない場合には、ステップ３１２へ移行する。
【００８６】
ステップ３１０では、要求メッセージに対応した情報をＰ２Ｐ基盤管理データ記憶部１８から読み出して要求元のピアに送信する。
【００８７】
一方、ステップ３１２では、要求メッセージを隣接のピアに転送する。これにより、要求メッセージが他ピアに伝搬される。これにより、要求メッセージに対応した処理を実行可能なピアから応答メッセージが送信される。
【００８８】
ステップ３１４では、要求メッセージに対応した処理を実行可能なピアから送信された応答メッセージを受信し、これを要求元のエンドピアに送信する。
【００８９】
ここで、ネットワーク５４のピア５４Ａが告知情報の探索要求を行う場合について説明する。この場合、ピア５４Ａは、待ち合わせ機能付きピアを検索し、検索された待ち合わせ機能付きピア５２Ｃに告知情報の探索要求メッセージを送信する。これにより待ち合わせ機能付きピア５２Ｃは、自ピアに他ピアの告知情報が蓄積されていれば、これをピア５４Ａに送信し、蓄積されていない場合には、例えば隣のピア５２Ａ、５２Ｂ等に告知情報を送信するよう要求する。このとき、ピア５２Ａは、自ピアの告知情報と、自ピアに記憶されている他ピアの告知情報、例えばピア５６Ａの告知情報がすでに記憶されている場合には、その告知情報とを待ち合わせ機能付きピア５２Ｃに送信する。ピア５２Ｃについても同様である。待ち合わせ機能付きピア５４Ｃは、他ピアから送信された告知情報を蓄積すると共に、ピア５４Ａに送信する。
【００９０】
以上のように、待ち合わせ機能付きピアは、他ピアから送信された告知情報等の各種情報を自ピアに蓄積しておき、エンドピアからの要求に対応した情報が自ピアに記憶されている場合には、その情報をエンドピアに送信する。従って、Ｐ２Ｐネットワーク１１のように大規模なネットワークにおけるメッセージの送受信の効率を向上させることができる。
【００９１】
次に、アプリケーション実行の具体例として、アプリケーションがファイル共有サービスの場合におけるアプリケーション実行部２０の処理について説明する。
【００９２】
この場合、アプリケーション実行部２０は、ファイル名等の所望のファイルを特定するための情報を少なくとも含んだファイル探索要求をメッセージ制御部２４のメッセージディスパッチ部３６に通知する。メッセージディスパッチ部３６では、このファイルを所有するピアを探索するようピア探索サービス部３８に対して要求する。これにより、ピア探索サービス部３８によって所望のファイルを所有するピアが探索され、アプリケーション実行部２０に通知される。そして、アプリケーション実行部２０では、探索されたピアに対してファイルを送信するよう要求し、取得する。なお、所望のファイルを所有しているピアの情報を既に取得しており、自ピアに記憶されていた場合には、ピア探索を実行せずに、直接そのピアにファイル送信要求を送信してファイルを取得すればよい。
【００９３】
このように、アプリケーション実行部２０は、メッセージ制御部２４を介して他ピアとメッセージの送受信を行い、サービスを提供する。
【００９４】
なお、Ｐ２Ｐネットワークの構築について上記は一例であり、例えば上記特許文献１に記載されたプロトコルや、ＪＸＴＡプロトコルのＰＤＰ（Peer Discovery Protocol：ピア発見プロトコル）、ＰＲＰ（Peer Resolver Protocol：ピア解決プロトコル）、ＰＩＰ（Peer Information Protocol：ピア情報プロトコル）、ＰＭＰ（Peer Membership Protocol：ピアメンバーシッププロトコル）、ＰＢＰ（Peer Binding Protocol：ピアバインディングプロトコル）、ＰＥＰ（Peer Endpoint Protocol：ピアエンドポイントプロトコル）等の公知のプロトコルを用いてＰ２Ｐネットワークを構築してもよい。
【００９５】
次に、本実施形態に係るＰ２Ｐネットワークの具体的な形態について説明する。
【００９６】
図１２には、Ｐ２Ｐネットワークを含むネットワークにおいてメールの送受信を行う構成について概念的に示した。
【００９７】
このネットワークは、図１２に示すように、ピアとしてのパーソナルコンピュータ（以下、ＰＣと称する）１２Ａ〜１２ＣによってＰ２Ｐネットワーク７０が、ＰＣ１２Ａ、１２Ｂ、１２Ｄによって社内ネットワーク７２が、ＰＣ１２Ｃ、１２Ｅによって社外ネットワーク７４が構築されている。Ｐ２Ｐネットワーク７０を構成するＰＣ１２Ａ〜１２Ｃは、基本的には上記で説明した図５、６に示したピア１２の機能を有している。
【００９８】
なお、各ネットワークは例えばＬＡＮ（Local Area Network）等によって構築され、社内ネットワーク７２と社外ネットワーク７４とは例えばインターネット等を介して接続される。
【００９９】
また、各ＰＣ１２Ａ〜１２Ｅは、ＭＴＡ（Mail Transfer Agent）７６のＳＭＴＰ（Simple Mail Transfer Protocol）サーバ７６ＡやＰＯＰ（Post Office Protocol）サーバ７６Ｂと接続可能であり、各ＰＣは、作成したメールをＳＭＴＰサーバ７６Ａを介して他のＰＣで作成へ送信したり、他のＰＣから送信されたメールをＰＯＰ３サーバ７６Ｂを介して受信することができる。
【０１００】
次に、Ｐ２Ｐネットワーク７０を構成するＰＣ１２Ａのアプリケーション実行部２０に含まれる機能部としてのメールスヌープ部の構成について説明する。
【０１０１】
図１３には、ＰＣ１２Ａのメールスヌープ部８０の構成について示した。なお、ＰＣ１２Ｂ、１２Ｃも同様の構成であるので説明は省略する。
【０１０２】
メールスヌープ部８０は、メール制御部８０Ａを備えている。メール制御部８０Ａは、メールツールとしてのＭＵＡ９０から送信されたメール送信等に関するＳＭＴＰ要求コマンドをＳＭＴＰ要求受付部８０Ｂを介して受け付け、ＳＭＴＰ要求送信部８０Ｃを介してＳＭＴＰサーバ７６Ａへ送信する。また、メール制御部８０Ａは、ＳＭＴＰサーバ７６Ａから送信されたＳＭＴＰ応答メッセージをＳＭＴＰ応答受付部８０Ｄを介して受け付け、ＳＭＴＰ応答送信部８０Ｅを介してＭＵＡ９０へ送信する。
【０１０３】
さらに、メール制御部８０Ａは、ＭＵＡ９０から送信されたメール受信等に関するＰＯＰ３要求コマンドをＰＯＰ３要求受付部８０Ｆを介して受け付け、ＰＯＰ３要求送信部８０Ｇを介してＰＯＰ３サーバ７６Ｂへ送信する。また、メール制御部８０Ａは、ＰＯＰ３サーバ７６Ｂから送信されたＰＯＰ３応答メッセージをＰＯＰ３応答受付部Ｈを介して受け付け、ＰＯＰ３応答送信部８０Ｉを介してＭＵＡ９０へ送信する。
【０１０４】
また、メールスヌープ部８０は、Ｐ２Ｐメッセージ変更部８０Ｊを備えている。Ｐ２Ｐメッセージ変更部８０Ｊは、ＭＵＡ９０からの送信メールをＰ２Ｐネットワークにおいて予め定めたメールフォーマット（第２のフォーマット）に変更し、Ｐ２Ｐメッセージ送信部８０Ｋを介してＰ２Ｐネットワーク７０を構成するＰＣ１２Ｂ、１２Ｃに対して送信したり、ＰＣ１２Ｂ、１２Ｃから送信されたメールをＰ２Ｐメッセージ受信部８０Ｌを介して受信し、これをＭＵＡ９０で採用しているメールフォーマット（第１のフォーマット）に変換する。
【０１０５】
宛先解釈部８０Ｍは、メールの宛先を所定のフィルタ条件でフィルタリングするためのフィルター定義記述ファイルを記憶しており、ＭＵＡ９０からの送信メールや他のＰＣからの受信メールの宛先がフィルター定義記述ファイルに定義された条件に合致するか否かを判断する。
【０１０６】
メールメッセージ変更部８０Ｎは、宛先解釈部８０Ｍで検出された宛先のアドレスを削除したメールを作成する。
【０１０７】
このように、メールスヌープ部８０は、ＭＵＡ９０からの送信メールを通常のＳＭＴＰサーバ経由で他のＰＣに送信したり、ＰＯＰ３サーバ７６Ｂ経由で他のＰＣからのメールを受信することができると共に、Ｐ２ＰネットワークのＰＣに対しては、ＭＵＡ９０からのメールのフォーマットを変換して送受信することができる。
【０１０８】
実際には、ＭＵＡ９０のＳＭＴＰサーバ７６Ａ及びＰＯＰ３サーバ７６Ｂのアドレス及びＴＣＰポートの番号をメールスヌープ部８０について定めたアドレス及びポート番号に設定しておき、メールスヌープ部８０は、ＳＭＴＰサーバ７６Ａ及びＰＯＰ３サーバ７６Ｂのアドレス及びＴＣＰポートに対して通信を行う。これにより、ユーザは、ＳＭＴＰやＰＯＰを用いたメールの送受信とＰ２Ｐネットワークにおけるメールの送受信とを特に意識せずに、同じメールツールを用いて行うことができる。
【０１０９】
次に、ＰＣ１２Ａのメールスヌープ部８０で実行される処理について説明する。
【０１１０】
まず、Ｐ２Ｐネットワークを構成するＰＣ宛のメールをアーカイブする処理について、図１４に示すフローチャートを参照して説明する。なお、この処理は例えば所定時間毎に実行される。
【０１１１】
図１４に示すように、ステップ４００では、ＭＵＡ９０からＰＯＰ３要求受付部８０ＦがＰＯＰ３要求コマンド、例えばメールの読み出し要求のコマンドを受け付けたか否かを判断し、ＰＯＰ３要求コマンドを受け付けた場合にはステップ４０２へ移行し、受け付けていない場合には本ルーチンを終了する。
【０１１２】
ステップ４０２では、メール制御部８０Ａは、受け付けた要求コマンドのコンテキスト（リクエストＩＤ）をアプリケーションメモリ２２に記憶する。
【０１１３】
ステップ４０４では、ＰＯＰ３要求コマンドをＰＯＰ３要求送信部８０Ｇにより、Ｐ２Ｐ基盤構成部１６を介してＰＯＰ３サーバ７６Ｂへ送信する。
【０１１４】
ステップ４０６では、ＰＯＰ３サーバ７６Ｂからの前記コンテキストに対応した応答メッセージ、すなわちＰＣ１２Ａ（にログオンしているユーザ）宛のメールをＰＯＰ３応答受付部８０Ｈが受け付けたか否かを判断し、受け付けた場合にはステップ４０８へ移行し、受け付けていない場合には、受け付けるまで待機する。
【０１１５】
ステップ４０８では、宛先解釈部８０Ｍにより、受信したメールの宛先メールアドレスが、予め宛先解釈部８０Ｍに記憶されたフィルター定義記述ファイルに定義された受信メール用フィルタ条件に合致するか否かを判断する。このフィルター定義記述ファイルには、受信メール用フィルタ条件として、例えば抽出したいメールアドレスとして、Ｐ２Ｐネットワーク７０において作成された特定のＰ２Ｐグループに属するユーザのメールアドレスの全ての文字列又は一部の文字列等を設定することができる。また、例えば宛先のメールアドレスが記述されるＴｏフィールドに所定の文字列が含まれる場合や、ＣＣ（カーボンコピー）フィールドに所定の文字列が含まれる場合等、さらに細かい条件を受信メール用フィルタ条件として設定することができる。
【０１１６】
そして、受信したメールの宛先が受信メール用フィルタ条件に合致する場合にはステップ４１０へ移行し、合致していない場合には、ステップ４１４へ移行する。
【０１１７】
ステップ４１０では、メールメッセージ変更部８０Ｎにより、受信したメールのメッセージを予め定めたフォーマット、例えばアーカイブ用のフォーマットに変換し、ステップ４１２では、変換したメッセージをアプリケーションメモリ２２に記憶し、前記特定のＰ２Ｐグループで共有する。すなわち、受信したメールのメッセージが共有されたことを告知情報公開サービス部４０により特定のＰ２Ｐグループに属するユーザがログオンしている他のＰＣに告知する等の処理を行う。
【０１１８】
ステップ４１４では、受信したメールをＰＯＰ３応答送信部８０ＩによりＭＵＡ９０に送信する。これにより、ＭＵＡ９０により受信したメールを読み出すことができる。
【０１１９】
ステップ４１６では、ＰＯＰ３サーバ７６Ｂに対して、メールを受信したことに対する応答メッセージを送信して本ルーチンを終了する。
【０１２０】
このような処理をＰ２Ｐネットワーク７０の各ＰＣが行うことにより、特定のＰ２Ｐグループに属するユーザ宛のメールを簡単にアーカイブすることができる。従って、例えば従来のメーリングリストのように、メーリングリストの管理者を設ける必要もなく、受信メール用フィルタ条件を設定するだけで簡単にメーリングリストを構築することができる。
【０１２１】
次に、Ｐ２Ｐネットワークにおける特定のＰ２Ｐグループに属するメンバーのうち特定のメンバー、例えば社外のＰＣにログオンしているメンバーと社内のＰＣにログオンしているメンバーとでメールの送受信のプロトコルを切り替える処理について、図１５に示すフローチャートを参照して説明する。なお、この処理は例えば所定時間毎に実行される。
【０１２２】
図１５に示すように、ステップ５００では、ＭＵＡ９０からＳＭＴＰ要求受付部８０ＢがＳＭＴＰ送信要求コマンド、例えばメールの送信要求等のコマンドを受け付けたか否かを判断し、ＳＭＴＰ送信要求コマンドを受け付けた場合にはステップ５０２へ移行し、受け付けていない場合には本ルーチンを終了する。
【０１２３】
ステップ５０２では、宛先解釈部８０Ｍにより、送信メールの宛先メールアドレスが、予め宛先解釈部８０Ｍに記憶されたフィルター定義記述ファイルに定義された送信メール用フィルタ条件に合致するか否かを判断する。このフィルター定義記述ファイルには、送信メール用フィルタ条件として、例えば抽出したいメールアドレスとして、Ｐ２Ｐネットワーク７０において作成された特定のＰ２Ｐグループに属するユーザのうち例えば社外のＰＣにログオンするユーザのメールアドレスの全ての文字列又は一部の文字列等を設定することができる。また、例えば宛先のメールアドレスが記述されるＴｏフィールドに所定の文字列が含まれる場合や、ＣＣ（カーボンコピー）フィールドに所定の文字列が含まれる場合等、さらに細かい条件をフィルタ条件として設定することができる。
【０１２４】
そして、送信メールの宛先が送信メール用フィルタ条件に合致する場合にはステップ５０４へ移行し、合致していない場合には、ステップ５１２へ移行する。
【０１２５】
ステップ５０４では、Ｐ２Ｐメッセージ変更部８０Ｊにより、送信メールのメッセージを予め定めたフォーマット、例えば暗号化処理が施されたフォーマットに変換する。
【０１２６】
ステップ５０６では、例えばメール制御部８０Ａにより、送信メール用フィルタ条件に合致するメールアドレスに対応するＰＣ、すなわち、そのメールアドレスに対応するユーザがログオンしているＰＣのアドレス（ピアＩＤ）を求める。これは、ユーザ情報１８Ｅやピア情報１８Ｄ等を参照することにより求めることができる。
【０１２７】
そして、ステップ５０８において、Ｐ２Ｐメッセージ送信部８０Ｋにより、求めたアドレスに対して、ステップ５０４で変換したメッセージを含む送信メールを送信する。なお、送信メールを共有状態としてもよい。
【０１２８】
ステップ５１０では、メールメッセージ変更部８０Ｎにより、ＭＵＡ９０から送信された送信メールの宛先フィールドから送信メール用フィルタ条件に合致したメールアドレスを削除した送信メールを作成する。
【０１２９】
そして、ステップ５１２では、ＳＭＴＰ要求送信部８０Ｃにより、送信メールをＰ２Ｐ基盤構成部１６を介してＳＭＴＰサーバ７６Ａへ送信する。
【０１３０】
このように、特定のＰ２Ｐグループに属するユーザのうち例えば社外のユーザに対してはＳＭＴＰによらず、送信メールを暗号化してＰ２Ｐネットワークを通じて安全に送信することができ、社内のユーザに対してはＳＭＴＰサーバ７６Ａ経由で送信することができる。例えば図１２に示すように、ＰＣ１２Ａが社外のＰＣ１２Ｃに対してメールを送信する場合には、送信メールを暗号化して安全に送信することができ、社内のＰＣ１２Ｂに対しては暗号化は必要ないのでＳＭＴＰサーバ７６Ａ経由で送信することができる。
【０１３１】
このような処理をＰ２Ｐネットワーク７０の各ＰＣが行うことにより、ユーザが複雑な処理を行うことなく、送信メール用フィルタ条件を設定するだけで簡単に社外のユーザ、社内のユーザに対してメールの送信プロトコルを切り替えることができる。従って、送信先に応じてメールツールを切り替えたりする必要もなく、利便性及び安全性を大幅に向上させることができる。
【０１３２】
次に、Ｐ２Ｐグループに属するメンバーからのメールを受信した場合の処理について、図１６に示すフローチャートを参照して説明する。なお、この処理は例えば所定時間毎に実行される。
【０１３３】
図１６に示すように、ステップ６００では、Ｐ２Ｐメッセージ受信部８０ＬがＰ２Ｐネットワークの他のＰＣ１２Ｂ、１２Ｃ等からメールを受信したか否かを判断し、メールを受信した場合にはステップ６０２へ移行し、受信していない場合には本ルーチンを終了する。
【０１３４】
ステップ６０２では、Ｐ２Ｐメッセージ変更部８０Ｊにより、受信したメールのフォーマットを通常のメールフォーマット、すなわちＰＯＰ３に従ったフォーマットに変換する。また、受信したメールが暗号化されている場合には、これを復号する。
【０１３５】
ステップ６０４では、Ｐ２Ｐメッセージ変更部８０Ｊにより、受信メールの宛先及び送信元のアドレスを、通常のメールアドレスに変換する。これは、ユーザ情報１８Ｅやピア情報１８Ｄ等を参照することにより求めることができる。
【０１３６】
ステップ６０６では、メール制御部８０Ａにより、変換したメールをアプリケーションメモリ２２に記憶する。
【０１３７】
ステップ６０８では、ＭＵＡ９０からＰＯＰ３要求受付部８０ＦがＰＯＰ３要求コマンド、例えばメールの読み出し要求のコマンドを受け付けたか否かを判断し、ＰＯＰ３要求コマンドを受け付けた場合にはステップ６１０へ移行し、受け付けていない場合には本ルーチンを終了する。
【０１３８】
ステップ６１０では、メール制御部８０Ａは、受け付けた要求コマンドのコンテキスト（リクエストＩＤ）をアプリケーションメモリ２２に記憶する。
【０１３９】
ステップ６１２では、ＰＯＰ３要求コマンドをＰＯＰ３要求送信部８０Ｇにより、Ｐ２Ｐ基盤構成部１６を介してＰＯＰ３サーバ７６Ｂへ送信する。
【０１４０】
ステップ６１４では、ＰＯＰ３サーバ７６Ｂからの前記コンテキストに対応した応答メッセージをＰＯＰ３応答受付部８０Ｈが受け付けたか否かを判断し、受け付けた場合にはステップ６１６へ移行し、受け付けていない場合には、受け付けるまで待機する。
【０１４１】
ステップ６１６では、応答メッセージとしてＰＣ１２Ａ（にログオンしているユーザ）宛の新着メールが含まれているか否かを判断し、新着メールが含まれている場合には、ステップ６１８へ移行し、新着メールが含まれていない場合には、ステップ６２２へ移行する。
【０１４２】
ステップ６１８では、受信した新着メールをステップ６０６でアプリケーションメモリ２２に記憶しておいた受信メールをマージする。すなわち、ＰＯＰ３サーバ７６Ｂ経由で受信した新着メールと、Ｐ２Ｐネットワーク７０の他のＰＣから受信した新着メールとをマージする。
【０１４３】
ステップ６２０では、マージした新着メールをＭＵＡ９０に送信する。これにより、ＭＵＡ９０において、ＰＯＰ３サーバ７６Ｂ経由で受信した新着メールと、Ｐ２Ｐネットワーク７０の他のＰＣから受信した新着メールとを特に区別することなく閲覧することができる。
【０１４４】
そして、ステップ６２２では、ＰＯＰ３サーバ７６Ｂに対して、ＰＯＰ３サーバ７６Ｂからの応答に対する応答メッセージを送信して本ルーチンを終了する。
【０１４５】
このように、Ｐ２Ｐネットワーク７０の他のＰＣから受信した新着メールは通常のメールフォーマットに変換し、これをＰＯＰ３サーバ７６Ｂ経由で受信した新着メールとマージしてＭＵＡ９０に送信するため、ユーザは、ＰＯＰ３サーバ７６Ｂ経由で受信した新着メールと、Ｐ２Ｐネットワーク７０の他のＰＣから受信した新着メールとを特に意識するすることなく閲覧することができる。従って、新着メールをチェックするのに送信元に応じてメールツールを切り替えたりする必要もなく、利便性を大幅に向上させることができる。
【０１４６】
なお、本実施形態では、メールの送信プロトコル及び受信プロトコルとしてＳＭＴＰ及びＰＯＰ３を用いた場合について説明したが、これに限らず、これらのプロトコルに代えて又は追加して他のプロトコルを用いても良い。例えばＰＯＰ３に代えてＩＭＡＰ（Internet Mail Access Protocol）４を用いても良い。この場合、他のプロトコルに応じた要求受付部、要求送信部、応答受付部、応答送信部をメールスヌープ部８０に設ければよい。
【０１４７】
また、本実施形態では、ＭＵＡ９０からの送信メールや他ピアからの受信メールを取得して、送信先や送信元に応じてメッセージを変換する場合等について説明したが、本発明の適用例はこれに限られない。
【０１４８】
例えば、ＭＵＡ９０に代えてＷｅｂブラウザ、メールスヌープ部８０に代えてＷｅｂスヌープ部、ＳＭＴＰサーバ７６Ａ等に代えてプロキシサーバ（Ｗｅｂサーバへの接続を代行するサーバ）が設けられた構成において、Ｗｅｂブラウザがプロキシサーバに対して要求したＷｅｂページ等のデータがプロキシサーバからＷｅｂブラウザへ送信された場合に、これをＷｅｂスヌープ部で取得して記憶しておき、Ｐ２Ｐグループで共有するようにしてもよい。これにより、所望のＷｅｂページ等のデータが、既に他ピアによって取得されていた場合には、わざわざプロキシサーバ経由でＷｅｂサーバーに対してデータを要求する必要がなく、速やかに所望のデータを取得することができる。
【０１４９】
また、Ｗｅｂスヌープ部において、Ｗｅｂブラウザから要求のあったＷｅｂページ等のアドレス情報を取得して記憶し、これをアクセス履歴情報としてＰ２Ｐグループで共有するようにしてもよい。これにより、Ｐ２Ｐグループで人気のあるＷｅｂサイトを容易に知ることが可能となる。
【図面の簡単な説明】
【０１５０】
【図１】Ｐ２Ｐネットワークのネットワーク構成図である。
【図２】ピュアＰ２Ｐのネットワーク構成図である。
【図３】ハイブリッドＰ２Ｐのネットワーク構成図である。
【図４】Ｐ２Ｐネットワークのグループについて説明するための概念図である。
【図５】ピアの基本的構成のブロック図である。
【図６】メッセージ制御部のブロック図である。
【図７】エンドピアで実行される処理のフローチャートである。
【図８】転送機能付きピアで実行される処理のフローチャートである。
【図９】スパニングツリーのイメージ図である。
【図１０】Ｐ２Ｐネットワークの他の形態のネットワーク構成図である。
【図１１】待ち合わせ機能付きピアで実行される処理のフローチャートである。
【図１２】ネットワーク構成の一例を示す概略構成図である。
【図１３】メールスヌープ部の構成を示すブロック図である。
【図１４】メールスヌープ部で実行される処理ルーチンのフローチャートである。
【図１５】メールスヌープ部で実行される処理ルーチンのフローチャートである。
【図１６】メールスヌープ部で実行される処理ルーチンのフローチャートである。
【符号の説明】
【０１５１】
１０、１１      Ｐ２Ｐネットワーク
１２      ピア
１６      Ｐ２Ｐ基盤構成部
１８      Ｐ２Ｐ基盤管理データ記憶部
２０      アプリケーション実行部
２２      アプリケーションメモリ
２４      メッセージ制御部
２６      データ管理部
２８      送信部
３０      受信部
３２      ネットワーク
３４      サービス実行部
３６      メッセージディスパッチ部
３８      ピア探索サービス部
４０      告知情報公開サービス部
４２      告知情報取得サービス部
４４      グループ管理サービス部
４６      ユーザ管理サービス部
４８      ピア管理サービス部
【図１】
2006180229.tif 000003
【図２】
2006180229.tif 000004
【図３】
2006180229.tif 000005
【図４】
2006180229.tif 000006
【図５】
2006180229.tif 000007
【図６】
2006180229.tif 000008
【図７】
2006180229.tif 000009
【図８】
2006180229.tif 000010
【図９】
2006180229.tif 000011
【図１０】
2006180229.tif 000012
【図１１】
2006180229.tif 000013
【図１２】
2006180229.tif 000014
【図１３】
2006180229.tif 000015
【図１４】
2006180229.tif 000016
【図１５】
2006180229.tif 000017
【図１６】
2006180229.tif 000018