JP2006050125A - 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法 - Google Patents

情報処理システム、情報処理装置、サーバ装置、及び情報処理方法 Download PDF

Info

Publication number
JP2006050125A
JP2006050125A JP2004226478A JP2004226478A JP2006050125A JP 2006050125 A JP2006050125 A JP 2006050125A JP 2004226478 A JP2004226478 A JP 2004226478A JP 2004226478 A JP2004226478 A JP 2004226478A JP 2006050125 A JP2006050125 A JP 2006050125A
Authority
JP
Japan
Prior art keywords
packet
reply
request packet
reply packet
information processing
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.)
Withdrawn
Application number
JP2004226478A
Other languages
English (en)
Inventor
Kunio Gohara
邦男 郷原
Hajime Maekawa
前川  肇
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2004226478A priority Critical patent/JP2006050125A/ja
Priority to CNA2005800266108A priority patent/CN1993949A/zh
Priority to EP20050767117 priority patent/EP1783974A1/en
Priority to US11/573,127 priority patent/US20080056276A1/en
Priority to PCT/JP2005/014020 priority patent/WO2006013811A1/ja
Publication of JP2006050125A publication Critical patent/JP2006050125A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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

Landscapes

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

Abstract

【課題】通信処理装置のポート維持時間を検出することができる情報処理システムを提供する。
【解決手段】情報処理装置1は、返信パケットの送信を要求する要求パケットを、通信処理装置2を介して送信する要求パケット送信部11と、返信パケットを受信する返信パケット受信部12と、受信された返信パケットに基づいて、通信処理装置2のポート維持時間を検出するポート維持時間検出部13と、返信パケットの受信の有無に基づいて、二分探索法を用いて、要求パケットの送信を制御する要求パケット送信制御部14とを備え、サーバ装置3は、要求パケットを受信する要求パケット受信部31と、返信パケットを送信する返信パケット送信部32と、受信された要求パケットに基づいて、返信パケットの送信を制御する返信パケット送信制御部33とを備える。
【選択図】図1

Description

本発明は、通信処理装置のポート維持時間を検出する情報処理システム等に関する。
情報処理装置、通信処理装置、及びサーバ装置を含む情報処理システムにおいて、例えば、家庭用のPC(Personal Computer)や家電機器などの情報処理装置から通信処理装置を介して、所定のパケットをサーバ装置に定期的に送信することが行われている(例えば、特許文献1参照)。ここで、通信処理装置は、例えば、NAT(Network Address Translation)機能を有するルータなどである。また、その所定のパケットは、例えば、通信処理装置のWAN(Wide Area
Netwrok)側のIPアドレスが変化したかどうかを知るため、あるいは、携帯電話等の外部の装置から情報処理装置にサーバ装置を経由してアクセスすることができるように、通信処理装置のポートを維持する(すなわち、WAN側からのパケットが通信処理装置を経由して情報処理装置に送信されるようにしておく)ために定期的に送信される。
ルータ等のNAT機能を有する通信処理装置では、LAN(Local Area Network)側からWAN側へパケットを送信するときにLAN側のプライベートIPアドレスとポート番号を、WAN側のグローバルIPアドレスとポート番号に変換する。また、WAN側からの返信パケットを受信した場合には、その逆変換を行うことによって、情報処理装置にパケットを渡す。ここで、通信処理装置では、そのようなアドレス変換を行う時間が設定されている。具体的には、WAN側とLAN側との間において、あるアドレス変換が最後になされてから所定の期間経過した後には、WAN側から受け取ったパケットに対するそのアドレス変換は行われなくなる(LAN側から受け取ったパケットに対しては、新たなアドレス変換がなされることになる)。すなわち、そのWAN側からのパケットは情報処理装置で受信されないことになり、携帯電話等の外部の装置から情報処理装置にサーバ装置を経由してアクセスできないことになる。その所定の期間のことをポート維持時間と呼ぶことにする。
国際公開第2004/030292号パンフレット(第1頁、第1図等)
上述した情報処理システムにおいて、情報処理装置がサーバ装置からの情報を受信できるようにするには、通信処理装置において絶えずサーバ装置からの(すなわち、WAN側からの)パケットに対してアドレス変換をできるようにしておかなければならない。したがって、情報処理装置とサーバ装置との間で情報のやり取りを行う必要がない場合であっても、情報処理装置から通信処理装置を介して、サーバ装置にパケットを定期的に送信することによって、サーバ装置から送信されたパケットに対して、通信処理装置がアドレス変換を行うことができるようにしておく必要がある。この場合に、情報処理装置が定期的に送信するパケットの送信周期を、できるだけ長くしたいという要請がある。不必要なパケットの送信を削減するため、また情報処理装置におけるパケットの送信による処理負担を軽減するためである。具体的には、情報処理装置が定期的に送信するパケットの送信周期を、情報処理装置が接続されている通信処理装置のポート維持時間よりも少しだけ(例えば、1,2秒など)短い時間にすることができればよい。
しかしながら、情報処理装置がどのような通信処理装置に接続されるのかはわからないため、一般には、各メーカから販売されている各種の通信処理装置のうち、一番小さなポ
ート維持時間に対応する周期を情報処理装置において設定しておき、その周期を用いてパケットを送信することになる。この場合には、たとえ長いポート維持時間の通信処理装置に接続されている情報処理装置であっても、あらかじめ設定されている短い周期によって定期的にパケットを送信することとなり、不必要なパケットが多く送信されることになる。
ここで、情報処理装置の接続されている通信処理装置のポート維持時間を情報処理装置が知ることができれば、そのポート維持時間に基づいて、サーバ装置に対して、適切な周期で定期的にパケットを送信することができるようになる。
本発明は、上記問題点を考慮してなされたものであり、情報処理装置の接続されている通信処理装置のポート維持時間を検出することができる情報処理システム等を提供することを目的とする。
上記目的を達成するため、本発明による情報処理システムは、情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムであって、前記情報処理装置は、前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求するパケットである要求パケットを、前記通信処理装置の1つのポートを介して送信する要求パケット送信部と、前記サーバ装置から前記ポートを介して送信された返信パケットを受信する返信パケット受信部と、前記返信パケット受信部による返信パケットの受信の有無に基づいて、二分探索法を用いて、前記要求パケット送信部による要求パケットの送信を制御する要求パケット送信制御部と、前記返信パケット受信部が受信した返信パケットに基づいて、前記通信処理装置のポート維持時間を検出するポート維持時間検出部と、を備え、前記サーバ装置は、前記要求パケットを受信する要求パケット受信部と、前記返信パケットを送信する返信パケット送信部と、前記要求パケット受信部が受信した要求パケットに基づいて、前記返信パケットの送信を制御する返信パケット送信制御部と、を備えた、ものである。
このような構成により、要求パケットに対応して送信された返信パケットのうち、返信パケット受信部において受信された返信パケットに基づいて、通信処理装置のポート維持時間を検出することができる。また、二分探索法を用いて、要求パケットの送信を制御することにより、効率的な要求パケットの送信を行うことができ、結果として、効率的なポート維持時間の検出を行うことができる。そして、その検出したポート維持時間を用いて、例えば、定期的なパケットの送信等を行うことができる。その結果、例えば、不必要なパケットの送信を行わないようにすることができうる。
また、本発明による情報処理システムでは、前記要求パケットが、前記返信パケットの送信までの待ち時間に関する情報である待ち時間情報を有しており、前記要求パケット送信制御部が、前記返信パケット受信部による返信パケットの受信の有無に基づいて、二分探索法を用いて待ち時間を決定し、当該決定した待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御し、前記ポート維持時間検出部が、前記返信パケット受信部が受信した返信パケットに対応する待ち時間のうち、一番長い待ち時間に基づいて、前記通信処理装置のポート維持時間を検出し、前記返信パケット送信制御部が、前記要求パケット受信部が受信した要求パケットに含まれる待ち時間情報に基づいて、前記返信パケットの送信を制御してもよい。
このような構成により、要求パケットに含まれる待ち時間情報を用いて、ポート維持時間の検出を行うことができる。
また、本発明による情報処理システムでは、前記ポート維持時間検出部が、前記要求パケット送信部が1回目に送信した要求パケットに対応して送信された返信パケットを前記返信パケット受信部が受信した場合に、当該要求パケットの待ち時間情報に応じた待ち時間に基づいて、前記ポート維持時間を検出してもよい。
このような構成により、ポート維持時間の検出を短期間で行うことができる。例えば、1回目に送信する要求パケットに含まれる待ち時間情報に応じた待ち時間として、定期的なパケットの送信を行う周期として十分大きな値を設定しておくことにより、その1回目に送信された要求パケットに対応して送信された返信パケットを受信できた場合には、その段階でポート維持時間の検出を終了することができ、短期間に必要十分な範囲でのポート維持時間の検出をすることができる。
また、本発明による情報処理システムでは、前記ポート維持時間検出部が、要求パケットが所定の回数送信された後に、前記ポート維持時間の検出を行ってもよい。
このような構成により、所定の回数だけ要求パケットが送信された後に、ポート維持検出を行うことができ、必要とされる精度に応じて、その所定の回数を設定することにより、ポート維持時間の検出を所望の精度で行うことができる。
また、本発明による情報処理システムでは、前記ポート維持時間検出部が、前記要求パケット送信部によって送信された要求パケットに含まれる待ち時間情報に応じた待ち時間と、当該要求パケットよりも1つ前に送信された要求パケットに含まれる待ち時間情報に応じた待ち時間との差が、所定の値よりも小さくなった場合に、前記ポート維持時間の検出を行ってもよい。
このような構成により、あらかじめポート維持時間の精度を設定しておくことにより、その精度でのポート維持時間の検出を行うことができる。
また、本発明による情報処理システムでは、前記ポート維持時間検出部が、前記要求パケット送信部が1回目の要求パケットを送信してから所定の時間が経過した後に、前記ポート維持時間の検出を行ってもよい。
このような構成により、ポート維持時間が検出されるまでの時間を設定することができ、所定の時間以内でポート維持時間の検出が行われるようにすることができる。
また、本発明による情報処理システムでは、前記返信パケットの即時の送信を要求する要求パケットを前記要求パケット送信部に送信させ、当該要求パケットの送信から、当該要求パケットに応じて送信された返信パケットの前記返信パケット受信部による受信までの時間であるパケット往復時間を測定するパケット往復時間測定部をさらに備え、前記パケット往復時間に基づいて、前記ポート維持時間が検出されてもよい。
このような構成により、パケット往復時間を考慮することにより、より精度の高いポート維持時間の検出を行うことができる。
また、本発明による情報処理システムでは、前記要求パケットが通過する前記通信処理装置のポートが、当該ポートを初回の要求パケットが通過する時に、前記通信処理装置において新たに割り当てられるものであってもよい。
このような構成により、要求パケットの送信から、返信パケットが送信されるまでに、要求パケットの通過した通信処理装置のポートが他の用途に用いられる危険性を低くすることができ、正確なポート維持時間の検出を行うことができうる。
本発明による情報処理システム等によれば、情報処理装置から送信された要求パケット
に対応して、サーバ装置から送信された返信パケットに基づいて、通信処理装置のポート維持時間を検出することができる。
(実施の形態1)
本発明の実施の形態1による情報処理システムについて、図面を参照しながら説明する。
図1は、本実施の形態による情報処理システムの構成を示すブロック図である。図1において、本実施の形態による情報処理システムは、情報処理装置1と、通信処理装置2と、サーバ装置3とを備える。図1では、1つの情報処理装置1が通信処理装置2に接続されている場合について記載しているが、2以上の情報処理装置が通信処理装置2に接続されていてもよい。情報処理装置1は、例えば、コンピュータ、電子レンジ、電話機、プリンタ、ファクシミリ装置、冷蔵庫、洗濯機、空調装置、テレビ、映像録画装置、セットトップボックス等である。通信処理装置2と、サーバ装置3とは、有線または無線の通信回線4を介して接続されている。通信回線4は、例えば、インターネットやイントラネットなどである。
情報処理装置1は、要求パケット送信部11と、返信パケット受信部12と、ポート維持時間検出部13と、要求パケット送信制御部14とを備える。
要求パケット送信部11は、1以上の要求パケットを、通信処理装置2の1つのポートを介してサーバ装置3に送信する。ここで、要求パケットとは、サーバ装置3に対して、返信パケットの送信を要求するパケットである。この要求パケットは、例えば、UDPヘッダを有するパケットである。なお、要求パケットのペイロードには、待ち時間情報が含まれている。ここで、待ち時間情報とは、サーバ装置3における要求パケットの受信から返信パケットの送信までの待ち時間に関する情報である。この待ち時間情報は、例えば、待ち時間を示す情報(例えば、待ち時間が2分であることを示す情報)であってもよく、待ち時間と所定の関係を有する情報(例えば、待ち時間が1分58秒である場合に、それに2秒を足した2分を示す情報)であってもよい。本実施の形態では、前者の場合について説明する。また、返信パケットとは、サーバ装置3から通信処理装置2を介して情報処理装置1に送信されるパケットである。その返信パケットを情報処理装置1が受信できるかどうかによって、通信処理装置2におけるポート維持時間が検出される(これらについては後述する)。
なお、要求パケット送信部11は、送信を行うための送信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい(この場合には、要求パケット送信部11の外部に図示しない送信デバイスが存在することとなる)。また、要求パケット送信部11は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
返信パケット受信部12は、サーバ装置3から送信された返信パケットを受信する。この返信パケットは、要求パケットの通過した通信処理装置2のポートを介して送信されたものである。なお、後述するように、返信パケット受信部12は、サーバ装置3から送信されたすべての返信パケットを受信するわけではない。サーバ装置3から送信された返信パケットのうち、要求パケットの通過したポートのポート維持時間が経過した後に、通信処理装置2に送信された返信パケットは、通信処理装置2から情報処理装置1に対して送信されないからである。返信パケット受信部12は、受信を行うための受信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい(この場合には、返信パケット受信部12の外部に図示しない受信デバイスが存在することとなる)。また、返信パケット受信部12は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
ポート維持時間検出部13は、返信パケット受信部12が受信した返信パケットに基づいて、通信処理装置2のポート維持時間を検出する。本実施の形態におけるポート維持時間の検出は、返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち、一番長い待ち時間に基づいてなされる。ここで、「返信パケットに対応する待ち時間」とは、その返信パケットの送信を要求した要求パケットに含まれる待ち時間情報に対応した待ち時間のことである。また、「一番長い待ち時間に基づいて」とは、一番長い待ち時間をポート維持時間として検出してもよく、一番長い待ち時間とは異なる時間をポート維持時間として検出してもよい。「一番長い待ち時間とは異なる時間」とは、例えば、一番長い待ち時間に対して、情報処理装置1とサーバ装置3との間のパケット往復時間を考慮した時間などである。なお、パケット往復時間の考慮については、後述する実施の形態2で説明する。また、以下の説明において、「ポート維持時間」は、ポート維持時間検出部13によって検出されたポート維持時間を示す情報を指すこともある。
ポート維持時間検出部13が検出するポート維持時間は、通信処理装置2のポート維持時間そのものであってもよく、あるいは、通信処理装置2のポート維持時間よりも短い時間であってもよい。例えば、通信処理装置2のポート維持時間が2分である場合に、ポート維持時間検出部13は、通信処理装置2のポート維持時間を1分50秒と検出してもよい。なお、ポート維持時間検出部13が検出したポート維持時間は、パケットを定期的に送信する送信部(図示せず)に対してパケットを送信する周期として設定されてもよく、所定の記録媒体等に蓄積されてもよく、他の装置等に送信されてもよく、表示デバイス等に表示されてもよい。このように、検出されたポート維持時間の用途は問わない。
要求パケット送信制御部14は、返信パケット受信部12による返信パケットの受信の有無に基づいて、二分探索法を用いて、要求パケット送信部11による要求パケットの送信を制御する。要求パケット送信部11による要求パケットの送信の制御とは、例えば、要求パケット送信部11が送信する要求パケットに含まれる待ち時間情報の設定、要求パケット送信部11による要求パケットの送信タイミングの制御などである。より具体的には、要求パケット送信制御部14は、返信パケット受信部12による返信パケットの受信の有無に基づいて、二分探索法を用いて待ち時間を決定し、その決定した待ち時間に応じた待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御する。この処理の詳細については、後述する。
通信処理装置2は、情報処理装置1とサーバ装置3との間の通信に関する処理を行う。本実施の形態による通信処理装置2は、NAT機能を有するものであり、例えば、ルータと呼ばれるものである。本実施の形態による通信処理装置2は、情報処理装置1から送信されるパケットに含まれる送信元のアドレス情報(すなわち、情報処理装置1のアドレス情報)を、通信処理装置2のWAN側のアドレス情報に変換する。
具体的には、情報処理装置1から送信されるパケットに含まれるソース(送信元)アドレス(プライベートIPアドレスであり、アドレスAとする)、ソース(送信元)ポート番号(ポート番号Bとする)を、通信処理装置2のWAN側のグローバルIPアドレス(アドレスXとする)、ポート番号(ポート番号Yとする)に変換する。また、サーバ装置3から通信処理装置2のWAN側のアドレスX、ポート番号Yに送信されたパケットは、送信先のアドレスX、ポート番号Yが情報処理装置1のアドレスA、ポート番号Bに変換され、情報処理装置1に送信される。ここで、グローバルIPアドレスとは、ある情報処理装置が外部の装置(例えば、WAN(インターネットなど)に接続されている外部の装置など)と通信するためのアドレスである。したがって、一般にはWANで使用されるアドレスであるが、ある電子機器がNAT機能を有するルータを介してLAN(例えば、イントラネットなど)に接続されている装置と通信を行う場合に、そのLANで使用される
アドレスであってもよい。そのIPアドレスは、例えば、現在のいわゆるIPv4のアドレスであってもよく、あるいは、IPv6のアドレスなどの他のバージョンのアドレスであってもよい。
なお、通信処理装置2において、受信フィルタルールが設定されている場合には、その受信フィルタルールに基づいたパケットの受信が行われる。受信フィルタルールには、パケットの送信先のアドレス及びポート番号をそれぞれ、アドレスP、ポート番号Qとすると、例えば、通信処理装置2のLAN側からWAN側に対して、送信先のアドレス、ポート番号が、それぞれアドレスP、ポート番号Qであるパケットが送信された場合に、アドレスPからのパケットしか受信しないAddress Sensitiveフィルタ、ポート番号Qからのパケットしか受信しないPort Sensitiveフィルタ、フィルタが存在しないNoフィルタ(どのアドレス、どのポート番号からのパケットも受信する)がある。ここで、通信処理装置2がパケットを受信するとは、LAN側の情報処理装置1から送信されたパケットに対して割り当てた通信処理装置2のポートにおいて、WAN側からのパケットを受け付け、アドレス変換を行い、そのパケットをLAN側の情報処理装置1に対して送信することである。
上記従来例でも記載したように、この通信処理装置2のアドレス変換の行われる期間には、所定の制限がある。すなわち、アドレスA、ポート番号Bと、アドレスX、ポート番号Yとの間でのアドレス変換は、両者間で最後にアドレス変換が行われてから、通信処理装置2のポート維持時間が経過した時点で行われなくなる。したがって、そのポート維持時間が経過した後に、アドレスX、ポート番号Yに対して、通信回線4を介してパケットが送信されたとしても、通信処理装置2においてアドレス変換がなされず、情報処理装置1は、そのパケットを受信することはできない。
サーバ装置3は、要求パケット受信部31と、返信パケット送信部32と、返信パケット送信制御部33とを備える。
要求パケット受信部31は、情報処理装置1から通信処理装置2の所定のポートを介して送信された要求パケットを受信する。なお、要求パケット受信部31は、受信を行うための受信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい(この場合には、要求パケット受信部31の外部に図示しない受信デバイスが存在することとなる)。また、要求パケット受信部31は、ハードウェアによって実現されてもよく、あるいは受信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
返信パケット送信部32は、返信パケットを、要求パケット受信部31が受信し、その返信パケットの送信を要求した要求パケットの通過した通信処理装置2のポートに対して送信する。この返信パケットの送信は、後述する返信パケット送信制御部33の制御に基づいて行われる。この返信パケットは、例えば、UDPヘッダを有するパケットである。この返信パケットのペイロードには、例えば、要求パケット受信部31が受信した要求パケットを識別する情報(例えば、待ち時間情報や、その他の識別情報)が含まれていてもよい。なお、返信パケット送信部32は、送信を行うための送信デバイス(例えば、モデムやネットワークカードなど)を含んでもよく、あるいは含まなくてもよい(この場合には、返信パケット送信部32の外部に図示しない送信デバイスが存在することとなる)。また、返信パケット送信部32は、ハードウェアによって実現されてもよく、あるいは送信デバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
返信パケット送信制御部33は、要求パケット受信部31が受信した要求パケットに基づいて、返信パケット送信部32による返信パケットの送信を制御する。本実施の形態では、返信パケット送信制御部33は、要求パケットに含まれる待ち時間情報に基づいて、
返信パケットの送信を制御する。返信パケット送信制御部33は、要求パケットに含まれる待ち時間情報が、例えば、待ち時間を示す情報(例えば、待ち時間が2分であることを示す情報)である場合には、要求パケット受信部31が要求パケットを受信してから、その待ち時間情報の示す待ち時間(例えば2分)が経過した時に、返信パケットを送信するように返信パケット送信部32を制御し、要求パケットに含まれる待ち時間情報が、例えば、待ち時間と所定の関係を有する情報(例えば、待ち時間が1分58秒である場合に、それに2秒を足した2分を示す情報)である場合には、要求パケット受信部31が要求パケット受信してから、その待ち時間情報に応じた待ち時間(例えば1分58秒)が経過した時に、返信パケットを送信するように返信パケット送信部32を制御する。ここで、待ち時間が経過した時とは、待ち時間が経過した厳密な時点であってもよく、あるいは、その待ち時間が経過した厳密な時点から制御に関する時間などが経過した時点であってもよい。
次に、本実施の形態による情報処理システムの動作について、フローチャートを用いて説明する。図2のフローチャートは、本実施の形態による情報処理装置1の動作を示すフローチャートである。
(ステップS101)要求パケット送信制御部14は、要求パケット送信部11が送信する要求パケットに対応する待ち時間を設定する。ここで、待ち時間を設定するとは、例えば、所定のメモリ等に待ち時間を記録することなどである。
(ステップS102)要求パケット送信部11は、ステップS101、あるいは後述するステップS107で設定された待ち時間に応じた待ち時間情報を有する要求パケットを、サーバ装置3に送信する。
(ステップS103)返信パケット受信部12は、ステップS102で送信された要求パケットに対してサーバ装置3から送信された返信パケットを受信したかどうか判断する。そして、返信パケットを受信した場合には、ステップS104に進み、そうでない場合には、ステップS105に進む。
(ステップS104)返信パケット受信部12は、受信した返信パケットに基づいて、所定の受信処理を行う。ここで、所定の受信処理とは、例えば、受信した返信パケット、もしくは、その返信パケットに含まれる待ち時間情報をポート維持時間検出部13と、要求パケット送信制御部14とに渡すこと、または、受信した返信パケットに含まれる待ち時間情報を所定のメモリで記憶することなどである。
(ステップS105)要求パケット送信制御部14は、タイムアウトであるかどうか判断する。ここで、タイムアウトとは、要求パケット送信部11が要求パケットに対応する返信パケットを受信するはずのタイミングがすでに経過したことをいう。例えば、要求パケット送信部11が要求パケットを送信してから、その要求パケットに含まれる待ち時間情報に関する待ち時間が経過した時点でタイムアウトと判断してもよく、要求パケットが通信処理装置2からサーバ装置3に到達する時間や、返信パケットがサーバ装置3から通信処理装置2に到達する時間、あるいは何らかのトラブルによって返信パケットの送信が遅れる場合などを想定して、要求パケット送信部11が要求パケットを送信してから、その要求パケットに含まれる待ち時間情報に関する待ち時間に所定の時間(例えば、1,2秒など)を加算した時間が経過した時点でタイムアウトと判断してもよい。タイムアウトである場合には、ステップS106に進み、そうでない場合には、ステップS103に戻る。
(ステップS106)要求パケット送信制御部14は、ポート維持時間を検出するかどうか、すなわち、要求パケットの送信を終了するかどうか判断する。例えば、要求パケッ
ト送信部11が1回目に送信した要求パケットに対応して送信された返信パケットを返信パケット受信部12が受信した場合に、ポート維持時間を検出すると判断してもよく、要求パケットが所定の回数送信された後に、ポート維持時間を検出すると判断してもよく、要求パケット送信部11によって送信された要求パケットに含まれる待ち時間情報に応じた待ち時間と、その要求パケットよりも1つ前に送信された要求パケットに含まれる待ち時間情報に応じた待ち時間との差が、所定の値よりも小さくなった場合に、ポート維持時間を検出すると判断してもよく、要求パケット送信部11が1回目の要求パケットを送信してから所定の時間が経過した後に、ポート維持時間を検出すると判断してもよい。これらの具体例については、後述する。ポート維持時間を検出する場合には、その旨をポート維持時間検出部13に伝えてステップS108に進み、そうでない場合には、ステップS107に進む。
(ステップS107)要求パケット送信制御部14は、新たに送信する要求パケットに対応する待ち時間を、二分探索法を用いて設定する。そして、ステップS102に戻る。ここで、二分探索法を用いた待ち時間の設定とは、情報処理装置1において受信できた返信パケットに対応する待ち時間と、情報処理装置1において受信できなかった返信パケットに対応する待ち時間との中央の待ち時間を、次に送信する要求パケットの待ち時間として設定することである。このように二分探索法を用いた待ち時間の設定を行うことにより、情報処理装置1において受信可能な返信パケットに対応する待ち時間のうち、最大の待ち時間(ポート維持時間)を高速に探索することができる。二分探索法を用いた待ち時間の設定では、例えば、第1の待ち時間に対応する返信パケットを受信することができず、第2の待ち時間(第1の待ち時間よりも小さい時間とする)に対応する返信パケットを受信することができた場合に、第1の待ち時間と、第2の待ち時間との中央の待ち時間(「第3の待ち時間」とする)を、次に送信する要求パケットの待ち時間として設定する。そして、その第3の待ち時間に対応する返信パケットを受信できた場合には、第3の待ち時間と第1の待ち時間との中央の待ち時間を、次に送信する要求パケットの待ち時間として設定し、その第3の待ち時間に対応する返信パケットを受信できなかった場合には、第3の待ち時間と第2の待ち時間との中央の待ち時間を、次に送信する要求パケットの待ち時間として設定する、という処理を繰り返す。なお、この設定の処理の詳細については、後述する。
(ステップS108)ポート維持時間検出部13は、それまでに返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち、一番長い待ち時間に基づいて、ポート維持時間を検出する。そして、通信処理装置2のポート維持時間を検出する一連の処理は終了となる。
次に、図3のフローチャートを用いて、サーバ装置3の動作について説明する。
(ステップS201)要求パケット受信部31は、要求パケットを受信したかどうか判断する。そして、要求パケットを受信した場合には、ステップS202に進み、そうでない場合には、ステップS203に進む。
(ステップS202)返信パケット送信制御部33は、要求パケット受信部31が受信した要求パケットについて計時を開始する。例えば、返信パケット送信制御部33は、受信された要求パケットに含まれる待ち時間情報に応じた待ち時間を計時するためのタイマをスタートさせる。そして、ステップS201に戻る。
(ステップS203)返信パケット送信制御部33は、返信パケットを送信するタイミングであるかどうか判断する。ここで、返信パケットを送信するタイミングであるかどうかは、例えば、ステップS202における計時の開始から、待ち時間情報に応じた待ち時間が経過したかどうかによって判断される。そして、返信パケットを送信するタイミング
である場合には、ステップS204に進み、そうでない場合には、ステップS201に戻る。
(ステップS204)返信パケット送信部32は、返信パケットを送信する。この返信パケットには、例えば、要求パケット受信部31が受信した要求パケットに含まれる待ち時間情報などが含まれる。そして、ステップS201に戻る。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、本実施の形態による情報処理システムの動作について、具体例を用いて説明する。以下の具体例において、ポート維持時間検出部13が、要求パケットが4回送信された後に、ポート維持時間の検出を行う場合について説明する。なお、以下の具体例1では、ポート維持時間検出部13が、要求パケット送信部11が1回目に送信した要求パケットに対応して送信された返信パケットを返信パケット受信部12が受信した場合に、その要求パケットの待ち時間情報に応じた待ち時間に基づいて、ポート維持時間を検出する場合について説明する。また、以下の具体例2では、要求パケット送信制御部14が、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信され、かつ、それまでに返信パケット受信部12によって返信パケットが受信されないことがなかった場合に、その受信された返信パケットに対応する待ち時間よりも長い待ち時間に応じた待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御する場合について説明する。
図4(a)、(b)は、以下の具体例における要求パケットと、返信パケットとの構成を示す図である。要求パケット、返信パケットは、ともにUDPヘッダを有しており、ペイロードには、待ち時間情報が含まれている。返信パケットに含まれる待ち時間情報は、その返信パケットの送信を要求した要求パケットのペイロードに含まれている待ち時間情報と同じものであるとする。
図5は、以下の具体例における要求パケットと、返信パケットとが通過するポートについて説明するための図である。図5で示されるように、情報処理装置1から送信される要求パケットは、ポートP1から送信される。そして、その要求パケットは、通信処理装置2のWAN側のポートP2を通過し、サーバ装置3のポートP3で受信される。
ここで、要求パケットが通過する通信処理装置2のポートP2は、そのポートP2を初回の要求パケットが通過する時に、通信処理装置2において新たに割り当てられるものである。すなわち、他の情報処理装置やサーバ装置との通信で用いられていない通信処理装置2のポートを用いて要求パケットの送信を行うことが大切である。そうでなければ、例えば、ポートP2がそれまでに他の用途のために用いられており、要求パケットの送信から返信パケットの送信までに、ポートP2を介して他の通信が行われた場合には、正確なポート維持時間の検出を行うことができないからである。なお、ポートP2が、初回の要求パケットが通過する時に、通信処理装置2において新たに割り当てられるものであるようにするためには、例えば、情報処理装置1のポートP1として、新たなポート(それまでに他の通信で用いていないポート)を用いればよい。
情報処理装置1から送信された要求パケットに対応して送信される返信パケットは、要求パケットを受信したポートP3から送信される。ポート維持時間が経過していない場合には、その返信パケットは、通信処理装置2のポートP2を通過して情報処理装置1のポートP1で受信される。一方、ポート維持時間が経過している場合には、通信処理装置2から情報処理装置1に返信パケットは送信されない。図5からわかるように、本実施の形態による情報処理システムでは、通信処理装置2の1つのポートP2を、要求パケット、
及び返信パケットが通過する。なお、ポートP2に関するポート維持時間が経過した後に、ポートP1からポートP3に対して要求パケットが送信された場合には、通信処理装置2において新たなポート(例えば、ポートP2と異なるポートP4など)が割り当てられることもあり、あるいは、再度ポートP2が用いられることもある。これは、通信処理装置2の仕様に依存する。ただし、いずれの場合であっても処理自体に大きな違いはないので(ポートP2がポートP4などに変わるだけであるので)、説明の便宜上、ポート維持時間の経過後に情報処理装置1のポートP1から送信された要求パケットに対して、ポートP2が割り当てられる場合について説明する。
また、情報処理装置1、通信処理装置2、サーバ装置3の各IPアドレスは、以下のとおりであるとする。なお、通信処理装置2のIPアドレスは、WAN側のアドレスである。
情報処理装置1:192.168.0.1
通信処理装置2:202.132.10.6
サーバ装置3:155.32.10.10
[具体例1]
図6は、この具体例における図2のフローチャートのステップS107の処理を示すフローチャートである。
(ステップS301)要求パケット送信制御部14は、直前に送信された要求パケットに対応する返信パケットを返信パケット受信部12が受信したかどうか判断する。すなわち、直前のステップS103において返信パケットを受信したのか、それとも、ステップS105においてタイムアウトとなったのかについて判断する。そして、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信された場合には、ステップS302に進み、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信されなかった場合には、ステップS303に進む。
(ステップS302)要求パケット送信制御部14は、直前に受信された返信パケットに対応する待ち時間と、それまでに返信パケット受信部12によって受信されなかった返信パケットに対応する待ち時間のうち一番短い待ち時間との中央の待ち時間に応じた待ち時間を、次に送信する要求パケットの待ち時間として設定する。そして、ステップS107の処理は終了となる。
なお、この具体例では、1回目に送信された要求パケットに対応して送信された返信パケットが受信された場合に、ポート維持時間の検出が行われる。したがって、ステップS107における判断(図6のフローチャート)において、返信パケットが受信されたと判断された場合には、それ以前に返信パケットの不受信があったことになるので、過去に返信パケットの不受信があったかどうかを判断せずにステップS302の処理を行うことになる(具体例2の図9のフローチャート参照)。
(ステップS303)要求パケット送信制御部14は、過去に、すなわち1回目の要求パケットを送信してからその判断(その時点のステップS303の判断)までに、送信された返信パケットが返信パケット受信部12において受信されているかどうか判断する。そして、それまでに返信パケット受信部12による1以上の返信パケットの受信があった場合には、ステップS304に進み、それまでに返信パケット受信部12による返信パケットの受信がなかった場合には、ステップS305に進む。
(ステップS304)要求パケット送信制御部14は、直前に受信されなかった返信パケットに対応する待ち時間と、それまでに返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間との中央の待ち時間を、次に送信
する要求パケットの待ち時間として設定する。そして、ステップS107の処理は終了となる。
(ステップS305)要求パケット送信制御部14は、直前に受信されなかった返信パケットに対応する待ち時間の半分の待ち時間を、次に送信する要求パケットの待ち時間として設定する。そして、ステップS107の処理は終了となる。
ここで、ある待ち時間と、他の待ち時間との中央の待ち時間とは、両者の待ち時間の厳密な意味での中央の待ち時間であってもよく、あるいは、両者の待ち時間の中央近傍の待ち時間であってもよい。後者としては、例えば、両者の待ち時間の中央の待ち時間について、1秒より小さな位(すなわち、0.1秒単位の位)を四捨五入した待ち時間などがある。
この具体例において、通信処理装置2のポート維持時間は、1分20秒であるとして説明する。まず、ポート維持時間を検出するタイミング(例えば、情報処理装置1の初回の起動時や、通信処理装置2を取り替えたことなどに起因するリセット時など)であると判断すると、情報処理装置1の要求パケット送信制御部14は、待ち時間を2分に設定する(ステップS101)。すると、要求パケット送信部11は、待ち時間が2分であることを示す待ち時間情報を構成し、その待ち時間情報をペイロードに有するUDPの要求パケットをサーバ装置3のIPアドレス155.32.10.10のポートP3に向けて送信する(ステップS102)。その後、情報処理装置1では、その要求パケットに対応する返信パケットが受信されるか、タイムアウトとなるまで、返信パケットの受信を待つ処理が行われる(ステップS103、S105)。
情報処理装置1から送信された要求パケットは、通信処理装置2において、ソースアドレスが192.168.0.1から202.132.10.6に変換され、ソースポートがポートP1からポートP2に変換され、サーバ装置3のポートP3に送信される。その要求パケットは、サーバ装置3の要求パケット受信部31で受信される(ステップS201)。そして、返信パケット送信制御部33において、タイマがスタートされる(ステップS202)。そのタイマが要求パケットに含まれていた待ち時間情報の示す待ち時間である2分を経過すると、返信パケット送信制御部33は、返信パケットを送信するタイミングであると判断し(ステップS203)、返信パケット送信部32に、要求パケット受信部31が受信した要求パケットに含まれる待ち時間情報を有する返信パケットを、要求パケットの送信元である通信処理装置2のIPアドレス202.132.10.6、ポートP2に送信する旨の指示を渡す。すると、返信パケット送信部32は、通信処理装置2のポートP2に対して、待ち時間「2分」を示す待ち時間情報を有する返信パケットを送信する(ステップS204)。
通信処理装置2のポート維持時間は「1分20秒」であるため、サーバ装置3から送信された返信パケットは、通信処理装置2においてアドレス変換されず、その返信パケットは情報処理装置1に送信されない。したがって、情報処理装置1の要求パケット送信制御部14は、待ち時間「2分」を示す待ち時間情報を有する要求パケットが送信されてから、その待ち時間である2分に5秒(この5秒は、要求パケット等の送信時間等を考慮するためのものである)を加算した2分5秒が経過した時点で、タイムアウトであると判断する(ステップS105)。この場合には、要求パケットが4回送信されておらず、また、1回目に送信した要求パケットに対応して送信された返信パケットを返信パケット受信部12が受信していないため、ポート維持時間を検出しないと判断される(ステップS106)。また、この場合には、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信されず(ステップS301)、かつ、それまでに返信パケット受信部12による返信パケットの受信がない(ステップS303)状況であるため、要
求パケット送信制御部14は、その受信されなかった返信パケットに対応する待ち時間「2分」の半分の待ち時間「1分」を示す待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御する。具体的には、要求パケット送信制御部14は、1分の待ち時間を設定する(ステップS305、S107)。
すると、上記した処理と同様にして、再度、待ち時間「1分」を示す待ち時間情報を有する要求パケットが、通信処理装置2のポートP2を介してサーバ装置3に送信される(ステップS102)。そして、サーバ装置3が要求パケットを受信してから1分後に返信パケットがサーバ装置3から送信される。
その返信パケットは、通信処理装置2において、アドレス変換され、情報処理装置1に送信される。そして、その返信パケットは返信パケット受信部12で受信され(ステップS103)、その返信パケットに含まれる待ち時間情報の示す待ち時間「1分」がポート維持時間検出部13と、要求パケット送信制御部14とに渡される。なお、ポート維持時間検出部13は、受け取った待ち時間「1分」を図示しない記憶手段で記憶しておくものとする(ステップS104)。
この場合にも、要求パケットが4回送信されていないため、ポート維持時間を検出しないと判断される(ステップS106)。また、この場合には、1分の待ち時間に対応する返信パケットが返信パケット受信部12によって受信され(ステップS301)、かつ、2分の待ち時間に対応する返信パケットが受信されていないため、その受信された返信パケットに対応する待ち時間「1分」と、それまでに返信パケット受信部12によって受信されなかった返信パケットに対応する待ち時間「2分」の中央の待ち時間「1分30秒」を待ち時間として設定する(ステップS302、S107)。そして、上記した処理と同様にして、再度、待ち時間「1分30秒」を示す待ち時間情報を有する要求パケットが、通信処理装置2のポートP2を介してサーバ装置3に送信される(ステップS102)。そして、サーバ装置3が要求パケットを受信してから1分30秒後に返信パケットがサーバ装置3から送信される。
通信処理装置2のポート維持時間は「1分20秒」であるため、サーバ装置3から送信された返信パケットは、通信処理装置2においてアドレス変換されず、その返信パケットは情報処理装置1に送信されない。したがって、情報処理装置1の要求パケット送信制御部14は、タイムアウトであると判断する(ステップS105)。この場合にも、要求パケットが4回送信されていないため、ポート維持時間を検出しないと判断される(ステップS106)。
また、この場合には、1分30秒の待ち時間に対応する返信パケットが返信パケット受信部12によって受信されず(ステップS301)、それまでに返信パケット受信部12による1以上の返信パケットの受信があったため(ステップS303)、その受信されなかった返信パケットに対応する待ち時間「1分30秒」と、それまでに返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間「1分」との中央の待ち時間「1分15秒」を待ち時間として設定する(ステップS304、S107)。そして、上記した処理と同様にして、再度、待ち時間「1分15秒」を示す待ち時間情報を有する要求パケットが、通信処理装置2のポートP2を介してサーバ装置3に送信される(ステップS102)。そして、サーバ装置3が要求パケットを受信してから1分15秒後に返信パケットがサーバ装置3から送信される。
通信処理装置2のポート維持時間は「1分20秒」であるため、サーバ装置3から送信された返信パケットは、通信処理装置2においてアドレス変換され、その返信パケットは情報処理装置1に送信される。そして、その返信パケットは返信パケット受信部12で受
信され(ステップS103)、その返信パケットに含まれる待ち時間情報の示す待ち時間「1分15秒」がポート維持時間検出部13と、要求パケット送信制御部14とに渡される。なお、ポート維持時間検出部13は、受け取った待ち時間「1分15秒」を図示しない記憶手段で記憶しておくものとする(ステップS104)。
この時点では、要求パケットがすでに4回送信されているため、要求パケット送信制御部14は、ポート維持時間を検出するタイミングであると判断する(ステップS106)。そして、ポート維持時間検出部13は、それまでに返信パケット受信部12から受け取った待ち時間のうち、一番長い待ち時間である「1分15秒」を、通信処理装置2のポート維持時間として検出する(ステップS108)。
なお、その後、その検出されたポート維持時間は、例えば、所定の記録媒体(図示せず)で記憶され、サーバ装置3への定期的なパケットの送信周期として用いられる。ここで、検出されたポート維持時間を用いるのは、情報処理装置1であってもよく、あるいは、通信処理装置2のLAN側に接続された他の情報処理装置等であってもよい。また、そのポート維持時間を用いて定期的に送信されるパケットの送信先は、サーバ装置3であってもよく、あるいは、他のサーバ装置等であってもよい。また、検出されたポート維持時間よりも短い時間を、定期的に送信されるパケットの送信周期としてもよい。
図7は、この具体例における要求パケットの送信と、返信パケットの受信(あるいは不受信)について説明するための図である。この場合には、待ち時間「2分」、「1分」、「1分30秒」、「1分15秒」のそれぞれに対応する要求パケットが送信され、そのうち、待ち時間「1分」、「1分15秒」に対応する返信パケットを受信することができたため、ポート維持時間が1分15分と検出された。
なお、この具体例では、通信処理装置2のポート維持時間を「1分20秒」であるとして説明したが、通信処理装置2のポート維持時間が「5分」である場合には、1回目に送信した要求パケットに対応する返信パケットが、情報処理装置1において受信されることになる。その場合には、1回目の返信パケットが受信された時点において、ポート維持時間を検出するタイミングであると判断され(ステップS106)、ポート維持時間が2分と検出される(ステップS108)。図8は、その場合の要求パケットの送信と、返信パケットの受信について説明するための図である。
[具体例2]
図9は、この具体例における図2のフローチャートのステップS107の処理を示すフローチャートである。なお、ステップS401、S402以外の処理は、図6のフローチャートの説明と同様であり、その説明を省略する。
(ステップS401)要求パケット送信制御部14は、過去に、すなわち1回目の要求パケットを送信してからその判断までに、送信された返信パケットを返信パケット受信部12において受信できないことがあったかどうか判断する。そして、それまでに返信パケット受信部12によって返信パケットが受信されないことがあった場合には、ステップS302に進み、それまでに返信パケット受信部12によって返信パケットが受信されないことがなかった場合には、ステップS402に進む。
(ステップS402)要求パケット送信制御部14は、直前に受信された返信パケットに対応する待ち時間よりも長い待ち時間を、次に送信する要求パケットの待ち時間として設定する。そして、ステップS107の処理は終了となる。
ここで、ある待ち時間よりも長い待ち時間としては、例えば、ある待ち時間に所定の時
間(例えば、2分など)を加算した待ち時間であってもよく、ある待ち時間に1より大きい所定の値を掛けた時間(例えば、ある待ち時間の2倍など)であってもよい。
この具体例では、要求パケットの送信に関する処理や、返信パケットの受信、不受信に関する処理は、具体例1と同様であるため、それらの処理の詳細な説明を省略し、図10を用いて説明する。図10は、この具体例において、要求パケットの送信と、返信パケットの受信(あるいは不受信)について説明するための図である。なお、この具体例では、通信処理装置2のポート維持時間が「5分30秒」であるとする。
また、この具体例では、要求パケット送信制御部14が、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信され、かつ、それまでに返信パケット受信部12によって返信パケットが受信されないことがなかった場合に、その受信された返信パケットに対応する待ち時間に2分を加算した待ち時間に対応する要求パケットを送信するように要求パケット送信部11を制御する場合について説明する。
図10で示すように、この具体例でも、まず、2分の待ち時間を示す待ち時間情報を有する要求パケットが送信されたとする(ステップS102)。その要求パケットに対応して送信された返信パケットが返信パケット受信部12で受信されたとする(ステップS103)。すると、要求パケット送信制御部14は、待ち時間「2分」に対応する返信パケットが受信され、1回目の返信パケットの送信であるため、それまでに返信パケットが受信されないことがないと判断し(ステップS301、S401)、受信された返信パケットに対応する待ち時間「2分」に2分を加算した4分の待ち時間を示す待ち時間情報を有する要求パケットを送信するように制御する(ステップS402、S107、S102)。
その要求パケットに対応して送信された返信パケットが返信パケット受信部12で受信されたとする(ステップS103)。すると、要求パケット送信制御部14は、待ち時間「4分」に対応する返信パケットが受信され、1回目、2回目に送信した要求パケットに対応して送信された返信パケットがすべて受信されているため、それまでに返信パケットが受信されないことがないと判断し(ステップS301、S401)、受信された返信パケットに対応する待ち時間「4分」に2分を加算した6分の待ち時間を示す待ち時間情報を有する要求パケットを送信するように制御する(ステップS402、S107、S102)。
その要求パケットに対応して送信された返信パケットは、情報処理装置1に送信されない。この場合には、通信処理装置2におけるポート維持時間が経過しているからである。したがって、情報処理装置1の要求パケット送信制御部14は、タイムアウトであると判断する(ステップS105)。
この場合には、6分の待ち時間に対応する返信パケットが返信パケット受信部12によって受信されず(ステップS301)、それまでに返信パケット受信部12による1以上の返信パケットの受信があったため(ステップS303)、その受信されなかった返信パケットに対応する待ち時間「6分」と、それまでに返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間「4分」との中央の待ち時間「5分」を待ち時間として設定する(ステップS304、S107)。そして、上記した処理と同様にして、再度、待ち時間「5分」を示す待ち時間情報を有する要求パケットが、通信処理装置2のポートP2を介してサーバ装置3に送信される(ステップS102)。そして、サーバ装置3が要求パケットを受信してから5分後に返信パケットがサーバ装置3から送信される。
その返信パケットは、通信処理装置2においてアドレス変換され、情報処理装置1に送信される。そして、その返信パケットは返信パケット受信部12で受信され(ステップS103)、その返信パケットに含まれる待ち時間情報の示す待ち時間「5分」がポート維持時間検出部13と、要求パケット送信制御部14とに渡される。なお、ポート維持時間検出部13は、受け取った待ち時間「5分」を図示しない記憶手段で記憶しておくものとする(ステップS104)。
この時点では、要求パケットがすでに4回送信されているため、要求パケット送信制御部14は、ポート維持時間を検出するタイミングであると判断する(ステップS106)。そして、ポート維持時間検出部13は、それまでに返信パケット受信部12から受け取った待ち時間のうち、一番長い待ち時間である「5分」を、通信処理装置2のポート維持時間として検出する(ステップS108)。
以上のように、本実施の形態による情報処理システムによれば、二分探索法を用いて要求パケットの送信を制御し、ポート維持時間を検出することができ、効率的なポート維持時間の検出を行うことができる。
例えば、通信処理装置2のポート維持時間が5分30秒である場合に、二分探索法を用いた場合には、図10を用いて説明したように、返信パケットの受信から次の要求パケットの送信までの時間を無視すると、ポート維持時間が5分であることを、はじめの要求パケットの送信から17分で検出することができる。なお、この場合のポート維持時間の誤差は1分である。最後に送信された要求パケットに対応する待ち時間とそれよりも1回前に送信された要求パケットに対応する待ち時間との差が1分だからである。一方、待ち時間を2分から1分ごとに順番に増加させながら要求パケットを送信し、要求パケットに対応して送信された返信パケットを受信できなかった時点において、ポート維持時間の検出を行う場合には、待ち時間が2分、3分、4分、5分、6分の5個のパケットが送信されることとなり、ポート維持時間の検出までに20分かかることとなる。この場合のポート維持時間の誤差も1分である。待ち時間を1分ごとに増加させているからである。このように、二分探索法を用いることにより、ポート維持時間の検出を効率的に行いうることがわかる。
また、ポート維持時間を検出するタイミングを適切に設定することにより、必要十分な精度でポート維持時間を検出することができる。例えば、厳密なポート維持時間を検出したい場合には、ポート維持時間を検出するまでに送信する要求パケットの個数を大きい値に設定し、概略的なポート維持時間の検出でよい場合には、ポート維持時間を検出するまでに送信する要求パケットの個数を少なくしてもよい。
なお、本実施の形態では、図4(a)で示されるように、要求パケットに待ち時間のみが含まれる構成について説明したが、図4(c)で示されるように、要求パケットに待ち時間と識別情報とが含まれており、要求パケットに対応して送信される返信パケットには、図4(d)で示されるように、要求パケットに含まれていた識別情報が含まれるようにしてもよい。この場合には、返信パケットを受信した情報処理装置1は、待ち時間情報と識別情報との対応を示す情報(情報処理装置1あるいは情報処理装置1がアクセス可能な装置において、あらかじめ保持されているものとする)を参照することにより、その返信パケットに対応する待ち時間を知ることができる。
(実施の形態2)
本発明の実施の形態2による情報処理システムについて、図面を参照しながら説明する。本実施の形態による情報処理システムでは、要求パケット、及び返信パケットの送信時間を考慮してポート維持時間の検出を行うものである。
図11は、本実施の形態による情報処理システムの構成を示すブロック図である。図11において、本実施の形態による情報処理システムは、情報処理装置5と、通信処理装置2と、サーバ装置3とを備える。通信処理装置2、サーバ装置3は実施の形態1において説明したものと同様のものであり、それらの説明を省略する。情報処理装置5は、実施の形態1における情報処理装置1に対応するものであるが、本実施の形態では、情報処理装置5は、要求パケット及び返信パケットの送信時間を考慮してポート維持時間の検出を行う。
情報処理装置5は、要求パケット送信部11と、返信パケット受信部12と、要求パケット送信制御部14と、ポート維持時間検出部51と、パケット往復時間測定部52とを備える。なお、要求パケット送信部11、返信パケット受信部12、要求パケット送信制御部14に関する構成及び動作は、ポート維持時間の検出が要求パケット及び返信パケットの送信時間を考慮して行われる以外、実施の形態1におけるものと同様のものであり、その説明を省略する。
ポート維持時間検出部51は、情報処理装置5と、サーバ装置3との間のパケットの往復時間に基づいて、ポート維持時間の検出を行う。それ以外の処理は、実施の形態1によるポート維持時間検出部13と同様であり、その説明を省略する。
パケット往復時間測定部52は、返信パケットの即時の送信を要求する要求パケットを要求パケット送信部11に送信させ、その要求パケットの送信から、その要求パケットに応じて送信された返信パケットの返信パケット受信部12による受信までの時間であるパケット往復時間を測定する。パケット往復時間測定部52によって測定されたパケット往復時間は、前述のように、ポート維持時間の検出において用いられる。
次に、本実施の形態による情報処理装置5の動作について、図12のフローチャートを用いて説明する。
(ステップS501)パケット往復時間測定部52は、パケット往復時間を測定するための要求パケットを送信するように要求パケット送信部11を制御する。そして、要求パケット送信部11は、このパケット往復時間測定部52による制御に応じて、要求パケットを送信する。ここで、パケット往復時間を測定するための要求パケットとは、返信パケットの即時の送信を要求する要求パケットであり、例えば、待ち時間「0秒」を示す待ち時間情報を有する要求パケットである。なお、パケット往復時間測定部52は、要求パケットが送信されてから、パケット往復時間を測定するための計時を開始する。
(ステップS502)返信パケット受信部12は、ステップS501で送信された要求パケットに対応してサーバ装置3から送信された返信パケットを受信したかどうか判断する。そして、受信した場合には、受信した旨をパケット往復時間測定部52に伝えてステップS503に進み、そうでない場合には、受信するまでステップS502の処理を繰り返す。
(ステップS503)パケット往復時間測定部52は、ステップS502において返信パケットが受信されると、ステップS501において開始した計時をストップし、その時の計時の値(すなわち、要求パケットの送信から返信パケットの受信までの時間)をパケット往復時間とする。
(ステップS504)情報処理装置5は、パケット往復時間測定部52によって測定されたパケット往復時間を用いて、ポート維持時間の検出を行う。このポート維持時間の検出の処理は、ポート維持時間検出部51によるポート維持時間の検出処理(ステップS1
08)において、パケット往復時間を考慮したポート維持時間の検出がなされる以外、実施の形態1における図2で示されるフローチャートの処理と同様であり、その説明を省略する。
なお、図12のフローチャートでは、ポート維持時間の検出(ステップS504)の処理よりも以前に、パケット往復時間を測定する場合について説明したが、このパケット往復時間の測定は、図2のフローチャートのステップS108の処理よりも以前に行われるのであれば、その測定のタイミングを問わない。例えば、「0秒」以外の待ち時間を示す待ち時間情報を有する要求パケットの送信の後に、パケット往復時間の測定を行ってもよい。
次に、本実施の形態による情報処理装置5の動作について、具体例を用いて説明する。
パケット往復時間測定部52は、「0秒」の待ち時間を示す待ち時間情報を有する要求パケットをサーバ装置3に送信するように要求パケット送信部11に指示を渡す。すると、要求パケット送信部11は、指示された待ち時間情報を有する要求パケットを、通信処理装置2を介してサーバ装置3に送信する(ステップS501)。パケット往復時間測定部52は、その要求パケットが送信されたタイミングで、タイマをスタートさせ、計時を開始する。
送信された要求パケットは、実施の形態1の具体例における説明と同様にしてサーバ装置3に送信され、要求パケット受信部31で受信される(ステップS201)。返信パケット送信制御部33は、受信された要求パケットに対応する待ち時間が「0秒」であるため、即時の返信を行うと判断し(ステップS202、S203)、返信パケット送信部32に、要求パケットの送信元である通信処理装置2に返信パケットを送信する旨の指示を渡す。その指示に応じて、返信パケット送信部32は、ペイロードに待ち時間「0秒」を示す待ち時間情報を有する返信パケットを通信処理装置2に送信する(ステップS204)。その返信パケットは、通信処理装置2においてアドレス変換され、情報処理装置5に送信される。そして、返信パケット受信部12は、その返信パケットを受信し(ステップS502)、返信パケットを受信した旨をパケット往復時間測定部52に渡す。パケット往復時間測定部52は、要求パケットの送信時にスタートさせたタイマをストップさせ、そのタイマの値をパケット往復時間とする(ステップS503)。ここでは、パケット往復時間が「1秒」であると測定されたものとする。パケット往復時間測定部52は、その測定したパケット往復時間「1秒」を、ポート維持時間検出部51に渡す。
この後、情報処理装置5は、実施の形態1の具体例と同様にして、要求パケットを送信し、ポート維持時間の検出を行う。図13は、この具体例における要求パケットの送信と、返信パケットの受信(あるいは不受信)について説明するための図である。図13からもわかるように、この具体例では、2分の待ち時間から出発し、要求パケット送信部11によって送信された要求パケットに含まれる待ち時間情報に応じた待ち時間と、その要求パケットよりも1つ前に送信された要求パケットに含まれる待ち時間情報に応じた待ち時間との差が1秒以下になった場合に、要求パケットの送信を終了し、ポート維持時間の検出を行うものとする。
この具体例では、図13で示されるように、1分17秒の待ち時間に対応する要求パケットを送信した後に、その要求パケットに対応する返信パケットを返信パケット受信部12が受信したとする。その後、1分18秒の待ち時間に対応する要求パケットを送信した後に、その要求パケットに対応する返信パケットが受信されず、タイムアウトとなった時点で、ポート維持時間を検出するタイミングであると判断され、ポート維持時間の検出が行われる。
ポート維持時間検出部51は、返信パケット受信部12で受信された返信パケットに対応する待ち時間のうち、一番長い待ち時間「1分17秒」にパケット往復時間「1秒」を加算した「1分18秒」を、通信処理装置2のポート維持時間として検出する(ステップS108)。
ここで、図14を用いて通信処理装置2のポート維持時間が、返信パケット受信部12で受信された返信パケットに対応する待ち時間のうち、一番長い待ち時間と、パケット往復時間とを加算した時間になることについて説明する。図14は、要求パケットの送信から、返信パケットの受信までの時間を示す図である。なお、図14において、情報処理装置5による要求パケットの送信から、その要求パケットが通信処理装置2を通過するまでの時間、及び返信パケットが通信処理装置2を通過してから、その返信パケットが情報処理装置5で受信されるまでの時間は、無視可能なぐらい小さいものとしている。
図14において、要求パケットが送信され、通信処理装置2を通過してから、サーバ装置3において要求パケットが受信されるまでの時間を「時間A」とする。サーバ装置3が要求パケットを受信してから、要求パケットに対応する待ち時間だけ経過した時点で返信パケットを送信する場合には、サーバ装置3による要求パケットの受信から返信パケットの送信までが待ち時間となる。また、返信パケットが送信されてから、その返信パケットが通信処理装置2を通過し、情報処理装置5で受信されるまでの時間を「時間B」とする。すると、図14で示される場合には、通信処理装置2のポートP2は、「待ち時間+時間A+時間B」の期間だけ維持されていたこととなる。ここで、時間Aと時間Bとを加算したものがパケット往復時間であるので、受信できた返信パケットに対応する一番長い待ち時間にパケット往復時間を加算した時間がポート維持時間となる。
以上のように、本実施の形態による情報処理システムでは、通信処理装置2と、サーバ装置3との間におけるパケットの往復時間(実際に測定しているのは、情報処理装置5と、サーバ装置3との間のパケットの往復時間)を考慮してポート維持時間を検出することができるため、より厳密なポート維持時間を検出することができる。
なお、本実施の形態では、ポート維持時間検出部51によるポート維持時間の検出処理時にパケット往復時間を考慮する場合について説明したが、これは一例であって、測定されたパケット往復時間に基づいて、ポート維持時間が検出されればよい。すなわち、ポート維持時間を検出するいずれかの過程においてパケット往復時間が用いられればよく、例えば、送信する要求パケットに含まれる待ち時間情報を、パケット往復時間を用いて変更してもよく、サーバ装置3において、パケット往復時間を用いて返信パケットを送信するタイミングを変更してもよい。例えば、30秒の待ち時間を示す待ち時間情報を有する要求パケットを送信する場合に、その待ち時間から、パケット往復時間(1秒とする)を引いた29秒の待ち時間を示す待ち時間情報を有する要求パケットを送信し、その要求パケットに対応して送信された返信パケットを受信できた場合に、その返信パケットに対応する待ち時間が30秒であるとして、ポート維持時間の検出を行ってもよい。
また、本実施の形態では、ポート維持時間の検出と、パケット往復時間の測定とを同一の装置で行う場合について説明したが、両者を異なった装置において行ってもよい。そして、一方の装置で検出されたパケット往復時間を用いて、他方の装置においてポート維持時間の検出を行ってもよい。
また、上記各実施の形態では、要求パケットに待ち時間情報が含まれる場合について説明したが、待ち時間情報に代えて、返信パケットを送信する時刻を示す時刻情報が要求パケットに含まれてもよい。例えば、要求パケットを送信する時刻から、所定の待ち時間だけ経過した時刻を示す時刻情報を有する要求パケットがサーバ装置に送信され、その要求
パケットに対応して、要求パケットに含まれる時刻情報の示す時刻にサーバ装置から返信パケットが送信されることによって、上記各実施の形態と同様にして、ポート維持時間の検出を行うことができる。ここで、この場合のポート維持時間の検出では、例えば、返信パケット受信部によって受信された返信パケットに対応する要求パケットが送信されてから、その返信パケットが受信されるまでの時間のうち、一番長い時間がポート維持時間として検出される。なお、時刻情報を有する要求パケットを用いる場合には、例えば、タイムサーバ等を用いることにより、情報処理装置1とサーバ装置3との間での時計の同期を取る必要がある。このように、要求パケット送信制御部14は、返信パケット受信部12による返信パケットの受信の有無に基づいて、二分探索法を用いて、要求パケット送信部11による要求パケットの送信を制御するものであってもよく、ポート維持時間検出部13、51は、返信パケット受信部12が受信した返信パケットに基づいて、通信処理装置2のポート維持時間を検出するものであってもよい。また、返信パケット送信制御部33は、要求パケット受信部31が受信した要求パケットに基づいて、返信パケットの送信を制御するものであってもよい。
また、上記各実施の形態では、図5で示されるように、通信処理装置2の一つのポートP2のみを用いて要求パケットの送信を行う場合について説明したが、要求パケットが送信されるごとに、その要求パケットが通過する通信処理装置2のポートが変更されてもよい。すなわち、要求パケットを通信処理装置2の1つのポートを介して送信するとは、一度に用いる通信処理装置2のポートが1つであるということである。具体的には、複数の要求パケットを送信する場合に、そのすべての要求パケットを通信処理装置2の単一のポートを介して送信することであってもよく、あるいは、複数の要求パケットを、通信処理装置2の2以上のポートを介して送信することであってもよい。ただし、後者の場合であっても、一度に用いるポートは1つであるため、2以上のポートを用いて同時に2以上の要求パケットを送信するようなことは行わない。
また、上記各実施の形態において、要求パケットと返信パケットとがUDPのパケットである場合について説明したが、要求パケットと返信パケットとはTCPのパケットであってもよく、ポート維持時間の検出が可能なパケットであれば、それら以外のパケットであってもよい。
また、上記各実施の形態において、返信パケットの送信タイミングを、タイマを用いて計時する場合について説明したが、タイマに代えて、例えば、時計やクロック信号等を用いてもよく、その計時の手段は問わない。
また、上記各実施の形態では、要求パケット、返信パケットのペイロードに待ち時間情報等の情報が含まれている場合について説明したが、それらのパケットの構成は、上記説明に限定されるものではなく、その他の構成であってもよい。また、返信パケットのペイロードには、意味のある情報が含まれていなくてもよい(すなわち、ダミーパケットであってもよい)。例えば、要求パケット送信部11が要求パケットを送信してから、対応する待ち時間が経過した時に、ダミーの返信パケットを受信することができた場合には、返信パケットを受信したと判断し、返信パケットを受信することができなかった場合には、返信パケットを受信できなかったと判断してもよい。
また、例えば、情報処理装置とサーバ装置とにおいて、二分探索法の同一のアルゴリズムを有している場合には、情報処理装置からサーバ装置に送信する要求パケットに、待ち時間等が含まれておらず、返信パケットの送信間隔を増やすのか、減らすのかを示す情報が含まれており、その情報に基づいて、サーバ装置において返信パケットの送信のタイミングを判断し、返信パケットを送信してもよい。具体的には、図7において、1回目の要求パケットでは、ポート維持時間の検出を開始する旨の情報が含まれており、その要求パ
ケットに対応して、サーバ装置は、その要求パケットの受信から2分後に返信パケットを送信する。その返信パケットが情報処理装置で受信されなかったとすると、返信パケットの送信間隔を減らす旨の情報を含む要求パケットがサーバ装置に送信される。すると、その要求パケットの受信から1分後に返信パケットが送信される。このような処理が繰り返されることにより、要求パケットの送信と、返信パケットの送信とが行われ、ポート維持時間が検出されてもよい。
また、上記各実施の形態において、要求パケット送信制御部14は、例えば、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信されず、かつ、それまでに返信パケット受信部12による1以上の返信パケットの受信があった場合に、その受信されなかった返信パケットに対応する待ち時間(「第1の待ち時間」とする)と、それまでに返信パケット受信部12によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間(「第2の待ち時間」とする)との間の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御してもよい。また、要求パケット送信制御部14は、例えば、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信され、かつ、それまでに返信パケット受信部12によって返信パケットが受信されないことがあった場合に、その受信された返信パケットに対応する待ち時間と、それまでに返信パケット受信部12によって受信されなかった返信パケットに対応する待ち時間のうち一番短い待ち時間との間の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御してもよい。ここで、第1の待ち時間と第2の待ち時間との間の待ち時間とは、例えば、第1の待ち時間に、第1の待ち時間からと第2の待ち時間を引いた時間に3分の2を掛けた時間を加算した時間などである。
また、上記各実施の形態において、二分探索法を用いた待ち時間の設定とは、情報処理装置1において受信できた返信パケットに対応する待ち時間と、情報処理装置1において受信できなかった返信パケットに対応する待ち時間との間の待ち時間を、次に送信する要求パケットの待ち時間として設定することであってもよい。すなわち、要求パケット送信制御部14は、例えば、送信された要求パケットに対応する返信パケットが返信パケット受信部12によって受信されず、かつ、それまでに返信パケット受信部12による返信パケットの受信がなかった場合には、その受信されなかった返信パケットに対応する待ち時間(「第3の待ち時間」とする)より小さい待ち時間に応じた待ち時間情報を有する要求パケットを送信するように要求パケット送信部11を制御してもよい。ここで、第3の待ち時間より小さい待ち時間とは、0よりも大きく、第3の待ち時間よりも小さい時間であり、例えば、第3の待ち時間に3分の2を掛けた時間などである。
また、上記各実施の形態では、通信処理装置を1つだけ介して通信回線4に接続される場合について説明したが、複数の通信処理装置を介して通信回線4に接続されてもよい(すなわち、多段接続の通信処理装置が構成されていてもよい)。この場合には、その多段接続の通信処理装置のうち、一番短いポート維持時間が検出されることになる。
また、上記各実施の形態では、通信処理装置2がNATの機能を有するものである(すなわち、アドレス変換を行う)と説明したが、通信処理装置2は、NATの機能に代えて、あるいはNATの機能と共にパケットフィルタリングのファイアウォール(Firewall)の機能を有するものであってもよい。ここで、パケットフィルタリングとは、例えば、前述の受信フィルタルールに基づいた受信パケットの選択を行うものである。そのようなファイアウォールの機能を有する通信処理装置2について、上記各実施の形態による方法によって、そのポート維持時間を検出することができる。ここで、通信処理装置2がファイアウォール機能を有するものである場合のポート維持時間とは、その通信処理装置2のあるポートを最後のパケットが通過してから所定の時間が経過した後に、WAN側
からそのポートに送信されたパケットが通信処理装置2のLAN側に送信されない場合における、その所定の時間のことである。
また、上記各実施の形態において、UDPの要求パケット、返信パケットを送信する場合には、パケットロスを考慮して(UDPはコネクションレス型の通信であるため、パケットロスの発生する可能性がある)、同一内容の要求パケット、返信パケットを、複数同時に送信するようにしてもよい。
また、上記各実施の形態では、サーバ装置をIPアドレスによって特定する場合について説明したが、サーバ装置をドメイン名(例えば、server.pana.netなど)によって特定してもよい。この場合には、そのドメイン名がDNSサーバを用いて、IPアドレスに変換されることにより、サーバ装置を特定することができる。
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記情報処理装置における処理を実行させるためのプログラムであって、前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求するパケットである要求パケットを、前記通信処理装置の1つのポートを介して送信する要求パケット送信ステップと、前記サーバ装置から前記ポートを介して送信された返信パケットを受信する返信パケット受信ステップと、前記返信パケット受信部で受信した返信パケットに基づいて、前記通信処理装置のポート維持時間を検出するポート維持時間検出ステップと、を実行させ、前記要求パケット送信ステップでは、前記返信パケット受信ステップでの返信パケットの受信の有無に基づいて、二分探索法を用いて要求パケットを送信する、ものである。
また、このプログラムでは、コンピュータに、前記要求パケット送信ステップにおける、前記返信パケットの即時の送信を要求する要求パケットの送信から、当該要求パケットに応じて送信された返信パケットの前記返信パケット受信ステップにおける受信までの時間であるパケット往復時間を測定するパケット往復時間測定ステップをさらに実行させ、前記パケット往復時間に基づいて、前記ポート維持時間が検出されてもよい。
また、上記各実施の形態におけるサーバ装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータに、情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記情報処理装置における処理を実行させるためのプログラムであって、前記情報処理装置は、二分探索法を用いて、前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求する要求パケットを送信するものであり、前記情報処理装置から前記通信処理装置を介して送信された要求パケットを受信する要求パケット受信ステップと、前記要求パケット受信ステップで受信した要求パケットに基づいて、前記返信パケットを送信する返信パケッ
ト送信ステップと、を実行させるためのものである。
なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、このプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
以上より、本発明による情報処理システム等は、通信処理装置のポート維持時間を検出することができ、通信処理装置を介してサーバ装置等にパケットを送信する情報処理装置を備えた情報処理システム等として有用である。
本発明の実施の形態1による情報処理システムの構成を示すブロック図 同実施の形態による情報処理装置の動作を示すフローチャート 同実施の形態によるサーバ装置の動作を示すフローチャート 同実施の形態における要求パケット及び返信パケットの構成を示す図 同実施の形態における要求パケット及び返信パケットの送受信を説明するための図 同実施の形態による情報処理装置の動作を示すフローチャート 同実施の形態における要求パケットの送信、及び返信パケットの受信を説明するための図 同実施の形態における要求パケットの送信、及び返信パケットの受信を説明するための図 同実施の形態による情報処理装置の動作を示すフローチャート 同実施の形態における要求パケットの送信、及び返信パケットの受信を説明するための図 本発明の実施の形態2による情報処理システムの構成を示すブロック図 同実施の形態による情報処理装置の動作を示すフローチャート 同実施の形態における要求パケットの送信、及び返信パケットの受信を説明するための図 同実施の形態におけるパケット往復時間とポート維持時間との関係について説明するための図
符号の説明
1、5 情報処理装置
2 通信処理装置
3 サーバ装置
11 要求パケット送信部
12 返信パケット受信部
13、51 ポート維持時間検出部
14 要求パケット送信制御部
31 要求パケット受信部
32 返信パケット送信部
33 返信パケット送信制御部
52 パケット往復時間測定部

