(57)【要約】【課題】  ローカルネットワークに分断が発生したときに、ＩＰルーチング機能及びＩＰ中継機能を持たずに装置間での通信を継続させるネットワーク接続装置を得ること。【解決手段】  ローカルネットワークとバックボーンネットワークとの境界に位置する複数のルータ装置のいずれかと通信するレイヤ２のネットワーク接続装置であって、複数のルータ装置が互いの導通を確認する導通確認用パケットを監視し、導通確認用パケットを受信しない場合、ローカルネットワーク内で分断が発生したことを通知するパケット解析部と、パケット解析部よりローカルネットワーク内で分断が発生したことを通知されると、ローカルネットワーク内の通信可能なノードを探索するノード探索部と、ノード探索部により発見されたノードの経路情報を、通信するルータ装置に通知する経路情報通知部とを備えた。【選択図】          図１
2015164293.tif 000002
【特許請求の範囲】
【請求項１】
ローカルネットワークとバックボーンネットワークとの境界に位置する複数のルータ装置のいずれかと通信するレイヤ２のネットワーク接続装置であって、
複数の前記ルータ装置が互いの導通を確認する導通確認用パケットを監視し、前記導通確認用パケットを受信しない場合、前記ローカルネットワーク内で分断が発生したことを通知するパケット解析部と、
前記パケット解析部より前記ローカルネットワーク内で分断が発生したことを通知されると、前記ローカルネットワーク内の通信可能なノードを探索するノード探索部と、
前記ノード探索部により発見された前記ノードの経路情報を、通信するルータ装置に通知する経路情報通知部と、
を備えることを特徴とするネットワーク接続装置。
【請求項２】
前記ノード探索部により発見された前記ローカルネットワーク内の通信可能なノードの経路情報を保持する端末情報テーブルを備え、
前記経路情報通知部は、前記端末情報テーブルを参照し、前記ノードの経路情報を通信するルータ装置に通知することを特徴とする請求項１に記載のネットワーク接続装置。
【請求項３】
前記パケット解析部は、前記導通確認用パケットとしてＶＲＲＰパケットをスヌーピングし、ＶＲＲＰパケットを受信してから閾値以上の時間が経過した場合、前記ローカルネットワーク内で分断が発生したことを通知することを特徴とする請求項１又は２に記載のネットワーク接続装置。
【請求項４】
前記経路情報通知部は、ルータ装置において用いられる経路情報を伝達するルーチングプロトコルに対応した情報パケットにより、前記ローカルネットワーク内の通信可能なノードの経路情報を、通信するルータ装置に通知することを特徴とする請求項１から３のいずれかに記載のネットワーク接続装置。
【請求項５】
前記経路情報通知部は、前記情報パケットとしてＲＩＰに対応したパケットとすることを特徴とする請求項４に記載のネットワーク接続装置。
【請求項６】
前記経路情報通知部は、前記情報パケットをＲＩＰのリクエストパケットとし、ネットワークアドレスに前記ローカルネットワーク内の通信可能なノードのＩＰアドレスを設定し、サブネットマスクを３２ビットとし、ネクストホップに前記ノードのＩＰアドレスを設定することを特徴とする請求項５に記載のネットワーク接続装置。
【請求項７】
前記端末情報テーブルは、前記経路情報としてＩＰアドレスとＭＡＣアドレスとを対応付けて保持することを特徴とする請求項６に記載のネットワーク接続装置。
【請求項８】
宛先ＭＡＣアドレスが自装置で、宛先ＩＰアドレスが前記ローカルネットワーク内の通信可能なノードであるパケットを受信した場合、前記端末情報テーブルを参照し、前記ノードのＩＰアドレスに対応付けられたＭＡＣアドレスを宛先ＭＡＣアドレスに設定するアドレス書換部を備え、
前記経路情報通知部は、ＲＩＰのリクエストパケットのネットワークアドレスに前記ローカルネットワーク内の通信可能なノードのＩＰアドレスを設定し、サブネットマスクを３２ビットとし、ネクストホップに自装置に付与されたＩＰアドレスを設定することを特徴とする請求項５に記載のネットワーク接続装置。
【請求項９】
前記経路情報通知部は、前記情報パケットとしてＯＳＰＦに対応したパケットとすることを特徴とする請求項３に記載のネットワーク接続装置。
【請求項１０】
前記経路情報通知部は、通信するルータ装置にリモートログインし、前記経路情報をスタティックルートとして登録することを特徴とする請求項１から９のいずれかに記載のネットワーク接続装置。
【請求項１１】
前記経路情報通知部は、ＳＮＭＰ  Ｓｅｔ  Ｒｅｑｕｅｓｔパケットを用いて前記経路情報をスタティックルートとして通信するルータ装置に通知することを特徴とする請求項１から１０のいずれかに記載のネットワーク接続装置。
【請求項１２】
前記パケット解析部は、前記ノード探索部に前記ローカルネットワーク内で分断が発生したことを通知した後に前記導通確認用パケットを受信した場合、前記ローカルネットワーク内の分断が解消したことを前記経路情報通知部に通知し、
前記経路情報通知部は、前記ローカルネットワーク内で分断が発生したときに通知した前記経路情報を削除するように通信するルータに通知するとともに前記端末情報テーブルが保持する前記経路情報を削除することを特徴とする請求項１から１１のいずれかに記載のネットワーク接続装置。
【請求項１３】
マルチキャスト制御プロトコルの制御パケットをスヌーピングすることによりブロードキャストストームが発生したか否かを監視し、ブロードキャストストームが発生した場合、周回ループが形成された中継経路で中継されるマルチキャストパケットを破棄することを特徴とする請求項１から１２のいずれかに記載のネットワーク接続装置。
【請求項１４】
マルチキャスト制御プロトコルであるＰＩＭの制御パケットをスヌーピングし、前記ローカルネットワーク内で分断が発生した後にＰＩＭ  Ａｓｓｅｒｔパケット又はＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、通信するルータ装置から受信したマルチキャストパケットのうち、送信元ＩＰアドレスが前記ローカルネットワークに割り当てられたサブネットのいずれかに属するパケットと、通信するルータ装置が前記ローカルネットワークの代表ルータではない場合に受信するパケットとを破棄するマルチキャスト制御データ監視部を備えることを特徴とする請求項１から１３のいずれかに記載のネットワーク接続装置。
【請求項１５】
ローカルネットワークとバックボーンネットワークとの境界に位置する複数のルータ装置のいずれかと通信するレイヤ２のネットワーク接続方法であって、
複数の前記ルータ装置が互いの導通を確認する導通確認用パケットを監視し、前記導通確認用パケットを受信しない場合、前記ローカルネットワーク内で分断が発生したことを通知するパケット解析ステップと、
前記パケット解析ステップより前記ローカルネットワーク内で分断が発生したことを通知されると、前記ローカルネットワーク内の通信可能なノードを探索するノード探索ステップと、
前記ノード探索ステップにより発見された前記ノードの経路情報を、通信するルータ装置に通知する経路情報通知ステップと、
を有するネットワーク接続方法。
【請求項１６】
前記マルチキャスト制御データ監視部は、ＰＩＭ  Ｈｅｌｌｏパケットをスヌーピングすることによりサブネットごとの代表ルータの情報をあらかじめ保持し、前記パケット解析部より前記ローカルネットワーク内で分断が発生したことを通知された後にＰＩＭ  ＡｓｓｅｒｔパケットまたはＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、前記代表ルータの情報に基づいてパケットを破棄するか否かを決定することを特徴とする請求項１４に記載のネットワーク接続装置。
【請求項１７】
前記マルチキャスト制御データ監視部は、前記代表ルータの情報の有効期間を設定し、前記パケット解析部より前記ローカルネットワーク内で分断が発生したことを通知されると前記有効期間について時間のカウントを停止し、その後にＰＩＭ  ＡｓｓｅｒｔパケットまたはＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、前記時間のカウントを再開することを特徴とする請求項１６に記載のネットワーク接続装置。
【請求項１８】
前記ノード探索部は、
前記ローカルネットワーク内の通信可能なノードを探索するときに、優先的に探索するノードのアドレスを保持する事前探索アドレステーブルと、
前記パケット解析部より前記ローカルネットワーク内で分断が発生したことを通知された場合、前記アドレスを参照し、前記ノードを優先的に探索する分断時探索制御部と、
を備えることを特徴とする請求項１から１４、１６、１７のいずれか一項に記載のネットワーク接続装置。
【請求項１９】
前記事前探索アドレステーブルは、ユーザインタフェースを介して入力されたアドレス情報を登録することを特徴とする請求項１８に記載のネットワーク接続装置。
【請求項２０】
前記パケット解析部は、前記ノード探索部に前記ローカルネットワーク内で分断が発生したことを通知した後に前記導通確認用パケットを受信した場合、前記ローカルネットワーク内の分断が解消したことを前記ノード探索部に通知し、
前記ノード探索部は、
初期起動時および前記パケット解析部より前記ローカルネットワーク内で分断が解消したことを通知された場合、前記ローカルネットワーク内の通信可能なノードを探索し、発見したノードのアドレス情報を前記事前探索アドレステーブルに登録する分断前探索制御部を備えることを特徴とする請求項１８または１９に記載のネットワーク接続装置。
【請求項２１】
前記分断時探索制御部は、前記事前探索アドレステーブルが保持するノードのアドレス情報を参照し、前記ノードを優先的に探索した後、前記ローカルネットワーク内のアドレスであって前記事前探索アドレステーブルが保持していない前記ローカルネットワーク内のアドレスを探索し、通信可能なノードを発見した場合、前記ノードのアドレスを前記事前探索アドレステーブルに登録することを特徴とする請求項１８から２０のいずれか一項に記載のネットワーク接続装置。
【発明の詳細な説明】
【技術分野】
【０００１】
ルーチングプロトコルにより経路制御が行われるバックボーンネットワークとローカルネットワークとの間で冗長接続を行い、ローカルネットワークが分断された時にローカルネットワークに接続された装置の通信を救済するネットワーク接続装置に関する。
【背景技術】
【０００２】
広域ネットワークは、複数のローカルネットワークと、複数のローカルネットワークを相互に接続するバックボーンネットワークにより構成されている。ローカルネットワークには装置や各種機器が接続されている。ローカルネットワークとバックボーンネットワークはルータにより区切られている。バックボーンネットワークにおいてはＯＳＰＦ（Ｏｐｅｎ  Ｓｈｏｒｔｅｓｔ  Ｐａｔｈ  Ｆｉｒｓｔ）やＲＩＰ（Ｒｏｕｔｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）などといったルーチングプロトコルを用いた経路制御が行われている。あるローカルネットワークに接続された装置と他のローカルネットワークに接続された装置との間ではルータを経由した通信を行う。
【０００３】
しかしながら、ルータが故障した場合には当該ローカルネットワークから外部への通信経路が遮断され、当該ローカルネットワーク内に接続された装置は他のローカルネットワークに接続された装置と通信できない。この問題の解決策として、１つのローカルネットワーク内に複数のルータを配置し、バックボーンネットワークへの経路を冗長化する手法が一般的である。ローカルネットワーク内の一部のルータに障害が発生した場合でも、他の正常なルータを経由することで他のローカルネットワークとの接続を確保することができる。この手法の一例として、ＶＲＲＰ（Ｖｉｒｔｕａｌ  Ｒｏｕｔｅｒ  Ｒｅｄｕｎｄａｎｃｙ  Ｐｒｏｔｏｃｏｌ）がある。（下記非特許文献１参照）
【０００４】
ＶＲＲＰにおいては、同一のローカルネットワークに接続された複数のルータで仮想ルータを構築する。仮想ルータを構成する複数のルータでは１つ、または複数の仮想ＩＰアドレスと仮想ＭＡＣアドレスを共有する。複数の仮想ＩＰアドレスと仮想ＭＡＣアドレスを共有する場合には、ＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等を用いる。複数のルータの中から１台の現用ルータとその他の予備ルータが選定される。現用ルータは、ローカルネットワークの中と外の中継、及びＰＩＮＧ等を含む仮想ルータ宛の通信に対する対応を行う。現用ルータは定期的にＶＲＲＰパケットを送信することで自身が正常動作していることを全ての予備ルータに通知する。
【０００５】
現用ルータからのＶＲＲＰパケットが一定時間以上途絶えた場合、予備ルータのうちの１台が仮想ＩＰアドレスと仮想ＭＡＣアドレスを引き継ぎ、現用ルータとして動作する。複数の仮想ＩＰアドレス及び仮想ＭＡＣアドレスを１つのローカルネットワークで共有している場合、仮想ＩＰアドレス及び仮想ＭＡＣアドレス毎にそれぞれ異なるルータを現用ルータとしてもよいし、同一のルータとしてもよい。
【０００６】
一方で、ＶＲＲＰを利用して冗長化されたネットワークにおいては、障害などによりローカルネットワークの分断が発生した場合、バックボーンネットワークを経由した経路が物理的には存在しているにもかかわらず、相互の通信が出来なくなるという問題が発生していた。
【０００７】
例えば、ローカルネットワーク内の装置Ａと装置Ｂとの通信経路上で障害が発生した場合、装置Ａと装置Ｂはローカルネットワーク内では通信できなくなる。このとき、装置Ａ及び装置Ｂがそれぞれ別のルータを経由してバックボーンネットワークＣに接続していれば、装置Ａと装置ＢはバックボーンネットワークＣを経由して通信することが可能である。しかしながら、バックボーンネットワークを経由した経路を認識できずに、通信に失敗してしまうという問題があった。例えば、バックボーンネットワークＣにおいて適切な経路が設定されていない場合やＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）の解決ができない場合である。
【０００８】
この問題に対する解決策は、特許文献１及び特許文献２に開示されている。ローカルネットワークとバックボーンネットワークとを接続するルータは、同一のローカルネットワークに接続された他のルータとの間にバックボーンネットワーク上の管理用パスを設定するとともにローカルネットワーク上の導通状態を監視する。ローカルネットワーク内において分断が発生していることを検知すると、ルータはローカルネットワーク内の各装置との接続可否情報を取得する。ルータは接続可否情報をルーチングプロトコルによりバックボーンネットワークを構成する各装置へ通知し、管理用パスを用いて接続可否情報を同一のローカルネットワークに接続された他のルータと交換する。このようにして、ローカルネットワークに分断が発生した場合でもバックボーンを介して通信が可能となる。
【０００９】
また、特許文献３にも解決策が開示されている。障害が発生し、迂回経路を設定するときに、ローカルネットワークとバックボーンネットワークに接続された２つのルータは、ＩＰアドレスとＭＡＣアドレスの対応付け情報を交換する。この２つのルータは、対応付け情報を元にＭＡＣアドレス学習テーブルを書きかえることにより迂回経路を設定する。このようにして、ローカルネットワークに分断が発生した場合でも中継動作を正常に行うことが可能となる。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】”Virtual Router Redundancy Protocol”  RFC2338, Internet Engineering Task Force
【特許文献】
【００１１】
【特許文献１】特開２００２−２３２４６３号公報
【特許文献２】特開２００２−２３２４４８号公報
【特許文献３】特開２００８−１７２６３６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、従来技術を実現するには、バックボーンネットワークとローカルネットワークとの境界にＩＰルーチング機能及びＩＰ中継機能を持つ装置が必要である。レイヤ２スイッチは、ＩＰルーチング機能及びＩＰ中継機能を持たないため、ローカルネットワークに分断が発生したときにバックボーンネットワークを介して通信することはできなかった。
【００１３】
本発明は上記に鑑みてなされたもので、ローカルネットワークに分断が発生したときに、ＩＰルーチング機能及びＩＰ中継機能を持たずに装置間での通信を継続させるネットワーク接続装置を得ることを目的とする。
【課題を解決するための手段】
【００１４】
ローカルネットワークとバックボーンネットワークとの境界に位置する複数のルータ装置のいずれかと通信するレイヤ２のネットワーク接続装置であって、複数のルータ装置が互いの導通を確認する導通確認用パケットを監視し、導通確認用パケットを受信しない場合、ローカルネットワーク内で分断が発生したことを通知するパケット解析部と、パケット解析部よりローカルネットワーク内で分断が発生したことを通知されると、ローカルネットワーク内の通信可能なノードを探索するノード探索部と、ノード探索部により発見されたノードの経路情報を、通信するルータ装置に通知する経路情報通知部とを備えた。
【発明の効果】
【００１５】
本発明によれば、ローカルネットワークに分断が発生したときに装置間での通信を継続させることができる。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１に係るネットワーク接続装置の構成を示すブロック図。
【図２】実施の形態１に係るネットワーク接続装置を用いたネットワークシステムの一例を示す図。
【図３】実施の形態１に係るネットワーク接続装置の処理の流れを示すフローチャート。
【図４】実施の形態１に係る情報パケットの構成を示す図。
【図５】実施の形態１に係るネットワーク接続装置の処理の流れを示すフローチャート。
【図６】実施の形態２に係るネットワーク接続装置の構成を示すブロック図。
【図７】実施の形態２に係る情報パケットの構成を示す図。
【図８】実施の形態３に係るネットワーク接続装置の構成を示すブロック図。
【図９】実施の形態３に係るネットワーク接続装置を用いたネットワークシステムの一例を示す図。
【図１０】実施の形態３に係るネットワーク接続装置を用いたネットワークシステムの一例を示す図。
【図１１】実施の形態５に係るネットワーク接続装置の構成を示すブロック図。
【図１２】実施の形態５に係るノード探索部の構成を示すブロック図。
【発明を実施するための形態】
【００１７】
実施の形態１．
図面に基づいて実施の形態を説明する。
図１は、実施の形態１に係るネットワーク接続装置１００の構成を示すブロック図である。ネットワーク接続装置１００は、パケット解析部１１０、ノード探索部１２０、経路情報通知部１３０、端末情報テーブル１４０、及び物理ポート１５０〜１５１で構成される。
【００１８】
パケット解析部１１０は、物理ポート１５０〜１５１から受信した導通確認用パケットを解析し、ネットワークの分断が発生した場合、ノード探索部１２０に通知する。また、ネットワークの分断が解消した場合、パケット解析部１１０は経路情報通知部１３０に通知する。ノード探索部１２０は、物理ポート１５０を介して通信可能な装置を探索し、発見した装置の情報を端末情報テーブル１４０に登録する。経路情報通知部１３０は、ネットワークの分断が発生した場合、端末情報テーブル１４０を参照して、物理ポート１５１を介して経路情報を通知する。また、経路情報通知部１３０は、ネットワークの分断が解消した場合、端末情報テーブル１４０を削除するとともに、物理ポート１５１を介して経路情報を削除するように通知する。
【００１９】
端末情報テーブル１４０は、ノード探索部１２０が発見した通信可能な装置のＩＰアドレスを保持する。端末情報テーブル１４０は、ＩＰアドレス以外の情報を保持してもよい。物理ポート１５１はルータに直結するためのポートであり、物理ポート１５０はそれ以外のポートである。また、図示しないが、ネットワーク接続装置１００は、例えばＭＡＣアドレスの学習やスパ二ングツリーなど、レイヤ２スイッチの基本的な機能を実現するレイヤ２機能部を保持する。レイヤ２機能部は、導通確認用以外のパケットを物理ポート１５０〜１５１より受信し、処理を行う。レイヤ２機能部はハードウェア、ソフトウェアのいずれかで実現してもよいし、両者の組み合わせで実現してもよい。
【００２０】
図２は、実施の形態１に係るネットワーク接続装置１００を用いたネットワークシステムの一例を示す図である。ネットワーク接続装置１００ａ〜ｂは、図１のネットワーク接続装置１００である。ネットワーク接続装置１００ａ、１００ｂは、それぞれルータ２００ａ、２００ｂに接続している。ネットワーク接続装置１００ａには、装置３００ａが接続している。ネットワーク接続装置１００ｂには、装置３００ｂが接続している。ネットワーク接続装置１００ａとネットワーク接続装置１００ｂは、スイッチ４００を介して接続している。スイッチ４００にはさらに、監視カメラ５００が接続している。
【００２１】
ルータ２００ａ〜ｂは、バックボーンネットワーク６００とローカルネットワーク７００との境界に位置している。ローカルネットワーク７００には、ネットワーク接続装置１００ａ〜ｂ、装置３００ａ〜ｂ、スイッチ４００、及び監視カメラ５００が含まれる。バックボーンネットワーク６００は、ルータ２００ｃを介して、別のローカルネットワークの装置３００ｃに接続されている。図２では、ネットワーク接続装置１００ｂとスイッチ４００との間でネットワークの分断が発生したことを示している。なお、監視カメラ５００は装置３００に置き換えてもよい。
【００２２】
ルータ２００ａ及びルータ２００ｂは、ローカルネットワーク７００内の経路を通じて導通確認用パケットをやりとりすることにより、互いに導通可能か否かを定期的に監視する。正常に導通している場合、ルータ２００ａ及びルータ２００ｂは、ローカルネットワーク７００内でネットワークの分断は発生していないと判断する。ルータ２００ａ〜ｂのうち一方がアクティブ状態となり、他方がスタンバイ状態となる。
【００２３】
図３は、実施の形態１に係るネットワーク接続装置１００の処理の流れを示すフローチャートである。ネットワーク接続装置１００はステップＳ３１より処理を開始する。
パケット解析部１１０は、ルータ１００ａ〜ｂ間でやりとりされている導通確認用パケットを監視する（ステップＳ３１）。パケット解析部１１０は、導通確認用パケットを閾値以上の時間が経過しても受信しない場合（ステップＳ３２）、ローカルネットワーク７００内で分断が発生したと判断し、ノード探索部１２０に通知する（ステップＳ３３）。導通確認用パケットを定期的に受信している場合、パケット解析部１１０は監視を継続する。
【００２４】
ノード探索部１２０は、ローカルネットワーク７００内で通信可能な装置のＩＰアドレスを検索する（ステップＳ３４）。ノード探索部１２０は、発見した装置のＩＰアドレスを端末情報テーブル１４０に保存する（ステップＳ３５）。経路情報通知部１３０は、端末情報テーブル１４０を参照し、直結するルータに経路情報を流し込み（ステップＳ３６）、処理を終了する。各ステップの処理の詳細については、後述する。
【００２５】
次に、ルータ２００ａと２００ｂとの間の導通を監視する方法を説明する。図３のステップＳ３１の処理である。ＶＲＲＰを例として説明する。同等の機能が実現できれば他の方法で実現してもよい。
【００２６】
ＶＲＲＰにおいては、同一のグループに設定された２台以上のルータ間でＶＲＲＰ  Ａｄｖｅｒｔｉｓｅと呼ばれるパケットの交換を行い、１台のルータがアクティブ状態のルータとして選定される。他のルータはスタンバイ状態となる。アクティブ状態のルータのみが一定時間毎にＶＲＲＰ  Ａｄｖｅｒｔｉｓｅをスタンバイ状態のルータに送信する。スタンバイ状態のルータは、アクティブ状態のルータからのＶＲＲＰ  Ａｄｖｅｒｔｉｓｅが途切れると、ネットワークの分断もしくはアクティブ状態のルータに故障が発生したものと判断する。ＶＲＲＰ  Ａｄｖｅｒｔｉｓｅを定期的に送信するのはアクティブ状態のルータのみであるため、スタンバイ状態のルータのみが他のルータとの導通に異常が発生したか否かを検知できる。
【００２７】
ところで、ＶＲＲＰでは、例えばＶＬＡＮの機能を用いることにより、アクティブ状態のルータとスタンバイ状態のルータとが２つ以上の仮想ＩＰアドレスを共有することができる。また、仮想ＩＰアドレスによって、異なるルータをアクティブ状態のルータにすることができる。各ルータが少なくとも１つ以上の仮想ＩＰアドレスにおいてアクティブ状態のルータとなるように設定することにより、全てのルータについて異常が発生したか否かを検知することができる。
【００２８】
例えば、図２の構成では、ローカルネットワーク７００に２つ以上のＶＬＡＮ及び仮想ＩＰアドレスを設定する。そのうち１つ以上の仮想ＩＰアドレスではアクティブ状態のルータを２００ａに設定する。別の１つ以上の仮想ＩＰアドレスではアクティブ状態のルータを２００ｂに設定する。このように設定することにより、全てのルータについて異常が発生したか否かを検知することができる。
【００２９】
ネットワーク接続装置１００ａ〜ｂのパケット解析部１１０は、ルータ２００ａとルータ２００ｂとの間で交換されるＶＲＲＰのパケットをスヌーピングし、ローカルネットワーク７００に分断が発生したか否かを検出する。図３のステップＳ３２の処理である。具体的には、パケット解析部１１０は、物理ポート１５０〜１５１の両ポートから定期的にＶＲＲＰパケットが入力される場合、ルータ１００ａ〜ｂがいずれも正常に動作していると判断する。物理ポート１５０〜１５１のいずれかからのみＶＲＲＰパケットが入力される場合、ネットワーク接続装置１００は、ローカルネットワーク７００内のどこかで分断が発生したと判断する。
【００３０】
スタンバイ状態のルータが、最後にＶＲＲＰ  Ａｄｖｅｒｔｉｓｅを受信してからネットワークの分断が発生したと判断するまでの時間はＲＦＣ（Ｒｅｑｕｅｓｔ  Ｆｏｒ  Ｃｏｍｍｅｃｎｔ）に規定されている。ネットワーク接続装置１００は、最後にＶＲＲＰ  Ａｄｖｅｒｔｉｓｅを受信してから、ＲＦＣに規定された時間が経過した場合にローカルネットワーク７００に分断が発生したと判断すればよい。ただし、これに限ったものではなく、独自に設定した時間が経過した場合にローカルネットワーク７００に分断が発生したと判断するようにしてもよい。
【００３１】
ローカルネットワーク７００に分断が発生したと判断した場合、ルータ２００ａ〜ｂはともにアクティブ状態となる。しかし、ルータ２００ａ〜ｂからバックボーンネットワーク６００に通知されるローカルネットワーク７００に対する経路情報は、分断が発生しても変わらない。したがって、ルータ２００ａ〜ｂがともにアクティブ状態になったとしても、分断を回避するような経路に変更されるわけではない。
【００３２】
ローカルネットワーク７００内の装置がバックボーンネットワーク６００を介して外部の装置と通信している場合について、装置３００ｂと装置３００ｃとが通信している場合を例に挙げて説明する。ルータ２００ａがアクティブ状態の場合、装置３００ｂから送信されたデータは、ネットワーク接続装置１００ｂ、レイヤ２スイッチ４００、ネットワーク接続装置１００ａ、ルータ２００ａ及びルータ２００ｃを経由して装置３００ｃに到達する。
【００３３】
ここで、ネットワーク接続装置１００ｂとスイッチ４００との間で分断が発生したとする。ルータ２００ａ〜ｂは導通の異常を検知し、両方ともアクティブ状態になる。装置３００ｂから送信されたデータは、ネットワーク接続装置１００ｂ、ルータ２００ｂ及びルータ２００ｃを経由して装置３００ｃに到達する。このようにローカルネットワーク７００からバックボーンネットワーク６００を介して外部の装置と通信する場合、新たな経路で通信を復旧させることができる。
【００３４】
一方、装置３００ｃから装置３００ｂへの通信において、ルータ２００ａとルータ２００ｂのどちらを経由するかについては、ローカルネットワーク７００の内部から外部への通信経路と必ずしも一致しない。一般的にバックボーンネットワーク６００においてはルーチングプロトコルにより経路制御が行われる。ルータ２００ａ〜ｂはそれぞれに接続されたローカルネットワーク７００内の装置に対する経路情報をバックボーンネットワーク６００の各装置に広告する。その結果、装置３００ｃは、装置３００ｂまでのパスコストが低いほうの経路で通信する。ルータ２００ｃからルータ２００ａまでのパスコストが、ルータ２００ｃからルータ２００ｂまでのパスコストよりも小さい場合、ルータ２００ａを経由して通信が行われる。
【００３５】
ネットワーク接続装置１００ｂとスイッチ４００との間で分断が発生した場合でも、ルータ２００ａ〜ｂがバックボーンネットワーク６００に広告するローカルネットワーク７００に対する経路情報は、分断発生前と変わらない。例えば装置３００ｃから装置３００ｂへの通信について、分断が発生する前にルータ２００ａを経由していた場合、分断が発生した後もバックボーンネットワーク６００はルータ２００ａに対して転送を継続する。そのため、装置３００ｃは装置３００ｂへの通信に失敗する。装置３００ｃは、ルータ２００ｂを経由する経路に変更すれば通信できるにも関わらず、変更する仕組みがＶＲＲＰ  プロトコルには備わっていないために経路の変更が行われない。
【００３６】
そこで、本発明では、バックボーンネットワーク６００を経由するような経路に変更することにより、分断が発生しても通信が継続できるようにする。
以下に、具体的な手順について説明する。
【００３７】
ネットワーク接続装置１００のパケット解析部１１０は、分断を検知すると、その情報をノード探索部１２０に通知する。図３のステップＳ３３の処理である。
ノード探索部１２０は物理ポート１５０から通信可能な装置を探索する。図３のステップＳ３４の処理である。
【００３８】
通信可能な装置を探索する方法としては、例えば、ノード探索部１２０が物理ポート１５０を介してローカルネットワーク７００の各ＩＰアドレスに対してＡＲＰ  Ｒｅｑｕｅｓｔを送信する方法がある。通信可能な装置があれば、ノード探索部１２０は当該装置から応答パケットを受信する。なお、例示した方法以外の方法を用いてもよい。
【００３９】
通信可能な装置を探索する順序については、ローカルネットワークに割り当てられたサブネットに属する全ＩＰアドレスに対して順に実行する方法が最も単純な方法である。また、ノード探索部１２０は、分断が発生する前にネットワークを流れるパケットの全部又は一部を例えばスヌーピングにより監視し、通信している装置を把握するようにしてもよい。ノード探索部１２０は、把握していた情報に基づいて、分断が発生する前に通信していたことが明確な装置を優先的に探索する。これにより、ノード探索部１２０は、全ＩＰアドレスを順に探索する場合より早く通信可能な装置を発見することができる。
【００４０】
ノード探索部１２０は、発見した装置の情報を端末情報テーブル１４０に保存する。図３のステップＳ３５の処理である。
ノード探索部１２０は、発見した装置のＩＰアドレスを端末情報テーブル１４０に保存する。ノード探索部１２０は、ＩＰアドレス以外の情報についても必要に応じて保存してもよい。
【００４１】
経路情報通知部１３０は、端末情報テーブル１４０に新たな情報が保存された場合、物理ポート１５１から直結されたルータ２００ａ〜ｂに経路情報を流し込む。端末情報テーブル１４０の情報が更新又は削除された場合も、経路情報通知部１３０は物理ポート１５１から直結されたルータ２００ａ〜ｂに経路情報を流し込む。図３のステップＳ３６の処理である。本実施の形態において、レイヤ２の装置であるネットワーク接続装置１００ａ〜ｂからレイヤ３の装置であるルータ２００ａ〜ｂに経路情報を通知する場合、流し込みという語句を用いることとする。経路情報を流し込む方法として、第１〜４の方法を以下に説明する。
【００４２】
経路情報を流し込む第１の方法は、ＲＩＰ（Ｒｏｕｔｉｎｇ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）のパケットフォーマットを模擬した情報パケットを用いる方法である。
【００４３】
図４は、実施の形態１に係る情報パケット４１の構成を示す図である。処理コードは、ルータ２００ａ〜ｂが経路情報と認識できるようにＲｅｓｐｏｎｓｅ（＝２）とする。バージョンは２以上とする。これはバージョン１のＲＩＰパケットではサブネットマスクの情報が含まれず、本実施の形態で必要となるホスト自体のアドレスについての経路情報を流し込むことができないためである。３以降のバージョンについては、バージョン２と互換を持つのであれば用いてもよい。
【００４４】
１つの経路情報は、アドレスファミリー、ルートタグ、ＩＰアドレス、サブネットマスク、ネクストホップ、及びメトリックで構成される。アドレスファミリーはＩＰを示す２とする。ルートタグの使い方については特に規定されていないため、ここでは０とするがそれに限るものではない。ＩＰアドレスは、ネットワーク接続装置１００ａ〜ｂがローカルネットワーク７００内で通信可能な装置のＩＰアドレスとする。サブネットマスクは０ｘＦＦＦＦＦＦＦＦとする。ネクストホップは、通信可能な装置のＩＰアドレスとする。メトリックは、ルータのホップ数である。メトリックは１６より小さい整数が設定される。
【００４５】
ＲＩＰでは、最大２５の経路情報を１つのパケットに格納することが可能である。１つのパケットに複数の経路情報を設定することにより、パケットの数を削減することが可能である。
【００４６】
なお、ルータ２００は、情報パケット４１を受信した場合、ＲＩＰプロトコルに基づく経路情報として処理する。ＲＩＰプロトコルでは一度登録した情報を一定時間毎に再度通知する必要がある。経路情報通知部１３０は宛先のルータ２００ａ〜ｂにおけるＲＩＰプロトコルの処理頻度に応じて、一定時間毎に情報パケット４１をルータ２００ａ〜ｂに送信する。ＲＩＰは一般的に３０秒毎に送信する。さらに、経路情報通知部１３０は、ルータにおいてＲＩＰプロトコルの処理頻度が変更される場合を考慮し、情報パケットの送信周期を変更可能なようにしてもよい。
【００４７】
経路情報を流し込む第２の方法は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いて、経路情報をルータ２００ａ〜ｂに設定する方法である。この方法において、ルータ２００ａ〜ｂは経路情報をスタティックルートとして登録する。経路情報通知部１３０は、ＳＮＭＰを用いてＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）として標準化されたオブジェクトに対して経路情報を登録する。スタティックルートを設定するためのＭＩＢオブジェクトはＲＦＣで規定されたものを用いることにより、汎用的な方法で設定することができる。この方法では、登録を削除するまで設定した情報が保持されるため、ＲＩＰを用いた方法のように一定時間毎に再設定を行う必要が無い。
【００４８】
経路情報を流し込む第３の方法は、ユーザがネットワーク接続装置１００ａ〜ｂからルータ２００ａ〜ｂにリモートログインを行って設定する方法である。ユーザは、ルータ２００ａ〜ｂの設定用ユーザインターフェースを用いて経路情報をスタティックルートとして登録する。設定用ユーザインターフェースとしては例えばＣＬＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｉｎｔｅｒｆａｃｅ）がある。リモートログインの方法としては、例えばＴｅｌｎｅｔを用いる。この方法では、登録を削除するまで設定した情報が保持されるため、ＲＩＰを用いた方式のように一定時間毎に再設定を行う必要が無い。
【００４９】
経路情報を流し込む第４の方法は、ＯＳＰＦなどＲＩＰ以外のルーチングプロトコルのパケットを模擬した情報パケットを用いる方法である。ただし、これらプロトコルはＲＩＰと比べて複雑な処理が必要であり、ＲＩＰを使用する場合と比較して特に優位な点がない。したがって、ＲＩＰを模擬した情報パケットにより経路情報の流し込みが可能な場合はＲＩＰを使用し、ＲＩＰを模擬した情報パケットが使用できない場合に限り、他のプロトコルを使用するのがよい。どのプロトコルを模擬した情報パケットを用いることが可能であるかは、ルータ２００で動作するプロトコルに依存する。ルータ２００が持つプロトコルの中から適当な一つを選択して用いる。
【００５０】
なお、一般的に産業用途向けのルータは少なくともＲＩＰ及びＯＳＰＦの機能を備えており、ＲＩＰによる経路情報の流し込みが可能である。
【００５１】
次に、ネットワークの分断が解消した場合について説明する。分断が解消した場合、ルータ２００ａ〜ｂは、ＶＲＲＰプロトコルの動作により分断が発生する前の状態へと切り戻しを行う。その結果、ルータ２００ａ〜ｂはそれぞれ異なるサブネットにおいてアクティブ状態のルータとなり、サブネットに属する装置に対してＶＲＲＰパケットを送信する。
【００５２】
図５は、実施の形態１に係るネットワーク接続装置１００ の動作の流れを示すフローチャートである。ネットワーク接続装置１００ はステップＳ７１より処理を開始する。
パケット解析部１１０は、ローカルネットワーク７００に分断が発生した場合、ルータ１００ａ〜ｂ間でやりとりされている導通確認用パケットを監視する（ステップＳ５１）。パケット解析部１１０は、物理ポート１５０、１５１の両ポートでＶＲＲＰパケットを受信した場合（ステップＳ５２）、ネットワークの分断が解消したことを検知する。パケット解析部１１０がルータ２００ａ〜ｂの送信するＶＲＲＰパケットを受信できるのは、ローカルネットワーク７００全体で導通が確保されている場合のみであるためである。
【００５３】
パケット解析部１１０は、分断の解消を検知すると経路情報通知部１３０に通知する（ステップＳ５３）。経路情報通知部１３０は、分断が発生したときに物理ポート１５１を介してルータ２００ａ〜ｂに通知した経路情報を削除するようにルータ２００ａ〜ｂに通知する（ステップＳ５４）。経路情報通知部１３０は、情報パケット４１のメトリックを到達不能の意味を示す１６としてルータ２００ａ〜ｂに送信することにより以前設定した経路情報を削除する。ＳＮＭＰやＣＬＩを用いた場合、それぞれに対応する手順により以前設定した経路情報を削除する。
【００５４】
経路情報を削除すると、経路情報通知部１３０は端末情報テーブル１４０に保存されている情報を全て削除する（ステップＳ５５）。ただし、再度ネットワークの分断が発生する場合を考慮し、無効フラグを付けて端末情報テーブル１４０に情報を保持したままにしてもよい。この場合、ノード探索部１２０は、ネットワークの分断が発生し、通信可能な装置を探索するときに、端末情報テーブル１４０が保持しているＩＰアドレスを優先して探索する。端末情報テーブル１４０が保持しているＩＰアドレスは見つかる可能性が高く、通信断の時間を短くする効果が得られる。
【００５５】
本実施の形態において、ネットワーク接続装置１００ａ、１００ｂは、それぞれルータ２００ａ、２００ｂに直結する構成としたが、間に他のレイヤ２装置を介するような構成としてもよい。ただしこの構成において、ネットワーク装置１００ａとルータ２００ａの間またはネットワーク装置１００ｂとルータ２００ｂの間で障害発生した場合、前記他のレイヤ２装置に接続された機器の通信は救済されない。
【００５６】
したがって、本実施の形態では、ローカルネットワークとバックボーンネットワークとの境界に位置する複数のルータ装置のいずれかと通信するレイヤ２のネットワーク接続装置であって、複数のルータ装置が互いの導通を確認する導通確認用パケットを監視し、導通確認用パケットを受信しない場合、ローカルネットワーク内で分断が発生したことを通知するパケット解析部と、パケット解析部よりローカルネットワーク内で分断が発生したことを通知されると、ローカルネットワーク内の通信可能なノードを探索するノード探索部と、ノード探索部により発見されたノードの経路情報を、通信するルータ装置に通知する経路情報通知部とを備えたので、ローカルネットワークに分断が発生したときに、ＩＰルーチング機能及びＩＰ中継機能を持たずに装置間での通信を継続させることができる。
【００５７】
また、ＩＰルーチング機能及びＩＰ中継機能は処理負荷が高いため、ＩＰルーチング機能及びＩＰ中継機能を実装した装置は一般に高価である。本実施の形態では、ＩＰルーチング機能及びＩＰ中継機能が不要なため、ローカルネットワークに分断が発生したときに、安価な装置で装置間での通信を継続させることができる。
【００５８】
また、従来技術では、既存のバックボーンネットワークに対してローカルネットワークを増設する場合、バックボーンネットワークとローカルネットワークとの境界にルータを設置することになる。ルータを境界としてサブネットを変更する必要があり、バックボーンネットワークも含めたネットワークの再設計が必要になる。さらに、ＯＳＰＦなどのルーチングプロトコルにおいて経路情報が増加し、経路を変更するときの収束時間にも悪影響を及ぼす可能性がある。本実施の形態では、既存のバックボーンネットワークに対してローカルネットワークを増設する場合でも、バックボーンネットワークを含めてネットワークの再設計は不要である。
【００５９】
実施の形態２．
以上の実施の形態１では、ローカルネットワークに分断が発生したときに、バックボーンネットワークを経由して装置間での通信を継続させるようにしたものであるが、本実施の形態においては、ＲＩＰの情報パケットにより経路情報を流し込む第１の方法について、ＲＩＰの情報パケットが異常データとして扱われる場合を考慮した実施の形態を示す。
なお、本実施の形態においては、図１のように実施の形態１に記載の構成を全て備えた上で、更に付加的な構成について説明する。
【００６０】
実施の形態１において、経路情報を流し込む第１の方法として、ＲＩＰの情報パケットのＩＰアドレス及びネクストホップはともに通信可能な装置のＩＰアドレスを設定するようにした。しかし、これは通常のＲＩＰプロトコルでは生成されないような経路情報であるため、ルータによっては異常データとして扱う可能性がある。このような可能性を考慮して、ネットワーク接続装置１００ａ〜ｂにＩＰアドレスを付与し、経路情報通知部１３０は、ネクストホップにネットワーク接続装置１００ａ〜ｂ自身のＩＰアドレスを設定するようにしてもよい。なお、ネットワーク接続装置１００ａ〜ｂは、レイヤ３の装置ではないため、通常はＩＰアドレスが付与されない。
【００６１】
図６は、実施の形態２に係るネットワーク接続装置１０１の構成を示すブロック図である。図１のネットワーク接続装置１００に、ＭＡＣアドレス書換部１６０を付加している。アドレス書換部１６０は、物理ポート１５１より受信したフレームの宛先ＭＡＣアドレスを書き換える。ネットワークシステムは、図２のネットワーク接続装置１００ａ〜ｂをネットワーク接続装置１０１ａ〜ｂに置き換えた構成となる。
【００６２】
図７は、実施の形態２に係る情報パケット４２の構成を示す図である。図４の情報パケット４１との違いは、ネクストホップにネットワーク接続装置１０１ａ〜ｂいずれかのＩＰアドレスを設定している点である。
【００６３】
ノード探索部１２０は、通信可能な装置を発見すると、ＩＰアドレスとともに、ＭＡＣアドレスを端末情報テーブル１４０に保存する。
【００６４】
ネットワーク接続装置１０１ａがネクストホップにネットワーク接続装置１０１ａのＩＰアドレスを設定した経路情報をルータ２００ａに流し込む場合を例として説明する。
【００６５】
ルータ２００ａは、装置３００ａ宛のパケットの宛先ＩＰアドレスに装置３００ａのＩＰアドレスｄ３を設定する。ルータ２００ａは、パケットから生成されるフレームの宛先ＭＡＣアドレスに、ネットワーク接続装置１０１ａのＭＡＣアドレスｍ１を設定して送信する。このフレームを受信したネットワーク接続装置１０１ａのアドレス書換部１６０は、端末情報テーブル１４０を参照し、宛先ＩＰアドレスｄ３に対応するＭＡＣアドレスｍ３を検索する。アドレス書換部１６０は、フレームの宛先ＭＡＣアドレスを装置３００ａのＭＡＣアドレスｍ３に書換え、物理ポート１５０を介して送信する。以上により、ＩＰアドレス及びネクストホップに通信可能な装置のＩＰアドレスを設定しても、ルータが異常データとして扱わないようにすることができる。
【００６６】
したがって、本実施の形態では、宛先ＭＡＣアドレスが自装置で、宛先ＩＰアドレスがローカルネットワーク内の通信可能なノードであるパケットを受信した場合、端末情報テーブルを参照し、ノードのＩＰアドレスに対応付けられたＭＡＣアドレスを宛先ＭＡＣアドレスに設定するアドレス書換部を備え、経路情報通知部は、ＲＩＰのリクエストパケットのネットワークアドレスにローカルネットワーク内の通信可能なノードのＩＰアドレスを設定し、サブネットマスクを３２ビットとし、ネクストホップに自装置に付与されたＩＰアドレスを設定するので、ＩＰアドレス及びネクストホップの両方に通信可能な装置のＩＰアドレスを設定すると異常データとしてしまうルータであっても、経路情報の流し込みをすることができる。
【００６７】
実施の形態３．
以上の実施の形態２は、ＲＩＰの情報パケットにより経路情報を流し込む第１の方法について、ＲＩＰの情報パケットが異常データとして扱われる場合を考慮したものであるが、本実施の形態においては、マルチキャスト通信が行われている際に、ローカルネットワークにおいてネットワークの分断が解消した場合、ブロードキャストストームの発生を抑止する実施の形態を示す。
【００６８】
図８は、実施の形態３に係るネットワーク接続装置１０２の構成を示すブロック図である。図１のネットワーク接続装置１００に、マルチキャスト制御データ監視部１７０を付加している。マルチキャスト制御データ監視部１７０は、物理ポート１５０〜１５１から受信したマルチキャストパケットを処理する。また、マルチキャスト制御データ監視部１７０は、パケット解析部１１０からネットワークの分断が発生したことを通知されると、物理ポート１５０を監視し、物理ポート１５１に対してマルチキャストパケットの受信を制御する。
【００６９】
次に、ネットワーク接続装置１０２の動作を説明する。なお、以下は本実施の形態により実現するネットワーク装置及びシステムの一例であり、その実施形態を限定するものではない。
【００７０】
図９は、実施の形態３に係るネットワーク接続装置１０２を用いたネットワークシステムの一例を示す図である。ネットワークシステムの構成は図２の構成と同じである。ルータ２０１ａ〜ｃは、マルチキャスト経路制御プロトコルに対応したルータである。
図９の矢印はマルチキャスト通信を行う場合の動作の一例を示すものである。本実施の形態において、マルチキャストの経路制御を行うためのプロトコルが動作し、マルチキャスト転送が行われていることを前提とする。マルチキャスト経路制御プロトコルとしては、例えばＩＧＭＰ（Ｉｎｔｅｒｎｅｔ  Ｇｒｏｕｐ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）及びＰＩＭ（Ｐｒｏｔｏｃｏｌ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｍｕｌｔｉｃａｓｔ）がある。
【００７１】
例えば監視カメラ５００がマルチキャストデータを配信し、装置３００ｂ及び３００ｃがそのデータを受信する。マルチキャスト経路制御プロトコルが経路を決定し、図６の例では、点線で示した経路となる。経路はループしない。なお、監視カメラ５００は装置に置き換えてもよい。
【００７２】
ＰＩＭは、レイヤ３で中継される範囲の中継経路を制御するものであり、図６においてはバックボーンネットワーク６００に接続されるルータ２００ａ〜ｃで動作する。
ＩＧＭＰは、レイヤ２で中継される範囲の中継経路を制御するものであり、図６においてはローカルネットワーク７００に接続されるルータ２００ａ〜ｃ、ネットワーク接続装置１００及びレイヤ２スイッチ４００で動作する。
【００７３】
図１０は、実施の形態３に係るネットワーク接続装置１０２を用いたネットワークシステムの一例を示す図である。図１０は、ネットワーク接続装置１０２ｂとスイッチ４００との間で障害が発生し、ネットワークの分断が発生した場合を示す。ネットワークの分断が発生すると、実施の形態１と同様の動作によりバックボーンネットワーク６００内での中継経路が変更される。ＩＧＭＰ及びＰＩＭは、変更された中継経路に追従して、マルチキャスト経路を変更する。監視カメラ５００から装置３００ｂへのマルチキャスト経路は、例えば実線で示した通りバックボーンネットワーク６００を経由した経路に変更される。
【００７４】
ネットワークの分断が解消した場合、ローカルネットワーク内においては各装置が各々の受信ポート以外の全ポートに対してマルチキャストパケットを中継する動作を行う。この動作は、一般にフラッディングと呼ばれる。ネットワークの分断が解消すると、ネットワーク接続装置１０２ｂは隣接するスイッチ４００に中継を行うようになり、ネットワーク接続装置１０２ａ、ルータ２０１ａ、ルータ２０１ｂの経路で周回ループが発生する。その結果、ブロードキャストストームと呼ばれるマルチキャストパケットが大量の帯域を消費する現象が発生する可能性がある。
【００７５】
マルチキャストの中継経路の切り替えには時間がかかるため、ブロードキャストストームは長い時間にわたって継続する。例えばＩＧＭＰ及びＰＩＭがともにデフォルトパラメータで実行されていた場合、ネットワークの分断が解消してから最長で数分間にわたってブロードキャストストームが継続する可能性がある。
【００７６】
マルチキャスト制御データ監視部１７０は、マルチキャスト経路制御プロトコルの制御用パケットを監視することにより、ブロードキャストストームが発生したか否かを監視する。したがって、ブロードキャストストームの発生を抑止し、ブロードキャストストームが発生した場合には早期に収束させることができる。
【００７７】
マルチキャスト制御データ監視部１７０は、ローカルネットワーク７００に接続された物理ポート１５０において、ＰＩＭ  Ｈｅｌｌｏパケット及びＰＩＭ  Ａｓｓｅｒｔパケットの受信を監視する。これらのパケットは、いずれもＰＩＭの機能を備えたルータから送信されるパケットである。ネットワークが分断されている場合、ローカルネットワーク７００に接続された物理ポート１５０からこれらのパケットを受信することはないと考えられる。言い換えると、これらのパケットを受信した場合にはネットワークの分断が解消したものと判断することができる。
【００７８】
マルチキャスト制御データ監視部１７０は、ネットワークの分断が解消されたと判断すると、物理ポート１５１に対してマルチキャストパケットの受信を破棄する。これにより、マルチキャストストームを抑止することができる。このとき、あらゆるマルチキャストパケットの受信を遮断すると、例えばローカルネットワーク７００の外部の装置３００ｃから送信していたマルチキャストパケットがローカルネットワーク７００に到達しなくなってしまう。そこで、マルチキャスト制御データ監視部１７０は、ネットワークの分断が発生していない場合に物理ポート１５１に直結されたルータ２０１が中継する必要がないマルチキャストパケットのみを遮断する。
【００７９】
遮断対象のマルチキャストパケットは、次に示す２つの条件のうち少なくともいずれか１つを満たすパケットである。第１の条件は、物理ポート１５１から受信したパケットのうち、送信元ＩＰアドレスがローカルネットワーク７００に割り当てられたネットワークアドレスの範囲に含まれるパケットである。第２の条件は、ネットワークの分断が発生していない場合で、かつ、ネットワーク接続装置１０２ａ〜ｂに物理ポート１５１を介して直結されたルータ２０１ａ又は２０１ｂがローカルネットワーク７００の代表ルータではない場合に、物理ポート１５１から受信したパケットである。代表ルータとは、ＰＩＭプロトコルの標準規格にて定義されたマルチキャスト中継の代表ルータ（Ｄｅｓｉｇｎａｔｅｄ  Ｒｏｕｔｅｒ）を指す。
【００８０】
対象となるパケットを破棄することにより、マルチキャストパケットの周回ループが分断され、ブロードキャストストームの発生を停止させることができる。なお、第１の条件で破棄されるパケットは、ローカルネットワーク７００内の装置が送信元であり、フラッディングによりローカルネットワーク７００内の各装置に伝達されるものである。また第２の条件で破棄されるパケットは、ローカルネットワーク７００内に１つだけ存在する代表ルータからローカルネットワーク７００内の各装置に伝達されるものである。マルチキャスト制御データ監視部１７０がこれらのマルチキャストパケットを破棄するのは、周回ループが形成されることにより、ローカルネットワーク７００に接続された装置が既に受信したパケットを何度も受信することを抑止するものである。
【００８１】
なお、マルチキャスト制御データ監視部１７０は、第１又は第２の条件を満たすパケットを破棄すると記載したが、受信しないようにしても同様の効果が得られる。
【００８２】
また、ネットワーク接続装置１０２は、実施の形態２の図５のネットワーク接続装置１０１のようにＭＡＣアドレスを書き換えるＭＡＣアドレス書換部を設けるようにしてもよい。
【００８３】
したがって、本実施の形態では、マルチキャスト制御プロトコルの制御パケットをスヌーピングすることによりブロードキャストストームが発生したか否かを監視し、ブロードキャストストームが発生した場合、周回ループが形成された中継経路で中継されるマルチキャストパケットを破棄するので、マルチキャスト通信が行われている際に、ローカルネットワークにおいてネットワークの分断が解消した場合、ブロードキャストストームの発生を抑止することができる。また、ブロードキャストストームが発生した場合には早期に収束させることができる。
【００８４】
実施の形態４．
以上の実施の形態３は、マルチキャスト通信が行われている際に、ローカルネットワークにおいてネットワークの分断が解消した場合、ブロードキャストストームの発生を抑止するようにしたものであるが、本実施の形態においては、ネットワーク接続装置が代表ルータの情報を保持する実施の形態を示す。
【００８５】
本実施の形態において、ネットワーク接続装置は図８に示す１０２の構成である。また、ネットワークシステムは図９に示す構成である。ネットワークに分断が発生した場合の例は図１０である。
【００８６】
ローカルネットワーク７００において、代表ルータは、ルータ２０１ａとルータ２０１ｂとの間でＰＩＭプロトコルのパケットを交換することにより決定される。２以上のルータのうちいずれのルータが代表ルータであるかは、優先度によって決定される。ただし、最も高い優先度を持つルータが複数存在する場合、その中でＩＰアドレスの最も大きいルータが代表ルータとなる。ローカルネットワーク７００において、ネットワークの分断の発生中は、ルータ２０１ａとルータ２０１ｂとの間でＰＩＭプロトコルのパケットの交換が停止するため、ルータ２０１ａ〜ｂはともに代表ルータとなる。ルータ２０１ａ〜ｂの優先度及びＩＰアドレスを変更しない限り、ネットワークの分断が回復した後の代表ルータは分断が発生する前と同じとなる。
【００８７】
どのルータが代表ルータであるかを示す代表ルータ情報は、実施の形態３で説明したようにネットワーク接続装置１０２ａ〜ｂが遮断対象のマルチキャストパケットを判定する際に必要な情報である。遮断対象のマルチキャストパケットの判定に必要なのは、ネットワークの分断が回復した後の代表ルータ情報であって、ネットワークの分断中にルータ２０１ａ〜ｂがともに代表ルータである状態の情報ではない。ネットワークの分断が回復した直後からいずれか一方のルータのみが代表ルータとして定まるまでの間、ネットワーク接続装置１０２ａ〜ｂは遮断対象のマルチキャストパケットを判定することができない。これにより、ネットワークの分断の復旧から周回ループの発生が抑止されるまでに時間がかかるという問題がある。
【００８８】
そこで、ネットワーク接続装置１０２ａ〜ｂのマルチキャスト制御データ監視部１７０は、ネットワークの分断が発生する前の代表ルータ情報を予め収集し、保持する。これにより、ネットワークの分断が発生し、その後解消したときに、マルチキャスト制御データ監視部１７０は代表ルータが１台に定まるまでの時間を待つことなく、保持している代表ルータ情報から代表ルータを即座に定めることが可能となる。マルチキャスト制御データ監視部１７０は、ネットワークの分断が解消した後ただちに遮断対象のマルチキャストパケットを判定することが可能となる。よって、周回ループの発生を抑止することが可能となる。
【００８９】
マルチキャスト制御データ監視部１７０は、ローカルネットワーク７００に接続された物理ポート１５０において、ルータ２０１ａ〜ｂから定期的に送信されるＰＩＭ  Ｈｅｌｌｏパケットの受信を監視している。マルチキャスト制御データ監視部１７０は、ＰＩＭ  Ｈｅｌｌｏパケットをスヌーピングすることにより、代表ルータ情報を収集する。ネットワークが分断されていない場合、マルチキャスト制御データ監視部１７０は、保持している代表ルータ情報を有効期間保持し、有効期間内に次のＰＩＭ  Ｈｅｌｌｏパケットを受信しなかった場合には当該情報を破棄する（以下、エージングするという）。有効期間内に次のＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、マルチキャスト制御データ監視部１７０は受信時を起点に有効期間を再設定するとともに、代表ルータ情報を更新する。代表ルータ情報の有効期間は、ＰＩＭプロトコルに定められたＰＩＭ  Ｈｅｌｌｏパケットの保持時間に合わせればよい。代表ルータ情報をエージングすることにより、各ルータが認識する代表ルータとマルチキャスト制御データ監視部１７０が保持する代表ルータ情報を常に一致させることができる。
【００９０】
ローカルネットワーク７００の分断が解消すれば、マルチキャスト制御データ監視部１７０は、ＰＩＭ  Ｈｅｌｌｏパケットの保持時間を経過する前に物理ポート１５０からＰＩＭ  Ｈｅｌｌｏパケットを受信する。マルチキャスト制御データ監視部１７０は、ＰＩＭ  Ｈｅｌｌｏパケットをスヌーピングすることにより、代表ルータ情報を更新する。
【００９１】
マルチキャスト制御データ監視部１７０は、パケット解析部１１０からネットワークの分断が発生したことを通知されると、代表ルータ情報をエージングしないようにする。エージングしないように有効期間について時間のカウントを停止すると、有効期間は満了せず、マルチキャスト制御データ監視部１７０は、ネットワークの分断が解消するまで分断が発生する前の代表ルータ情報を保持し続けることになる。
【００９２】
なお、ネットワークの分断の発生中にルータ２０１ａ〜ｂの優先度またはＩＰアドレスを変更した場合、マルチキャスト制御データ監視部１７０が保持している代表ルータ情報とネットワークの分断から復旧した後の代表ルータ情報とが一致しなくなる問題がある。しかし、ルータ２０１ａ〜ｂの優先度またはＩＰアドレスはネットワークの設計変更等に際してユーザが意図して設定を変更しない限りは変更されないものである。したがって、ネットワークの分断の発生中にユーザがルータ２０１ａ〜ｂの優先度またはＩＰアドレスを変更しないようにすることにより、この問題は回避することが可能である。
【００９３】
したがって、マルチキャスト制御データ監視部は、ＰＩＭ  Ｈｅｌｌｏパケットをスヌーピングすることによりサブネットごとの代表ルータの情報をあらかじめ保持し、パケット解析部よりローカルネットワーク内で分断が発生したことを通知された後にＰＩＭ  ＡｓｓｅｒｔパケットまたはＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、代表ルータの情報に基づいてパケットを破棄するか否かを決定するので、ローカルネットワークの分断が解消したときにすぐに周回ループの発生を抑止することができる。
【００９４】
また、マルチキャスト制御データ監視部は、代表ルータの情報の有効期間を設定し、パケット解析部よりローカルネットワーク内で分断が発生したことを通知されると有効期間について時間のカウントを停止し、その後にＰＩＭ  ＡｓｓｅｒｔパケットまたはＰＩＭ  Ｈｅｌｌｏパケットを受信した場合、時間のカウントを再開するので、各ルータが認識する代表ルータとマルチキャスト制御データ監視部１７０が保持する代表ルータ情報を常に一致させることができる。
【００９５】
実施の形態５
以上の実施の形態４は、ネットワーク接続装置が代表ルータの情報を保持するようにしたものであるが、本実施の形態においては、ネットワークの分断が発生した場合にノード探索部が優先的に探索する装置の情報を保持する実施の形態を示す。
【００９６】
図１１は、本実施の形態５に係るネットワーク接続装置１０３の構成を示すブロック図である。ネットワーク接続装置１０３は、実施の形態１に記載のネットワーク接続装置１００の構成を備えた上で、さらに付加的な構成を備えている。図１のネットワーク接続装置１００との違いは、パケット解析部１１１およびノード探索部１２１である。パケット解析部１１１は、ネットワークの分断が解消した場合、経路情報通知部１３０に加えて、ノード探索部１２１にも通知する。ノード探索部１２１は、ネットワークの分断が発生した場合に優先的に探索する装置の情報をあらかじめ収集して保持する。
【００９７】
本実施の形態において、ネットワークシステムは、図２のネットワーク接続装置１００ａ〜ｂをネットワーク接続装置１０３に置き換えた構成を例として説明する。
【００９８】
図１２は、本実施の形態５に係るノード探索部１２１の構成を示すブロック図である。ノード探索部１２１は、探索手段選択部１２０１、分断前探索制御部１２０２、分断時探索制御部１２０３、及び事前探索アドレステーブル１２０４から構成される。
【００９９】
探索手段選択部１２０１は、パケット解析部１１１から通知されるローカルネットワーク７００の分断の状況に応じて分断前探索制御部１２０２または分断時探索制御部１２０３に通信可能な装置の探索を指示する。分断前探索制御部１２０２は、通信可能な装置を探索し、発見した装置のアドレスを事前探索アドレステーブル１２０４に登録する。分断時探索制御部１２０３は、事前探索アドレステーブル１２０４を参照して通信可能な装置を探索する。また、ネットワーク接続装置１０３は、設定用ユーザインタフェース１２０５を備えるようにしてもよい。ノード探索部１２１は、設定用ユーザインタフェース１２０５を介してユーザより入力されたアドレスを事前探索アドレステーブル１２０４に登録する。
【０１００】
次に、各部の詳細について説明する。
探索手段選択部１２０１は、初期起動時およびパケット解析部１１１からローカルネットワーク７００の分断が解消されたことを通知された場合、分断前探索制御部１２０２に通信可能な装置の探索を指示する。また、探索手段選択部１２０１は、パケット解析部１１１からローカルネットワーク７００の分断が発生したことを通知された場合、分断時探索制御部１２０３に通信可能な装置の探索を指示する。
【０１０１】
分断前探索制御部１２０２は、探索手段選択部１２０１から通信可能な装置の探索を指示されると、物理ポート１５０を介して、ローカルネットワーク７００に割り当てられたサブネットに属するＩＰアドレスから通信可能な装置を探索する。分断前探索制御部１２０２は、探索パケットとして、例えばＡＲＰ  Ｒｅｑｕｅｓｔを送信する。分断前探索制御部１２０２は、応答パケットを送信した装置のＩＰアドレスを事前探索アドレステーブル１２０４に登録する。
【０１０２】
装置管理者等のユーザは、設定用ユーザインタフェース１２０５を介して、ネットワークの分断が発生した場合に探索するアドレスをあらかじめ事前探索アドレステーブル１２０４に登録するようにしてもよい。事前探索アドレステーブル１２０４に登録するアドレスは１つでも複数でもよい。
【０１０３】
分断時探索制御部１２０３は、探索手段選択部１２０１から通信可能な装置の探索を指示されると、事前探索アドレステーブル１２０４を参照する。分断時探索制御部１２０３は、まず、事前探索アドレステーブル１２０４に登録されているアドレスに対して探索パケットを送信する。その後、分断時探索制御部１２０３は、さらにローカルネットワーク７００に割り当てられたサブネットに属する他のアドレスに対して探索パケットを送信する。分断時探索制御部１２０３は、通信可能な装置を発見した場合、その装置の情報を端末情報テーブル１４０に保存する。分断時探索制御部１２０３は、通信可能として発見された装置が事前探索アドレステーブル１２０４に登録されていない場合、新たに登録してもよい。登録すれば、次回以降の分断の発生時には優先的に探索が行われることになる。
【０１０４】
ローカルネットワーク７００に分断が発生していない状態で通信可能な装置のアドレスを把握しておくことにより、ネットワークの分断が発生した場合に装置が存在する可能性が高いアドレスについて優先的に探索することが可能となる。また、通信可能な装置をユーザが明示的に指定することにより、ネットワークの分断が発生した場合に装置が存在する可能性が高いアドレスについて優先的に探索することが可能となる。よって、通信可能な装置を早期に発見し、早期に通信を復旧させることができるため、通信断の時間を短縮することができる。また、通信断の時間平均の短縮が求められている装置や迅速な復旧が必要な装置がネットワーク内に存在する場合、本実施の形態を適用することにより通信断の時間を短縮することができる。
【０１０５】
なお、実施の形態１において、ノード探索部１２０は、分断が発生する前にネットワークを流れるパケットをスヌーピングすることにより通信している装置を把握し、これらの装置を優先的に探索してもよいと記載している。しかしながら、この方法では、ノード探索部１２０は、パケットを受信するのみの受信装置の存在を把握することができず、優先的に探索する対象とすることはできない。本実施の形態により、ノード探索部１２１は、ローカルネットワーク７００に割り当てられたサブネットに属するＩＰアドレスをあらかじめ探索することにより、受信装置も通信可能であれば発見することができ、事前探索アドレステーブル１２０４に登録して優先的に探索することができる。また、ユーザが受信装置を事前探索アドレステーブル１２０４に登録してもよい。
【０１０６】
さらに、ネットワーク接続装置１０３は、ＩＰルーチング機能を持たないため、実施の形態１に記載したパケットのスヌーピング処理をソフトウェアで行う必要がある。この場合、ソフトウェアを制御するＣＰＵの負荷が高くなり、非効率である。本実施の形態では事前探索アドレステーブル１２０４に登録されたアドレスを優先的に探索するため、ＣＰＵの負荷の上昇を抑制しつつ、ノード探索部１２１は効率的に通信可能な装置を探索することが可能となる。
【０１０７】
また、ネットワーク接続装置１０３は、物理ポート１５１より受信したフレームの宛先ＭＡＣアドレスを書き換えるＭＡＣアドレス書換部１６０を備えるようにしてもよい。
また、ネットワーク接続装置１０３は、物理ポート１５０〜１５１から受信したマルチキャストパケットを処理するマルチキャスト制御データ監視部１７０を備えるようにしてもよい。
【０１０８】
したがって、ノード探索部は、ローカルネットワーク内の通信可能なノードを探索するときに、優先的に探索するノードのアドレスを保持する事前探索アドレステーブルと、パケット解析部よりローカルネットワーク内で分断が発生したことを通知された場合、アドレスを参照し、ノードを優先的に探索する分断時探索制御部と、を備えるので、ネットワークの分断が発生した場合に装置が存在する可能性が高いアドレスについて優先的に探索することができる。
【０１０９】
また、前記事前探索アドレステーブルは、ユーザインタフェースを介して入力されたアドレス情報を登録するので、ネットワークの分断が発生した場合に装置が存在する可能性が高いアドレスについて優先的に探索することができる。
【０１１０】
また、パケット解析部は、ノード探索部にローカルネットワーク内で分断が発生したことを通知した後に導通確認用パケットを受信した場合、ローカルネットワーク内の分断が解消したことをノード探索部に通知し、ノード探索部は、初期起動時およびパケット解析部よりローカルネットワーク内で分断が解消したことを通知された場合、ローカルネットワーク内の通信可能なノードを探索し、発見したノードのアドレス情報を事前探索アドレステーブルに登録する分断前探索制御部を備えるので、通信可能な装置を早期に発見し、早期に通信を復旧させることができるため、通信断の時間を短縮することができる。
【０１１１】
また、分断時探索制御部は、事前探索アドレステーブルが保持するノードのアドレス情報を参照し、ノードを優先的に探索した後、ローカルネットワーク内のアドレスであって事前探索アドレステーブルが保持していないローカルネットワーク内のアドレスを探索し、通信可能なノードを発見した場合、ノードのアドレスを事前探索アドレステーブルに登録するので、通信可能な装置を早期に発見し、早期に通信を復旧させることができるため、通信断の時間を短縮することができる。
【符号の説明】
【０１１２】
１００、１００ａ〜ｂ、１０１、１０１ａ〜ｂ、１０２  ネットワーク接続装置
１１０  パケット解析部
１２０  ノード探索部
１３０  経路情報通知部
１４０  端末情報テーブル
１５０、１５１  物理ポート
１６０  アドレス書換部
１７０  マルチキャスト制御データ監視部
２００、２００ａ〜ｂ、２０１、２０１ａ〜ｂ  ルータ
３００ａ〜ｃ  装置
４００  レイヤ２スイッチ
５００  監視カメラ
６００  バックボーンネットワーク
７００  ローカルネットワーク
４１、４２  情報パケット
１０３  ネットワーク接続装置
１１１  パケット解析部
１２１  ノード探索部
１２０１  探索手段選択部
１２０２  分断前探索制御部
１２０３  分断時探索制御部
１２０４  事前探索アドレステーブル
１２０５  設定用ユーザインタフェース
【図１】
2015164293.tif 000003
【図２】
2015164293.tif 000004
【図３】
2015164293.tif 000005
【図４】
2015164293.tif 000006
【図５】
2015164293.tif 000007
【図６】
2015164293.tif 000008
【図７】
2015164293.tif 000009
【図８】
2015164293.tif 000010
【図９】
2015164293.tif 000011
【図１０】
2015164293.tif 000012
【図１１】
2015164293.tif 000013
【図１２】
2015164293.tif 000014