(57)【要約】【課題】  無線通信区間７を介したサーバ１から端末６へのコンテンツデータ送信において、無線通信環境が悪化して、無線通信区間７が通信不能となった場合でも、データ授受の処理が中断しないようにする。【解決手段】  無線基地局３および無線移動局４は、そのサーバ１から端末６へのコンテンツデータの送信の中継を行う。さらに、無線基地局３および無線移動局４はそれぞれ、無線通信区間７が通信不能となっているとき、サーバ１と端末６との間のデータ通信のコネクションが継続しているとサーバ１および端末６に判定させるための偽装データを、それぞれサーバ１および端末６に定期的に送信する。【選択図】  図１
2006101315.tif 000002
【特許請求の範囲】
【請求項１】
通信回路と、
前記通信回路を用いて、第１の通信装置と第２の通信装置との間のデータ通信を中継する中継手段と、
前記データ通信の中継における前記第２の通信装置と自らが属する通信中継装置との間の無線通信区間において通信が不能となっているとき、前記通信回路を用いて、前記第１の通信装置と前記第２の通信装置との間のデータ通信が継続していると前記第１の通信装置に判定させるための偽装データを、前記第１の通信装置に繰り返し送信する送信制御手段と、を備えた通信中継装置。
【請求項２】
前記送信制御手段が繰り返し送信する前記偽装データは、前記第１の通信装置が送信したデータに対する応答データであることを特徴とする請求項１に記載の通信中継装置。
【請求項３】
前記中継手段は、前記第２の通信装置から前記第１の通信装置へのコンテンツデータのデータ通信を中継し、
前記送信制御手段が繰り返し送信する前記偽装データは、前記コンテンツデータであることを特徴とする請求項１に記載の通信中継装置。
【請求項４】
前記中継のために前記第１の通信装置から受信したデータを、前記第２の通信装置がそのデータを受信するまでバッファリングデータとして蓄積する記憶媒体を備え、
前記送信制御手段が繰り返し送信する前記偽装データは、当該記憶媒体における前記バッファリングデータの蓄積状態を含むことを特徴とする請求項１または２に記載の通信中継装置。
【請求項５】
前記送信制御手段は、前記無線通信区間が通信不能な状態から通信可能な状態に変化したとき、前記無線通信区間において通信が不能となっているときの前記偽装データの送信繰り返し間隔よりも短い繰り返し間隔で、前記第１の通信装置に前記偽装データを送信することを特徴とする請求項４に記載の通信中継装置。
【請求項６】
通信回路を用いて第１の通信装置と第２の通信装置との間のデータ通信を中継する中継手段、および
前記データ通信の中継における前記第２の通信装置と前記中継手段との間の無線通信区間において通信が不能となっているとき、前記通信回路を用いて、前記第１の通信装置と前記第２の通信装置との間のデータ通信が継続していると前記第１の通信装置に判定させるための制御データを、前記第１の通信装置に繰り返し送信する送信制御手段として、コンピュータを機能させる通信中継プログラム。
【請求項７】
上流側通信中継装置および下流側通信中継装置を備え、
前記上流側通信中継装置は、上流側通信回路と、この上流側通信回路を用い、サーバ装置から送信されたクライアント装置宛のコンテンツデータを受信し、この受信したコンテンツデータを、無線通信区間を介して、前記下流側通信中継装置に送信する上流側中継手段と、を有し、
前記下流側通信中継装置は、下流側通信回路と、この下流側通信回路を用い、前記上流側通信中継装置から前記無線通信区間を介して送信された前記コンテンツデータを受信し、この受信したコンテンツデータを、前記クライアント装置に送信する上流側中継手段と、を有し、
さらに前記上流側通信中継装置は、前記無線通信区間において通信が不能となっているとき、前記上流側通信回路を用いて、前記サーバ装置から前記クライアント装置までの前記コンテンツデータの送信が継続していると前記サーバ装置に判定させるための偽装データを、前記サーバ装置に繰り返し送信する上流側送信制御手段と、を有し、
さらに前記下流側通信中継装置は、前記無線通信区間において通信が不能となっているとき、前記下流側通信回路を用いて、前記サーバ装置から前記クライアント装置までの前記コンテンツデータの送信が継続していると前記クライアント装置に判定させるための偽装データを、前記クライアント装置に繰り返し送信する下流側送信制御手段と、を有する通信中継システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一部に無線通信区間を有する通信経路を介して通信装置間で行われるデータ通信の中継を行う技術に関する。
【背景技術】
【０００２】
従来、パーソナルコンピュータ同士による無線ＬＡＮ回線を介したデータ交換、車載通信端末によるインターネット上のＷｅｂサーバからの音楽データダウンロードといった、無線通信区間を介した通信装置間のデータ通信が広く行われている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このようなデータ通信においては、無線通信環境の悪化によってこの無線通信区間が通信不能状態に陥り、通信装置間でデータの授受が一定時間以上行われなくなると、各通信装置は、そのデータ通信のために実行するアプリケーション（例えばｈｔｔｐサーバ、ダウンローダ）の処理において、このデータ通信のためのコネクションを切断して、データの授受が完了しないままで、そのデータ通信の処理を中断してしまうことがある。
【０００４】
このようにしてデータ通信の処理が中断してしまえば、通信環境が回復して再び通信装置間の通信が可能となっても、そのデータの授受は途中からではなく、最初から行わねばならない場合がある。例えばデータのダウンロードの処理が通信環境の悪化に伴って途中で終了してしまえば、通信環境が回復したときに、コネクションを再確立するところから始めなければならない。また、データの送信側や受信側がレジューム機能等の特別な機能を有していない限り、そのダウンロードを最初から始めなければならない。
【０００５】
本発明は上記点に鑑み、無線通信区間を介した通信装置間のデータ通信において、無線通信環境が悪化して、その無線通信区間が通信不能となった場合でも、コネクションが切断しないようにすることと、データ授受の処理が中断しないようにすることを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するための本発明の特徴は、通信回路を用いて第１の通信装置と第２の通信装置との間のデータ通信を中継する通信中継装置が、そのデータ通信の中継における第２の通信装置と自身との間の無線通信区間において通信が不能となっているとき、上記通信回路を用いて、「第１の通信装置と前記第２の通信装置との間のデータ通信が継続していると第１の通信装置に判定させるための偽装データ」を、第１の通信装置に繰り返し送信することである。
【０００７】
このようになっていることで、第２の通信装置と自身との間の無線通信区間が通信不能となっているときでも、自身から第１の通信装置に繰り返し偽装データが送信される。したがって、通信不能となっている間でも、第１の通信装置は、第１の通信装置と前記第２の通信装置との間のデータ通信が継続していると判定し、そのデータ通信のための処理を中断しない。より具体的には、第１の通信装置が、上記の偽装データの送信の繰り返し間隔より長い基準時間以上第２の通信装置からのデータがない場合に、その第２の通信装置とのデータ通信のための処理を中断するようになっている場合では、このような偽装データが繰り返し送られてくることにより、そのデータ通信処理を維持するようになる。
【０００８】
このように、本発明により、無線通信区間を介した通信装置間のデータ通信において、無線通信環境が悪化して、その無線通信区間が通信不能となった場合でも、データ授受の処理が中断しないようになる。
【０００９】
なお、本発明における通信中継装置は、中継するデータを加工してもよい。例えば、第１の通信装置から送信されたデータを通信中継装置が受信し、その受信したデータの一部を変更して、あるいは受信したデータに基づいて新たなデータを生成して、第２の通信装置に送信するようになっていてもよい。その場合でも、第２の通信装置に届くデータは、第１の通信装置から送信されたデータに起因したデータであるという意味で、通信中継装置から送信されたデータであると共に第２の通信装置から送信されたデータでもある。
【００１０】
また、通信中継装置が繰り返し送信する偽装データは、第１の通信装置が送信したデータに対する応答データであってもよい。このようになっていることで、応答データを受信していれば、第２の通信装置との通信が継続していると判断するような第１の通信装置に対応することができる。
【００１１】
また、通信中継装置は、第２の通信装置から前記第１の通信装置へのコンテンツデータのデータ通信を中継するようになっており、かつ、繰り返し送信する偽装データは、そのコンテンツデータであるようになっていてもよい。このようになっていることで、コンテンツデータを受信していれば、第２の通信装置との通信が継続していると判断するような第１の通信装置に対応することができる。
【００１２】
なお、ここでいうコンテンツデータとは、データ通信におけるデータ配送経路制御、データ配送タイミング制御等の通信制御データ以外のデータをいう。コンテンツデータとしては、例えば音楽データ、動画データ、ソフトウェアデータ等がある。
【００１３】
また、通信中継装置は、中継のために第１の通信装置から受信したデータを、第２の通信装置がそのデータを受信するまでバッファリングデータとして蓄積する記憶媒体を備え、かつ、繰り返し送信する偽装データは、当該記憶媒体におけるバッファリングデータの蓄積状態を含んでいてもよい。
【００１４】
このようになっていることで、第１の通信装置は、通信中継装置の記憶媒体におけるバッファリングデータの蓄積状態の情報を取得することができる。そして、例えば第１の通信装置は、この取得した通信中継装置の蓄積状態に基づいて、新たにデータを送信するか否かを切り替えるようになっていてもよい。
【００１５】
この場合、通信中継装置はさらに、無線通信区間が通信不能な状態から通信可能な状態に変化したとき、その無線通信区間において通信が不能となっているときの偽装データの送信繰り返し間隔よりも短い繰り返し間隔で、第１の通信装置に前記偽装データを送信するようになっていてもよい。このようになっていることで、通信中継装置は、無線通信区間が通信不能な状態から通信可能な状態に変化したときの、記憶媒体中のバッファリングデータの蓄積状態の急な変化をより速やかに第１の通信装置に送信することができる。
【００１６】
また、上記のような発明は、通信回路を用いて第１の通信装置と第２の通信装置との間のデータ通信を中継する機能、および、データ通信の中継における第２の通信装置と当該中継位置との間の無線通信区間において通信が不能となっているとき、上記通信回路を用いて、第１の通信装置と第２の通信装置との間のデータ通信が継続していると第１の通信装置に判定させるための制御データを、第１の通信装置に繰り返し送信する機能を、コンピュータに実現させる通信中継プログラムとしても実現可能である。
【００１７】
また、本発明の第２の特徴は、サーバ装置から送信されたクライアント装置宛のコンテンツデータを受信し、この受信したコンテンツデータを、無線通信区間を介して、下流側通信装置に送信する上流側通信中継装置と、上流側通信中継装置から無線通信区間を介して送信されたコンテンツデータを受信し、この受信したコンテンツデータをクライアント装置に送信する下流側通信中継装置と、を有する通信中継システムにおいて、さらに上流側通信中継装置は、上記の無線通信区間において通信が不能となっているとき、サーバ装置からクライアント装置までのコンテンツデータの送信が継続しているとサーバ装置に判定させるための偽装データを、サーバ装置に繰り返し送信し、さらに下流側中継装置は、上記の無線通信区間において通信が不能となっているとき、サーバ装置から前記クライアント装置までのコンテンツデータの送信が継続しているとクライアント装置に判定させるための偽装データを、クライアント装置に繰り返し送信するようになっていることである。
【００１８】
このようになっていることで、上流通信中継装置と下流通信中継装置との間の無線通信区間が通信不能となっているときでも、上流通信中継装置からサーバ装置に、下流通信中継装置からクライアント装置に、それぞれ偽装データが繰り返し送信される。したがって、この無線通信区間が通信不能となっている間でも、サーバ装置およびクライアント装置は、それらの間のコンテンツデータの送信が継続していると判定し、そのコンテンツデータの通信のための処理を中断しない。
【００１９】
このように、本発明により、無線通信区間を介したサーバ装置−クライアント装置間のコンテンツデータ通信において、無線通信環境が悪化して、その無線通信区間が通信不能となった場合でも、データ授受の処理が中断しないようになる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の一実施形態について説明する。図１に、本発明に係る通信中継システムの全体構成図を示す。この通信中継システムは、サーバ１、有線ネットワーク２、無線基地局３、無線移動局４、有線ネットワーク５、端末６を有している。サーバ１と無線基地局３とは、インターネット等の広域ネットワークまたはＬＡＮである有線ネットワーク２を介してデータ通信可能となっている。また無線移動局４と端末６とはインターネット等の広域ネットワークまたはＬＡＮである有線ネットワーク５を介してデータ通信可能となっている。また、無線基地局３と無線移動局４は、互いに無線接続し、その接続によって確立した無線通信区間７を介してデータ通信可能となる。これらのデータ通信において本実施形態で用いられる通信プロトコルは、ＴＣＰ／ＩＰプロトコルである。
【００２１】
本実施形態においては、有線ネットワーク２、無線基地局３、無線通信区間７、無線移動局４、および有線ネットワーク５を介したデータ通信により、サーバ１と端末６とがコネクションを確立し、そのコネクションを用いて、サーバ１から端末６に、画像データ、動画データ、音楽データ、プログラム等のコンテンツデータが送信されるようになっている。サーバ１としては、例えばｈｔｔｐサーバアプリケーションを実行するパーソナルコンピュータが考えられる。また、端末６としては、例えばコンテンツデータのダウンロードを行うＷｅｂブラウザアプリケーションを実行するパーソナルコンピュータ、車両用ナビゲーション装置等が考えられる。
【００２２】
このとき、無線基地局３および無線移動局４は、そのコンテンツデータの送信の中継を行う。さらに本実施形態においては、無線基地局３および無線移動局４は、無線通信区間７が通信不能となっているとき、サーバ１と端末６との間のデータ通信のコネクションが継続しているとサーバ１および端末６に判定させるための偽装データを、サーバ１および端末６に定期的に送信するようになっている。
【００２３】
このようなサーバ１、無線基地局３、無線移動局４、端末６のハードウェア構成を図２〜図５にブロック図で示す。
【００２４】
図２は、サーバ１のブロック図である。サーバ１は、ＲＡＭ１１、ＲＯＭ１２、ＨＤＤ（ハードディスクドライブ）１３、ネットワークインターフェース（図中ではネットワークＩ／Ｆと記す）１４、およびＣＰＵ１７を有している。
【００２５】
ネットワークインターフェース１４は、無線基地局３から有線ネットワーク２に送出されたサーバ１宛のデータを受信し、それをＣＰＵ１７が認識できる形式に変換してＣＰＵ１７に出力する。また、ネットワークインターフェース１４は、ＣＰＵ１７から受けた最終目的地を端末６とし、経由地を無線基地局３とするデータを、ＴＣＰ／ＩＰ通信プロトコルに適合するように加工し、この加工したデータを有線ネットワーク２に送出する。
【００２６】
ＣＰＵ１７は、ＲＯＭ１２およびＨＤＤ１３から読み出したサーバ１の動作のためのプログラムを実行し、その実行の際には必要に応じてＲＡＭ１１、ＲＯＭ１２、ＨＤＤ１３から情報を読み出し、ＲＡＭ１１、ＨＤＤ１３に対して情報の書き込みを行い、ネットワークインターフェース１４と通信データの授受を行う。
【００２７】
本実施形態におけるＣＰＵ１７がプログラムを実行することで行う作動は、以下の通りである。すなわち、ＣＰＵ１７は、端末６に送信すべきコンテンツデータをＨＤＤ１３から読み出し、そのコンテンツデータを、端末６を最終目的地とし、経由地を無線基地局３とする情報を有する複数のパケット（より具体的にはＩＰデータグラム）に分割し、そのパケットをネットワークインターフェース１４に出力する。
【００２８】
また、ＣＰＵ１７は、コンテンツデータをパケットに分けてネットワークインターフェース１４に出力する際、そのパケットが、当該コンテンツデータのどの位置（具体的には何バイト目）からのデータを有しているかを示すためのシーケンス番号を、そのパケットに含める。
【００２９】
ただし、送信すべきコンテンツデータのうち、ＣＰＵ１７がネットワークインターフェース１４に出力するデータは、無線基地局３からのＡＣＫ（応答データに相当する）データによって制限される。具体的には、ＣＰＵ１７は、ネットワークインターフェース１４が受信した無線基地局３からのＡＣＫデータを受けると、そのＡＣＫに含まれるＡＣＫ番号に、同じくそのＡＣＫに含まれる許容バッファサイズ（より具体的にはウィンドウサイズ）を加算し、送信すべきコンテンツデータの当該ＡＣＫ番号に該当する位置の次のデータから、その加算した結果の値（単位は例えばバイト）までのデータを、ネットワークインターフェース１４に出力する。そしてそれ以降のデータについては、新たに無線基地局３からのＡＣＫデータを受けるまでその送信を待つ。
【００３０】
また、ＣＰＵ１７は、所定の時間（例えば１０分）、無線基地局３からＡＣＫデータを受けないままであると、端末６とのコネクションが途絶えたと判定し、送信すべきコンテンツデータの送信処理を終了する。
【００３１】
以上のようなＣＰＵ１７の作動は、通常のＴＣＰプロトコルに従うものである。
【００３２】
図３は、無線基地局３のブロック図である。無線基地局３は、ＲＡＭ３１、ＲＯＭ３２、ＨＤＤ３３、ネットワークインターフェース（図中ではネットワークＩ／Ｆと記す）３４、無線インターフェース（図中では無線Ｉ／Ｆと記す）３５、アンテナ３６、およびＣＰＵ３７（コンピュータに相当する）を有している。
【００３３】
ネットワークインターフェース３４は、サーバ１から有線ネットワーク２に送出された無線基地局３を経由地とする旨のデータを受信し、それをＣＰＵ３７が認識できる形式に変換してＣＰＵ３７に出力する。また、ネットワークインターフェース３４は、ＣＰＵ３７から受けた宛先をサーバ１とするデータを、ＴＣＰ／ＩＰ通信プロトコルに適合するように加工し、この加工したデータを有線ネットワーク２に送出する。
【００３４】
無線インターフェース３５は、アンテナ３６から受けた信号に対して所定の無線通信プロトコルおよびＴＣＰ／ＩＰプロトコルに従った周波数変換、復調、増幅、Ａ／Ｄ変換等を行い、その結果のデータをＣＰＵ３７に出力し、またＣＰＵ３７から受けたデータに対して所定の無線通信プロトコルおよびＴＣＰ／ＩＰプロトコルに従ったＤ／Ａ変換、増幅、変調、周波数変換等を行い、その結果の信号を、無線移動局４に届くよう、アンテナ３６に出力する。また無線インターフェース３５は、無線移動局４からの信号の受信電力レベルを特定し、その受信電力レベルを示す受信レベル信号をＣＰＵ３７に出力する。
【００３５】
ＣＰＵ３７は、ＲＯＭ３２およびＨＤＤ３３から読み出した無線基地局３の動作のためのプログラムを実行し、その実行の際には必要に応じてＲＡＭ３１、ＲＯＭ３２、ＨＤＤ３３から情報を読み出し、ＲＡＭ３１、ＨＤＤ３３に対して情報の書き込みを行い、ネットワークインターフェース３４および無線インターフェース３５と通信データの授受を行う。ＣＰＵ３７の具体的な作動については後述する。
【００３６】
図４は、無線移動局４のブロック図である。無線移動局４は、ＲＡＭ４１、ＲＯＭ４２、ＨＤＤ４３、ネットワークインターフェース（図中ではネットワークＩ／Ｆと記す）４４、無線インターフェース（図中では無線Ｉ／Ｆと記す）４５、アンテナ４６、およびＣＰＵ４７（コンピュータに相当する）を有している。
【００３７】
ネットワークインターフェース４４は、端末６から有線ネットワーク５に送出された無線移動局４を経由地とする旨のデータを受信し、それをＣＰＵ４７が認識できる形式に変換してＣＰＵ４７に出力する。また、ネットワークインターフェース４４は、ＣＰＵ４７から受けた宛先を端末６とするデータを、ＴＣＰ／ＩＰ通信プロトコルに適合するように加工し、この加工したデータを有線ネットワーク５に送出する。
【００３８】
無線インターフェース４５は、アンテナ４６から受けた信号に対して所定の無線通信プロトコルおよびＴＣＰ／ＩＰプロトコルに従った周波数変換、復調、増幅、Ａ／Ｄ変換等を行い、その結果のデータをＣＰＵ４７に出力し、またＣＰＵ４７から受けたデータに対して所定の無線通信プロトコルおよびＴＣＰ／ＩＰプロトコルに従ったＤ／Ａ変換、増幅、変調、周波数変換等を行い、その結果の信号を、無線基地局３に届くよう、アンテナ４６に出力する。また無線インターフェース４５は、無線基地局３からの信号の受信電力レベルを特定し、その受信電力レベルを示す受信レベル信号をＣＰＵ４７に出力する。
【００３９】
ＣＰＵ４７は、ＲＯＭ４２およびＨＤＤ４３から読み出した無線移動局４の動作のためのプログラムを実行し、その実行の際には必要に応じてＲＡＭ４１、ＲＯＭ４２、ＨＤＤ４３から情報を読み出し、ＲＡＭ４１、ＨＤＤ４３に対して情報の書き込みを行い、ネットワークインターフェース４４および無線インターフェース４５と通信データの授受を行う。ＣＰＵ４７の具体的な作動については後述する。
【００４０】
図５は、端末６のブロック図である。端末６は、ＲＡＭ６１、ＲＯＭ６２、ＨＤＤ６３、ネットワークインターフェース（図中ではネットワークＩ／Ｆと記す）６４、およびＣＰＵ６７を有している。
【００４１】
ネットワークインターフェース６４は、無線基地局４から有線ネットワーク５に送出された端末６宛のデータを受信し、それをＣＰＵ６７が認識できる形式に変換してＣＰＵ６７に出力する。また、ネットワークインターフェース６４は、ＣＰＵ６７から受けた最終目的地をサーバ１とし、経由地を無線移動局４とするデータを、ＴＣＰ／ＩＰ通信プロトコルに適合するように加工し、この加工したデータを有線ネットワーク５に送出する。
【００４２】
ＣＰＵ６７は、ＲＯＭ６２およびＨＤＤ６３から読み出した端末６の動作のためのプログラムを実行し、その実行の際には必要に応じてＲＡＭ６１、ＲＯＭ６２、ＨＤＤ６３から情報を読み出し、ＲＡＭ６１、ＨＤＤ６３に対して情報の書き込みを行い、ネットワークインターフェース６４と通信データの授受を行う。
【００４３】
本実施形態におけるＣＰＵ６７がプログラムを実行することで行う作動は、以下の通りである。すなわち、ＣＰＵ６７は、サーバ１が発信元となり、無線移動局４が端末６宛に送信し、ネットワークインターフェース６４が受信したコンテンツデータを受けると、そのコンテンツデータをＲＡＭ６１またはＨＤＤ１３に蓄積する。また、ＣＰＵ６７は、現在受信しているサーバ１発のコンテンツデータのパケットを所定期間（例えば１０分）以上受けることがなかった場合、サーバ１とのコネクションが途絶えたと判定し、そのコンテンツデータの受信処理を終了する。
【００４４】
次に、無線基地局３および無線移動局４による、サーバ１から端末６へ送信されるコンテンツデータの中継のための処理について説明する。図６〜図１２は、その処理のために無線基地局３のＣＰＵ３７、または無線移動局４のＣＰＵ４７が実行するプログラムのフローチャートである。
【００４５】
ＣＰＵ３７は、端末６とのコネクションが継続している間は、常時図６の下り受信用プログラム１００、図７の上り送信用プログラム２００、図８の下り送信用プログラム３００、および図１０の上り受信用プログラム５００を並列的に実行する。
【００４６】
ＣＰＵ４７は、サーバ１とのコネクションが継続している間は、常時図６の下り受信用プログラム１００、図９の上り送信用プログラム４００、図１０の上り受信用プログラム５００、および図１２の下り送信用プログラム６００を並列的に実行する。
【００４７】
これらのプログラム１００〜６００を実行することによるＣＰＵＣ３７、ＣＰＵ４７の作動は、大きく分けて、無線通信区間７が通信可能である場合の作動、および、通信不能である場合の作動の、２つの作動形態を有している。ＣＰＵ３７およびＣＰＵ４７は、無線通信区間７が通信可能であるか否かを、それぞれ無線インターフェース３５および無線インターフェース４５からの受信電力レベル信号が示す受信電力レベルが、所定の基準電力レベルより高いか否かによって特定する。
【００４８】
以下、まず無線通信区間７が通信可能である場合の、ＣＰＵ３７およびＣＰＵ４７の中継のための作動について説明する。
【００４９】
まず、無線基地局３のＣＰＵ３７は、サーバ１からのデータ受信のための下り受信用プログラム１００の実行において、ステップ１１０で、サーバ１からのデータをネットワークインターフェース３４を介して受信するまで待つ。
【００５０】
そして、サーバ１からデータを受信すると、続いてステップ１２０で、受信したデータが通常データ、すなわちコンテンツデータであるか否かを判定する。コンテンツデータでないデータとは、コネクションの開始、終了、配送制御等の制御データをいう。制御データとしては、より具体的には、例えばＳＹＮ、ＳＹＮ−ＡＣＫ、ＦＩＮ、ＦＩＮ−ＡＣＫデータがある。
【００５１】
制御データを受信した場合、続いてステップ１３０で、その制御データに基づいて、ＴＣＰ／ＩＰの規定に沿った通常の処理を行い、続いてステップ１４０で、現在のサーバ１から端末６へのコンテンツデータの中継のための、サーバ１との通信コネクションを開放するか否かを、受信した制御データがＦＩＮデータまたはＦＩＮ−ＡＣＫであるか否かによって判定する。そして、サーバ１との通信コネクションを開放する場合、実際にコネクションを開放して下り受信用プログラム１００の実行を終了する。また、コネクションを開放しない場合、再びステップ１１０でサーバ１からのデータ受信を待つ。
【００５２】
ステップ１２０で通常データを受信した場合、続いてステップ１５０で、受信したデータ中の（具体的にはＴＣＰセグメント中の）シーケンス番号を読み出し、このシーケンス番号の値を、送信ＡＣＫ番号を示す変数に代入する。なお、既述の通り、サーバ１からのコンテンツデータのパケットには、そのパケットが、当該コンテンツデータのどの位置からのデータを有しているかを示すためのシーケンス番号が含まれている。したがって、この送信ＡＣＫ番号を示す変数は、無線基地局３が中継のためにそれまでに受信したコンテンツデータの総サイズを示す値であるといえる。
【００５３】
続いてステップ１６０では、許容バッファサイズを示す変数を更新する。この許容バッファサイズを示す変数は、後に（図７のステップ２１５参照）サーバ１にＡＣＫデータを送信するときに用いる変数である。この許容バッファサイズを示す変数は、後述するように、無線基地局３のＲＡＭ３１またはＨＤＤ３３に割り当てられた、コンテンツデータのバッファ用の領域の空き容量を示す変数である。このステップ１６０の処理の詳細は後述する。ステップ１６０に続いては、再びステップ１１０でサーバ１からのデータの受信を待つ。
【００５４】
以上のような下り受信用プログラム１００をＣＰＵ３７が実行することで、無線基地局３は、サーバ１からコンテンツデータを受信すると、その受信したデータ中のシーケンス番号に基づいて、自身が有するコンテンツデータ用のバッファ領域の現在の空き容量である許容バッファサイズを更新する。また、サーバ１から制御データを受信すると、その制御データに応じた処理を行う。
【００５５】
また、ＣＰＵ３７は、図７の上り送信用プログラム２００の実行において、ステップ２０５で、上述のように無線通信区間７が通信可能であると判定し、続いてステップ２１０で、前回のこのステップ２１０の実行以降、上述の下り受信用プログラム１００のステップ１５０で送信ＡＣＫ番号を示す変数が更新されたか否かを判定し、更新されるまで、ステップ２０５、２１０の処理を繰り返す。更新されている場合、新たにサーバ１からコンテンツデータを受信していることになるので、続いてステップ２１５で、サーバ１を宛先とするＡＣＫデータをネットワークインターフェース３４に出力する。ここで、その出力するＡＣＫデータ中に含める送信ＡＣＫ番号は、現在の送信ＡＣＫ番号を示す変数の値とし、また、その出力するＡＣＫデータ中に含める許容バッファサイズ（具体的にはウィンドウサイズ）は、現在の許容バッファサイズを示す変数の値とする。
【００５６】
これによって、無線基地局３からサーバ１にＡＣＫデータが渡され、サーバ１は、この受信したＡＣＫデータ中の送信ＡＣＫ番号および許容バッファサイズに基づいて、送信すべきコンテンツデータの、（送信ＡＣＫ番号＋１）番目の位置（具体的にはバイト単位）から、（送信ＡＣＫ番号＋許容バッファサイズ）番目の位置までのデータを、端末６を最終目的地として無線基地局３に送信するようになる。
【００５７】
なお、以降では、コンテンツデータのうち、あるＡＣＫデータに含まれる送信ＡＣＫ番号に該当する位置の次のデータから、そのＡＣＫデータに含まれる（送信ＡＣＫ番号＋許容バッファサイズ）に該当する位置のデータまでを、「コンテンツデータのうち、そのＡＣＫデータによって送信要求されたデータ」と呼ぶ。
【００５８】
続いてステップ２２０で、下り受信用プログラム１００において、サーバ１との通信コネクションが開放されたか否かを判定し、開放されていれば上り送信用プログラム２００の実行を終了し、開放されていなければ再びステップ２０５の判定に戻る。
【００５９】
このように、上り送信用プログラム２００をＣＰＵ３７が実行することで、無線基地局３は、サーバ１からのコンテンツデータを受ける度に（ステップ２１０参照）、それに対応する、自身のバッファの空き容量状況（すなわち蓄積状態）と、現在までに受信したコンテンツデータのサイズ（送信ＡＣＫ番号に該当する）を含むＡＣＫデータを、サーバ１宛に送信する（ステップ２１５参照）。
【００６０】
また、ＣＰＵ３７は、中継のため、受信したコンテンツデータを無線移動局４に転送するための、図８に示す下り送信用プログラム３００の実行において、ステップ３１０で、上述のように無線通信区間７が通信可能であると判定し、続いてステップ３２０で、無線移動局４に送信すべきコンテンツデータがあると判定するまで、ステップ３１０および３２０を繰り返す。
【００６１】
送信すべきコンテンツデータがあるか否かは、サーバ１から受信したコンテンツデータのうち、後述する図１０の上り受信用プログラム５００の実行によって無線移動局４から受信した最新のＡＣＫデータによって送信要求されたデータがあるか否かによって判定する。送信すべきデータがあると、続いてステップ３３０でその送信すべきデータをパケットに分け、端末６を最終目的地とし、経由地を無線移動局４として送信するため、無線インターフェース３５に出力する。なお、このコンテンツデータ送信の際には、そのパケットが、当該コンテンツデータのどの位置（具体的には何バイト目）からのデータを有しているかを示すためのシーケンス番号を、そのパケットに含める。
【００６２】
ステップ３３０に続いては、ステップ３４０で、コンテンツデータをバッファリングする。バッファリングとは、上述したバッファリング用の領域に、データを格納させることをいう。バッファリングの対象となるコンテンツデータは、サーバ１から受信したコンテンツデータのうち、後述する上り受信用プログラム５００のステップ５５０の実行において受信ＡＣＫ番号を示す変数に代入される、無線移動局４からのＡＣＫデータに含まれるＡＣＫ番号に該当する位置の次の位置以降のコンテンツデータである。ただし、既にバッファリングされているデータについては再度バッファリングは行わない。
【００６３】
このようにデータをバッファリングするのは、無線移動局４から受信確認がないデータは、一度送信した後から再送要求を受ける可能性があるからである。
【００６４】
ステップ３４０に続いてステップ３５０では、後述する上り受信用プログラム５００の実行時に、無線移動局４との通信コネクションが開放されているかを判定し、開放されていれば下り送信用プログラム３００の実行を終了し、開放されていなければステップ３１０、３２０の実行に戻る。
【００６５】
以上のような下り送信用プログラム３００をＣＰＵ３７が実行することで、無線基地局３は、サーバ１から受信したコンテンツデータのうち、必要なものを、ＴＣＰプロトコルに従って、無線移動局４に送信する。
【００６６】
このコンテンツデータを受ける側の無線移動局４のＣＰＵ４７は、コンテンツデータ受信のためのプログラムとして、上述の図６に示した下り受信用プログラム１００を実行する。この下り受信用プログラム１００をＣＰＵ４７が実行することで、無線移動局４は、無線基地局３からコンテンツデータを受信すると、その受信したデータ中のシーケンス番号に基づいて、そのシーケンス番号を送信ＡＣＫ番号を示すとして記憶させ、自身が有するコンテンツデータ用のバッファ領域の現在の空き容量である許容バッファサイズを更新する。また、無線移動局４から制御データを受信すると、その制御データに応じた処理を行う。
【００６７】
また、ＣＰＵ４７は、無線基地局３に制御データを送信するための図９に示す上り送信用プログラム４００の実行において、ステップ４０５〜４２０に示すような処理を行う。ここで、ステップ４０５、４１０、４１５、４２０は、それぞれ、ＣＰＵ３７が実行する上り送信用プログラム２００のステップ２０５、２１０、２１５、２２０の処理と同等である。ただし、ステップ４１５におけるＡＣＫデータの送信先は、無線基地局３である。
【００６８】
このように、上り送信用プログラム４００をＣＰＵ４７が実行することで、無線移動局４は、無線基地局３からのコンテンツデータを受ける度に（ステップ４１０参照）、それに対応する、自身のバッファの空き容量状況と、現在までに受信したコンテンツデータのサイズ（送信ＡＣＫ番号に該当する）を含むＡＣＫデータを、無線基地局３宛に送信する（ステップ４１５参照）。
【００６９】
また、このようなＡＣＫデータを受信する側の無線基地局３のＣＰＵ３７は、無線移動局４からの制御データ受信のための、図１０に示す上り受信用プログラム５００の実行において、まずステップ５１０で、無線移動局４からの制御データを無線インターフェース３５を介して受信するまで待ち、受信すると、続いてステップ５２０で、その制御データが、無線基地局３がコンテンツデータを送信したことに基づくＡＣＫデータであるか、あるいはＳＹＮ、ＳＹＮ−ＡＣＫ、ＦＩＮ、ＦＩＮ−ＡＣＫ等の、それ以外の制御データであるかを判定する。
【００７０】
コンテンツデータに対するＡＣＫでない場合は、続いてステップ５３０で、下り受信用プログラム１００のステップ１３０と同様のパケット処理を行い、続いてステップ５４０で、受信した制御データがＦＩＮまたはＦＩＮ−ＡＣＫであれば、無線移動局４との通信コネクションを開放して上り受信用プログラム５００の実行を終了し、ＦＩＮでもＦＩＮ−ＡＣＫでもなければ、続いてステップ５１０を再度実行する。
【００７１】
ステップ５２０でコンテンツデータに対するＡＣＫであると判定した場合、続いてステップ５５０で、受信したＡＣＫデータに含まれるＡＣＫ番号の値を、受信ＡＣＫ番号を示す変数に代入する。この受信したＡＣＫデータに含まれるＡＣＫ番号の値は、前述の通り、無線移動局４が現時点で受信したコンテンツデータの量を示している。
【００７２】
続いてステップ５５５では、バッファの一部を削除する。削除する一部は、具体的には、現在の受信ＡＣＫ番号を示す変数の値より以前の位置のコンテンツデータである。このように削除するのは、無線移動局４が受信したことが確認できたデータはもはやバッファリングしておく必要がないからである。
【００７３】
続いてステップ１６０で、下り受信用プログラム１００のステップ１６０と同様、許容バッファサイズの更新を行う。この許容バッファサイズを示す変数の更新処理の詳細のフローチャートを、図１１に示す。
【００７４】
この図に示すように、許容バッファサイズを示す変数の更新処理においては、まず現在の送信ＡＣＫ番号を示す変数から現在の受信ＡＣＫ番号を示す変数を減算し、その減算結果があるデータサイズＭより小さいか否かを判定する（ステップ１６２）。そして、当該減算結果があるデータサイズＭより小さい場合は、そのサイズＭから当該減算結果を減算した値を、許容バッファサイズを示す変数に代入する（ステップ１６４）。そして、当該減算結果があるデータサイズＭと同じかあるいは大きい場合は、許容バッファサイズを示す変数にゼロを代入する（ステップ１６６）。
【００７５】
ここで、データサイズＭは、無線基地局３のＲＡＭ３１またはＨＤＤ３３に割り当てられた、コンテンツデータのバッファ用の領域の最大容量である。したがって、許容バッファサイズを示す変数は、コンテンツデータのバッファ用の領域の空き容量を示す値となる。
【００７６】
このように、許容バッファサイズを示す変数の値は、サーバ１からコンテンツデータを受信したときに、下り受信用プログラム１００のステップ１６０の実行によって減少し、無線基地局３からＡＣＫデータを受信したときに上り受信用プログラム５００のステップ１６０の実行によって増加する。
【００７７】
また、無線移動局４は、中継のため、無線基地局３から受信したコンテンツデータを端末６に送信するための、図１２の下り送信用プログラム６００の実行において、ステップ６１０で、上述の通り無線通信区間７が通信可能であると判定し、以降ステップ６２０，〜６５０を実行する。ここで、ステップ６２０、６３０、６４０、６５０の処理は、それぞれ、図８に示した下り送信用プログラム３００のステップ３２０、３３０、３４０、および３５０の処理と同等である。ただし、下り送信用プログラム３００においては、送受信の対象が無線移動局４であったのに対し、下り送信用プログラム６００においては、送受信の対象が端末６であることが異なる。
【００７８】
以上のような下り送信用プログラム６００をＣＰＵ４７が実行することで、無線移動局４は、無線基地局３から受信したサーバ１発のコンテンツデータのうち、必要なものを、ＴＣＰプロトコルに従って、端末６に送信する。
【００７９】
以上説明した通り、無線通信区間７が通信可能な状態においては、サーバ１と無線基地局３との間において、サーバ１が無線基地局３にコンテンツデータを送信し、無線基地局３がそのコンテンツデータの受信に基づいてＡＣＫデータをサーバ１に送信することで、コンテンツデータの受け渡しが進行する。また、無線基地局３と無線移動局４との間において、無線基地局３が無線移動局４にコンテンツデータを送信し、無線移動局４がそのコンテンツデータの受信に基づいてＡＣＫデータを無線基地局３に送信することで、コンテンツデータの受け渡しが進行する。また、無線移動局４と端末６との間において、無線移動局４が端末６にコンテンツデータを送信し、端末６がそのコンテンツデータの受信に基づいてＡＣＫデータを無線移動局４に送信することで、コンテンツデータの受け渡しが進行する。このように、サーバ１と無線基地局３、無線基地局３と無線移動局４、および無線移動局４と端末６が、それぞれ他とは独立したＴＣＰコネクションを確立して、データ受け渡しを行いながら、サーバ１から無線基地局３、無線移動局４、端末６へと、コンテンツデータが中継されていく。そして、サーバ１は無線基地局３からＡＣＫデータを受けることで、端末６とのコネクションが継続していると判定し続ける。また、端末６は無線移動局４からコンテンツデータを受けることで、サーバ１とのコネクションが継続していると判定し続ける。
【００８０】
次に、無線通信区間７の通信が不能となった場合の通信中継システムの作動について説明する。この場合、無線基地局３および無線移動局４はそれぞれ、サーバ１と端末６との間のデータ通信のコネクションが継続しているとサーバ１および端末６に判定させるための偽装データを、サーバ１および端末６に定期的に送信するようになっている。以下、このときの作動について具体的に説明する。
【００８１】
この場合においては、無線基地局３のＣＰＵ３７は、下り受信用プログラム１００については、無線通信区間７が通信可能な場合と同じように実行し、下り送信用プログラム３００については、ステップ３１０で、通信不能であると判定し続ける。また、上り受信用プログラム５００については、無線通信区間７が通信不能であるので、ステップ５１０でデータ受信しないと判定し続ける。
【００８２】
また、上り送信用プログラム２００の実行においては、ステップ２０５で無線通信区間７が通信不能であると判定し、続いてステップ２２５で、時間経過を計測するタイマを０からスタートさせる。
【００８３】
続いてステップ２３０で、無線通信区間７が通信可能でないと判定し、続いてステップ２３５で上述のタイマが満了したか否かを判定する。タイマが満了したとは、タイマの計測による時間が所定の満了時間（例えば１分）を経過したことをいう。所定の満了時間としては、ＡＣＫの送信量の増大によって有線ネットワーク２に対して輻輳等の大きな影響を与えない程度の長い時間であり、かつ、サーバ１がＡＣＫデータをタイムアウト時間以上受信しないことで、サーバ１と端末６とのコネクションが途絶したと判断することがない程度に短い時間である。この所定値は、固定値であってもよいし、例えば無線基地局３がサーバ１に対してタイムアウト時間のデータを要求し、サーバ１がそれに応じてタイムアウト時間のデータを無線基地局３に送信することで、無線基地局３が満了時間をそのタイムアウト時間に設定するようになっていてもよい。タイマが満了していると、続いてステップ２４０を実行し、満了していないと、続いてステップ２３０、２３５を実行する。
【００８４】
タイマが満了した後のステップ２４０では、サーバ１への送信のため、ＡＣＫデータをネットワークインターフェース３４に出力する。ここで送信するＡＣＫデータに含めるＡＣＫ番号、および許容バッファサイズは、ステップ２１５と同様、現在の送信ＡＣＫ番号を示す変数の値、および現在の許容バッファサイズを示す変数の値である。
【００８５】
ステップ２４０に続いては、ステップ２５５で、タイマを終了させ、ステップ２２０で、上述した通り通信コネクションの開放があったか否かを判定し、開放しない場合は、続いてステップ２０５、２２５を実行し、開放した場合は、上り送信用プログラム２００の実行を終了する。
【００８６】
このようなＣＰＵ３７の作動により、無線基地局３は、無線通信区間７が通信不能であると判定した場合、満了時間が経過する度に、サーバ１に対してＡＣＫデータの送信を繰り返す。上述した通り、サーバ１は、タイムアウト間隔より短い間隔で無線基地局３からＡＣＫデータを受け続けている限り、端末６との通信コネクションが継続していると判定するので、サーバ１がコンテンツデータの送信のための処理を終了しなくなる。その意味で、無線通信区間７が通信不能のときに無線基地局３がサーバ１に送信する制御データとしてのＡＣＫデータは、サーバ１と端末６との間のデータ通信が継続しているとサーバ１に判定させるための偽装データである。なお、無線基地局３は、長期間（例えば１時間）無線通信区間７が通信不能のままであれば、サーバ１に偽装データを送信することを止めるようになっていてもよい。
【００８７】
なお、上述の通り、送信ＡＣＫ番号を示す変数の値は、サーバ１からコンテンツデータを受信したときに下り受信用プログラム１００のステップ１５０の実行によって増大する。また、許容バッファサイズを示す変数の値は、サーバ１からコンテンツデータを受信したとき減少し、無線移動局４からＡＣＫデータを受信したときに減少する。したがって、無線通信区間７が通信不能の場合、無線移動局４からはＡＣＫデータを受信することがないので、サーバ１からコンテンツデータを受信する度に、送信ＡＣＫ番号を示す変数の値は増大し続け、許容バッファサイズを示す変数の値は減少し続ける。
【００８８】
そして、許容バッファサイズを示す変数の値がゼロとなって以降は、サーバ１に対して許容バッファサイズがゼロのＡＣＫデータが、満了時間の経過の度に送信されるので、サーバ１は、送信処理の終了はしない。また、コンテンツデータの送信について待機状態に入る。すると、無線基地局３側では、送信ＡＣＫ番号を示す変数の値が変化しなくなる。したがって、許容バッファサイズの変数の値がゼロとなって以降は、無線通信区間７が通信不能である限り、送信されるＡＣＫ中の許容バッファサイズおよびＡＣＫ番号は、変化しない。
【００８９】
また、無線通信区間７が通信不能の場合、無線移動局４は、下り受信用プログラム１００については、ステップ１１０で無線基地局３からデータ受信しないと判定し続ける。また、上り送信用プログラム４００については、ステップ４０５で無線通信区間７が通信不能であると判定し続ける。また、上り受信用プログラム５００については、無線通信区間７が通信可能な場合と同様の処理を行う。
【００９０】
また、下り送信用プログラム６００の実行においては、まずステップ６１０で、無線通信区間７が通信不能であると判定し、続いてステップ６５５で、バッファリング用の領域にバッファリングしているコンテンツデータがあるか否かを判定し、あれば上述したステップ６３０〜６５０によって、そのデータの送信およびバッファリングを行い、コネクションの開放があるまでは再びステップ６１０、６５５を実行する。
【００９１】
また、バッファリングしているコンテンツデータが無い場合、続いてステップ６６０で、時間経過を計測するタイマを０からスタートさせ、続いてステップ６６５で無線通信区間７が通信不能であると判定し、続いてステップ６７０でタイマ満了か否かを判定し、満了していなければ続いてステップ６６５、６７０を再度実行する。なお、タイマ満了か否かの判定については、上り送信用プログラム２００のステップ２３５と同様である。
【００９２】
タイマが満了していれば、続いてステップ６７５で、タイマを終了し、ステップ６８０で、端末６に送信するために、偽装データをネットワークインターフェース４４に出力する。偽装データとしては、端末６とサーバ１との間のデータ通信が継続していると端末６に判定させることができるデータであれば、どのようなものでもよい。例えば、最後に端末６に送信したコンテンツデータパケットと、送信ＡＣＫ番号および内容（ペイロード）が全く同じパケットであってもよいし、内容がでたらめで、端末６の受信において受信データの整合性チェック（例えばチェックサムチェック）に失敗するようなコンテンツデータであってもよい。これら例示したデータは、本来届くはずのないデータであるので、誤りデータであるということができる。
【００９３】
ステップ６８０に続いては、ステップ６５０で、上述した通り通信コネクションの開放があったか否かを判定し、開放しない場合は、続いてステップ６１０、６５５を実行し、開放した場合は、下り送信用プログラム６００の実行を終了する。
【００９４】
このようになっているので、無線移動局４は、無線通信区間７が通信不能の場合、バッファリングしているコンテンツデータがあれば、それを端末６に送信し、バッファリングデータが無くなれば、タイマ満了時間が経過する度に、繰り返し偽装データを端末６に送信する。このようになっているので、端末６でのタイムアウト間隔より短い間隔で偽装データを受信し続けている限り、端末６は、サーバ１とのデータ通信が継続していると判定するので、受信のための処理を終了することがない。なお、無線移動局４は、長期間（例えば１時間）無線通信区間７が通信不能のままであれば、端末６に偽装データを送信することを止めるようになっていてもよい。
【００９５】
次に、無線通信区間７が通信不能状態から通信可能状態となった場合について説明する。このとき、無線基地局３のＣＰＵ３７は、上り送信用プログラム２００の実行において、ステップ２３０で通信可能であると判定し、続いてステップ２４５で、ステップ２１５と同様に、サーバ１に送信するためにＡＣＫデータをネットワークインターフェース３４に出力する。続いてステップ２５０で、ステップ２１０と同様に、送信ＡＣＫ番号を示す変数が更新されたかを判定する。そして、更新されていれば続いてステップ２５５でタイマを終了し、通信コネクション開放が行われない限り、ステップ２２０、２０５、２１０が続いて実行され、通常の無線通信区間７が通信可能な状態の作動に戻る。また、送信ＡＣＫ番号を示す変数が更新されていなければ、ステップ２３０、２４５を再度実行する。
【００９６】
このようになっているので、無線通信区間７が通信可能な状態に戻ると、ＣＰＵ３７は、タイマの満了を待たずに、繰り返しＡＣＫデータをサーバ１に送信するので、ＡＣＫデータの送信周期が、無線通信区間７が通信不能であったときに比べ、短くなる。
【００９７】
このようになることで、無線通信区間７の回復によって無線基地局３から無線移動局４へのコンテンツデータの送信が再開し（下り送信用プログラム３００のステップ３３０）、無線基地局３における許容バッファサイズの値がゼロから増える（上り受信用プログラム５００のステップ１６０）ことを、いち早くサーバ１に伝えることができ、それにより、サーバ１はいち早くコンテンツデータの送信を再開することができる。
【００９８】
また、無線通信区間７が回復したときにサーバ１が最初に送信の要求を受けるデータが再送データである場合、すなわち、サーバ１が一度送信したコンテンツデータに対応するＡＣＫ番号を含むＡＣＫデータを、ＣＰＵ３７がサーバ１に送信する場合、通常のＴＣＰの規格によれば、サーバ１はその再送要求のデータを３度以上受けて初めて、実際にそのコンテンツデータの再送信を行うようになっている。このような場合においても、上記のようにＣＰＵ３７が短周期でＡＣＫを繰り返し送信すれば、サーバ１からのコンテンツデータの再送がいち早く始まることになる。
【００９９】
また、無線通信区間７が通信不能状態から通信可能状態となったとき、無線移動局４のＣＰＵ４７は、下り送信用プログラム６００の実行において、ステップ６６５で無線通信区間７が通信可能となったと判定し、続いてステップ６７５でタイマを終了し、ステップ６８０で偽装データを送信し、通信コネクション開放が行われない限り、ステップ６５０、６１０、６２０が続いて実行され、通常の無線通信区間７が通信可能な状態の作動に戻る。
【０１００】
なお、無線通信区間７が通信不能状態となった後に無線通信区間７が通信可能状態に復帰する場合、サーバ１と端末６とが同一のＩＰアドレスを有することが望ましいが、これを実現する方法として、無線通信区間７において通信不能となる前後において、端末６が接続する基地局の属するセグメントに変更がなければ、サーバ１、端末６が固定ＩＰアドレスを有するようになっていてもよい。また、端末６側に無線通信区間７における無線接続のために動的ＩＰアドレスが割り当てられる場合は、そのアドレスを割り当てる装置が、端末６の識別情報および使用ＩＰアドレスを記憶しており、無線通信区間７が再度無線通信区間７において無線接続したときに、その記憶している情報に基づいて、無線切断前と同じＩＰアドレスを付与するようになっていてもよい。
【０１０１】
また、ＩＰｖ６のモバイルＩＰの技術を用いれば、無線通信区間７において通信不能となる前後において、端末６のＩＰアドレスに変更があっても、サーバ１と端末６との間の通信は継続する。
【０１０２】
ここで、本実施形態の構成要素と特許請求の範囲における構成要素との対応関係についてまとめる。上記の実施形態において、無線基地局３および無線移動局４が、それぞれ独立に通信中継装置に相当する。また、無線基地局３が通信中継装置であるとした場合、サーバ１が第１の通信装置に相当し、無線移動局４または端末６が第２の通信装置に相当する。また、無線移動局４が通信中継装置であるとした場合、端末６が第１の通信装置に相当し、サーバ１または無線基地局３が第２の通信装置に相当する。
【０１０３】
また、無線基地局３のネットワークインターフェース３４および無線インターフェース３５、無線移動局４のネットワークインターフェース４４および無線インターフェース４５が、通信回路に相当する。
【０１０４】
また、無線基地局３のＣＰＵ３７が、下り受信用プログラム１００、上り送信用プログラム２００のステップ２０５、２１０、２１５、２２０、下り送信用プログラム３００、上り受信用プログラム５００を実行することで、中継手段および上流側中継手段として機能する。
【０１０５】
また、無線移動局４のＣＰＵ４７が、下り受信用プログラム１００、上り送信用プログラム４００、上り受信用プログラム５００、下り送信用プログラム６００のステップ６１０、６２０、６３０、６４０、６５０を実行することで、中継手段および下流側中継手段として機能する。
【０１０６】
また、無線基地局３のＣＰＵ３７が、上り送信用プログラム２００のステップ２２５、２３０、２３５、２４０、２４５、２５０、２５５を実行することで、送信制御手段および上流側送信制御手段として機能する。
【０１０７】
また、無線移動局４のＣＰＵ４７が、下り送信用プログラム６００の６５５、６６０、６６５、６７０、６７５、６８０を実行することで、送信制御手段および下流側送信制御手段として機能する。
【０１０８】
また、無線基地局３が、上流側通信中継装置に相当し、ネットワークインターフェース３４および無線インターフェース３５が、上流側通信回路に相当する。
【０１０９】
また、無線移動局４が、下流側通信中継装置に相当し、ネットワークインターフェース４４および無線インターフェース４５が、下流側通信回路に相当する。
【０１１０】
また、サーバ１がサーバ装置に相当し、端末６がクライアント装置に相当する。
【０１１１】
なお、上記実施形態においては、無線基地局３および無線移動局４が、それぞれサーバ１および端末６に偽装データを送信しているが、無線基地局３がサーバ１のみに偽装データを送信するだけであっても、無線移動局４が端末６に偽装データを送信するだけであってもよい。この場合は、それぞれ、サーバ１がサーバ１と端末６の間のデータ通信が持続していると判定するようになるか、あるいは、端末６がサーバ１と端末６の間のデータ通信が持続していると判定するようになるかのいずれかであるが、それでも一定の効果がもたらされる。
【０１１２】
また、上記の実施形態においては、通信中継システムにおける通信プロトコルとしてＴＣＰ／ＩＰを例示したが、これはあくまでも一例であって、ＴＣＰプロトコルに従う必要も、ＩＰプロトコルに従う必要もない。
【０１１３】
また、上記の実施形態においては、無線通信区間７が通信可能か否かを、受信電力レベル信号が、所定の基準電力レベルより高いか否かで特定していたが、ビットエラーレート、パケットエラーレートで特定することもできる。
【０１１４】
また、無線移動局４と端末６は１つの機器（例えば車両用ナビゲーション装置や携帯電話）としてまとまっており、その機器内の信号線を介してデータをやりとりしていてもよい。
【０１１５】
また、上記の実施形態においては、無線基地局３および無線移動局４のＣＰＵ３７、４７は、無線通信区間７が通信不能であることを判定し、通信不能である場合にのみ、偽装データを送信しているが、無線基地局３および無線移動局４は、必ずしも無線通信区間７が通信不能であることを判定する機能を有さなくともよい。例えば、無線基地局３および無線移動局４は、無線通信区間７が通信不能であるとないとに関わらず、常に偽装データを繰り返し所定の間隔で送信するようになっていてもよい。
【０１１６】
また、無線基地局３からサーバ１に送信される偽装データは、ＡＣＫデータとなっているが、必ずしもこのようになっておらずともよい。偽装データは、サーバ１と端末６との間のデータ通信が継続しているとサーバ１に判定させるためのものであれば、どのようなものであってもよい。
【０１１７】
また、通信中継装置、上流側通信中継装置は、必ずしも上記の実施形態のように無線基地局３として実現するようになっていなくともよく、有線ネットワーク２に接続された無線基地局３以外の通信機器が、通信中継装置、上流側通信中継装置の機能を実現するようになっていてもよい。
【０１１８】
例えば、サーバ１がインターネット等の広域ネットワークに接続されている場合、無線基地局３を含めた複数の無線基地局が接続する基地局ネットワークと、インターネット等の広域ネットワークとの間の通信を中継するルータが、通信中継装置、上流側通信中継装置としての機能を実現してもよい。このためには、当該ルータのＣＰＵが、下り受信用プログラム１００、上り送信用プログラム２００、下り送信用プログラム３００、および上り受信用プログラム５００を実行するようになっていればよい。
【０１１９】
その際、当該ＣＰＵによる各プログラムの実行において、無線通信区間が通信可能であるか否かの判定は、当該基地局ネットワーク内の各無線基地局から当該ルータに送信される、それぞれの無線基地局についての無線通信区間が通信可能であるか否かの情報に基づいて行えばよい。より詳しくは、当該ＣＰＵは、当該基地局ネットワーク内の各無線基地局のすべてについての無線通信区間が通信不能であれば、上記判定において通信不能であると判定し、当該基地局ネットワーク内の各無線基地局の１つでも、その無線通信区間が通信可能となっていれば、上記判定において通信可能であると判定するようになっていればよい。
【０１２０】
また同様に、通信中継装置、下流側通信中継装置は、必ずしも上記の実施形態のように無線移動局４として実現するようになっていなくともよく、有線ネットワーク５に接続された無線移動局４以外の他の通信機器が、下り受信用プログラム１００、上り送信用プログラム４００、上り受信用プログラム５００、および下り送信用プログラム６００の実行により、通信中継装置、下流側通信中継装置の機能を実現するようになっていてもよい。なおその際、無線通信区間が通信可能であるか否かの判定は、無線移動局４から当該他の通信機器に送信される、無線移動局４についての無線通信区間が通信可能であるか否かの情報に基づいて行えばよい。
【図面の簡単な説明】
【０１２１】
【図１】本発明の実施形態に係る通信中継システムの構成図である。
【図２】サーバ１のハードウェア構成を示すブロック図である。
【図３】無線基地局３のハードウェア構成を示すブロック図である。
【図４】無線移動局４のハードウェア構成を示すブロック図である。
【図５】端末６のハードウェア構成を示すブロック図である。
【図６】下り受信用プログラム１００のフローチャートである。
【図７】上り送信用プログラム２００のフローチャートである。
【図８】下り送信用プログラム３００のフローチャートである。
【図９】上り送信用プログラム４００のフローチャートである。
【図１０】上り受信用プログラム５００のフローチャートである。
【図１１】下り受信用プログラム１００および上り受信用プログラム５００におけるステップ１６０の詳細なフローチャートである。
【図１２】下り送信用プログラム６００のフローチャートである。
【符号の説明】
【０１２２】
１…サーバ、２、５…有線ネットワーク、３…無線基地局、４…無線移動局、
６…端末、７…無線通信区間、１１、３１、４１、６１…ＲＡＭ、
１２、３２、４２、６２…ＲＯＭ、１３、３３、４３、６３…ＨＤＤ、
１４、３４、４４、６４…ネットワークインターフェース、
１７、３７、４７、６７…ＣＰＵ、３５、４５…無線インターフェース、
３６、４６…アンテナ、１００…下り受信用プログラム、
２００、４００…上り送信用プログラム、３００、６００…下り送信用プログラム、
５００…上り受信用プログラム。
【図１】
2006101315.tif 000003
【図２】
2006101315.tif 000004
【図３】
2006101315.tif 000005
【図４】
2006101315.tif 000006
【図５】
2006101315.tif 000007
【図６】
2006101315.tif 000008
【図７】
2006101315.tif 000009
【図８】
2006101315.tif 000010
【図９】
2006101315.tif 000011
【図１０】
2006101315.tif 000012
【図１１】
2006101315.tif 000013
【図１２】
2006101315.tif 000014