JP3973548B2 - ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体 - Google Patents

ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体 Download PDF

Info

Publication number
JP3973548B2
JP3973548B2 JP2002358760A JP2002358760A JP3973548B2 JP 3973548 B2 JP3973548 B2 JP 3973548B2 JP 2002358760 A JP2002358760 A JP 2002358760A JP 2002358760 A JP2002358760 A JP 2002358760A JP 3973548 B2 JP3973548 B2 JP 3973548B2
Authority
JP
Japan
Prior art keywords
address
terminal
request message
mail server
peer
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
JP2002358760A
Other languages
English (en)
Other versions
JP2004193910A (ja
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
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 Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2002358760A priority Critical patent/JP3973548B2/ja
Priority to US10/733,460 priority patent/US7577746B2/en
Publication of JP2004193910A publication Critical patent/JP2004193910A/ja
Application granted granted Critical
Publication of JP3973548B2 publication Critical patent/JP3973548B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4535Network directories; Name-to-address mapping using an address exchange platform which sets up a session between two nodes, e.g. rendezvous servers, session initiation protocols [SIP] registrars or H.323 gatekeepers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1048Departure or maintenance mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、ネットワーク確立方法およびネットワーク端末に関する。この発明は特に、ピアツーピア通信を利用したネットワーク接続を支援する技術に関する。
【0002】
【従来の技術】
近年、サーバを介さずに端末同士がネットワークを組み、相互にデータを送受信するピアツーピア(Peer To Peer)通信に注目が集まっている。例えばチャット通信、ファイル共有、ゲームデータの交換など、その応用の幅も広い。かかる通信は、サーバを経由しないでデータ交換できることから、草の根的にコミュニティーを形成できる点で人気を得ている。
【0003】
【発明が解決しようとする課題】
ここで、ピアツーピア通信によって特定の相手とネットワーク接続する場合、その相手のIPアドレスをあらかじめ知る必要がある。IPv6の時代が到来すればすべての端末に固定的にIPアドレスが割り当てられると思われるが、現状ではそうはいかない。多くの場合、各端末のIPアドレスは一時的に割り当てられたアドレスにすぎず、インターネット接続を開始するたびに異なるIPアドレスがプロバイダから割り当てられる。したがって、端末に新たなIPアドレスが割り当てられるたびに、その新たなIPアドレスを相手に伝えなければピアツーピア通信によるネットワーク接続を開始できない。
【0004】
一方、自己の端末に割り当てられたIPアドレスを何らかのプログラムを使って調べ、そのIPアドレスを相手に電話などで毎回伝達するのは作業が煩雑である。また、端末同士でIPアドレスを交換するための専用サーバを設置して、そのサーバへ各ユーザにアクセスさせる方法も考えられるが、サーバの設置と維持に多大な費用がかかる。特にアクセス数が増えれば増えるほど設備増強の必要が生じ、さらなる投資が必要となる。
【0005】
本発明者は以上の認識に基づき本発明をなしたもので、その目的は、ピアツーピア通信によるネットワーク接続を簡素な構成にて実現する点にある。本発明はさらに、以下のいずれかの目的、または本明細書の記述をとおして理解される他の目的も視野においてなされている。すなわち、ネットワーク技術における新たな提案、ピアツーピア通信によるネットワーク基盤構築の低コスト化、ピアツーピア通信における個人情報の秘匿性向上等である。
【0006】
【課題を解決するための手段】
本発明のある態様は、ネットワークシステムに関する。このネットワークシステムは、ピアツーピア通信を要求するクライアント端末と、ピアツーピア通信の接続確立を支援するホスト端末と、を含む。クライアント端末が自端末のIPアドレスを含んだ要求メッセージを生成し、クライアント端末が要求メッセージを送信メールサーバ経由でホスト端末宛に送出し、ホスト端末が要求メッセージを受信メールサーバ経由で取得し、ホスト端末が要求メッセージの記述内容からクライアント端末のIPアドレスを抽出し、ホスト端末がその抽出したIPアドレスをテーブルに蓄積し、ホスト端末がテーブルから少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成し、ホスト端末が返信メッセージをクライアント端末宛に送信メールサーバ経由で送出し、ホスト端末が返信メッセージを受信メールサーバ経由で取得し、クライアント端末が返信メッセージの記述内容から他端末のIPアドレスを少なくとも一つ抽出し、クライアント端末がその抽出したIPアドレスに基づいて特定される他端末との間でピアツーピア通信によるデータ送受信を開始する。
【0007】
「ピアツーピア通信」は、端末同士が専用のサーバを介さずに直接的に接続し合ってネットワークを形成する通信形態である。ネットワーク接続を確立する方式は、UDP(User Datagram Protocol)のように通信前後に通信路の確保および開放が不要なコネクションレスの方式であってもよいし、TCP(Transmission Control Protocol)のように通信前後に通信路の確保および開放が必要なコネクション指向の方式であってもよい。「データ送受信の開始」は、TCPの場合、接続を確立するためのネゴシエーションの工程を含む。
【0008】
「要求メッセージ」は、メール送信プロトコルを用いて送信する電子メールであってもよい。要求メッセージは、クライアント端末が利用する送信メールサーバの中継を経て、ホスト端末が利用する受信メールサーバへ転送される。「ホスト端末」は、ピアツーピア通信の接続を確立するにあたってクライアント端末同士でのIPアドレスの交換を支援する端末であってもよい。「ホスト端末宛」は、ホスト端末により利用される電子メールアドレスを宛先としてもよく、実際にはその電子メールアドレスにより特定される受信メールサーバへ送られる。また、その電子メールアドレス宛のメッセージを受信可能である限りホスト端末を入れ替えてもよく、任意の端末をホスト端末として利用できる。以上のシステムにより、ピアツーピア通信を要求する端末間で互いのIPアドレスを交換できる。
【0009】
本発明のある態様は、ネットワーク接続確立方法に関する。この方法は、ピアツーピア通信を要求するクライアント端末のIPアドレスを含んだ要求メッセージを生成する工程と、ピアツーピア通信の接続確立を支援するホスト端末宛に要求メッセージを送信メールサーバ経由で送出する工程と、ホスト端末が要求メッセージを受信メールサーバ経由で取得する工程と、ホスト端末が要求メッセージの記述内容からクライアント端末のIPアドレスを抽出する工程と、ホスト端末が抽出したIPアドレスをテーブルに蓄積する工程と、ホスト端末がテーブルから少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、ホスト端末が返信メッセージをクライアント端末宛に送信メールサーバ経由で送出する工程と、ホスト端末が返信メッセージを受信メールサーバ経由で取得する工程と、クライアント端末が返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、クライアント端末が抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、を有する。以上の方法により、ピアツーピア通信をする端末間で互いのIPアドレスを交換できる。
【0010】
本発明の別の態様は、ネットワーク端末に関する。この端末は、自端末のIPアドレスを含んだ要求メッセージを生成するデータ生成部と、要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出するとともに、要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得するメール送受信部と、返信メッセージの記述内容から他端末のIPアドレスを少なくとも一つ抽出する選択処理部と、抽出したIPアドレスに基づいて特定される他端末との間でピアツーピア通信によるデータ送受信を開始するデータ交換部と、を有する。
【0011】
ここでいうネットワーク端末は、ピアツーピア通信を要求するクライアント端末に相当する。以上の構成により、ピアツーピア通信をする端末同士で互いのIPアドレスを交換できる。
【0012】
本発明のさらに別の態様もまた、ネットワーク端末に関する。この端末は、ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得するメール送受信部と、要求メッセージの記述内容からIPアドレスを抽出する抽出処理部と、抽出したIPアドレスをテーブルに蓄積するアドレス格納部と、テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成するデータ生成部と、を有する。メール送受信部は、返信メッセージを前記要求する端末宛に送信メールサーバ経由で送出する。
【0013】
ここでいうネットワーク端末は、ピアツーピア通信の接続確立を支援するホスト端末に相当する。以上の構成により、ピアツーピア通信をする端末間で互いのIPアドレスを交換できる。
【0014】
本発明のさらに別の態様は、ネットワーク接続確立方法に関する。この方法は、ピアツーピア通信を要求する端末のIPアドレスを含んだ要求メッセージを生成する工程と、要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出する工程と、要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得する工程と、返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、を有する。
【0015】
本発明のさらに別の態様もまた、ネットワーク接続確立方法に関する。この方法は、ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得する工程と、要求メッセージの記述内容からIPアドレスを抽出する工程と、抽出したIPアドレスをテーブルに蓄積する工程と、テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、返信メッセージを要求する端末宛に送信メールサーバ経由で送出する工程と、を有する。
【0016】
なお、以上の構成要素の任意の組合せや、本発明の構成要素や表現を方法、装置、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体、データ構造などの間で相互に置換したものもまた、本発明の態様として有効である。
【0017】
【発明の実施の形態】
(第1実施形態)
本実施形態においては、複数のネットワーク端末間でピアツーピア通信によるネットワーク接続を確立するにあたり、それら端末同士でなされる互いのIPアドレスの交換を支援する。そのとき、IPアドレスを交換する媒体として電子メールを利用する。既存のメールサーバを利用することにより新たに特別なサーバを用意する必要がなく、設備投資を最小限にしてIPアドレスを交換するための環境または基盤を構築できる。そうした新たなサーバレスモデルであるピアツーピア通信の形態を以下提案する。
【0018】
図1は、本実施形態におけるピアツーピアネットワークシステムの構成を示す。ピアツーピアネットワークシステム10において、第1のネットワーク端末12、第2のネットワーク端末14、ホスト端末16、第1のメールサーバ18、第2のメールサーバ20、および第3のメールサーバ22は、それぞれインターネットなどのIP(Internet Protocol)ネットワークに接続される。第1のメールサーバ18、第2のメールサーバ20、および第3のメールサーバ22は、それぞれ送信メールサーバと受信メールサーバを一体的に含む一般的なメールサーバである。これらの各メールサーバを、送信メールサーバと受信メールサーバとが別個のハードウェアとなる形で構築してもよい。送信メールサーバはSMTP(Simple Mail Transfer Protocol)サーバであり、受信メールサーバはPOP(Post Office Protocol)サーバまたはIMAP(Internet Message Access Protocol)サーバである。
【0019】
第1のメールサーバ18は、第1のネットワーク端末12によって利用されるメールサーバである。第1のネットワーク端末12から送出される電子メールは第1のメールサーバ18による中継を経て宛先のメールサーバへ配信され、第1のネットワーク端末12宛に送られてきた電子メールは第1のメールサーバ18内のメールボックスに保存される。同様の方法で、第2のメールサーバ20は第2のメールサーバ20を利用し、ホスト端末16は第3のメールサーバ22を利用する。
【0020】
第1のネットワーク端末12、第2のネットワーク端末14、およびホスト端末16は、ハードウェア的には、パーソナルコンピュータなどのCPUをはじめとする素子で実現でき、ソフトウェア的には電子メール送受信機能やIPネットワーク通信機能のあるプログラムによって実現されるが、以下説明する図2または図3ではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できる。
【0021】
本システムがピアツーピア通信によるネットワークゲームのためのシステムである場合、各ネットワーク端末はそのゲームのプレイヤー端末であり、ホスト端末はプレイヤーの一人が用意する端末であってもよいし、ゲーム会社が用意した端末であってもよい。
【0022】
なお、第1のメールサーバ18、第2のメールサーバ20、および第3のメールサーバ22は、一般的にはインターネットサービスプロバイダ(ISP)によって提供されるメールサーバであったり、企業内に設置されたメールサーバである場合が多い。各ユーザがいずれのメールサーバを利用すべきかは単なる利用契約の問題であり、当然ながら各ユーザが共通のメールサーバを利用してもよい。また、本図ではピアツーピア通信を要求する端末として第1のネットワーク端末12および第2のネットワーク端末14を例示するが、3台以上のネットワーク端末がこのピアツーピアネットワークシステム10に含まれてもよい。
【0023】
図2は、第1のネットワーク端末12の構成を示す機能ブロック図である。図1の第1のネットワーク端末12および第2のネットワーク端末14は、ともに同じ機能および構成を有するので、本図では第1のネットワーク端末12を例に説明する。第1のネットワーク端末12は、データ生成部30、メール送受信部40、通信部46、選択処理部48、データ交換部56、およびメイン処理部62を有する。メール送受信部40およびデータ交換部56は、通信部46を介して第1のメールサーバ18や第2のネットワーク端末14などの外部とデータを送受信する。
【0024】
データ生成部30は、IPアドレス検出部32、暗号化処理部34、メッセージ作成部36を含む。IPアドレス検出部32は、自端末、すなわち第1のネットワーク端末12に割り当てられたIPアドレスを検出する。ここでいうIPアドレスは、グローバルIPアドレスである。ルータのDHCP(Dynamic Host Configration Protocol)機能によりプライベートIPアドレスが割り当てられている場合は、そのルータに割り当てられたグローバルIPアドレスを検出する。この場合、NAT(Network Address Translation)や静的IPマスカレード(ポートフォワード)などの機能によってピアツーピア通信におけるアドレス変換が解決されることを前提とする。
【0025】
暗号化処理部34は、IPアドレス検出部32によって検出されたIPアドレスと、第1のネットワーク端末12のユーザを特定するための識別情報とを暗号化して符号化ブロックを生成する。この識別情報は、ユーザごとにあらかじめ設定されたユーザIDであり、相手の端末はこのユーザIDに基づいて接続の許否を判断できる。知人同士だけでピアツーピア通信のネットワーク接続をする場合に、相手の認証にこの識別情報が用いられる。暗号化の方式としては非公開のアルゴリズムを用いることで個人情報の漏洩を防止する。メッセージ作成部36は、符号化ブロックを含んだ電子メールを、あらかじめ記憶しているホスト端末16の電子メールアドレス宛の要求メッセージとして作成する。
【0026】
メール送受信部40は、送信プロトコル処理部42および受信プロトコル処理部44を含む。送信プロトコル処理部42は、SMTPなどのメール送信プロトコルによる電子メール送信機能を有する。送信プロトコル処理部42は、要求メッセージとしての電子メールを第1のメールサーバ18経由でホスト端末16宛に送出する。送信プロトコル処理部42は、SMTPサーバ名等送信に必要な情報をあらかじめ記憶する。
【0027】
受信プロトコル処理部44は、POPまたはIMAPなどのメール受信プロトコルによる電子メール受信機能を有する。受信プロトコル処理部44は、要求メッセージに対する応答としてホスト端末16から送られた返信メッセージを第1のメールサーバ18から受信する。受信プロトコル処理部44は、POPサーバ名またはIMAPサーバ名と受信パスワード、自端末の電子メールアドレス等受信に必要な情報をあらかじめ記憶する。
【0028】
受信プロトコル処理部44は、返信メッセージが第1のメールサーバ18に送られてきているかどうかを定期的に確認してもよい。例えば、要求メッセージの送信を契機に電子メール受信の定期確認を開始する。受信プロトコル処理部44は、返信メッセージだけを第1のメールサーバ18から受信し、他の電子メールと区別する。例えば受信プロトコル処理部44は、特定の文字列を検索キーにし、その検索キーが所定の項目内に所定の形式で含まれるメッセージのみを要求メッセージと判断して第1のメールサーバ18から受信する。例えば、件名や本文など電子メール内の項目と、部分一致や完全一致などの記載形式と、検索キーとなる文字列と、があらかじめ定められる。受信プロトコル処理部44は、受信した返信メッセージをその受信後に第1のメールサーバ18から削除する。
【0029】
選択処理部48は、ブロック抽出部50、復号処理部52、およびアドレス選択部54を含む。ブロック抽出部50は、受信プロトコル処理部44が受信した返信メッセージの記述内容から符号化ブロックを抽出する。符号化ブロックには複数のIPアドレスとそれぞれに対応した識別情報が暗号化された状態で含まれている。復号処理部52は、符号化ブロックを復号してIPアドレスと識別情報を取得する。なお、ホスト端末16において他端末のIPアドレスが蓄積されていなかった場合、返信メッセージには符号化ブロックが含まれておらず、他端末のIPアドレスを取得できない。ただし、自端末のIPアドレスが少なくともホスト端末16へ蓄積されて他端末へ通知されるので、他端末からの接続要求を待つこととなる。
【0030】
符号化ブロックから複数のIPアドレスが取得されたときに、アドレス選択部54はその中から少なくとも一つをネットワーク接続の試行相手として選択する。例えば複数のIPアドレスがホスト端末16において蓄積された時間順に並べられている場合、アドレス選択部54は、より最近に蓄積されたIPアドレスを優先的に選択する。複数のIPアドレスのうちいずれかに対して、接続が困難である旨が示されている場合、アドレス選択部54はその接続困難なIPアドレスの優先度を下げてIPアドレスを選択する。
【0031】
アドレス選択部54は、符号化ブロックから取得したIPアドレスごとの識別情報に基づいて接続相手を選択してもよい。例えば、接続相手としてあらかじめ知人のユーザIDを登録しておき、そのユーザIDと対応するIPアドレスを優先的に選択してもよい。逆に、接続を拒否する相手のユーザIDをあらかじめ登録しておき、そのユーザIDと対応するIPアドレスを選択対象から外してもよい。
【0032】
データ交換部56は、パケット処理部58およびIPアドレス指定部60を含む。パケット処理部58は、ピアツーピア通信によるデータ送受信の開始に必要なパケットを生成する。IPアドレス指定部60は、選択処理部48によって選択されたIPアドレスを宛先として指定し、これをパケット処理部58が自端末のIPアドレスとともにパケットに埋め込む。ここでは、選択されたIPアドレスによって特定される端末が第2のネットワーク端末14であるものとする。こうしてパケット処理部58はネットワーク接続の要求パケットを生成し、これを第2のネットワーク端末14へ直接送信する。
【0033】
パケット処理部58は、第2のネットワーク端末14からACK応答とともに相手からの接続要求パケットを受信する。これに対してパケット処理部58からもACK応答を返信することによって第2のネットワーク端末14とのネゴシエーションが成立し、ネットワーク接続が確立される。第1のネットワーク端末12と第2のネットワーク端末14の間には通信路が確保され、以降、ピアツーピア通信がなされる。
【0034】
一方、パケット処理部58は、他端末とのネットワーク接続を確立できず、データ送受信の開始に失敗したときは、その失敗した宛先のIPアドレスをデータ生成部30へ送るとともにアドレス選択部54から別のIPアドレスを取得する。接続の失敗としては、例えばパケット処理部58が第2のネットワーク端末14へ接続要求を送信したときに、第2のネットワーク端末14からのACK応答を受信できなかった場合がある。その場合、IPアドレス指定部60は別のIPアドレスを指定し、パケット処理部58は新たなパケットを生成して別の端末に送信する。
【0035】
データ生成部30のメッセージ作成部36は、接続に失敗した宛先のIPアドレスを含んだ通知メッセージを生成する。この通知メッセージをメール送受信部40がホスト端末16の電子メールアドレスを宛先として送信する。これにより、接続不能と思われるIPアドレスをホスト端末16に通知する。
【0036】
このようにネットワーク接続が確立されるまで、IPアドレスの選択と接続の試行を繰り返す。選択処理部48によって取得されたすべてのIPアドレスを宛先として試行してもネットワーク接続が確立しなかった場合は、他端末から接続要求が送られてくるまで待機する。なお、ネットワーク接続を確立できない原因としては、例えば相手の端末がすでにネットワークに非接続の状態にある場合や、ルータのファイアウォールによってデータ送受信を阻止される場合などがある。
【0037】
ピアツーピア通信を終了するときは、パケット処理部58が切断要求のパケットを生成して第2のネットワーク端末14へ送信して第2のネットワーク端末14からACK応答を受信するか、第2のネットワーク端末14から切断要求のパケットを受信してこれに対するACK応答を返信する。
【0038】
メイン処理部62は、ピアツーピア通信を利用したメインプログラム、例えばチャット通信、ファイル共有、ネットワークゲームなどのアプリケーションプログラムを実行する。
【0039】
図3は、ホスト端末16の構成を示す機能ブロック図である。ホスト端末16は、ピアツーピア通信を要求する第1のネットワーク端末12および第2のネットワーク端末14の間で互いのIPアドレスを交換させるためにこれを支援する。ホスト端末16は、通信部80、メール送受信部82、抽出処理部88、アドレス格納部94、保持部100、およびデータ生成部102を有する。メール送受信部82は通信部80を介して第3のメールサーバ22などの外部との間で電子メールを送受信する。メール送受信部82は、送信プロトコル処理部84および受信プロトコル処理部86を含む。このメール送受信部82は図2のメール送受信部40と同じ機能および構成を有してもよい。
【0040】
メール送受信部82は、送信プロトコル処理部84および受信プロトコル処理部86を含む。受信プロトコル処理部86は、ピアツーピア通信を要求する第1のネットワーク端末12または第2のネットワーク端末14のIPアドレスが含まれる要求メッセージを第3のメールサーバ22から取得する。受信プロトコル処理部86は、第3のメールサーバ22に要求メッセージが届いたか否かを定期的に確認する。要求メッセージが届いていた場合はこれを受信し、第3のメールサーバ22から削除する。送信プロトコル処理部84は、第1のネットワーク端末12または第2のネットワーク端末14から送られた要求メッセージ対する応答として返信メッセージを第1のネットワーク端末12宛または第2のネットワーク端末14宛に第3のメールサーバ22経由で送出する。
【0041】
抽出処理部88は、ブロック抽出部90および復号処理部92を含む。ブロック抽出部90は、要求メッセージの記述内容から符号化ブロック、送信者の電子メールアドレス、および日時情報を抽出する。日時情報は電子メールのヘッダに記述されたそのメールの送信日時を示す文字列である。例えば、抽出した日時情報が所定時間、例えば12時間以上も遡った日時であった場合、その要求メッセージを古いメッセージと判断して削除してもよい。要求メッセージの発信者はすでにネットワークに非接続の状態になっている可能性が高いためである。復号処理部92は、符号化ブロックを復号して第1のネットワーク端末12または第2のネットワーク端末14のIPアドレスおよび識別情報を取得する。
【0042】
アドレス格納部94は、アドレス書込部96およびアドレス管理部98を含む。アドレス書込部96は、抽出処理部88によって抽出されたIPアドレス、識別情報、電子メールアドレス、および日時情報を対応づけて保持部100内の管理テーブルに蓄積する。アドレス管理部98は、より過去に蓄積されたIPアドレスを新たに蓄積すべきIPアドレスで上書きするようアドレス書込部96を制御する。これにより、管理テーブルに蓄積するIPアドレスの個数は所定数に限定され、また時間的に古い情報を排除してより新しい情報だけを保持する。また、アドレス管理部98は蓄積から一定期間を経過したIPアドレスを削除する。このとき、管理テーブルに蓄積される日時情報をもとに期間経過を判断する。例えば半日以上経過していればすでにその端末はネットワークに非接続の状態にあると判断し、そのIPアドレスを削除する。保持部100には、IPアドレスの管理テーブルが格納される。
【0043】
データ生成部102は、アドレス選択部104、暗号化処理部106、およびメッセージ作成部108を含む。アドレス選択部104は、保持部100の管理テーブルの蓄積内容から少なくとも一つのIPアドレスおよび対応する識別情報を選択する。このときアドレス選択部104はより最近に蓄積されたIPアドレスを管理テーブルの蓄積内容から選択する。ただし、返信メッセージを送信すべきネットワーク端末のIPアドレスが管理テーブルに最新の情報として登録されていてもこれは選択しない。
【0044】
アドレス選択部104によって選択されたIPアドレスおよび識別情報を暗号化処理部106が暗号化して符号化ブロックを生成する。メッセージ作成部108は、符号化ブロックを含んだ返信メッセージを生成する。この返信メッセージを送信プロトコル処理部84が第1のネットワーク端末12または第2のネットワーク端末14宛に送信する。
【0045】
なお、管理テーブルにIPアドレスがひとつも蓄積されていなかった場合、メッセージ作成部108は符号化ブロックを含まない形式的な返信メッセージを生成する。また、暗号化処理部106は、IPアドレスおよび識別情報だけを暗号化の対象とし、電子メールアドレスは返信メッセージの対象に含めない。これは電子メールアドレスのように個人を特定しやすい情報を外部へ安易に漏洩させないためである。また、IPアドレスも暗号化が施されるため、秘匿性が高い。
【0046】
一方、第1のネットワーク端末12または第2のネットワーク端末14から接続確立に失敗した旨の通知メッセージが送られてきた場合、メール送受信部82の受信プロトコル処理部86は、第3のメールサーバ22からその通知メッセージを受信する。その通知メッセージからブロック抽出部90が符号化ブロックを抽出し、これを復号処理部92が復号してIPアドレスおよび識別情報を取得する。
【0047】
アドレス管理部98は、受信したメッセージが、接続確立に失敗した旨の通知メッセージのように要求メッセージと異なるメッセージであった場合、そのメッセージから取得したIPアドレスを管理テーブルと照合する。ただしその照合において、管理テーブルからIPアドレスを直接検索するのではなく、通知メッセージから取得する識別情報を管理テーブルから検索する。すなわち、管理テーブルの各行に含まれる識別情報をもとにいずれかの行を特定することにより、その行に含まれるIPアドレスを特定する。このような照合によりIPアドレスが管理テーブルに含まれていた場合、アドレス管理部98は、そのIPアドレスに対し、接続確立に失敗したことを示すフラグを立て、他のIPアドレスと区別する。このフラグの値は、暗号化処理部106によって生成される符号化データに含められる。したがって、返信メッセージを受け取った端末は、符号化データに含まれるフラグの値を参照し、そのIPアドレスとの間で過去に接続失敗があったか否かを把握できる。
【0048】
図4は、各ネットワーク端末、ホスト端末、各メールサーバの間で送受信されるデータフローを示す。第2のネットワーク端末14が要求メッセージを第2のメールサーバ20に送信すると(S10)、第2のメールサーバ20はその要求メッセージを第3のメールサーバ22へ転送する(S12)。ホスト端末16は第3のメールサーバ22から要求メッセージを受信し(S14)、その要求メッセージに含まれる第2のネットワーク端末14のIPアドレスを管理テーブルに蓄積する。初期的には管理テーブルにIPアドレスが蓄積されていないので、ホスト端末16はIPアドレスを含まない形式的な返信メッセージを第3のメールサーバ22へ送信する(S16)。第3のメールサーバ22はその返信メッセージを第2のメールサーバ20へ転送し(S18)、第2のネットワーク端末14は第2のメールサーバ20から返信メッセージを受信する(S20)。第2のネットワーク端末14が受信した返信メッセージには他端末のIPアドレスが含まれていないので、第2のネットワーク端末14は他端末から接続要求が来るまで待機する。
【0049】
第1のネットワーク端末12は、自端末のIPアドレスを含んだ要求メッセージを第1のメールサーバ18へ送信し(S22)、第1のメールサーバ18はその要求メッセージを第3のメールサーバ22へ転送する(S24)。ホスト端末16は第3のメールサーバ22から要求メッセージを受信し(S26)、その要求メッセージに含まれる第1のネットワーク端末12のIPアドレスを管理テーブルに蓄積する。また、管理テーブルから第2のネットワーク端末14のIPアドレスを抽出してこれを含んだ返信メッセージを第3のメールサーバ22へ送信する(S28)。第3のメールサーバ22は返信メッセージを第1のメールサーバ18へ転送し(S30)、第1のネットワーク端末12はその返信メッセージを第1のメールサーバ18から受信する(S32)。第1のネットワーク端末12は、返信メッセージに含まれるIPアドレスをもとに第2のネットワーク端末14に接続要求を送信し(S34)、第2のネットワーク端末14はACK応答とともに接続要求を返信する(S36)。第1のネットワーク端末12が第2のネットワーク端末14へACK応答を返信したところで(S38)、ピアツーピア通信のネットワーク接続が確立する。
【0050】
図5は、各ネットワーク端末においてデータ生成部30が生成する要求メッセージの記述内容を示す。本図に示される要求メッセージ110の記述内容は、暗号化処理部34によって暗号化される前の内容である。日時情報111は、要求メッセージ110を送信した日時を示す。送信元メールアドレス112は、第1のネットワーク端末12または第2のネットワーク端末14によって利用される電子メールアドレスであり、後に返信メッセージの宛先となる。宛先メールアドレス114は、ホスト端末16によって利用される電子メールアドレスであり、このアドレスに基づきメールボックスとして第3のメールサーバ22がネットワーク上で特定される。件名116として「data for network game client」の文字列が記述されている。ホスト端末16の受信プロトコル処理部86は、この文字列が件名116に記述された電子メールだけを選択的に受信する。
【0051】
説明文118は、この電子メールが要求メッセージ110である旨を説明した文章である。この要求メッセージ110を誤って通常の電子メールクライアントソフトウェアで受信してしまった者に対して、この電子メールの内容がネットワークゲームに使用される旨を伝えるために記述される。IPアドレス120は、第1のネットワーク端末12または第2のネットワーク端末14のIPアドレスである。ユーザID122は第1のネットワーク端末12または第2のネットワーク端末14のユーザを特定するための識別情報である。なお、ここではIPアドレス120およびユーザID122を電子メールの本文に記述しているが、電子メールのルーティングに影響のない記述方法である限り電子メールのヘッダに記述してもよい。
【0052】
図6は、図5の要求メッセージの一部を暗号化した例を示す。本図の符号化ブロック124は、図5におけるIPアドレス120およびユーザID122を暗号化することによって生成される文字列である。符号化ブロック124は、例えばCRC(Cyclic Redundancy Check)を用いて暗号化された文字列であってもよい。こうしてIPアドレスとユーザIDが暗号化されることにより、この要求メッセージ110を通常の電子メールクライアントソフトウェアで受信して閲覧してしまう者に対しても個人情報の秘匿性を維持できる。なお、ホスト端末16が送信する返信メッセージも本図と同様の形式にて生成される。
【0053】
図7は、保持部100における管理テーブル130の蓄積内容を示す。IPアドレス欄132には、各ネットワーク端末のIPアドレスが格納される。ユーザID欄134には、各ネットワーク端末のユーザに設定された識別情報が格納される。電子メールアドレス欄136には、各ネットワーク端末によって利用される電子メールアドレスが格納される。フラグ欄138は、接続に失敗したか否かを示すフラグの値が格納される。日時欄140には、各ネットワーク端末から送られた要求メッセージの送信日時を示す日時情報が格納される。
【0054】
図8は、各ネットワーク端末における処理手順を示すフローチャートである。自端末のIPアドレスを検出し(S50)、そのIPアドレスとユーザIDを暗号化する(S52)。暗号化されたIPアドレスおよびユーザIDを含んだ要求メッセージを生成し(S54)、その要求メッセージをホスト端末16宛に送出する(S56)。
【0055】
要求メッセージの送出後、ホスト端末16から返信メッセージが送られてくるまで受信メールサーバを定期的に確認する(S58N)。返信メッセージが送られてきたとき(S58Y)、その返信メッセージを受信メールサーバから受信し(S60)、符号化ブロックを抽出する(S62)。その符号化ブロックを復号して複数のIPアドレスおよびユーザIDを取得する(S64)。
【0056】
複数のIPアドレスおよびユーザIDからいずれかを選択し(S66)、これを宛先に指定した接続要求パケットを生成する(S68)。その接続要求パケットを他端末に送信して接続開始を試行する(S70)。接続開始に失敗した場合(S72N)、その失敗した宛先のIPアドレスを含んだ通知メッセージを生成してホスト端末16へ送出し(S74)、接続開始に成功するまでS66〜S70までの処理を繰り返す。接続開始に成功した場合(S72Y)、相手の端末との間でデータを交換してピアツーピア通信を実行する(S76)。
【0057】
図9は、ホスト端末16における処理手順を示すフローチャートである。ホスト端末16は、要求メールが受信メールサーバへ送られてくるまで定期的に受信を確認し(S100N)、要求メールが受信メールサーバへ届いたとき(S100Y)、その要求メッセージを第3のメールサーバ22から受信する(S102)。ホスト端末16は、その要求メッセージから符号化ブロックを抽出し(S104)、その符号化ブロックを復号してIPアドレスおよびユーザIDを取得する(S106)。ホスト端末16は、取得したIPアドレス、ユーザIDなどの各情報を管理テーブルに蓄積する(S108)。ホスト端末16は、それまでに蓄積されていた他端末のIPアドレスを管理テーブルの蓄積内容から選択し(S110)、選択したIPアドレスを暗号化して含んだ返信メッセージを生成し(S112)、その返信メッセージをネットワーク端末宛に送出する(S114)。
【0058】
(第2実施形態)
本実施形態におけるピアツーピアネットワークシステムは複数のホスト端末を有する。すなわち、ホスト端末が一つである第1実施形態と相違する。各ネットワーク端末は、複数のホスト端末に対してほぼ同時に要求メッセージを送信し、複数のホスト端末のうちいずれかから返信メッセージを受信すればピアツーピア通信接続を開始できる。したがって、いずれかのホスト端末が稼働していなくとも他のホスト端末さえ稼働していれば他端末のIPアドレスを取得できる。また、最も早く届いた返信メールを参照してピアツーピア通信を開始するため、一つのホスト端末に送信するよりも接続開始に必要な時間を短縮できる可能性がある。
【0059】
図10は、本実施形態のピアツーピアネットワークシステムの構成を示す。ピアツーピアネットワークシステム10は、第1のネットワーク端末12、第2のネットワーク端末14、第1のホスト端末26、第2のホスト端末29、第1のメールサーバ18、第2のメールサーバ20、第3のメールサーバ22、第4のメールサーバ28を有する。
【0060】
本図の第1のホスト端末26および第2のホスト端末29は、図1のホスト端末16と基本的な構成が共通する。また、本図の第3のメールサーバ22および第4のメールサーバ28は、図1の第3のメールサーバ22と基本的な構成が共通する。第1のホスト端末26および第2のホスト端末29は、それぞれの電子メールアドレスが併記された同じ要求メッセージを受信するので、その記述内容から互いの電子メールアドレスを取得できる。第1のホスト端末26および第2のホスト端末29は、蓄積していたIPアドレスを含ませた返信メッセージを他のホスト端末に対しても送信する。これにより、ホスト端末同士でIPアドレスを交換でき、互いに管理テーブルの蓄積内容を補完し合うことができる。また、複数のホスト端末間で管理テーブルの内容を統一させたい場合は、定期的に内容を交換することによって同期をとってもよい。
【0061】
例えば、ホスト端末として第1のホスト端末26を単独で稼働した後、第2のホスト端末29を追加的に稼働開始する場合、第2のホスト端末29は第4のメールサーバ28経由で第1のホスト端末26宛に管理テーブル130の内容を要求するメッセージを送信する。第1のホスト端末26は、管理テーブル130の内容を含んだ返信メールを生成し、これを第3のメールサーバ22経由で第2のホスト端末29宛に送信する。第2のホスト端末29は、返信メッセージを第4のメールサーバ28から受信し、そこからIPアドレスやユーザIDなどのリストを抽出して自己の管理テーブルに蓄積する。このように、ホスト端末を追加するときに他のホスト端末から管理テーブルの内容を補完させることができる。
【0062】
別の形態としては、ホスト端末を3台以上設け、そのうち1台を代表ホスト端末と位置づけて複数のネットワーク端末から送られてきた要求メッセージを受信する。この代表ホスト端末は、受信した要求メッセージを送信者の電子メールアドレスをそのまま変えずに他の複数のホスト端末のうちいずれかへ転送する。このとき、ホスト端末ごとの転送メール数が均等になるよう分散する。これにより、要求メッセージ数が多くなった場合に、IPアドレスの蓄積、選択、暗号化などの処理によってかかる負荷を複数のホスト端末に分散できる。また、電子メールの転送といった比較的簡易な処理で分散を実現できる。
【0063】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、その各構成要素や各処理プロセスの組合せにいろいろな変形が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、変形例を挙げる。
【0064】
第1、2実施形態においては、ネットワーク端末とホスト端末を別個のハードウェアで構成した。変形例においては、これらを一体的に構成してもよい。すなわち、ピアツーピア通信を行う任意のネットワーク端末がホスト端末を兼ねる。例えば、ネットワーク端末としての機能とホスト端末としての機能をそれぞれ別個のアプリケーションプログラムで実現し、それら両方のプログラムを1台のネットワーク端末上で同時に稼働させてもよい。または、ネットワーク端末としての機能とホスト端末としての機能を併せ持つ単一のアプリケーションプログラムをネットワーク端末上で稼働させてもよい。
【0065】
ネットワーク端末がホスト端末を兼ねる場合、どのネットワーク端末がホスト端末を兼ねるかについて種々の方式が考えられる。例えば、すべてのネットワーク端末がホスト端末の機能を兼ね備え、数珠繋ぎ的にネットワークを連鎖させていく方式でもよい。また例えば、最初に要求メッセージを受信したネットワーク端末がホスト端末として自動的に稼働開始する構成でもよい。
【0066】
第1実施形態においては、第1のネットワーク端末12のデータ生成部30が識別情報としてユーザIDをIPアドレスとともに暗号化する。変形例においては、接続要求に際してデータ生成部30がアットランダムなセッションIDを識別情報として生成してもよい。データ生成部30は、このセッションIDを暗号化して要求メッセージに含める。要求メッセージを受け取ったホスト端末16は、そのセッションIDを返信メッセージに含めさせて送り返す。第1のネットワーク端末12は、同じセッションIDが返信メッセージに記述されていればこれを正しい返信メッセージであると認識できる。これにより、いわゆる「なりすまし」の返信メッセージを受け取ってもこれを排除できる。
【0067】
【発明の効果】
本発明によれば、ピアツーピア通信によるネットワーク接続の確立を比較的簡易な手順にて支援することができる。
【図面の簡単な説明】
【図1】 第1実施形態におけるピアツーピアネットワークシステムの構成を示す図である。
【図2】 ネットワーク端末の構成を示す機能ブロック図である。
【図3】 ホスト端末の構成を示す機能ブロック図である。
【図4】 各ネットワーク端末、ホスト端末、メールサーバの間で送受信されるデータフローを示す図である。
【図5】 ネットワーク端末におけるメッセージ作成部が生成する要求メッセージの記述内容を示す図である。
【図6】 図5の要求メッセージの一部を暗号化した例を示す図である。
【図7】 管理テーブルの蓄積内容を示す図である。
【図8】 ネットワーク端末における処理手順を示すフローチャートである。
【図9】 ホスト端末における処理手順を示すフローチャートである。
【図10】 第2実施形態のピアツーピアネットワークシステムの構成を示す図である。
【符号の説明】
10 ピアツーピアネットワークシステム、 12 第1のネットワーク端末、 14 第2のネットワーク端末、 16 ホスト端末、 18 第1のメールサーバ、 20 第2のメールサーバ、 22 第3のメールサーバ、 24ホスト端末、 30 データ生成部、 40 メール送受信部、 48 選択処理部、 56 データ交換部、 82 メール送受信部、 88 抽出処理部、 94 アドレス格納部、 102 データ生成部。

Claims (18)

  1. ピアツーピア通信を要求するクライアント端末と、ピアツーピア通信の接続確立を支援するホスト端末と、を含み、
    前記クライアント端末が自端末のIPアドレスを含んだ要求メッセージを生成し、
    前記クライアント端末が前記要求メッセージを送信メールサーバ経由で前記ホスト端末宛に送出し、
    前記ホスト端末が前記要求メッセージを受信メールサーバ経由で取得し、
    前記ホスト端末が前記要求メッセージの記述内容から前記クライアント端末のIPアドレスを抽出し、
    前記ホスト端末が前記抽出したIPアドレスをテーブルに蓄積し、
    前記ホスト端末が前記テーブルから少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成し、
    前記ホスト端末が前記返信メッセージを前記クライアント端末宛に送信メールサーバ経由で送出し、
    前記クライアント端末が前記返信メッセージを受信メールサーバ経由で取得し、
    前記クライアント端末が前記返信メッセージの記述内容から他端末のIPアドレスを少なくとも一つ抽出し、
    前記クライアント端末が前記抽出したIPアドレスに基づいて特定される他端末との間でピアツーピア通信によるデータ送受信を開始することを特徴とするネットワークシステム。
  2. ピアツーピア通信を要求するクライアント端末のIPアドレスを含んだ要求メッセージを生成する工程と、
    ピアツーピア通信の接続確立を支援するホスト端末宛に前記要求メッセージを送信メールサーバ経由で送出する工程と、
    前記ホスト端末が前記要求メッセージを受信メールサーバ経由で取得する工程と、
    前記ホスト端末が前記要求メッセージの記述内容から前記クライアント端末のIPアドレスを抽出する工程と、
    前記ホスト端末が前記抽出したIPアドレスをテーブルに蓄積する工程と、
    前記ホスト端末が前記テーブルから少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、
    前記ホスト端末が前記返信メッセージを前記クライアント端末宛に送信メールサーバ経由で送出する工程と、
    前記クライアント端末が前記返信メッセージを受信メールサーバ経由で取得する工程と、
    前記クライアント端末が前記返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、
    前記クライアント端末が前記抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、
    を有することを特徴とするネットワーク接続確立方法。
  3. 前記要求メッセージを生成する工程は、前記IPアドレスを暗号化して前記要求メッセージに含ませる工程を含み、
    前記抽出する工程は、前記要求メッセージから前記暗号化されたIPアドレスを抽出してこれを復号する工程を含むことを特徴とする請求項2に記載のネットワーク接続確立方法。
  4. 前記返信メッセージを生成する工程は、前記少なくとも一つのIPアドレスを暗号化して前記返信メッセージに含ませる工程を含み、
    前記選択する工程は、前記暗号化された少なくとも一つのIPアドレスを選択してこれを復号する工程を含むことを特徴とする請求項2または3に記載のネットワーク接続確立方法。
  5. 自端末のIPアドレスを含んだ要求メッセージを生成するデータ生成部と、
    前記要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出するとともに、前記要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得するメール送受信部と、
    前記返信メッセージの記述内容から他端末のIPアドレスを少なくとも一つ抽出する選択処理部と、
    前記抽出したIPアドレスに基づいて特定される他端末との間でピアツーピア通信によるデータ送受信を開始するデータ交換部と、
    を有することを特徴とするネットワーク端末。
  6. 前記データ生成部は、前記IPアドレスを暗号化して前記要求メッセージに含ませ、
    前記選択処理部は、前記返信メッセージから暗号化されたIPアドレスを抽出してこれを復号することを特徴とする請求項5に記載のネットワーク端末。
  7. 前記データ生成部は、前記抽出したIPアドレスを宛先にしたデータ送受信の開始に失敗した場合に、そのIPアドレスを含んだメッセージを生成し、
    前記メール送受信部は、前記失敗した場合のメッセージを前記ホストとなる端末宛に送出することを特徴とする請求項5または6に記載のネットワーク端末。
  8. ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得するメール送受信部と、
    前記要求メッセージの記述内容から前記IPアドレスを抽出する抽出処理部と、
    前記抽出したIPアドレスをテーブルに蓄積するアドレス格納部と、
    前記テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成するデータ生成部と、を有し、
    前記メール送受信部は、前記返信メッセージを前記要求する端末宛に送信メールサーバ経由で送出することを特徴とするネットワーク端末。
  9. 前記抽出処理部は、前記要求メッセージの記述内容から暗号化されたIPアドレスを抽出してこれを復号し、
    前記データ生成部は、前記少なくとも一つのIPアドレスを暗号化して前記返信メッセージに含ませることを特徴とする請求項8に記載のネットワーク端末。
  10. 前記アドレス格納部は、前記テーブルに蓄積するIPアドレスの個数を限定するとともに、より過去に蓄積されたIPアドレスを新たに蓄積すべきIPアドレスで上書きすることを特徴とする請求項8または9に記載のネットワーク端末。
  11. 前記データ生成部は、より最近に蓄積されたIPアドレスを前記テーブルの蓄積内容から選択することを特徴とする請求項8から10のいずれかに記載のネットワーク端末。
  12. 前記メール送受信部は、前記要求する端末がデータ送受信の開始に失敗した宛先のIPアドレスを含んだメッセージを前記受信メールサーバ経由で取得し、
    前記抽出処理部は、前記メッセージの記述内容から前記失敗したIPアドレスを抽出し、
    前記アドレス格納部は、前記失敗したIPアドレスを他のIPアドレスと区別することを特徴とする請求項8から11のいずれかに記載のネットワーク端末。
  13. ピアツーピア通信を要求する端末のIPアドレスを含んだ要求メッセージを生成する工程と、
    前記要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出する工程と、
    前記要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得する工程と、
    前記返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、
    前記抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、
    を有することを特徴とするネットワーク接続確立方法。
  14. ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得する工程と、
    前記要求メッセージの記述内容から前記IPアドレスを抽出する工程と、
    前記抽出したIPアドレスをテーブルに蓄積する工程と、
    前記テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、
    前記返信メッセージを前記要求する端末宛に送信メールサーバ経由で送出する工程と、
    を有することを特徴とするネットワーク接続確立方法。
  15. ピアツーピア通信を要求する端末のIPアドレスを含んだ要求メッセージを生成する工程と、
    前記要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出する工程と、
    前記要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得する工程と、
    前記返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、
    前記抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、
    をコンピュータに実行させることを特徴とするコンピュータプログラム。
  16. ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得する工程と、
    前記要求メッセージの記述内容から前記IPアドレスを抽出する工程と、
    前記抽出したIPアドレスをテーブルに蓄積する工程と、
    前記テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、
    前記返信メッセージを前記要求する端末宛に送信メールサーバ経由で送出する工程と、
    をコンピュータに実行させることを特徴とするコンピュータプログラム。
  17. ピアツーピア通信を要求する端末のIPアドレスを含んだ要求メッセージを生成する工程と、
    前記要求メッセージを送信メールサーバ経由でホストとなる端末宛に送出する工程と、
    前記要求メッセージに対する応答として前記ホストとなる端末から送られた返信メッセージを受信メールサーバ経由で取得する工程と、
    前記返信メッセージの記述内容から他の端末のIPアドレスを少なくとも一つ抽出する工程と、
    前記抽出したIPアドレスに基づいて特定される他の端末との間でピアツーピア通信によるデータ送受信を開始する工程と、
    をコンピュータに実行させることを特徴とするプログラムを格納した、コンピュータにて読取可能な記録媒体。
  18. ピアツーピア通信を要求する端末のIPアドレスが含まれる要求メッセージを受信メールサーバ経由で取得する工程と、
    前記要求メッセージの記述内容から前記IPアドレスを抽出する工程と、
    前記抽出したIPアドレスをテーブルに蓄積する工程と、
    前記テーブルの蓄積内容から少なくとも一つのIPアドレスを選択してこれを含んだ返信メッセージを生成する工程と、
    前記返信メッセージを前記要求する端末宛に送信メールサーバ経由で送出する工程と、
    をコンピュータに実行させることを特徴とするプログラムを格納した、コンピュータにて読取可能な記録媒体。
JP2002358760A 2002-12-10 2002-12-10 ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体 Expired - Fee Related JP3973548B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002358760A JP3973548B2 (ja) 2002-12-10 2002-12-10 ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体
US10/733,460 US7577746B2 (en) 2002-12-10 2003-12-10 Network system for establishing peer-to-peer communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002358760A JP3973548B2 (ja) 2002-12-10 2002-12-10 ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体

Publications (2)

Publication Number Publication Date
JP2004193910A JP2004193910A (ja) 2004-07-08
JP3973548B2 true JP3973548B2 (ja) 2007-09-12

Family

ID=32732687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002358760A Expired - Fee Related JP3973548B2 (ja) 2002-12-10 2002-12-10 ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体

Country Status (2)

Country Link
US (1) US7577746B2 (ja)
JP (1) JP3973548B2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278903A (ja) * 2001-03-15 2002-09-27 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
US20060004837A1 (en) * 2004-06-30 2006-01-05 Genovker Victoria V Advanced switching peer-to-peer protocol
US8645540B2 (en) * 2004-07-29 2014-02-04 International Business Machines Corporation Avoiding unnecessary provisioning/deprovisioning of resources in a utility services environment
US7558862B1 (en) * 2004-12-09 2009-07-07 LogMeln, Inc. Method and apparatus for remotely controlling a computer with peer-to-peer command and data transfer
JP4782446B2 (ja) * 2005-03-15 2011-09-28 株式会社バンダイナムコゲームス ネットワークゲームシステム及び管理サーバ
CN101273658B (zh) * 2005-07-28 2012-01-25 京瓷株式会社 通信方法、通信系统以及通信终端
JP2007088690A (ja) * 2005-09-21 2007-04-05 Noritz Corp コンテンツ再生システム、コネクション確立方法、コンテンツサーバ、情報端末装置及び記憶媒体
WO2007044655A2 (en) * 2005-10-07 2007-04-19 Neoedge Networks, Inc. System and method for providing content, applications, services, and digital media to users in a peer-to-peer network
US8296437B2 (en) * 2005-12-29 2012-10-23 Logmein, Inc. Server-mediated setup and maintenance of peer-to-peer client computer communications
US7589757B2 (en) * 2006-03-30 2009-09-15 Polycom, Inc. System and method for exchanging connection information for videoconferencing units using e-mails
US7969461B2 (en) * 2006-03-30 2011-06-28 Polycom, Inc. System and method for exchanging connection information for videoconferencing units using instant messaging
US20110158238A1 (en) * 2007-12-19 2011-06-30 Arcsoft (Shanghai) Technology Company, Ltd IP Cache
GB2478470B8 (en) 2008-11-17 2014-05-21 Sierra Wireless Inc Method and apparatus for network port and netword address translation
US8924486B2 (en) * 2009-02-12 2014-12-30 Sierra Wireless, Inc. Method and system for aggregating communications
US8228848B2 (en) * 2008-11-17 2012-07-24 Sierra Wireless, Inc. Method and apparatus for facilitating push communication across a network boundary
US7962627B2 (en) * 2008-12-04 2011-06-14 Microsoft Corporation Peer-to-peer network address translator (NAT) traversal techniques
US8244905B2 (en) * 2009-03-31 2012-08-14 Alcatel Lucent Routing mechanisms for messaging applications using an enhanced gateway control function
US9439229B2 (en) * 2010-05-07 2016-09-06 Samsung Electronics Co., Ltd. Method and apparatus for performing pairing between coordinator and device in network, method and apparatus for performing pairing between devices, network system including the coordinator and the devices
US20120066311A1 (en) * 2010-09-09 2012-03-15 I O Interconnect, Ltd. Network connection establishment and data transmission method
KR101701158B1 (ko) * 2010-12-15 2017-02-01 주식회사 케이티 홈 네트워크의 장치에 대한 원격 접속 제공 방법 및 시스템
EP2673927A4 (en) 2011-02-08 2016-08-24 Sierra Wireless Inc METHOD AND DATA-TRANSFER SYSTEM BETWEEN NETWORK DEVICES
JP5246814B2 (ja) * 2011-02-10 2013-07-24 Necシステムテクノロジー株式会社 メール誤配信防止装置、メール誤配信防止方法及びメール誤配信防止プログラム
TWI429308B (zh) * 2011-02-14 2014-03-01 Wistron Corp 建立點對點傳輸的方法及行動通訊系統
CN102739711B (zh) * 2011-04-08 2017-10-17 中兴通讯股份有限公司 一种对等网络中控制过负荷的方法及系统
KR101763171B1 (ko) * 2011-06-13 2017-08-14 삼성전자주식회사 단말 간의 피어투피어 연결 방법 및 장치
JP6144550B2 (ja) * 2013-06-26 2017-06-07 京セラ株式会社 ユーザ端末及びプロセッサ
KR101469010B1 (ko) * 2014-04-25 2014-12-04 한국전자통신연구원 스마트가전 네트워크 접속 정보 전달 장치 및 방법
US9614915B2 (en) * 2014-08-18 2017-04-04 Google Inc. Seamless peer to peer internet connectivity
CN106570045B (zh) * 2015-10-13 2020-12-08 腾讯科技(深圳)有限公司 一种数据操作控制方法及其系统、用户终端
US10783012B2 (en) 2018-04-20 2020-09-22 CopyBucket, Inc. Systems and methods for efficient inter-device data exchange
CN112637364B (zh) * 2021-01-06 2023-01-10 上海哔哩哔哩科技有限公司 建立p2p连接的方法、客户端及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144671A (en) * 1997-03-04 2000-11-07 Nortel Networks Corporation Call redirection methods in a packet based communications network
US6463471B1 (en) * 1998-12-28 2002-10-08 Intel Corporation Method and system for validating and distributing network presence information for peers of interest
US6538990B1 (en) * 1999-04-15 2003-03-25 International Business Machines Corporation Method and system for congestion flow control in a high speed network
US6931433B1 (en) * 2000-08-24 2005-08-16 Yahoo! Inc. Processing of unsolicited bulk electronic communication
US20030105812A1 (en) * 2001-08-09 2003-06-05 Gigamedia Access Corporation Hybrid system architecture for secure peer-to-peer-communications
US7099288B1 (en) * 2001-10-16 2006-08-29 Sprint Communications Company L.P. Telephonic addressing for establishing simultaneous voice and computer network connections
US20030212804A1 (en) * 2002-05-09 2003-11-13 Ardeshir Hashemi Method and apparatus for media clip sharing over a network
KR20040093656A (ko) * 2002-07-29 2004-11-06 아이피 토크 가부시키가이샤 인터넷 통신 시스템 및 인터넷 통신 방법 및 세션 관리서버 및 무선 통신 장치 및 통신 중계 서버 및 프로그램

Also Published As

Publication number Publication date
JP2004193910A (ja) 2004-07-08
US20040148406A1 (en) 2004-07-29
US7577746B2 (en) 2009-08-18

Similar Documents

Publication Publication Date Title
JP3973548B2 (ja) ネットワークシステム、ネットワーク接続確立方法、ネットワーク端末、コンピュータプログラム、およびプログラムを格納した記録媒体
US10972436B1 (en) System and method for session affinity in proxy media routing
US7856023B2 (en) Secure virtual private network having a gateway for managing global ip address and identification of devices
US6434600B2 (en) Methods and systems for securely delivering electronic mail to hosts having dynamic IP addresses
US7415536B2 (en) Address query response method, program, and apparatus, and address notification method, program, and apparatus
CN101146051B (zh) 一种企业级即时通信互联系统及其实现企业互联的方法
JP5356502B2 (ja) データ転送フレームワークによるリアルタイム通信
US8438614B2 (en) Communication system, relay apparatus, terminal apparatus and computer readable medium
US20070162744A1 (en) Data communication method and data communication system
EP1769620A2 (en) Improvements relating to secure telecommunications
CN102598637B (zh) 通信系统
JPWO2004080009A1 (ja) 連携情報管理システム、及びメッセージ転送制御システム
JP2006244318A (ja) 電子メール中継装置
Kangasharju et al. Secure and resilient peer-to-peer e-mail design and implementation
JP4183664B2 (ja) 認証方法、サーバ計算機、クライアント計算機、および、プログラム
JP4909026B2 (ja) 受信装置、方法、及び、プログラム
JP5545141B2 (ja) データ中継システム、中継装置、およびプログラム
WO2006134226A1 (en) Method and server for authenticating sender of email and notifying exchange information of email
JP4420057B2 (ja) 通信方法、情報処理システム及び情報処理装置
JP2010277144A (ja) ユーザ認証システム、ユーザ端末、ログ認証サーバ、ユーザ認証方法およびプログラム
JP3827415B2 (ja) 電子メールシステムの端末装置
JP4003634B2 (ja) 情報処理装置
JP2006019824A (ja) セキュア通信システム、管理装置および通信端末
JP3589622B2 (ja) 電子メールシステム
JP4001047B2 (ja) 中継装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070529

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070612

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100622

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110622

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110622

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120622

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120622

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130622

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees