複数の無線端末を有するアドホックネットワークであって、前記複数の無線端末の少なくとも一つは他の無線端末との間の無線リンクの安定状況を判断する安定化モジュールを有する第一のタイプの無線端末であり、前記複数の無線端末の少なくとも一つは安定化モジュールを有していない第二のタイプの無線端末であり、前記第一のタイプの無線端末は、前記第一のタイプの無線端末又は前記第一のタイプの他の無線端末からルーティングパケットを受信すると、当該ルーティングパケットを前記安定化モジュールへ送り、前記安定化モジュールは当該ルーティングパケットの送信元との間の通信品質を調べて、当該通信品質が閾値以下と判断される場合には、前記ルーティングパケットを破棄し、当該通信品質が閾値を上回ると判断される場合には、前記ルーティングパケットを前記ルーティングパケットを前記第一のタイプの無線通信端末が有するルーティングプロトコルモジュールに送り、前記ルーティングプロトコルモジュールはルーティングプロトコルを実行することを特徴とするアドホックネットワーク。請求項1に記載のアドホックネットワークであって、前記複数の無線端末には各々、他の無線端末から受信したデータを中継する中継無線端末としての選ばれやすさを示すWillingness値が設定されており、前記第一のタイプの無線端末には、前記第二のタイプの無線通信端末に設定されるWillingness値とは異なる値のWillingness値が設定されることを特徴とするアドホックネットワーク。請求項2に記載のアドホックネットワークであって、前記第一のタイプの無線端末のWillingness値は、前記第二のタイプの無線端末のWillingness値よりも高いことを特徴とするアドホックネットワーク。請求項1乃至3のいずれか一項に記載のアドホックネットワークであって、前記第一のタイプの無線端末は、他の無線端末と通信するためのインターフェース部を複数有することを特徴とするアドホックネットワーク。請求項1乃至4のいずれか一項に記載のアドホックネットワークであって、第一のタイプの無線端末は、パケットを受信すると当該パケットがルーティングパケットであるかを判断し、ルーティングパケットである場合に当該ルーティングを前記無線安定化モジュールへ送ることを特徴とするアドホックネットワーク。特許文献1では、アドホックネットワークの構築にIETFにおいて標準化されているプロトコルを使用することが考慮されていないため、ルーティングプロトコルを設計する必要があり、標準プロトコルとの相互接続性がないという課題があった。非特許文献1のリンクヒステリシス方式は、定期的にルーティングパケットが到着している場合、安定したリンクと判定しており、電波状態の変化が考慮されていない。無線LANにおいて受信電波強度に閾値を設定した場合、ユーザーデータのパケットが受信ノードにおいて受信できていても、電波強度が閾値を下回ると破棄されてしまいパケットの損失につながっていた。非特許文献2のARFは、通信エラー率により通信レートを制御するため、実際にエラーが発生してからでないと適応できないという遅延の問題があった。また、通信が連続して成功すると通信レートを上げるため、頻繁に通信レートが変更され通信が安定しなかった。非特許文献3のRBARは、送信直前の電波状態をもとに通信レートを設定することができるため、安定した高レート通信を提供することができると考えられるが、無線LANの規格である80211と異なるプロトコルになるため、標準プロトコルとの相互接続性がないという課題があった。本発明の目的は、標準プロトコルとの相互接続性を保ったまま、電波の状態を鑑みたノード間の安定なリンク検知を行い、ユーザーデータのパケット損失減少かつスループット向上を実現させるアドホックネットワーク構築方法、プログラム、無線端末を提供することにある。上記目的を達成するため、本発明においては、複数の無線端末が送受信するデータを中継する無線端末において、アドホックネットワークを構築するためのルーティングパケットをルーティングプロトコルのソフトウェアが処理する前に、送信元である無線端末との間の隣接ノード間リンクの安定判断を行い、安定と判断された場合にのみ、ルーティングプロトコルのソフトウェアがルーティングパケットを処理するよう構成することで、安定な隣接ノード間リンクのみを使用して経路を構築するアドホックネットワーク構築方法を提供する。また、無線の通信方式が複数の通信レートに対応していた場合は、上記無線リンクの安定判断で安定と判断された際に、その安定度によって通信レートを動的に変更することにより、安定かつスループットの高いアドホックネットワーク構築方法を提供する。また、本発明においては、無線通信インターフェース部と記憶部とこれらと電気的に接続された処理部とから構成され、他の無線端末からのデータを中継する無線端末の処理部において実行されるプログラムとして、無線リンクの安定状況を判断するステップと、無線リンクが安定と判断した場合に、ルーティングパケットを用いてルーティングプロトコルを実行させるステップと、通信レートを設定するステップからなるアドホックネットワーク構築プログラムを提供する。更に、本発明においては、他の無線端末からのデータを中継する無線端末であって、無線通信インターフェース部と、隣接ノード間の無線リンクの安定状況を測定する安定化プログラムとルーティングパケットを用いて経路を構築するルーティングプロトコルとを記憶する記憶部と、記憶部に記憶された安定化プログラムとルーティングプロトコルとを実行する処理部とからなり、この処理部は、安定化プログラムを実行し、その結果、隣接ノード間の無線リンクが安定と判断した場合に、ルーティングパケットを用いてルーティングプロトコルを実行する無線端末を提供する。なお、無線リンクの安定状況を判断するにあたっては通信品質を測定するが、好適には電波強度をこの通信品質の評価値と用いるが、これに限定することなく、信号対雑音比、ビット誤り率等を評価値として用いても良い。また、無線リンクの安定性を判断するために、好適にはルーティングパケットを用いると良いが、ルーティングパケット以外のパケットで行っても構わない。ルーティングパケット以外のパケットには例えば無線LANのコントロールパケットであるビーコンパケットやユーザーデータの通信パケット等があり、これらパケットの一部もしくは全てを使用することも可能である。更に、このようにして求められた通信品質の評価値に従い、リンク品質値を決め、このリンク品質値が設定された閾値を上回った場合にリンク有効設定を行い、リンク品質値が他の閾値を下回った場合にリンク無効設定を行うよう構成し、リンク有効設定の場合にのみ、ルーティングパケットを受信してルーティングプロトコルへ渡し、リンク無効設定の場合にルーティングパケットを破棄するよう構成することもできる。本発明によれば、アドホックネットワークにおいて標準プロトコルとの相互接続性を保ち、高品質かつ高スループットの得られる通信経路を構築することができる。以下、本発明の具体的な実施例を図面を用いて説明する。図1は本発明のアドホックネットワークにおけるネットワーク安定化方式の第一の実施例を説明するための図である。図1において、無線端末1-3は、互いに通信可能であるが、端末1と端末3との間は電波強度が弱い、もしくは、パケット損失率が高い不安定な無線リンク4で結ばれており、端末1と端末2の間は電波強度が高い、もしくはパケット損失率が低い安定した無線リンク5で、端末2と端末3との間は電波強度が高い、もしくはパケット損失率が低い安定した無線リンク6で結ばれている。無線端末1-3のハードウェア構成の一実施例を図7に示す。同図で700は各無線端末1-3を示す。無線端末700は、処理部CPU701、記憶部メモリ702と無線通信インターフェース部無線LANI/F703を具備しており、無線LANI/F703はアンテナ704と接続している。無線端末700は無線LANI/F703とアンテナ704を用いてパケットの送受信を行うことができる。本実施例では、無線端末700において、無線通信インターフェース部は1つしか装備していないが複数装備することも可能である。以下の説明における各無線端末700の処理は、上記CPU701がメモリ702に格納されているプログラムを実行することにより、実現されるものである。プログラムは、あらかじめ、メモリ702に格納されていても良いし、当該端末700が利用可能な、着脱可能な記憶媒体、または通信媒体有線、無線、光などのネットワーク、または当該ネットワーク上の搬送波やデジタル信号を介して、必要に応じてメモリ702に導入されてもよい。一般に、アドホックネットワークにおいて、上述した無線リンクの検知はルーティングパケットの中のHELLOメッセージと言われるパケットの交換により行われる。HELLOメッセージの交換が、図1に示す不安定な無線リンク4を介して行われると、ルーティングプロトコルにおいて無線端末1と無線端末3間で直接通信することが可能と判断され、無線端末1から無線端末3へ送られるパケットは不安定な無線リンク4を使用して行われる。このためパケットの損失が起こる可能性が高く通信品質が劣化することになる。本実施例では、まず不安定な無線リンク4をルーティングパケットを用いて検知し、不安定な無線リンクを通信経路として使用可能な無線リンクから排除する。つまり、無線端末1から無線端末3へ送られるパケットは、安定な無線リンク5を介し無線端末2に送られ、無線端末2は安定な無線リンク6を介しパケットを無線端末3へ転送することで、パケット損失率の高い無線リンク4を通らず、高い通信品質を保つことが可能となる。図2は本実施例のレイヤー構造を示す。なお、本実施例では無線端末間通信で使う通信を無線LANとして説明するが、通信方式は無線端末間で通信することができればよく、無線LANによる無線通信に限定するものではなく、赤外線通信などの無線通信であっても良い。さて、無線端末21、22の中にルーティングプロトコル23、26が実装され、ルーティングプロトコルは無線LAN25、28を介しルーティングパケットを交換する。本実施例において、交換されるルーティングパケットはルーティングプロトコル23、26に渡される前に、安定化ソフトウェア24、27に渡され、無線端末21と無線端末22の間の無線リンクの安定状況を安定化ソフトウェア24、27で判断し、安定と判断されたパケットがルーティングプロトコル23、26に渡される。例えば、無線端末21から送信されたルーティングパケットは、無線端末21の無線LAN25より送信され、無線端末22の無線LAN28により受信される。受信されたパケットは安定化ソフトウェア27に渡され、安定化ソフトウェアは受信したルーティングパケットの送信元である無線端末21との無線リンクの通信品質により、安定もしくは不安定の判断を行い、安定と判断されたパケットはルーティングプロトコル26へと渡される。ルーティングプロトコル23からのパケットの流れを番号29に示す。ルーティングプロトコル26からのルーティングパケットも同様に無線端末21の安定化ソフトウェア24により安定もしくは不安定の判断を行い、安定と判断されたルーティングパケットのみルーティングプロトコル23に渡される。ルーティングプロトコル23、26の前に、安定化ソフトウェア2427をはさむことで、不安定な無線リンクを経由するルーティングパケットをルーティングプロトコル23、26が受信することがなくなり、ルーティングプロトコル23、26により構築される通信経路に不安定なリンクが含まれない。また、安定化ソフトウェア24、27に送られるパケットは、本実施例においては、ルーティングパケットのみであり、その他の通信パケットは安定化ソフトウェア24、27に送られない様に構成する。なお、先にも述べたように、無線LANにおいて、設定された電波強度が閾値以下のパケットを破棄することも可能であるが、これは全ての通信パケットに適用されてしまい、ルーティングプロトコル以外のユーザーデータの通信パケットの損失につながる。なお、ルーティングプロトコルより送信されるルーティングパケットは無線LANより送信される前に、安定化ソフトウェアで処理される必要はないことは言うまでも無い。さて、本実施例におけるルーティングパケットの特定方法は例えば次のよう構成する。すなわち、ルーティングパケットは、図11に示すUDPヘッダB01内の宛先ポート番号B02を用いて識別可能になる。例えばOLSRであれば698がIANAInternetAssignedNumberAuthorityにより割当られており、他のプロトコルやユーザーデータのパケットと識別可能である。このルーティングパケットをルーティングプロトコルに渡す前に安定化ソフトウェアに渡す方法の一例として、無線端末21、22などの各ノードのオペレーティングシステムがLinuxであった場合には、netfilterproject、online、2006年6月27日検索、インターネットより提供されているソフトウェアiptablesを使用することにより可能となる。iptablesにおいて、指定したルールにマッチする受信パケットをユーザー空間に受け渡すことが可能である。ルーティングパケットをマッチするために、プロトコルにUDPを指定し、宛先ポートに698を指定することでOLSRのルーティングパケットのみをユーザー空間に受け渡す。本実施例における安定化ソフトウェア24、27では、受け渡されたパケットを受信するためのソケットを用意することでiptablesがマッチさせたパケットを受信することが可能となる。なお、ソケットもnetfilterprojectより提供されているライブラリlibipqを使用することで可能である。更に、安定化ソフトウェア24、27にて、iptablesより渡されたパケットをルーティングプロトコルに渡す、もしくは、破棄するといった操作もlibipqを使用することで可能である。次に、図3に本実施例の安定化ソフトウェア24、27における電波強度を用いた安定判定アルゴリズム1を示す。安定を判断する閾値はあらかじめ設定されているとする。ルーティングパケットを受信したとき、前記ルーティングパケットの送信元との電波強度が安定閾値以上であるか調べ、安定閾値以上の場合、パケットを通過させルーティングプロトコルにパケットを渡す。前記電波強度が安定閾値以下の場合、パケットは破棄されルーティングプロトコルにパケットを渡さない。電波強度の取得方法の一例はオペレーティングシステムがLinuxである場合、WirelessToolsforLinux、online、2006年6月27日検索、インターネットというソフトウェアに含まれるiwspyというソフトウェアで送信元MACアドレスを指定することで取得可能である。またiwspyが使用しているライブラリlibiwを使用して安定化ソフトウェアに電波強度を取得する関数を実装することも可能である。図3に示す安定判定アルゴリズム1で不安定なリンクを排除することが可能となるが、設定した無線端末間の無線リンクの電波強度が設定した閾値に近い場合、前記無線リンクの電波強度が時間により揺らぐために、受信したルーティングパケットの安定、不安定判定が揺らぎ、ルーティングパケットを通過させたり、破棄したりしパケットの間欠的な到着が起こる。これにより通信経路の頻繁な変更が発生しパケット損失の可能性がある。なお、上述したOLSRのリンクヒステリシス方式では無線リンクの使用可否をリンク品質とリンク有効フラグで判断する。リンク品質には上位閾値と下位閾値が設定されており、ルーティングパケットが到着するとリンク品質が上昇する。リンク品質が上位閾値を上回るとリンク有効フラグが設定される。一方、ルーティングパケットの到着時刻になってもルーティングパケットが到着しない場合は、リンク品質が下がる。リンク品質が下位閾値を下回るとリンク有効フラグが取り消される。リンクが有効な期間はリンク有効フラグが設定されている間のみとなる。このリンクヒステリシス方式では、無線端末が移動するなどして無線リンクの状態が良くなった場合にもリンクが有効になるまでリンク品質が上位閾値を上回るまでルーティングパケットが連続して到着する必要があり、リンクが有効になるまで時間がかかる。また、移動などにより無線リンクの状態が悪くなった場合にも、リンク品質が徐々に下がるためリンクが無効になるまで時間がかかり、通信経路として不安定なリンクを使用することになる。これに対し、ルーティングパケットの受信の際の受信電波強度によりリンクの品質の上昇率を変化させることで、無線リンクの状態が移動などにより良くなった場合にリンクが有効になるまでの時間を短縮することが可能となる。移動等により、無線リンクの状態が悪くなった場合、ルーティングパケットを受信しても電波強度によりリンク品質を下げることを行い、さらに電波強度によりリンク品質の下降率を変化させることで、リンクを無効にする時間を短縮することが可能となり、不安定なリンクを通信経路として使用する時間が短縮出来る。これを安定化アルゴリズム2とする。また、各無線端末では無線リンクの状態をリンクテーブルとして保持する。無線端末1のリンクテーブルの例を図8に示す。列801に対向する無線端末のMACアドレスもしくはIPアドレスなど対向する無線端末の送信インターフェースを特定する情報を格納する。列802には対向する無線端末からのルーティングパケットを受信する無線LANインターフェースを格納する。列803に現在のリンク品質を格納し、列804にリンク有効フラグを格納する。リンクが有効であれば1をセットし、リンクが無効であれば0をセットする。列805にタイムアウトまでの残り時間を格納する。行806に無線端末2との間のリンク情報を格納し、行807に無線端末3との間のリンク情報を格納する。次に、上述した安定化アルゴリズム2を、図4、図5を用いて説明する。図4の縦軸410は電波強度を示し、横軸411は時刻を示す。曲線404は時間による無線リンクの電波強度を示している。ルーティングパケットの受信した時点の電波強度を点405-409で示し、時刻をt1t5で示す。リンク品質の上昇率の変化を2段階に設定する。受信電波強度が通常閾値402以上の場合リンク品質が上昇する。さらに上位閾値401以上の場合、リンク品質が最高値になるとする。受信ルーティングパケットの電波強度が通常閾値を下回る電波強度の場合、リンク品質が下降する。さらに下位閾値403を下回る場合、リンク品質は最低値に設定する。図5の縦軸501はリンク品質を示し、横軸502は時刻を示す。リンクの品質は0-1の範囲の値で示し、1が最高値508であり、0が最低値502であるとする。リンク品質が上位閾値509を上回ると、リンク有効フラグが設定される。リンク品質が下位閾値510を下回るとリンク有効フラグが解除される。リンク品質の初期値503は05であるとする。ルーティングパケットの到着によるリンク品質の変化を説明する。時刻t1では電波強度405が上位閾値以上であるために、リンク品質を最高値まであげ、リンク有効フラグが設定されルーティングパケットを通過させる。時刻t2にでは電波強度406は通常閾値以上であるので、リンク品質を上昇させるがリンク品質はすでに最高値であるためにリンク品質は最高値505であるとする。時刻t3では電波強度407は通常閾値以下であるので、リンク品質をさげる。下降率は任意に設定できるが、ここではリンク品質の30下がるとする。このときにリンク品質は1であるので、下降後のリンク品質は07とする。リンク品質は上位閾値を下回るがリンク有効フラグが設定されているため、ルーティングパケットは通過させる。時刻t4では電波強度408は下位閾値以下であるので、リンク品質を最低値までさげ0とする。このとき、リンク品質は下位閾値を下回るのでリンク有効フラグを解除し、ルーティングパケットを破棄する。時刻t5では電波強度409は通常閾値以上、上位閾値以下であるため、設定した上昇率に従いリンク品質を上昇させる。上昇率も任意に設定できるが、ここでは一定で04あがるとする。他には新しいリンク品質=リンク品質×上昇率定数とすることも可能である。時刻t5ではリンク品質は上位閾値を上回っておらずリンク有効フラグも設定されていないため、ルーティングパケットは破棄する。このアルゴリズムに従うと、時刻t1t3のルーティングパケットは通過させ、時刻t4t5のルーティングパケットは破棄される。次に、図6に安定化アルゴリズム2のアルゴリズムのフローチャートを示す。601~621はフローチャートの各ステップを示している。リンクの品質を低下させる要因に電波強度が通常閾値より低いルーティングパケットが到着することに加え、ルーティングパケットの損失を考慮しルーティングパケットが設定時間内に到着しない場合はリンクの品質をさげるタイムアウトを考慮する。リンクテーブルの列805の残り時間がなくなりルーティングパケットのタイムアウトが発生すると、当該リンクのリンク品質803を低下させ603、リンク品質の下位閾値を下回ると、リンク有効フラグ804を解除しリンクを無効にする605。リンク品質803がリンク品質の下位閾値を下回らない場合、リンク有効フラグ804は変化させず、ステップ601に戻る。ルーティングパケットのタイムアウト前にルーティングパケットを受信した場合、リンクテーブルに送信元と受信インターフェースが一致する当該リンク情報があるかチェックし、リンク情報がなかった場合はリンクテーブルにリンク情報を追加する。リンクテーブルにリンク情報があった場合、当該無線リンクの電波強度を調べ電波強度が上位閾値以上であれば、リンク品質803を最高値の1に設定し、リンク有効フラグ804を設定する619。電波強度が上位閾値を下回っており、さらに下位閾値も下回っていればリンク品質803を最低値の0に設定し、リンクの有効フラグ804を解除しリンクを無効に設定し、受信したルーティングパケットは破棄する。電波強度が下位閾値を下回っておらず、通常閾値以上の場合、リンク品質803を上昇させる。リンク品質が上位閾値以上であれば、リンク有効フラグ804を設定する。リンク品質が上位閾値を下回っていれば、設定されているリンク有効フラグ804をチェックし、リンク有効であればパケット通過、リンク無効であればパケットを破棄する617。電波強度が通常閾値を下回っていれば、リンク品質を低下させ、リンク品質803が下位閾値を下回っていないかチェックする、リンク品質803が下位閾値以下であれば、リンクを無効に設定し、パケットを破棄する。リンク品質803が下位閾値以上であれば、リンク有効フラグ804をチェックし、リンク有効であればパケット通過、リンク無効であればパケットを破棄する。以上によりアドホックネットワーク内から不安定な無線リンクを排除し、パケット損失の少ない安定した通信経路の構築が可能となり、頻繁な経路の変更によるパケットの損失を減らすことが可能となる。また、無線端末が移動した場合、通信が断絶するまえに通信の劣化を検知し、新しい通信経路に切り替えることが可能となるため通信切り替え時のパケットの損失を減らすことが可能となる。アドホックネットワークを構成するすべての無線端末に前記安定化方式を採用することができない場合がある。例えば、無線端末が無線電波強度を取得することが出来ない場合や、無線端末のオペレーティングシステムにルーティングパケットをルーティングプロトコルに渡す前に安定化ソフトウェアに渡す機能が実装されていない場合などである。また、OLSRでは無線端末毎にWillingnessという値を設定することが可能であり、Willingnessの値により、通信経路における中継端末へのなりやすさを変更することが可能である。そのため、安定化方式が使用できる端末とできない端末でWillingnessの値を変更し、Willingnessにより中継端末へのなりやすさを変更することにより、パケット損失の少ない安定した経路を選ぶことが可能となる。図9を用いて安定化方式が使用できる無線端末と使用できない無線端末が混在してアドホックネットワークを構築する場合の経路選択方法を第二の実施例として説明する。無線端末901-905がアドホックネットワークを構成している。無線端末903は上述してきた安定化方式を使用することが可能な端末で、他の無線端末は安定化方式が使用していないとする。無線端末901と無線端末902は無線リンク906で通信可能であり、無線端末902と無線端末904は無線リンク908で通信可能である。無線端末904と無線端末905は無線リンク910で通信可能であるとする。通信経路として使用される無線リンクは通信可能な無線端末双方で有効な無線リンク、いわゆる両方向リンクである場合、安定化方式を使用している無線端末903と安定化方式を使用していない無線端末902、905との間の無線リンク907、909は無線端末903の安定化方式により安定と判断している無線リンクであれば安定した両方向無線リンクである。無線リンク907、909が無線端末903の安定化方式により安定と判断していない無線リンクであれば、無線端末903で受信された無線端末902、905からのルーティングパケットは破棄されるため、両方向リンクは確立されず、無線リンク907、909は通信経路として使われることはない。このため、一つの無線リンクの安定性を判断するためには無線リンクの両端の無線端末のどちらかにおいて、安定化方式が使用できれば無線リンクの安定性を判断することが可能である。図9において無線リンク907、909は信頼できる安定した無線リンクであり、無線リンク906、908、910は安定性が不明な無線リンクである。無線端末903のWillingness値を上げ、中継装置のなりやすさを安定化方式を使用していない無線端末より上げておくことにより、安定した無線リンクと安定性が不明な無線リンクが通信経路の候補にあった場合、安定した無線リンクを選択するようになり、パケットの損失を減らすことが可能である。安定化方式を使用するとリンク品質の良くない不安定なリンクの受信ルーティングパケットを破棄するため無線端末の通信範囲が狭くなるという課題がある。アドホックネットワークにおいて、安定なリンクのみを使用して全ての無線端末との間に通信経路が構築できればよいが、必ずしもそうでない場合もある。例えば図9において、無線端末901-905で安定化方式を使用しているとし、無線リンク906が不安定リンクであったとする。このとき無線端末901はどの無線端末とも無線リンクを確立することができず、他の無線端末と通信することができない。このとき、無線端末901と無線端末902において、無線リンク906に関する電波強度の閾値を下げることにより、無線リンク906を通信経路として使用し無線端末901との通信が可能となる。無線端末902において、すべての無線リンクに関する電波強度の閾値を下げてしまうと、他の無線リンク907、908の前記閾値も下がってしまい不安定なリンクを通信経路で使用する可能せいがある。これを防ぐために、前記閾値を下げるのは、他に通信経路が存在しない無線リンクのみとすることで通信経路の安定性を保つ。無線端末901との通信を可能とする方式を図9と図10を用いて説明する。図10は図8のリンクテーブルを拡張したものである。列A06に電波強度の上位閾値を格納し、列A07に電波強度の通常閾値を格納する。さらに列A08に電波強度の下位閾値を格納する。図10は無線端末902のリンクテーブルの例である。行A09に無線リンク907の情報が格納されており、行A10に無線リンク908の情報が格納されている。行A11に無線リンク906の情報が格納されている。ルーティングプロトコルによって構築された通信経路は各無線端末のルーティングテーブルに記載されている。無線端末902において、無線端末901からのルーティングパケットを受信したとき、無線端末902のルーティングテーブルをチェックし、ルーティングパケットの送信元である無線端末901のアドレスがルーティングテーブルに記載されていない場合、無線端末901は代替経路が存在しない無線端末と考えられるので行A11の通常閾値と下位閾値を下げる。これにより、無線端末901からのルーティングパケットはルーティングプロトコルに渡される。同様に無線端末901においても、無線端末902からの受信ルーティングパケットに対する通常閾値と下位閾値をさげることによって、ルーティングプロトコルにルーティングパケットが渡され、双方向リンクが確立することが可能となり通信経路が構築され、通信が可能となる。通常閾値と下位閾値をさげたままにしておくと、無線端末901と無線端末902の間に別の無線端末を介する安定な代替経路が使用可能になっても、不安定な直接リンクを通信経路として選択する可能性があるため一度引き下げられた通常閾値と、下位閾値は設定した時間を経過すると元の設定された閾値に戻る。このとき直接リンクが安定リンクではない場合、ルーティングテーブルより無線端末901宛の経路は一旦削除されるが、安定した代替経路が存在する場合は、通信経路が安定な通信経路に切り替えることが可能となり、ルーティングテーブルに再度登録される。この後、無線端末901とのリンクが不安定なまま無線端末901からのルーティングパケットを受信した場合には、無線端末901はすでにルーティングテーブルに記載されているので、通常閾値と下位閾値をさげることなく、ルーティングパケットを破棄する。なお、第二の実施例のリンクの安定性判定において、第一の実施例で説明した図6に示すアルゴリズムを使用することも可能であるし、図3に示すアルゴリズムを使用することも可能であることは言うまでもない。また、第一、第二の実施例では、無線リンクの安定性の判断を、ルーティングパケットを使用して行ったが、無線リンクの安定性の判断をルーティングパケット以外のパケットで行っても構わない。ルーティングパケット以外のパケットには例えば無線LANのコントロールパケットであるビーコンパケットやユーザーデータの通信パケット等があり、無線リンクの安定性の判断にはこれらパケットの一部もしくは全てを使用することが可能である。受信もしくは破棄の対象となるパケットは、無線リンクの安定性の判断をルーティングパケット以外のパケットで行う場合でも、ルーティングパケットのみであり、処理は第一の実施例で説明した方法と同様にiptablesを使用し、安定化ソフトウェアに送りlibipqを使用し受信もしくは破棄の処理を行う。例えば、図3における処理302の際に参照する電波強度をルーティングパケットの電波強度ではなく、参照する直前に受信した無線LANのビーコンパケットもしくはユーザーデータのパケットなどの電波強度とすることが可能である。また、図6で示される安定化判断アルゴリズムにおいても、ルーティングパケット以外のパケットを用いることが可能である。処理601と処理602において、無線LANのビーコンパケットとユーザーデータパケットのどちらか一方もしくは両方を使用しても構わない。第三の実施例では、無線の通信方式が複数の通信レートに対応していた場合のネットワーク安定化方式を、図12を用いて説明する。図12において、無線端末C01C06でアドホックルーティングプロトコルが動作している。無線リンクC07C13で通信が可能であるが、無線リンクC07とC13は受信電波強度が低い。アドホックネットワーク上でより高いスループットを得るためには、より高いレートで通信を行うようにすればよい。ところが、一般的に、同一の通信チャネルを使用した場合、通信レートの高い方が雑音に対して弱くなるため、低レート通信で安定して通信できる範囲に比べ、高レート通信で安定して通信できる範囲は狭くなる。上述した安定化アルゴリズムの閾値調整により、高レート通信においても安定した通信経路を確保することは可能であるが、通信範囲が狭まるため、実施例2でも述べたようにアドホックネットワークが分断されてしまう可能性がある。例えば、図12で受信電波強度が十分にない無線リンクC07やC13が削除されると、無線端末C01C03と無線端末C04C06が相互に通信できなくなる。また、他に通信経路が存在しない不安定な無線リンクの閾値を選択的に下げることで接続性を保ち、ネットワークの分断を防ぐこともできるが、不安定な無線リンク上で高レート通信を行うと、エラー率が高くなり通信を正常に行えない可能性がある。そこで、安定化ソフトウェアは、受信したルーティングパケットの送信元である無線端末との無線リンクの通信品質により、当該無線リンクを安定した通信が可能な最大の通信レートに設定する。安定化ソフトウェアは、図13に示すような無線の通信レートと電波強度の閾値の対応表を内部的に持つ。ルーティングパケットを受信した際は、当該無線リンクの電波強度が対応表の閾値を超える最大の通信レートに設定する。例えば、図12の各無線リンクの電波強度が図14のようになっていた場合、無線リンクC08C12では11Mbpsの通信レートに設定され、無線リンクC07とC13はそれぞれ55Mbps、2Mbpsに設定される。ここでは各通信レートにつき一つの固定的な閾値を持つものとして扱っているが、先に述べたように上位閾値下位閾値の複数閾値による判断や、閾値の動的な設定も可能である。また、既存の無線LANドライバでは、無線リンクごとに通信レートを設定することはできず、一つの無線インターフェースで共通の通信レートを設定するしかないことが多い。無線リンクごとに通信レートを設定できない場合は、各無線インターフェースの通信レートを、構成している無線リンクの通信レートの最小値に設定する。先の例では、無線端末C02では、11Mbpsの無線リンクC09、55Mbpsの無線リンクC07、2Mbpsの無線リンクC13を有しているので、無線端末C02の無線インターフェースの通信レートは2Mbpsに設定されることになる。これを安定化アルゴリズム3とする。図15に安定化アルゴリズム3のフローチャートを示す。F01F14はフローチャートの各ステップを示している。ルーティングパケットのタイムアウトの監視F01からリンクテーブルの作成までの処理F01F04は、上述した安定化アルゴリズム2の処理図6とほぼ同じであり、異なるのは電波強度の閾値判定以降の処理である。無線インターフェースの通信レートを決定する際に、各無線リンクの最適な通信レートが必要となるので、無線リンクの状態を管理するリンクテーブルに最適通信レートの算出結果を管理する領域を追加する。本アルゴリズムにおいて、閾値判定のフェーズに入ると、まず電波強度が最低レート通信の閾値を超えているかどうかを調べF05、もしも閾値以下だったらF05でno算出レートを無効値にセットしF07、パケットを破棄するF14。ルーティングパケットのタイムアウトが発生した場合F01でyesも、同じ処理が施される。最低レートの閾値を超えていた場合はF05でyes、通信レートと電波強度閾値の対応表から最適な通信レートを算出し、当該リンクテーブルに記録するF06。次に、記録した算出レートと現在の無線インターフェースの通信レートを比較しF08F10、算出レートの方が下だった場合はF08でnoかつF10でyes、通信レートを下げるF12。一方、算出レートの方が上だった場合はF08でyes、全リンクテーブルの算出レートをチェックしてすべてが無効値であるか設定値よりも上だったら、通信レートを上げる。そして、閾値判定及び通信レート設定のステップが終了したら、このパケットを通過させるF13。図12において具体例を示す。図19は、各無線リンクの電波強度が図14のようになっていた場合に図13の閾値表に従って構築された、無線端末C02のリンクテーブルを表している。図8で示した安定化アルゴリズム2におけるリンクテーブルに対して、この安定化アルゴリズム3のリンクテーブルでは、最適通信レートの算出結果を記録する領域が追加されている。例えば、現在の通信レートが11Mbpsに設定されており、無線端末C01からルーティングパケットを受信したものとする。まず図13の閾値表に従って最適な通信レート2Mbpsを算出し、リンクテーブルに記録するF06。これは現在の通信レートの設定値11Mbpsよりも低いのでF08でnoかつF10でyes、通信レートを2Mbpsに設定しF12、パケットを通過させる。次に無線端末C04からルーティングパケットを受信した場合、通信レートを算出すると55Mbpsとなり、現在の通信レートの設定値2Mbpsよりも高くなるがF08でyes、リンクテーブルを参照すると無線端末C02の算出レートが2MbpsとなっているのでF09でno通信レートを変更しない。このように他の無線端末の履歴も参照して通信レートを設定するため、通信レートが必要以上頻繁に変更されることはない。この安定化アルゴリズム3は、受信電波強度に従って通信レートを適応させることにより、安定かつ連結したアドホックネットワークを構築することができる。だが一方で、一つでも不安定なリンクがあると通信レートが低下してしまうため、スループットの観点から効率的な経路を構築できないことがある。例えば、図12において図13の閾値表に基づき各無線端末の通信レートを設定すると、図16で示すようになる。だが、無線リンクG07は、安定した代替経路G08G09が確保されているので、通信レートを下げてまで構築する必要はない。実際、無線リンクG07を構築しなかった場合は、各無線端末の通信レートは図17で示されるようになり、無線端末H01と無線端末H02の通信レートが向上する。そこで、送信元に対して適切な代替経路が存在する場合に限り、ルーティングパケットを破棄するようにする。代替経路の存在の判断は、実施例2で述べたように、ローカルのルーティングテーブルをチェックすることにより実現される。無線リンクが削除されるのは、代替経路が存在する場合に限定されるので、この処理によりアドホックネットワークの分離が新たに発生することはない。これを安定化アルゴリズム4とする。図18は、安定化アルゴリズム4において、図15の安定化アルゴリズム3に加える修正部分を示したものである。図15のF10とF12のステップの間に、代替経路の存在をチェックするI15とI16のステップを加えてある。まず、算出レートが現在の設定値よりも下であるF10でyesということは、このルーティングパケットの送信元との無線リンクが他の無線リンクに比べて不安定であるということを示している。そこで、ルーティングパケットの送信元に対する有効な経路がルーティングテーブルに含まれているかをチェックするI15。含まれていない場合I15でnoは、代替経路がないことを意味するので、通信レートを適切に下げF12、ルーティングパケットを通過させる。有効経路が含まれていた場合はI15でyes、そのホップ数が2以上であればI16でyes、代替経路が存在し使用中であることを意味しているので、ルーティングパケットを破棄する。それ以外の場合はI16でno、この無線リンクを現在使用していると考えられるので、通信レートを適切に下げF12、ルーティングパケットを通過させる。例えば、図12において電波状態が悪い無線リンクC07と無線リンクC13がまだ接続されていない状態を考える。このときの無線端末C02のルーティングテーブルは図20に表されるようになり、各端末の通信レートは11Mbpsとなる。ここで無線端末C04からルーティングパケットを無線端末C02が受信すると、通信レートの算出結果が55Mbpsとなり、現在の設定値よりも下になる。そこで、当該パケットの送信元である無線端末C04に対する有効経路がルーティングテーブルに含まれているか否かを調べ、含まれていないため通信レートを55Mbpsに下げ、無線リンクC13を確立する。一方、無線端末C02が無線端末C01からルーティングパケットを受信した場合は、通信レートの算出結果が2Mbpsとなり現在の設定値よりも下になるが、無線端末C02のルーティングテーブルに無線端末C01に対する有効経路K05が含まれているため、ルーティングパケットを破棄する。したがって、無線リンクC07は確立されず、図21に表されるようなルーティングテーブルが構築される。そして結果として、図17に表されるような無線リンク及び通信レートが設定され、通信レートの必要以上な低下を抑制することができる。無線リンクを確立した後に安定した代替経路が確立された場合に、通信経路を切り替えられない可能性があるが、実施例2のアドホックネットワークの分離を防ぐ部分で述べたような方式により、使用されている不安定な無線リンクを定期的に削除することで、経路が定期的に更新されるようになる。経路が再構築されると、上記アルゴリズムに従って安定な無線リンクを優先的に使用するため、安定な代替経路が新たに構築された場合は、通信経路が代替経路に切り替えられる。