(57)【特許請求の範囲】
【請求項１】
互いに接続されるネットワーク同士の境界に設置されるルータ装置内に第１，第２仮想ルータを設けてなるネットワークシステムであって、
前記第１仮想ルータ及び第２仮想ルータは、
一の前記境界ルータ装置が受け取った共通のアドレス体系のパケットを、システム内部独自のアドレス体系のパケットにカプセル化し、当該カプセル化したパケットを当該独自のアドレス体系で前記一の境界ルータ装置から他の境界ルータ装置まで転送する機能と、
前記独自のアドレス体系でカプセル化され転送されたパケットを、前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを、当該共通のアドレス体系でシステム外部へ転送する機能と
を有することを特徴とするネットワークシステム。
【請求項２】
互いに接続されるネットワーク同士の境界に設置されるルータ装置内及び外部のノード装置と通信を可能とする内部に設置するノード装置に、共通のアドレス体系で動作する第１仮想ルータと、システム内部独自のアドレス体系で動作する第２仮想ルータを設けてなるネットワークシステムであって、
前記第１仮想ルータ及び第２仮想ルータは、
前記共通のアドレス体系のパケットを前記独自のアドレス体系のパケットにカプセル化し、該カプセル化したパケットを前記独自のアドレス体系で、他の前記境界ルータ装置又は前記ノード装置へ転送する機能と、
前記独自のアドレス体系でカプセル化され転送されたパケットを前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを前記共通のアドレス体系で転送する機能とを有することを特徴とするネットワークシステム。
【請求項３】
互いに接続されるネットワーク同士の境界に設置され、共通のアドレス体系で動作する第１仮想ルータと、システム内部独自のアドレス体系で動作する第２仮想ルータを設けてなるルータ装置との連係するノード装置において、
共通のアドレス体系で動作する第１仮想ルータと、システム内部独自のアドレス体系で動作する第２仮想ルータとを備え、これら第１，第２仮想ルータは、前記共通のアドレス体系のパケットを前記独自のアドレス体系のパケットにカプセル化し、該カプセル化したパケットを前記独自のアドレス体系で、他の前記境界ルータ装置又は前記ノード装置へ転送する機能を有し、
前記境界ルータ装置装置内又は前記ノード装置内の仮想ルータ間をつなぐ論理インタフェースを備え、当該論理インタフェースは、前記独自のアドレス体系でカプセル化され転送されたパケットを前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを前記共通のアドレス体系で転送する機能を有することを特徴とするノード装置。
【請求項４】
前記境界ルータ装置内部に、前記第１，第２仮想ルータの他に、前記共通のアドレス体系で動作する第３仮想ルータと、この第３仮想ルータにつながれ且つ前記ネットワークシステムの外部にあるネットワークシステム間で共通のアドレス体系で動作する第４仮想ルータとを有し、
前記第３仮想ルータ及び第４仮想ルータは、
一の前記境界ルータ装置が受け取った前記共通のアドレス体系のパケットを、前記ネットワークシステムの外部にあるネットワークシステム間で共通のアドレス体系のパケットにカプセル化し、当該カプセル化したパケットを当該共通のアドレス体系で前記一の境界ルータ装置から他の境界ルータ装置まで転送する機能と、
前記ネットワークシステムの外部にあるネットワークシステム間で共通のアドレス体系でカプセル化され転送されたパケットを、前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを、当該共通のアドレス体系で前記システム外部へ転送する機能と
を有することを特徴とする請求項１又は２記載のネットワークシステム。
【請求項５】
前記独自のアドレス体系で構築されたネットワーク部分をＭｕｌｔｉ Ｐｒｏｔｏｃｏｌ Ｌａｂｅｌ Ｓｗｉｔｃｈｉｎｇ網で構築したことを特徴とする請求項１、２又は４のいずれか一項記載のネットワークシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＩＰ（インターネットプロトコル）を用いたネットワークにおけるネットワークシステム及びノード装置に関する。
【０００２】
【従来の技術】
ＩＰ（インターネットプロトコル）を用いたネットワークであるインターネットの利用が急速に普及している。インターネットを構成する要素として、ＩＳＰ(Ｉｎｔｅｒｎｅｔ Ｓｅｒｖｉｃｅ Ｐｒｏｖｉｄｅｒ)、ＩＸ(Ｉｎｔｅｒｎｅｔ Ｅｘｃｈａｎｇｅ)がある。
【０００３】
ＩＳＰは、個人や企業といった顧客（カスタマ）を対象にインターネットへの接続サービスやＷｅｂやメールといったアプリケーションのサービスを提供する事業者である。
【０００４】
またＩＸは、ＩＳＰ同士が自社のネットワークと別のＩＳＰのネットワークを相互接続するための接続ポイントを用意した事業者である。
【０００５】
ＩＳＰは、複数のルータと呼ばれる装置やサービスを提供する端末（Ｗｅｂサーバ、メールサーバなど）が接続されることにより実現されている。ルータ及びルータに接続される端末を含め全ての機器は、その機器を特定するための識別子としてＩＰアドレスを持ち、各ＩＰアドレスは、各機器から他の機器にデータを転送する時に使用される。
【０００６】
ルータ装置は、カスタマにより付加されたＩＰアドレスを用いてルーティングテーブルを検索することで、データ（パケット）の次の転送先(Ｎｅｘｔ Ｈｏｐ)を決定する。このように各ルータ装置がパケット転送（フォワーディング）を行うことで、最終的な宛先に到達する。ルータ装置間では、ＲＩＰ、ＯＳＰＦ、ＢＧＰなどのルーティングプロトコルによってルーティング情報を交換し、ルーティングテーブルを作成し、更新している。
【０００７】
前述のＩＰアドレスは、その数に限りがあるため、インターネットに接続する機器が増大するにつれ、固有な識別子として使えるＩＰアドレスが枯渇するという問題が生じる。
【０００８】
この問題の対処として、ＩＳＰやＩＸでは、インターネット上で固有な識別子として使えるアドレス（グローバルアドレス）の無駄使いを省くために、企業内やＩＳＰ内など限定した範囲でのみで使用するプライベートアドレスを利用する場合がある。ただし、プライベートアドレスのルーティング情報をインターネットに伝達させてしまうと、アドレスの重複が生じる可能性があり、インターネットのルーティング情報に不都合が生じる虞があるので、外部のネットワークと接する境界ルータ装置上でルーティングプロトコルのフィルタリングなどを使用し、アドレスごとにプライベートアドレスを外部には伝達しないような設定を行わなければならない。
【０００９】
また現在のインターネットの別の問題として、セキュリティに関する問題がある。悪意のある第三者が、ＩＳＰや企業内のルータやホストのセキュリティホールをついて不正侵入し、サービスやシステムを停止させたり、再起動させてしまうなどの攻撃を仕掛けてくる可能性がある。
【００１０】
このような攻撃は、攻撃対象のルータやホストのＩＰアドレスを元に仕掛けるものである。従来のインターネットのネットワークの構成では、ｔｒａｃｅｒｏｕｔｅなどのコマンドでデータが通過するルータのＩＰアドレスを知ることが可能である。逆に言うと、このコマンドを使用すれば、悪意のある第三者もＩＳＰやＩＸ内のルータやホストのＩＰアドレスを知ることができ、そこをつかれ攻撃を受けるという危険がある。
【００１１】
また、イサーネットのようなネットワーク同士を接続することができ、且つ、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）層において定義されるフレームレベルでの転送処理を行うことができるルータ装置、及びフレーム転送方法が知られている（例えば、特許文献１参照。）。
【００１２】
さらに、この種のＩＰネットワークシステムにおいて、パケットが発生したときＨｏｐ  ｂｙ  Ｈｏｐのルーティング処理を行わず、瞬時にショートカットＶＣを張り、既存のＡＴＭ機器との親和性を良くし、ＩＰサブネットを無駄に使わないようにしたものが知られている（例えば、特許文献２参照。）。
【００１３】
またさらに、この種のＩＰネットワークシステムにおいて、セキュリティー処理を統合するものも知られている（例えば、特許文献３参照。）。
【００１４】
【特許文献１】
特許第３２７２２８０号明細書
【００１５】
【特許文献２】
特開平１１−６８７８９号公報
【００１６】
【特許文献３】
特開２０００−４２５５
【００１７】
【発明が解決しようとする課題】
以上のように、従来のＩＳＰやＩＸのネットワークでは、組織内のネットワークにグローバルアドレスを使用した場合には、その分だけカスタマに提供するアドレス数を減らしてしまっていた。
【００１８】
一方、組織内でプライベートアドレスを使用してカスタマに提供するアドレス数をより多く確保する場合には、組織の外部へは内部のプライベートアドレスで構成されたネットワークのルーティング情報を伝達させないため、境界ルータ装置によって経路フィルタをアドレスごとに設定する必要があった。
【００１９】
また、いずれのケースもＩＳＰやＩＸ内のネットワーク構成やノードに付与したＩＰアドレスが外部に知られ、外部からセキュリティホールを狙われ攻撃される虞があった。
【００２０】
本発明の目的は、カスタマに提供するグローバルアドレスをできる限り確保し、またセキュリティの向上を図り得るネットワークシステム及びノード装置を提供することにある。
【００２１】
【課題を解決するための手段】
上記課題を解決するために本発明に係るネットワークシステムは、互いに接続されるネットワーク同士の境界に設置されるルータ装置内に第１，第２仮想ルータを設けてなるネットワークシステムであって、
前記第１仮想ルータ及び第２仮想ルータは、
一の前記境界ルータ装置が受け取った共通のアドレス体系のパケットを、システム内部独自のアドレス体系のパケットにカプセル化し、当該カプセル化したパケットを当該独自のアドレス体系で前記一の境界ルータ装置から他の境界ルータ装置まで転送する機能と、
前記独自のアドレス体系でカプセル化され転送されたパケットを、前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを、当該共通のアドレス体系でシステム外部へ転送する機能と
を有することを特徴とする。
【００２５】
上記課題を解決するために本発明に係るネットワークシステムは、互いに接続されるネットワーク同士の境界に設置されるルータ装置内及び外部のノード装置内夫々に、共通のアドレス体系で動作する第１仮想ルータと、システム内部独自のアドレス体系で動作する第２仮想ルータを設けてなるネットワークシステムであって、
前記第１仮想ルータ及び第２仮想ルータは、
前記共通のアドレス体系のパケットを前記独自のアドレス体系のパケットにカプセル化し、該カプセル化したパケットを前記独自のアドレス体系で、他の前記境界ルータ装置又は前記ノード装置へ転送する機能と、
前記独自のアドレス体系でカプセル化され転送されたパケットを前記共通のアドレス体系のパケットに非カプセル化し、該非カプセル化したパケットを前記共通のアドレス体系で転送する機能とを有することを特徴とする。
【００２６】
本発明によれば、システム内部ではパケットをシステム独自のアドレス体系で転送処理し、システム外部では共通のアドレス体系で転送処理するので、使用する共通のアドレス体系のアドレスを節約することができる。
【００２７】
また本発明によれば、システム内部ではパケットのカプセル化により転送し、システム外部にはパケットを非カプセル化して転送するようにしているので、独自のアドレス体系のアドレスをシステム外部に伝達させないため、ルーティングプロトコルによる経路フィルタを設定する必要はなく、また悪意のある第三者による不正侵入を未然に防止することが可能となる。
【００２８】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態を説明する。
【００２９】
（第１の実施形態）
図１は本発明のネットワークシステムにおいて、ＩＸを実現するための一構成例を示す。
【００３０】
ネットワーク１０２ａは、一つのＩＳＰを構成するネットワークであり、ルータ１４０ａなどの装置が存在しており、ネットワーク１０２ａが一つの自律システム(ＡＳ)を構成している。
【００３１】
同様にネットワーク１０２ｎは、一つのＩＳＰを構成するネットワークであり、ルータ１４０ｎなどの装置が存在しており、ネットワーク１０２ａとは独立に管理されたＡＳを構成している。
【００３２】
ネットワーク１０１は、ＩＳＰ間を接続するＩＸとして提供されるネットワークであり、ネットワーク１０２ａとネットワーク１０２ｎとを接続している。
【００３３】
ネットワーク１０１内には、エッジルータ１１０ａ、コアルータ１２０及びエッジルータ１１０ｎが存在する。
【００３４】
エッジルータ１１０ａは、ＩＸ１０１とＩＳＰ１０２ａとの境界に位置するルータ装置であり、ネットワーク１０２ａのルータ１４０ａからコアルータ１２０へのパケット転送と、コアルータ１２０からルータ１４０ａへのパケット転送とを行う。またエッジルータ１１０ａは、内部に仮想ルータ１１１ａと仮想ルータ１１３ａとを持ち、それぞれが論理的に独立して動作している。
【００３５】
仮想ルータ１１１ａは、インタフェース１１２ａを介してルータ１４０ａに、インタフェース１１５ａを介して論理的に仮想ルータ１１１ｎに接続されており、ルータ１４０ａや仮想ルータ１１１ｎとの間の通信を可能とするグローバルアドレス(全てのインターネットで共通のアドレス体系に従う一意なアドレス)が収容されるインタフェースのいずれかに最低１つ付加されている。
【００３６】
また仮想ルータ１１１ａは、ルータ１４０ａとの間で例えばＯＳＰＦのようなＩＧＰによる情報のやり取りにより、ネットワーク１０２ａ内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル１３０ａに記憶する。
【００３７】
さらに仮想ルータ１１１ａは、仮想ルータ１１１ｎとの間で、例えばＢＧＰのようなＡＳ間ルーティングプロトコルによる情報のやりとりにより、ネットワーク１０２ｎ内のホストやルータにパケットを転送するために必要となる次のルータ、すなわち、この場合には、仮想ルータ１１１ｎを求め、その結果をルーティングテーブル１３０ａに記憶する。
【００３８】
この結果、仮想ルータ１１１ａは、ルータ１４０ａや仮想ルータ１１１ｎから転送されたパケットの宛先からルーティングテーブル１３０ａを検索し、次の転送先がルータ１４０ａの場合には、インタフェース１１２ａにパケットを出力し、次の転送先が仮想ルータ１１１ｎの場合には、インタフェース１１５ａに出力する。
【００３９】
インタフェース１１２ａは、仮想ルータ１１１ａから出力されたパケットにデータリンクヘッダの付加、データリンクフレームのルータ１４０ａへの出力及び、ルータ１４０ａから転送されたパケットのデータリンクヘッダの削除と仮想ルータ１１１ａへの転送を行う。データリンクレイヤとしてはＥｔｈｅｒｎｅｔ（Ｒ）、ＡＴＭ(Ａｓｙｎｃｈｒｏｎｏｕｓ Ｔｒａｎｓｆｅｒ Ｍｏｄｅ)、ＰＯＳ(Ｐａｃｋｅｔ ｏｖｅｒ ＳＯＮＥＴ)などが考えられる。
【００４０】
ここで、インタフェース１１２ａでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェース(一つのインタフェースで複数のルータと接続)の場合には、必ずグローバルアドレスを付加され、ＰＯＳなどのポイントポイントインタフェース(一つのインタフェースで一つのルータと接続)の場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【００４１】
インタフェース１１５ａは、ＩＸ１０１内のネットワークを仮想的なトンネル１５０とみたて、それを介して仮想ルータ１１１ｎとの間でパケットのやり取りの時に使用するカプセル情報の付加及び削除を行う論理インタフェース(トンネルインタフェース)である。
【００４２】
この論理インタフェースには、トンネル１５０の出口が複数用意され、複数のルータと接続する場合には、必ずグローバルアドレスを付加され、トンネル１５０の出口が一つで、一つのルータと接続する場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【００４３】
仮想ルータ１１１ａより出力され仮想ルータ１１１ｎへ転送するパケットについては、次の転送先となる仮想ルータ１１１ｎに収容されるインタフェースに付加されたグローバルアドレスからトンネル対応テーブル１３０ａを検索する。これにより、仮想ルータ１１３ｎに収容されるインタフェースに付加されたアドレスを求め、求めたアドレスからカプセル情報を作成し、その後に、パケットの先頭にトンネル情報を付加したカプセル化パケットを作成し、仮想ルータ１１３ａにパケットを転送する。
【００４４】
一方、仮想ルータ１１３ａより転送されたカプセル化パケットは、カプセル情報の削除後、仮想ルータ１１１ａに転送する。
【００４５】
仮想ルータ１１３ａは、インタフェース１１４ａを介してコアルータ１２０に接続されており、コアルータ１２０との間の通信を可能とするＩＸ１０１内で一意なアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【００４６】
仮想ルータ１１３ａは、コアルータ１２０との間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＸ１０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル１３１ａに記憶する。
【００４７】
また、仮想ルータ１１３ａでは、自身のインタフェースに付加されたアドレス宛てのパケットのうち、プロトコルＩＤ等でそれがカプセル化されたパケットであると判明したものについては、インタフェース１１５ａに出力する。
【００４８】
このように、仮想ルータ１１３ａは、インタフェース１１５ａから入力されたパケットの宛先からルーティングテーブル１３１ａを検索し、次の転送先がコアルータ１２０の場合には、インタフェース１１４ａにパケットを出力する。また、インタフェース１１４ａから入力されたカプセル化パケットはインタフェース１１５ａに出力する。
【００４９】
インタフェース１１４ａは、１１２ａと同様の処理を行うものであり、接続先がコアルータ１２０となる。
【００５０】
ここで、インタフェース１１２ａでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＸ１０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＸ１０１内で一意なアドレスが付加される場合と付加されない場合がある。
【００５１】
エッジルータ１１０ｎは、ＩＸ１０１とＩＳＰ１０２ｎの境界に位置するルータ装置であり、ルータ１４０ｎからコアルータ１２０へのパケット転送とコアルータ１２０からルータ１４０ｎへのパケット転送とを行う。
【００５２】
エッジルータ１１０ｎは、エッジルータ１１０ａと同様に内部に仮想ルータ１１１ｎと仮想ルータ１１３ｎとを持ち、それぞれが論理的に独立して動作している。
【００５３】
仮想ルータ１１１ｎは、インタフェース１１２ｎを介してルータ１４０ｎに、インタフェース１１５ｎを介して論理的に仮想ルータ１１１ａに接続されており、ルータ１４０ｎや仮想ルータ１１１ａとの間の通信を可能とするグローバルアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【００５４】
また仮想ルータ１１１ｎは、仮想ルータ１１１ａ同様に、ルータ１４０ｎとの間でＯＳＰＦのようなＡＳ内ルーティングプロトコル(ＩＧＰ)による情報のやり取り、仮想ルータ１１１ａとの間でＢＧＰのようなＡＳ間ルーティングプロトコルによる情報のやりとりを行い、ルーティング情報をルーティングテーブル１３０ｎに記憶する。
【００５５】
さらに仮想ルータ１１１ｎは、ルーティングテーブル１３０ｎをもとに、ルータ１４０ｎや仮想ルータ１１３ｎから転送されたパケットの宛先から次の転送先がルータ１４０ｎの場合には、インタフェース１１２ｎにパケットを出力し、次の転送先が仮想ルータ１１１ａの場合には、インタフェース１１５ｎに出力する。
【００５６】
インタフェース１１２ｎは、インタフェース１１２ａと同様の処理を行うものであり、接続先がルータ１４０bとなる。
【００５７】
ここで、インタフェース１１２ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずグローバルアドレスを付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【００５８】
インタフェース１１５ｎは、インタフェース１１５ａと同様にトンネル１５０を介して仮想ルータ１１１ａとの間でパケットのやり取りの時に使用するカプセル情報の付加及び削除を行う論理インタフェース、すなわちトンネルインタフェースである。
【００５９】
この論理インタフェースにはトンネル１５０が複数用意され、複数のルータと接続する場合には、必ずグローバルアドレスを付加され、トンネル１５０が一つで、一つのルータと接続する場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【００６０】
仮想ルータ１１１ｎより入力され仮想ルータ１１１ａへ出力するパケットについては、トンネル対応テーブル１３２ｎの情報をもとに、パケットの先頭にトンネル情報を付加して仮想ルータ１１３ｎにパケットを出力する。一方、仮想ルータ１１３ｎより入力されたパケットはカプセル情報の削除後、仮想ルータ１１１ｎに出力する。
【００６１】
仮想ルータ１１３ｎは、インタフェース１１４ｎを介してコアルータ１２０に接続されており、コアルータ１２０との間の通信を可能とするＩＸ１０１内で一意なアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【００６２】
仮想ルータ１１３ａは、コアルータ１２０との間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＸ１０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル１３１ｎに記憶する。
【００６３】
また、仮想ルータ１１３ｎでは、自身のインタフェースに付加されたアドレス宛てのパケットのうち、プロトコルＩＤ等でそれがカプセル化されたパケットであると判明したものについては、インタフェース１１５ｎに出力する。
【００６４】
このように、仮想ルータ１１３ｎは、インタフェース１１５ｎから転送されたパケットの宛先からルーティングテーブル１３１ｎを検索し、次の転送先がコアルータ１２０の場合には、インタフェース１１４ｎにパケットを出力する。また、インタフェース１１４ｎから転送されたカプセル化パケットはインタフェース１１５ｎに出力する。
【００６５】
インタフェース１１４ｎは、１１２ａと同様の処理を行うものであり、接続先がコアルータ１２０となる。
【００６６】
ここで、インタフェース１１２ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＸ１０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＸ１０１内で一意なアドレスが付加される場合と付加されない場合がある。
【００６７】
コアルータ１２０は、ＩＸ１０１内に位置するルータ装置であり、仮想ルータ１１３ａから仮想ルータ１１３ｎへのパケット転送と仮想ルータ１１３ｎからルータ１１３ａへのパケット転送を行う。
【００６８】
またコアルータ１２０は、インタフェース１２１ａを介して仮想ルータ１１３ａに接続されており、インタフェース１２１ｎを介して仮想ルータ１１３ｎに接続されている。ＩＸ１０１内の他のルータとの間の通信を可能とするため、ＩＸ１０１内で一意なアドレスがそれぞれのインタフェースに最低１つ付加されている。
【００６９】
さらにコアルータ１２０は、仮想ルータ１１３ａや仮想ルータ１１３ｎとの間で、ＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＸ１０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル１２２に記憶する。
【００７０】
この結果、コアルータ１２０はインタフェース１２１ａから転送されたパケットの宛先からルーティングテーブル１２２を検索し、次の転送先が仮想ルータ１１３ｎの場合には、インタフェース１２１ｎにパケットを出力する。同様にインタフェース１２１ｎから転送されたパケットの宛先からルーティングテーブル１２２を検索し、次の転送先が仮想ルータ１１３ａの場合には、インタフェース１２１ａにパケットを出力する。
【００７１】
インタフェース１２１ａとインタフェース１２１ｎとは、インタフェース１１２ａと同様の処理を行うものであり、接続先がそれぞれ仮想ルータ１１３ａ、仮想ルータ１１３ｎとなる。
【００７２】
ここで、インタフェース１２１ａ、インタフェース１２１ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＸ１０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＸ１０１内で一意なアドレスが付加される場合と付加されない場合がある。
【００７３】
トンネル１５０は、仮想ルータ１１１ａと仮想ルータ１１１ｎとが論理的に直接接続しているようにみせる仮想リンクである。仮想ルータ１１１ａから仮想ルータ１１１ｎに転送されるパケットは、グローバルアドレス体系のパケットがインタフェース１１５ａでＩＸ１０１内のアドレス体系のパケットにカプセル化され、ＩＸ１０１内のネットワークを仮想ルータ１１３ｎまで転送され、インタフェース１１５ｎでカプセル化パケットが再び元のパケットに非カプセル化され仮想ルータ１１１ｎに到達する。仮想ルータ１１１ｎから仮想ルータ１１１ａへのパケット転送も同様である。
【００７４】
このように仮想ルータ１１１ａと仮想ルータ１１１ｎ間ではトンネル１５０を介して、ＩＸ内のネットワークを意識することなく、お互いに通信が可能となっている。
【００７５】
図２はルーティングテーブル１３０ａを詳細に示したものである。このテーブルはＩＳＰ１０２ａ、ＩＳＰ１０２ｎのネットワークやホストのアドレスや仮想ルータ１１１ｎのアドレスなど、グローバルアドレス空間の経路テーブルである。
【００７６】
このテーブルでは、最終的な宛先アドレス、又は宛先アドレスを含むネットワークのアドレスと、そこへ到達するために転送する次のルータのアドレス、実際に転送するために使用する出力インタフェースの組が一つのセットとして記憶される。
【００７７】
パケットを転送する際にはパケットの宛先アドレスを検索キーとして、ルーティングテーブル１３０ａの宛先アドレス欄を検索する。
【００７８】
検索により、合致する欄が見つかった時は、対応する次のルータアドレスと出力インタフェースを求め、出力インタフェースにパケットを渡す。
【００７９】
検索により、合致する欄が見つからなかった時には、エラーメッセージを作成し転送元に送り返す。
【００８０】
一例として、ルータ１４０ｎに付加されている宛先アドレスＧ１４０ｎに対する次の転送先は仮想ルータ１１１ｎのインタフェース１１５ｎのアドレスＧ１１５ｎで、出力先インタフェースはインタフェース１１５ａと記憶される。
【００８１】
図３はルーティングテーブル１３１ａを詳細に示したものである。このテーブルは、ＩＸ内部の独自アドレス体系で構成されたネットワークの経路テーブルであり、ルーティングテーブル１３０ａ同様に最終的な宛先アドレス、又は宛先アドレスを含むネットワークのアドレスと、そこへ到達するために転送する次のルータのアドレス、実際に転送するために使用する出力インタフェースの組が一つのセットとして記憶される。パケットを転送する際にはパケットの宛先アドレスを検索キーとして、ルーティングテーブル１３０ａの宛先アドレス欄を検索する。
【００８２】
検索により合致する欄が見つかった時は、対応する次のルータアドレスと出力インタフェースを求め、出力インタフェースにパケットを渡す。
【００８３】
検索により合致する欄が見つからなかった時には、エラーメッセージを作成し転送元に送り返す。
【００８４】
一例として、仮想ルータ１３１ｎに付加されている宛先アドレスp１１４ｎに対する次の転送先はコアルータ１２０のインタフェース１２１ａのアドレスp１２１ａで、出力先インタフェースはインタフェース１１４ａと記憶される。
【００８５】
図４はトンネル対応テーブル１３２ａを詳細に示したものである。このトンネル対応テーブルは、グローバルアドレスのパケットをＩＸ１０１内部のアドレス体系のパケットにカプセル化する際に参照されるテーブルである。
【００８６】
パケットをカプセル化する際には、仮想ルータ１１１ａから転送されたパケットの次の転送先ルータのアドレスをキーとして、トンネル出口アドレス欄を検索する。
【００８７】
検索により合致する欄が見つかった時は、対応するカプセル化アドレスを宛先アドレスとしたカプセル情報を作成、パケットに付加して、仮想ルータ１３１ａに転送する。
【００８８】
検索により合致する欄が見つからなかった時には、エラーとして仮想ルータ１１１ａに送り返す。
【００８９】
一例として、トンネル出口アドレスとなる仮想ルータ１１１ｎのインタフェース１１５ｎのアドレスＧ１１５ｎに対応するカプセル化アドレスとして仮想ルータ１１３ｎのインタフェース１１４ｎのアドレスp１１４ｎが記憶される。
【００９０】
このトンネル出口アドレスとカプセル化アドレスの対応関係の情報はあらかじめ設定する方法とトンネル情報交換用のプロトコルを使用し、エッジルータ１１０ａとエッジルータ１１０ｎ間でお互いの対応関係情報を交換する方法とが考えられる。
【００９１】
図５の５０１は、ルータ１４０ａからルータ１４０ｎへ送信する場合のパケットを示したものである。パケットヘッダの宛先アドレスとしてルータ１４０ｎのアドレスＧ１４０ｎ、送信元アドレスとしてルータ１４０ａのアドレスＧ１４０ａが設定されている。アドレスＧ１４０ａ、アドレス１４０ｎは共にグローバルアドレスである。
【００９２】
図６の６０１は、インタフェース１１５ａでパケット５０１に付加されるトンネル情報の一例である。宛先アドレスとして仮想ルータ１１３ｎに収容されるいずれかのインタフェースに付加されたアドレスが付加される。送信元アドレスとして仮想ルータ１１３ａに収容されるいずれかのインタフェースに付加されたアドレスが付加される。また、このトンネル情報が付加されたパケットがカプセル化パケットであることを示すプロトコルＩＤも設定する。
【００９３】
この例では宛先アドレスとして仮想ルータ１１３ｎのインタフェース１１４ｎのアドレスp１１４ｎ、送信元アドレスとして仮想ルータ１１３ａのインタフェース１１４ａのアドレスp１１４ａが設定されている。
【００９４】
図７の７０１は、パケット５０１をトンネル情報６０１でカプセル化したパケットを示している。
【００９５】
ここで図８のフローチャートを用いて、本ネットワークシステムを利用したＩＸ１０１において、ＩＳＰ１０２ａのルータ１４０ａから転送されたパケット５０１をＩＳＰ１０２ｎのルータ１４０ｎへ転送する際の動作例を説明する。
【００９６】
グローバルアドレスのパケット５０１が、ルータ１４０ａから転送され、仮想ルータ１１１ａに到達すると、仮想ルータ１１１ａではパケット５０１の宛先アドレスＧ１４０ｎをもとにルーティングテーブル１３０ａを検索し、次の転送先ルータのアドレスと出力インタフェースを求める(Ｓ１０１)。
【００９７】
この場合、宛先アドレスＧ１４０ｎの次の転送先アドレスは、Ｇ１１５ｎで出力インタフェースがトンネル１５０を形成するインタフェース１１５ａであることがわかり、パケット５０１をインタフェース１１５ａに出力する(Ｓ１０２)。
【００９８】
出力インタフェースがトンネル１５０を形成するインタフェース１１５ａでない場合には、パケット５０１はその出力インタフェースから転送される(Ｓ１０３)。
【００９９】
インタフェース１１５ａでは、仮想ルータ１１１ａから入力したパケット５０１の次転送先ルータのアドレスＧ１１５ｎをもとに、図３のトンネル対応テーブル１３２ａのトンネル出口アドレス欄を検索する。
【０１００】
この検索の結果、カプセル化アドレスが仮想ルータ１１３ｎのインタフェースアドレスp１１４ｎであることがわかり、この情報をもとに、トンネル情報６０１を作成する。このトンネル情報では、宛先アドレスをp１１４ｎ、送信元アドレスを仮想ルータ１１３ａに収容されるいずれかのインタフェースのアドレス、すなわち、この例の場合にはインタフェース１１４ａのアドレスp１１４ａに設定する。プロトコルＩＤにカプセル化されたパケットであることを示すＩＤを設定する。
【０１０１】
また作成したトンネル情報で、パケット５０１をカプセル化して、パケット７０１を作成し、仮想ルータ１１３ａに出力する(Ｓ１０４)。
【０１０２】
すなわち、以上の処理においてインタフェース１１５ａでは、パケット５０１からＩＸ１０１内で通用するアドレス体系のパケット７０１が生成され、ＩＸ内をトンネル情報６０１に基づいて転送されることになるため、仮想ルータ１１１ａの上流、つまりＩＳＰ１０２ａなどにはＩＸ内部のネットワーク構成を認識させないことが可能となる。
【０１０３】
仮想ルータ１１３ａでは、インタフェース１１５ａから入力したパケット７０１の宛先アドレスp１１４ｎをもとに、ルーティングテーブル１３１ａの宛先アドレス欄を検索する。この検索の結果、宛先アドレスp１１４ｎに対応する次の転送先ルータのアドレスがp１２１ａで、出力インタフェースが１１４ａであることがわかり、パケット７０１をインタフェース１１４ａに出力する(Ｓ１０５)。
【０１０４】
コアルータ１２０でも同様にルーティングテーブル１２２を検索し、パケット７０１の次転送ルータを調べ転送する。
【０１０５】
このようにして、パケット７０１は、ＩＸ１０１内部のネットワークの中を転送され、仮想ルータ１１３ｎまで到達する(Ｓ１０６)。
【０１０６】
仮想ルータ１１３ｎでは、自身が収容するインタフェースのアドレスが宛先アドレスであるパケット７０１を受信し、そのプロトコルＩＤから、これがカプセル化されたパケットであるかどうかを調査する(Ｓ１０７)。
【０１０７】
カプセル化されたパケットである場合、インタフェース１１５ｎへ出力する(Ｓ１０９)。
【０１０８】
カプセル化されたパケットでない場合は、ＩＸ内のネットワークで閉じた通信で仮想ルータ１１３ｎの上位層、つまりＴＣＰやＵＤＰなどで処理されるパケットであるため、仮想ルータ１１３ｎ内の適切な上位層に処理を委ねる(Ｓ１０８)。
【０１０９】
インタフェース１１５ｎでは、パケット７０１のトンネル情報部分６０１を取り除き、パケット５０１の状態に戻し、仮想ルータ１１１ｎへ出力する(Ｓ１１０)。
【０１１０】
仮想ルータ１１１ｎではパケット５０１の宛先アドレスＧ１４０ｎをもとにルーティングテーブル１３０ｎを参照し、次の転送先ルータ１４０ｎ、この場合、最終宛先へパケット５０１を転送する(Ｓ１１１)。
【０１１１】
上記のように処理されてパケット５０１は、ＩＳＰ１０２ａのルータ１４０ａからＩＳＰ１０２ｎのルータ１４０ｎへ転送される。
【０１１２】
以上のように、本実施形態では、ＩＸ１０１内の仮想ルータ１１１ａに収容されるインタフェースと仮想ルータ１１１ｎに収容されるインタフェースにはグローバルアドレスが付加されるが、それ以外のルータのインタフェースにはＩＸ内部独自のアドレスを付加しネットワークが構成されることから、使用するグローバルアドレスを節約することができる。この使用するグローバルアドレスを節約することは、特に、ＩＸ内のネットワークの規模が大きくなり、内部のネットワークに位置するルータの数が増加したシステムの場合、非常に有効となる。
【０１１３】
また、本実施形態では、ＩＸ内部をパケットのカプセル化により転送し、ＩＸ外部にはパケットを非カプセル化して転送する技術を用いることにより、エッジルータにおいて、ＩＸ内部のアドレスをＩＸ外部に伝達させないため、ルーティングプロトコルによる経路フィルタを設定する必要はない。
【０１１４】
さらに本実施形態では、ＩＸ内部のネットワーク構成、使用しているＩＰアドレスをＩＸ外部のＩＳＰに対して隠すことが可能となるので、悪意のある第三者による不正侵入を未然に防止することが可能となる。
【０１１５】
（第２の実施形態）
図９は本発明のネットワークシステムにおいて、ＩＳＰを実現するための一構成例を示す。
【０１１６】
ネットワーク９０１は、一つのＩＳＰを構成するネットワークであり、インターネット９０２と接続を行っており、カスタマ９０３へインターネット接続サービスを提供する。ＩＳＰ９０１内にはエッジルータ９１０ａ、エッジルータ９１０b、エッジルータ９１０ｎ、コアルータ９２０、アプリケーションサーバ９６０、監視装置９６１などが存在する。
【０１１７】
エッジルータ９１０ａは、ＩＳＰ９０１とカスタマ９０３の境界に位置するルータ装置であり、カスタマ９０３からコアルータ９２０へのパケット転送とコアルータ９２０からカスタマ９０３へのパケット転送を行う。
【０１１８】
またエッジルータ９１０ａは、第１の実施形態におけるエッジルータと同様に、内部に仮想ルータ９１１ａと仮想ルータ９１３ａを持ち、それぞれが論理的に独立して動作している。
【０１１９】
仮想ルータ９１１ａは、インタフェース９１２ａを介してカスタマ９０３に、インタフェース９１５ａを介して論理的に仮想ルータ９１１bや仮想ルータ９１１ｎに接続されており、カスタマ９０３や仮想ルータ９１１b、仮想ルータ９１１ｎとの間の通信を可能とするグローバルアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１２０】
また仮想ルータ９１１ａは、カスタマ９０３にＩＳＰ９０１が保持しているグローバルアドレスを貸与することによって、通信を可能にしている。どのアドレスをどのインタフェース経由で貸与したのかをルーティングテーブル９３０ａに記憶する。
【０１２１】
さらに、仮想ルータ９１１ａは、仮想ルータ９１１ｎとの間で、例えばＩ-ＢＧＰのようなＡＳ内ルーティングプロトコルによる情報のやりとりにより、仮想ルータ９１１ｎが得たインターネット９０２内のホストやルータにパケットを転送するために必要となる次のルータ、すなわち、この場合には、仮想ルータ９１１ｎの情報を求め、その結果をルーティングテーブル９３０ａに記憶する。
【０１２２】
同様に、仮想ルータ９１１ａは、仮想ルータ９１１bとの間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやりとりにより、仮想ルータ９１１bが得たＩＳＰ９０１内のホストやルータにパケットを転送するために必要となる次のルータ、すなわち、この場合には、仮想ルータ９１１ｎの情報を求め、その結果をルーティングテーブル９３０ａに記憶する。
【０１２３】
この結果、仮想ルータ９１１ａは、カスタマ９０３や仮想ルータ９１１b、仮想ルータ９１１ｎなどから転送されたパケットの宛先からルーティングテーブル９３０ａを検索し、次の転送先がカスタマ９０３の場合には、インタフェース９１２ａにパケットを出力し、次の転送先が仮想ルータ９１１bや仮想ルータ９１１ｎの場合には、インタフェース９１５ａに出力する。
【０１２４】
インタフェース９１２ａは、仮想ルータ９１１ａから出力されたパケットにデータリンクヘッダの付加、データリンクフレームのカスタマ９０３への出力及び、カスタマ９０３から転送されたパケットのデータリンクヘッダの削除と仮想ルータ９１１ａへの転送を行う。データリンクレイヤとしてはＥｔｈｅｒｎｅｔ（Ｒ）、ＡＴＭ、ＰＯＳなどが考えられる。
【０１２５】
ここで、インタフェース９１２ａでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずグローバルアドレスを付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【０１２６】
インタフェース９１５ａは、ＩＳＰ９０１内のネットワークを仮想的なトンネル９５０とみたて、それを介して仮想ルータ９１１bや仮想ルータ９１１ｎとの間でパケットのやり取りの時に使用するカプセル情報の付加及び削除を行う論理インタフェース、すなわち、トンネルインタフェースである。
【０１２７】
この論理インタフェースにはトンネル９５０の出口が複数用意され、複数のルータと接続する場合には、必ずグローバルアドレスを付加され、トンネル９５０の出口が一つで、一つのルータと接続する場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【０１２８】
仮想ルータ９１１ａより入力された仮想ルータ９１１ｎへ出力するパケットについては、次の転送先となる仮想ルータ９１１ｎに収容されるインタフェースに付加されたグローバルアドレスからトンネル対応テーブル９３０ａを検索することで、仮想ルータ９１３ｎに収容されるインタフェースに付加されたアドレスを求め、求めたアドレスからカプセル情報を作成後、パケットの先頭にトンネル情報を付加したカプセル化パケットを作成し、仮想ルータ９１３ａにパケットを出力する。
【０１２９】
仮想ルータ９１１ａより入力された仮想ルータ９１１bへ出力するパケットについても同様に、次の転送先となる仮想ルータ９１１bに収容されるインタフェースに付加されたグローバルアドレスからトンネル対応テーブル９３０ａを検索することで、仮想ルータ９１３bに収容されるインタフェースに付加されたアドレスを求め、求めたアドレスからカプセル情報を作成後、パケットの先頭にトンネル情報を付加したカプセル化パケットを作成し、仮想ルータ９１３ａパケットを出力する。
【０１３０】
一方、仮想ルータ９１３ａより入力されたカプセル化パケットはカプセル情報の削除後、仮想ルータ９１１ａに出力する。
【０１３１】
仮想ルータ９１３ａは、インタフェース９１４ａを介してコアルータ９２０に接続されており、コアルータ９２０との間の通信を可能とするＩＳＰ９０１内で一意なアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１３２】
仮想ルータ９１３ａは、コアルータ９２０との間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＳＰ９０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル９３１ａに記憶する。
【０１３３】
また、仮想ルータ９１３ａでは、自身のインタフェースに付加されたアドレス宛てのパケットのうち、プロトコルＩＤ等でそれがカプセル化されたパケットであると判明したものについては、インタフェース９１５ａに出力する。
【０１３４】
このように、仮想ルータ９１３ａは、インタフェース９１５ａから入力されたパケットの宛先からルーティングテーブル９３１ａを検索し、次の転送先がコアルータ９２０の場合には、インタフェース９１４ａにパケットを出力する。また、インタフェース９１４ａから入力されたカプセル化パケットはインタフェース９１５ａに出力する。
【０１３５】
インタフェース９１４ａは、９１２ａと同様の処理を行うものであり、接続先がコアルータ９２０となる。ここで、インタフェース９１２ａでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＳＰ９０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＳＰ９０１内で一意なアドレスが付加される場合と付加されない場合がある。
【０１３６】
エッジルータ９１０bは、ＩＳＰ９０１内に存在するアプリケーションサーバ９６０と接続するルータ装置であり、アプリケーションサーバ９６０からコアルータ９２０へのパケット転送とコアルータ９２０からアプリケーションサーバ９６０へのパケット転送を行う。
【０１３７】
また、エッジルータ９１０bは、エッジルータ９１０ａと同様に内部に仮想ルータ９１１ｎと仮想ルータ９１３ｎを持ち、それぞれが論理的に独立して動作している。
【０１３８】
この例では、エッジルータ９１０bは、ＩＳＰ９０１内に存在する監視装置９６１と接続するルータ装置であり、監視装置９６１から各監視対象へのパケット転送と各監視対象から監視装置９６１へのパケット転送を行う。
【０１３９】
仮想ルータ９１１bは、インタフェース９１２bを介してアプリケーションサーバ９６０に、インタフェース９１５ｎを介して論理的に仮想ルータ９１１ａや仮想ルータ９１１bに接続されており、アプリケーションサーバ９６０や仮想ルータ９１１ａ、仮想ルータ９１１ｎとの間の通信を可能とするグローバルアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１４０】
また仮想ルータ９１１bは、仮想ルータ９１１ａや仮想ルータ９１１ｎとの間でＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやりとりを行い、ルーティング情報をルーティングテーブル９３０bに記憶する。
【０１４１】
さらに仮想ルータ９１１bは、ルーティングテーブル９３０bをもとに、アプリケーションサーバ９６０や仮想ルータ９１３ｎから転送されたパケットの宛先から次の転送先がアプリケーションサーバ９６０の場合には、インタフェース９１２bにパケットを出力し、次の転送先が仮想ルータ９１１ａや仮想ルータ９１１ｎの場合には、インタフェース９１５bに出力する。
【０１４２】
インタフェース９１２bは、インタフェース９１２ａと同様の処理を行うものであり、接続先がアプリケーションサーバ９６０となる。ここで、インタフェース９１２bでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずグローバルアドレスを付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【０１４３】
インタフェース９１５bは、インタフェース９１５ａと同様にトンネル９５０を介して仮想ルータ９１１ａや仮想ルータ９１１ｎとの間でパケットのやり取りの時に使用するカプセル情報の付加及び削除を行う論理インタフェース、すなわち、トンネルインタフェースである。この論理インタフェースにはトンネル９５０の出口が複数用意され、複数のルータと接続する場合には、必ずグローバルアドレスを付加され、トンネル９５０の出口が一つで、一つのルータと接続する場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【０１４４】
仮想ルータ９１１bより入力された仮想ルータ９１１ａや仮想ルータ９１１ｎへ出力するパケットについては、トンネル対応テーブル９３２bの情報をもとに、パケットの先頭にトンネル情報を付加して仮想ルータ９１３bにパケットを出力する。
【０１４５】
一方、仮想ルータ９１３bより入力されたパケットはカプセル情報の削除後、仮想ルータ９１１bに出力する。
【０１４６】
仮想ルータ９１３bは、インタフェース９１４bを介してコアルータ９２０に接続されており、インタフェース９１６bを介して監視装置９６１に接続されている。コアルータ９２０や監視装置９６１との間の通信を可能とするＩＳＰ９０１内で一意なアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１４７】
また仮想ルータ９１３bは、コアルータ９２０との間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＳＰ９０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル９３１bに記憶する。
【０１４８】
さらに、仮想ルータ９１３bでは、自身のインタフェースに付加されたアドレス宛てのパケットのうち、プロトコルＩＤ等でそれがカプセル化されたパケットであると判明したものについては、インタフェース９１５bに出力する。
【０１４９】
このように、仮想ルータ９１３bは、インタフェース９１５bから入力されたパケットの宛先からルーティングテーブル９３１bを検索し、次の転送先がコアルータ９２０の場合には、インタフェース９１４bにパケットを出力し、次の転送先が監視装置９６１の場合には、インタフェース９１６bにパケットを出力する。また、インタフェース９１４bから入力されたカプセル化パケットはインタフェース９１５bに出力する。
【０１５０】
インタフェース９１４b、インタフェース９１６bは、インタフェース９１２ａと同様の処理を行うものであり、接続先がコアルータ９２０や監視装置９６１となる。
【０１５１】
ここで、インタフェース９１４b、インタフェース９１６bでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＳＰ９０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＳＰ９０１内で一意なアドレスが付加される場合と付加されない場合がある。
【０１５２】
また、エッジルータ９１０bは、ＮＡＴ(Ｎｅｔｗｏｒｋ Ａｄｄｒｅｓｓ Ｔｒａｎｓｌａｔｉｏｎ)機構９３５を有する。これは一例として、監視装置９６１がアプリケーションサーバ９６０に接続しようとする場合、アプリケーションサーバ９６０にはグローバルアドレスが付加され、監視装置９６１にはＩＳＰ内独自アドレスが付加されていて、お互いが異なるアドレス体系であるため普通に通信ができないといった問題を解決する機構である。
【０１５３】
ＮＡＴ機構９３５は、アプリケーションサーバ９６０から監視装置９６１との通信は仮想ルータ９１１bのある特定の通信ポート宛ての通信に見せるようにアドレス変換する機能、監視装置９６１からアプリケーションサーバ９６０との通信は仮想ルータ９１３bのある特定の通信ポート宛ての通信に見せるようにアドレス変換する機能、仮想ルータ９１１bと仮想ルータ９１３bでのアドレス変換を対応させる機能の３つの機能からなる。これら機能により、ＩＳＰ９０１内でアドレス体系の異なる監視装置９６１とアプリケーションサーバ９６０が通信を可能にしている。
【０１５４】
エッジルータ９１０ｎは、ＩＳＰ９０１とインターネット９０２の境界に位置するルータ装置であり、インターネット９０２側の境界ルータ装置と９４０と接続し、ルータ９４０からコアルータ９２０へのパケット転送とコアルータ９２０からへのルータ９４０へのパケット転送を行う。
【０１５５】
またエッジルータ９１０ｎは、エッジルータ９１０ａ同様に内部に仮想ルータ９１１ｎと仮想ルータ９１３ｎを持ち、それぞれが論理的に独立して動作している。
【０１５６】
仮想ルータ９１１ｎは、インタフェース９１２ｎを介してルータ９４０に、インタフェース９１５ｎを介して論理的に仮想ルータ９１１ａや仮想ルータ９１１bに接続されており、ルータ９４０や仮想ルータ９１１ａとの間の通信を可能とするグローバルアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１５７】
また仮想ルータ９１１ｎはルータ９４０との間でＢＧＰのようなＡＳ間ルーティングプロトコルによる情報のやり取り、仮想ルータ９１１ａや仮想ルータ９１１bとの間でＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやりとりを行い、ルーティング情報をルーティングテーブル９３０ｎに記憶する。
【０１５８】
さらに仮想ルータ９１１ｎは、ルーティングテーブル９３０ｎをもとに、ルータ９４０や仮想ルータ９１３ｎから転送されたパケットの宛先から次の転送先がルータ９４０の場合には、インタフェース９１２ｎにパケットを出力し、次の転送先が仮想ルータ９１１ａや仮想ルータ９１１bの場合には、インタフェース９１５ｎに出力する。
【０１５９】
インタフェース９１２ｎは、インタフェース９１２ａと同様の処理を行うものであり、接続先がルータ９４０となる。ここで、インタフェース９１２ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずグローバルアドレスを付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、グローバルアドレスが付加される場合と付加されない場合がある。
【０１６０】
インタフェース９１５ｎは、インタフェース９１５ａと同様にトンネル９５０を介して仮想ルータ９１１ａとの間でパケットのやり取りの時に使用するカプセル情報の付加及び削除を行う論理インタフェース、すなわち、トンネルインタフェースである。
【０１６１】
この論理インタフェースには、トンネル９５０の出口が複数用意され、複数のルータと接続する場合には、必ずグローバルアドレスを付加され、トンネル９５０の出口が一つで、一つのルータと接続する場合には、グローバルアドレスが付加される場合と付加されない場合がる。
【０１６２】
仮想ルータ９１１ｎより入力された仮想ルータ９１１ａや仮想ルータ９１１bへ出力するパケットについては、トンネル対応テーブル９３２ｎの情報をもとに、パケットの先頭にトンネル情報を付加して仮想ルータ９１３ｎにパケットを出力する。
【０１６３】
一方、仮想ルータ９１３ｎより入力されたパケットは、カプセル情報の削除後、仮想ルータ９１１ｎに出力する。
【０１６４】
仮想ルータ９１３ｎは、インタフェース９１４ｎを介してコアルータ９２０に接続されており、コアルータ９２０との間の通信を可能とするＩＳＰ９０１内で一意なアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１６５】
仮想ルータ９１３ａは、コアルータ９２０との間で、例えばＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＳＰ９０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル９３１ｎに記憶する。
【０１６６】
また、仮想ルータ９１３ｎでは、自身のインタフェースに付加されたアドレス宛てのパケットのうち、プロトコルＩＤ等でそれがカプセル化されたパケットであると判明したものについては、インタフェース９１５ｎに出力する。
【０１６７】
このように、仮想ルータ９１３ｎは、インタフェース９１５ｎから転送されたパケットの宛先からルーティングテーブル９３１ｎを検索し、次の転送先がコアルータ９２０の場合には、インタフェース９１４ｎにパケットを出力する。また、インタフェース９１４ｎから転送されたカプセル化パケットはインタフェース９１５ｎに出力する。
【０１６８】
インタフェース９１４ｎは、インタフェース９１２ａと同様の処理を行うものであり、接続先がコアルータ９２０となる。ここで、インタフェース９１４ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＳＰ９０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＳＰ９０１内で一意なアドレスが付加される場合と付加されない場合がある。
【０１６９】
コアルータ９２０は、ＩＳＰ９０１内に位置するルータ装置であり、仮想ルータ９１３ａから仮想ルータ９１３bや仮想ルータ９１３ｎへのパケット転送と仮想ルータ９１３bから仮想ルータ９１３ａや仮想ルータ９１３ｎへのパケット転送と仮想ルータ９１３ｎから仮想ルータ９１３ａや仮想ルータ９１３bへのパケット転送を行う。
【０１７０】
コアルータ９２０は、インタフェース９２１ａを介して仮想ルータ９１３ａに接続されており、インタフェース９２１bを介して仮想ルータ９１３bに接続されており、インタフェース９２１ｎを介して仮想ルータ９１３ｎに接続されている。ＩＳＰ９０１内の他のルータとの間の通信を可能とするため、ＩＳＰ９０１内で一意なアドレスがそれぞれのインタフェースに最低１つ付加されている。
【０１７１】
コアルータ９２０は、仮想ルータ９１３ａや仮想ルータ９１３b、仮想ルータ９１３ｎとの間で、ＯＳＰＦのようなＡＳ内ルーティングプロトコルによる情報のやり取りにより、ＩＳＰ９０１内のルータやホストにパケットを転送するための次のルータ情報を求め、その結果をルーティングテーブル９２２に記憶する。
【０１７２】
この結果、コアルータ９２０はインタフェース９２１ａから転送されたパケットの宛先からルーティングテーブル９２２を検索し、次の転送先が仮想ルータ９１３ｎの場合には、インタフェース９２１ｎにパケットを出力する。
【０１７３】
同様にインタフェース９２１bやインタフェース９２１ｎから転送されたパケットの宛先からルーティングテーブル９２２を検索し、次の転送先に従ったインタフェースへパケットを出力する。
【０１７４】
インタフェース９２１ａ、インタフェース９２１b、インタフェース９２１ｎは、インタフェース９１２ａと同様の処理を行うものであり、接続先がそれぞれ仮想ルータ９１３ａ、仮想ルータ９１３b、仮想ルータ９１３ｎとなる。ここで、インタフェース９２１ａ、インタフェース９２１b、インタフェース１２１ｎでは、Ｅｔｈｅｒｎｅｔ（Ｒ）などのマルチアクセスインタフェースの場合には、必ずＩＳＰ９０１内で一意なアドレスが付加され、ＰＯＳなどのポイントポイントインタフェースの場合には、ＩＳＰ９０１内で一意なアドレスが付加される場合と付加されない場合がある。
【０１７５】
トンネル９５０は、仮想ルータ９１１ａと仮想ルータ９１１ｎとが論理的に直接接続しているようにみせる仮想リンクである。
【０１７６】
仮想ルータ９１１ａから仮想ルータ９１１ｎに転送されるパケットは、グローバルアドレス体系のパケットがインタフェース９１５ａでＩＳＰ９０１内のアドレス体系のパケットにカプセル化され、ＩＳＰ９０１内のネットワークを仮想ルータ９１３ｎまで転送され、インタフェース９１５ｎでカプセル化パケットが再び元のパケットに非カプセル化され仮想ルータ９１１ｎに到達する。
【０１７７】
仮想ルータ９１１ｎから仮想ルータ９１１ａへのパケット転送も同様である。
【０１７８】
このように仮想ルータ９１１ａと仮想ルータ９１１ｎ間ではトンネル９５０を介して、ＩＳＰ９０１内のネットワークを意識することなく、お互いに通信が可能となっている。
【０１７９】
仮想ルータ９１１ａと仮想ルータ９１１bとの間、仮想ルータ９１１ｎと仮想ルータ９１１bとの間についても、同様にトンネル９５０により、お互いが直接接続されたようにみえる。
【０１８０】
アプリケーションサーバ９６０は、ＩＳＰ９０１内に設置され、カスタマ９０３に提供するメールサーバやＷｅｂサーバとして使用される。そのためＩＳＰ９０１外部から接続できるように、グローバルアドレスが収容されるインタフェースのいずれかに最低１つ付加されている。
【０１８１】
監視装置９６１は、ＩＳＰ９０１内の機器の状態を監視するための機器であり、収容されるインタフェースのいずれかにＩＳＰ９０１内で一意なアドレスが最低１つ付加されている。
【０１８２】
図１０はルーティングテーブル９３０ａを詳細に示したものである。このテーブルは、第１の実施形態で説明した図２のルーティングテーブルと同様に、グローバルアドレス空間の経路テーブルであり、最終的な宛先アドレス、又は宛先アドレスを含むネットワークのアドレスと、そこへ到達するために転送する次のルータのアドレス、実際に転送するために使用する出力インタフェースの組が一つのセットとして記憶される。パケットを転送する際にはパケットの宛先アドレスを検索キーとして、ルーティングテーブル９３０ａの宛先アドレス欄を検索する。
【０１８３】
検索により合致する欄が見つかった時は、対応する次のルータアドレスと出力インタフェースを求め、出力インタフェースにパケットを渡す。
【０１８４】
検索により合致する欄が見つからなかった時には、エラーメッセージを作成し転送元に送り返す。
【０１８５】
一例として、ルータ９４０ｎに付加されている宛先アドレスＧ９４０に対する次の転送先は仮想ルータ９１１ｎのインタフェース９１５ｎのアドレスＧ９１５ｎで、出力先インタフェースはインタフェース９１５ａと記憶される。
【０１８６】
図１１は、ルーティングテーブル９３１ａを詳細に示したものである。このテーブルは第１の実施形態で説明した図３のルーティングテーブルと同様に、ＩＳＰ内部の独自アドレス体系で構成されたネットワークの経路テーブルであり、ルーティングテーブル９３０ａ同様に最終的な宛先アドレス、又は宛先アドレスを含むネットワークのアドレスと、そこへ到達するために転送する次のルータのアドレス、実際に転送するために使用する出力インタフェースの組が一つのセットとして記憶される。パケットを転送する際にはパケットの宛先アドレスを検索キーとして、ルーティングテーブル９３０ａの宛先アドレス欄を検索する。
【０１８７】
検索により合致する欄が見つかった時は、対応する次のルータアドレスと出力インタフェースを求め、出力インタフェースにパケットを渡す。
【０１８８】
検索により合致する欄が見つからなかった時には、エラーメッセージを作成し転送元に送り返す。
【０１８９】
一例として、仮想ルータ９３１ｎに付加されている宛先アドレスp９１４ｎに対する次の転送先はコアルータ９２０のインタフェース９２１ａのアドレスp９２１ａで、出力先インタフェースはインタフェース９１４ａと記憶される。
【０１９０】
図１２はトンネル対応テーブル９３２ａを詳細に示したものである。トンネル対応テーブルは第１の実施形態で説明した図４のトンネル対応テーブルと同様にグローバルアドレスのパケットをＩＳＰ９０１内部のアドレス体系のパケットにカプセル化する際に参照されるテーブルである。
【０１９１】
パケットをカプセル化する際には、仮想ルータ９１１ａから入力されたパケットの次の転送先ルータのアドレスをキーとして、トンネル出口アドレス欄を検索する。
【０１９２】
検索により合致する欄が見つかった時は、対応するカプセル化アドレスを宛先アドレスとしたカプセル情報を作成、パケットに付加して、仮想ルータ９３１ａに出力する。
【０１９３】
検索により合致する欄が見つからなかった時には、エラーとして仮想ルータ９１１ａに送り返す。
【０１９４】
一例として、トンネル出口アドレスとなる仮想ルータ９１１ｎのインタフェース９１５ｎのアドレスＧ９１５ｎに対応するカプセル化アドレスとして仮想ルータ９１３ｎのインタフェース９１４ｎのアドレスp９１４ｎが記憶される。
【０１９５】
このトンネル出口アドレスとカプセル化アドレスの対応関係の情報はあらかじめ設定する方法とトンネル情報交換用のプロトコルを使用し、エッジルータ間でお互いの対応関係情報を交換する方法とが考えられる。
【０１９６】
図１３の１３０１は、カスタマ９０３からアプリケーションサーバ９６０へ送信する場合のパケットを示したものである。パケットヘッダの宛先アドレスとしてアプリケーションサーバ９６０のアドレスＧ９６０、送信元アドレスとしてカスタマ９０３のアドレスＧ９０３が設定されている。アドレスＧ９６０、アドレスＧ９０３は共にグローバルアドレスである。
【０１９７】
図１４の１４０１は、インタフェース９１５ａでパケット１３０１に付加されるトンネル情報の一例である。宛先アドレスとして仮想ルータ９１３bに収容されるいずれかのインタフェースに付加されたアドレスが付加される。送信元アドレスとして仮想ルータ９１３ａに収容されるいずれかのインタフェースに付加されたアドレスが付加される。また、このトンネル情報が付加されたパケットがカプセル化パケットであることを示すプロトコルＩＤも設定する。
【０１９８】
この例では宛先アドレスとして仮想ルータ９１３bのインタフェース９１４bのアドレスp９１４b、送信元アドレスとして仮想ルータ９１３ａのインタフェース９１４ａのアドレスp９１４ａが設定されている。
【０１９９】
図１５の１５０１は、パケット１３０１をトンネル情報１４０１でカプセル化したパケットを示している。
【０２００】
ここで図１６のフローチャートを用いて、本ネットワークシステムを利用したＩＳＰ９０１において、カスタマ９０３がアプリケーションサーバ９６０に接続する際の動作例を説明する。
【０２０１】
グローバルアドレスのパケット１３０１がカスタマ９０３から転送され、仮想ルータ９１１ａに到達すると、仮想ルータ９１１ａではパケット１３０１の宛先アドレスＧ９６０をもとにルーティングテーブル９３０ａを検索し、次の転送先ルータのアドレスと出力インタフェースを求める(Ｓ２０１)。
【０２０２】
この場合、宛先アドレスＧ９６０の次の転送先アドレスはＧ９１５bで出力インタフェースがトンネル９５０を形成するインタフェース９１５ａであることがわかり、パケット１３０１をインタフェース９１５ａに出力する(Ｓ２０２)。
【０２０３】
出力インタフェースがトンネル９５０を形成するインタフェース９１５ａでない場合には、パケット１３０１はその出力インタフェースから転送される(Ｓ２０３)。
【０２０４】
インタフェース９１５ａでは、仮想ルータ９１１ａから入力したパケット１３０１の次転送先ルータのアドレスＧ９１５bをもとにトンネル対応テーブル９３２ａのトンネル出口アドレス欄を検索する。検索の結果、カプセル化アドレスが仮想ルータ９１３bのインタフェースアドレスp９１４bであることがわかり、この情報をもとにトンネル情報１４０１を作成する。トンネル情報では、宛先アドレスをp９１４b、送信元アドレスを仮想ルータ９１３ａに収容されるいずれかのインタフェースのアドレス、すなわち、この例の場合は、インタフェース９１４ａのアドレスp９１４ａに設定する。またプロトコルＩＤにカプセル化されたパケットであることを示すＩＤを設定する。作成したトンネル情報でパケット１３０１をカプセル化して、パケット１５０１を作成し、仮想ルータ９１３ａに出力する(Ｓ２０４)。
【０２０５】
すなわち、インタフェース９１５ａにおいて、パケット１３０１からＩＳＰ９０１内で通用するアドレス体系のパケット１５０１が生成され、ＩＳＰ内をトンネル情報１４０１に基づいて転送されることになるため、仮想ルータ９１１ａの上流、つまりカスタマ９０３などには、ＩＳＰ内部のネットワーク構成を認識させないことが可能となる。
【０２０６】
仮想ルータ９１３ａでは、インタフェース９１５ａから入力したパケット１５０１の宛先アドレスp９１４bをもとに、ルーティングテーブル９３１ａの宛先アドレス欄を検索する。この検索の結果、宛先アドレスp９１４bに対応する次の転送先ルータのアドレスがp９２１ａで、出力インタフェースが９１４ａであることがわかり、パケット１５０１をインタフェース９１４ａに出力する(Ｓ２０５)。
【０２０７】
コアルータ９２０でも、同様にルーティングテーブル９２２を検索し、パケット１５０１の次転送ルータを調べ転送する。
【０２０８】
このようにして、パケット１５０１はＩＳＰ９０１内部のネットワークの中を転送され、仮想ルータ９１３bまで到達する(Ｓ２０６)。
【０２０９】
仮想ルータ９１３bでは、自身が収容するインタフェースのアドレスが宛先アドレスであるパケット１５０１を受信し、そのプロトコルＩＤから、これがカプセル化されたパケットであるかどうかを調査する(Ｓ２０７)。
【０２１０】
カプセル化されたパケットである場合、インタフェース９１５bへ出力する(Ｓ２０９)。
【０２１１】
カプセル化されたパケットでない場合は、ＩＳＰ内のネットワークで閉じた通信で仮想ルータ９１３bの上位層、つまりＴＣＰやＵＤＰなどで処理されるパケットであるため、仮想ルータ９１３ｂ内の適切な上位層に処理を委ねる(Ｓ２０８)。
【０２１２】
インタフェース９１５bでは、パケット１５０１のトンネル情報部分１４０１を取り除き、パケット１３０１の状態に戻し、仮想ルータ９１１bへ出力する(Ｓ２１０)。
【０２１３】
仮想ルータ９１１bではパケット１３０１の宛先アドレスＧ９６０をもとにルーティングテーブル９３０bを参照し、次の転送先アプリケーションサーバ９６０、すなわち、この場合には、最終宛先へパケット１３０１を転送する(Ｓ２１１)。
【０２１４】
こうしてパケット１３０１はカスタマ９０３からアプリケーションサーバ９６０へ転送される。
【０２１５】
逆にアプリケーションサーバ９６０からカスタマ９０３へのパケットの流れについては、前述の動作とは逆で、インタフェース９１５bでのカプセル化、インタフェース９１５ａでの非カプセル化が行われ、転送される。
【０２１６】
以上のように、本実施形態では、ＩＳＰ９０１内の仮想ルータ９１１ａ、仮想ルータ９１１b、仮想ルータ９１１ｎに収容されるインタフェースとアプリケーションサーバ９６０に収容されるインタフェースにはグローバルアドレスが付加されるが、それ以外のルータのインタフェースにはＩＳＰ内部独自のアドレスを付加しネットワークが構成されることから、ＩＳＰが使用するグローバルアドレスを節約することができ、カスタマに割り当てるグローバルアドレスを増やすことができる。このようなグローバルアドレスの節約は、特に、ＩＳＰ内のネットワークの規模が大きくなり、内部のネットワークに位置するルータの数が増加したシステムにおいては、非常に有効となる。
【０２１７】
また、本実施形態においては、ＩＳＰ内部をパケットのカプセル化により転送し、ＩＳＰ外部にはパケットを非カプセル化して転送する技術を用いることにより、エッジルータにおいて、ＩＳＰ内部のアドレスをＩＳＰ外部に伝達させないため、ルーティングプロトコルによる経路フィルタを設定する必要はない。
【０２１８】
さらに本実施形態においては、メールサーバやＷｅｂサーバなどサービス提供するためにＩＳＰ外部からの接続を許す機器以外のＩＳＰ内部のネットワーク構成、使用しているＩＰアドレスをＩＳＰ外部のネットワークやカスタマに隠すことを可能とし、悪意ある第三者からの攻撃の可能性を低く抑えることができる。
【０２１９】
（第３の実施形態）
第３の実施形態として、本発明のネットワークシステムにおいて、第１の実施形態で説明したＩＸや第２の実施形態で説明したＩＳＰのエッジルータで、内部に３つの独立して動作する仮想ルータを持つ場合の構成例について説明する。
【０２２０】
図１７はＩＳＰの接続を実現するための一構成例を示す。
【０２２１】
ネットワーク １７０２ａは、一つのＩＳＰを構成するネットワークであり、エッジルータ１７１０ａ、エッジルータ１７１０bやコアルータ１７２０bなどの装置が存在しており、ネットワーク１７０２ａが一つのＡＳを構成している。
【０２２２】
ネットワーク １７０２ｎは、一つのＩＳＰを構成するネットワークであり、エッジルータ１７１０ｎやコアルータなどの装置が存在しており、ネットワーク１７０２ｎが一つのＡＳを構成している。
【０２２３】
ネットワーク１７０１は、ＩＳＰ１７０２ａとＩＳＰ１７０２ｎ接続するＩＸとして提供されるネットワークであり、コアルータ１７２０ａ、仮想ルータ１７１６ａ、仮想ルータ１７１３ｎが存在する。
【０２２４】
エッジルータ１７１０bは、第１の実施形態や第２の実施形態で説明したエッジルータと同じ構成をとり、同じ動作を行う。
【０２２５】
仮想ルータ１７１１bが収容するインタフェースのいずれかに最低１つのグローバルアドレスが付加され、仮想ルータ１７１３bが収容するインタフェースのいずれかに最低１つのＩＳＰ１７０２ａ内で一意なアドレスが付加される。仮想ルータはそれぞれのアドレス体系のルーティングテーブルを有し、宛先アドレスをもとに次の転送先ルータのアドレス、出力インタフェースを求め、パケット転送を行う。
【０２２６】
インタフェース１７１５bは、仮想ルータ１７１１bと仮想ルータ１７１３bとの間に存在し、仮想ルータ１７１１bから入力したパケットの宛先アドレスをキーにトンネル対応テーブルを参照し、トンネル情報を作成、付加することでパケットのカプセル化を行い、仮想ルータ１７１３bに出力する。また、仮想ルータ１７１３bから入力したカプセル化パケットを非カプセル化し、仮想ルータ１７１１bに出力する。
【０２２７】
以上のようにして、ＩＳＰ１７０２ａ内部を外部と異なるＩＳＰ１７０２ａ独自のアドレス体系でパケット転送を行う。
【０２２８】
第３の実施形態では、エッジルータ１７１０ａにおいて内部に仮想ルータ１７１１ａ、仮想ルータ１７１３ａ、仮想ルータ１７１６ａを持ち、それぞれが論理的に独立して動作している。
【０２２９】
仮想ルータ１７１１ａが収容するインタフェースのいずれかに最低１つのグローバルアドレスが付加され、仮想ルータ１７１３ａが収容するインタフェースのいずれかに最低１つのＩＳＰ１７０２ａ内で一意なアドレスが付加される。
【０２３０】
同様に、仮想ルータ１７１６ａでは、収容されるインタフェースのいずれかに最低１つＩＸ１７０１で一意なアドレスが付加される。仮想ルータはそれぞれのアドレス体系のルーティングテーブルを有し、宛先アドレスをもとに次の転送先ルータのアドレス、出力インタフェースを求め、パケット転送を行う。
【０２３１】
インタフェース１７１５ａは、仮想ルータ１７１１ａと仮想ルータ１７１３ａとの間に存在し、仮想ルータ１７１１ａから入力したパケットの宛先アドレスをキーにトンネル対応テーブルを参照し、トンネル情報を作成、付加することでパケットのカプセル化を行い、仮想ルータ１７１３ａに出力する。また、仮想ルータ１７１３ａから入力したカプセル化パケットを非カプセル化し、仮想ルータ１７１１ａに出力する。
【０２３２】
このようにして、ＩＳＰ１７０２ａ内部をグローバルアドレスとは異なるＩＳＰ１７０２ａ独自のアドレス体系でのパケット転送している。
【０２３３】
同様に、インタフェース１７１７ａは仮想ルータ１７１１ａと仮想ルータ１７１６ａとの間に存在し、仮想ルータ１７１１ａから入力したパケットの宛先アドレスをキーにトンネル対応テーブルを参照し、トンネル情報を作成、付加することでパケットのカプセル化を行い、仮想ルータ１７１６ａに出力する。また、仮想ルータ１７１６ａから入力したカプセル化パケットを非カプセル化し、仮想ルータ１７１１ａに出力する。このようにして、ＩＸ１７０１内部をグローバルアドレスとは異なるＩＸ１７０１独自のアドレス体系でのパケット転送している。
【０２３４】
エッジルータ１７１０ｎは、第１の実施形態や第２の実施形態で説明したエッジルータと同じ構成をとり、同じ動作をする。
【０２３５】
仮想ルータ１７１１ｎが収容するインタフェースのいずれかに最低１つのグローバルアドレスが付加され、仮想ルータ１７１３ｎが収容するインタフェースのいずれかに最低１つのＩＸ１７０１内で一意なアドレスが付加される。仮想ルータはそれぞれのアドレス体系のルーティングテーブルを有し、宛先アドレスをもとに次の転送先ルータのアドレス、出力インタフェースを求め、パケット転送を行う。
【０２３６】
インタフェース１７１５ｎは、仮想ルータ１７１１ｎと仮想ルータ１７１３ｎとの間に存在し、仮想ルータ１７１１ｎから入力したパケットの宛先アドレスをキーにトンネル対応テーブルを参照し、トンネル情報を作成、付加することでパケットのカプセル化を行い、仮想ルータ１７１３ｎに出力する。また、仮想ルータ１７１３ｎから入力したカプセル化パケットを非カプセル化し、仮想ルータ１７１１ｎに出力する。
【０２３７】
以上のようにして、ＩＸ１７０１内部を外部と異なるＩＸ１７０１独自のアドレス体系でパケット転送を行う。
【０２３８】
図１８の１８０１はホスト１７０３ａからホスト１７０３ｎへ送信する場合のパケットを示したものである。パケットヘッダの宛先アドレスとしてホスト１７０３ｎのアドレスＧ１７０３ｎ、送信元アドレスとしてホスト１７０３ａのアドレスＧ１７０３ａが設定されている。アドレスＧ１７０３ａ、アドレスＧ１７０３ｎは共にグローバルアドレスである。
【０２３９】
図１９の１９０１は、インタフェース１７１５bにおいて、パケット１８０１をＩＳＰ１７０２ａ内のネットワークに転送するため、トンネル情報を付加しカプセル化したパケットである。
【０２４０】
図２０の２００１は、インタフェース１７１７ａでパケット１８０１に付加されるトンネル情報の一例である。宛先アドレスとして仮想ルータ１７１３ｎに収容されるいずれかのインタフェースに付加されたアドレスが付加される。送信元アドレスとして仮想ルータ１７１６ａに収容されるいずれかのインタフェースに付加されたアドレスが付加される。また、このトンネル情報が付加されたパケットがカプセル化パケットであることを示すプロトコルＩＤも設定する。
【０２４１】
この例では宛先アドレスとして仮想ルータ１７１３ｎのインタフェースに付加されたアドレスp１７１３ｎ、送信元アドレスとして仮想ルータ１７１６ａのインタフェースに付加されたアドレスp１７１４ａが設定されている。
【０２４２】
図２１の２１０１は、パケット１８０１をトンネル情報２００１でカプセル化したパケットを示している。
【０２４３】
ここで図２２のフローチャートを用いて、この実施形態におけるホスト１７０３ａからホスト１７０３ｎへのパケット転送について、エッジルータ１７１０ａの動作例を説明する。
【０２４４】
本実施形態においては、第１の実施形態や第２の実施形態と同様に、ホスト１７０３ａから転送されたパケット１８０１はＩＳＰ１７０２ａのエッジルータ１７１０bのインタフェース１７１５bにおいて、ＩＳＰ１７０２ａの内部のアドレス体系にカプセル化されたパケット１９０１として、エッジルータ１７１０ａの仮想ルータ１７１３ａまで転送される。
【０２４５】
仮想ルータ１７１３ａでは、受信したパケット１９０１のプロトコルＩＤから、これがカプセル化されたパケットであるかどうかを調査する。（Ｓ３０１）。
【０２４６】
カプセル化されたパケットである場合、インタフェース９１５bへ出力する。
【０２４７】
カプセル化されたパケットでない場合は、ＩＳＰ１７０２ａ内のネットワークで閉じた通信で仮想ルータ１７１３ａの上位層、つまりＴＣＰやＵＤＰなどで処理されるパケットであるため、仮想ルータ１７１３ａ内の適切な上位層に処理を委ねる(Ｓ３０２)。
【０２４８】
インタフェース１７１５ａでは、パケット１９０１のトンネル情報部分を取り除き、パケット１８０１の状態に戻し、仮想ルータ１７１１ａへ出力する(Ｓ３０３)。
【０２４９】
仮想ルータ１７１１ａでは、受信したパケット１８０１の宛先アドレスから、自分宛てのパケットであるかどうかを調査する。（Ｓ３０４）。
【０２５０】
自分宛てのパケットである場合は、グローバルアドレス空間での通信で、仮想ルータ１７１１ａの上位層、つまりＴＣＰやＵＤＰなどで処理されるパケットであるため、仮想ルータ１７１３ａ内の適切な上位層に処理を委ねる(Ｓ３０５)。
【０２５１】
自分宛てのパケットでない場合は、仮想ルータ１７１１ａはパケット１８０１の宛先アドレスをキーに自身が有するルーティングテーブルを検索し、次の転送先ルータのアドレスと出力インタフェースを調査する（Ｓ３０６）。
【０２５２】
この場合、次の転送先ルータのアドレスは仮想ルータ１７１１ｎのアドレスＧ１７１１ｎで出力インタフェースは１７１７ａとなり（Ｓ３０７）、仮想ルータ１７１１ａはインタフェース１７１７ａにパケット１８０１を出力する。
【０２５３】
出力インタフェースが異なる場合は、そのインタフェースからパケット１８０１を転送する（Ｓ３０８）。
【０２５４】
インタフェース１７１７ａでは仮想ルータ１７１１ａから入力したパケット１８０１の次転送先ルータのアドレスＧ１７１１ｎをもとに自身が有するトンネル対応テーブルを検索する。検索の結果、カプセル化アドレスは仮想ルータ１７１３ｎのインタフェースに付加されたアドレスp１７１３ｎであることがわかり、この情報をもとにトンネル情報２００１を作成する。トンネル情報では、宛先アドレスをp１７１３b、送信元アドレスを仮想ルータ１７１６ａに収容されるいずれかのインタフェースのアドレスに設定する。またプロトコルＩＤにカプセル化されたパケットであることを示すＩＤを設定する。作成したトンネル情報でパケット１８０１をカプセル化して、パケット２１０１を作成し、仮想ルータ１７１６ａに出力する(Ｓ３０９)。
【０２５５】
つまり、インタフェース１７１７ａにおいて、パケット１８０１からＩＸ１７０１内で通用するアドレス体系のパケット２１０１が生成され、ＩＸ内をトンネル情報２００１に基づいて転送されることになるため、仮想ルータ１７１１ａの上流、つまりカスタマ１７０３やＩＳＰ１７０２ａ内のルータなどにはＩＸ１７０１内部のネットワーク構成を認識させないことが可能となる。
【０２５６】
仮想ルータ１７１６ａはパケット２１０１の宛先アドレスをキーに自身が有するルーティングテーブルを検索し、次の転送先ルータのアドレスと出力インタフェースを調査する。この場合、次の転送先ルータはコアルータ１７２０ａであり、パケット２１０１は転送される（Ｓ３１０）。
【０２５７】
以上のように、本実施形態ではＩＳＰの接続部のエッジルータに仮想ルータを３つ導入することにより、ＩＸにおけるネットワークでのグローバルアドレスの使用をなくすことが可能となり、第１の実施形態、第２の実施形態より更にグローバルアドレスの使用を節約することができる。
【０２５８】
（第４の実施形態）
第４の実施形態は、本発明のネットワークシステムにおいて、第１の実施形態で説明したＩＸの内部ネットワークにおいてＭｕｌｔｉ Ｐｒｏｔｏｃｏｌ Ｌａｂｅｌ Ｓｗｉｔｃｈｉｎｇ（ＭＰＬＳ）網を使用した場合である。
【０２５９】
第１の実施形態において、図１のトンネル１５０はＩＸ１０１外部から送信されたグローバルアドレス体系のパケットをＩＸ１０１内のアドレス体系のヘッダを付加したパケットにカプセル化することで実現していたが、この実施形態ではＩＸ１０１内部のネットワークをＭＰＬＳ網で構築し、ＬＳＰ(Ｌａｂｅｌ Ｓｗｉｔｃｈｅｄ Ｐａｔｈ)を設定することでトンネル１５０を実現する。
【０２６０】
インタフェース１１５ａにおいて、仮想ルータ１１１ａより出力された仮想ルータ１１１ｎへ転送するパケットについては、次の転送先となる仮想ルータ１１１ｎに対応するラベル情報を作成し、パケットの先頭にラベル情報を付加したカプセル化パケットを作成し、仮想ルータ１１３ａにパケットを出力する。一方、仮想ルータ１１３ａより転送されたカプセル化パケットはラベル情報の削除後、仮想ルータ１１１ａに出力する。
【０２６１】
また、仮想ルータ１１３ａにおいて、ＩＸ１０１内部のネットワークに特化した仮想ルータ１１３ｎまで転送するためのラベルで、パケットを二重にカプセル化し転送する方法もある。また、この場合、出口となる仮想ルータ１１３ｎの前のコアルータ１２０において、二重にカプセル化したラベルのうち、ＩＸ１０１内部のネットワークに特化したラベルを取り除いて、仮想ルータ１１３ｎに転送する方法と、仮想ルータ１１３ｎにおいて、二重にカプセル化したラベルのうち、ＩＸ１０１内部のネットワークに特化したラベルを取り除く方法とがある。
【０２６２】
ＩＸ１０１外部から送信されたグローバルアドレス体系のパケットにＭＰＬＳのラベルを付加し、ＩＸ１０１内部のネットワークをラベル転送することで、第１の実施形態と同様の効果を実現する。
【０２６３】
（第５の実施形態）
第５の実施形態は、本発明のネットワークシステムにおいて、第２の実施形態で説明したＩＳＰの内部ネットワークにおいてＭＰＬＳ網を使用した場合である。
【０２６４】
第２の実施形態において、図９のトンネル９５０はＩＳＰ９０１外部から送信されたグローバルアドレス体系のパケットにＩＳを９０１内のアドレス体系のヘッダを付加したパケットにカプセル化することで実現していたが、この実施形態ではＩＳＰ９０１内部のネットワークをＭＰＬＳ網で構築し、LＳＰを設定することでトンネル９５０を実現する。
【０２６５】
インタフェース９１５ａにおいて、仮想ルータ９１１ａより出力された仮想ルータ９１１ｎへ転送するパケットについては、次の転送先となる仮想ルータ９１１ｎに対応するラベル情報を作成し、パケットの先頭にラベル情報を付加したカプセル化パケットを作成し、仮想ルータ９１３ａにパケットを出力する。一方、仮想ルータ９１３ａより転送されたカプセル化パケットはラベル情報の削除後、仮想ルータ９１１ａに出力する。
【０２６６】
また、仮想ルータ９１３ａにおいて、ＩＳＰ９０１内部のネットワークに特化した仮想ルータ９１３ｎまで転送するためのラベルで、パケットを二重にカプセル化し転送する方法もある。また、この場合、出口となる仮想ルータ９１３ｎの前のコアルータ９２０において、二重にカプセル化したラベルのうち、ＩＳＰ９０１内部のネットワークに特化したラベルを取り除いて、仮想ルータ９１３ｎに転送する方法と、仮想ルータ９１３ｎにおいて、二重にカプセル化したラベルのうち、ＩＳＰ９０１内部のネットワークに特化したラベルを取り除く方法とがある。
【０２６７】
ＩＳＰ９０１外部から送信されたグローバルアドレス体系のパケットにＭＰＬＳのラベルを付加し、ＩＳＰ９０１内部のネットワークをラベル転送することで、第２の実施形態と同様の効果を実現する。
【０２６８】
（第６の実施形態）
第６の実施形態は、本発明のネットワークシステムにおいて、第３の実施形態で説明したＩＳＰ接続部においてＭＰＬＳ網を使用した場合である。
【０２６９】
第３の実施形態において、ＩＳＰ接続部１７０１はＩＳＰ１７０２ａやＩＳＰ１７０２ｎから送信されたグローバルアドレス体系のパケットをＩＳＰ接続部のアドレス体系のヘッダを付加したパケットにカプセル化することでトンネルを実現していたが、この実施形態ではＩＳＰ接続部１７０１内部のネットワークをＭＰＬＳ網で構築し、LＳＰを設定することでトンネルを実現する。
【０２７０】
インタフェース１７１７ａにおいて、仮想ルータ１７１１ａより出力された仮想ルータ１７１１ｎへ転送するパケットについては、次の転送先となる仮想ルータ１７１１ｎに対応するラベル情報を作成し、パケットの先頭にラベル情報を付加したカプセル化パケットを作成し、仮想ルータ１７１６ａにパケットを出力する。一方、仮想ルータ１７１６ａより転送されたカプセル化パケットはラベル情報の削除後、仮想ルータ１７１１ａに出力する。
【０２７１】
また、仮想ルータ１７１６ａにおいて、ＩＸ接続部１７０１内部のネットワークに特化した仮想ルータ１７１３ｎまで転送するためのラベルで、パケットを二重にカプセル化し転送する方法もある。また、この場合、出口となる仮想ルータ１７１３ｎの前のコアルータ１７２０ａにおいて、二重にカプセル化したラベルのうち、ＩＳＰ接続部１７０１内部のネットワークに特化したラベルを取り除いて、仮想ルータ１７１３ｎに転送する方法と、仮想ルータ１７１３ｎにおいて、二重にカプセル化したラベルのうち、ＩＳＰ接続部１７０１内部のネットワークに特化したラベルを取り除く方法とがある。
【０２７２】
ＩＳＰ接続部１７０１の外部から送信されたグローバルアドレス体系のパケットにＭＰＬＳのラベルを付加し、ＩＳＰ接続部１７０１の内部のネットワークをラベル転送することで、第３の実施形態と同様の効果を実現する。
【０２７３】
さらに、本発明に係るルータ装置の構成としては一又は複数のコンピュータ又はこれらコンピュータの一部の機能により構成することができる。
【０２７４】
また図８、図１６及び図２２のフローが実施される方法又はプログラムを、コンピュータ等により実行するソフトウエアとして構成とすることもできる。
【０２７５】
【発明の効果】
以上述べたように本発明によれば、ＩＳＰやＩＸが組織内に外部とは独立したＩＰアドレス空間のネットワークを導入することにより、境界ルータ装置での煩雑なルーティングプロトコルのフィルタを設定することなく、組織内で使用するグローバルアドレスの数を減らし、カスタマに提供するグローバルアドレスをできる限り確保すると共に、組織内のネットワーク構成や使用しているＩＰアドレスを外部に通知させないようにしセキュリティの向上を図り得るネットワークシステム及びノード装置を提供できるものである。
【図面の簡単な説明】
【図１】本発明の第１実施形態のネットワークシステムにおけるＩＸを実現するための一構成例を示す図。
【図２】同実施形態におけるルーティングテーブルを詳細に示す図。
【図３】同実施形態におけるルーティングテーブルを詳細に示す図。
【図４】同実施形態におけるトンネル対応テーブルを詳細に示す図。
【図５】同実施形態におけるパケット例を示す図。
【図６】同実施形態におけるトンネル情報の一例を示す図。
【図７】同実施形態におけるカプセル化したパケットを示す図。
【図８】同実施形態のパケットのルータ１４０への転送動作例を示すフローチャート。
【図９】本発明の第２実施形態のネットワークシステムにおけるＩＳＰを実現するための一構成例を示す図。
【図１０】同実施形態におけるルーティングテーブルを詳細に示す図。
【図１１】同実施形態におけるルーティングテーブルを詳細に示す図。
【図１２】同実施形態におけるトンネル対応テーブルを詳細に示す図。
【図１３】同実施形態におけるパケットを示す図。
【図１４】同実施形態におけるトンネル情報の一例を示す図。
【図１５】同実施形態におけるカプセル化したパケットを示す図。
【図１６】同実施形態のネットワークシステムにおける動作例を示すフローチャート。
【図１７】本発明の第３実施形態のネットワークシステムにおけるＩＳＰの接続を実現するための一構成例を示す図。
【図１８】同実施形態におけるパケットを示す図。
【図１９】同実施形態におけるカプセル化したパケットを示す図。
【図２０】同実施形態におけるトンネル情報の一例を示す図。
【図２１】同実施形態におけるカプセル化したパケットを示す図。
【図２２】同実施形態におけるエッジルータの動作例を示すフローチャート。
【符号の説明】
１０１…ネットワーク（ＩＸ）、１０２ａ，１０２ｎ…ネットワーク（ＩＳＰ）、１４０ａ，１４０ｎ…ルータ、１１０ａ，１１０ｎ…エッジルータ、１１１ａ，１１１ｎ…仮想ルータ、１１２ａ，１１２ｎ…インタフェース、１１３ａ，１１３ｎ…仮想ルータ、１１４ａ，１１４ｎ…インタフェース、１１５ａ，１１５ｎ…インタフェース、１２０…コアルータ、１２１ａ，１２１ｎ…インタフェース、１２２…ルーティングテーブル、１３０ａ，１３０ｎ…ルーティングテーブル、１３１ａ，１３１ｎ…ルーティングテーブル、１３２ａ，１３２ｎ…トンネル対応テーブル、１５０…トンネル、５０１…パケット、６０１…トンネル情報、７０１…カプセル化したパケット。
【図１】
0003689083.tif 000002
【図２】
0003689083.tif 000003
【図３】
0003689083.tif 000004
【図４】
0003689083.tif 000005
【図５】
0003689083.tif 000006
【図６】
0003689083.tif 000007
【図７】
0003689083.tif 000008
【図８】
0003689083.tif 000009
【図９】
0003689083.tif 000010
【図１０】
0003689083.tif 000011
【図１１】
0003689083.tif 000012
【図１２】
0003689083.tif 000013
【図１３】
0003689083.tif 000014
【図１４】
0003689083.tif 000015
【図１５】
0003689083.tif 000016
【図１６】
0003689083.tif 000017
【図１７】
0003689083.tif 000018
【図１８】
0003689083.tif 000019
【図１９】
0003689083.tif 000020
【図２０】
0003689083.tif 000021
【図２１】
0003689083.tif 000022
【図２２】
0003689083.tif 000023