JP3682439B2 - データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム - Google Patents

データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム Download PDF

Info

Publication number
JP3682439B2
JP3682439B2 JP2002080580A JP2002080580A JP3682439B2 JP 3682439 B2 JP3682439 B2 JP 3682439B2 JP 2002080580 A JP2002080580 A JP 2002080580A JP 2002080580 A JP2002080580 A JP 2002080580A JP 3682439 B2 JP3682439 B2 JP 3682439B2
Authority
JP
Japan
Prior art keywords
data
transmission
client
communication
notification
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
JP2002080580A
Other languages
English (en)
Other versions
JP2003283567A (ja
Inventor
広樹 谷岡
Original Assignee
株式会社ジャストシステム
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 株式会社ジャストシステム filed Critical 株式会社ジャストシステム
Priority to JP2002080580A priority Critical patent/JP3682439B2/ja
Publication of JP2003283567A publication Critical patent/JP2003283567A/ja
Application granted granted Critical
Publication of JP3682439B2 publication Critical patent/JP3682439B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ通信システム等に関し、特に複数のクライアント装置間でデータ通信を行うための技術に関する。
【0002】
【従来の技術】
クライアント−サーバシステムにおいて、複数のクライアント装置間でメッセージをやりとりするためのサービスとして、インスタントメッセージサービス(以下、IMSという)が知られている。IMSにおいては、各クライアント装置ではインスタントメッセンジャー(以下、IMという)というアプリケーションが動作している必要があるが、ログイン管理やクライアント装置のIPアドレスを管理するためには、サーバ装置によるサービスも欠かせない。
【0003】
近年、IMSにおいて、クライアント装置にボイスチャット(インターネット電話)機能を搭載したものや、ファイル転送機能を搭載したものも増えている。また、企業内LANでは、プロキシサーバを介してインターネットなどの外部ネットワークに接続するようにしたものが増えており、プロキシサーバを介してIMSを実現するシステムも存在する。
【0004】
【発明が解決しようとする課題】
しかしながら、プロキシサーバを利用しているIMSにおいては、同一のLAN上に存在するクライアント装置間で、ボイスチャット機能やファイル転送機能のようなリッチな機能を実現することができない。それは、ボイスチャット機能やファイル転送機能では、比較的大きなサイズのデータをやりとりする必要があり、送受信されるパケットの数が大きくなってしまうため、プロキシサーバ(特にそこに存在するファイアーウォール機能)に過大な負荷をかけてしまうことになるからである。
【0005】
同一のLAN上に存在するクライアント装置では、プロキシサーバを介さずにダイレクトにデータを送受信すれば、ボイスチャットなどの機能を実現できるようになる。既存のIMにおいても、このようなことを可能にしたものがあるが、接続先の設定変更は手動で行わなければならない。このため、コンピュータ技術やネットワーク技術に詳しい者でなければ、クライアント装置間をダイレクトに接続してリッチな機能を実現させることがかなり困難であり、また、詳しい者であっても、接続先の設定変更の操作が非常に煩雑に感じてしまうという問題があった。
【0006】
また、携帯電話機同士の間におけるデータ通信も、上記したインスタントメッセージサービスと同じようなシステム構成で行われる。すなわち、データ通信を行うクライアントである携帯電話機と、それを制御するサーバ装置との間に基地局のコンピュータ装置が存在することとなる。従って、携帯電話機間のデータ通信量が多くなると、サーバ装置及び基地局のコンピュータ装置に負荷がかかることとなる。
【0007】
ところで、最近登場した第三世代携帯電話では、従来の携帯電話と比べるとデータ通信速度が格段に速く、動画の送信なども可能であり、従来の携帯電話で利用されていたよりも遙かに多くのデータ通信が利用されることが考えられる。このため、携帯電話機間でデータ通信を行うときにサーバ装置及び基地局のコンピュータ装置にかかる負荷の軽減することの重要性が増大すると考えられる。
【0008】
本発明は、上記従来技術の問題点を解消するためになされたものであり、他の装置に過大な負荷をかけることなく複数のクライアント装置間でデータ通信を行えるようにすることで、大容量のデータ通信を可能としたデータ通信システム等を提供することを目的とする。
【0009】
本発明は、また、複数のクライアント装置間でデータ通信を行うための接続設定を容易に行えるデータ通信システム等を提供することを目的とする。
【0010】
【課題を解決するための手段】
上記目的を達成するため、本発明の第1の観点にかかるデータ通信システムは、
外部ネットワーク上に存在するサーバ装置と、該サーバ装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置と、前記ローカルエリアネットワークと前記外部ネットワークとを接続して前記複数のクライアント装置をそれぞれ前記サーバ装置に接続するための中継装置とを備え、
前記サーバ装置は、
前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段と、
前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段と、
前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段と、
前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信する直接通信通知送信手段とを備え、
前記複数のクライアント装置は、それぞれ、
他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段と、
他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段と、
前記直接通信通知送信手段から送信された通知を受信する直接通信通知受信手段と、
前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段と、
前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段とを備える
ことを特徴とする。
【0011】
上記データ通信システムでは、送信元と送信先のクライアント装置がいずれの装置も介さずにデータ通信可能な状態にあれば、送信元及び送信先の双方のクライアント装置に、サーバ装置からの通知がなされる。この通知に基づいて、送信元及び送信先のクライアント装置は、データ通信の相手の設定を変更し、中継装置及びサーバ装置を介さずにデータを送受信することができるようになる。このため、クライアント装置のユーザが煩雑な操作を行わず、データ通信の相手方のクライアント装置が他の装置を介さずに通信可能な状態にあるかどうかを意識することなく、クライアント装置間での直接的なデータ通信が行えるようになる。
【0012】
また、通信相手設定手段によって、送信元及び送信先のクライアント装置同士がデータ通信の相手の設定を変更することによって、サーバ装置や中継装置を介することなく、当該クライアント装置同士で直接的にデータを送受信することとなる。これにより、サーバ装置や中継装置に余分な負荷をかけることなく、直接通信可能な状態にあるクライアント装置同士で大容量のデータをやりとりすることが可能となる。
【0016】
上記目的を達成するため、本発明の第の観点にかかるデータ通信方法は、
外部ネットワーク上に存在するサーバ装置と、該サーバ装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置と、前記ローカルエリアネットワークと前記外部ネットワークとを接続して前記複数のクライアント装置をそれぞれ前記サーバ装置に接続するための中継装置とを備えるネットワークシステムにおいて実行される方法であって、
他のクライアント装置にデータを送信しようとするクライアント装置が前記中継装置を介して前記サーバ装置に送信要求を送信するステップと、
他のクライアント装置からのデータを受信しようとするクライアント装置が前記中継装置を介して前記サーバ装置に受信要求を送信するステップと、
前記サーバ装置がいずれかのクライアント装置から受信した送信要求と前記サーバ装置がそれぞれのクライアント装置のから受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定するステップと、
前記送信要求に基づく送信元と送信先のクライアント装置が他のいずれの装置も介さずにデータ通信が可能である場合に、その旨の通知を通信相手のクライアント装置を示す相手情報と共に前記サーバ装置から前記中継装置を介して前記送信元及び送信先のクライアント装置に送信するステップと、
前記サーバ装置からの通知を受信した前記送信元及び送信先のクライアント装置が、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定するステップと、
互いを通信の相手として設定した前記送信元及び送信先のクライアント装置同士が、他のいずれの装置も介在させずにデータを送受信するステップと
を含むことを特徴とする。
【0018】
上記目的を達成するため、本発明の第の観点にかかるサーバ装置は、
他の装置の制御に従ってデータ通信を行うことが可能であると共他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置に、前記ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して接続され、前記外部ネットワーク上に存在するサーバ装置であって、
前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段と、
前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段と、
前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段と、
前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信し、前記送信元と送信先のクライアント装置との間で直接データ通信を行わせる直接通信通知送信手段と
を備えることを特徴とする。
【0020】
ここで、前記複数のクライアント装置からの送信要求及び受信要求が、互いに異なる中継装置を介して送られてくるものであると共に、ローカルエリアネットワーク毎に固有のLAN識別情報を含んでいる場合には、
前記直接通信判定手段は、前記接続要求に含まれるLAN識別情報に従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定するものとすることができる。
【0021】
一方、 前記複数のクライアント装置からの送信要求及び受信要求が、同一の中継装置を介して送られてくるものである場合には、
前記直接通信判定手段は、前記接続要求を中継した中継装置の識別情報に従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定するものとすることができる。
【0022】
上記サーバ装置は、
前記中継装置が、前記複数のクライアント装置間におけるデータ通信を制御する機能を備える場合には、
前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にないと判定したときに、前記送信要求が示すデータの送信先となるクライアント装置が、前記送信要求をした送信元のクライアント装置を接続する中継装置と同一の中継装置に接続可能であるかどうかを判定する同一中継装置判定手段と、
前記同一中継装置判定手段が同一の中継装置に接続可能であると判定した場合に、前記送信要求に基づく送信元と送信先のクライアント装置の双方を接続可能な中継装置に、同一の中継装置を介して通信可能な旨を通知し、前記送信元のクライアント装置と前記送信先のクライアント装置との間におけるデータ通信を該中継装置に制御させる通知手段とをさらに備えるものとすることができる。
【0023】
上記サーバ装置は、
自己が制御しているクライアント装置間でのデータ通信の負荷(及び接続されている各中継装置におけるデータ通信の負荷)を判定する通信負荷判定手段を備えていてもよい。この場合において、前記通信負荷判定手段の判定結果に従って、前記送信元のクライアント装置と前記送信先のクライアント装置との間におけるデータ通信を中継装置に制御させるための通知をするものとしてもよい。
【0027】
上記目的を達成するため、本発明の第の観点にかかるクライアント装置は、
ローカルエリアネットワーク上に存在し、該ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して前記外部ネットワーク上に存在するサーバ装置に接続されると共に、他の装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに同一のローカルエリアネットワーク上に存在する他のクライアント装置とデータ通信を可能とする機能を備えたクライアント装置であって、
他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段と、
他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段と、
前記送信要求送信手段が送信した送信要求、または他のクライアント装置の送信要求送信手段が送信した送信要求に従って、データ通信の相手となる他のクライアント装置と他のいずれの装置も介さずにデータ通信可能な状態にある旨の通知を、前記中継装置を介して前記サーバ装置から受信する直接通信通知受信手段と、
前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段と、
前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段と
を備えることを特徴とする。
【0029】
ここで、前記送信要求送信手段が送信する送信要求、及び前記受信要求送信手段が送信する受信要求が、ローカルエリアネットワーク毎に固有のLAN識別情報を含むものである場合には、
前記直接通信通知受信手段は、同一のLAN識別情報を含む送信要求及び受信要求が前記サーバ装置において受信された場合に、前記サーバ装置からの通知を受信するものとすることができる。
【0030】
上記クライアント装置は、
同一のローカルエリアネットワーク上に存在し、当該ローカルエリアネットワークを介して直接的に接続可能な他のクライアント装置に関する情報を管理する直接接続情報管理手段をさらに備えていてもよい。この場合において、
前記接続先設定手段は、前記直接接続情報管理手段によって管理されている情報に従って、接続先の設定変更を行うものとすることができる。
【0031】
ここで、上記クライアント装置は、前記直接接続情報管理手段によって管理されている情報に従って他のクライアント装置と直接的な接続ができない場合に、その旨を前記中継装置を介して前記サーバ装置に通知する通知手段をさらに備えるものとすることもできる。
【0034】
上記目的を達成するため、本発明の第の観点にかかるプログラムは、
他の装置の制御に従ってデータ通信を行うことが可能であると共他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置に、前記ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して接続され、前記外部ネットワーク上に存在するコンピュータ装置を、
前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段、
前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段、
前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段、及び、
前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信し、前記送信元と送信先のクライアント装置との間で直接データ通信を行わせる直接通信通知送信手段
として機能させることを特徴とする。
【0036】
上記目的を達成するため、本発明の第の観点にかかるプログラムは、
ローカルエリアネットワーク上に存在し、該ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して前記外部ネットワーク上に存在するサーバ装置に接続されると共に、他の装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに同一のローカルエリアネットワーク上に存在する他のクライアント装置とデータ通信を可能とする機能を備えたコンピュータ装置を、
他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段、
他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段、
前記送信要求送信手段が送信した送信要求、または他のクライアント装置の送信要求送信手段が送信した送信要求に従って、データ通信の相手となる他のクライアント装置と他のいずれの装置も介さずにデータ通信可能な状態にある旨の通知を、前記中継装置を介して前記サーバ装置から受信する直接通信通知受信手段、
前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段、及び、
前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段
として機能させることを特徴とする。
【0038】
【発明の実施の形態】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【0039】
[第1の実施の形態]
図1は、この実施の形態に適用されるネットワークシステムの例を示す図である。図示するように、このネットワークシステムは、IMSサーバ1と、プロキシサーバ2と、複数のIMクライアント3とを備えている。プロキシサーバ2及び複数のIMクライアント3は、それぞれLAN4を介して互いに接続されている。プロキシサーバ2は、インターネット5を介してLAN4の外部に存在するIMSサーバ1と接続される。図に示すLAN4の他にも、インターネット5を介してIMSサーバ1に接続しているLANが存在する可能性がある。
【0040】
IMSサーバ1は、汎用のサーバコンピュータから構成されている。IMSサーバ1は、図2に示すように、メッセージ保存部11と、IP認識部12と、IP保存部13と、同一ネットワーク推測部14と、通信制御部15とを備えている。これらの機能は、IMSサーバ1のCPU(Central Processing Unit)が後述するフローチャートに示すようなプログラムを実行することによって実現される。
【0041】
メッセージ保存部11は、IMSサーバ1を介してIMクライアント3間でやりとりされるデータ(パケットのメッセージ)を一時的に保存する。IP認識部12は、IMSサーバ1に接続要求したIMクライアント3のIPアドレス(対応するプロキシサーバ2のIPアドレスを含む)を認識する。具体的には、接続要求に対応したメッセージのヘッダに含まれる要求元のIMクライアント3のIPアドレスを抽出する。IP保存部13は、IP認識部12が認識したIPアドレスのうちで、データの送信のために接続要求をしてきたIMクライアント3のIPアドレスを一時的に保存する。
【0042】
同一ネットワーク推測部14は、IP認識部12が新たに認識したIPアドレスと同一のIPアドレス(プロキシサーバ2のIPアドレスが同一であるということを意味する)がIP保存部13に保存されているかどうかを調べる。同一のIPアドレスが保存されている場合に、同一のLAN4に存在する複数のIMクライアント3から接続要求がされたものと判定し、通信制御部15からプロキシサーバ2を介して対応するIMクライアント3にLAN内接続通知メッセージを送信させる。通信制御部15は、IMサーバ1とプロキシサーバ2との間におけるデータの送受信を制御する。
【0043】
図1に示すプロキシサーバ2は、通信プロトコルが互いに異なるLAN4とインターネット5とを接続し、IMクライアント3からIMSサーバ1へのアクセス制御を行うためのサーバコンピュータであり、ファイアーウォール機能を備えている。このファイアーウォール機能では、LAN4とインターネット5との間を通過させてよいパケットを選択している。プロキシサーバ2は、また、いずれかのIMクライアント3がアクセスしたページと同じページに他のIMクライアント3がアクセスしたときにインターネット5に接続することなく当該他のIMクライアント3にページを送信するキャッシュ機能も備えている。
【0044】
IMクライアント3は、それぞれインスタントメッセンジャーソフトが稼働するパーソナルコンピュータなどによって構成されている。IMクライアント3は、図3に示すように、メッセージ授受部31と、バディリスト管理部32と、接続先設定部33と、通信制御部34とを備えている。これらの機能は、IMクライアント3のCPU(Central Processing Unit)が後述するフローチャートに示すようなプログラムを実行することによって実現される。
【0045】
メッセージ授受部31は、IMクライアント3が他のコンピュータ(IMSサーバ1または他のIMクライアント3)とやりとりするデータ(メッセージ)について、アプリケーションと通信制御部34との間での受け渡しを行う。メッセージ授受部31は、後述する接続要求メッセージなどの各種のメッセージを必要に応じて生成する機能も有している。
【0046】
バディリスト管理部32は、同一のLAN4に存在する他のIMクライアント3に関する情報を含むバディリストを記憶管理している。通信制御部34は、接続先設定部33による接続先の設定に従って、IMクライアント3が他のコンピュータとの間で行うデータの送受信を制御する。通信制御部34が送信するメッセージは、パケット化されている。
【0047】
接続先設定部33は、IMクライアント3によるデータ通信をプロキシサーバ2を介して行うものとするか、それともLAN4上の他のIMクライアント3とピアツーピアで直接行うものとするかの設定を行う。接続先設定部33は、通常の場合においてプロキシサーバ2を介してデータ通信を行うものとして接続先を設定している。なお、ピアツーピアの接続とは、IMクライアント3同士がプロキシサーバ2を介さずにLAN4のみを介してデータ通信を行うことを意味するのであり、IMクライアント3同士が必ずしも専用線で接続されている必要はない。
【0048】
以下、このネットワークシステムにおける動作について説明する。最初に、IMSサーバ1とIMクライアント3とがそれぞれ実行する処理について、図4及び図5のフローチャートを参照して説明する。IMSサーバ1及びIMクライアント3は、それぞれ様々な処理も並行して行っているものであるが、以下では本発明に関わる処理のみを説明するものとする。
【0049】
図4は、IMSサーバ1が実行する処理を示すフローチャートである。IMSサーバ1では、後述するようにIMクライアント3から送られてくる接続要求メッセージの受信を待機している(ステップS101)。接続要求メッセージを受信した場合には、さらにそれがデータ送信のための接続要求メッセージであるかどうかを判定する(ステップS102)。
【0050】
データ送信のための接続要求メッセージであれば、IP認識部12は、当該接続要求メッセージに含まれるIMクライアント3のIPアドレスを抽出し、IP保存部13に保存する(ステップS103)。また、メッセージ保存部11は、当該接続要求メッセージを保存する(ステップS104)。そして、ステップS105の処理に進む。一方、ステップS102でデータ送信のための接続要求メッセージでなかった場合には、そのままステップS105の処理に進む。
【0051】
ステップS105では、同一ネットワーク推測部14は、新たにIP認識部12が認識したIMクライアント3のIPアドレスと、IP保存部13に保存されているIMクライアント3のIPアドレスとを比較することにより、送受信先が対応する接続要求メッセージがあるかどうかを判定する(ステップS105)。送受信先が対応する接続要求メッセージがなければ、ステップS101の処理に戻る。送受信先が対応する接続要求メッセージがあれば、同一ネットワーク推測部14は、さらにIMクライアント3のIPアドレスとして含まれているプロキシサーバ2のIPアドレスに従って、送信側のIMクライアント3と受信側のIMクライアント3とが同一のLAN4上に存在するかどうかを判定する(ステップS106)。
【0052】
送信側のIMクライアント3と受信側のIMクライアント3とが同一のLAN4上に存在すると判定した場合、同一ネットワーク推測部14は、当該送信側となるIMクライアント3と受信側となるIMクライアント3との双方を宛先として、LAN内接続通知メッセージを通信制御部15から送信させる(ステップS107)。このLAN内接続通知メッセージは、プロキシサーバ2を介して各IMクライアント3に送られる。また、IP保存部13は、当該送信側のIMクライアント3のIPアドレスを破棄し(ステップS108)、メッセージ保存部11は、送信側のIMクライアント3から送られてきたメッセージを破棄する(ステップS109)。そして、ステップS101の処理に戻る。
【0053】
ステップS106において送信側のIMクライアント3と受信側のIMクライアント3とが同一のLAN4上に存在しないと判定した場合には、メッセージ保存部11に保存された対応するメッセージを、受信側となるIMクライアント3を宛先として通信制御部15から送信させる(ステップS110)。このメッセージは、プロキシサーバ2を介して受信側のIMクライアント3に送られる。そして、ステップS101の処理に戻る。
【0054】
図5は、IMクライアント3が実行する処理を示すフローチャートである。IMクライアント3では、図5(a)に示すIMS機能を利用して他のIMクライアント3にデータを送信する場合にIMSサーバ1に接続要求を送信する処理、図5(b)に示す他のIMクライアント3からのデータ受信のためのポーリングの処理、及び図5(c)に示すピアツーピアでIMクライアント3同士の間のデータ通信処理が行われる。
【0055】
アプリケーションによる処理に従って他のIMクライアント3にデータを送信しようとする場合、図5(a)に示すように、メッセージ授受部31は、送信すべきデータをパケットサイズに分割し、分割した各データをそれぞれ含むデータ送信のための接続要求メッセージを生成する(ステップS201)。次に、メッセージ授受部31は、生成した各接続要求メッセージを通信制御部34に渡し、通信制御部34は、各接続要求メッセージをLAN4を介してプロキシサーバ2に送信する(ステップS202)。そして、各接続要求メッセージが、プロキシサーバ2からインターネット5を介してIMSサーバ1へと送られる。
【0056】
また、図5(b)に示すように、メッセージ授受部31は、データ受信のための接続要求を送信するタイミングとなったかどうかを判定している(ステップS221)。このタイミングは、所定の期間毎に到来するものとなる。データ受信のための接続要求を送信するタイミングとなった場合、メッセージ授受部31は、他のIMクライアント3からのデータ受信のための接続要求メッセージを生成する(ステップS222)。次に、メッセージ授受部31は、生成した接続要求メッセージを通信制御部34に渡し、通信制御部34は、この接続要求メッセージをLAN4を介してプロキシサーバ2に送信する(ステップS223)。この接続要求メッセージは、プロキシサーバ2からインターネット5を介してIMSサーバ1へと送られる。
【0057】
また、図5(c)に示すように、メッセージ授受部31は、前述したようにIMSサーバ1から送信されるLAN内接続通知メッセージの受信を待機している(ステップS241)。次に、LAN内接続通知メッセージを受信した旨がバディリスト管理部32に通知され、バディリスト管理部32は、LAN内接続通知メッセージに対応する他のIMクライアント3に関する情報について、バディリストを参照する(ステップS242)。そして、当該他のIMクライアント3とLAN4を介して直接的に接続可能であるかどうかを判定する(ステップS243)。直接的に接続可能でなければ、ステップS241の処理に戻る。
【0058】
直接的に接続可能である場合には、その旨が接続先設定部33に通知され、接続先設定部33は、通信制御部34がデータの送受信を行う場合の接続先をLAN内接続通知メッセージで示される他のIMクライアント3に設定変更する(ステップS244)。この接続先の設定変更は、データの送信側と受信側のいずれでも行われるものとなり、2つのIMクライアント3同士で、プロキシサーバ2などの外部の装置を介することなく、LAN4を介してピアツーピアでデータを送受信することが可能となる。
【0059】
メッセージ授受部31は、通信制御部34の接続先が設定変更されると、2つのIMクライアント3同士で互いに送受信すべきデータをLAN4を介してピアツーピアで通信制御部34に送受信させる(ステップS245)。このピアツーピアでのデータの送受信が完了すると、接続先設定部33による接続先の設定を元に戻し(ステップS246)、ステップS241の処理に戻る。
【0060】
次に、このネットワークシステムにおいて、IMクライアント3間でデータを送受信するまでのシステム全体における手順を、図6の説明図を参照して説明する。
【0061】
まず、図6(a)に示すように、送信側のIMクライアント3−1が接続要求メッセージをプロキシサーバ2を介してIMSサーバ1に送信する。IMSサーバ1では、その接続要求メッセージのパケットに含まれるIPアドレスをIP認識部12が抽出してIP保存部13に保存する。また、受信側のIMクライアント3−2が所定のタイミングで接続要求メッセージをプロキシサーバ2を介してIMSサーバ1に送信する。IMSサーバ1では、その接続要求メッセージのパケットに含まれるIPアドレスを抽出する。
【0062】
次に、図6(b)に示すように、IMSサーバ1の同一ネットワーク推測部14は、IP保存部13に保存されたIPアドレスとIP認識部12が抽出したIPアドレストとを比較し、同一のLAN4上のものであることを判定する。そして、同一ネットワーク推測部14により、IMSサーバ1から2つのIMクライアント3−1、3−2にLAN内接続通知メッセージが送られる。
【0063】
次に、図6(c)に示すように、LAN内接続通知メッセージを受信したIMクライアント3−1、3−2では、接続先設定部33がバディリスト管理部32で管理されているバディリストに従って接続先の設定を変更する。これにより、IMクライアント3−1と3−2とがプロキシサーバ2を介することなく、LAN4を介してピアツーピアで接続される。そして、送信すべきデータがIMクライアント3−1から3−2に送られることとなる。
【0064】
以上説明したように、この実施の形態にかかるネットワークシステムにおいては、同一のLAN4上にあるIMクライアント3同士でデータを送受信しようとして、IMSサーバ1がそれぞれの接続要求メッセージを受信すると、IMSサーバ1は、送信側から受信側へのデータ送信を仲介することなく、当該同一LAN4上のIMクライアント3にLAN内接続通知メッセージを送信する。このLAN内接続通知メッセージによって、IMクライアント3同士がピアツーピアで接続される。
【0065】
同一のLAN4上のIMクライアント3同士がピアツーピアで接続されてデータを送受信することで、IMクライアント3間でデータを送受信する際に、プロキシサーバ2やIMSサーバ1に過大な負荷をかけることがない。このため、同一のLAN4上に存在するIMクライアント3間で大容量のデータを送受信することが可能となる。
【0066】
また、IMクライアント3においては、IMSサーバ1からLAN内接続通知メッセージが送られてくることで接続先設定部33が自動で接続先を設定変更し、同一LAN4上の他のIMクライアント3とピアツーピアで接続できるようにしている。このように接続先の設定変更は、IMクライアント3のユーザが煩雑な操作を行わなくても、またコンピュータやネットワークに関する知識がなくても可能となっている。そして、各IMクライアント3のユーザは、データの送信先となる他のIMクライアント3が同一のLAN4上にあるかどうかを意識することなく、同じ操作でIMクライアント3間のデータ通信を指示することができるようになる。
【0067】
[第2の実施の形態]
図7は、この実施の形態に適用されるネットワークシステムの例を示す図である。図示するように、このネットワークシステムは、携帯電話局に設けられるサーバ装置101と、基地局に設けられる複数の基地局コンピュータ102(102−1、102−2)と、複数の携帯電話機103(103−1、103−2、103−3)とを備えている。サーバ装置101と基地局コンピュータ102との間は、例えば専用線104(104−1、104−2)によって接続される。携帯電話機103と基地局コンピュータ102との間は、無線接続される。
【0068】
携帯電話機103は、通常はサーバ装置101または基地局コンピュータ102が介在することによってパケット交換の形態で互いにデータ通信を行う。携帯電話機103は、その位置によって基地局コンピュータ102のいずれか1つと信号交換を行っており、信号交換を行っている基地局コンピュータ102が他の携帯電話機103とのデータ通信のために介在することとなる。また、携帯電話機103同士の位置関係によっては赤外線通信機能を用いて直接データをやりとりすることができる。直接データをやりとりすることができる位置関係とは、2つの携帯電話機103が数メートル以内の範囲にあり、かつその間に障害物が存在しない場合である。
【0069】
図8は、携帯電話機103の構成を示す。ここでは、本発明に関わる機能のみを示している。図示するように、携帯電話機103は、パケット通信部201と、赤外線通信部202と、接続設定部203とを備えている。パケット通信部201は、基地局コンピュータ102との間でパケットの送受信を行う。パケット通信部201は、送信すべきデータをパケットに分割する機能及び受信したパケットを組み立ててデータを表示装置などにより出力する機能も備えている。赤外線通信部202は、他の装置を介することなく複数の携帯電話機103同士で赤外線信号によりデータ通信を行う。
【0070】
接続先設定部203は、パケット通信部201のパケットによるデータ通信を行うか、赤外線通信部202の赤外線信号によるデータ通信を行うかの接続先の設定を行う。接続先設定部203の接続先の設定は、通常の状態ではパケット通信部201になっており、外部からの信号(入力キー(図示せず)からの入力信号または他の携帯電話機103からの同期信号)の入力によって、接続先の設定を赤外線通信部202に切り替える。
【0071】
基地局コンピュータ102は、携帯電話機103から受信したパケットを蓄積する機能と、蓄積したパケットを専用線104を介してサーバ装置101に転送するかパケットヘッダに従って携帯電話機103に送信する機能を備えている。蓄積したパケットをサーバ装置101と携帯電話機103のいずれに送るかは、サーバ装置101から通知されるメッセージに従う。基地局コンピュータ102は、また、携帯電話機103から分割して送られてくるパケットの1番目のものを受信したときに、当該携帯電話機103からデータの送信要求がされたものと判断し、その1番目のパケットをサーバ装置101に転送する。
【0072】
サーバ装置101は、携帯電話機103がどの基地局コンピュータ102と信号交換を行っているかという情報を、基地局コンピュータ102から収集している。サーバ装置101は、基地局コンピュータ102から転送された1番目のパケットを受信したときに、そのパケットヘッダが示す送信元と送信先の携帯電話機103が信号交換を行っている基地局コンピュータ102を調べ、同一のものであるかどうかを判断する。
【0073】
同一のものであれば、同一基地局メッセージを前記1番目のパケットを送ってきた基地局コンピュータ102に送信し、異なるものであれば、異なる基地局メッセージを当該基地局コンピュータ102に送信する。異なる基地局メッセージを送信した場合には、当該基地局コンピュータ102に蓄積されたパケットが転送されてくることとなるので、サーバ装置101は、それをパケットヘッダが示す送信先の携帯電話機103が信号交換を行っている基地局コンピュータ102に転送するという、データ転送の制御機能も備えている。
【0074】
以下、このネットワークシステムにおける動作について説明する。最初に、サーバ装置101、基地局コンピュータ102及び携帯電話機103がそれぞれ実行する処理について、図9〜図11のフローチャートを参照して説明する。ここでも、本発明に関わる処理のみを説明するものとする。
【0075】
図9は、サーバ装置101が実行する処理を示すフローチャートである。このフローチャートの処理は、互いにデータ通信を行う携帯電話機103の組毎に複数のプロセスとして同時に並行して実行されることがある。サーバ装置101は、このフローチャートの処理の他に、携帯電話機103のそれぞれが信号交換を行っている基地局コンピュータ102に関する情報を、各基地局コンピュータ102から収集するための処理も行っている。
【0076】
サーバ装置101は、後述するステップS403で基地局コンピュータ102のいずれかから転送されてくる1番目のパケットを受信したかどうかを判定している(ステップS301)。パケットを受信するまでは、ステップS301の処理を繰り返して行う。
【0077】
1番目のパケットを受信すると、サーバ装置101は、受信したパケットのパケットヘッダが示す送信元の携帯電話機103が信号交換を行っている基地局コンピュータ102と、送信先の携帯電話機103が信号交換を行っている基地局コンピュータ102とが、いずれのものであるかを各基地局コンピュータ102から収集している情報に基づいて調べる(ステップS302)。そして、送信元の携帯電話機103が信号交換を行っている基地局コンピュータ102と送信先の携帯電話機103が信号交換を行っている基地局コンピュータ102とが同一のものであるかどうかを判定する(ステップS303)。
【0078】
基地局コンピュータ102が同一であったならば、サーバ装置101は、同一基地局メッセージを、専用線104を介してパケットを送ってきた基地局コンピュータ102に通知する(ステップS304)。そして、サーバ装置101自体が携帯電話機103間のデータ通信を制御することなく、このフローチャートの処理を終了する。
【0079】
一方、ステップS303で基地局コンピュータ102が異なっていたならば、サーバ装置101は、異なる基地局メッセージを、専用線104を介してパケットを送ってきた基地局コンピュータ102に通知する(ステップS305)。この通知に基づいて、当該基地局コンピュータ102に蓄積された全てのパケットが転送されてくることとなるので(後述するステップS407参照)、サーバ装置101は、転送されてきた各パケットをパケットヘッダが示す送信先の携帯電話機103が信号交換を行っている基地局コンピュータ102に転送する(ステップS306)。全てのパケットの転送が終了した後、このフローチャートの処理を終了する。
【0080】
図10は、基地局コンピュータ102がそれぞれ実行する処理を示すフローチャートである。このフローチャートの処理は、各基地局コンピュータ102において常時実行されている。
【0081】
基地局コンピュータ102は、後述するステップS503で携帯電話機103から送信されてくるパケットを受信したかどうかを判定する(ステップS401)。パケットを受信した場合は、基地局コンピュータ102は、受信した関連あるパケットを全て、一時的に内部に蓄積する(ステップS402)。また、基地局コンピュータ102は、そのうちの1番目のパケットの受信で携帯電話機103からのデータの送信要求があったものとして、当該1番目のパケットをサーバ装置101に転送する(ステップS403)。
【0082】
1番目のパケットを転送すると、基地局コンピュータ102は、サーバ装置101からのメッセージの待機モードに入り、ステップS304で通知される同一基地局メッセージかステップS305で通知される異なる基地局メッセージを受信する(ステップS404)。そして、サーバ装置101から通知されたメッセージが、同一基地局メッセージであるか異なる基地局メッセージであるかを判定する(ステップS405)。
【0083】
同一基地局メッセージであった場合には、ステップS402で蓄積した各パケットを、そのパケットヘッダが示す送信先の携帯電話機103に転送する(ステップS406)。異なる基地局メッセージであった場合には、ステップS402で蓄積した各パケットを、サーバ装置101に転送する(ステップS407)。ステップS406またはS407で全てのパケットの転送を終了すると、ステップS401の処理に戻る。
【0084】
また、ステップS401で携帯電話機103から送信されてくるパケットを受信していないと判定した場合には、基地局コンピュータ102は、ステップS306でサーバ装置101から転送されてくるパケットを受信したかどうかを判定する(ステップS408)。サーバ装置101からもパケットを受信していなければ、ステップS401の処理に戻る。
【0085】
サーバ装置101から転送されてくるパケットを受信した場合には、基地局コンピュータ102は、受信したパケットをそのパケットヘッダが示す送信先の携帯電話機103に転送する(ステップS409)。そして、ステップS401の処理に戻る。
【0086】
図11は、携帯電話機103がそれぞれ実行する処理を示すフローチャートである。このフローチャートの処理は、各携帯電話機103において常時実行されている。ここで、携帯電話機103から他の携帯電話機103にデータを送信する場合には、その送信すべきデータは、既に送信元の携帯電話機103内に蓄積されているものとする。
【0087】
携帯電話機103は、ユーザのキー操作などにより他の携帯電話機103にデータの送信が指示されたかどうかを判定する(ステップS501)。データの送信が指示された場合には、パケット通信部201が、送信すべきデータをパケットのサイズに分割し、それぞれに送信元及び送信先の携帯電話機103を示す情報を含むパケットヘッダを付加したパケットを生成する(ステップS502)。パケット通信部201は、ステップS502で生成した全てのパケットを、当該携帯電話機103が信号交換を行っている基地局コンピュータ102に送信する(ステップS503)。そして、ステップS501の処理に戻る。
【0088】
一方、ユーザによりデータの送信が指示されていない場合には、パケット通信部201が、ステップS406またはS409で基地局コンピュータ102から送されてくる、他の携帯電話機103からのパケットを受信したかどうかを判定する(ステップS504)。基地局コンピュータ102から転送されてくるパケットを受信していなければ、ステップS501の処理に戻る。
【0089】
基地局コンピュータ102から転送されてくるパケットを受信した場合には、パケット通信部201は、受信したパケットを内部に蓄積し(ステップS505)、一連の全てのパケットを受信したかどうかを判定する(ステップS506)。一連の全てのパケットを受信していなければ、ステップS501の処理に戻り、一連の全てのパケットを受信することとなるまで、そのままパケットを内部に蓄積したままとする。
【0090】
一連の全てのパケットを受信し終わると、パケット通信部201は、蓄積した各パケットに分割されているデータを組み立て(ステップS507)、例えば表示装置に表示するなどして出力する(ステップS508)。そして、ステップS501の処理に戻る。
【0091】
次に、このネットワークシステムにおいて、データ転送を行う2台の携帯電話機103の位置関係に応じてシステム全体としてどのような手順が採られるかについて、図12の説明図を参照して説明する。ここで、携帯電話機103−1と携帯電話機103−2とは、同一の基地局コンピュータ102−1を介してサーバ装置101に接続することが可能となっているが、携帯電話機103−3は、基地局コンピュータ102−1を介してサーバ装置101に接続することはできず、基地局コンピュータ102−2を介してサーバ装置101に接続されることとなっているものとする。
【0092】
例えば、携帯電話機103−1から携帯電話機103−2にデータを送信する場合には、図12(a)に示すように、送信側の携帯電話機103−1が、送信すべきデータに関する全てのパケットを基地局コンピュータ102−1に送信する(▲1▼)。各パケットは、基地局コンピュータ102−1内に一時蓄積される。基地局コンピュータ102−1は、そのうちで1番目に受信したパケットをサーバ装置101に転送する(▲2▼)。
【0093】
サーバ装置101は、基地局コンピュータ102−1から受信したパケットのパケットヘッダなどに基づいて、送信側の携帯電話機103−1と受信側の携帯電話機103−2がいずれも基地局コンピュータ102−1と信号交換を行っていることが分かる。そこで、サーバ装置101は、同一基地局メッセージを基地局コンピュータ102−1に通知する(▲3▼)。この同一基地局メッセージに基づいて、基地局コンピュータ102−1は、蓄積していた全てのパケットを携帯電話機103−2に転送する(▲4▼)。こうして、携帯電話機103−1から送信すべきデータが携帯電話機103−2に送られることとなる。
【0094】
また、携帯電話機103−1から携帯電話機103−3にデータを送信する場合にも、図12(b)に示すように、送信側の携帯電話機103−1が、送信すべきデータに関する全てのパケットを基地局コンピュータ102−1に送信する(▲1▼)。各パケットは、基地局コンピュータ102−1内に一時蓄積される。基地局コンピュータ102−1は、そのうちで1番目に受信したパケットをサーバ装置101に転送する(▲2▼)。
【0095】
サーバ装置101は、基地局コンピュータ102−1から受信したパケットのパケットヘッダなどに基づいて、送信側の携帯電話機103−1が信号交換を行っている基地局コンピュータ102−1は、受信側の携帯電話機103−3が信号交換を行っている基地局コンピュータ102−2ではないことが分かる。そこで、サーバ装置101は、異なる基地局メッセージを基地局コンピュータ102−1に通知する(▲3▼)。
【0096】
基地局コンピュータ102−1は、異なる基地局メッセージを受信することによって、蓄積していた全てのパケットをサーバ装置101に転送する(▲4▼)。サーバ装置101は、基地局コンピュータ102−1から転送されてきた各パケットを、そのパケットヘッダなどに基づいて受信側の携帯電話機103−3が信号交換を行っている基地局コンピュータ102−2に転送する(▲5▼)。基地局コンピュータ102−2は、サーバ装置101から転送されてきた全てのパケットを携帯電話機103−3に転送する(▲6▼)。こうして、携帯電話機103−1から送信すべきデータが携帯電話機103−3に送られることとなる。
【0097】
以上説明したように、この実施の形態にかかるネットワークシステムでは、サーバ装置101は、送信すべきデータの1番目のパケットに基づいて送信側(送信元)の携帯電話機103と受信側(送信先)の携帯電話機103とが同じ基地局コンピュータ102と信号交換を行っていることが分かると、同一基地局メッセージを当該基地局コンピュータ102に通知している。当該基地局コンピュータ102は、この同一基地局メッセージに基づいて、サーバ装置101を介さずに送信側の携帯電話機103から送られてきた各パケットを受信側の携帯電話機103に転送するようにしている。このため、サーバ装置101に余計な負荷をかけることがない。
【0098】
また、サーバ装置101は、送信すべきデータの1番目のパケットに基づいて送信側(送信元)の携帯電話機103と受信側(送信先)の携帯電話機103とが同じ基地局コンピュータ102と信号交換を行っていないことが分かると、異なる基地局メッセージを送信側が信号交換を行っている基地局コンピュータ102に通知している。当該基地局コンピュータ102は、この異なる基地局メッセージに基づいて、サーバ装置101に送信側の携帯電話機103から送られてきた各パケットを送信し、サーバ装置101から受信側が信号交換を行っている基地局コンピュータ102を介して、各パケットが受信側の携帯電話機103に届くようにしている。このため、携帯電話機103の間におけるデータ通信に支障が生じることがない。
【0099】
基地局コンピュータ102は、送信側の携帯電話機103から送られた1番目のパケットをサーバ装置101に転送し、これに基づいてサーバ装置101から同一基地局メッセージまたは異なる基地局メッセージが通知されている。通知されたメッセージにより、送信側の携帯電話機103からのパケットの転送先を決めることができるので、複雑な接続設定等の処理を行う必要がない。また、各ユーザの携帯電話機103では、どの基地局コンピュータ102と信号交換を行っているかということを意識する必要はない。
【0100】
[実施の形態の変形]
本発明は、上記の第1、第2の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形態様について説明する。
【0101】
上記の第1の実施の形態では、同一のプロキシサーバ2を経由してIMSサーバ1に接続する複数のIMクライアント3は、同一のLAN4上に存在して、ピアツーピア接続することが可能であることを前提として説明した。しかしながら、異なるLAN上に存在する複数のIMクライアントが同一のプロキシサーバを経由してIMSサーバ1に接続する場合もあり得る。同一のLAN上に存在する複数のIMクライアントが異なるプロキシサーバを経由してIMSサーバ1に接続する場合もあり得る。
【0102】
図13は、異なるLAN上に存在する複数のIMクライアントが同一のプロキシサーバを経由してIMSサーバ1に接続する場合における例を説明する図である。この場合において、送信側の接続要求メッセージと受信側の接続要求メッセージが同一のプロキシサーバ2を介して送られてくるので、上記の実施の形態と同じ処理では、IMSサーバ1は、LAN内接続通知メッセージをIMクライアント3−1と3−2とに送信してしまうこととなる。
【0103】
しかし、IMクライアント3−1と3−2とでは、LAN内接続通知メッセージが送られてきても、バディリスト管理部32で管理されているバディリストにより、互いに異なるLAN4−1、4−2上のものであることが分かる(▲1▼)。そこで、それぞれ接続不可通知メッセージをプロキシサーバ2を介してIMSサーバ1に送信する(▲2▼)。この接続不可通知メッセージの受信によって、IMクライアント3−1と3−2との間のデータ通信は、受信側のIMクライアント3がポーリング方式で所定期間毎に送る接続要求メッセージに従って行われることとなる。
【0104】
図13に示すようにIMSサーバ1とプロキシサーバ2とIMクライアント3−1及び3−2が接続されている場合において、プロキシサーバ2がIMSサーバ1の機能を利用せずにIMクライアント3−1と3−2との間のデータ通信を制御できる機能を有し、バディリスト管理部32で各IMクライアント3が接続するプロキシサーバ2に関する情報も管理するのであれば、さらに次のような変形を加えることもできる。
【0105】
IMクライアント3−1と3−2は、IMSサーバ1からLAN内接続通知メッセージが通知されると、これとバディリストとに基づいて、同一のLANに接続はされていないが、それぞれが接続されているLAN4−1と4−2とが同一のプロキシサーバ2に接続されていることが分かる。プロキシサーバ2でも、IMクライアント3−1と3−2とに転送したLAN内接続通知メッセージにより、それぞれがLAN4−1及び4−2のみを介して接続されていることが分かる。
【0106】
この場合、IMクライアント3−1と3−2とでは、接続先設定部33による接続先の設定をプロキシサーバ2を介して行うままとして互いにデータ通信を行う。プロキシサーバ2は、このIMクライアント3−1と3−2との間において送受信されるデータをIMSサーバ1に転送することなく、その送受信の処理を制御する。これにより、IMクライアント3−1と3−2との間でデータ通信を行う場合に、IMSサーバ1に大きな負荷をかける必要がなくなる。
【0107】
また、図14は、同一のLAN上に存在する複数のIMクライアントが異なるプロキシサーバを経由してIMSサーバ1に接続する場合における例を説明する図である。異なるプロキシサーバ2−1、2−2を経由して送られた接続要求メッセージは、上記の実施の形態と同じ処理によっていたのでは、別のLAN4上に存在するIMクライアント3−1、3−2からのものとして判断されてしまうこととなる。
【0108】
そこで、IMクライアント3−1と3−2とでは、まずLAN4毎に固有のグループIDを入力する。グループIDの入力は、初期設定時に1回だけ行えばよい(▲1▼)。次に、IMクライアント3−1と3−2とからそれぞれIMSサーバ1に接続要求メッセージを送信する場合には、その接続要求通知メッセージにグループIDを含ませるものとする(▲2▼)。
【0109】
IMSサーバ1では、同一のLAN4であるかどうかの判断を、IPアドレスに基づいて行うのではなく、接続要求通知メッセージに含まれるグループIDに基づいて行うものとする。グループIDに基づいた判断であれば、IMクライアント3−1と3−2とが同一のLAN4上にあることが分かり、IMSサーバ1からプロキシサーバ2−1、2−2を介して、IMクライアント3−1、3−2にそれぞれLAN内接続通知メッセージが送られる(▲3▼)。
【0110】
IMクライアント3−1、3−2では、IMSサーバ1から送られてきたLAN内接続通知メッセージに基づいてバディリストを参照すると、互いに同一のLAN4上にあることが分かる。そこで、それぞれ接続先の設定を変更し、プロキシサーバ2−1、2−2やIMSサーバ1を介することなく、ピアツーピアで直接的にデータ通信を行えるようになる。このようにグループIDを用いることによって、異なるプロキシサーバ2−1、2−2をそれぞれ経由してIMSサーバ1に接続するIMクライアント3−1、3−2同士でも、上記の実施の形態と同様なピアツーピアでのデータ通信が可能となる。
【0111】
上記の第1の実施の形態では、同一のLAN4上に存在するIMクライアント3同士をピアツーピアで接続できない場合には、受信側のIMクライアント3のポーリングに従ってプロキシサーバ2及びIMSサーバ1を介してデータ通信が行われるものとしていた。しかしながら、このような手法で大容量のデータをIMクライアント3間でやりとりすると、IMSサーバ1やプロキシサーバ2に過大な負荷がかかり、システムがダウンしてしまうような事態も発生する。そこで、IMSサーバ1は、送信側のIMクライアント3から送られてきた接続要求メッセージが一定量を超え、かつ受信側のIMクライアント3が同一のLAN4上にないときは、データ通信不可通知メッセージを送信側のIMクライアント3に送信するものとしてもよい。
【0112】
上記の第2の実施の形態では、携帯電話機103は、いずれか1の基地局コンピュータ102と信号交換を行うものとしていたが、複数の基地局コンピュータ102と同時に信号交換を行えるようにした携帯電話システムも存在する。図15は、このようなシステムにおける変形例を示す図である。ここで、送信側の携帯電話機103−1は、基地局コンピュータ102−1及び102−2と信号交換を行っている。受信側の携帯電話機103−2は、基地局コンピュータ102−2及び102−3と信号交換を行っている。
【0113】
携帯電話機103−1は、送信すべきデータに関するパケットを、自己が信号交換を行っている基地局コンピュータ102−1と102−2とに送信する(▲1▼)。この時点では、基地局コンピュータ102−1と102−2の両方が、携帯電話機103−1から送られてきたパケットを蓄積している。また、基地局コンピュータ102−1と102−2とは、いずれも1番目のパケットをサーバ装置101に転送する(▲2▼)。
【0114】
サーバ装置101は、受信したパケットのパケットヘッダなどを調べると、基地局コンピュータ102−2は受信側の携帯電話機103−2とも信号交換を行っているが、基地局コンピュータ102−1は受信側の携帯電話機103−2と信号交換を行っていないことが分かる。そこで、サーバ装置101は、基地局コンピュータ102−2に同一基地局メッセージを通知し(▲3▼)、基地局コンピュータ102−1にはパケット破棄メッセージを通知する(▲4▼)。
【0115】
パケット破棄メッセージを受信した基地局コンピュータ102−1は、これに従って蓄積していた携帯電話機103−1からのパケットを全て破棄する。同一基地局メッセージを受信した基地局コンピュータ102−2は、これに従って蓄積していた携帯電話機103−1からのパケットを、全て受信側の携帯電話機103−2に転送する(▲5▼)。こうして、携帯電話機103−1から送信すべきデータが携帯電話機103−2に送られることとなる。なお、携帯電話機103−2が他にも信号交換を行っている基地局コンピュータ102−3では、この場合において実行される処理がない。
【0116】
図15に示すシステムにおいて、送信側の携帯電話機103−1と受信側の携帯電話機103−2とが共通した基地局コンピュータ102と信号交換をできていない場合もある。例えば、携帯電話機103−2が基地局コンピュータ102−3とだけ信号交換を行っている場合である。このような場合には、サーバ装置101は、例えば基地局コンピュータ102−2に異なる基地局メッセージを通知し、上記した実施の形態のようにサーバ装置101が、携帯電話機103−1から携帯電話機103−2へのデータ転送を制御するようにすればよい。
【0117】
また、送信側の携帯電話機103−1と受信側の携帯電話機103−2とが共通して信号交換を行っている基地局コンピュータ102が複数ある場合もある。例えば、携帯電話機103−2も基地コンピュータ102−1及び102−2と信号交換を行っている場合である。このような場合には、サーバ装置101は、基地局コンピュータ102−1と102−2とのいずれかを選んで、例えば基地局コンピュータ102−1にパケット破棄メッセージを通知し、基地局コンピュータ102−2に同一基地局メッセージを通知するものとすればよい。同一基地局メッセージを通知する基地局コンピュータ102の選択は、例えば、各基地局コンピュータ102にかかる負荷に基づいて行うことができる。
【0118】
さらに、通常の携帯電話網に加えてPHS網にも接続可能な携帯電話機も存在する。このような携帯電話機は、通常の携帯電話の基地局コンピュータとPHSの基地局コンピュータの両方と信号交換を行っている。例えば、図15において、基地局コンピュータ102−1と102−3が通常の携帯電話の基地局に設置され、基地局コンピュータ102−2がPHSの基地局に設置されている場合である。
【0119】
ここで、携帯電話機103−1と103−2とのいずれも、基地局コンピュータ102−1、102−2、102−3の全てと信号交換を行っているとすると、いずれの基地局コンピュータ102−1、102−2、102−3に同一基地局メッセージを送ってもよいこととなる。もっとも、一般的には、通常の携帯電話よりもPHSの方が高速なデータ通信を行うことができるので、このような場合には、サーバ装置101は、PHSの基地局コンピュータ102−2に同一基地局メッセージを通知し、通常の携帯電話の基地局コンピュータ102−1及び102−3にパケット破棄メッセージを通知することが好ましい。
【0120】
上記の第2の実施の形態では、携帯電話機103は、赤外線通信部202を有し、基地局コンピュータ102やサーバ装置101といった他の装置を介さずにデータ通信する機能を備えていた。そこで、何らかの手法によりサーバ装置101が、2つの携帯電話機103が他の装置を介さずにデータ通信できる位置にあるかどうかを知ることができるのであれば、第1の実施の形態と同様に送信元と送信先の携帯電話機103にサーバ装置101から直接通信可能な旨の通知を送る。この通知に基づいて、2つの携帯電話機103の接続先設定部203が赤外線通信部202に接続先の設定を切り替え、赤外線通信部202により他の装置を介さずに直接データ通信するようにしてもよい。複数の携帯電話機103が、赤外線通信部202により赤外線通信で直接データ通信する他に、無線LANを介して直接データ通信するものであったり、Bluetooth技術を適用して直接データ通信するものであったりしてもよい。
【0121】
上記の第2の実施の形態では、携帯電話事業者が1つであり、その電話局のサーバ装置101が1つだけであることを前提にして説明した。しかし、現実には複数の携帯電話事業者が存在し、異なる事業者の携帯電話機同士でもデータ通信を可能としている場合がある。図16は、このような場合の変形例を示す図である。
【0122】
ここで、サーバ装置101−1、基地局コンピュータ102−1及び携帯電話機103−1が第1の事業者に属するもの、サーバ装置101−2、基地局コンピュータ102−2及び携帯電話機103−2が第2の事業者に属するものとする。サーバ装置101−1と102−2とは、互いに異なる事業者に属するが、相互にパケットを転送する機能を備えている。
【0123】
送信側の携帯電話機103−1は、送信すべきデータに関するパケットを、自己が信号交換を行っている基地局コンピュータ102−1に送信する(▲1▼)。基地局コンピュータ102−1は、携帯電話機103−1からの全てのパケットを一時蓄積すると共に、その1番目のパケットをサーバ装置101−1に転送する(▲2▼)。
【0124】
サーバ装置101−1は、受信したパケットのパケットヘッダから受信側の携帯電話機103−2が第2の事業者に属し、基地局コンピュータ102−1と信号交換を行えないものであることが分かる。そこで、サーバ装置101−1は、異なる基地局メッセージを基地局コンピュータ102−1に通知し(▲3▼)、基地局コンピュータ102−1は、この異なる基地局メッセージに従って、蓄積していたパケットを全てサーバ装置101−1に転送する(▲4▼)。
【0125】
サーバ装置101−1は、こうして基地局コンピュータ102−1から受信したパケットのパケットヘッダから受信側の携帯電話機103−2が第2の事業者に属することが分かるので、これらを全て第2の事業者に属するサーバ装置101−2に転送する(▲5▼)。
【0126】
サーバ装置101−2は、サーバ装置101−1から送られてきたパケットのパケットヘッダ等を調べると、その送信先となる携帯電話機103−2が基地局コンピュータ102−2と信号交換していることが分かる。そこで、これらの全てを基地局コンピュータ102−2に転送し(▲6▼)、基地局コンピュータ102−2から携帯電話機103−2に転送する(▲7▼)。つまり、ここでは基地局コンピュータ102−2だけでなく、サーバ装置101−2もデータ転送を中継するだけの中継装置として機能することとなる。こうして、携帯電話機103−1から送信すべきデータが携帯電話機103−2に送られることとなる。
【0127】
上記の第2の実施の形態では、サーバ装置101及び基地局コンピュータ102は、単純にパケットヘッダを参照するだけで、携帯電話機103の間のデータ転送を行うものとしていた。この場合、最近問題になっている迷惑メールの送信を防ぐことができない。そこで、例えば、携帯電話機103のユーザ毎にデータを送信されてもよい相手を登録しておき、次のような処理を行うことで、迷惑メールの送信を防ぐことができる。
【0128】
サーバ装置101は、ステップS301で受信したパケットのパケットヘッダが示す送信元の携帯電話機103が登録された相手である場合にのみ、同一基地局メッセージまたは異なる基地局メッセージを基地局コンピュータ102に通知するものとすればよい。ステップS301で受信したパケットのパケットヘッダが示す送信元の携帯電話機103が登録された相手でない場合には、サーバ装置101は、パケット破棄メッセージを基地局コンピュータ102に通知するものとすればよい。
【0129】
上記の第1の実施の形態では、図4及び図5のフローチャートにそれぞれ示したプログラムは、IMSサーバ1及びIMクライアント3で実行されるものとして説明した。また、上記の第2の実施の形態では、図9〜図11のフローチャートにそれぞれ示したプログラムは、サーバ装置101、基地局コンピュータ102及び携帯電話機103で実行されるものとしていた。これらのプログラムは、CD−ROMやDVD−ROMなどのコンピュータ読み取り可能な記録媒体に格納して、ハードウェアとは別に配布するものとしてもよい。また、これらの処理プログラムの全部または一部をインターネット5上のWebサーバ装置が有する固定ディスク装置に格納しておき、各装置からの要求に従って、当該Webサーバ装置からインターネット5を通じて配信するものとしてもよい。
【0130】
上記の第1の実施の形態では、IMクライアント3間で送受信するデータについて、どのような種類のデータであるかを特に示してはいなかった。上記の実施の形態に示したようにIMクライアント3間で送受信することが有効なデータとして、特に次のようなものを挙げることができる。
(1)著作権その他の知的財産権法上認められる範囲であれば、音楽データ、テレビ及びビデオの映像データ、個人放送局から発信する映像データや音声データ、ウィルス対策用のプログラムなどが適用できる。
(2)公開を目的とした個人情報として、ホームページのコンテンツ、アプリケーション毎の個人設定情報、公開スケジュールの画像データや音声データ(イラストや生声など)、各種の辞書データなどが適用できる。
(3)特定の目的のために通信されるデータとして、インターネット電話(ボイスチャット)の画像データや音声データ、インターネット会議の画像データ、音声データ、ファイル及びイベント通知など、ピアツーピア処理を行うアプリケーションソフトで取り扱う各種データなどが適用できる。また、LAN4上に同一のユーザが使用するIMクライアント3が複数ある場合には、ユーザ定義のIME辞書データや共有ファイルなどが適用できる。
【0131】
上記の第2の実施の形態では、複数の携帯電話機103の間におけるデータ通信は、パケット通信の形態で行われるものとし、基地局コンピュータ102またはサーバ装置101で受信される1番目のパケットが、そのデータの送信要求を示すものとして取り扱っていた。これに対して、複数の携帯電話機103の間におけるデータ通信を、パケット通信の形態をとらずに同期通信などの形で行ってもよい。この場合には、送信側の携帯電話機103は、実際に送信すべきデータを基地局コンピュータ102に送信する前に、データの送信要求を基地局コンピュータ102を介してサーバ装置101に送信するものとすればよい。この送信要求に基づいて、サーバ装置101は、携帯電話機103の間におけるデータ通信を基地局コンピュータ102のみに制御させて行うか、自己による制御でも行うかを決めることができる。
【0132】
【発明の効果】
以上説明したように、本発明によれば、煩雑な接続設定を行うことなく、また、他の装置に不必要な負荷をかけることなしに、クライアント装置間でのデータ通信を行えるようになる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に適用されるネットワークシステムの例を示す図である。
【図2】図1のIMSサーバの機能構成を示す図である。
【図3】図1のIMクライアントの機能構成を示す図である。
【図4】図1のIMSサーバが実行する処理を示すフローチャートである。
【図5】図1のIMクライアントがそれぞれ実行する処理を示すフローチャートである。
【図6】本発明の第1の実施の形態において、IMクライアント間でのデータ転送の手順を説明する図である。
【図7】本発明の第2の実施の形態に適用されるネットワークシステムの例を示す図である。
【図8】図7の携帯電話機の機能構成を示す図である。
【図9】図7のサーバ装置が実行する処理を示すフローチャートである。
【図10】図7の基地局コンピュータが実行する処理を示すフローチャートである。
【図11】図7の携帯電話機が実行する処理を示すフローチャートである。
【図12】本発明の第2の実施の形態において、携帯電話間でのデータの転送を説明する図である。
【図13】異なるLAN上に存在する複数のIMクライアントが同一のプロキシサーバを経由してIMSサーバに接続する場合における第1の実施の形態の変形例を説明する図である。
【図14】同一のLAN上に存在する複数のIMクライアントが異なるプロキシサーバを経由してIMSサーバに接続する場合における第1の実施の形態の変形例を説明する図である。
【図15】複数の基地局と同時に信号交換可能な携帯電話機を適用した場合における第2の実施の形態の変形例を説明する図である。
【図16】異なる携帯電話事業者が提供する複数の携帯電話機を適用した場合における第2の実施の形態の変形例を説明する図である。
【符号の説明】
1 IMSサーバ
2 プロキシサーバ
3 IMクライアント
4 LAN
5 インターネット
11 メッセージ保存部
12 IP認識部
13 IP保存部
14 同一ネットワーク推測部
15 通信制御部
31 メッセージ授受部
32 バディリスト管理部
33 接続先設定部
34 通信制御部
101 サーバ装置
102 基地局コンピュータ
103 携帯電話機
104 専用線
201 パケット通信部
202 赤外線通信部
203 接続設定部

Claims (8)

  1. 外部ネットワーク上に存在するサーバ装置と、該サーバ装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置と、前記ローカルエリアネットワークと前記外部ネットワークとを接続して前記複数のクライアント装置をそれぞれ前記サーバ装置に接続するための中継装置とを備え、
    前記サーバ装置は、
    前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段と、
    前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段と、
    前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段と、
    前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信する直接通信通知送信手段とを備え、
    前記複数のクライアント装置は、それぞれ、
    他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段と、
    他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段と、
    前記直接通信通知送信手段から送信された通知を受信する直接通信通知受信手段と、
    前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段と、
    前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段とを備える
    ことを特徴とするデータ通信システム。
  2. 外部ネットワーク上に存在するサーバ装置と、該サーバ装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置と、前記ローカルエリアネットワークと前記外部ネットワークとを接続して前記複数のクライアント装置をそれぞれ前記サーバ装置に接続するための中継装置とを備えるネットワークシステムにおいて実行される方法であって、
    他のクライアント装置にデータを送信しようとするクライアント装置が前記中継装置を介して前記サーバ装置に送信要求を送信するステップと、
    他のクライアント装置からのデータを受信しようとするクライアント装置が前記中継装置を介して前記サーバ装置に受信要求を送信するステップと、
    前記サーバ装置がいずれかのクライアント装置から受信した送信要求と前記サーバ装置がそれぞれのクライアント装置のから受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定するステップと、
    前記送信要求に基づく送信元と送信先のクライアント装置が他のいずれの装置も介さずにデータ通信が可能である場合に、その旨の通知を通信相手のクライアント装置を示す相手情報と共に前記サーバ装置から前記中継装置を介して前記送信元及び送信先のクライアント装置に送信するステップと、
    前記サーバ装置からの通知を受信した前記送信元及び送信先のクライアント装置が、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定するステップと、
    互いを通信の相手として設定した前記送信元及び送信先のクライアント装置同士が、他のいずれの装置も介在させずにデータを送受信するステップと
    を含むことを特徴とするデータ通信方法。
  3. 他の装置の制御に従ってデータ通信を行うことが可能であると共他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置に、前記ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して接続され、前記外部ネットワーク上に存在するサーバ装置であって、
    前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段と、
    前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段と、
    前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段と、
    前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信し、前記送信元と送信先のクライアント装置との間で直接データ通信を行わせる直接通信通知送信手段と
    を備えることを特徴とするサーバ装置。
  4. 前記複数のクライアント装置からの送信要求及び受信要求は、互いに異なる中継装置を介して送られてくるものであると共に、ローカルエリアネットワーク毎に固有のLAN識別情報を含んでおり、
    前記直接通信判定手段は、前記接続要求に含まれるLAN識別情報に従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定する
    ことを特徴とする請求項に記載のサーバ装置。
  5. 前記中継装置は、前記複数のクライアント装置間におけるデータ通信を制御する機能を備え、
    前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にないと判定したときに、前記送信要求が示すデータの送信先となるクライアント装置が、前記送信要求をした送信元のクライアント装置を接続する中継装置と同一の中継装置に接続可能であるかどうかを判定する同一中継装置判定手段と、
    前記同一中継装置判定手段が同一の中継装置に接続可能であると判定した場合に、前記送信要求に基づく送信元と送信先のクライアント装置の双方を接続可能な中継装置に、同一の中継装置を介して通信可能な旨を通知し、前記送信元のクライアント装置と前記送信先のクライアント装置との間におけるデータ通信を該中継装置に制御させる通知手段とをさらに備える
    ことを特徴とする請求項3または4のいずれか1項に記載のサーバ装置。
  6. ローカルエリアネットワーク上に存在し、該ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して前記外部ネットワーク上に存在するサーバ装置に接続されると共に、他の装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに同一のローカルエリアネットワーク上に存在する他のクライアント装置とデータ通信を可能とする機能を備えたクライアント装置であって、
    他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段と、
    他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段と、
    前記送信要求送信手段が送信した送信要求、または他のクライアント装置の送信要求送信手段が送信した送信要求に従って、データ通信の相手となる他のクライアント装置と他のいずれの装置も介さずにデータ通信可能な状態にある旨の通知を、前記中継装置を介して前記サーバ装置から受信する直接通信通知受信手段と、
    前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段と、
    前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段と
    を備えることを特徴とするクライアント装置。
  7. 他の装置の制御に従ってデータ通信を行うことが可能であると共他のいずれの装置も介さずに互いにデータ通信を可能とする機能を備え、ローカルエリアネットワーク上に存在する複数のクライアント装置に、前記ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して接続され、前記外部ネットワーク上に存在するコンピュータ装置を、
    前記複数のクライアント装置のいずれかから前記中継装置を介して送信されたデータの送信要求を受信する送信要求受信手段、
    前記複数のクライアント装置のそれぞれから前記中継装置を介して送信された受信要求を受信する受信要求受信手段、
    前記送信要求受信手段が受信した送信要求と前記受信要求受信手段が受信した受信要求とに従って、データの送信元のクライアント装置と送信先のクライアント装置とが同一のローカルエリアネットワーク上に存在するかどうかを判定することで、該送信先のクライアント装置が他のいずれの装置も介さずに該送信元のクライアント装置からデータを受信可能な状態にあるかどうかを判定する直接通信判定手段、及び、
    前記直接通信判定手段が他のいずれの装置も介さずにデータを受信可能な状態にあると判定したときに、前記送信要求に基づく送信元と送信先のクライアント装置に、それぞれ他の装置を介さないデータ通信が可能である旨の通知を通信相手のクライアント装置を示す相手情報と共に前記中継装置を介して送信し、前記送信元と送信先のクライアント装置との間で直接データ通信を行わせる直接通信通知送信手段
    として機能させるためのプログラム。
  8. ローカルエリアネットワーク上に存在し、該ローカルエリアネットワークと外部ネットワークとを接続する中継装置を介して前記外部ネットワーク上に存在するサーバ装置に接続されると共に、他の装置の制御に従ってデータ通信を行うことが可能であると共接続先の設定切替により他のいずれの装置も介さずに同一のローカルエリアネットワーク上に存在する他のクライアント装置とデータ通信を可能とする機能を備えたコンピュータ装置を、
    他のクライアント装置にデータを送信する場合に、前記中継装置を介して前記サーバ装置に送信要求を送信する送信要求送信手段、
    他のクライアント装置からのデータを受信すべく前記中継装置を介して前記サーバ装置に受信要求を送信する受信要求送信手段、
    前記送信要求送信手段が送信した送信要求、または他のクライアント装置の送信要求送信手段が送信した送信要求に従って、データ通信の相手となる他のクライアント装置と他のいずれの装置も介さずにデータ通信可能な状態にある旨の通知を、前記中継装置を介して前記サーバ装置から受信する直接通信通知受信手段、
    前記直接通信通知受信手段が通知を受信した場合に、該通知と共に送られてきた相手情報が示す他のクライアント装置をデータ通信の相手として設定する通信相手設定手段、及び、
    前記通信相手設定手段により通信の相手として設定された他のクライアント装置との間で他のいずれの装置も介在させずにデータを送受信するデータ通信手段
    として機能させるためのプログラム。
JP2002080580A 2002-03-22 2002-03-22 データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム Expired - Fee Related JP3682439B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002080580A JP3682439B2 (ja) 2002-03-22 2002-03-22 データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002080580A JP3682439B2 (ja) 2002-03-22 2002-03-22 データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2003283567A JP2003283567A (ja) 2003-10-03
JP3682439B2 true JP3682439B2 (ja) 2005-08-10

Family

ID=29229557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002080580A Expired - Fee Related JP3682439B2 (ja) 2002-03-22 2002-03-22 データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム

Country Status (1)

Country Link
JP (1) JP3682439B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7656870B2 (en) * 2004-06-29 2010-02-02 Damaka, Inc. System and method for peer-to-peer hybrid communications
US7379967B2 (en) 2005-01-28 2008-05-27 Grid Solutions, Inc. Download method for file by bit torrent protocol
CN100426801C (zh) * 2005-03-29 2008-10-15 腾讯科技(深圳)有限公司 一种即时通信中数据传输的方法及系统
US20060221857A1 (en) * 2005-03-31 2006-10-05 Bushnell William J Method and apparatus for providing enhanced features to multicast content services and multiplayer gaming services
KR101307719B1 (ko) * 2011-12-07 2013-09-11 텔코웨어 주식회사 미디어 릴레이 서버의 자원 관리 방법
JP6569400B2 (ja) * 2015-09-07 2019-09-04 富士ゼロックス株式会社 情報処理装置、情報処理システム、プログラム、及び記録媒体

Also Published As

Publication number Publication date
JP2003283567A (ja) 2003-10-03

Similar Documents

Publication Publication Date Title
US7606227B2 (en) Method, apparatus and system for distributing multicast data
JP4409788B2 (ja) 無線データ通信網切替装置と無線データ通信網切替処理用プログラム
EP1763204A1 (en) System and method for redundant switches taking into account learning bridge functionality
US8175091B2 (en) Communication system
TW201006272A (en) Method and apparatus for maintaining communications connections over a distributed wireless network
WO2010062135A2 (en) Method and apparatus for providing communication history
CN102546559A (zh) 受限网络中端到端传输数据的方法、设备和系统
EP1441477A2 (en) Communication system
CN115002023B (zh) 一种链路聚合方法、链路聚合装置、电子设备及存储介质
JP3682439B2 (ja) データ通信システム及び方法、サーバ装置、クライアント装置、並びにプログラム
CN110430551A (zh) 一种基于quic技术的汽车数据传输方法及系统
JP2006222659A (ja) 無線通信装置、無線通信システム及び方法
US20160112495A1 (en) Secure remote computer network
US10111081B2 (en) Local communication wireless network system and method thereof
US8068128B2 (en) Visual communication server and communication system
CN113992737A (zh) 一种物联网连接方法、网关服务器以及网关
US20140207960A1 (en) Apparatus and method for reducing transmission delay of http protocol and processing load of http server in wireless communications network
JP2005286944A (ja) ネットワーク通信装置及びその通信方法
JP2005011267A (ja) リアルタイムデータ通信システム、リアルタイムデータ通信装置およびリアルタイムデータ通信方法
JP4261395B2 (ja) サーバ装置
WO2024004078A1 (ja) 負荷分散装置、負荷分散システム、負荷分散方法、および、負荷分散プログラム
JP5670680B2 (ja) 通信方法、プライベートxmppサーバ、xmppクライアント装置、及びそれらを備えた通信システム
US20090052446A1 (en) Communications Interface
JP4529462B2 (ja) 通信端末、通信端末用プログラム及び通信インタフェース切替方法
JPH10271161A (ja) 中継装置を介するクライアントサーバシステムのセッション制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040824

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041021

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050523

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080527

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110527

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120527

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees