本発明の一実施の形態に係る通信システムについて図面を参照して説明する。図1は本発明に係る通信システムを用いたテレメトリングシステムの構成図である。
本システムは、図1に示すように、例えば下水道の流量監視用のコンピュータなどの上位装置10と、無線パケット通信網40を介して企業内LAN50とを接続したネットワーク環境を提供する。
ここで、上位装置10や企業内LAN50内の端末(図1の例では管理用コンピュータ51)は、固定的にIPアドレスを付与するネットワーク接続サービス用に設定されているとする。一方、無線パケット通信網40では動的にIPアドレスを付与するネットワークサービスを提供しているとする。本願発明では、上位装置10と通信モジュール20の間に接続装置1を介在させ、この接続装置1によりネットワーク環境の相違を吸収させている。
上位装置10は、データ端末装置(DTE:Data Terminal Equipment)に相当する。この上位装置10は、特定のキャリア及びそのキャリアが提供するネットワーク接続サービスに対応するように設計されている。具体的には、接続端末に対して固定IPアドレスを付与するネットワーク接続サービスの利用を前提としており、該サービスに対応した通信モジュールを接続するとともに、該サービスに対応した接続プロトコル・認証プロトコル等に対応するよう設計されている。
上述した上位装置10が前提としているネットワーク接続サービスについて説明する。このネットワーク接続サービスでは、通信モジュールに予めキャリアにより電話番号が割り当てられる。このネットワーク接続サービスの提供下にある無線パケット通信網には、回線制御やパケット中継等を行う中継装置が設けられている。中継装置には、接続先ネットワークである企業内LANに対応して電話番号が割り当てられている。通信モジュールを接続した端末は、無線パケット通信網内の中継装置の電話番号宛に発呼すると、企業内LANなどの所定のネットワークに接続する。中継装置への接続は、予め電話番号を割り当てた通信モジュールからのみ許可される。
本発明は、このような上位装置10及び管理用コンピュータ51をそのまま利用することを前提とし、動的IPを付与するネットワーク接続サービス提供下の無線パケット通信網40においてもネットワークシステムを構築可能とする。
次に、本実施の形態で利用する、動的IPアドレスを付与するネットワーク接続サービスについて説明する。このネットワーク接続サービスでは、通信モジュール20に予めキャリアにより電話番号が割り当てられる。無線パケット通信網40には、図1に示すように、回線制御やパケット中継等を行う中継装置41が設けられている。通信モジュール20を接続した端末は、予め定められている特別な番号を指定して発呼することにより無線パケット通信網40に接続する。そして、該端末は、中継装置41との間でPAP(Password Authentication Protocol)を用いた認証処理を行うことにより、接続先ネットワークである企業内LAN50に接続可能となる。なお、前記PAP認証では、接続先を特定する情報をユーザ名に含ませることにより、接続先ネットワークを特定する。このネットワーク接続サービスでは、キャリアから無線パケット通信網40に対して所定の範囲のIPアドレス群が割り当てられており、通信モジュール20にはそれぞれ該IPアドレス群に含まれるIPアドレスがIPCP(Internet Protocol Control Protocol)により動的に割り当てられる。
ここで、接続端末に付与するIPアドレスは予め定められたものである。図1に示すように、無線パケット通信網40にはアドレス管理サーバ43が設置されている。このアドレス管理サーバ43は、接続端末の電話番号と、当該電話番号を有する端末に対して配布するIPアドレスのリストを管理する。具体的には、アドレス管理サーバ43は、電話番号とIPアドレスとの対応を記述したアドレス対応テーブルを備えている。また、このアドレス管理サーバ43は、アドレス対応テーブルを更新できるようユーザに対してインタフェイスを提供している。
本接続サービスでは、無線パケット通信網40は、端末が接続してきた際に該接続端末の電話番号を取得する。そして、当該電話番号に対応するIPアドレスをアドレス対応テーブルから取得し、取得したIPアドレスを接続端末に配布する。このアドレス配布にはIPCPが用いられる。すなわち、本実施の形態では、IPCPという動的IP付与技術を用いているものの、配布IPアドレスは所定のものである。
また、本接続サービスでは、無線パケット通信網40は、端末に対応したIPアドレス宛のIPパケットを企業内LAN50から受信し、且つ、当該端末が無線パケット通信網40に接続してない状態の時には、メッセージングサーバ42が当該IPパケットに対応する電話番号をアドレス管理サーバ43から取得し、当該電話番号に対してメッセージを送信する。このメッセージングサービスは、TCP/IPを用いたネットワーク接続サービスではなく、無線通信網を利用した独自プロトコルにより実装されたものである。これにより端末は、企業内LAN50からの接続要求があったことを認識できる。
次に、接続装置1について詳述する。この接続装置1は、データ端末装置に相当する上位装置10と、データ通信装置(DCE:Data Circuit-terminating Equipment)に相当とする通信機器20とを接続する装置である。本実施の形態に係る接続装置1では、CDMA規格の通信モジュール20に対応する。通信モジュール20は、それぞれ対応するキャリアが構築する無線パケット通信網40に接続する通信機器であり、各キャリアが独自に定めた通信規格・通信プロトコル・サービスに対応している。上位装置10は、前述したように、特定のキャリア及びそのキャリアが提供するサービスに対応するように設計されている。具体的には、当該サービスに対応した通信モジュールを接続するとともに、該サービスに対応した接続プロトコル・認証プロトコル等に対応するよう設計されている。
本実施の形態に係る上位装置10は、PDC規格の通信モジュール及びPHS規格の通信モジュールと直接接続可能であるとする。そして、該通信モジュールを用いることにより、各無線パケット通信網を介して企業内LAN50に接続可能となっているとする。本実施の形態に係る接続装置1は、当該上位装置10を改造・変更することなく、CDMA規格の通信モジュール20を用いて、無線パケット通信網40を介して企業内LAN50に接続可能とする。以下、接続装置1についてさらに詳しく説明する。
図2を参照して本実施の形態に係る接続装置1の構成図について説明する。図2は接続装置1の機能ブロック図である。なお、ここでは本発明の要旨に係るもののみを記載し、他の構成については省略した。
図2に示すように、接続装置1は、回線接続の確立などの回線制御を行う回線制御部121と、回線制御部121により確立された回線上でのデータ通信を制御する通信制御部122と、上位装置10とのインタフェイス123と、通信モジュール20とのインタフェイス124と、各種設定データを記憶した設定データ記憶部151と、パケットを一時的に記憶するパケット一時記憶部152とを備えている。回線制御部121は、ATコマンドによる回線接続制御、LCP(Link Control Protocol)及びIPCPによるIP層の接続制御を行う。通信制御部122は、回線制御部121により確立された回線上でのデータ通信において、IP層のヘッダに含まれるIPアドレスの変換処理や、TCPパケットの代理応答処理などを行う。
前記回線制御部121及び通信制御部122は、上位装置10と通信モジュール20との間のデータに対して、所定のルールに従って、変換・透過・廃棄等の処理を行う。これらのデータ処理に必要なデータは、前記設定データ記憶部151に記憶されている。
設定データ記憶部151に記憶されているデータについて図3を参照して説明する。図3に示すように、設定データ記憶部151には、無線パケット通信網40に接続するための発呼コマンド(電話番号を含む)、上位装置10の固定IPアドレス、無線パケット通信網40に接続する際に必要な認証データ、接続先のルータ60のIPアドレスが記憶されている。設定データ記憶部151は、例えばEPROMなどの不揮発性メモリからなる。
パケット一時記憶部152は、前記通信制御部122において後述するパケットの再送処理等のためにパケットを一時的に記憶する。パケット一時記憶部152は、例えばSRAMなどの記憶媒体からなる。図3に、パケット一時記憶部152に記憶されるデータの一例を示す。図3に示すように、パケット一時記憶部152には、ヘッダ部を含むTCPパケットと、該TCPパケットのヘッダ部に記述されているシーケンス番号とデータ長との和とが関連づけられている。なお、シーケンス番号とデータ長との和は、TCPパケットに含まれるものであるので、この観点からは冗長である。しかし本実施の形態では、このような冗長化により、後述するTCPパケットのデータ処理における処理負荷の軽減を図っている。具体的には、後述するTCPパケットのデータ処理において、TCPパケットからのシーケンス番号とデータ長の抽出及びその加算処理を省略可能としている。パケット一時記憶部152に記憶されているデータは、通信が終了した時点で、より詳しくはTCPセッションが終了した時点で破棄される。
次に、本システムにおける通信手順について図面を参照して説明する。まず、図5及び図6を参照して、上位装置10から管理用コンピュータ51に対して通信を開始する場合について説明する。図5は上位装置から管理用コンピュータに通信開始する場合のシーケンスチャート、図6は上位装置から送信されたIPパケットのヘッダに記載されたIPアドレスの変換過程を説明する図である。
図5に示すように、上位装置10は、接続装置1に対して「ATDT080CCDD」コマンドを発呼すると(ステップS101)、接続装置1の回線制御部121は該コマンドを「ATD9999」に変換して通信モジュール20に転送する(ステップS102)。なお、この発呼の契機としては、図6に示すような宛先アドレス:192.168.9.10のIPパケットが生じた時などが挙げられる。前記ATコマンドにより通信モジュール20は無線パケット通信網40内の中継装置41に発呼する(ステップS103)。接続装置1の回線制御部121は、回線レベルで接続が完了した旨の応答「CONNECT」を通信モジュール20を介して受信すると(ステップS104)、PPPにより接続装置1を企業内LAN50に接続するよう処理を開始する。
まず、接続装置1の回線制御部121は、無線パケット通信網40の中継装置41との間でLCPネゴシエーションを開始する(ステップS105)。次に、接続装置1の回線制御部121は、無線パケット通信網40の中継装置41との間でPAP認証処理を行う(ステップS106)。このPAP認証処理は、上位装置10では想定されていないものであるが、本実施の形態に係る無線パケット通信網40を利用する際には必要である。そこで、本実施の形態では、接続装置1が上位装置10に代理して認証処理を行っている。この認証処理が終了すると、接続装置1の回線制御部121は、接続装置1と無線パケット通信網40の中継装置41との間でIPCPネゴシエーションを開始する(ステップS107)。これによりIPCPネゴシエーションが完了し、接続装置1の回線制御部121には無線パケット通信網40から動的IPアドレス:172.16.0.Xが付与される。ここで付与されるIPアドレスは、接続端末である通信モジュール20に対して予め定めたものである。付与された動的IPアドレスはEPROM(図示省略)などの記憶手段に記憶しておく。
PPPネゴシエーションが完了すると、回線レベルで接続が完了した旨の応答「CONNECT」を上位装置10に送信する(ステップS108)。上位装置10は、当該応答を受けてLCPネゴシエーション及びIPCPネゴシエーションを開始する(ステップS109,S110)。ここで、注目すべき点は、接続装置1の回線制御部121が上位装置10に対して応答を行うことである。
以上の処理により上位装置10と企業内LAN50との接続が完了するので、上位装置10は管理用コンピュータ51へのデータ通信を開始する(ステップS111)。ここで、接続装置1の通信制御部122では、IPパケットのヘッダのアドレス変換を行う(ステップS112)。具体的には、図6に示すように、固定端末IPアドレス(192.168.0.1)と動的端末IPアドレス(172.16.0.X)とを相互に変換する。以上の処理により、上位装置10から開始する管理用コンピュータ51との通信が可能となる。
次に、企業内LAN50の管理用コンピュータ51から上位装置10に対して通信を開始する場合について図7乃至9を参照して説明する。図7及び図8は管理用コンピュータから開始する通信のシーケンス図、図9はアドレス変換の過程を説明する図である。
ここでは、上位装置10に接続されている通信モジュール20に対して、アドレス管理サーバ43においてIPアドレス「172.16.0.1」が割り当てられているものとする。
管理用コンピュータ51が、通信相手先の上位装置10と通信するために該上位装置10に接続されている通信モジュール20のIPアドレス「172.16.0.1」を宛先とした接続要求を発すると(ステップS151)、ルータ60は通常のルーティングルールに従って当該パケットを無線パケット通信網40に中継する(ステップS152)。
無線パケット通信網40は、ルータ60から受信したパケットの宛先IPアドレスを参照し、当該IPアドレスに対応する電話番号をアドレス管理サーバ43から取得する。そして、該電話番号宛に、企業内LAN50から接続要求があった旨をメッセージングサービスを利用して通知する(ステップS153)。なお、無線パケット通信網40は、ルータ60から受信した接続要求に係るパケットは破棄する。
メッセージを受信した接続装置1の回線制御部121は、設定データ記憶部151に記憶されている設定データに基づき企業内LAN50への接続処理を開始する。具体的には、「ATD9999」コマンドを通信モジュール20に送出する(ステップS154)。該ATコマンドにより通信モジュール20は無線パケット通信網40内の中継装置41に発呼する(ステップS155)。接続装置1の回線制御部121は、回線レベルで接続が完了した旨の応答「CONNECT」を通信モジュール20を介して受信すると(ステップS156)、PPPにより接続装置1を企業内LAN50に接続するよう処理を開始する。
まず、接続装置1の回線制御部121は、無線パケット通信網40の中継装置41との間でLCPネゴシエーションを開始する(ステップS157)。次に、接続装置1の回線制御部121は、無線パケット通信網40の中継装置41との間でPAP認証処理を行う(ステップS158)。次に、接続装置1の回線制御部121は、接続装置1と無線パケット通信網40の中継装置41との間でIPCPネゴシエーションを開始する(ステップS159)。これによりIPCPネゴシエーションが完了し、接続装置1の回線制御部121には無線パケット通信網40から動的IPアドレス:172.16.0.Xが付与される。ここで付与されるIPアドレスは、上述したように、接続端末である通信モジュール20に対して予め定めたものである。付与された動的IPアドレスはEPROM(図示省略)などの記憶手段に記憶しておく。
PPPネゴシエーションが完了すると、管理用コンピュータ51から接続要求パケットが接続装置1に到達する(ステップS160)。上述したように、無線パケット通信網40は、前記ステップS151で管理用コンピュータ51が送出したパケットを破棄している。このため、管理用コンピュータ51は、当該接続要求パケットの応答を受信できず、タイムアウトにより接続要求パケットを再送する。また、上記ステップS153〜S159の処理にはある程度の時間が必要となるため、再送したパケットの幾つかは更にタイムアウトする。したがって、接続装置1に到達する接続要求パケットは数回再送されたパケットのうちの最新のものである。
接続装置1の回線制御部121は、管理用コンピュータ51から接続要求パケットを受信すると、上位装置10に対して着信があったことを通知する(ステップS161)。上位装置10は、着信通知を受信すると、当該着信通知に対する応答を接続装置1に通知するとともに(ステップS162)、LCPネゴシエーション及びIPCPネゴシエーションを開始する(ステップS163,S164)。ここで、注目すべき点は、接続装置1の回線制御部121が上位装置10に対して応答を行うことである。
このPPPネゴシエーションが完了すると、接続装置1の回線制御部121は、前記ステップS160で管理用コンピュータ51から受信した接続要求パケットを上位装置10に転送する(ステップS165)。接続要求パケットを受信した上位装置10は、当該応答を接続装置1に応答する(ステップS166)。接続装置1は、当該応答パケットをルータ60に中継する(ステップS167)。ルータ60は、通常のルーティングルールに従って当該応答パケットを管理用コンピュータ51に中継する(ステップS168)。
以上の処理により、上位装置10は管理用コンピュータ51への接続が完了したものと判断し、管理用コンピュータ51へのデータ通信を開始する(ステップS169)。ここで、接続装置1の通信制御部122は、IPパケットのヘッダのアドレス変換を行う(ステップS170)。具体的には、図9に示すように、固定端末IPアドレス(192.168.0.1)と動的端末IPアドレス(172.16.0.1)とを相互に変換する。
次に、上記ステップS111及びステップS169における上位装置10と管理用コンピュータ51との間の通信における接続装置1でのTCPパケットの処理について図10及び図11を参照して説明する。
まず、上位装置10から無線パケット通信網40へ送出されるTCPパケットの制御について図10のフローチャートを参照して説明する。
接続装置1の通信制御部122は、上位装置10からTCPパケットを受信すると、該TCPパケットのヘッダ部からシーケンス番号及びデータ長を取得する(ステップS201)。次に、通信制御部122は、前記受信パケットのシーケンス番号と同一のシーケンス番号を有するTCPパケットがパケット一時記憶部152に記憶されているかを判定する(ステップS202)。すなわち、受信TCPパケットが重複パケットであるか否かを判定する。重複パケットの場合、通信制御部122は、当該受信パケットを破棄する(ステップS203)。なお、ここでパケットの破棄とは、具体的には当該パケットに対して何ら処理を行わないことを意味する。一方、受信パケットが重複パケットではない場合、通信制御部122は、当該受信パケットを一時記憶部152に記憶する(ステップS204)。該記憶処理の際には、受信TCPパケットのヘッダ部に記述されているシーケンス番号とデータ長の和を算出し、当該算出値を受信TCPパケットに関連づけて記憶する。次に、通信制御部122は、当該受信パケットを無線パケット通信網40に送出する(ステップS205)。
次に、無線パケット通信網40から受信したTCPパケットの制御について図11のフローチャートを参照して説明する。
接続装置1の通信制御部122は、無線パケット通信網40から受信したTCPパケットが、上位装置10からのTCPパケットに対する管理用コンピュータ51からの確認応答パケットかどうかを判定する(ステップS211)。確認応答パケットではない場合には、通信制御部122は、当該パケットを上位装置10に送出する(ステップS212)。
一方、無線パケット通信網40から受信したTCPパケットが確認応答パケットの場合、通信制御部122は、当該応答パケットのACK番号が、TCP/IPに規定に従った期待された番号であるかを確認する。具体的には、通信制御部122は、受信したTCPパケットのACK番号と、パケット一時記憶部152に記憶されているTCPパケットのシーケンス番号とデータ長の和の最小値とを対比する(ステップS213)。受信パケットのACK番号が前記最小値より小さい場合、通信制御部122は、無線パケット通信網40においてパケットロスが生じたものと判断してパケット一時記憶部152に記憶してあるTCPパケットを再送する(ステップS214)。再送対象のTCPパケットは、パケット一時記憶部152に記憶されているTCPデータのうち、シーケンス番号とデータ長の和が最小のものである。一方、受信パケットのACK番号が前記最小値以上の場合、通信制御部122は、当該受信パケットを上位装置10に送出する(ステップS212)。
このように、本実施の形態に係る接続装置1によれば、上位装置10に改造・変更等を加えることなく、本来上位装置10が前提としていなかった無線パケット通信網40を用いた通信が可能となる。また、本実施の形態に係る接続装置1によれば、上位装置10がTCPパケットを重複して送信した場合には、当該重複パケットは無線パケット通信網40には流出しない。したがって、ネットワーク負荷を軽減できるとともに、通信費を削減できる。さらに、本実施の形態に係る接続装置1によれば、TCPパケットの再送処理を上位装置10ではなく接続装置1が行うので、上位装置10の処理負荷を軽減できる。
以上、本発明の一実施の形態について詳述したが、本発明はこれに限定されるものではない。例えば、上記実施の形態では下水道の流量監視を行うテレメトリングシステムについて説明したが、他のテレメトリングシステムや、テレマティクスシステムにおいても本発明を実施できる。
また、上記各実施の形態では、通信モジュールとしてCDMA規格のものを例示したが、他の規格のものであっても本発明を実施できる。同様に、上位装置側のインタフェイス規格についても、上述したもの以外のものを適用できる。
1…接続装置、121…回線制御部、122…通信制御部、152…パケット一時記憶部、10…上位装置、20…通信モジュール、40…無線パケット通信網、42…メッセージングサーバ、43…アドレス管理サーバ、50…企業内LAN、51…管理用コンピュータ、60…ネットワークルータ