Claims (22)

  1. 情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムであって、
    前記情報処理装置は、
    前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求するパケットである要求パケットを、前記通信処理装置の1つのポートを介して前記サーバ装置に送信する要求パケット送信部と、
    前記サーバ装置から前記ポートを介して送信された返信パケットを受信する返信パケット受信部と、
    前記返信パケット受信部による返信パケットの受信の有無に基づいて、二分探索法を用いて、前記要求パケット送信部による要求パケットの送信を制御する要求パケット送信制御部と、
    前記返信パケット受信部が受信した返信パケットに基づいて、前記通信処理装置のポート維持時間を検出するポート維持時間検出部と、を備え、
    前記サーバ装置は、
    前記要求パケットを受信する要求パケット受信部と、
    前記返信パケットを送信する返信パケット送信部と、
    前記要求パケット受信部が受信した要求パケットに基づいて、前記返信パケットの送信を制御する返信パケット送信制御部と、を備えた、情報処理システム。
  2. 前記要求パケットは、前記返信パケットの送信までの待ち時間に関する情報である待ち時間情報を有しており、
    前記要求パケット送信制御部は、前記返信パケット受信部による返信パケットの受信の有無に基づいて、二分探索法を用いて待ち時間を決定し、当該決定した待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御し、
    前記ポート維持時間検出部は、前記返信パケット受信部が受信した返信パケットに対応する待ち時間のうち、一番長い待ち時間に基づいて、前記通信処理装置のポート維持時間を検出し、
    前記返信パケット送信制御部は、前記要求パケット受信部が受信した要求パケットに含まれる待ち時間情報に基づいて、前記返信パケットの送信を制御する、請求項1記載の情報処理システム。
  3. 前記返信パケット送信制御部は、
    前記要求パケット受信部が前記要求パケットを受信してから、前記要求パケットに含まれる待ち時間情報に応じた待ち時間が経過した時に、前記返信パケットを送信するように前記返信パケット送信部を制御する、請求項2記載の情報処理システム。
  4. 前記要求パケット送信制御部は、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信されず、かつ、それまでに前記返信パケット受信部による1以上の返信パケットの受信があった場合に、当該受信されなかった返信パケットに対応する待ち時間と、それまでに前記返信パケット受信部によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間との間の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御し、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信され、かつ、それまでに前記返信パケット受信部によって返信パケットが受信されないことがあった場合に、当該受信された返信パケットに対応する待ち時間と、それまでに前記返信パケット受信部によって受信されなかった返信パケットに対応する待ち時間のうち一番短い待ち時間との間の待ち時間に応じた待ち時間情報を有する要求パケットを送信する
    ように前記要求パケット送信部を制御する、請求項2または3記載の情報処理システム。
  5. 前記要求パケット送信制御部は、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信されず、かつ、それまでに前記返信パケット受信部による1以上の返信パケットの受信があった場合に、当該受信されなかった返信パケットに対応する待ち時間と、それまでに前記返信パケット受信部によって受信された返信パケットに対応する待ち時間のうち一番長い待ち時間との中央の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御し、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信され、かつ、それまでに前記返信パケット受信部によって返信パケットが受信されないことがあった場合に、当該受信された返信パケットに対応する待ち時間と、それまでに前記返信パケット受信部によって受信されなかった返信パケットに対応する待ち時間のうち一番短い待ち時間との中央の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御する、請求項2から4のいずれか記載の情報処理システム。
  6. 前記要求パケット送信制御部は、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信されず、かつ、それまでに前記返信パケット受信部による返信パケットの受信がなかった場合には、当該受信されなかった返信パケットに対応する待ち時間より小さい待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御する、請求項2から5のいずれか記載の情報処理システム。
  7. 前記要求パケット送信制御部は、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信されず、かつ、それまでに前記返信パケット受信部による返信パケットの受信がなかった場合には、当該受信されなかった返信パケットに対応する待ち時間の半分の待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御する、請求項2から6のいずれか記載の情報処理システム。
  8. 前記ポート維持時間検出部は、
    前記要求パケット送信部が1回目に送信した要求パケットに対応して送信された返信パケットを前記返信パケット受信部が受信した場合に、当該要求パケットの待ち時間情報に応じた待ち時間に基づいて、前記ポート維持時間を検出する、請求項2から7のいずれか記載の情報処理システム。
  9. 前記要求パケット送信制御部は、
    送信された要求パケットに対応する返信パケットが前記返信パケット受信部によって受信され、かつ、それまでに前記返信パケット受信部によって返信パケットが受信されないことがなかった場合に、当該受信された返信パケットに対応する待ち時間よりも長い待ち時間に応じた待ち時間情報を有する要求パケットを送信するように前記要求パケット送信部を制御する、請求項2から7のいずれか記載の情報処理システム。
  10. 前記ポート維持時間検出部は、
    要求パケットが所定の回数送信された後に、前記ポート維持時間の検出を行う、請求項1から9のいずれか記載の情報処理システム。
  11. 前記ポート維持時間検出部は、
    前記要求パケット送信部によって送信された要求パケットに含まれる待ち時間情報に応じ
    た待ち時間と、当該要求パケットよりも1つ前に送信された要求パケットに含まれる待ち時間情報に応じた待ち時間との差が、所定の値よりも小さくなった場合に、前記ポート維持時間の検出を行う、請求項2から9のいずれか記載の情報処理システム。
  12. 前記ポート維持時間検出部は、
    前記要求パケット送信部が1回目の要求パケットを送信してから所定の時間が経過した後に、前記ポート維持時間の検出を行う、請求項1から9のいずれか記載の情報処理システム。
  13. 前記返信パケットの即時の送信を要求する要求パケットを前記要求パケット送信部に送信させ、当該要求パケットの送信から、当該要求パケットに応じて送信された返信パケットの前記返信パケット受信部による受信までの時間であるパケット往復時間を測定するパケット往復時間測定部をさらに備え、
    前記パケット往復時間に基づいて、前記ポート維持時間が検出される、請求項1から12のいずれか記載の情報処理システム。
  14. 前記要求パケットが通過する前記通信処理装置のポートは、当該ポートを初回の要求パケットが通過する時に、前記通信処理装置において新たに割り当てられるものである、請求項1から13のいずれか記載の情報処理システム。
  15. 請求項1から14のいずれか記載の情報処理システムを構成する情報処理装置。
  16. 請求項1から14のいずれか記載の情報処理システムを構成するサーバ装置。
  17. 情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記情報処理装置において用いられる情報処理方法であって、
    前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求するパケットである要求パケットを、前記通信処理装置の1つのポートを介して前記サーバ装置に送信する要求パケット送信ステップと、
    前記サーバ装置から前記ポートを介して送信された返信パケットを受信する返信パケット受信ステップと、
    前記返信パケット受信部で受信した返信パケットに基づいて、前記通信処理装置のポート維持時間を検出するポート維持時間検出ステップと、を備え、
    前記要求パケット送信ステップでは、前記返信パケット受信ステップでの返信パケットの受信の有無に基づいて、二分探索法を用いて要求パケットを送信する、情報処理方法。
  18. 前記要求パケット送信ステップにおける、前記返信パケットの即時の送信を要求する要求パケットの送信から、当該要求パケットに応じて送信された返信パケットの前記返信パケット受信ステップにおける受信までの時間であるパケット往復時間を測定するパケット往復時間測定ステップをさらに備え、
    前記パケット往復時間に基づいて、前記ポート維持時間が検出される、請求項17記載の情報処理方法。
  19. 情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記サーバ装置において用いられる情報処理方法であって、
    前記情報処理装置は、二分探索法を用いて、前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求する要求パケットを前記サーバ装置に送信するものであり、
    前記情報処理装置から前記通信処理装置を介して送信された要求パケットを受信する要求パケット受信ステップと、
    前記要求パケット受信ステップで受信した要求パケットに基づいて、前記返信パケットを前記情報処理装置に送信する返信パケット送信ステップと、を備えた情報処理方法。
  20. コンピュータに、
    情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記情報処理装置における処理を実行させるためのプログラムであって、
    前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求するパケットである要求パケットを、前記通信処理装置の1つのポートを介して前記サーバ装置に送信する要求パケット送信ステップと、
    前記サーバ装置から前記ポートを介して送信された返信パケットを受信する返信パケット受信ステップと、
    前記返信パケット受信部で受信した返信パケットに基づいて、前記通信処理装置のポート維持時間を検出するポート維持時間検出ステップと、を実行させ、
    前記要求パケット送信ステップでは、前記返信パケット受信ステップでの返信パケットの受信の有無に基づいて、二分探索法を用いて要求パケットを送信する、プログラム。
  21. コンピュータに、
    前記要求パケット送信ステップにおける、前記返信パケットの即時の送信を要求する要求パケットの送信から、当該要求パケットに応じて送信された返信パケットの前記返信パケット受信ステップにおける受信までの時間であるパケット往復時間を測定するパケット往復時間測定ステップをさらに実行させ、
    前記パケット往復時間に基づいて、前記ポート維持時間が検出される、請求項20記載のプログラム。
  22. コンピュータに、
    情報処理装置と、サーバ装置と、前記情報処理装置と前記サーバ装置との間の通信に関する処理を行う通信処理装置とを備えた情報処理システムを構成する前記情報処理装置における処理を実行させるためのプログラムであって、
    前記情報処理装置は、二分探索法を用いて、前記サーバ装置から前記通信処理装置を介して前記情報処理装置に送信される返信パケットの送信を要求する要求パケットを前記サーバ装置に送信するものであり、
    前記情報処理装置から前記通信処理装置を介して送信された要求パケットを受信する要求パケット受信ステップと、
    前記要求パケット受信ステップで受信した要求パケットに基づいて、前記返信パケットを前記情報処理装置に送信する返信パケット送信ステップと、を実行させるためのプログラム。
