(57)【特許請求の範囲】
【請求項１】
ＢＧＰ（Border Gateway Protocol）により他のルータから広告された経路情報を、記憶部に保持されている経路情報に反映し、前記経路情報を用いてネットワーク上を流れるデータの経路制御を行うルータであって、
自身のルータが広告元となって、前記経路情報を生成するとき、前記経路情報への反映を制御する識別情報を付加する識別情報付加部と、
他のルータから広告された前記経路情報に前記識別情報が付加されていた場合、前記記憶部に保持されている経路情報のうち、ＦＩＢ（Forwarding Information Base）には当該経路情報を反映しない経路表制御部と、
前記経路情報を、当該ルータの属するＡＳ（Autonomous System）以外のＡＳのルータへ広告するとき、前記経路情報に付加されている前記識別情報を削除する識別情報削除部と、
前記経路情報を他のルータへ広告する経路情報広告部と、
を備えることを特徴とするルータ。
【請求項２】
前記経路表制御部は、
受信した前記経路情報に前記識別情報が付加されていた場合、当該経路情報を、前記記憶部に保持されている経路情報であるＲＩＢ（Routing Information Base）に反映することを特徴とする請求項１に記載のルータ。
【請求項３】
ＢＧＰ（Border Gateway Protocol）により他のルータから広告された経路情報を、記憶部に保持されている経路情報に反映し、前記経路情報を用いてネットワーク上を流れるデータの経路制御を行うルータにおける経路制御方法であって、
前記ルータは、
自身のルータが広告元となって、前記経路情報を生成するとき、前記経路情報への反映を制御する識別情報を付加した後、他のルータへ前記経路情報を広告し、
他のルータから広告された前記経路情報に前記識別情報が付加されていた場合、前記記憶部に保持されている経路情報のうち、ＦＩＢ（Forwarding Information Base）には当該経路情報を反映せずに、前記他のルータへ前記経路情報を広告し、
前記経路情報を、当該ルータの属するＡＳ（Autonomous System）以外のＡＳのルータへ広告するとき、前記経路情報に付加されている前記識別情報を削除した後、前記当該ルータの属するＡＳ以外のＡＳへ、前記経路情報を広告する
ことを特徴とする経路制御方法。
【請求項４】
前記ルータは、
受信した前記経路情報に前記識別情報が付加されていた場合、当該経路情報を、前記記憶部に保持されている経路情報であるＲＩＢ（Routing Information Base）に反映することを特徴とする請求項３に記載の経路制御方法。
【請求項５】
請求項３または請求項４に記載の経路制御方法をコンピュータに実行させるための経路制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＢＧＰ（Border Gateway Protocol）を用いた経路制御を行うルータ、経路制御方法および経路制御プログラムに関する。
【背景技術】
【０００２】
ネットワークの経路情報を交換するためのプロトコルであるルーティングプロトコル（以下、プロトコルと記載）として、ＢＧＰ、ＯＳＰＦ（Open Shortest Path First）などがある。ＯＳＰＦは、単一の経路制御ポリシを共有するネットワークであるＡＳ（Autonomous System）内部におけるプロトコルであるのに対し、ＢＧＰは、ＡＳ内部では、ｉＢＧＰ（Internal BGP）として、ＡＳ間の通信では、ｅＢＧＰ（External BGP）として用いることができるため、ＡＳ間におけるルーティングプロトコルとしてしばしば用いられる（例えば、非特許文献１参照）。
【０００３】
ここで、図８から図１１を参照し、ＢＧＰを用いてＡＳ間における経路情報広告の手順を説明する。
図８は、従来におけるＢＧＰを用いた経路情報の広告方法を説明するための図であり、
図９は、図８の方法で経路情報が広告されたときの各ルータにおけるＦＩＢ（Forwarding Information Base）の例を示す図である。図８におけるネットワークシステムＺ’は、処理の対象となるルータが含まれているＡＳ（以下、ＡＳ  Ａ１’と記載する）と、このＡＳ  Ａ１’とは異なるＡＳであるＡＳ  Ａ２’，Ａ３’とを有している。ＡＳ  Ａ１’と、ＡＳ  Ａ２’，Ａ３’とは、ＷＡＮ（Wide Area Network）などによって接続されている。
【０００４】
ＡＳ  Ａ１’内では、経路表を用いてネットワーク上を流れるデータの経路制御を行う複数のルータＲｂ’，Ｒｓ’が互いに接続することによって、ネットワークを形成している。図８において、ルータＲｂ’は、ＢＧＰ／ＯＳＰＦスピーカであり、ＢＧＰおよびＯＳＰＦによるプロトコルで経路制御可能である。ルータＲｂ’であるルータＣＲ１’，ＣＲ２’，ＡＢ１’，ＡＢ２’は、ｉＢＧＰ接続によって、互いに接続されている。ルータＣＲ２’は、ルートリフレクタであり、隣接するＢＧＰスピーカから広告された経路情報を他の隣接するＢＧＰスピーカへ広告する機能を有する。さらに、ルータＢＲ１’，ＢＲ２’は、ルータＣＲ２’とｉＢＧＰ接続によって接続されているルータである。ここで、ルータＢＲ１’，ＢＲ２’は、ボーダルータであり、ＡＳ  Ａ２’，Ａ３’へ経路情報を広告したり、ＡＳ  Ａ２’，Ａ３’から受信したパケットをＡＳ  Ａ１’内へ転送したりする機能を有する。
【０００５】
ルータＲｓ’（ルータＡＳ１’，ＡＳ２’，Ｒ１’，Ｒ２’）は、ＯＳＰＦスピーカであり、ＯＳＰＦによるプロトコルで経路制御可能である。ルータＲ１’には、集約されたＩＰ（Internet Protocol）アドレスが「１０．０．０．０／２０」であるネットワークが接続されており、ルータＲ２’には、集約されたＩＰアドレスが「１０．０．１６．０／２０」であるネットワークが接続されている。
【０００６】
ここで、「１０．０．０．０／２０」のネットワークに含まれる「１０．０．０．０／２５」という集約されたＩＰアドレスを、経路情報として、ＡＳ  Ａ２’，Ａ３’に向けて広告する例について説明する。ＡＳ  Ａ１’に対する外部のＡＳであるＡＳ  Ａ２’，Ａ３’に向けて広告できるプロトコルは、ＢＧＰであるので、ＢＧＰ／ＯＳＰＦスピーカであるルータＣＲ１’が、「１０．０．０．０／２５」という経路情報を生成し、ルートリフレクタであるルータＣＲ２’へ広告する（矢印ｔ１）。すると、ルータＣＲ２’は、受信した経路情報「１０．０．０．０／２５」を隣接する各ルータＡＢ１’，ＡＢ２’，ＢＲ１’，ＢＲ２’へ広告する（矢印ｔ２）。ボーダルータであるルータＢＲ１’，ＢＲ２’は、受信した経路情報「１０．０．０．０／２５」を、さらにＡＳ  Ａ２’，Ａ３’へ広告する（矢印ｔ３）。
【０００７】
ここで、この時点でのルータＣＲ２’，ＣＲ１’，ＡＢ１’，ＢＲ２’におけるＦＩＢは、図９のようになる。図９に示すＦＩＢは、ルータＲｂ’に保持されている経路表のうちの１つであり、ＲＡＭ（Random Access Memory）などの記憶デバイスに記憶され、パケットの転送の際に用いられる。経路表は、受信したパケットの宛先アドレスに到達させるための、パケットを転送する次のルータＲｂ’，Ｒｓ’のアドレスが記述されている表である。ここで、宛先アドレスは、プレフィックスとして記述され、パケットを転送する次のルータＲｂ’，Ｒｓ’のアドレスは、ネクストホップとして記述される。また、経路表における経路情報とは、プロトコルの種別と、宛先アドレス（プレフィックス）と、次のルータＲｂ’，Ｒｓ’のアドレス（ネクストホップ）と、パケットが経由するＡＳの番号とを含む情報であるが、本明細書では、説明を簡単にするため、ＡＳの番号は記載しないこととする。なお、ＯＳＰＦスピーカであるルータＲｓ’にも、ＦＩＢが存在するが、ここでは説明を省略する。
【０００８】
図９において、（ａ）は、図８のルータＣＲ２’のＦＩＢであり、（ｂ）は、図８のルータＣＲ１’のＦＩＢであり、（ｃ）は、図８のルータＡＢ１’のＦＩＢであり、（ｄ）は、図８のルータＢＲ２’のＦＩＢである。ＦＩＢには、プロトコルの種別と、プレフィックスと、ネクストホップとを含む情報が記述されている。プレフィックスとは、ＩＰアドレスと、サブネットマスクとからなる集約されたＩＰアドレスであり、パケットが送信されるときの宛先ともなる。ネクストホップとは、パケットを宛先のネットワークへ送る際に、転送すべきルータＲｂ’またはルータＲｓ’のＩＰアドレスである。実際には、ネクストホップにルータＲｂ’またはルータＲｓ’のＩＰアドレスが記述されているが、本明細書では、説明を簡単にするためルータＲｂ’またはルータＲｓ’の名称を記述することとする。なお、図９において、プレフィックスの前に記述されている「（Ｂ）」や、「（Ｏ）」は、ルーティングプロトコルの種別であり、「（Ｂ）」は、ＢＧＰを示し、「（Ｏ）」は、ＯＳＰＦを示している。
【０００９】
また、ルータＣＲ２’のＦＩＢには、経路情報ｔ１１，ｔ１２、ルータＣＲ１’のＦＩＢには、経路情報ｔ１４，ｔ１５、ルータＡＢ１’のＦＩＢには、経路情報ｔ１７，ｔ１８、ルータＢＲ２’のＦＩＢには、経路情報ｔ２０，ｔ２１が予め登録されているものとする。そして、ルータＣＲ１’が、経路情報「１０．０．０．０／２５」を生成したことにより、図９（ｂ）の経路情報ｔ１６が、ルータＣＲ１’のＦＩＢに登録される。ここで、経路情報ｔ１６のネクストホップ「０．０．０．０」は、自分自身のルータがネクストホップであることを示す。なお、ＯＳＰＦによる経路情報ｔ１２，ｔ１５，ｔ１８，ｔ２１は、ルータＲ１’が経路情報「１０．０．０．０／２０」を生成し、各ルータが、生成された経路情報「１０．０．０．０／２０」を順次広告することによって、登録された経路情報である。
【００１０】
そして、ルータＣＲ１’が、生成した経路情報「１０．０．０．０／２５」を、ルータＣＲ２’に広告する（図８の矢印ｔ１）ことにより、ルータＣＲ２’には、図９（ａ）の経路情報ｔ１３が登録される。すなわち、ＢＧＰで広告された経路情報「１０．０．０．０／２５」のネクストホップは、ルータＣＲ１’である旨が図示しないＲＩＢ（Routing Information Base）に登録され、ルータＣＲ２’が、さらにこのＲＩＢを集約することによって、ＦＩＢに反映される。さらに、ルータＣＲ１’が、受信した経路情報「１０．０．０．０／２５」と、ネクストホップとして「ルータＣＲ１’」の情報とを隣接するＢＧＰスピーカ（ルータＡＢ１’，ＡＢ２’，ＢＲ１’，ＢＲ２’）へ広告する（図８の矢印ｔ２）。これにより、ルータＣＲ２’に隣接するＢＧＰスピーカの１つであるルータＡＢ１’には、図９（ｃ）の経路情報ｔ１９が登録される。すなわち、ＢＧＰで広告された経路情報「１０．０．０．０／２５」のネクストホップは、ルータＣＲ１’である旨が図示しないＲＩＢに登録され、さらにこのＲＩＢを集約することによって、ＦＩＢに反映される。そして、ルータＣＲ２’に隣接するボーダルータであるルータＢＲ２’にも、同様の手順で図９（ｄ）の経路情報ｔ２２が登録される。
【００１１】
図８の図へ説明を戻す。ここで、ＡＳ  Ａ３’から、「１０．０．０．０／２５」宛てのパケットが、ＡＳ  Ａ１’に送信されたとする（破線矢印ｔ４）。送信されたパケットは、まず、ボーダルータであるルータＢＲ２’に入力される。ルータＢＲ２’は、図９（ｄ）に示すＦＩＢの経路情報ｔ２２を参照する。しかしながら、経路情報ｔ２２のネクストホップとして登録されているルータＣＲ１’は、ルータＢＲ２’には直接接続されていない。そこで、ルータＢＲ２’は、ルータＢＲ２’自身が保持しているＦＩＢにおいて、予め登録されている経路情報ｔ２２以外の経路情報を再度参照し、次にパケットを転送すべきルータＲｂ’を探索する（リカーシブルックアップ）。リカーシブルックアップを行った結果、ルータＢＲ２’は、次にパケットを送信すべきルータＲｂ’として、ルータＣＲ２’を検出することができる。そして、ルータＢＲ２’は、パケットをルータＣＲ２’に転送する（破線矢印ｔ５）。ルータＣＲ２’は、図９（ａ）に示すＦＩＢの経路情報ｔ１３を参照する。経路情報ｔ１３には、「１０．０．０．０／２５」のネクストホップとして、ルータＣＲ１’が記述されており、かつ、ルータＣＲ１’は、ルータＣＲ２’と直接接続しているため、ルータＣＲ２’は、当該パケットを、ルータＣＲ１’へ転送する（図８の破線矢印ｔ６）。
【００１２】
パケットを受信したルータＣＲ１’は、図９（ｂ）に示すＦＩＢの経路情報ｔ１６を参照する。経路情報ｔ１６において、「１０．０．０．０／２５」のネクストホップは、「０．０．０．０」で自分自身となっているので、次にプレフィックス長が長い経路情報「１０．０．０．０／２０」を有している経路情報ｔ１５を参照する。経路情報ｔ１５において、「１０．０．０．０／２０」のネクストホップは、ルータＡＢ１’となっているので、ルータＣＲ１’は、受信したパケットをルータＡＢ１’へ転送する（図８の破線矢印ｔ７）。
【００１３】
次に、ルータＡＢ１’は、図９（ｃ）に示すＦＩＢの経路情報ｔ１９を参照する。経路情報ｔ１９には、「１０．０．０．０／２５」のネクストホップとして、ルータＣＲ１’が登録されているので、ルータＡＢ１’は、ルータＣＲ１’へ当該パケットを転送する（図８の破線矢印ｔ８）。ルータＣＲ１’では、前記したように当該パケットに対するネクストホップは、ルータＡＢ１’であるので、再度ルータＡＢ１’へパケットを転送する。以下、同様の処理によって、ＴＴＬ（Time to Live）が「０」となるまで、パケットは、ルータＣＲ１’とルータＡＢ１’との間を往復し（ループし）、パケットが「１０．０．０．０／２５」を有するネットワークに到達しない。
【００１４】
このようなループが生じる原因は、パケットの転送に際して、ＢＧＰに従って生成された経路情報を、ＡＳ  Ａ１’内でも用いたことにある。しかしながら、前記したように、ＢＧＰは、ＡＳ間の経路情報の広告に使用できるため、ＡＳ  Ａ２’，Ａ３’へ経路情報を広告するためには、ＢＧＰに従って経路情報を生成し、広告する必要がある。
【００１５】
このような問題に対し、従来は、図１０に示す方法を用いることでパケットのループの回避を行ってきた。図１０は、従来におけるＢＧＰを用いた経路情報の広告方法を説明するための図であり、図１１は、図１０の方法で経路情報が広告されたときの各ルータにおけるＦＩＢの例を示す図である。図１０のネットワークシステムＺ’’におけるルータＣＲ１’’は、生成した経路情報を直接ボーダルータであるルータＢＲ１’，ＢＲ２’へ広告する機能を有するルータＲｂ’’である。その他の要素は、図８と同様の機能を有するので、図８と同一の符号を付し、説明を省略する。ネットワークシステムＺ’’において、経路情報「１０．０．０．０／２５」を生成したルータＣＲ１’’は、ルータＣＲ２’へ生成した経路情報「１０．０．０．０／２５」を広告することなく、ボーダルータであるルータＢＲ１’，ＢＲ２’へ当該経路情報「１０．０．０．０／２５」を広告する（矢印ｓ１）。ルータＢＲ１’，ＢＲ２’は、広告された経路情報をＡＳ  Ａ２’，Ａ３’へ広告する（矢印ｓ２）。
【００１６】
このような手順によれば、経路情報「１０．０．０．０／２５」の広告（矢印ｓ１，ｓ２）後、図１１に示すようなＦＩＢができる。図１１において、（ａ）は、図１０のルータＣＲ２’のＦＩＢであり、（ｂ）は、図１０のルータＣＲ１’’のＦＩＢであり、（ｃ）は、図１０のルータＡＢ１’のＦＩＢであり、（ｄ）は、図１０のルータＢＲ２’のＦＩＢである。図１１において、図９と同様の要素に対しては、同一の符号を付し、説明を省略する。図１１（ａ）では、図９（ａ）におけるルータＣＲ２’の経路情報ｔ１３がＦＩＢに登録されておらず、図１１（ｃ）では、図９（ｃ）におけるルータＡＢ１’の経路情報ｔ１９がＦＩＢに登録されていない。これは、前記したように、経路情報「１０．０．０．０／２５」を生成したルータＣＲ１’’が、ルートリフレクタであるルータＣＲ２’を経由することなく、直接ボーダルータであるルータＢＲ１’，ＢＲ２’へ経路情報「１０．０．０．０／２５」を広告したためである。ちなみに、図１１（ｂ）に示すルータＣＲ１’’のＦＩＢは、図９（ｂ）に示すルータＣＲ１’のＦＩＢと同様の構成をしており、図１１（ｄ）に示すルータＢＲ２’のＦＩＢは、図９（ｄ）に示すルータＢＲ２’のＦＩＢと同様の構成をしている。
【００１７】
図１０の図へ説明を戻す。ここで、ＡＳ  Ａ３’から、「１０．０．０．０／２５」宛てのパケットが、ＡＳ  Ａ１’に送信されたとする（破線矢印ｓ３）。送信されたパケットは、まず、ボーダルータであるルータＢＲ２’に入力される。ルータＢＲ２’は、図９（ｄ）に示すＦＩＢの経路情報ｔ２２を参照する。しかしながら、経路情報ｔ２２のネクストホップとして登録されているルータＣＲ１’’は、ルータＢＲ２’には直接接続されていないため、ルータＢＲ２’は、図８において説明したリカーシブルックアップによって、次にパケットを転送すべきルータＲｂ’としてルータＣＲ２’を検出し、パケットをルータＣＲ２’に転送する（破線矢印ｓ４）。次に、ルータＣＲ２’は、図１１（ａ）に示すＦＩＢを参照する。すると、図１１（ａ）に示すＦＩＢには、「１０．０．０．０／２５」に相当する経路情報がないため、次にプレフィックス長が長い「１０．０．０．０／２０」を有する経路情報ｔ１２を参照する。経路情報ｔ１２には、「１０．０．０．０／２０」のネクストホップとしてルータＡＢ１’が登録されているので、ルータＣＲ２’は、ルータＡＢ１’に当該パケットを転送する（図１０の破線矢印ｓ５）。
【００１８】
そして、ルータＡＢ１’は、図１１（ｃ）に示すＦＩＢを参照する。やはり、図１１（ｃ）に示すＦＩＢには、「１０．０．０．０／２５」に相当する経路情報がないため、次にプレフィックス長が長い「１０．０．０．０／２０」を有する経路情報ｔ１８を参照する。経路情報ｔ１８には、「１０．０．０．０／２０」のネクストホップとして、ルータＡＳ１’が登録されているので、ルータＡＢ１’は、ルータＡＳ１’にパケットを転送する（図１０の破線矢印ｓ６）。以下、同様にして、パケットは、ルータＡＳ１’およびルータＲ１’を経由して、「１０．０．０．０／２５」を有するネットワークに到達する。
【００１９】
このようにすれば、パケットの転送に際して、ＢＧＰに従って生成された経路情報を、ＡＳ  Ａ１’内のパケット転送に用いることがないため、図８で説明したようなパケットのループが生じないこととなる。
【非特許文献１】「連載  ＩＰルーティング入門  第２回  ＢＧＰの仕組みと役割を理解する」，亀野英孝, アイティメディア株式会社,［online］ 2001年12月6日［2007年7月4日検索］，インターネット, ＜URL:http://www.atmarkit.co.jp/fnetwork/rensai/iprt02/iprt01.html＞
【発明の開示】
【発明が解決しようとする課題】
【００２０】
しかしながら、図１０および図１１に示す手順では、ＡＳ  Ａ１’内で生成した経路情報を、外部のＡＳであるＡＳ  Ａ２’，Ａ３’へ広告しようとする際、経路情報を生成するルータＣＲ１’’が、当該生成した経路情報を、ボーダルータであるルータＢＲ１’，ＢＲ２’へ直接広告する必要があり、設定や、接続先の管理に手間がかかるという問題がある。
【００２１】
そこで、本発明は、ネットワークの設定を変えることなく、パケットの転送の際に、ＢＧＰに従ってルータが生成した経路情報を、当該ルータの属するＡＳ内では利用せず、当該ＡＳ以外のＡＳには広告することを目的とする。
【課題を解決するための手段】
【００２２】
本発明は、前記課題を解決するために創案されたものであり、請求項１に記載のルータは、ＢＧＰにより他のルータから広告された経路情報を、記憶部に保持されている経路情報に反映し、前記経路情報を用いてネットワーク上を流れるデータの経路制御を行うルータであって、自身のルータが広告元となって、前記経路情報を生成するとき、前記経路情報への反映を制御する識別情報を付加する識別情報付加部と、他のルータから広告された前記経路情報に前記識別情報が付加されていた場合、前記記憶部に保持されている経路情報のうち、ＦＩＢには当該経路情報を反映しない経路表制御部と、前記経路情報を、当該ルータの属するＡＳ以外のＡＳのルータへ広告するとき、前記経路情報に付加されている前記識別情報を削除する識別情報削除部と、前記経路情報を他のルータへ広告する経路情報広告部と、を備えることを特徴とする。 
【００２３】
かかる発明によれば、識別情報が付加されている経路情報を受信したルータは、受信した経路情報をＦＩＢに反映しない。これにより、当該ルータが属すＡＳ以外のＡＳに、既存のルーティングプロトコルであるＢＧＰを用いて生成した経路情報を広告する際、当該経路情報を生成するルータと、ボーダルータとを直接接続する処理を行わなくても、当該ルータが属すＡＳ以外のＡＳから経路情報が示すネットワーク宛に届いたパケットを、当該ネットワークに到達させることが可能となる。
すなわち、ネットワークの設定を変えることなく、ルータが生成した経路情報を、当該ルータの属するＡＳ内では利用せず、当該ＡＳ以外のＡＳには広告することが可能となる。
【００２４】
また、請求項２に記載のルータは、請求項１に記載のルータの経路制御部において、前記経路表制御部は、受信した前記経路情報に前記識別情報が付加されていた場合、当該経路情報を、前記記憶部に保持されている経路情報であるＲＩＢに反映することを特徴とする。 
【００２５】
一般的に、ＲＩＢにおける経路情報が、削除されると、経路情報の交換によって、当該削除に対する更新情報が、隣接するルータへ広告される。すると、当該更新情報は、さらに隣接するルータにも広告され、最後には、当該ルータが属するＡＳ以外のＡＳである外部のＡＳにも、この更新情報が広告されてしまう。この結果、外部のＡＳからもＢＧＰに従って生成した経路情報が削除されてしまう。すなわち、外部のＡＳに向けて、広告した経路情報が、外部のＡＳからも削除されてしまうため、この外部のＡＳから、当該ルータが属するＡＳの該当する経路情報（ＩＰアドレス）に向けて送信したパケットが、到達しないこととなる。かかる発明によれば、このような状況が生じることを防止することができる。
【００２６】
そして、請求項３に記載の経路制御方法は、ＢＧＰにより他のルータから広告された経路情報を、記憶部に保持されている経路情報に反映し、前記経路情報を用いてネットワーク上を流れるデータの経路制御を行うルータにおける経路制御方法であって、自身のルータが広告元となって、前記経路情報を生成するとき、前記経路情報への反映を制御する識別情報を付加した後、他のルータへ前記経路情報を広告し、他のルータから広告された前記経路情報に前記識別情報が付加されていた場合、前記記憶部に保持されている経路情報のうち、ＦＩＢには当該経路情報を反映せずに、前記他のルータへ前記経路情報を広告し、前記経路情報を、当該ルータの属するＡＳ以外のＡＳのルータへ広告するとき、前記経路情報に付加されている前記識別情報を削除した後、前記当該ルータの属するＡＳ以外のＡＳへ、前記経路情報を広告することを特徴とする。 
【００２７】
かかる発明によれば、識別情報が付加されている経路情報を受信したルータは、受信した経路情報をＦＩＢに反映しない。これにより、当該ルータが属すＡＳ以外のＡＳに、既存のルーティングプロトコルであるＢＧＰを用いて生成した経路情報を広告する際、当該経路情報を生成するルータと、ボーダルータとを直接接続する処理を行わなくても、当該ルータが属すＡＳ以外のＡＳから経路情報が示すネットワーク宛に届いたパケットを、当該ネットワークに到達させることが可能となる。すなわち、ネットワークの設定を変えることなく、ルータが生成した経路情報を、当該ルータの属するＡＳ内では利用せず、当該ＡＳ以外のＡＳには広告することが可能となる。
【００２８】
また、請求項４に記載の経路制御方法は、請求項３に記載の経路制御方法であって、前記ルータは、受信した前記経路情報に前記識別情報が付加されていた場合、当該経路情報を、前記記憶部に保持されている経路情報であるＲＩＢに反映することを特徴とする。
【００２９】
一般的に、ＲＩＢにおける経路情報が、削除されると、経路情報の交換によって、当該削除に対する更新情報が、隣接するルータへ広告される。すると、当該更新情報は、さらに隣接するルータにも広告され、最後には、当該ルータが属するＡＳ以外のＡＳである外部のＡＳにも、この更新情報が広告されてしまう。この結果、外部のＡＳからもＢＧＰに従って生成した経路情報が削除されてしまう。すなわち、外部のＡＳに向けて、広告した経路情報が、外部のＡＳからも削除されてしまうため、この外部のＡＳから、当該ルータが属するＡＳの該当する経路情報（ＩＰアドレス）に向けて送信したパケットが、到達しないこととなる。かかる発明によれば、このような状況が生じることを防止することができる。
【００３０】
請求項５に記載の経路制御プログラムは、請求項３または請求項４に記載の経路制御方法をコンピュータに実行させることを特徴とする。
【００３１】
かかる発明によれば、経路制御方法をコンピュータに実行させることができる。
【発明の効果】
【００３２】
本発明によれば、ネットワークの設定を変えることなく、パケットの転送の際に、ＢＧＰに従ってルータが生成した経路情報を、当該ルータの属するＡＳ内では利用せず、当該ＡＳ以外のＡＳには、生成した経路情報を広告することが可能となる。
【発明を実施するための最良の形態】
【００３３】
以下、図面を参照して、本発明を実施するための最良の形態（以下、「実施形態」という）について詳細に説明する。
図１は、本実施形態に係るＢＧＰを用いたネットワークシステムの構成例を示す図である。なお、ネットワークシステムＺにおけるＡＳ  Ａ１およびＡＳ  Ａ２，Ａ３は、図８に示すＡＳ  Ａ１’およびＡＳ  Ａ２’，Ａ３’と同様であるため、説明を省略する。ルータＲｂ（ルータＣＲ１，ＣＲ２，ＡＢ１，ＡＢ２，ＢＲ１，ＢＲ２）は、ＢＧＰおよびＯＳＰＦによるプロトコルで経路制御可能なＢＧＰ／ＯＳＰＦスピーカであり、ルータＲｓ（ルータＡＳ１，ＡＳ２，Ｒ１，Ｒ２）は、ＯＳＰＦによるプロトコルで経路制御可能なＯＳＰＦスピーカである。ルータＣＲ１，ＣＲ２，ＡＢ１，ＡＢ２は、図８に示すルータＣＲ１’，ＣＲ２’，ＡＢ１’，ＡＢ２’の機能に、後記して説明する識別情報である「ＮＯ−ＩＮＪＥＣＴ」を経路情報に付加する機能や、この「ＮＯ−ＩＮＪＥＣＴ」が付加されている経路情報を受信したときには、当該経路情報を、ＲＩＢ（図３を参照して後記）には反映するが、ＦＩＢ３（図２参照）には反映しない機能などが追加されたルータＲｂである。また、ルータＢＲ１，ＢＲ２は、図８に示すルータＢＲ１’，ＢＲ２’のＢＧＰの機能に、「ＮＯ−ＩＮＪＥＣＴ」が付加されている経路情報を受信したときには、当該経路情報を、ＲＩＢには反映するが、ＦＩＢ３には反映しない機能や、「ＮＯ−ＩＮＪＥＣＴ」を削除した後、受信した経路情報をＡＳ  Ａ２，Ａ３へ広告する機能などが追加されたルータＲｂである。そして、ルータＡＳ１，ＡＳ２，Ｒ１，Ｒ２は、図８に示すルータＡＳ１’，ＡＳ２’，Ｒ１’，Ｒ２’と同様の機能を有するルータＲｓである。なお、情報の流れを示す各矢印ｕ１〜ｕ９については、図７を参照しつつ後記して説明する。
【００３４】
図２は、本実施形態に係るルータの構成例を示す機能ブロック図である。ルータＲｂは、処理部１と、図示しない記憶部に記憶されているＲＩＢ２と、ＦＩＢ３と、受信部４と、広告部５（経路情報広告部）と、入力インタフェース６と、出力インタフェース７とを有する。処理部１は、ＢＧＰおよびＯＳＰＦに従って経路制御を行い、様々な情報を処理する機能を有する。処理部１の詳細は、図３を参照して後記する。ＲＩＢ２は、ルータＲｂの備える経路表の１つであり、ＲＡＭなどの記憶デバイスで構成される図示しない記憶部に記憶され、プロトコルごとに経路情報を管理している。ＲＩＢ２は、ＢＧＰによる経路情報を格納しているＢＧＰ  ＲＩＢ２１、ＯＳＰＦによる経路情報を格納しているＯＳＰＦ  ＲＩＢ２２、ＲＩＰ（Routing Information Protocol）による制御を行うためのＲＩＰ  ＲＩＢ２３などを有している。ＦＩＢ３は、図８および図９において、前記しているため、説明を省略する。なお、ＦＩＢ３は、処理部１が、ＢＧＰ  ＲＩＢ２１、ＯＳＰＦ  ＲＩＢ２２、ＲＩＰ  ＲＩＢ２３などの各ＲＩＢ２を集約することによって生成される。
【００３５】
ここで、ＦＩＢ３は、パケットの転送の際に用いられる経路表である。そして、前記したように、ＦＩＢ３は、各ＲＩＢ２を集約することによって生成される。つまり、ＲＩＢ２は、ＦＩＢ３の生成元である。また、ＲＩＢ２は、後記するように経路制御によって生成される経路表であり、ＲＩＢ２の経路情報が削除などされると、経路情報の交換に従って、この削除に関する更新情報が隣接するルータＲｂへ広告され、当該更新情報を受信したルータＲｂのＲＩＢ２からも、当該経路情報が削除される。そして、各ルータＲｂへ、順次この更新情報が、広告されることにより、当該ルータＲｂが属するＡＳ  Ａ１以外のＡＳ  Ａ２，Ａ３にも、更新情報が広告され、ＡＳ  Ａ２，Ａ３からも当該経路情報が削除されてしまう。結果、ＡＳ  Ａ２，Ａ３から、広告された経路情報が示すＩＰアドレスに宛てたパケットが、宛先となっているネットワークへ到達しないこととなる。
【００３６】
受信部４および広告部５については、図３を参照して後記する。入力インタフェース６は、パケットが入力される機能を有する。出力インタフェース７では、入力インタフェース６に入力されたパケットの宛先アドレスを基に、ＦＩＢ３を参照して、ネクストホップへパケットを転送する機能を有する。
【００３７】
図３は、図２のルータにおいて、ＢＧＰに関する要素の構成例を示す機能ブロック図である。なお、図３は、ＢＧＰに関係する要素のみを記載しているが、ＯＳＰＦや、ＲＩＰに相当する要素も同様である。処理部１は、生成した経路情報に「ＮＯ−ＩＮＪＥＣＴ」を付加するＮＯ−ＩＮＪＥＣＴ付加部１１（識別情報付加部）と、受信した経路情報のＲＩＢ２や、ＦＩＢ３への反映を制御する経路表制御部１２と、ルータＲｂ（図２参照）がボーダルータである場合、経路情報から、ＮＯ−ＩＮＪＥＣＴを削除するＮＯ−ＩＮＪＥＣＴ削除部１３（識別情報削除部）とを有する。ここで、ＮＯ−ＩＮＪＥＣＴ（識別情報）とは、ＢＧＰで規定されたコミュニティ属性（ＢＧＰコミュニティ属性）である。後記して説明するように、このコミュニティ属性を付加された経路情報を受信したルータＲｂは、受信した経路情報を、ＲＩＢ２に含まれるＢＧＰ  ＲＩＢ２１に反映するが、ＦＩＢ３には反映しないという機能を有する。
【００３８】
ＲＩＢ２に含まれるＢＧＰ  ＲＩＢ２１は、Ａｄｊ−ＲＩＢ−ｉｎ２１１と、Ｌｏｃ−ＲＩＢ２１２と、Ａｄｊ−ＲＩＢ−ｏｕｔ２１３とを有する。Ａｄｊ−ＲＩＢ−ｉｎ２１１は、ＵＰＤＡＴＥメッセージなどによって、他のＢＧＰスピーカであるルータＲｂから広告された経路情報を、広告してきたルータＲｂ（ピア）ごとに保持している。Ｌｏｃ−ＲＩＢ２１２は、Ａｄｊ−ＲＩＢ−ｉｎ２１１に保持されている経路情報に対し、処理部１が、ポリシの適用を行った後、最適経路の決定処理が行われた結果、最適経路として選択された経路情報を格納している。ここで、ポリシとは、ルーティングにおいて経路を決定する際に用いられる規約である。Ａｄｊ−ＲＩＢ−ｏｕｔ２１３は、最適経路として選択された経路の経路情報、すなわち、隣接するルータＲｂ（ピア）に対して広告する経路情報を、広告するルータＲｂ（ピア）ごとに格納している。
【００３９】
受信部４は、隣接するルータＲｂ（ピア）から広告された経路情報を受信し、送信元のルータＲｂごとにＡｄｊ−ＲＩＢ−ｉｎ２１１へ格納する機能を有する。広告部５は、Ａｄｊ−ＲＩＢ−ｏｕｔ２１３から、経路情報を取り出し、各ルータＲｂへ広告する機能を有する。なお、処理部１、受信部４、広告部５および処理部１における各部１１〜１３は、ＲＯＭ（Read Only Memory）などに格納された経路制御プログラムが、ＲＡＭに展開され、ＣＰＵ（Central Processing Unit）によって実行されることによって具現化する。また、ＲＯＭに格納されたプログラムをＣＰＵが直接実行することによって具現化してもよい。
【００４０】
次に、図２及び図３を参照しつつ、図４から図６に従って、本実施形態に係るルータＲｂに係る動作を説明する。図４は、本実施形態に係るルータにおけるＮＯ−ＩＮＪＥＣＴ付加処理の流れを示すフローチャートである。まず、処理部１が、広告を行いたい経路情報を生成する（Ｓ１０１）。そして、ＮＯ−ＩＮＪＥＣＴ付加部１１が、生成した経路情報に、この経路情報のＢＧＰコミュニティ属性としてＮＯ−ＩＮＪＥＣＴを付加すると（Ｓ１０２）、経路表制御部１２は、生成した経路情報をＲＩＢ２（ＢＧＰ  ＲＩＢ２１のＬｏｃ−ＲＩＢ２１２）に反映させる（Ｓ１０３）。すなわち、経路表制御部１２が、生成した経路情報を、Ｌｏｃ−ＲＩＢ２１２に更新または追加することによって登録する。なお、このとき、経路表制御部１２は、生成した経路情報をＦＩＢ３に反映しない。
【００４１】
そして、処理部１が、ステップＳ１０３〜ステップＳ１０４の間の段階で適用させるべきポリシが存在する場合、ポリシの適用を行った後、生成した経路情報を広告先のルータＲｂ（ピア）ごとに、Ａｄｊ−ＲＩＢ−ｏｕｔ２１３に格納すると、広告部５が、格納したそれぞれの経路情報を、各ルータＲｂへ広告する（Ｓ１０４）。本実施形態では、ルートリフレクタであるルータＣＲ２が存在するので、ルータＣＲ２へ向けて経路情報を広告することになる。
【００４２】
図５は、本実施形態に係るルータにおける経路情報受信処理の流れを示すフローチャートである。受信部４が、隣接したルータＲｂ（ピア）から、広告された経路情報を受信すると（Ｓ２０１）、受信部４は、広告してきたルータＲｂごとに、経路情報をＡｄｊ−ＲＩＢ−ｉｎ２１１に格納する。次に、処理部１が、Ａｄｊ−ＲＩＢ−ｉｎ２１１からそれぞれの経路情報を取得すると、取得した経路情報にポリシの適用を行い、取得した経路情報から最適経路を決定する。最適経路の決定の手順については、非特許文献１に記載されているため、ここでは省略する。そして、経路表制御部１２が、最適経路として決定した経路情報にＮＯ−ＩＮＪＥＣＴが付加されているか否かを判定する（Ｓ２０２）。
【００４３】
ＮＯ−ＩＮＪＥＣＴが付加されていた場合（Ｓ２０２→Ｙｅｓ）、経路表制御部１２は、当該経路情報をＲＩＢ２（ＢＧＰ  ＲＩＢ２１のＬｏｃ−ＲＩＢ２１２）に反映させる（Ｓ２０３）。すなわち、経路表制御部１２が、最適経路として決定した経路情報を、Ｌｏｃ−ＲＩＢ２１２に更新または追加することによって登録する。このとき、経路表制御部１２は、当該経路情報をＦＩＢ３に反映させない。
【００４４】
そして、処理部１は、ステップＳ２０３〜ステップＳ２０６の間の段階で適用させるべきポリシが存在する場合、ポリシの適用を行った後、最適経路として決定した経路情報を広告先のルータＲｂ（ピア）ごとに、Ａｄｊ−ＲＩＢ−ｏｕｔ２１３に格納する。そして、広告部５は、格納したそれぞれの経路情報を広告先のルータＲｂへ広告する（Ｓ２０６）。
【００４５】
ステップＳ２０２において、ＮＯ−ＩＮＪＥＣＴが付加されていない場合（Ｓ２０２→Ｎｏ）、経路表制御部１２は、最適経路として決定した経路情報をＲＩＢ２（ＢＧＰ  ＲＩＢ２１のＬｏｃ−ＲＩＢ２１２）に反映させ（Ｓ２０４）、さらに、当該経路情報をＦＩＢ３に反映させる（Ｓ２０５）。すなわち、経路表制御部１２は、最適経路として決定した経路情報を、Ｌｏｃ−ＲＩＢ２１２およびＦＩＢ３に更新または追加することによって登録する。そして、処理部１および広告部５は、ステップＳ２０５〜ステップＳ２０６の間の段階で適用させるべきポリシが存在する場合、ポリシの適用を行った後、ステップＳ２０６の処理を行う。
【００４６】
図６は、本実施形態に係るボーダルータにおける経路情報受信処理の流れを示すフローチャートである。受信部４が、隣接したルータＲｂ（ピア）から広告された経路情報を受信すると（Ｓ３０１）、処理部１は、広告してきたルータＲｂ（ピア）ごとに、経路情報をＡｄｊ−ＲＩＢ−ｉｎ２１１に格納する。次に、処理部１が、Ａｄｊ−ＲＩＢ−ｉｎ２１１からそれぞれの経路情報を取得すると、取得した経路情報にポリシの適用を行い、取得した経路情報から最適経路を決定する。最適経路の決定の手順については、非特許文献１に記載されているため、ここでは省略する。次に、経路表制御部１２が、最適経路として決定した経路情報にＮＯ−ＩＮＪＥＣＴが付加されているか否かを判定する（Ｓ３０２）。
【００４７】
ＮＯ−ＩＮＪＥＣＴが付加されていた場合（Ｓ３０２→Ｙｅｓ）、経路表制御部１２は、当該経路情報をＲＩＢ２（ＢＧＰ  ＲＩＢ２１のＬｏｃ−ＲＩＢ２１２）に反映させる（Ｓ３０３）。すなわち、経路表制御部１２は、最適経路として決定した経路情報を、Ｌｏｃ−ＲＩＢ２１２に更新または追加することによって登録する。このとき、経路表制御部１２は、受信した経路情報をＦＩＢ３に反映させない。
【００４８】
そして、ＮＯ−ＩＮＪＥＣＴ削除部１３が、経路情報から、ＮＯ−ＩＮＪＥＣＴを削除する（Ｓ３０４）。そして、処理部１は、ステップＳ３０４〜ステップＳ３０７の間の段階で適用させるべきポリシが存在する場合、ポリシの適用を行った後、この経路情報を広告先のルータＲｂ（ピア）ごとに、Ａｄｊ−ＲＩＢ−ｏｕｔ２１３に格納する。そして、広告部５は、格納したそれぞれの経路情報を外部の他ＡＳであるＡＳ  Ａ２，Ａ３（図１参照）へ広告する（Ｓ３０７）。
【００４９】
ステップＳ３０２において、ＮＯ−ＩＮＪＥＣＴが付加されていない場合（Ｓ３０２→Ｎｏ）、経路表制御部１２は、最適経路として決定した経路情報をＲＩＢ２（ＢＧＰ  ＲＩＢ２１のＬｏｃ−ＲＩＢ２１２）に反映させ（Ｓ３０５）、さらに、当該経路情報をＦＩＢ３に反映させる（Ｓ３０６）。すなわち、経路表制御部１２は、最適経路として決定した経路情報を、Ｌｏｃ−ＲＩＢ２１２およびＦＩＢ３に更新または追加することによって登録する。そして、処理部１および広告部５は、ステップＳ３０６〜ステップＳ３０７の間の段階で適用させるべきポリシが存在する場合、ポリシの適用を行った後、ステップＳ３０７の処理を行う。
【００５０】
次に、図１〜図３を参照しつつ、図７に沿って各ルータＲｂにおける経路表の更新手順を説明する。図７は、本実施形態に係るネットワークシステムにおいて更新された各経路表の例を示す図である。なお、図７におけるルータの符号は、図１における符号である。図７において、（ａ）は、図１のルータＣＲ２のＲＩＢであり、（ｂ）は、図１のルータＣＲ２のＦＩＢであり、（ｃ）は、図１のルータＣＲ１のＲＩＢであり、（ｄ）は、図１のルータＣＲ１のＦＩＢであり、（ｅ）は、図１のルータＡＢ１のＲＩＢであり、（ｆ）は、図１のルータＡＢ１のＦＩＢであり、（ｇ）は、図１のルータＢＲ２のＲＩＢであり、（ｈ）は、図１のルータＢＲ２のＦＩＢである。図７において、各経路表は、プロトコルの種別、プレフィックスおよびネクストホップの順に記述されている。プロトコルの種別において、（Ｂ）は、ＢＧＰを示し、（Ｏ）は、ＯＳＰＦを示している。また、ネクストホップにおいて、「０．０．０．０」は、自分自身のルータを示している。さらに、図７（ａ），（ｃ），（ｅ），（ｇ）に示すＲＩＢ２は、図７（ｂ），（ｄ），（ｆ），（ｈ）に示すＦＩＢ３と対比するため、ＢＧＰの経路情報、およびＯＳＰＦの経路情報をまとめて記載してあるが、実際には図２に示すように、プロトコルごとに管理されている。
【００５１】
以下、図１を参照しつつ、図７に沿って各経路表の更新手順を説明する。まず、各ルータＣＲ２，ＣＲ１，ＡＢ１，ＢＲ２において、経路情報ｕ１１，ｕ１２，ｔ１１，ｔ１２，ｕ１４，ｕ１５，ｔ１４，ｔ１５，ｕ１７，ｕ１８，ｔ１７，ｔ１８，ｕ２０，ｕ２１，ｔ２０，ｔ２１が、各ルータＲｂのＲＩＢ２およびＦＩＢ３に予め登録されているものとする。なお、各ルータのＲＩＢ２およびＦＩＢ３における経路情報ｕ１２，ｕ１５，ｕ１８，ｕ２１，ｔ１２，ｔ１５，ｔ１８，ｔ２１は、ＯＳＰＦスピーカであるルータＲ１が、経路情報「１０．０．０．０／２０」を生成し、各ルータＲｂ，Ｒｓが、この経路情報「１０．０．０．０／２０」を順次広告することによって登録された経路情報である。そして、ルータＣＲ１が、集約されたＩＰアドレス「１０．０．０．０／２０」を有するネットワークに含まれる、集約されたＩＰアドレス「１０．０．０．０／２５」を有するネットワークの経路情報をＢＧＰに従って生成する例について説明する。このとき、ルータＣＲ１は、生成した経路情報に対し、図４に示す処理に従って「ＮＯ−ＩＮＪＥＣＴ」を付加すると、生成した経路情報を自分自身のＲＩＢ２に反映させる（図７（ｃ）の経路情報ｕ１６）が、ＦＩＢ３には反映させない。そして、ルータＣＲ１は、生成した経路情報に「ＮＯ−ＩＮＪＥＣＴ」を付加させた経路情報（図１の「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」）をルータＣＲ２に向けて広告する（図１の太矢印ｕ１）。
【００５２】
経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」を受信したルータＣＲ２（ルートリフレクタ）は、図５の処理に従って、経路情報「１０．０．０．０／２５」を自分自身のＲＩＢ２に反映させる（図７（ａ）の経路情報ｕ１３）が、ＦＩＢ３には反映させない。すなわち、ＢＧＰで広告された経路情報「１０．０．０．０／２５」のネクストホップは、ルータＣＲ１である旨がＲＩＢ２に登録されるが、ＦＩＢ３には登録されない。そして、経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」と、図示しない当該経路情報のネクストホップがルータＣＲ１である旨の情報とを隣接するＢＧＰ／ＯＳＰＦスピーカであるルータＡＢ１，ＡＢ２，ＢＲ１，ＢＲ２へ広告する（図１の太矢印ｕ２）。
【００５３】
次に、ルータＡＢ１に注目して、ルータＣＲ２から経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」を受信したルータＲｂの動作について説明する。経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」を受信したルータＡＢ１は、図５の処理に従って、受信した経路情報を自分自身のＲＩＢ２に反映させる（図７（ｅ）の経路情報ｕ１９）が、ＦＩＢ３には反映しない。すなわち、ＢＧＰで広告された経路情報「１０．０．０．０／２５」のネクストホップは、ルータＣＲ１である旨がＲＩＢ２に登録されるが、ＦＩＢ３には登録されない。
【００５４】
また、ボーダルータであるルータＢＲ２は、経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」を受信すると、図６に示した処理に従って、経路情報「１０．０．０．０／２５」をＲＩＢ２に反映し（図７（ｇ）の経路情報ｕ２２）、ＦＩＢ３には反映しない処理を行った後、経路情報「１０．０．０．０／２５＋『ＮＯ−ＩＮＪＥＣＴ』」から「ＮＯ−ＩＮＪＥＣＴ」を削除し、ＮＯ−ＩＮＪＥＣＴを削除された経路情報「１０．０．０．０／２５」をＡＳ  Ａ３へ広告する（図１の矢印ｕ３）。なお、ルータＢＲ１も同様の処理を行って、経路情報「１０．０．０．０／２５」をＡＳ  Ａ２へ広告する（図１の矢印ｕ３）。
【００５５】
次に、ＡＳ  Ａ３からＡＳ  Ａ１に向けて、「１０．０．０．０／２５」宛てのパケットが送信された場合の各ルータＲｂの処理を、図１および図７を参照して説明する。まず、ＡＳ  ＡＳ３から送信された「１０．０．０．０／２５」宛てのパケット（以下、パケットと記載する）は、ボーダルータであるルータＢＲ２に入力される（図１の破線矢印ｕ５）。ルータＢＲ２は、自身が保持しているＦＩＢ３（図７（ｈ））を参照する。図７（ｈ）に示すように、ルータＢＲ２が保持しているＦＩＢ３には、ＮＯ−ＩＮＪＥＣＴの機能により「１０．０．０．０／２５」に関する情報がない。従って、ルータＢＲ２は、次にプレフィックス長が長い経路情報である「１０．０．０．０／２０」（図７の経路情報ｔ２１）を参照する。経路情報ｔ２１において、「１０．０．０．０／２０」のネクストホップは、ルータＣＲ２となっているため、ルータＢＲ２は、ルータＣＲ２へパケットを転送する（図１の破線矢印ｕ６）。
【００５６】
パケットを受信したルータＣＲ２は、自身が保持しているＦＩＢ３（図７（ｂ））を参照する。図７（ｂ）に示すように、ルータＣＲ２が保持しているＦＩＢ３には、ＮＯ−ＩＮＪＥＣＴの機能により「１０．０．０．０／２５」に関する情報がない。従って、ルータＣＲ２は、次にプレフィックス長が長い経路情報である「１０．０．０．０／２０」（経路情報ｔ１２）を参照する。経路情報ｔ１２において、「１０．０．０．０／２０」のネクストホップは、ルータＡＢ１となっているので、ルータＣＲ２は、ルータＡＢ１へパケットを転送する（図１の破線矢印ｕ７）。
【００５７】
パケットを受信したルータＡＢ１は、自身が保持しているＦＩＢ３（図７（ｆ））を参照する。図７（ｆ）に示すように、ルータＡＢ１が保持しているＦＩＢ３には、ＮＯ−ＩＮＪＥＣＴの機能により「１０．０．０．０／２５」に関する情報がない。従って、ルータＡＢ１は、次に長い経路情報である「１０．０．０．０／２０」（経路情報ｔ１８）を参照する。経路情報ｔ１８において、「１０．０．０．０／２０」のネクストホップは、ルータＡＳ１となっているので、ルータＡＢ１は、ルータＡＳ１へパケットを転送する（図１の破線矢印ｕ８）。
【００５８】
以下、ＯＳＰＦスピーカであるルータＡＳ１は、受信したパケットをルータＲ１へ転送し（図１の破線矢印ｕ９）、ルータＲ１は、「１０．０．０．０／２０」に含まれる「１０．０．０／２５」を有するネットワークへパケットを転送する。
【００５９】
このように、ＮＯ−ＩＮＪＥＣＴを付加した経路情報を受信したルータＲｂは、ＲＩＢ２に経路情報を反映するが、ＦＩＢ３には、反映しないという規定を定める。これにより、経路情報を生成したルータＣＲ１を、ボーダルータであるルータＢＲ１，ＢＲ２に直接接続する処理を行わなくても、外部のＡＳであるＡＳ  Ａ２，Ａ３へＢＧＰによる経路情報を広告できると共に、ＡＳ  Ａ２，Ａ３から当該経路情報宛てに送信されたパケットを経路情報が示すネットワークまで到達させることが可能となる。すなわち、ＢＧＰに従って生成された経路情報を、ＡＳ  Ａ１内で利用しないため、図９で説明したような特殊な経路情報の広告を行わなくても、図８で説明したようなパケットのループを回避することができる。また、ＮＯ−ＩＮＪＥＣＴは、ＢＧＰコミュニティ属性によって規定されるため、既存のＢＧＰによる経路情報を用いることができる。
【００６０】
さらに、ＮＯ−ＩＮＪＥＣＴの規定を、ＦＩＢ３には反映しないが、ＲＩＢ２には、反映することによって、経路情報が、ＡＳ  Ａ１から削除されることを防ぐことができる。つまり、ＲＩＢ２の経路情報が削除されることによって、削除の更新情報が各ルータＲｂを経由し、ＡＳ  Ａ２，Ａ３からも経路情報が削除されてしまうことを防ぐことができる。
【００６１】
以上において説明した実施形態は、その趣旨を逸脱しない範囲で広く実施することができる。
【図面の簡単な説明】
【００６２】
【図１】本実施形態に係るＢＧＰを用いたネットワークシステムの構成例を示す図である。
【図２】本実施形態に係るルータの構成例を示す機能ブロック図である。
【図３】図２のルータにおいて、ＢＧＰに関する要素の構成例を示す機能ブロック図である。
【図４】本実施形態に係るルータにおけるＮＯ−ＩＮＪＥＣＴ付加処理の流れを示すフローチャートである。
【図５】本実施形態に係るルータにおける経路情報受信処理の流れを示すフローチャートである。
【図６】本実施形態に係るボーダルータにおける経路情報受信処理の流れを示すフローチャートである。
【図７】本実施形態に係るネットワークシステムにおいて更新された各経路表の例を示す図であり、（ａ）は、図１のルータＣＲ２のＲＩＢであり、（ｂ）は、図１のルータＣＲ２のＦＩＢであり、（ｃ）は、図１のルータＣＲ１のＲＩＢであり、（ｄ）は、図１のルータＣＲ１のＦＩＢであり、（ｅ）は、図１のルータＡＢ１のＲＩＢであり、（ｆ）は、図１のルータＡＢ１のＦＩＢであり、（ｇ）は、図１のルータＢＲ２のＲＩＢであり、（ｈ）は、図１のルータＢＲ２のＦＩＢである。
【図８】従来におけるＢＧＰを用いた経路情報の広告方法を説明するための図である（その１）。
【図９】図８の方法で経路情報が広告されたときの各ルータにおけるＦＩＢの例を示す図であり、（ａ）は、図８のルータＣＲ２’のＦＩＢであり、（ｂ）は、図８のルータＣＲ１’のＦＩＢであり、（ｃ）は、図８のルータＡＢ１’のＦＩＢであり、（ｄ）は、図８のルータＢＲ２’のＦＩＢである。
【図１０】従来におけるＢＧＰを用いた経路情報の広告方法を説明するための図である（その２）。
【図１１】図１０の方法で経路情報が広告されたときの各ルータにおけるＦＩＢの例を示す図であり、（ａ）は、図１０のルータＣＲ２’のＦＩＢであり、（ｂ）は、図１０のルータＣＲ１’’のＦＩＢであり、（ｃ）は、図１０のルータＡＢ１’のＦＩＢであり、（ｄ）は、図１０のルータＢＲ２’のＦＩＢである。
【符号の説明】
【００６３】
１      処理部
２      ＲＩＢ
３      ＦＩＢ
４      受信部
５      広告部（経路情報広告部）
６      入力インタフェース
７      出力インタフェース
Ｒ，ＣＲ１，ＣＲ２，ＢＲ１，ＢＲ２，ＡＢ１，ＡＢ２，ＡＳ１，ＡＳ２，Ｒ１，Ｒ２，Ｒ’，ＣＲ１’，ＣＲ２’，ＢＲ１’，ＢＲ２’，ＡＢ１’，ＡＢ２’，ＡＳ１’，ＡＳ２’，Ｒ１’，Ｒ２’，ＣＲ１’’  ルータ
１１    ＮＯ−ＩＮＪＥＣＴ付加部（識別情報付加部）
１２    経路表制御部
１３    ＮＯ−ＩＮＪＥＣＴ削除部（識別情報削除部）
２１    ＢＧＰ  ＲＩＢ
２２    ＯＳＰＦ  ＲＩＢ
２３    ＲＩＰ  ＲＩＢ
２１１  Ａｄｊ−ＲＩＢ−ｉｎ
２１２  Ｌｏｃ−ＲＩＢ
２１３  Ａｄｊ−ＲＩＢ−ｏｕｔ
Ｚ，Ｚ’，Ｚ’’  ネットワークシステム
Ａ１，Ａ１，Ａ３，Ａ１’，Ａ２’，Ａ３’  ＡＳ
【図１】
0004469387.tif 000002
【図２】
0004469387.tif 000003
【図３】
0004469387.tif 000004
【図４】
0004469387.tif 000005
【図５】
0004469387.tif 000006
【図６】
0004469387.tif 000007
【図７】
0004469387.tif 000008
【図８】
0004469387.tif 000009
【図９】
0004469387.tif 000010
【図１０】
0004469387.tif 000011
【図１１】
0004469387.tif 000012