JP2004226478A 2004-08-03 2004-08-03 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法 Withdrawn JP2006050125A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004226478A JP2006050125A (ja) 2004-08-03 2004-08-03 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
CNA2005800266108A CN1993949A (zh) 2004-08-03 2005-08-01 信息处理系统、信息处理装置、服务器装置、信息处理方法和程序
EP20050767117 EP1783974A1 (en) 2004-08-03 2005-08-01 Information processing system, information processing apparatus, server apparatus, information processing method and program
US11/573,127 US20080056276A1 (en) 2004-08-03 2005-08-01 Information Processing System, Information Processing Apparatus, Server Apparatus, Information Processing Method and Program
PCT/JP2005/014020 WO2006013811A1 (ja) 2004-08-03 2005-08-01 情報処理システム、情報処理装置、サーバ装置、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004226478A JP2006050125A (ja) 2004-08-03 2004-08-03 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2006050125A true JP2006050125A (ja) 2006-02-16

Family

ID=35787096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004226478A Withdrawn JP2006050125A (ja) 2004-08-03 2004-08-03 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法

Country Status (5)

Country Link
US (1) US20080056276A1 (ja)
EP (1) EP1783974A1 (ja)
JP (1) JP2006050125A (ja)
CN (1) CN1993949A (ja)
WO (1) WO2006013811A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007281905A (ja) * 2006-04-07 2007-10-25 Nec Engineering Ltd Nat管理システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4597706B2 (ja) * 2005-02-25 2010-12-15 パナソニック株式会社 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP4597705B2 (ja) * 2005-02-25 2010-12-15 パナソニック株式会社 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP5326045B2 (ja) * 2010-05-11 2013-10-30 株式会社チェプロ 双方向通信システムおよびこれに用いるサーバ装置
CN102148724B (zh) * 2011-01-31 2014-12-31 中兴通讯股份有限公司 链路检测方法及网络接入设备
CN103024097B (zh) * 2012-12-24 2016-06-29 瑞斯康达科技发展股份有限公司 探测网络地址转换服务器老化时间的方法、装置及系统
KR101612830B1 (ko) * 2014-12-11 2016-04-26 현대자동차주식회사 효율적인 기기 검색을 수행하는 차량의 멀티미디어 시스템 및 그 제어 방법
JP7371609B2 (ja) * 2020-11-17 2023-10-31 トヨタ自動車株式会社 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5355516A (en) * 1990-09-28 1994-10-11 Motorola, Inc. Method for reducing superfluous channel allocation in a cellular radiotelephone communication system
US6075787A (en) * 1997-05-08 2000-06-13 Lucent Technologies Inc. Method and apparatus for messaging, signaling, and establishing a data link utilizing multiple modes over a multiple access broadband communications network
US6760775B1 (en) * 1999-03-05 2004-07-06 At&T Corp. System, method and apparatus for network service load and reliability management
US7512069B2 (en) * 2000-05-18 2009-03-31 Exfo Service Assurance, Inc. IP packet identification method and system for TCP connection and UDP stream
JP2002354048A (ja) * 2001-05-29 2002-12-06 Matsushita Electric Ind Co Ltd ルータ装置
US7149769B2 (en) * 2002-03-26 2006-12-12 Hewlett-Packard Development Company, L.P. System and method for multi-destination merge in a storage area network
US7356045B2 (en) * 2002-10-22 2008-04-08 Cisco Technology, Inc. Shared port address translation on a router behaving as NAT & NAT-PT gateway
JP3854221B2 (ja) * 2002-11-14 2006-12-06 日本電信電話株式会社 アドレス組の生存時間取得・計算を可能としたalg装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007281905A (ja) * 2006-04-07 2007-10-25 Nec Engineering Ltd Nat管理システム

Also Published As

Publication number Publication date
CN1993949A (zh) 2007-07-04
EP1783974A1 (en) 2007-05-09
US20080056276A1 (en) 2008-03-06
WO2006013811A1 (ja) 2006-02-09

Similar Documents

Publication Publication Date Title
JP4514623B2 (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP4597706B2 (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP4708036B2 (ja) 通信システム、情報処理装置、サーバ、及び情報処理方法
WO2006013811A1 (ja) 情報処理システム、情報処理装置、サーバ装置、情報処理方法及びプログラム
US8027271B2 (en) Communicating apparatus and controlling method of thereof
JP4597705B2 (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
EP1809000A1 (en) Information processing device, information processing system, information processing method, and program
JP2008072519A (ja) 機器検索装置、機器検索方法及びプログラム
JP2006050124A (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
WO2006035601A1 (ja) 情報処理装置、通信処理装置、情報処理システム、情報処理方法、通信処理方法およびプログラム
JP2006324737A (ja) 通信システム、パケット処理装置、及びパケット処理方法
JP2006050126A (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP2006203609A (ja) 情報処理装置、サーバ装置、及び情報処理方法
JP2006203607A (ja) 情報処理装置、及び情報処理方法
JP2006203606A (ja) 情報処理システム、情報処理装置、通信処理装置、サーバ装置、及び情報処理方法
JP2006203604A (ja) 情報処理システム、第1の情報処理装置、第2の情報処理装置、及び情報処理方法
JP2006203608A (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP2006203605A (ja) 情報処理システム、情報処理装置、通信処理装置、及び情報処理方法
JP2006086687A (ja) 情報処理装置、通信処理装置、情報処理システム、情報処理方法、及び通信処理方法
JP2006333187A (ja) 通信システム、パケット処理装置、及びパケット処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070725

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070820

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20080806