(57)【要約】【課題】ゲートウェイ間やゲートウェイとホスト間のトンネル化された通信経路を、シ‐ムレスに最適化する。【解決手段】Ｎｏｔｅ−ＣとＧＷ−Ｂにユニキャスト用のトンネル８３を追加する（ユニキャスト最適化）。次に、Ｎｏｔｅ−Ｃは、ＧＷ間ヘッダが付加された第１のＩＰパケットをマルチキャストアドレスが設定されたＩＰヘッダでカプセル化した第２のＩＰパケットをＧＷ−Ｃに送信する。このマルチキャスト用の第２のＩＰパケットパケットは、トンネル９１を経由してＣＥ６００１に転送される。ＣＥ６００１は、受信した前記第２２のＩＰパケットをコピーし、それを、トンネル９１を介してＧＷ−ＡとＧＷ−Ｂに転送する（マルチキャスト最適化）。【選択図】図３
2008092170.tif 000002
【特許請求の範囲】
【請求項１】
自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置であって、
前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に転送する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自配下の端末と送受信する第２のＩＰパケットの前記メインルート及び前記サブルートに関する前記グループメンバ間通信用のルーティング情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を記憶する記憶手段と、
該記憶手段に格納されている前記管理情報と前記ルート識別情報を設定、更新する情報管理手段と、
前記自配下の端末との間で、前記第２のＩＰパケットを送受信する第１の送受信手段と、
該記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、前記第１の送受信手段により受信された前記第２のＩＰパケットに前記グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダが付加された前記第１のＩＰパケットを作成する第１のパケット作成手段と、
該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、他のパケット中継装置に送信すると共に、他のパケット中継装置から自装置配下の端末宛の前記第１のＩＰパケットを受信する第２の送受信手段と、
該第２の送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除して、前記第２のＩＰパケットを作成し、その第２のＩＰパケットを前記第１の送受信手段に出力する第２のパケット作成手段と、
を備えることを特徴とするパケット中継装置。
【請求項２】
請求項１記載のパケット中継装置であって、
前記ルーティング情報と前記ルート識別情報を更新することにより、前記第１のＩＰパケットの通信ルートを最適化する通信ルート最適化手段を、
さらに備える。
【請求項３】
請求項１記載のパケット中継装置であって、
自配下の端末が前記第２のＩＰパケットの通信に利用している通信ルートの使用状況を監視して、前記ルーティング情報と前記ルート識別情報を、前記通信ルートに配置されている他のパケット中継装置と同期して更新する同期更新手段を、
さらに備える。  
【請求項４】
自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置とＩＰパケットを通信する端末装置であって、
前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に送信する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自装置内部で送受信処理する第２のＩＰパケットの前記メインルート及び前記サブルートに関
する前記グループメンバ間通信用のルーティング情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を記憶する記憶手段と、
該記憶手段に格納されている前記ルーティング情報と前記ルート識別情報を設定、更新する情報管理手段と、
前記記憶手段に記憶されている前記ルーティング情報を参照して、ＩＰヘッダの送信元アドレスとして自端末の実ＩＰアドレスが、宛先アドレスとして送信先の端末の仮想ＩＰアドレスが設定された前記第２のＩＰパケットに、グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダを付加して、前記第１のＩＰパケットを作成する第１のパケット作成手段と、
該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、自装置を収容しているパケット中継装置に送信すると共に、前記パケット中継装置から前記第１のＩＰパケットを受信する送受信手段と、
該送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除し、次に、前記記憶手段に記憶されている前記ルーティング情報を参照して前記第２のＩＰパケットを作成する第２のパケット作成手段と、
を備えることを特徴とする端末装置。
【請求項５】
請求項４記載の端末装置であって、
前記送受信手段は、有線通信用の通信手段と無線通信用の通信手段を備え、前記パケット中継装置との前記第１のＩＰパケットの送受信を、該有線通信用通信手段と該無線通信用通信手段を利用して行う。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークで接続された任意のホストを仮想的にグループ化し、閉域網を提供する技術に関する。
【背景技術】
【０００２】
近年、ネットワークのＩＰ(Internet Protocol)化が進展している。最近のＩＰネットワークでは、パーソナルコンピュータ（以下、ＰＣと略記する）以外のホストも接続されるようになってきている。ここで、ＰＣ以外のホストとは、ＩＰ通信が可能な家電製品等の機器の総称である。
【０００３】
ＩＰネットワークに接続されるホストは、これまでは高機能なＰＣが主体であったが、ＩＰ対応の家電製品（以下、ＩＰ対応家電製品と記載）も接続されるようになってきている。このため、ＩＰネットワークの利用形態は、ＩＰ対応家電製品の制御や、ＩＰ対応家電製品間でのコンテンツの送受信まで広がっている。このため、ＩＰネットワークでは、ＩＰ通信が可能な機器（以下、ホストと記載）の数と種類が増加している。また、今までは接続されなかった低機能なホストも接続されるようになってきている。
【０００４】
このように、ＩＰネットワークに接続されるホスト数が増えると、ホストをグループ化して、ホスト管理を容易にする必要が生じる。また、低機能のホストの接続数が増加することによって、よりホストに負担の少ない単純な方法でのグループ間通信の実現する必要が生じる。
【０００５】
このため、グループ化をＶＰＮ(Virtual Private Network)で構築して、ホスト間の通信を実現する方法が想定される。この場合、ＶＰＮを設定したネットワーク間にセキュリティを考慮したトンネル接続等を設定する。ここで、トンネル接続とは、例えば、ＰＣ１‐ＧＷ１‐ＧＷ２‐ＰＣ２の接続構成であった場合、ＰＣ１とＰＣ２でVPNを構成する場合におけるＧＷ１‐ＧＷ２間のトンネル接続のことである。尚、ＰＣ１とＰＣ２はパーソナルコンピュータ、ＧＷ１とＧＷ２はゲートウェイである。このようにしてトンネル化されたネットワークでは、各ホストに仮のＩＰアドレスが割り当てられる。そして、その仮のＩＰアドレスを用いたＩＰルーティング処理により、ホスト間の通信が実現される。
【０００６】
本出願人は、ＩＰネットワークに接続されたホストをグループ化し、同じグループに属するホスト（グループメンバ）がグループ内で閉じたＩＰパケット通信を行うグループ内通信（グループメンバ間通信）に関する発明(第１の従来発明)をＰＣＴ出願している（特許文献１参照）。また、上記発明をさらに進展させた発明として、仮想閉域網を構築しているＧＷがその仮想閉域網内でブロードキャスト／マルチキャスト用のパケットを転送する機能を、ＧＷ同士内で閉じた仮想マルチキャストアドレス/仮想ブロードキャストアドレスにより転送できるパケット中継装置に関する発明（第２の従来発明）を日本特許庁に出願している（特許文献２参照）。また、さらには、トンネル化されたＧＷ間通信において、ＩＰパケットに独自のヘッダを付加することで、ＧＷ間のパケット転送効率を向上させると共に、トンネル化をＧＷ‐クライアント間まで行い、クライアント側がＩＰパケットに独自のヘッダを付加する手法に関する発明（第３の従来発明）についても日本特許庁に出願している（特許文献３参照）。上記第３の従来発明では、ＧＷ間の通信がトンネル化され、ＧＷ間で直接通信可能である。このため、ＩＰアドレスを使用せずにＧＷ間で効率的にパケット転送できるように、ＩＰヘッダのアドレス部を通番やグループ番号等（ＧＷ間ヘッダ）に変換或いは追加して転送するようにしている。また、更には、クライアントも、前記ＧＷ間ヘッダを処理可能にして、クライアントがＧＷとトンネルを確立できる
ようにしている。
【特許文献１】ＷＯ  ２００５／０２７４３８  Ａ１
【特許文献２】ＰＣＴ／ＪＰ２００５／００３７８８
【特許文献３】ＰＣＴ／ＪＰ２００６／３０５８４０
【非特許文献１】ＲＦＣ１６３１
【非特許文献２】ＲＦＣ２３９１
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記既出願の発明では、以下１）、２）に示すような問題があった。
１）ネットワーク的に近いクライアント（端末）同士やＧＷ同士での通信において、トンネル化の接続経路によっては、無駄なパケット転送が生じる。
【０００８】
２）最近では、１つのクライアント（端末）がＩＰ通信用に有線／無線等の多様な通信手段を備え、該クライアントがＩＰ通信する際には、それら複数の通信手段の中から使用する通信手段を選択できるようになってきている。しかしながら、現状では、該クライアントは、ＩＰ通信中に、それら複数の通信手段の切り替えをシームレスに行うことができない。
【０００９】
上記１）の問題点を、図面を参照しながら具体的に説明する。
図５０は、ＩＰネットワーク（ネットワークシステム）においてホストのグループ化を行ったシステムの一例である。
【００１０】
同図に示すＩＰネットワークは、ローカルネットワークとして、自宅のネットワーク３０００、実家のネットワーク４０００及び出張先のネットワーク５０００を備えている。自宅のネットワーク３０００は、ゲートウェイＧＷ−Ａ（以下、ＧＷ−Ａと略記）と、そのＧＷ−Ａに接続されたデスクトップ型パーソナルコンピュータであるＰＣ−Ａとノート型パーソナルコンピュータであるＮｏｔｅ−Ｃから構成されている。
【００１１】
実家のネットワーク４０００は、ゲートウェイＧＷ−Ｂ（以下、ＧＷ−Ｂと略記）と、そのＧＷ−Ｂに接続されたデスクトップ型パーソナルコンピュータであるＰＣ−Ｂから構成されている。出張先のネットワーク５０００は、ゲートウェイＧＷ−Ｃ（以下、ＧＷ−Ｃと略記）を備えている。
【００１２】
ここで、ＧＷ−ＡとＧＷ−Ｂは前記特許文献３に開示されているＧＷ間ヘッダが付加されたＩＰパケットを処理可能なパケット中継装置である。また、ＧＷ−Ｃは前記ＧＷ間ヘッダが付加されていない通常のＩＰパケットのみを処理可能なパケット中継装置である。Ｎｏｔｅ−Ｃは、前記特許文献３の第５実施形態として開示されているＧＷ間ヘッダが付加されたＩＰパケットを処理可能なクライアント（端末）である。
【００１３】
ＧＷ−ＡとＧＷ−Ｂは、ＣＥ６００１を介して通信回線で互いに接続されている。また、ＧＷ−ＣとＣＥ６００１はインターネット７０００を介して接続されている。ＣＥ６００１はＰＥ６０１１を経由してインターネット７０００と接続されている。ＧＷ−Ｃは、ＰＥ６０１２とＰＥ６０１３を経由してインターネット７０００と接続されている。ＧＷ−ＡとＧＷ−Ｂ間は前記ＧＷ間ヘッダが付加されたＩＰパケットによってトンネル化され、それらの間にはトンネル８０００が設定されている。
【００１４】
上記構成のＩＰネットワークにおいて、ネットワーク３０００内でＧＷ−Ａの配下にあるＰＣ−Ａ、Ｎｏｔｅ−Ｃと、ネットワーク４０００内でＧＷ−Ｂの配下にあるＰＣ−Ｂは、ＧＷ−ＡとＧＷ−Ｂによってグループ１（Ｇｒｏｕｐ１）に所属するように管理され
ている。ＧＷ−ＡとＧＷ−Ｂ間は、トンネル８０００を利用してユニキャス、マルチキャスト及びブロードキャストによるパケット通信が可能となっている。
【００１５】
ここで、ＣＥ６００１は、例えば、ＭＰＬＳ‐ＶＰＮ(Multiprotocol Label Switching
‐ Virtual Private Network)等において、エンド・ユーザ・ネットワークからＩＳＰ(Internet Service Provider)／キャリアのＭＰＬＳバックボーンと接続する出口である終端される機器であるＣＥ(Customer Edge)デバイスである。また、ＰＥ６０１１〜ＰＥ６０１３は、ＩＳＰ／キャリア内のＭＰＬＳネットワーク上で、エンド・ユーザ・ネットワークと接続される最も端に設置される機器であるＰＥ(Provider Edge)デバイスである。
【００１６】
図５１は、図５０に示すＩＰネットワークにおいて、Ｎｏｔｅ−Ｃが自宅のネットワークシステム３０００から出張先のネットワーク５０００に移動した状態を示す図である。このように、Ｎｏｔｅ−ＣがＩＰネットワーク内の他のネットワークに移動した場合、Ｎｏｔｅ−Ｃは、初期接続としてＧＷ−Ｃを利用して、ＧＷ−Ａとトンネル８００１を確立する（このとき、ＧＷ−ＡとＮｏｔｅ−Ｃ間にトンネル８００１が設定される）。Ｎｏｔｅ−ＣがＧＷ−Ｂへのパケット転送する場合、ＧＷ−Ａは、トンネル８０００、８００１を利用して、Ｎｏｔｅ−ＣとＧＷ−Ｂ間のパケット転送処理を確立させる。このとき、ネットワーク４０００内のＰＣ−Ｂがネットワーク５０００内のＮｏｔｅ−ＣにＦＴＰ(File Transfer Protocol)でファイル転送を行うと、パケットは、図５１中において破線で示すように、ＰＣ−ＢからＧＷ−Ｂ、ＣＥ６００１、ＧＷ−Ａ、ＣＥ６００１、ＰＥ６０１１、ＰＥ６０１３，ＰＥ６０１２、ＧＷ−Ｃを経由してＮｏｔｅ−Ｃに送られる。
【００１７】
この場合、ＧＷ−ＡとＣＥ６００１間でパケットが往復されるため、ＧＷ−ＡとＣＥ６００１間で無駄なパケット転送が発生する（不要なパケット経路９００１が形成される）。また、ＧＷ−Ａにもパケット転送処理の負荷がかかる。
【００１８】
このように、特許文献３の発明のパケット中継装置（ＧＷ）や端末装置（クライアント）は、ネットワーク的に近いクライアント同士やＧＷ同士での通信においては、トンネルの接続経路によって、無駄なパケット転送が発生してしまうという問題があった。
【００１９】
また、特許文献３の発明のＧＷやクライアントは、メインルートとサブルートを管理できないため、メインルートとサブルートの切り替えができず、ＧＷ間やＧＷとクライアント間のトンネル化経路を最適化できなかった。
【００２０】
本発明の目的は、ＧＷ間やＧＷとクライアント（端末）間のトンネル化経路を最適経路にシームレスに変更できるようにすることである。また、本発明の別の目的は、複数のＩＰ通信用の通信手段を備えるクライアント（端末）が、ＩＰ通信中に、それら複数の通信手段をシームレスに切り替えできるようにすることである。
【課題を解決するための手段】
【００２１】
本発明のパケット中継装置は、自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置を前提とする。
【００２２】
本発明のパケット中継装置の第１態様は、前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に転送する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自配下の端末と送受信する第２のＩＰパケットの前記メインルート及び前記サブルートに関する前記グループメンバ間通信用のルーティング
情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を記憶する記憶手段と、該記憶手段に格納されている前記管理情報と前記ルート識別情報を設定、更新する情報管理手段と、前記自配下の端末との間で、前記第２のＩＰパケットを送受信する第１の送受信手段と、該記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、前記第１の送受信手段により受信された前記第２のＩＰパケットに前記グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダが付加された前記第１のＩＰパケットを作成する第１のパケット作成手段と、該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、他のパケット中継装置に送信すると共に、他のパケット中継装置から自装置配下の端末宛の前記第１のＩＰパケットを受信する第２の送受信手段と、該第２の送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除して、前記第２のＩＰパケットを作成し、その第２のＩＰパケットを前記第１の送受信手段に出力する第２のパケット作成手段とを備える。
【００２３】
本発明のパケット中継装置の第１態様によれば、前記ルーティング情報と前記ルート識別情報を操作することにより、ネットワークシステムにおいて、パケット中継装置間の通信ルート（パケット転送経路）を、シームレスかつ容易に、切り替えることができる。したがって、転送効率の良い通信ルートを適宜選択することにより、パケット転送効率を向上できる。
【００２４】
本発明のパケット中継装置の第２態様は、前記パケット中継装置の第１態様が備える手段に加え、前記管理情報と前記ルート識別情報を更新することにより、前記第１のＩＰパケットの通信ルートを最適化する通信ルート最適化手段を、さらに備える。
【００２５】
本発明の第２態様のパケット中継装置によれば、ネットワークシステムにおいて、前記パケット転送経路を最適化することができる。
本発明のパケット中継装置の第３態様は、前記第１態様のパケット中継装置が備える手段に加え、自配下の端末が前記第２のＩＰパケットの通信に利用している通信ルートの使用状況を監視して、前記ルーティング情報と前記ルート識別情報を、前記通信ルートに配置されている他のパケット中継装置と同期して更新する同期更新手段を、さらに備える。
【００２６】
本発明の第４態様のパケット中継装置によれば、同じグループに属する端末を収容するパケット中継装置が、グループ間通信で使用するルートの状況の変化に応じて、迅速に、前記ルーティング情報とルート識別情報を同期更新処理できる。
【００２７】
本発明の端末装置は、自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置とＩＰパケットを通信する端末装置を前提とする。
【００２８】
本発明の端末装置の第１態様は、前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に送信する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自装置内部で送受信処理する第２のＩＰパケットの前記メインルート及び前記サブルートに関する前記グループメンバ間通信用のルーティング情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を記憶する記憶手段と、該記憶手段に格納されている前記
ルーティング情報と前記ルート識別情報を設定、更新する情報管理手段と、前記記憶手段に記憶されている前記ルーティング情報を参照して、ＩＰヘッダの送信元アドレスとして自端末の実ＩＰアドレスが、宛先アドレスとして送信先の端末の仮想ＩＰアドレスが設定された前記第２のＩＰパケットに、グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダを付加して、前記第１のＩＰパケットを作成する第１のパケット作成手段と、該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、自装置を収容しているパケット中継装置に送信すると共に、前記パケット中継装置から前記第１のＩＰパケットを受信する送受信手段と、該送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除し、次に、前記記憶手段に記憶されている前記ルーティング情報を参照して前記第２のＩＰパケットを作成する第２のパケット作成手段とを備える。
【００２９】
本発明の端末装置の第１態様によれば、前記ルーティング情報と前記ルート識別情報を更新することにより、前記パケット転送経路を、シームレスかつ容易に、切り替えできる。したがって、端末装置側で、転送効率の良い通信ルートを適宜選択して、パケット転送効率を向上することができる。
【００３０】
本発明の端末装置の第２態様は、上記端末装置の第１態様において、前記送受信手段は、有線通信用の通信手段と無線通信用の通信手段を備え、前記パケット中継装置との前記第１のＩＰパケットの送受信を、該有線通信用通信手段と該無線通信用通信手段を利用して行う。
【００３１】
本発明の端末装置の第２態様によれば、前記第１のＩＰパケットを通信する際、該有線通信手段と該無線通信手段を利用できる。したがって、前記第１のＩＰパケットを、有線ルートと無線ルートの両ルートを利用して通信できる。
【発明の効果】
【００３２】
本発明によれば、以下のような効果が得られる。
１）ゲートウェイ間またはクライアント（端末）とゲートウェイ間での通信において、通信経路を随時変更できるので、パケット転送効率を向上させることができる。
【００３３】
２）複数の通信手段を備えるクライアント（端末）が、通信中に、それら複数の通信手段をシームレスに切り替えて、通信経路を、随時、シームレスに切り替えることができる。
【発明を実施するための最良の形態】
【００３４】
以下、図面を参照しながら本発明の実施の形態について説明する。
［第１実施形態］
第１実施形態は、図５１に示した問題点を解消するためのＧＷ間通信経路の最適化手法を提供する。この手法は２段階に分けて実施される。この手法について、図１〜図３を参照しながら説明する。尚、図１〜図３において、図５１と同一の構成要素には同じ符号を付与しており、これらの構成要素の説明は省略する。
【００３５】
＜通信経路の最適化手法＞
｛最適化第一段階｝
図１は、第１実施形態におけるパケット転送経路の最適化第一段階の手法を示す図である。
【００３６】
図５１に示すようにＮｏｔｅ−Ｃが自宅のネットワーク３０００から出張先のネットワーク５０００に移動したとする。この場合、最適化経路への第一段階として、まず、図１に示すように、Ｎｏｔｅ−ＣとＧＷ−Ｂ間にＰ‐Ｐ(point-to-point)接続の通信経路を追加する。すなわち、Ｎｏｔｅ−ＣとＧＷ−Ｂ間にユニキャスト用のトンネル８３を確立する。このトンネル８３は、物理的には、ＧＷ−Ｂ、ＣＥ６００１、ＰＥ６０１１、ＰＥ６０１３、ＰＥ６０１２、ＧＷ−Ｃ、Ｎｏｔｅ−Ｃという通信経路として確立される。このトンネル確立は、前記特許文献３の発明の第５実施形態に開示されている手法を利用して行われる。すなわち、Ｎｏｔｅ−Ｃは前記特許文献の第５実施形態のクライアントと同様な構成をしており、ＧＷ−Ａとトンネルを確立できる。尚、第１実施形態では、ＧＷ−ＣからＣＥ６００１は前記通常のＩＰパケット（ＧＷ間ヘッダでカプセル化されていないＩＰパケット）しか処理できないため、図４に示すフォーマットのＩＰパケットを用いて、ユニキャストやブロードキャスト／マルチキャストでのパケット通信を行う。上記ＩＰパケットに詳細については、後述する。
【００３７】
これにより、ＰＣ−ＢからＮｏｔｅ−ＣへのＦＴＰ等によるユニキャスト用のパケットは、図１において破線の矢印で示すように、トンネル８３を流れる。このため、ＰＣ−ＢとＮｏｔｅ−Ｃ間でユニキャストパケット通信が行われる際のＧＷ−Ａにおける処理負荷が軽減される。また、ＣＥ６００１とＧＷ−Ａ間で不要なユニキャスパケットが流れないため、ＩＰネットワークネットワークにおける通信負荷（トラッフィック）も軽減される。
【００３８】
｛最適化第二段階｝
最適化経路への第二段階では、マルチキャストとブロードキャストの最適化を行う。
図２は、図１のネットワークシステムにおいてマルチキャストが行われる場合に生じる問題点を説明する図である。図２に示すように、例えば、Ｎｏｔｅ−ＣからＶｏＩＰ(Voice
over IP)がＰＣ−ＡやＰＣ−Ｂにマルチキャストで転送される場合を考える。この場合、図２中で破線の矢印で示すように、Ｎｏｔｅ−ＣからＧＷ−Ｂに送信されるパケットがＧＷ−Ａを中継するため、ＧＷ−ＡとＣＥ６００１間で余分なパケットが転送される。すなわち、ＧＷ−ＡとＣＥ６００１間に不要なパケット経路８１が生成されてしまう。
【００３９】
これを解決する方法は、ＧＷ−Ａ、ＧＷ−Ｂ及びＮｏｔｅ−Ｃが、実ネットワーク上で有効となるマルチキャストアドレスに参加することである。これにより、ＧＷ−ＡとＧＷ−Ｂの間にあるＣＥ６００１は、マルチキャストアドレスが指定されたパケットをコピーして、他の２方向（ＧＷ−ＡとＧＷ−Ｂへ）にルーティングする。
【００４０】
図３は、図１のネットワークシステムを最適化する手法を示す図である。図４は、図３のネットワークシステムにおいて、マルチキャストで使用するＩＰパケットのフォーマットを示す図である。
【００４１】
ここで、図４に示すパケット１０のフォーマットを説明する。図４に示すＩＰパケット１０は、ＩＰヘッダ１１とデータ部１２から構成されている。ＩＰヘッダ１１は、ＩＰｖ４やＩＰｖ６で規定された規格に準拠したＩＰヘッダである。図３のネットワークシステムの場合には、このＩＰヘッダ１１に、宛て先アドレスして「マルチキャストアドレス」が設定する。データ部１２内には、ＩＰヘッダ２１とデータ２２とから構成されるＩＰパケットをＧＷ間ヘッダ２３でカプセル化したパケット２０が格納されている。このように、ＩＰパケット１０は、前記パケット２０を、ＩＰヘッダ１１でカプセル化した構成となっている。
【００４２】
第１実施形態では、Ｎｏｔｅ−Ｃは、ＧＷ−ＡやＧＷ−Ｂとパケット通信を行う場合、上記ＩＰパケット１０をＧＷ−Ｃに送信する。Ｎｏｔｅ−ＣがＰＣ−ＡやＰＣ−Ｂとマル
チキャストを行う場合、上記ＩＰパケット１０は、マルチキャストアドレスが設定されたＩＰヘッダでカプセル化されているので、このＩＰパケット１０により、Ｎｏｔｅ−ＣとＧＷ−Ａ、ＧＷ−Ｂ間に仮想的なトンネル９１（以下、便宜上、仮想トンネル９１と呼ぶ）が形成される。この仮想トンネル９１は、Ｎｏｔｅ−Ｃ、ＧＷ−Ｃ、ＰＥ６０１２、ＰＥ６０１３、インターネット７０００、ＰＥ６０１１、ＣＥ６００１及びＧＷ−Ａ、ＧＷ−Ｂ間に仮想的に形成される。
【００４３】
第１実施形態では、上述した解決方法を採用して前記不要なパケット経路８１を無くすため、ＧＷ−Ａ、ＧＷ−Ｂ、Ｎｏｔｅ−Ｃが実ネットワーク上で有効となるマルチキャストアドレスに参加するようにする。Ｎｏｔｅ−ＣがＩＰヘッダ１１にマルチキャストアドレスが設定されたＩＰパケット１０をＧＷ−Ｃに送信すると、そのＩＰパケット１０は、前記仮想トンネル９１を経由してＣＥ６００１に転送される。ＣＥ６００１は、受信したＩＰパケット１０をコピーしてルーティング処理を行い、そのコピーしたＩＰパケットをＧＷ−ＡとＧＷ−Ｂに転送する。この結果、図３に示すように、Ｎｏｔｅ−ＣがＧＷ−ＡとＧＷ−Ｂに対してマルチキャストを行う場合、前記不要なパケット経路８１を解消できる。すなわち、図１に示すネットワークシステムを、図３に示すマルチキャスト用に最適化できる。
【００４４】
また、Ｎｏｔｅ−Ｃは、グループ１のメンバにブロードキャストを行う場合にも、上記パケット１０のＩＰヘッダ１１に「マルチキャストアドレス」を設定する。これにより、Ｎｏｔｅ−Ｃから送信されるブロードキャスト用パケットは、上記マルチキャスト用パケットの転送メカニズムと同様な方法で、ＣＥ６００１によりルーティング処理されて、ＧＷ−ＡとＧＷ−Ｂを経由して転送されブロードキャストとしてＰＣ−ＡとＰＣ−Ｂに送信される。ずなわち、ＣＥ６００１はＮｏｔｅ−Ｃが送信したパケット１０を受信すると、そのＩＰヘッダ１１を参照して、パケット１０がマルチキャストパケットであると認識する。そして、そのパケット１０をコピーして、そのコピーしたパケットをＧＷ−ＡとＧＷ−Ｂに転送する。
【００４５】
このように、ＩＰヘッダ１１でカプセル化されたＩＰパケット１０を導入することで、図３に示すように、Ｎｏｔｅ−ＣとＰＣ−Ａ及びＰＣ−Ｂ間のユニキャストは、トンネル８００１（Ｎｏｔｅ−ＣとＧＷ−Ａ間のトンネル）とトンネル８３を利用して行われる。また、Ｎｏｔｅ−ＣとＰＣ−Ａ及びＰＣ−Ｂ間のマルチキャスト／ブロードキャストは、仮想トンネル９１（Ｎｏｔｅ−ＣとＧＷ−Ａ、ＧＷ−Ｂ間のトンネル）を利用して行われる。尚、上記トンネル８００１、８３の確立は、前記特許文献３の発明に開示された手法を用いて行われる。
【００４６】
＜トンネル化の段階的切り替えの契機＞
第１実施形態では、上述した段階的なトンネルのルート切り替えは、例えば、下記１）、２）、３）のような契機で行われる。
【００４７】
１）ダイレクトに二段階で最適化
Ｎｏｔｅ−ＣのユーザがＦＴＰやマルチキャストによる電話会議等を行うヘビーユーザであることが予め想定されるような場合は、グループ１でのネットワーク構成時に、ダイレクトに上記最適化第二段階の構成を構築する。
【００４８】
２）パケット使用量に応じた段階的な構成変更（末端端末による判断）
Ｎｏｔｅ−ＣやＰＣ−Ｂ等のようなパケット通信経路の端に位置する末端端末が、ユニキャストやマルチキャストの状況を判断して、各最適化段階への移行を実施する。
【００４９】
３）パケット通過量に応じた段階的な構成変更（中継装置による判断）
ＧＷ−Ａのようなパケット通信経路においてパケットを他のＧＷに中継するＧＷ（中継装置）が中継するパケットの通過量を判断して、Ｎｏｔｅ−ＣやＰＣ−Ｂ等の末端端末に対して各最適段階への移行を要求し、それら末端端末が各最適化段階への移行を実施する。
【００５０】
ところで、Ｎｏｔｅ−Ｃが頻繁に移動するような場合、その都度、トンネル化の構築化や移行を行うと各ＧＷに対して余計な負荷がかっかってしまう。このため、このような場合には、あえて初期のトンネル化状態を維持する。
【００５１】
｛段階的切り替え処理フロー｝
＜２）のトンネル化の段階的切り替え処理フロー＞
上記２）の末端端末による段階的なトンネルのルート切り替えの契機処理を図５のフローチャートを参照しながら説明する。図５は、第１実施形態における末端端末による段階的なトンネルのルート切り替え契機処理のアルゴリズムを示すフローチャートである。ここで、末端端末は、図１のネットワークシステムにおいては、Ｎｏｔｅ−ＣやＰＣ−Ｂに相当する。
【００５２】
末端端末は、自身のパケット送受信を計上する（Ｓ１１）。次に、末端端末は、ユニキャストの使用量が予め定められた規定値（第１の規定値）を超えたか判断する（Ｓ１２）。末端端末は、前記第１の規定値を超えていると判断すれば（Ｓ１２、ＹＥＳ）ステップＳ１３の処理に移行し、超えていないと判断すれば（Ｓ１２、ＮＯ）、処理はステップＳ１５に移行する。
【００５３】
ステップＳ１３では、末端端末はパケット通信経路が最適化なし状態（前記最適化第１段階が実施されていない状態）であるか判断する。そして、末端端末が最適化なし状態と判断すれば（Ｓ１３、ＹＥＳ）、処理をステップＳ１４に移行する。一方、最適化状態である（前記最適化第１段階が実施されている状態である）と判断すれば、処理をステップＳ１１に戻す。ステップＳ１４では、図１に示す最適化段階１の状態に遷移する。
【００５４】
ステップＳ１５においては、末端端末はマルチキャスト／ブロードキャストの使用量が予め定められた規定値（第２の規定値）を超えたか判断する。末端端末は、前記第２の規定値を超えていないと判断すれば（Ｓ１５、ＮＯ）ステップＳ１１の処理に戻り、第２の規定値を超えていると判断すれば（Ｓ１５、ＹＥＳ）ステップＳ１６の処理に移行する。
【００５５】
ステップＳ１６では、末端端末はパケット通信経路が最適化なし状態（前記最適化第１段階が実施されていない状態）であるか判断する。そして、末端端末が最適化なし状態と判断すれば（Ｓ１６、ＹＥＳ）処理はステップＳ１７に移行し、最適化なし状態でない（前記最適化第１段階が実施されている状態）と判断すれば、処理はステップＳ１８に移行する。
【００５６】
ステップＳ１７では、図１に示す最適化第１段階の状態に遷移する。ステップＳ１８では、末端端末は最適化第１段階であるか判断する。そして、末端端末が最適化第１段階であると判断すると（Ｓ１８、ＹＥＳ）、処理をステップＳ１９に移行する。一方、末端端末が最適化第１段階でないと判断すると（Ｓ１８、ＮＯ）、処理をステップＳ１１に戻す。
ステップＳ１９では、図３に示す最適化第２段階の状態に遷移する。
【００５７】
＜３）のトンネル化の段階的切り替え処理フロー＞
上記３）の中継装置による段階的なトンネルのルート切り替えの契機処理を図６のフローチャートを参照しながら説明する。図６は、第１実施形態における中継装置による段階
的なトンネルのルート切り替え契機処理のアルゴリズムを示すフローチャートである。ここで、中継装置は、図１のネットワークシステムにおいてはＧＷ−Ａに相当する。
【００５８】
中継装置は、自身のパケット送受信を計上する（Ｓ３１）。次に、中継装置は、ユニキャストの使用量が予め定められた規定値（第３の規定値）を超えたか判断する（Ｓ３２）。中継装置は、前記第３の規定値を超えていると判断すれば（Ｓ３２、ＹＥＳ）ステップＳ３３の処理に移行し、超えていないと判断すれば（Ｓ３２、ＮＯ）、処理はステップＳ３５に移行する。
【００５９】
ステップＳ３３では、中継装置はパケット通信経路が最適化なし状態（前記最適化第１段階が実施されていない状態）であるか判断する。そして、中継装置が最適化なし状態と判断すれば（Ｓ３３、ＹＥＳ）、処理をステップＳ３４に移行する。一方、最適化状態である（前記最適化第１段階が実施されている状態である）と判断すれば、処理をステップＳ３１に戻す。ステップＳ３４では、図１に示す最適化段階１の状態に遷移する。
【００６０】
ステップＳ３５においては、中継装置はマルチキャスト／ブロードキャストの使用量が予め定められた規定値（第４の規定値）を超えたか判断する。中継装置は、前記第４の規定値を超えていないと判断すれば（Ｓ３５、ＮＯ）ステップＳ３１の処理に戻り、第４の規定値を超えていると判断すれば（Ｓ３５、ＹＥＳ）ステップＳ３６の処理に移行する。
【００６１】
ステップＳ３６では、中継装置はパケット通信経路が最適化なし状態（前記最適化第１段階が実施されていない状態）であるか判断する。そして、中継装置が最適化なし状態と判断すれば（Ｓ３６、ＹＥＳ）処理はステップＳ３７に移行し、最適化なし状態でない（前記最適化第１段階が実施されている状態）と判断すれば、処理はステップＳ３８に移行する。
【００６２】
ステップＳ３７では、図１に示す最適化第１段階の状態に遷移する。ステップＳ３８では、中継装置は最適化第１段階であるか判断する。そして、中継装置が最適化第１段階であると判断すると（Ｓ３８、ＹＥＳ）、処理をステップＳ３９に移行する。一方、中継装置が最適化第１段階でないと判断すると（Ｓ３８、ＮＯ）、処理をステップＳ３１に戻す。
ステップＳ３９では、図３に示す最適化第２段階の状態に遷移する。
【００６３】
［第２実施形態］
次に、本発明の第２実施形態について説明する。第２実施形態は、ＧＷ間経路を最適化経路へシームレスに変更する手法に関するものである。
【００６４】
｛ネットワーク構成｝
図７は、第２実施形態のネットワークシステムの全体構成図である。
第２実施形態のネットワークシステムは、実家のネットワーク１００、自宅のネットワーク２００及び出張先のネットワーク３００を備えている。これら３つのネットワークはコアネットワークであるインターネット４００によって互いに通信接続されている。
【００６５】
ネットワーク１００はホストとしてデスクトップ型パーソナルコンピュータＰＣ−Ａ（以下、ＰＣ−Ａと記載）を備えており、パケット中継装置としてゲートウェイＧＷ−Ａ（以下、ＧＷ−Ａと記載）を備えている。ＰＣ−ＡはＧＷ−Ａと接続されている。
ネットワーク２００はホストとしてサーバ２０１を備えており、パケット中継装置としてゲートウェイＧＷ−Ｂ（以下、ＧＷ−Ｂと記載）を備えている。サーバ２０１はＧＷ−Ｂと接続されている。
【００６６】
ネットワーク３００は、ホストとしてノート型パーソナルコンピュータＮｏｔｅ−Ｃ（以下、Ｎｏｔｅ−Ｃと記載）を備えており、パケット中継装置としてゲートウェイＧＷ−Ｃ（以下、ＧＷ−Ｃと記載）を備えている。Ｎｏｔｅ−ＣはＧＷ−Ｃと接続されている。
【００６７】
ＧＷ−ＡとＧＷ−Ｂは、ＣＥ４０１を介して接続されている。ＣＥ４０１は、ＰＥ４１１と通信回線によって接続されている。ＰＥ４１１は、通信回線によりインターネット４００と接続されている。ＧＷ−Ｃは、通信回線によりＰＥ４１２と接続されている。ＰＥ４１２は、通信回線によりインターネット４００と接続されている。尚、ＣＥ４０２はＣＥデバイスであり、ＰＥ４１１〜４１３はＰＥデバイスである。
【００６８】
上記構成のＩＰネットワークにおいて、ＰＣ−Ａとサーバ２０１とＮｏｔｅ−Ｃがグループ１（Ｇｒｏｕｐ１）としてグループ化されている。このグループ化は、前記特許文献３に開示された手法によって実施されている。
【００６９】
｛最適化経路への段階的なシームレス変更｝
図７に示すネットワークシステムでユニキャストによるパケット転送を行なう場合に、最適化経路へ段階的にシームレスに変更する場合を考える。この場合、一時的に２ルート（既存ルートと新規ルート）でのパケット転送が必要になる。
【００７０】
ここでは、ＧＷ−ＡとＧＷ−Ｂ間にトンネル５０１が確立され、ＧＷ−ＢとＧＷ−Ｃ間にトンネル５０２が確立されており、ネットワーク１００内のＰＣ−Ａとネットワーク３００内のＮｏｔｅ−Ｃ間に、前記トンネル５０１と前記トンネル５０２から成るルート（既存ルート）が設定されていたとする。この場合、新規に、ＧＷ−ＡとＧＷ−Ｃ間にトンネル５０３を確立し、ＰＣ−ＡとＮｏｔｅ−Ｃ間に、このトンネル５０３経由の新規ルートを設定する。
【００７１】
トンネル５０１は、ＧＷ−Ａ、ＣＥ４０１及びＧＷ−Ｂを結ぶ通信経路（通信路）である。トンネル５０２は、ＧＷ−Ｂ、ＣＥ４０１、ＰＥ４１１、インターネット４００、ＰＥ４１３、ＰＥ４１２及びＧＷ−Ｃを結ぶ通信経路である。トンネル５０３は、ＧＷ−Ａ、ＣＥ４０１、ＰＥ４１１、インターネット４００、ＰＥ４１３、ＰＥ４１２及びＧＷ−Ｃを結ぶ通信経路である。
【００７２】
ＧＷ−Ａは、Ｎｏｔｅ−Ｃへのユニキャスト用パケットを、前記既存ルートと前記新規ルート）の２つのルートに同時に送信する。このため、ＧＷ−Ｃは、前記２つのルートから同じユニキャストパケットを受信することになる。このため、ＧＷ−Ｃは、遅れて受信したほうのユニキャストパケットを廃棄する処理（遅達廃棄処理）等が必要となる。
【００７３】
図８は、第２実施形態のネットワークシステムにおける一時的な２ルート転送状態を示す図である。図８は、図７のネットワークシステムに対応しており、図７と同一の構成要素には同じ符号を付与している。
【００７４】
図８において、ＧＷ−Ａは、自身が収容するネットワーク（ローカルネットワーク）１００とグローバルネットワークＸとを接続している。ＧＷ−Ｂは、グローバルネットワークＸと自身が収容するネットワーク（ローカルネットワーク）２００とグローバルネットワークＹとを接続している。ＧＷ−Ｃは、グローバルネットワークＹと自身が収容するネットワーク（ローカルネットワーク）３００とを接続している。このように、ＧＷ−Ｂは、グローバルネットワークＸとグローバルネットワークＹを中継するゲートウェイとなっている。尚、後述する図１５、図２７、図３２のネットワークシステムも、図７と同様な構成となっている。
【００７５】
第２実施形態では、上記遅達廃棄処理を、図８に示すようなＧＷ間ヘッダ１１０が先頭に付加されたパケット１０１をユニキャスト用パケットとして使用することで実現する。
ＧＷ間ヘッダ１１０は、前記特許文献３に開示されたＧＷ間ヘッダに、さらに、「メイン／サブ（Ｍａｉｎ／Ｓｕｂ）」、「ルートコード（ＲｏｕｔｅＣｏｄｅ）」及び「パケット通番（ＰＮ）」を含むＧＷ間拡張ヘッダ１１２を付加した構成となっている。ここで、これら第２実施形態で追加する上記３項目の機能について説明する。
【００７６】
メイン／サブ：ルートの識別用の情報であり、２つのルートの内、どちらのルートを経由して送信されてきたパケットであるかを識別するために使用される。第２実施形態では、メインルートを「Ｍ」、サブルートを「Ｓ」で示す。
【００７７】
ルートコード：２つのルートで転送されていることを識別するためのコード。
第２実施形態施形態では、ＧＷ−ＡとＧＷ−Ｃ間に設けられた２ルートには「ＡＣ」を付与する。また、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃを接続する２ルートには「ＡＢＣ」というコードを付与する。
【００７８】
パケット通番：２つのルートに同時に転送するパケットに付与される通番。
着信先では、この通番を基に遅達破棄を行う。
ＧＷ間ヘッダ１１０は、上記３項目に加え、「転送通番（ＴＮ）」、「グループ通番（ＧＮ）」、「宛先通番（ＤＮ）」、「送信元通番（ＳＮ）」が設定される。これら４項目については、特許文献３に詳しい説明がある。尚、転送通番は、特許文献３では「転送通し番号」と表記されている。また、特許文献３では、グループ通番は「グループ通し番号」と、宛先通番は「宛先通し番号」と、送信元通番は「送信元通し番号」と表記されている。第２実施形態では、ＧＷ間ヘッダ１１０の内、前記特許文献３の発明で使用されている上記４項目から成る部分を「標準ＧＷ間ヘッダ１１１」と名づける。
【００７９】
ユニキャスト用パケット１０１は、ＧＷ間ヘッダ１１０、ＴＣＰ／ＩＰヘッダ１２０及びデータ（Ｄａｔａ）１３０から構成される。
第２実施形態のＧＷは、前記特許文献３の発明のＧＷが備えるテーブルに加え、「ルートコードテーブル（ＲｏｕｔｅＣｏｄｅテーブル）」を新たに備える。また、特許文献３の発明のＧＷが保有している「グローバルテーブル」と「受信転送テーブル」のレコードに「サブ内部管理転送通番（ＳｕｂＬＴＮ）」を追加する。
【００８０】
図９、図１０、図１１に、それぞれ、図８に示すＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃが保有するテーブル（内部テーブル）を示す。
図９に示すように、ＧＷ−Ａは、ローカルテーブル（Ｌｏｃａｌテーブル）２００Ａ、ルートコードテーブル（ＲｏｕｔｅＣｏｄｅテーブル）２１０Ａ、グローバルテーブル（Ｇｒｏｂａｌテーブル）２２０Ａ、受信転送テーブル２３０Ａ、送信転送テーブル２４０Ａを備える。ＧＷ−Ｂ、ＧＷ−Ｃも、ＧＷ−Ａと同様に、ローカルテーブル（２００Ｂ、２００Ｃ）、ルートコードテーブル（２１０Ｂ、２１０Ｃ）、グローバルテーブル（２２０Ｂ、２２０Ｃ）、受信転送テーブル（２３０Ｂ、２３０Ｃ）及び送信転送テーブル（２４０Ｂ、２４０Ｃ）を備える（図１０、図１１参照）。
【００８１】
ローカルテーブル２００（２００Ａ、２００Ｂ、２００Ｃ）は、各エントリのレコードに「実ＩＰアドレス（Ｒ−ＩＰ）」、「発信元通番（ＳＮ）」及び「グループ通番（ＧＮ）」を格納する。ルートコードテーブル２１０（２１０Ａ、２１０Ｂ、２１０Ｃ）は、各エントリのレコードに「ルートコード（ＲｏｕｔｅＣｏｄｅ）」を格納する。グローバルテーブル２２０（２２０Ａ、２２０Ｂ、２２０Ｃ）は、各エントリのレコードに「仮想ＩＰアドレス（Ｖ−ＩＰ）」、「宛先通番（ＤＮ）」、「グループ通番（ＧＮ）」、「内部管理通番（ＬＴＮ）」及び「サブ内部管理通番（ＳｕｂＬＴＮ）」を格納する。受信転送
テーブル２３０（２３０Ａ、２３０Ｂ、２３０Ｃ）は、「転送通番（ＴＮ）」、「ローカル転送通番（ＬＴＮ）」及び「サブローカル転送通番（ＳｕｂＬＴＮ）」を格納する。送信転送テーブル２４０（２４０Ａ、２４０Ｂ、２４０Ｃ）は、「内部管理転送通番（ＬＴＮ）」、「転送通番（ＴＮ）」、「グループ通番（ＧＮ）」及び「出力ポート値（ＯＵＴＰＵＴ  ＰＯＴＲ）」を格納する。
【００８２】
上記テーブル２００〜２４０の内、ローカルテーブル２００及び送信転送テーブル２４０のレコード構成は、前記特許文献３の同一名称のテーブルと同様な構成となっており、それらのテーブルのレコード構成については、特許文献３に詳しく記載されている。
【００８３】
第２実施形態のグローバルテーブル２２０及び受信転送テーブル２３０のレコードは、特許文献３に開示されたレコードの最後に、「サブ内部管理転送通番（サブ内部管理転送識別番号）」を追加した構成となっている。また、第２実施形態のＧＷは、特許文献３のＧＷが備えていないルートコードテーブル２１０を備えている。
【００８４】
サブ内部管理転送通番は、サブルートのルーティング情報を管理するために導入されたものであり、内部管理転送通番（内部管理転送識別番号）と同様の仕組みで、サブルートのルーティング情報を管理するために使用される。すなわち、本実施形態では、内部管理転送通番がメインルートのルーティング情報を管理するために用いられ、サブ内部管理転通番がサブルートのルーティング情報を管理するために用いられる。
【００８５】
受信転送テーブル２３０は、ＧＷが、外部ネットワーク（グローバルネットワーク）から受信したＩＰパケットを、ＧＷ配下のネットワーク（ローカルネットワーク）にルーティング処理するために使用されるテーブルである。送信転送テーブル２４０は、ＧＷが、自配下のネットワーク内の端末が送信してきたＩＰパケットを前記外部ネットワークにルーティング処理するために使用されるテーブルである。
【００８６】
ローカルテーブル２００は、ＧＷが、自配下のネットワーク内の端末に割り当てられた「実ＩＰアドレス（Ｒ−ＩＰ）」と「発信元通番（ＳＮ）」、及び「該端末が属するグループの番号（グループ通番）」を管理するために使用されるテーブルである。グローバルテーブル２２０は、ＧＷが、自配下のネットワーク内の端末に割り当てられた「仮想ＩＰアドレス（Ｖ−ＩＰ）」と「宛先通番（ＤＮ）」、及び、「該端末が属するグループの番号（グループ通番）」、さらには、「該端末が送信したＩＰパケットが転送されるメインルートの内部管理転送通番（ＬＴＮ）」と「該端末が送信したＩＰパケットが転送されるサブルートの内部管理転送通番（ＳｕｂＬＴＮ）」を管理するために使用されるテーブルである。
【００８７】
図８を参照しながら、図７のネットワークシステムにおけるユニキャストパケットの２ルート転送を説明する。
本例では、メインルートをトンネル５０１とトンネル５０２とから構成されるルートとし、サブルートをトンネル５０３で構成されるルートとする。ＧＷ−Ａは、出力ポートとしてＧＷ−Ｂ向けのポート（出力ポートＡＢ）とＧＷ−Ｃ向けのポート（出力ポートＡＣ）を備える。メインルートとサブルートは上記のようになっているため、ＧＷ−Ａは、メインルート向けのパケットは出力ポートＡＢから、サブルート向けのパケットは出力ポートＡＣから送信する。
【００８８】
｛処理概要｝
・ＧＷ−Ａは、新たに作成したトンネル５０３用の出力ポートＡＣに関するレコードを送信転送テーブル２４０Ａに追加する（図９（ｅ）参照）。
【００８９】
・ＧＷ−Ａは、ユニキャストパケットを送るホストの仮想ＩＰアドレス（“ｃＤ”）に対してサブルートとなるルートの通番（“５”）を設定する。
・ＧＷ−Ａは、上記仮想ＩＰアドレス（“ｃＤ”）がＤＮとなっているユニキャストのＩＰパケットに対して、ＧＷ間ヘッダ１１０を追加する。そして、このＧＷ間ヘッダ１１０が付加されたパケット１０１をメインルートとサブルートの２つのルートに送信する。
【００９０】
・ＧＷ−Ｂは、標準ＧＷ間ヘッダ１１１のみ処理して転送処理を行う（前記特許文献３参照）。
・ＧＷ−Ｃは、メインルートとサブルートの２つのルートから受信したパケット１０１のＧＷ間ヘッダ１１０に設定されている「ＧＮ」、「ＤＮ」、「ＳＮ」、「ルートコード」、「ＰＮ」をチェックし、遅達廃棄処理を行う。
【００９１】
｛内部テーブルの設定｝
図１２は、第２実施形態の２ルート決定時おけるＧＷ−Ａの内部テーブル設定処理を示すフローチャートである。図１２を参照しながら、ＧＷ−ＡがＧＷ−Ｃとの間に２つのユニキャストパケットの通信用ルートを設定する場合の処理手順を説明する。ここでは、図８の例を取り上げながら説明する。尚、この処理を開始する前に、ＧＷ−Ａは、ＧＷ−Ｃとの間にトンネルを確立しているものとする。
【００９２】
ＧＷ−Ａは、ユニキャスト用の２つのルートを決定する（Ｓ４０）。図８の例では、ＧＷ−ＡとＧＷ−Ｃ間に２つのルートを決定する。すなわち、出力ポートＡＢを利用するルートと出力ポートＡＣを利用するルートの２つのルートを決定する。
【００９３】
ＧＷ−Ａは、ユニキャストパケット送信用の通信経路のルートコードをルートコードテーブル２１０Ａに設定する（Ｓ４１）。図８の例では、ＧＷ−ＡとＧＷ−Ｃ間のトンネルを通信経路とするため、“ＡＣ”というルートコードをルートコードテーブル２１０Ａに設定する。
【００９４】
次に、ユニキャストの送信相手側のゲートウェイが管理しているローカルテーブル２００からユニキャストの宛先情報（実ＩＰアドレスと発信元通番のペア）を抽出する（Ｓ４２）。図８の例では、実ＩＰアドレス（“ｃ”）と発信元通番（“１０３”）を抽出する。
【００９５】
続いて、送信転送テーブル２４０Ａを参照して、送信転送テーブル２４０Ａに新規ルートの内部管理転送通番（ＬＴＮ）が設定されているか調べる（Ｓ４３）。そして、その新規ルートの内部管理転送通番が設定されていなければ（Ｓ４３、ＮＯ）ステップＳ４４に処理を移行し、該内部管理転送通番が設定されていれば（Ｓ４３、ＹＥＳ）ステップＳ４５の処理に移行する。
【００９６】
ステップＳ４４においては、送信転送テーブル２４０Ａに、新規ルート用の内部管理転送通番と、それに対応する転送通番、グループ番号（以下、グループ通番とも呼ぶ）及び出力ポート値で構成されるレコードを追加する。そして、ステップＳ４４の処理が終了すると、ステップＳ４５の処理に移行する。
【００９７】
図８の例では、ＧＷ−Ａは、送信転送テーブル２４０Ａに、内部管理転送通番（“５”）、転送通番（“１”）、グループ番号（“２０”）及び出力ポート値（“ＡＣ”）から成るレコードを追加する。
【００９８】
ステップＳ４５では、ステップＳ１２で抽出したユニキャスト宛先情報（実ＩＰアドレスと発信元通番のペア）を基に、グローバルテーブル２２０Ａの該ユニキャスト宛先情報
に対応するサブ内部管理転送通番（ＳｕｂＬＴＮ）に前記新規ルートの内部管理転送通番を設定する。ＧＷ−Ａは、このステップＳ４５の処理を、ステップＳ４２で抽出した全てのユニキャスト宛先情報について行う。
【００９９】
図８の例では、グローバルテーブル２２０Ａの「ｃＤ」と“１０３”が格納されているレコードのサブ内部管理転送通番項目に“５”が設定される。
ここでは、ＧＷ−Ａについて説明したが、ＧＷ−Ｃも、図１２とほぼ同様の処理を行い、ルートコードテーブル２１０Ｃ、グローバルテーブル２２０Ｃ及び送信転送テーブル２４０Ｃを更新する。
【０１００】
｛単純なルート切り替え方法｝
図７に示すようにＧＷ−ＡとＧＷ−Ｃ間で２ルート転送を行っているものとする。すなわち、ＧＷ−ＡとＧＷ−Ｃが、トンネル５０１とトンネル５０２で構成されるメインルートとトンネル５０３によるサブルートを利用して２ルート転送を行っているものとする。この場合に、ＧＷ−Ｃが、上記２つのルートからの受信パケット量を基に、ＧＷ−Ａへの転送ルートを１つのルートの転送に切り替える方法について、図１３のフローチャートを参照しながら説明する。
【０１０１】
図１３は、第２実施形態においてＧＷ−Ｃが実行するルート切り替え方法の処理手順を示すフローチャートである。
ＧＷ−Ｃは、前記メインルートと前記サブルートから受信するユニキャストのパケットを計数する（Ｓ５１）。そして、それぞれのルートにおいて、計数したパケット数が予め定められた規定値以上であるか判断し（Ｓ５２）、上記規定値以上でなければ処理をステップＳ５１に戻す。一方、上記規定値以上であれば、処理をステップＳ５３に移行する。
【０１０２】
ステップＳ５３では、メインルートとサブルートを入れ替える処理を行い、ＧＷ−Ｃとのユニキャストの通信経路を該サブルートのみにする。すなわち、該サブルートを新たなメインルートとし、このメインルートを利用してＧＷ−Ｃとユニキャストを行う。
【０１０３】
ステップＳ５３において、ＧＷ−Ｃは、グローバルテーブル２２０Ｃの発信元通番がＧＷ−Ａ（“１０１”）となっているレコードの内部管理転送通番とサブ内部管理転送通番を入れ替える処理を行う。すなわち、該レコードの内部管理転送通番を“５”に切り替える。
【０１０４】
ＧＷ−Ｃは、例えば、メインルートとサブルートからそれぞれ２０パケットを受信後に、メインルートとサブルートを切り替え、通信経路を１つのルートに一本化する。
ＧＷ−Ａも、ＧＷ−Ｃと同様に、グローバルテーブル２２０Ａの宛先通番がＧＷ−Ｃとなっているレコードの内部管理転送通番とサブ内部管理転送通番を入れ替える処理を行う。すなわち、グローバルテーブル２２０Ａの宛先通番がＧＷ−Ｃ（“１０３”）となっているレコードの内部管理転送通番をサブ内部管理転送通番に切り替える。具体的には、内部管理転送通番を“５”に設定する。
【０１０５】
このように、ＧＷ−Ｃは、２ルートからパケットを受信し、遅達廃棄処理を行いながら、実際の採用ルートを決定することが可能である。また、本実施形態では、ユニキャストを行っているゲートウェイのグローバルテーブル２２０の内部管理転送通番とサブ内部管理転送通番を入れ替える処理を行うだけで、簡単・迅速にメインルートとサブルートを切り替えることができる。
【０１０６】
｛転送率の良いルートを残す方法｝
図７に示すように、ＧＷ−Ｃが、ＧＷ−Ａとメインルートとサブルートの２つのルート
でユニキャストしている場合に、ユニキャストを転送率の良い方のルートのみで行う方法について説明する。
【０１０７】
図１４は、第２実施形態において、ＧＷ−Ｃが、上記２つのルートでＧＷ−Ａとユニキャストを行っている場合に、上記２つのルートの遅達廃棄率を監視して、転送率が良い方をメインルートとして残す方法の処理手順を示すフローチャートである。
【０１０８】
ＧＷ−Ｃは、上記２つのルートからの受信パケットを計数する（Ｓ６１）。そして、上記２つのルートのそれぞれから予め定められた規定値以上のパケットを受信したか判断する（Ｓ６２）。ステップＳ６２において、規定値（例えば、２０個）以上のパケットを受信していいと判断すれば（Ｓ６２、ＮＯ）処理をステップＳ６１に戻し、規定値以上のパケットを受信していると判断すれば（Ｓ６２、ＹＥＳ）ステップＳ６３に移行する。
【０１０９】
ステップＳ６３では、メインルートとサブルートのそれぞれについて、前記受信パケットの遅達廃棄率を調べる。そして、メインルートの方がサブルートよりもの受信パケットの遅達廃棄率が高いか判断する（Ｓ６４）。そして、メインルートでの受信パケットの遅達廃棄率の方が高いと判断示した場合には（Ｓ６４、ＹＥＳ）処理をステップＳ６５に移行し、サブルートでの受信パケットの遅達廃棄率の方が高いと判断した場合には処理をステップＳ６６に移行する。
【０１１０】
ステップＳ６５では、メインルートとサブルートを切り替え、該サブルートを新たなメインルートにし、ユニキャストをこのメインルートに一本化する。ステップＳ６６では、サブルートを削除し、メインルートを残し、ユニキャストを該メインルートで行う。
【０１１１】
ステップＳ６５の処理は、図１３のステップＳ５３の処理と同様である。すなわち、ＧＷ−ＣとＧＷ−Ａは、ステップＳ５３と同様な処理を行い、グローバルテーブル２２０と送信転送テーブル２４０を更新する。
【０１１２】
ステップＳ６６では、ＧＷ−Ｃは、グローバルテーブル２２０Ｃの発信元通番がＧＷ−Ａ（“１０１”）となっているレコードに設定されているサブ内部管理転送通番（“５”）を削除する。また、送信転送テーブル２４０Ｃから、上記削除されたサブ内部管理転送通番（“５”）に対応するレコードを削除する。ＧＷ−Ａも、ＧＷ−Ｃと同様な処理を行い、内部管理転送通番（“５”）をグローバルテーブル２２０Ａから削除すると共に。送信転送テーブル２４０Ａから、上記内部管理転送通番（“５”）に対応するレコードを削除する。
【０１１３】
{メインルートからサブルートへの切り替えによるルート一本化}
図１５は、ＧＷ−ＡとＧＷ−Ｃ間で、図８に示すようにメインルートとサブルートを用いて２ルートでユニキャストを行っていた状態において、メインルートからサブルートへの切り替え（ルート一本化）が発生した状態を示す図である。このルート一本化は、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃが、内部管理転送通番とサブ内部管理転送通番の切り替えや、受信転送テーブル２３０、送信転送テーブル２４０から不要な転送通番（ＴＮ）や内部管理転送通番（ＬＴＮ）を削除することで実施される。
【０１１４】
図１６、１７、１８は、それぞれ、図１５に示すようなルート切り替えが行われた際のＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃの内部テーブルの状態を示す図である。
図１５に示すように、ＧＷ−ＡとＧＷ−Ｃ間に確立されたトンネル５０３（図３参照）を通信経路とするルートがサブルートからメインルートに切り替わり、この新たなメインルートのみでＧＷ−ＡとＧＷ−Ｃ間でユニキャストが行われる場合、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、それぞれの内部テーブルを、それぞれ、図１６、１７、１８に示す状態
に変更する。
【０１１５】
ＧＷ−Ａは、ルートコードテーブル２１０Ａに設定されていたルートコード（“ＡＣ”）を削除する。また、グローバルテーブル２２０Ａにおいては、内部管理転送通番（“２”）とサブ内部管理転送通番（“５”）を交換した後、サブ内部管理転送通番を削除する。この結果、内部管理転送通番に“５”が設定される（図１６（ｃ）参照）。また、送信転送テーブル２４０Ａから上記グローバルテーブル２２０Ａにおいて削除された内部管理転送通番（“２”）に対応するレコードを削除する（図１６（ｅ）参照）。
【０１１６】
ＧＷ−Ｂは、メインルートが削除されたため、そのメインルートに関係する転送通番に関するレコードを削除する。すなわち、受信転送テーブル２３０Ｂから、“２”と“５”の転送通番に対応するレコードを削除する（図１７（ｄ）参照）。
【０１１７】
ＧＷ−Ｃは、ルートコードテーブル２１０Ｃに設定されているルートコード（“ＡＣ”）を削除する。また、グローバルテーブル２２０Ｃ内の宛先通番が“１０１”となっているレコードにおいて、内部管理転送通番“１”とサブ内部管理転送通番（“５”）を入れ替えた後、サブ内部管理転送通番（“１”）を削除する。さらに、送信転送テーブル２４０Ａから、上記削除されたサブ内部管理転送通番（“１”）に対応するレコードを削除する。
【０１１８】
以上のようなＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃの内部テーブル更新処理により、ＧＷ−ＡとＧＷ−Ｃ間のユニキャスト用の通信経路がトンネル５０３に一本化される。
＜ＧＷのテーブル設定処理フロー＞
上述した図１５に示すＧＷ−ＡとＧＷ−Ｂ間の通信経路を一本化する際のＧＷ−ＡとＧＷ−Ｂの内部テーブル処理を、ぞれぞれ、図１９と図２０を参照しながら説明する。
【０１１９】
｛ＧＷ−Ａの内部テーブル処理｝
図１９は、第２実施形態におけるＧＷ−Ａの内部テーブル設定処理の手順を示すフローチャートである。
【０１２０】
ＧＷ−Ａは、ＧＷ−Ｃ向けのルートを１つのルートに決定する（Ｓ７０）。図１５の例では、出力ポートＡＣを利用するルート、すなわち、サブルートに決定する。この処理で、グローバルテーブル２２０Ａの仮想ＩＰアドレス（Ｖ−ＩＰ）が“ｃＤ”となっている行の内部管理転送通番（ＬＴＮ）とサブ内部管理転送通番（ＳｕｂＬＴＮ）を交換し、その後で、サブ内部管理転送通番を削除する。
【０１２１】
ＧＷ−Ａは、ルートコードテーブル２１０Ａからルートコードを削除する（Ｓ７１）。図１５の例では、“ＡＣ”というルートコードが削除される（図１６（ｂ）参照）。
次に、グローバルテーブル２２０Ａから削除された内部管理転送通番を抽出する（Ｓ７２）。図１５の例では、“２”という内部管理転送通番が抽出される。
【０１２２】
続いて、ステップＳ７２で抽出した全ての内部管理転送通番について、ステップＳ７３〜Ｓ７６の処理を行う。尚、以下の説明では、ステップＳ７２で抽出された個々の内部管理転送通番を、便宜上、「抽出内部管理転送通番」と呼ぶ。
【０１２３】
ステップＳ７２では、抽出内部管理転送通番がグローバルテーブル２２０Ａ以外のテーブルで定義（設定）されているか判断する。そして、定義されていなければ処理をステップＳ７４に移し、定義されていれば処理をステップＳ７６に移す。
【０１２４】
ステップＳ７４では、送信転送テーブル２４０Ａから、抽出内部管理転送通番が設定さ
れている行（レコード）を削除する。図１５の例では、送信転送テーブル２４０Ａの２行目のレコードが削除される（図１６（ｅ）参照）。
【０１２５】
続いて、ステップＳ７４で削除したレコードの出力ポート項目に設定されていた出力ポートで定義されている対向ＧＷに対して、転送通番の削除依頼を行う（Ｓ７５）。図１５の例では、ＧＷ−Ｂに対して、“２”という転送通番の削除を依頼する。尚、以下の説明では、上記削除依頼のあった転送通番を、便宜上、「対象転送通番」と呼ぶことにする。
【０１２６】
一方、ステップＳ７３において、抽出内部管理転送通番が他のテーブルで定義されていない場合には、該抽出内部管理転送通番が他のルートで使用中であるため、その抽出内部管理転送通番に関する削除処理は行わない（Ｓ７６）。
【０１２７】
｛ＧＷ−Ｂの内部テーブル処理｝
図２０は、図１５に示すようにルート一本化がなされた場合に、ＧＷ−Ｂが行う内部テーブルの設定処理の手順を示すフローチャートである。ＧＷ−Ｂは、図１９のステップＳ７６の処理により、ＧＷ−Ａから“２”という転送通番の削除依頼を受け取ると、図２０のフローチャートに示す処理を実行する。
【０１２８】
ＧＷ−Ｂは、ＧＷ−Ａから転送通番の削除依頼を受け取る（Ｓ８０）。図１５の例では、転送通番（“２”）の削除依頼を受け取る。
ＧＷ−Ｂは、上記削除依頼のあった転送通番が同じグループの他のＧＷで設定されているかどうかについて情報を収集する（Ｓ８１）。図１５の例では、ＧＷ−ＡとＧＷ−Ｃについて、ＧＷ−Ｂ向けの前記転送通番（“２”）の情報を収集する。
【０１２９】
そして。上述情報収集結果に基づき、他のＧＷで対象転送通番が使用されているか判断する（Ｓ８２）。そして、該対象転送通番が使用されていなければ、処理をステップＳ８３に移す。一方、該対象転送通番が使用されていれば、処理をステップＳ８８に移す。
【０１３０】
ステップＳ８３では、前記対象転送通番が設定されているレコードを受信転送テーブル２３０Ｂから削除する。図１５の例では、受信転送テーブル２３０Ｂから２行目のレコードを削除する（図１７（ｄ）参照）。
【０１３１】
続いて、ステップＳ８３で削除された対象転送通番に対応する内部管理転送通番は“Ｌｏｃａｌ”であるか判断する（Ｓ８４）。そして、該内部管理転送通番が“Ｌｏｃａｌ”でなければステップＳ８５に処理を移し、“Ｌｏｃａｌ”であれば本フローチャートの処理を終了する。図１５の例では、前記内部管理転送通番は“Ｌｏｃａｌ”でないので、ステップＳ８５に処理を移す。
【０１３２】
ステップＳ８５では、前記内部管理転送通番（以下、対象内部管理転送通番）が他のテーブル（グローバルテーブル２２０）で定義（設定）されているか判断する。そして、他のテーブルで定義されていなければ処理をステップＳ８６に移し、他のテーブルで定義されていれば処理をステップＳ８９に移す。図１５の例では、前記内部管理転送通番（“２”）がグローバルテーブル２２０Ｂで定義（設定）されているので、処理をステップＳ８９に移す。
【０１３３】
ステップＳ８６では、送信転送テーブル２４０Ｂから前記対象内部管理転送通番が設定されている行（レコード）を削除する。そして、その削除した内部管理転送通番（削除内部管理転送通番）に対応する出力ポート向けのＧＷに対して、該削除内部管理転送通番の削除依頼を行う（Ｓ８７）。
【０１３４】
｛各ＧＷの構成｝
図２１は、第２実施形態のＧＷ（ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ）の構成例を示す図である。
【０１３５】
同図に示すＧＷ６００は、端末（ローカル側ネットワーク）と接続されるローカル側インターフェース６１１と、ＣＥやＰＥ、または対向するＧＷと接続されるグローバル側インターフェース６１２を備えている。また、ＧＷ間ヘッダ＆ＮＡＴ処理部６１３（以下、ヘッダ処理部６１３と略記）、転送通番処理部６１４、ＩＰルーティング処理部６１５、トンネル処理部６１６、パケット送受信部６１７、仮想ＩＰ＆Ｇｒｏｕｐ＆転送通番管理テーブル６１８（以下、管理テーブル６１８と略記）、転送通番テーブル６１９及びＩＰルーティングテーブル６２０を備えている。
【０１３６】
本実施形態のＧＷは、上記構成要素に加え、ルート管理処理部６３１、ルートコードテーブル６３２及び遅達管理バッファ６３３を備えている。本実施形態の特徴は、これらの構成要素６３１〜６３３を備えていることであり、これら３つの構成要素６３１〜６３３の作用により、ＩＰパケットに対するＧＷ間拡張ヘッダ１１２の付加やルートコードの管理などを実現している。
【０１３７】
管理テーブル６１８は、図９〜図１１と図１６〜図１８におけるローカルテーブル２００とグローバルテーブル２２０に対応している。転送通番テーブル６１９は、図９〜図１１と図１６〜図１８の受信転送テーブル２３０と送信転送テーブル２４０に対応している。
【０１３８】
第２実施形態のＧＷ６００が処理するパケットは４種類がある。「ＩＰパケットにＧＷ間標準ヘッダ１１１とＧＷ間拡張ヘッダ１１２が付加されたパケット」（以下、ＧＷ間拡張ヘッダ付パケットと記載）、「ＩＰパケットにＧＷ間標準ヘッダ１１１が付加されたパケット」（以下、ＧＷ間標準ヘッダ付パケットと記載）、「ＩＰパケットにＧＷ間標準ヘッダ１１１が付加されたＧＷ中継用のパケット」（以下、ＧＷ間標準ヘッダ付中継用パケットと記載）、「通常のＩＰパケット（ＧＷ間標準ヘッダ１１１及びＧＷ間拡張ヘッダ１１２が付加されていないＩＰパケット）」（以下、通常ＩＰパケットと記載）の４つである。
【０１３９】
これら４種類のパケットは、ＧＷ６００内部で以下の流れで処理される。尚、「←→」は双方向の流れを示す。
ＧＷ間拡張ヘッダ付パケット：パケット送受信部６１７←→トンネル処理部６１６←→ルート管理処理部６３１←→転送通番処理部６１４←→ヘッダ処理部６１３
ＧＷ間標準ヘッダ１１１：パケット送受信部６１７←→トンネル処理部６１６←→転送通番処理部６１４←→ヘッダ処理部６１３
ＧＷ間標準ヘッダ付中継用パケット：パケット送受信部６１７←→トンネル処理部６１６←→転送通番処理部６１４←→トンネル処理部６１６←→パケット送受信部６１７
通常ＩＰパケット：パケット送受信部６１７←→トンネル処理部６１６←→ＩＰルーティング処理部６１５←→ヘッダ処理部６１３
ヘッダ処理部６１３は、ローカル側インターフェース６１１からＩＰパケット（以下、ローカルバス側ＩＰパケットと記載）を受信すると、それが通常ＩＰパケットであるか、グループメンバ間で送受信されるＩＰパケット（以下、グループメンバ間通信ＩＰパケットと記載）であるか判断する。この判断は、ローカルパス側ＩＰパケットの宛先アドレス（ＤＡ）が管理テーブル６１８に設定されているか否かによってなされる。すなわち、該宛先アドレスが管理テーブル６１８（前記グローバルテーブル）に設定されていればグループメンバ間通信ＩＰパケットであると判断し、設定されていなければ通常ＩＰパケットであると判断する。そして、ローカルパス側ＩＰパケットが通常ＩＰパケットであれば、
それをＩＰルーティング処理部６１５に転送する。一方、ローカルパス側ＩＰパケットがグループメンバ間で通信されるＩＰパケットであれば、管理テーブル６１８を参照して、そのグループメンバ間通信ＩＰパケットの宛先アドレスに対してＮＡＴ(Network Address
Translation)処理を施す。このＮＡＴ処理により、前記グループメンバ間通信ＩＰパケットの宛先アドレス（Ｄ）または送信元アドレス（Ｓ）について、仮想ＩＰアドレスと実ＩＰアドレス（ローカルアドレス）間の変換が行われる。ヘッダ処理部６１３は、さらに、ＩＰパケットに対して、宛先通番（ＤＮ）、発信元通番（ＳＮ）を付加すると共に、内部管理転送通番（ＬＴＮ）を転送通番処理部６１４に通知する。また、管理テーブル６１８にサブ内部管理転送通番（ＳｕｂＬＴＮ）が設定されている場合には、それも転送通番処理部６１４に通知する。
【０１４０】
ヘッダ処理部６１３は、転送通番処理部６１４からＧＷ間標準ヘッダ１１１を有するＩＰパケット（ＧＷ間拡張ヘッダ付パケットまたはＧＷ間標準ヘッダ付パケット）を受け取った場合には、管理テーブル６１８を参照して、送信元アドレスを実ＩＰアドレスから仮想ＩＰアドレスに、宛先アドレスを仮想ＩＰアドレスから実ＩＰアドレスに変換する。また、ＧＷ間標準ヘッダ１１１を削除する。そして、そのＧＷ間標準ヘッダ１１１が削除されたＩＰパケットを、ローカル側インターフェース６１１を介して端末に送信する。また、ヘッダ処理部６１３は、ＩＰルーティング処理部６１５からＩＰパケットを受け取った場合には、それを、ローカル側インターフェース６１１を介して端末に送信する。
【０１４１】
転送通番処理部６１４は、ヘッダ処理部６１３からＩＰパケットを受け取った場合、ヘッダ処理部６１３から通知された内部管理転送通番を基に転送通番テーブル６１９を参照し、そのＩＰパケットに転送通番（ＴＮ）、グループ通番（ＧＮ）を付加すると共に、出力ポート情報を取得する。そしてＧＷ間標準ヘッダ１１１が付加されたＩＰパケットをトンネル処理部６１６に送ると共に、出力ポート情報（ＯｕｔＰｏｒｔ）をトンネル処理部６１６に通知する。転送通番処理部６１４は、ヘッダ処理部６１３から内部管理転送通番に加え、サブ内部管理転送通番も通知された場合には、そのサブ内部管理転送通番を基に転送通番テーブル６１９を参照して、ヘッダ処理部６１３から受け取ったＩＰパケットにＧＷ間標準ヘッダ１１１を付加すると共に、出力ポート情報を取得する。そして、そのＧＷ間標準ヘッダ１１１が付加されたＩＰパケットと出力ポート情報をトンネル処理部６１６に送る。
【０１４２】
また、転送通番処理部６１４は、トンネル処理部６１６またはルート管理処理部６３１からＩＰパケット（ＧＷ間拡張ヘッダ付パケット、ＧＷ間標準ヘッダ付パケット、またはＧＷ間標準ヘッダ付中継用パケット）を受け取った場合、そのＩＰパケットのＧＷ間標準ヘッダ１１１に設定された転送通番（ＴＮ）を基に転送通番テーブル６１９を参照し、前記ＩＰパケットの送信先がローカル（Ｌｏｃａｌ）であれば前記ＩＰパケットをヘッダ処理部６１３に送信先がＬＴＮであればトンネル処理部６１６に送る。
【０１４３】
ＩＰルーティング処理部６１５は、ヘッダ処理部６１３から通常ＩＰパケットを受け取った場合には、ＩＰルーティングテーブル６２０を参照し、その通常ＩＰパケットの宛先アドレス（ＤＡ）に対応する出力ポート情報を取得する。そして、その通常ＩＰパケットと出力ポート情報をトンネル処理部６１６に送る。また、ＩＰルーティング処理部６１５は、トンネル処理部６１６から通常ＩＰパケットを受け取った場合には、ＩＰルーティングテーブル６２０を参照し、その通常ＩＰパケットの宛先アドレス（ＤＡ）に対応する出力ポート情報を取得する。そして、その通常ＩＰパケットとその出力ポート情報をヘッダ処理部６１３に送る。
【０１４４】
トンネル処理部６１６は、転送通番処理部６１４、ＩＰルーティング処理部６１５またはルート管理処理部６３１から受け取るＩＰパケットを暗号化し、その暗号化したＩＰパ
ケットをパケット送受信部６１７に転送する。また、トンネル処理部６１６は、パケット送受信部６１７から受け取るＩＰパケットを復号化し、その復号化したＩＰパケットをルート管理処理部６３１、転送通番処理部６１４またはＩＰルーティング処理部６１５に転送する。
【０１４５】
パケット送受信部６１７は、トンネル処理部６１６から受け取るＩＰパケットを、グローバル側インターフェース６１２を介して送信する。また、パケット送受信部６１７は、グローバル側インターフェース６１２を介して受信するＩＰパケットをトンネル処理部６１６に転送する。
【０１４６】
＜ＧＷの処理の詳細＞
図２２〜図２４のフローチャートを参照しながら、本実施形態のＧＷ（ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃ）の処理の詳細を説明する。ここでは、図８と図１５のネットワークシステムにおいてネットワーク１００内のＰＣ−Ａがネットワーク３００内のＮｏｔｅ−Ｃに対してＩＰパケットを送信する場合の処理について説明する。
【０１４７】
｛ＧＷ−Ａの処理｝
図２２は、ＧＷ−Ａがローカル側インターフェース６１１から受信したＩＰパケットをグローバル側インターフェース６１２から送信するまでの処理手順を示すフローチャートである。図２２を参照しながら、ＧＷ−Ａによる上記ＩＰパケットの受信・送信処理を説明する。
【０１４８】
ヘッダ処理部６１３は、ローカル側インターフェース６１１からＩＰパケットを受信する（Ｓ１０１）。ヘッダ処理部６１３は、管理テーブル６１８を参照して、ステップＳ１１０の処理を行う。このステップＳ１１０の処理は、ステップＳ１１１〜Ｓ１１６から構成される。
【０１４９】
まず、ヘッダ処理部６１３は、ステップＳ１０１で受信したＩＰパケット（以下、受信ＩＰパケット）の宛先アドレス（ＤＡ）がグローバルテーブル２２０Ａの存在するか判断する（Ｓ１１１）。そして、宛先アドレスが存在する場合には処理をステップＳ１１２に移し、存在しない場合には処理をステップＳ１１５に移す。
【０１５０】
ステップＳ１１２では、グローバルテーブル２２０Ａを参照して、前記宛先アドレスに対応するグループ通番（ＧＮ）を抽出する。また、ローカルテーブル２００Ａを参照して、前記受信ＩＰパケットの送信元アドレス（ＳＡ）に対応するグループ番号（ＧＮ）を抽出する。そして、グローバルテーブル２２０Ａから抽出したグループ通番とローカルテーブル２００から抽出したグループ通番が同じであるか判断する（Ｓ１１２）。
【０１５１】
そして、両グループ通番が同じであれば処理をステップＳ１１３に移し、同じでなければ処理をステップＳ１１６に移す。
ステップＳ１１３では、グローバルテーブル２２０Ａから前記宛先アドレス（ＤＡ）に対応する宛先通番（ＤＮ）を取得する。また、ローカルテーブル２００Ａから前記送信元アドレス（ＳＡ）に対応する発信元通番（ＳＮ）を取得する。そして、該宛先通番と該発信元通番を前記受信ＩＰパケットのＧＷ間標準ヘッダ１１１に付加する。
【０１５２】
続いて、グローバルテーブル２２０Ａから前記宛先アドレス（ＤＡ）に対応する内部管理転送通番（ＬＴＮ）を取得する。そして、宛先通番と発信元通番が付加されたＩＰパケットを転送通番処理部６１４に転送する。このとき、前記内部管理転送通番を転送通番処理部６１４に指定（通知）する（Ｓ１１４）。
【０１５３】
ステップＳ１１５では、受信ＩＰパケットをＩＰルーティング処理部６１５に転送する。
ステップＳ１１６では、受信ＩＰパケットが対象グループ（グループメンバ）外のＩＰパケットであるとみなして、その受信ＩＰパケットを廃棄する。
【０１５４】
ステップＳ１１４に続いて、転送通番処理部６１４が転送通番テーブル６１９とルートコードテーブル６３２を参照してステップＳ１２０の処理を行う。ステップＳ１２０は、ステップＳ１２１〜Ｓ１２３から構成される。
【０１５５】
まず、転送通番処理部６１４は、ヘッダ処理部６１３から指定された内部管理転送通番（ＬＴＮ）を基に送信転送テーブル２４０Ａを参照し、送信転送テーブル２４０Ａから該内部管理転送通番に対応する転送通番（ＴＮ）と発信元通番（ＳＮ）を取得する。そして、それらをヘッダ処理部６１３から受け取ったＩＰパケットのＧＷ間標準ヘッダ１１１に設定する（Ｓ１２１）。
【０１５６】
次に、ルートコードテーブル６３２にルートコード（ＲｏｕｔｅＣｏｄｅ）が設定されているか判断する（Ｓ１２２）。この判断は、ＧＷ−Ａが、現在、ＩＰパケットの２ルート転送を行う必要があるか否かを判断するためのものである。
【０１５７】
ステップＳ１２２で、ルートコードが設定されていないと判断すると処理をステップＳ１２３に移し、ルートコードが設定されていると判断すると処理をステップＳ１３０に移す。
【０１５８】
ステップＳ１２３では、送信転送テーブル２４０Ａを参照して前記指定内部管理転送通番（ＬＴＮ）に対応する出力ポート情報（Ｏｕｔｐｏｒｔ）を取得する。そして、前記ＧＷ間標準ヘッダ１１１が付加されたＩＰパケットをトンネル処理部６１６に転送する。このとき、転送通番処理部６１４は、前記出力ポート情報をトンネル処理部６１６に指定（通知）する。ステップＳ１２３の処理が終了すると、処理をステップＳ１４０に移す。
【０１５９】
ステップＳ１３０の処理は、ルート管理処理部６３１によって実行される。ルート管理処理部６３１は、管理テーブル６１８と転送通番テーブル６１９を参照して、ステップＳ１３０の処理を実行する。ステップＳ１３０は、ステップＳ１３１〜Ｓ１３３で構成される。
【０１６０】
尚、ルート管理処理部６３１は、ステップＳ１３０の処理を開始するにあたって、転送通番処理部６１４からＧＷ間標準ヘッダ１１１が付加されたＩＰパケットを受け取ると共に、内部管理転送通番（ＬＴＮ）を指定（通知）される。
【０１６１】
まず、ルート管理処理部６３１は、転送通番処理部６１４から指定された内部管理転送通番（ＬＴＮ）を基にグローバルテーブル２２０Ａを参照して、その内部管理転送通番に基づいてグローバルテーブル２２０Ａを参照して、グローバルテーブル２２０Ａに前記内部管理転送通番に対応するサブ内部管理転送通番（ＳｕｂＬＴＮ）が設定されているか判断する（Ｓ１３１）。そして、サブ内部管理転送通番が設定されていれば処理をステップＳ１３２に移し、サブ内部管理転送通番が設定されていなければ処理をステップＳ１２３に戻す。
【０１６２】
ステップＳ１３２では、内部管理転送通番に関係する情報をメイン（Ｍａｉｎ）とするメインルート用ＧＷ間拡張ヘッダと、サブ内部管理転送通番に関係する情報をサブ（Ｓｕｂ）とするサブルート用ＧＷ間拡張ヘッダを生成する。
【０１６３】
次に、ルートコードテーブル６３２に設定されているルートコードを取得すると共に、グローバルテーブル２２０Ａから内部管理転送通番（ＬＴＮ）に対応する出力ポート情報（メインルート出力ポート情報）とサブ内部管理転送通番に対応する出力ポート情報（サブルート出力ポート情報）を取得する。そして、前記ルートコードとパケット通番を、前記メインルート用ＧＷ間拡張ヘッダと前記サブルート用ＧＷ間拡張ヘッダに設定して、両ＧＷ間拡張ヘッダを完成させる。また、ルート管理処理部６３１は、内部管理転送通番とサブ内部管理転送通番を基に送信転送テーブル２４０Ａを参照して、送信転送テーブル２４０Ａから、内部管理転送通番に対応する出力ポート情報とサブ内部管理転送通番に対応する出力ポート情報を取得する。そして、メインルート用ＧＷ間拡張ヘッダが付加されたＩＰパケット（メインルート用ＩＰパケット）とサブルート用ＧＷ間拡張ヘッダが付加されたＩＰパケット（サブルート用ＩＰパケット）をトンネル処理部６１６に送信する。このとき、前記メインルート用ＩＰパケットをトンネル処理部６１６に送信する際には、そのＩＰパケットを出力すべきポート示す出力ポート情報をトンネル処理部６１６に通知する。同様に、前記サブルート用ＩＰパケットをトンネル処理部６１６に送信する際には、そのＩＰパケットを出力すべきポートを示す出力ポート情報をトンネル処理部６１６に通知する（Ｓ１３３）。
【０１６４】
ステップＳ１４０の処理は、トンネル処理部６１６とパケット送受信部６１７によって実行される。
ステップＳ１４０では、トンネル処理部６１６がルート管理処理部６３１、転送通番処理部６１４またはＩＰルーティング処理部６１５から受信するパケットを暗号化する。パケット送受信部６１７は、この暗号化されたパケットを、ルート管理処理部６３１、転送通番処理部６１４またはＩＰルーティング処理部６１５が転送通番処理部６１４に通知（指定）したグローバル側インターフェース６１２の出力ポートから送信する。
【０１６５】
このステップＳ１４０の処理により、前記メインルート用ＩＰパケットがＧＷ−Ｂに送信され、前記サブルート用ＩＰパケットがＧＷ−Ｃに送信される。
｛ＧＷ−Ｂの処理｝
図２３を参照しながら、ＧＷ−Ｂによるグローバル側インターフェース６１２から受信したＩＰパケットの処理について説明する。図２３は、ＧＷ−Ｂがグローバル側インターフェース６１２から受信するＩＰパケットを処理する手順を示すフローチャートである。
【０１６６】
まず、パケット送受信部６１７は、グローバル側インターフェース６１２からＩＰパケットを受信し、そのＩＰパケット（以下、受信ＩＰパケット）をトンネル処理部６１６に転送する（Ｓ２０１）。
【０１６７】
続いて、トンネル処理部６１６が前記受信ＩＰパケットについてステップＳ２１０の処理を行う。ステップＳ２１０は、ステップＳ２１１〜Ｓ２１２から構成される。
ステップＳ２１１で、トンネル処理部６１６は前記受信ＩＰパケットを復号化する。そして、該復号化により得られたＩＰパケットのヘッダがＧＷ間ヘッダ（ＧＷ間標準ヘッダ１１１とＧＷ間拡張ヘッダ１１２から構成されるヘッダ）であるか判断する（Ｓ２１１）。そして、該ＩＰパケットのヘッダがＧＷ間ヘッダであれば処理をステップＳ２１２に移し、ＧＷ間ヘッダでなければ処理をステップＳ２１３に移す。
【０１６８】
ステップＳ２１２では、トンネル処理部６１６は、前記ＧＷ間ヘッダに設定されているルートコードが遅達廃棄対象であるか判断する。この判断では、前記ＧＷ間ヘッダに設定されているルートコードがルートコードテーブル６３２に設定されているかしらべ、そのルートコードがルートコードテーブル６３２に設定されていれば、そのルートコードは遅達廃棄対象であると判断する。ルートコードテーブル６３２にそのルートコードが設定されているか判断する。トンネル処理部６１６は、前記ルートコードが遅達廃棄対象である
と判断すれば処理をステップＳ２１４に移し、遅達廃棄対象でないと判断すれば処理をステップＳ２２０に移す。
【０１６９】
ステップＳ２１３では、トンネル処理部６１６は、前記受信ＩＰパケットを通常のＩＰパケットであると判断し、それをＩＰルーティング処理部６１５に転送する。
ステップＳＳ２１４の処理は、ＧＷ−Ｂがトンネル処理部６１６から受け取ったＩＰパケットを転送するか、または、遅達廃棄するかによって異なる。転送の場合には、後述するステップS２２０を行う。また、遅達廃棄する場合には、後述する、ＧＷ−Ｃのルート管理処理部６３１の処理を行う。
【０１７０】
ステップＳ２２０の処理は、転送通番処理部６１４によって実行される。ステップＳ２２０は、ステップＳ２２１〜Ｓ２２３から構成される。
ステップＳ２２１では、転送通番処理部６１４はトンネル処理部６１６から受け取ったＩＰパケットのＧＷ間ヘッダの転送通番（ＴＮ）を基に受信転送テーブル２３０Ｂを参照し、受信転送テーブル２３０Ｂからその宛先通番に対応する内部管理転送通番（ＬＴＮ）を取得する。そして、この内部管理転送通番を指定する。
【０１７１】
次に、転送通番処理部６１４は、前記指定した内部管理転送通番（以下、指定内部管理転送通番と記載）を基に送信転送テーブル２４０Ｂを参照し、送信転送テーブル２４０Ｂから該指定内部管理転送通番に対応する転送通番（ＴＮ）とグループ通番（ＧＮ）を取得する。そして、トンネル処理部６１６から受け取ったＩＰパケットのＧＷ間ヘッダの転送通番（ＴＮ）とグループ通番（ＧＮ）を、それぞれ、上記取得した転送通番とグループ通番に書き換える（Ｓ２２２）。
【０１７２】
続いて、転送通番処理部６１４は、前記指定内部管理転送通番を基に送信転送テーブル２４０Ｂを参照し、送信転送テーブル２４０Ｂから前記指定内部管理転送通番対応する出力ポート（ＯｕｔＰｏｒｔ）を取得し、その出力ポートを指定して、前記ＧＷ間ヘッダの一部（宛先通番と発信元通番）が書き換えられたＩＰパケットをトンネル処理部６１６に転送する（Ｓ２２３）。
【０１７３】
ステップＳ２２３に続いて、ステップＳ２３０の処理が行われる。ステップＳ２３０の処理は、トンネル処理部６１６とパケット送受信部６１７によって実行される。
ステップＳ２３０では、トンネル処理部６１６は、転送通番処理部６１４から受け取ったＩＰパケットを暗号化する。そして、その暗号化したＩＰパケットを、転送通番処理部６１４から指定された出力ポートと共にパケット送受信部６１７に送信する。パケット送受信部６１７は、転送通番処理部６１４から受け取ったＩＰパケットをグローバル側インターフェース６１２の前記指定された出力ポートから送信する。
【０１７４】
このステップＳ２３０の処理により、前記ＩＰパケットがＧＷ−Ｃに送信される。
｛ＧＷ−Ｃの処理｝
図２４を参照しながら、ＧＷ−Ｃがグローバル側インターフェース６１２からＩＰパケットを受信した場合の処理を説明する。図２４は、ＧＷ−Ｃがグローバル側インターフェース６１２から受信したＩＰパケットをローカル側インターフェース６１１に出力する処理を示すフローチャートである。
【０１７５】
パケット送受信部６１７は、グローバル側インターフェース６１２からＩＰパケットを受信し、それをトンネル処理部６１６に転送する（Ｓ３０１）。
次に、トンネル処理部６１６がステップＳ３１０の処理を実行する。ステップＳ３１０は、ステップＳ３１１〜Ｓ３１２から構成される。
【０１７６】
ステップＳ３１１では、トンネル処理部６１６は、パケット送受信部６１７から受け取ったＩＰパケット（第１のＩＰパケット）を復号化する。そして、該復号化により得られたＩＰパケット（第２のＩＰパケット）のヘッダがＧＷ間ヘッダ（ＧＷ間標準ヘッダ１１１とＧＷ間拡張ヘッダ１１２から構成されるヘッダ）であるか判断する。そして、ＧＷ間ヘッダであれば処理をステップＳ３１２に移し、ＧＷ間ヘッダでなければ処理をステップＳ３１３に移す。
【０１７７】
ステップＳ３１２では、トンネル処理部６１６はルート管理処理部６３１にルートコードが設定されているか判断する。そして、トンネル処理部６１６は、ルートコードが設定されていれば、前記第２のＩＰパケットをルート管理処理部６３１に転送し、処理をステップＳ３２０に移す。一方、トンネル処理部６１６は、ルートコードが設定されていなければ、ステップＳ３３０に移す。
【０１７８】
ステップＳ３１３では、トンネル処理部６１６は、前記第２のＩＰパケットをＩＰルーティング処理部６１５に転送する。
ステップＳ３２０の処理は、ルート管理処理部６３１により実行される。ステップＳ３２０は、ステップＳ３２１〜Ｓ３２４から構成される。
【０１７９】
ステップＳ３２１では、ルート管理処理部６３１は、前記第２のＩＰパケットのＧＷ間ヘッダに設定されているルートコードが遅達廃棄対象であるか判断する。この判断では、ＧＷ間ヘッダに設定されているルートコードがルートコードテーブル６３２に設定されているか調べ、設定されていれば、そのルートコードが遅達廃棄対象であると判断する。ルート管理処理部６３１は、前記ルートコードが遅達廃棄対象であると判断すると処理をステップＳ３２２に移し、遅達廃棄対象でないと判断すると処理をステップＳ３２５に移す。
【０１８０】
ステップＳ３２２では、ルート管理処理部６３１は、前記第２のＩＰパケットのＧＷ間ヘッダに設定されているグループ通番（ＧＮ）、宛先通番（ＤＮ）、ルートコード（ＲｏｕｔｅＣｏｄｅ）及びパケット通番（Ｐａｃｋｅｔ通番）を調べ、それらの組みが遅達管理バッファ６３３に格納されているか判断する。そして、それらの組が遅達管理バッファ６３３に有れば、前記第２のＩＰパケットを遅達パケットとして廃棄する（Ｓ３２６）。
【０１８１】
一方、前記グループ通番、宛先通番、ルートコード及びパケット通番の組みが遅達管理バッファ６３３に無ければ、それらの組みを遅達管理バッファ６３３に保存する（Ｓ３２３）。
【０１８２】
ステップＳ３２３の処理が終了すると、ルート管理処理部６３１は、前記第２のＩＰパケットからＧＷ間拡張ヘッダ１１２を削除し、該ＧＷ間拡張ヘッダ１１２が削除されたＩＰパケット（第３のＩＰパケット）を転送通番処理部６１４に転送する（Ｓ３２４）。
【０１８３】
ステップＳ３１２でＮＯと判断された場合、または、ステップＳ３２４の処理が終了すると処理がステップＳ３３０に移行する。
ステップＳ３３０の処理は、転送通番処理部６１４により実行される。ステップＳ３３０は、ステップＳ３３１〜Ｓ３３２から構成される。
【０１８４】
ステップＳ３３１では、転送通番処理部６１４は、ＧＷ間標準ヘッダ１１１の転送通番（ＴＮ）を基に受信転送テーブル２３０Ｃを参照し、受信転送テーブル２３０Ｃから該転送通番に対応する内部管理転送通番（ＬＴＮ）を取得する。そして、その内部管理転送通番を指定する。
【０１８５】
次に、転送通番処理部６１４は、前記指定内部管理転送通番が“Ｌｏｃａｌ”指定であると認識し、前記第３のＩＰパケットをヘッダ処理部６１３に転送する（Ｓ３３２）。
ステップＳ３３２の処理に続いて、ステップＳ３４０の処理が行われる。ステップＳ３４０の処理は、ヘッダ処理部６１３によって実行される。ステップＳ３４０は、ステップＳ３４１〜Ｓ３４２から構成される。
【０１８６】
ステップＳ３４１では、ヘッダ処理部６１３は、前記第３のＩＰパケットのＧＷ間標準ヘッダ１１１に設定されている宛先通番（ＤＮ）と発信元通番（ＳＮ）を基にローカルテーブル２００Ｃとグローバルテーブル２２０Ｃを参照し、前記宛先通番に対応する宛先アドレス（Ｄ）と前記発信元通番に対応する送信元アドレス（Ｓ）を取得する。前記宛先アドレスは、前記宛先通番を基にローカルテーブル２００Ｃから取得される。前記送信元アドレスは、前記発信元通番を基にグローバルテーブル２２０Ｃから取得される。そして、ヘッダ処理部６１３は、前記第３のＩＰパケットのＩＰヘッダの宛先アドレス（Ｄ）と送信元アドレス（Ｓ）を、それぞれ、上記取得した宛先アドレスと送信元アドレスに書き換える。
【０１８７】
続いて、ヘッダ処理部６１３は、前記第３のＩＰパケットからＧＷ間標準ヘッダ１１１を削除する。そして、該ＧＷ間標準ヘッダ１１１が削除されたＩＰパケットを、ローカル側インターフェース６１１を介してローカル側ネットワーク３００に転送する（Ｓ３４２）。
【０１８８】
［第３実施形態］
前記第１及び第２実施形態で示したＩＰネットワークシステムにおいて、あるＧＷが２ルートで通信を行う場合、その通信の開始／終了において、パケットの通信経路（転送経路）に配置されている全てのＧＷが最新のＧＷ間拡張ヘッダ情報を共有する必要がある。このために、前記通信の開始の前と終了後に、各ＧＷが保有するＧＷ間拡張ヘッダ情報を最新のものに同期をとって更新する処理が必要となる。
【０１８９】
第３実施形態は、このようなＧＷ間でのＧＷ間拡張ヘッダ情報更新の同期処理の実現方法に関するものである。
ここでは、図７に示すネットワークシステムを例にして、上記ＧＷ間拡張ヘッダ情報の同期更新処理について説明する。すなわち、ＰＣ−Ａ、サーバ２０１及びＮｏｔｅ−Ｃがグループ１としてグループ化されており、ＰＣ−ＡがＧＷ−Ａ配下の端末、サーバ２０１がＧＷ−Ｂ配下の端末、Ｎｏｔｅ−ＣがＧＷ−Ｃ配下の端末となっている場合を例にして説明する。また、前提として、ＧＷ−ＡとＧＷ−Ｂ間及びＧＷ−ＢとＧＷ−Ｃ間が既にトンネルで接続されているものとする。つまり、ＧＷ−ＡとＧＷ−Ｃとの間で１ルートの通信が既に行われているものとする。この状態において、ＧＷ−ＡとＧＷ−Ｃ間で新たにユニキャスト用トンネルが確立され、ＧＷ−ＡとＧＷ−Ｃ間が２ルートでの通信に移行する場合の処理について説明する。
【０１９０】
図２５は、ＧＷ−ＡとＧＷ−Ｃ間での通信が１ルートから２ルートに移行する場合において、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃが、ＧＷ間拡張ヘッダ情報を、同期をとりながら更新する方法を示すシーケンス図である。
【０１９１】
図２５を参照しながら、上記ＧＷ間拡張ヘッダ情報の同期更新処理について説明する。
ＧＷ−ＡとＧＷ−Ｂ間でトンネルが確立し、グループ１での通信（グループ１通信）が確立済みであるとする（ＳＱ１）。また、ＧＷ−ＢとＧＷ−Ｃ間でも、トンネルが確立し、グループ１通信が確立済みであるとする（ＳＱ２）。
【０１９２】
この状態で、ＧＷ−ＡとＧＷ−Ｃ間でユニキャスト用のトンネルを確立し（ＳＱ３）、
ＧＷ−ＡとＧＷ−Ｃ間で２ルート転送を開始する（ＳＱ４）。尚、上記トンネル確立に先立って、ＧＷ−ＡとＧＷ−Ｃとの間でＧＷ間認証を行うようにしてもよい。
【０１９３】
このトンネル確立により、ＧＷ−ＡとＧＷ−Ｃは、ルートコードを決定する。また、ＧＷ間拡張ヘッダ情報のチェックを開始する。
次に、ＧＷ−ＡとＧＷ−Ｃとの間で、ＧＷ間拡張ヘッダ情報の同期処理が実行される（ＳＱ５）。
【０１９４】
このＧＷ間拡張ヘッダ情報同期処理により、ＧＷ−Ａは、ルートコードテーブル２１０Ａとグローバルテーブル２２０Ａ、及び送信転送テーブル２４０Ａに、ＧＷ−Ｃとユニキャストを行うために必要な情報を設定する（ＳＱ６）。また、ＧＷ−Ｃも、ルートコードテーブル２１０Ｃとグローバルテーブル２２０Ｃ、及び送信転送テーブル２４０Ｃに、ＧＷ−Ａとユニキャストを行うために必要な情報を設定する（ＳＱ７）。
【０１９５】
すなわち、ＧＷ−Ａは、ルートコードテーブル２１０Ａにルートコード（“ＡＣ”）を設定する（図９（ａ）参照）。また、グローバルテーブル２２０Ａの仮想ＩＰアドレス（Ｖ−ＩＰ）項目がＧＷ−Ｃ配下のＮｏｔｅ−Ｃの仮想ＩＰアドレス（“ｃＤ”）となっているレコードのサブ内部管理転送通番項目に“５”を設定する（図９（ｃ）参照）。また、さらに、グローバルテーブル２２０Ａに、上記サブ内部管理転送通番（“５”）に関するレコードを追加する（図９（ｅ）参照）。
【０１９６】
ＧＷ−Ｃは、ルートコードテーブル２１０Ｃにルートコード（“ＡＣ”）を設定する（図１１（ａ）参照）。また、グローバルテーブル２２０Ｃの仮想ＩＰアドレス（Ｖ−ＩＰ）項目がＧＷ−Ａ配下のＰＣ−Ａの仮想ＩＰアドレス（“ａＤ”）となっているレコードのサブ内部管理転送通番項目に“５”を設定する（図１１（ｃ）参照）。また、さらに、送信転送テーブル２４０Ｃの上記サブ内部管理転送通番に関するレコードを追加する（図１１（ｅ）参照）。
【０１９７】
以上のようにして、ＧＷ−ＡとＧＷ−Ｃが、自身のルートコードテーブル２１０、グローバルテーブル２２０及び送信転送テーブル２４０を同期更新すると、既存のルートと今回、新規に追加されたルートの２つのルートを利用した２ルート転送状態が開始される（ＳＱ８）。
【０１９８】
すなわち、ＧＷ−Ａ→ＧＷ−Ｂ→ＧＷ−Ｃの既存ルートとＧＷ−Ａ→ＧＷ−Ｃの新規ルートの２ルートを利用して、ＧＷ−ＡとＧＷ−Ｃ間でユニキャストが行われる。そして、ＧＷ−ＡとＧＷ−Ｃは、受信するＩＰパケットのＧＷ間拡張ヘッダ１１２のチェックを開始する。
【０１９９】
その後、第２実施形態で説明した方法により、ルートを一本化するルート切り替えが発生し、ユニキャスト用のルートが確定する（ＳＱ９）。この場合、例えば、前記新規ルートに一本化されたと仮定する。
【０２００】
ＧＷ−Ａは、ルートコードテーブル２１０Ａに設定されているルートコード（“ＡＣ”）を削除する（ＳＱ１０）。ＧＷ−Ｃは、ルートコードテーブル２１０Ｃに設定されているルートコード（“ＡＣ”）を削除する（ＳＱ１１）。
【０２０１】
以上のようにして、２ルート転送は終了し、ＧＷ−ＡとＧＷ−Ｃは、受信するＩＰネットワークのＧＷ間拡張ヘッダ１１２のチェックを終了する（ＳＱ１２）。
続いて、ＧＷ−ＡとＧＷ−Ｂ間、及びＧＷ−ＢとＧＷ−Ｃ間で上記ルート一本化に伴い不要となったルートの削除同期処理が実行される（ＳＱ１３、ＳＱ１４）。
【０２０２】
このルート削除同期処理により、ＧＷ−Ａは、図１６に示すように、グローバルテーブル２２０Ａと送信転送テーブル２４０Ａを更新する（ＳＱ１４）。また、ＧＷ−Ｂは、図１７に示すように、受信転送テーブル２３０Ｂを更新する（ＳＱ１６）。また、さらに、ＧＷ−Ｃは、図１８に示すように、グローバルテーブル２２０Ｃと送信転送テーブル２４０Ｃを更新する（ＳＱ１７）。
【０２０３】
［第４実施形態］
前述した第２実施形態は、ＧＷ間通信がユニキャストである場合に、ＧＷ間通信経路（転送経路）を、最適化経路に段階的かつシームレスに移行する方法であった。
【０２０４】
第４実施形態（以下、本実施形態）は、ＧＷ間通信がブロードキャスト／マルチキャストである場合に、ＧＷ間通信経路（転送経路）を、最適化経路に段階的かつシームレスに移行する方法に関するものである。
【０２０５】
図２６は、第４実施形態のネットワークシステムにおける一時的な２ルート転送状態を示す図である。尚、図２６において、図７に示す構成要素と同じ構成要素には同じ符号を付与している。
【０２０６】
第４実施形態においても、図２６に示すように、ＧＷ−ＡとＧＷ−Ｃ間で、一時的に２ルートでの通信（転送）が必要になる。
図２６に示すように、第４実施形態では、ＧＷ−ＡとＧＷ−Ｂ間にトンネル５０１を確立すると共に、ＧＷ−ＢとＧＷ−Ｃ間にトンネル５０２を確立する。また、マルチキャスト用のトンネル５０４を、ＧＷ−ＡとＧＷ−Ｂ、ＧＷ−Ｃ間に確立する。このトンネル５０４は、前記第１実施形態の仮想トンネル９１と同様なトンネルである。ＧＷ−Ａ配下のＰＣ−Ａは、これらのトンネルを利用して、ＧＷ−Ｂ配下のサーバ２０１とＧＷ−Ｃ配下のＮｏｔｅ−Ｃにブロードキャスト／マルチキャストでパケットを送信する。この場合、ＧＷ−Ａからトンネル５０４に送信されたブロードキャスト／マルチキャストのパケットは、ＣＥ４０１によりコピーされ、トンネル５０４を介してＧＷ−Ｂに転送されると共にＧＷ−Ｃ側にも転送される。ＰＥ４１１に転送された前記ブロードキャスト／マルチキャストのパケットは、ＰＥ４１１、インターネット４００、ＰＥ４１３及びＰＥ４１２を経由してＧＷ−Ｃに送られる。なお、図２６に示すＧＷ−ＡとＧＷ−Ｃ間に確立されているトンネル５０３は、ユニキャスト用のトンネルである。
【０２０７】
このように、図２６に示すＩＰネットワークにおいては、ＰＣ−Ａが送信するブロードキャスト／マルチキャストのパケットは、２つのルート、すなわち、トンネル５０１とトンネル５０２から構成される第１ルートと、トンネル５０４から構成される第２ルートの２つのルートを利用して転送される。この場合、ＧＷ−Ｃは同じブロードキャスト／マルチキャストのパケットを２つのルートから受信するので、遅達廃棄処理を行う。
【０２０８】
図２７〜図３０を参照しながら、第４実施形態の手法によるブロードキャスト／マルチキャストのシームレスな経路変更方法を説明する。
図２７は、第４実施形態におけるシームレスな経路変更方法を全体的に示す図である。図２８、２９、３０は、それぞれ、上記シームレスな経路変更方法を実現するＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃの内部テーブルの構成と状態を示す図である。尚、図２８〜図３０に示すテーブルの前状態は、図１６〜図１８に示すようになっているものと仮定して説明を行う。
【０２０９】
｛概要｝
第４実施形態では、図２８〜図３０に示すように、受信転送テーブル２３０のレコード
にグループ通番（ＧＮ）項目を追加する。これは、各ＧＷが受信したパケットのグループを特定するためである。ブロードキャストやマルチキャストでは、１つのパケットが複数拠点に転送されるため、転送通番（ＴＮ）の共通化やグループ通番（ＧＮ）の強制変換を行う必要が生じる。
【０２１０】
本実施形態では、下記１）〜６）の処理を行う。
１）ＧＷ−Ａは、グローバル側インターフェース６１２に、新たに“ＡＢＣ”というブロードキャスト／マルチキャスト用の出力ポートを設ける。そして、図２８（ｅ）に示すように、この出力ポート（“ＡＢＣ”）を送信転送テーブル２４０Ａの空き内部管理転送通番（“２”）のレコードに設定する。
【０２１１】
２）図２８（ｃ）に示すように、ＧＷ−Ａは、ブロードキャスト用の仮想ＩＰアドレス（“Ｂｒｏａｄ”）に対して、サブルート用の内部管理転送通番としてサブ内部管理転送通番（“２”）を設定する。また、マルチキャスト用の仮想ＩＰアドレス（“Ｍｕｌｔｉ”）に対しても、同様に、サブ内部管理転送通番（“２”）を設定する。
【０２１２】
３）ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃで共通に使用可能な転送通番（“２”）を割り出し、ＧＷ−ＡとＧＷ−Ｃは、その転送通番（“２”）を、それぞれの送信転送テーブル２４０に設定する（図２８（ｃ）と図３０（ｃ）を参照）。
【０２１３】
４）ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、上記割り出した共通転送通番（“２”）を、ぞれぞれの受信転送テーブル２３０Ａに、配下端末のグループ１におけるそれぞれのグループ通番（ＧＮ）と共に設定する（図２８（ｄ）、図２９（ｄ）、図３０（ｄ）を参照）。
【０２１４】
５）ＧＷ−Ａは、ＰＣ−ＡからＩＰヘッダにブロードキャストアドレスが設定されたＩＰパケットを受け取ると、そのＩＰパケットにＧＷ間ヘッダ１１０（ＧＷ間標準ヘッダ１１１とＧＷ間拡張ヘッダ１１２）を付加して、２ルートに送信する（図２７参照）。
【０２１５】
６）ＧＷ−Ｂは、上記ＧＷ−Ａが送信したブロードキャストパケットを２つのルートから受信すると、そのパケットのＧＷ間標準ヘッダ１１１（ＴＮ、ＧＮ、ＤＮ、ＳＮ）のみを参照し、ＧＷ−Ｃへの転送処理を行う。また、上記２つのルートからのブロードキャストパケットのＧＷ間ヘッダ１１０のグループ通番（ＧＮ）、宛先通番（ＤＮ）、発信元通番（ＳＮ）、ルートコード（ＲｏｕｔｅＣｏｄｅ）及びパケット通番（ＰＮ）をチェックして、ローカル（Ｌｏｃａｌ）への転送パケット、すなわち配下のサーバ２０１に転送するパケットに関する遅達廃棄処理を行う。
【０２１６】
６）ＧＷ−Ｃは、上記２ルートから受信したブロードキャストパケットのＧＷ間ヘッダ１１０に設定されたグループ通番（ＧＮ）、宛先通番（ＤＮ）、発信元通番（ＳＮ）、ルートコード（ＲｏｕｔｅＣｏｄｅ）及びパケット通番（ＰＮ）をチェックし、遅達廃棄処理を行う。
【０２１７】
｛ＧＷの内部テーブル設定処理｝
ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃの内部設定処理を説明する。ここでは、ＧＷ−Ａの内部テーブル設定処理を例にして説明する。
【０２１８】
図３１は、第４実施形態におけるＧＷ−Ａの内部テーブル設定処理の手順を示すフローチャートである。
ＧＷ−Ａは、ブロードキャストパケットを送信する２つのルートを決定する（Ｓ４０１）。次に、ルートコードをルートコードテーブル２１０Ａに設定する（Ｓ４０２）。図２
８の例では、ルートコードとして“ＡＢＣ”が設定される。
【０２１９】
続いて、上記２つのルートに配置された全てのゲートウェイ（ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃ）で共通の空き転送通番（ＴＮ）を抽出する（Ｓ４０３）。図２８の例では、空き転送通番として“２”が抽出される。
【０２２０】
上記抽出した転送通番を、受信転送テーブル２３０Ａに追加する（Ｓ４０４）。図２８の例では、ＧＷ−Ａは、ブロードキャストパケット／マルチキャストパケットの発信元のゲートウェイであるので、受信転送テーブル２３０Ａに、「転送通番（“２”）」、「内部管理転送通番（“Ｌｏｃａｌ”）」、「グループ通番（“１”）」及び「サブ内部管理転送通番（無設定）」の４項目から構成されるレコードが追加される。
【０２２１】
次に、ブロードキャスト／マルチキャスト用の出力ポートに対応する内部管理転送通番（ＬＴＮ）を送信転送テーブル２４０Ａに追加する。図２８の例では、送信転送テーブル２４０Ａの空きエントリに、「内部管理転送通番（“２”）」、「転送通番（“２”）」、「グループ通番（無設定）」及び「出力ポート（“ＡＢＣ”）」から構成されるレコードが追加される。
【０２２２】
続いて、グローバルテーブル２２０Ａからブロードキャスト／マルチキャスト用のアドレスを抽出する（Ｓ４０６）。図２８の例では、１つのブロードキャスアドレス(“Ｂｒｏａｄ”)と１つのマルチキャストアドレス“Ｍｕｌｔｉ”が抽出される。
【０２２３】
そして、最後に、グローバルテーブル２２０Ａのブロードキャス用の仮想ＩＰアドレスまたはマルチキャスト用の仮想ＩＰアドレスが設定されたレコードの「サブ内部管理転送通番」の項目に、ステップＳ４０５で送信転送テーブル２４０Ａに追加した内部管理転送通番（共通送信用内部管理転送通番）を追加する（Ｓ４０７）。
【０２２４】
このステップＳ４０７の処理は、ステップＳ４０６で抽出したアドレスの数だけ繰り返す。ステップＳ４０７に繰り返し処理により、図２８の例では、グローバルテーブル２２０Ａのブロードキャスト用仮想ＩＰアドレス（“Ｂｒｏａｄ”）が設定されたレコードとマルチキャスト用仮想ＩＰアドレスが設定されたレコードのサブ内部管理転送通番項目にサブ内部管理転送通番（“２”）が設定される。
【０２２５】
｛ルート切り替え｝
図２８に示すように一時的にブロードキャストパケット／マルチキャストパケットを２ルートで転送している状態において、ルート切り替えを行い、ルートを一本化する手法について、図３２〜図３５を参照しながら説明する。
【０２２６】
図３２は、図２８に示すブロードキャスト／マルチキャストの２ルート転送状態を、１ルートでの転送に切り替えた状態を示す図である。図３２において、図２８の構成要素と同じ構成要素には同一の符号を付与している。図３３、３４、３５は、それぞれ、図３２に示す状態におけるＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃの内部テーブルの内容を示す図である。
【０２２７】
図２８において、メインルートがＧＷ−Ａの出力ポートＡＢからパケットが送信されるルート、サブルートがＧＷ−Ａの出力ポートＡＢＣからパケットが送信されるルートであるとする。図３２は、上記メインルートと上記サブルートを切り替え、ブロードキャスト／マルチキャスト用のルートを上記サブルートに一本化した例を示している。
【０２２８】
このようなサブルートへの一本化は、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃが、それぞれの
内部テーブルにおいて、内部管理転送通番（ＬＴＮ）とサブ内部管理転送通番（ＳｕｂＬＴＮ）の切り替える処理や、送信転送テーブル２４０において不要な内部管理転送通番（ＬＴＮ）を削除する処理を実行することで実現される（図３３〜図３５を参照）。
【０２２９】
上記ルート一本化により、内部テーブルを、図２８〜図３０に示す状態から図３３〜図３５のような状態に変更するＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃの処理を説明する。
｛２ルート対象のＧＷの内部テーブル変更処理｝
図３６は、ＧＷ−Ａが内部テーブルを、図２８に示す状態から図３３に示す状態に変更する処理を示すフローチャートである。図２８では、ＧＷ−Ａが２ルート転送の発信元のＧＷ（２ルート対象のＧＷ）となっている。図３６のフローチャートは、前述した図１９のフローチャートと同様である。
【０２３０】
ＧＷ−Ａは、ブロードキャスト／マルチキャスト用のルートを１つのルート決定する（Ｓ５０１）。図３２の例では、ＧＷ−Ａは、パケットを出力ポートＡＢＣから送信するルートに決定する。この処理において、グローバルテーブル２２０Ａの仮想ＩＰアドレス（Ｖ−ＩＰ）が“Ｂｒｏａｄ”に設定されている行と“Ｍｕｌｔｉ”に設定されている行について、内部管理転送通番（ＬＴＮ）とサブ内部管理転送通番（ＳｕｂＬＴＮ）を交換し、交換後に、サブ内部管理転送通番を削除する。
【０２３１】
ルートコードテーブル２１０Ａから、上記ルート決定に伴い不要になったルートコードを削除する（Ｓ５０２）。この処理により、図３３（ｂ）に示すように、ルートコードテーブル２１０Ａからルートコード（“ＡＢＣ”）が削除される。
【０２３２】
グローバルテーブル２２０Ａの削除対象となったルートに対応する内部管理転送通番（ＬＴＮ）を抽出する（Ｓ５０３）。この処理により、グローバルテーブル２２０Ａから“３”と“４”の内部管理転送通番が抽出される。
【０２３３】
ステップＳ５０３で抽出した内部管理転送通番の数だけ、以下に説明するステップＳ５０４〜Ｓ５０７の処理を繰り返す。図２８の例では、ステップＳ５０４〜Ｓ５０６の処理が２回繰り返される。
【０２３４】
ステップＳ５０４では、前記内部管理転送通番（以下、対象内部管理転送通番）が他のテーブルに設定（定義）されているか判断する。そして、他のテーブルに定義されていなければ処理をステップＳ５０５に移し、他のテーブルで定義されていれば処理をステップＳ５０７に移す。
【０２３５】
ステップＳ５０５では、送信転送テーブル２４０Ａから前記対象内部管理転送通番が設定されている行（レコード）を削除する。この処理により、最初に、“３”の内部管理転送通番が設定されている行が送信転送テーブル２４０Ａから削除される。そして、２回目に、“４”の内部管理転送通番が設定されている行が送信転送テーブル２４０Ａから削除される。
【０２３６】
ステップＳ５０７では前記対象内部管理転送通番が他のルートで使用されている削除処理は行わない。
ステップＳ５０５の処理が終了すると、ステップＳ５０４で削除した行の出力ポート項目に設定されていた出力ポートの対向ＧＷに対して、上記削除行に設定されていた転送通番（ＴＮ）の削除依頼を行う（Ｓ５０６）。この処理により、最初に、ＧＷ−Ｂに対して転送通番“３”の削除依頼が行われ、２回目に、ＧＷ−Ｂに対して転送通番“４”の削除依頼が行われる。
【０２３７】
以上の処理により、ＧＷ−Ａの内部テーブルに内、グローバルテーブル２２０Ａと送信転送テーブル２４０Ａが、それぞれ、図３３（ｃ）、（ｅ）に示すように変更される。
｛転送通番（ＴＮ）削除処理対象のＧＷの内部テーブル変更処理｝
＜ＧＷ−Ｂの処理＞
図３７は、第４実施形態におけるＧＷ−Ｂの内部テーブル変更処理を示すフローチャートである。図３７のフローチャートは、前述した図２０のフローチャートと同様である。
【０２３８】
ＧＷ−Ｂは、図３６のステップＳ５０６の処理により、ＧＷ−Ａから２つの転送通番（“３”と“４”）について削除依頼を受ける（Ｓ５１１）。
この削除依頼を受けて、ＧＷ−Ｂは、送信転送テーブル２４０Ｂを参照し、上記削除依頼を受けた２つの転送通番（“３”と“４”）が、同じグループ（この場合は、ＰＣ−Ａが属するグループ通番（ＧＮ）が“１”のグループ１）の他のＧＷ（ＧＷ−ＡとＧＷ−Ｃ）向けに設定されているか収集する（Ｓ５１２）。図３２の例では、ＧＷ−ＡとＧＷ−Ｃに対して、ＧＷ−Ｂ向けの転送通番“３”と“４”の情報を収集する。
【０２３９】
続いて、その収集結果を基に、他のＧＷで上記削除依頼を受けた転送通番（対象転送通番）が使用されているか判断する（Ｓ５１３）。そして、前記対象転送通番が他のＧＷで使用されていなければ処理をステップＳ５１４に移し、使用されていれば処理をステップＳ５１９に移す。図３２の例では使用されていないので、処理はステップＳ５１４に移行する。
【０２４０】
ステップＳ５１４では、前記対象転送通番を受信転送テーブル２３０Ｂから削除する。この処理により、受信転送テーブル２３０Ｂから転送通番として“３”と“４”が設定されている行が削除される。
【０２４１】
ステップＳ５１４に続いて、上記受信転送テーブル２３０Ａから削除した転送通番の内部管理転送通番（ＬＴＮ）は“Ｌｏｃａｌ”であったか判断する（Ｓ５１５）。“Ｌｏｃａｌ”でなければ処理をステップＳ５１６に移し、“Ｌｏｃａｌ”であれば本フローチャートの処理を終了する。図３２の例では、転送通番“３”に対応する内部管理転送通番は“２”であり、転送通番“４”に対応する内部管理転送通番は“５”である（図２９（ｄ）参照）。このため、処理はステップＳ５１６に移る。
【０２４２】
ステップＳ５１６では、上記転送通番が他のテーブルで定義されているか判断する。そして、他のテーブルで定義されていなければ処理をステップＳ５１７に移し、定義されていれば処理をステップＳ５２０に移す。図３２の例では、内部管理転送通番“２”は受信転送テーブル２３０Ａで定義されているが、内部管理転送通番“５”は定義されていない。
【０２４３】
このため、転送通番“２”については処理をステップＳ５２０に移し、転送通番“５”については処理をステップＳ５１７に移す。
ステップＳ５１７では、送信転送テーブル２４０Ｂから対象の内部管理転送通番が設定されている行を削除する。図３２の例では、送信転送テーブル２４０Ａの内部管理転送通番“５”が設定されている行が削除される。
【０２４４】
そして、最後に、ステップＳ５１７で削除した内部管理転送通番に対応する出力ポート向けのＧＷに対して、該内部管理転送通番に対応する転送通番（ＴＮ）の削除依頼を行う（Ｓ５１８）。図３２の例では、上記削除された内部管理転送通番に対応する出力ポートが“ＢＣ”であったので、ＧＷ−Ｃに対して、転送通番“１”の削除依頼を行う。
【０２４５】
＜ＧＷ−Ｃの処理＞
ＧＷ−Ｃの処理は、ＧＷ−Ｂと同様に図３７のフローチャートに示した手順で行われる。ここでは、図２７の例を取り上げて説明する。
【０２４６】
ステップＳ５１１で、ＧＷ−Ｂから転送通番“１”の削除依頼を受け取る。ステップＳ５１２の処理を実行して、ＧＷ−ＡとＧＷ−ＢからＧＷ−Ｃ向けの転送通番“１”の情報を収集する。次に、ステップＳ５１３の判断処理を実行し、送信転送テーブル２４０ＣにＧＷ−Ｂからの転送通番“１”の設定があると判断する。このため、ステップＳ５１９に移行し、図３７のフローチャートの処理を終了する。
【０２４７】
｛各ＧＷの処理｝
＜ＧＷ−Ａの処理＞
図３８は、第４実施形態におけるＧＷ−ＡのＩＰパケットの送受信処理を示すフローチャートである。図３８において、図２０と同じステップには同一のステップ番号を付与している。図３８のフローチャートは、図２０のフローチャートと全く同様である。したがって、図３８のフローチャートの説明は割愛する。
【０２４８】
＜ＧＷ−Ｂの処理＞
図３９は、第４実施形態におけるＧＷ−ＢのＩＰパケットの送受信処理を示すフローチャートである。図３９において、図２３と同じステップには同一のステップ番号を付与している。また、図３９のステップＳ２４０（Ｓ２４１〜Ｓ２４４）及びステップＳ２６０（Ｓ２６１、Ｓ２６２）は、それぞれ、図２４のステップＳ３２０、ステップＳ３３０、ステップＳ３４０及びステップＳ３４０と同様である。また、図３９のステップＳ２４５とＳ２４６は、それぞれ、図２４のステップＳ３２５とＳ３２６と同様である。
【０２４９】
図３９のステップＳ２５０（Ｓ２５１、Ｓ２５２）は、図２４のステップＳ３３０（Ｓ３３１、Ｓ３３２）と似ているが、ステップＳ２５１とステップＳ３３１の処理が少し異なる。これは、第４実施形態のＧＷが備える受信転送テーブルのレコードは、第２実施形態のＧＷが備える受信転送テーブルのレコードと構成が異なるからである。すなわち、本実施形態の受信転送テーブルのレコードは、グループ通番（ＧＮ）の項目を有している。
【０２５０】
ここで、ステップＳ２５１の処理を説明する。ステップＳ２５１において、転送通番処理部６１４は、ＧＷ間ヘッダの転送通番（ＴＮ）を基に受信転送テーブル２３０Ｂを参照し、該転送通番が設定されているレコードにグループ通番（ＧＮ）の設定（指定）がある場合には、ＧＷ間ヘッダにそのグループ通番（ＧＮ）を設定する。また、上記レコードに設定されておる内部管理転送通番（ＬＴＮ）を指定する。
【０２５１】
図２７の例では、ＧＷ−Ｂは、グローバル側インターフェース６１２からＧＷ−Ａが送信したブロードキャストパケット１０５、１０６を受信する。ブロードキャストパケット１０５のＧＷ間ヘッダ１１０の転送通番（ＴＮ）は“３”であり、ブロードキャストパケット１０６の転送通番（ＴＮ）は“２”である。したがって、図２９（ｄ）の受信転送テーブル２３０Ｂを参照することにより、ブロードキャストパケット１０５のＧＷ間ヘッダ１１０に設定されている転送通番“２”にはグループ通番“１０”が指定されていることが分かる。また、ブロードキャストパケット１０６のＧＷ間ヘッダ１１０に設定されている転送通番“３”にはグループ通番が指定されていないことが分かる。したがって、この場合、ブロードキャストパケット１０６のＧＷ間ヘッダ１１０のグループ通番（ＧＮ）を“１０”に設定（変更）する。また、上記受信転送テーブル２３０Ｂの該当レコードの内部管理転送通番は“Ｌｏｃａｌ”となっているので、指定内部管理転送通番を“Ｌｏｃａｌ”とする。ブロードキャストパケット１０５は、グループ通番“２０”が設定されているので、そのＧＷ間ヘッダのグループ通番（ＧＮ）は書き換えられない。
【０２５２】
転送通番処理部６１４は、ブロードキャストパケット１０５またはブロードキャストパケット１０６のいずれか一方（先に受信したブロードキャストパケット）をヘッダ処理部６１３に転送する。そして、ステップＳ２６０において、ヘッダ処理部６１３は、前記ブロードキャストパケットのＧＷ間ヘッダに設定されている宛先通番“２５５”と発信元通番“１０１”を基にローカルテーブル２００Ｂとグローバルテーブル２２０Ｂを参照し、ブロードキャストパケット１０６のＴＣＰ／ＩＰヘッダ１２０の宛先アドレス（DＡ）、送信元アドレス（ＳＡ）を、それぞれ、“Ｂｒｏａｄ”と“ａＤ”に設定（変更）する（Ｓ２６１）。続いて、ヘッダ処理部６１３は、前記ブロードキャストパケットからＧＷ間ヘッダ１１０を削除し、その削除により得られたＩＰパケット１０７を、ローカル側インターフェース６１１を介してサーバ２０１に転送する。
【０２５３】
＜ＧＷ−Ｃの処理＞
図４０は、第４実施形態おけるＧＷ−ＣのＩＰパケットの送受信処理を示すフローチャートである。図４０において、図２４と同じステップには同一のステップ番号を付与している。また、図４０にいて、図３９のステップと同じステップには同一のステップ番号を付与している。ＧＷ−Ｃの転送通番処理部６１４の処理は、ＧＷ−Ｂの転送通番処理部６１４と同様である（ステップＳ２５０を参照）
図２７の例の場合、ＧＷ−Ｃは、ＧＷ−Ｂからブロードキャストパケット１０５とブロードキャストパケット１０８を受信する。そして、先に受信したブロードキャストパケットについて、ステップＳ３２０、Ｓ２５０、Ｓ３４０の順に処理を行い、ＩＰパケット１０９を、ローカル側インターフェース６１１を介してＮｏｔｅ−Ｃに転送する。
【０２５４】
［第５実施形態］
第５実施形態は、上述した第４実施形態のようにマルチキャストルートを追加する場合における、各ＧＷ間でのＧＷ間拡張ヘッダ情報の同期処理の手法に関するものである。
【０２５５】
図４１は、第５実施形態における各ＧＷ間でのＧＷ間拡張ヘッダ情報の同期処理のシーケンスを説明する図である。図４１は、図２７に示すように、ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃが、配下に、グループ１に属する端末を所有しており、ＧＷ−ＡとＧＷ−Ｂ、ＧＷ−ＢとＧＷ−Ｃ、ＧＷ−ＡとＧＷ−Ｃがトンネル接続状態であるときに、新規にブロードキャスト／マルチキャスト用のトンネルが確立され、２ルートでのブロードキャスト／マルチキャスに移行する場合のシーケンスを示している。
【０２５６】
図４１を参照しながら、ブロードキャスト／マルチキャストのルートを１ルートから２ルートに移行する場合におけるＧＷ間拡張ヘッダ情報の同期処理のシーケンスを説明する。
【０２５７】
ＧＷ−ＡとＧＷ−Ｂ間にトンネルを確立し、ＧＷ−ＡとＧＷ−Ｂ間でグループ１での通信（以下、グループ１通信）を確立する（ＳQ２１）。続いて、ＧＷ−ＢとＧＷ−Ｃ間にトンネルを確立し、ＧＷ−ＢとＧＷ−Ｃ間でグループ１通信を確立する（ＳQ２２）。さらに、続いて、ＧＷ−ＡとＧＷ−Ｃ間にトンネルを確立し、ＧＷ−ＡとＧＷ−Ｃ間でグループ１通信を確立する（ＳQ２３）。
【０２５８】
ここで、ＧＷ−ＡとＧＷ−Ｂに確立されたトンネルとＧＷ−ＢとＧＷ−Ｃ間に確立されたトンネルから構成される通信経路は、ブロードキャスト／マルチキャストが可能であるとする（１ルートでのブロードキャスト／マルチキャストが可能な状態）。
【０２５９】
次に、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ間でブロードキャスト／マルチキャストを行うためのトンネルを確立し（ＳＱ２４）、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ間で、２ルートでのブロードキャスト／マルチキャストの転送を開始する（ＳＱ２５、ＳＱ２６）。
【０２６０】
前記シーケンスＳＱ２４で確立するトンネル（以下、新規トンネルと記載）は、例えば、図２６に示すように、ＧＷ−ＡとＧＷ−Ｂ、ＧＷ−Ｃが設けられているときに、ＧＷ−ＡとＧＷ−Ｂ、ＧＷ−Ｃ間に新たにブロードキャスト／マルチキャスト用のトンネルを確立することにより実現される。この場合、ＧＷ−Ａは新規トンネルを利用して、図４に示すようなフォーマットのパケットをＣＥに送信する。このパケットのＩＰヘッダ１１には、マルチキャストのアドレスが設定される。
【０２６１】
前記ＣＥは、前記パケットのＩＰヘッダ１１にマルチキャストのアドレスが設定されているので、そのパケットをＧＷ−ＢとＧＷ−Ｃに転送する。したがって、この場合、ＧＷ−Ａ→ＧＷ−Ｂ→ＧＷ−Ｃという既存のブロードキャスト／マルチキャスト用ルートと、ＧＷ−Ａ→ＣＥ→ＧＷ−Ｂ→ＧＷ−ＣというルートとＧＷ−Ａ→ＣＥ→ＧＷ−Ｃというルートから構成される新規ブロードキャスト／マルチキャスト用ルートができる。
【０２６２】
前記シーケンスＳＱ２４、ＳＱ２５、ＳＱ２６においては、ルートコードを決定する。ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、それぞれが保有するルートコードテーブル２１０に前記ルートコードを設定する。また、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、ＧＷ間拡張ヘッダのチェックを開始する。
【０２６３】
次に、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ間でＧＷ間拡張ヘッダ情報同期処理を行い、共通内部管理転送通番（共通送信用内部管理転送通番と共通受信用内部管理転送通番）の割り当てを行う（ＳＱ２７、ＳＱ２８）。上記シーケンスＳＱ２７、ＳＱ２８のＧＷ間拡張ヘッダ情報同期処理により、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、グローバルテーブル２２０、受信転送テーブル２３０及び送信転送テーブル２４０に、２ルート転送に必要な情報を設定する（ＳＱ２９、ＳＱ３０、ＳＱ３１）。
【０２６４】
以上のようにして、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ間で、ブロードキャスト／マルチキャスト用パケットが２ルートで転送される状態になる（ＳＱ３２）。
その後、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、切り替え系を確定する。すなわち、ブロードキャスト／マルチキャスト用のルートを一本化するため、メインルートとして残すルートを確定する（ＳＱ３３、ＳＱ３４）。
【０２６５】
上記シーケンスＳＱ３３、ＳＱ３４で確定したルート切り替え情報に基づき、ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃは、グローバルテーブル２２０、受信転送テーブル２３０及び送信転送テーブル２４０を変更し、ルートコードテーブルからルートを削除する（ＳＱ３５、ＳＱ３６、ＳＱ３７）。
【０２６６】
そして、ＧＷ−Ａ、ＧＷ−Ｃ及びＧＷ−Ｃ間での２ルートでのブロードキャスト／マルチキャストによるパケット転送を終了する（ＳＱ３８、ＳＱ３９）。この２ルート転送の終了に伴い、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、受信するＩＰパケットのＧＷ間拡張ヘッダのチェックを終了する。
【０２６７】
続いて、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、ルート一本化に伴い、不要となったルートを削除するための同期処理を実行する（ＳＱ４０、ＳＱ４１）。そして、上記不要ルート削除同期処理の結果に応じて、ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃは、グローバルテーブル２２０、受信転送テーブル及び送信転送テーブル２４０を変更する（ＳＱ４２、ＳＱ４３、ＳＱ４４）。
【０２６８】
［第６実施形態］
ＧＷ間のトンネル化だけでなく、ＧＷとホスト（端末）間もトンネルすることでセキュ
リティを向上させるような用途も想定されえる。例えば、外出先のカフェから、ノートパソコンのようなホストで社内ＬＡＮに接続するような場合である。本出願人は、前記特許文献３で、そのようなホストの構成を提案している。
【０２６９】
第６実施形態では、前述したＧＷ間経路のシームレスな切り替えを可能とする機能をホストに持たせることで、ホストが接続されるＧＷの処理や資源（ハードウェアやソフトウェア）の負担を軽減したシームレスなネットワーク切り替え手法を実現するものである。
【０２７０】
｛第１の２ルート接続例｝
＜構成＞
図４２は、第６実施形態におけるＮｏｔｅ−Ｃの２ルート接続の構成例を示す図である。同図において、図１の構成要素と同一な構成要素には同じ符号を付与している。
【０２７１】
図４２において、実家のＰＣ−Ｂ、自宅のＰＣ−Ａ及び出張先のＮｏｔｅ−Ｃがグループ１に属している。Ｎｏｔｅ−Ｃは、有線と無線のＬＡＮインターフェースを備えており、ＧＷ−Ａとの間にトンネル７０１、７０２の２つのトンネルを確立している。トンネル７０１はＮｏｔｅ−Ｃの有線ＬＡＮインターフェースを利用した有線通信によるトンネルであり、トンネル７０２はＮｏｔｅ−Ｃの無線ＬＡＮインターフェースを利用した無線通信によるトンネルである。また、トンネル７０１、７０２及びトンネル７０３は、いずれも、ユニキャスト及びブロードキャスト／マルチキャストでの通信が可能となっている。このため、Ｎｏｔｅ−Ｃは、自宅のＰＣ−Ａと実家のＰＣ−Ｂに接続可能な状態となっている。
【０２７２】
＜シーケンス＞
図４３は、Ｎｏｔｅ−Ｃが図４２に示すような２ルート接続状態に至るまでの手順を示すシーケンス図である。
【０２７３】
以下に述べるシーケンスは、ＧＷ−ＡとＧＷ−Ｂがグループ１で通信確立状態にあるときに、Ｎｏｔｅ−Ｃが、突然、ＧＷ−Ａに対して有線と無線の回線で２ルート接続を行う場合のシーケンスである。
【０２７４】
ＧＷ−ＡとＧＷ−Ｂ間でトンネル８０００を確立し、ＧＷ−ＡとＧＷ−Ｂ間でグループ１の通信を確立する（ＳＱ５１）。Ｎｏｔｅ−Ｃは、ＧＷ−Ａに対してグループ１での通信接続を要求する（ＳＱ５２）。ＧＷ−Ａは、Ｎｏｔｅ−Ｃとのグループ１での通信接続を許可する応答を返す（ＳＱ５３）。
【０２７５】
次に、ＧＷ−ＡとＮｏｔｅ−Ｃは、トンネル７０１を確立し、グループ１での通信（有線）を確立する（ＳＱ５４）。続いて、ＧＷ−ＡとＮｏｔｅ−Ｃは、トンネル７０２を確立し、グループ１での通信（無線）を確立する（ＳＱ５５）。
【０２７６】
続いて、トンネル７０１とトンネル７０２に対して、ＧＷ−ＡとＮｏｔｅ−Ｃで共通なトンネル通番（ＴＮ）を割り当てる。そして、ＧＷ−ＡとＮｏｔｅ−Ｃ間で、トンネル７０１とトンネル７０２による２ルート転送を開始する（ＳＱ５６）。
【０２７７】
次に、ＧＷ−ＡとＧＷ−Ｂとの間、及びＧＷ−ＢとＮｏｔｅ−Ｃとの間で、ＧＷ間拡張ヘッダ情報同期処理を行う（ＳＱ５７、ＳＱ５８）。このＧＷ間拡張ヘッダ情報同期処理において、ＧＷ−Ａ、ＧＷ−Ｂ及びＮｏｔｅ−Ｃは、ＧＷ間拡張ヘッダ情報を交換し、ルートコードなどのＧＷ間拡張ヘッダ情報を決定する。
【０２７８】
続いて、上記ＧＷ間拡張ヘッダ情報の交換結果に基づき、ＧＷ−Ａ、ＧＷ−Ｂ及びＮｏ
ｔｅ−Ｃは、それぞれのグローバルテーブル２２０、受信転送テーブル２３０及び送信転送テーブル２４０を設定（更新）する(ＳＱ５９、ＳＱ６０、ＳＱ６１)。
【０２７９】
以後、Ｎｏｔｅ−Ｃは、有線のトンネル７０１と無線のトンネル７０２を利用して、ＧＷ−Ａ、ＧＷ−Ｂとの間で２ルート転送状態になる（ＳＱ６２）。
｛第２の２ルート接続例｝
＜構成＞
図４４は、第６実施形態における、Ｎｏｔｅ−Ｃが２ルート接続を行う他の構成例を示す図である。図４４において、図４2と同一の構成要素には同じ符号を付与している。
【０２８０】
図４４を参照しながら、Ｎｏｔｅ−Ｃによる２ルート接続の他の構成を説明する。
ＧＷ−Ｃは、第２実施形態のＧＷ−Ｃのように、ＧＷ間ヘッダ（ＧＷ間標準ヘッダ１１１とＧＷ間拡張ヘッダ１１２）を認識して、ＧＷ間ヘッダを有するＩＰパケット１０１を中継可能なゲートウェイである。
【０２８１】
ＧＷ−ＡとＧＷ−Ｃ間には、ユニキャスト及びブロードキャスト／マルチキャストが可能なトンネル７１０が確立されている。また、Ｎｏｔｅ−ＣとＧＷ−Ｃ間には、有線通信用のトンネル７２１と無線通信用のトンネル７２２が確立されている。トンネル７２１とトンネル７２２は、共に、ユニキャスト及びブロードキャスト／マルチキャストでの通信が可能である。
【０２８２】
したがって、Ｎｏｔｅ−Ｃは、ＧＷ−Ａ配下のＰＣ−Ａと、トンネル７２１もしくはトンネル７２２とトンネル７１０を利用して、ユニキャスト及ぶブロードキャスト／マルチキャストでの通信が可能である。また、Ｎｏｔｅ−Ｃは、ＧＷ−Ｂ配下のＰＣ−Ｂと、トンネル７２１もしくはトンネル７２２、トンネル７１０及びトンネル８０００を利用して、ユニキャスト及びブロードキャスト／マルチキャストでの通信が可能である。
【０２８３】
＜シーケンス＞
図４５は、図４４に示すＮｏｔｅ−Ｃの２ルート接続を構成するための処理手順を示すシーケンス図である。
【０２８４】
ＧＷ−Ｂ、ＧＷ−Ａ及びＧＷ−Ｃは、トンネルを確立し、グループ１での通信を確立する。すなわち、ＧＷ−ＢとＧＷ−Ａ間にトンネル８０００を、ＧＷ−ＡとＧＷ−Ｃ簡にトンネル７１０を確立し、トンネル８０００とトンネル７１０を利用したグループ１での通信を確立する（ＳＱ７１）。
【０２８５】
Ｎｏｔｅ−Ｃは、ＧＷ−Ａに対してグループ１の通信接続を要求する（ＳＱ７２）。
ＧＷ−Ａは、上記グループ１通信接続要求を受け取ると、グループ１通信接続応答（Ｎｏｔｅ−ＣとＧＷ−Ｃ間でのグループ１通信接続応答）をＮｏｔｅ−Ｃに返す（ＳＱ７３）。
【０２８６】
Ｎｏｔｅ−ＣとＧＷ−Ｃは、トンネル７２１を確立し、そのトンネル７２１を利用する有線によるグループ１通信を確立する（ＳＱ７４）。続いて、Ｎｏｔｅ−ＣとＧＷ−Ｃは、トンネル７２２を確立し、そのトンネル７２２を利用する無線によるグループ１通信を確立する（ＳＱ７５）。
【０２８７】
Ｎｏｔｅ−ＣとＧＷ−Ｃは、共通の転送通番（ＴＮ）を割り当て、トンネル７２１、７２２による２ルート転送を開始する（ＳＱ７６）。
ＧＷ−ＢとＧＷ−Ｃ間、ＧＷ−ＡとＧＷ−Ｃ間及びＧＷ−ＣとＮｏｔｅ−Ｃ間で、ＧＷ間拡張ヘッダ情報同期処理を行う（ＳＱ７７、ＳＱ７８、ＳＱ７９）。
【０２８８】
上記ＧＷ間拡張ヘッダ情報同期処理では、ルートコードを決定し、ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃ及びＮｏｔｅ−Ｃ間でＧＷ間拡張ヘッダ情報を交換する。
ＧＷ−Ｂ、ＧＷ−Ｃ及びＮｏｔｅ−Ｃは、それぞれのグローバルテーブル２２０、受信転送テーブル２３０及び送信転送テーブル２４０を設定（更新）する（ＳＱ８０、ＳＱ８１、ＳＱ８２）。
【０２８９】
そして、Ｎｏｔｅ−Ｃは、ＧＷ−Ｃ、ＧＷ−Ａ、ＧＷ−Ｂとの間で、２ルート転送状態となる（ＳＱ８３）。この２ルート転送において、Ｎｏｔｅ−ＣとＧＷ−Ｃは、ＧＷ間ヘッダ（ＧＷ間標準ヘッダとＧＷ間拡張ヘッダ）のチェックを行う。
【０２９０】
｛Ｎｏｔｅ−Ｃの構成｝
図４６は、図４３、４５のＮｏｔｅ−Ｃのシステム構成を示す図である。
Ｎｏｔｅ−Ｃ８００は、ユーザ領域８１０とカーネル領域８３０を備え、それらの領域の境界に２つの実ＬＡＮインターフェース（実ＬＡＮ−ＩＦ）８２１Ｒ、８２１ｃと仮想ＬＡＮインターフェース（仮想ＬＡＮ‐ＩＦ）８２３が設けられている。
【０２９１】
ユーザ領域８１０には、ユーザ用のアプリケーションプログラムであるクライアントアプリケーション８１１が設けられている。カーネル領域８３０には、物理ＬＡＮドライバ８３１Ｒ（第１の物理ＬＡＮドライバ）、無線ＬＡＮカード８３２、物理ＬＡＮドライバ８３１ｃ、有線ＬＡＮカード８３３、仮想ＬＡＮドライバ８３４、ＧＷ間ヘッダ＆ＮＡＴ処理部８３５（以下、ヘッダ処理部８３５と記載）、転送通番処理部８３６、ルート管理処理部８３７、トンネル処理部８３８が設けられている。
【０２９２】
物理ＬＡＮドライバ８３１Ｒは、実ＬＡＮインターフェース８２１Ｒ、無線ＬＡＮカード８３２及びトンネル処理部８３８に接続されている。また、物理ＬＡＮドライバ８３１ｃは、無線ＬＡＮカード８３２、有線ＬＡＮカード８３３及びトンネル処理部８３８に接続されている。仮想ＬＡＮドライバ８３４は、仮想ＬＡＮインターフェース８２３に接続されている。
【０２９３】
無線ＬＡＮカード８３２は、無線によりＩＰパケットを送受信するＮＩＣ(Network Interface Card)であり、無線ＬＡＮ（不図示）に接続されている。有線ＬＡＮカード８３３は、有線によりＩＰパケットを送受信するＮＩＣであり、有線ＬＡＮ（不図示）に接続されている。無線ＬＡＮカード８３２と有線ＬＡＮカード８３３は、図２１のグローバル側インターフェース６１２に相当する。
【０２９４】
ヘッダ処理部８３５、転送通番処理部８３６、ルート管理処理部８３７及びトンネル処理部８３８は、それぞれ、図２１のヘッダ処理部６１３、転送通番処理部６１４、ルート管理処理部６３１及びトンネル処理部６１６とほぼ同等の機能を備える。
【０２９５】
Ｎｏｔｅ−Ｃにおいては、クライアントアプリケーション８１１によって、ＧＷ−Ｃに送信するデータを含むＩＰパケットが生成される。このＩＰパケットは、ＩＰｖ４(Internet Protocol version 4)またはＩＰｖ６(Internet Protocol version 6)の規格に従ったフォーマットになっている。
【０２９６】
クライアントアプリケーション８１１によって生成されたＩＰパケットは、その宛先アドレス（ＤＡ）を基に、内部に保持されているルーティング情報（例えば、グローバルテーブル）を参照することにより、通常のＩＰパケット（以下、通常ＩＰパケットと記載）であるかまたはグループ内通信用のＩＰパケット（以下、グループ内通信用ＩＰパケットと記載）であるか判断される。すなわち、例えば、ＩＰパケットの宛先アドレスが仮想Ｉ
Ｐアドレスであり、その仮想ＩＰアドレスが前記グローバルテーブルに設定されていれば、グループ内通信用ＩＰパケットと判断する。その逆であれば、通常ＩＰパケットと判断する。そして、通常ＩＰパケットであれば、実ＬＡＮインターフェース８２１Ｒまたは実ＬＡＮインターフェース８２１ｃに送られる。一方、グループ内通信用ＩＰパケットであれば、仮想ＬＡＮインターフェース８２３に送られる。尚、グループ内通信用ＩＰパケットは、前記グループメンバ間通信ＩＰパケットと同じものある。
【０２９７】
通常ＩＰパケットは、実ＬＡＮインターフェース８２１Ｒ、物理ＬＡＮドライバ８３１Ｒ及び無線ＬＡＮカード８３２、または、実ＬＡＮインターフェース８２１ｃ、物理ＬＡＮドライバ８３１ｃ及び有線ＬＡＮカード８３３を経由して送信される。
【０２９８】
これに対し、グループ内通信用ＩＰパケットは、仮想ＬＡＮインターフェース８２３により、無線ＬＡＮカード８３２を使用して送信されるか、または、有線ＬＡＮカード８３３を使用して送信されるか判断される。仮想ＬＡＮインターフェース８２３は、前記有線ＬＡＮと前記無線ＬＡＮの通信状態をチェックし、転送効率の良い方のＬＡＮインターフェースから、グループ内通信用ＩＰパケットが送信されるように制御する。  第６実施形態では、このように、仮想ＬＡＮインターフェース８２３が、物理ＬＡＮドライバ８３１ｃと物理ＬＡＮドライバ８３１Ｒから、それぞれ、前記有線ＬＡＮと無線ＬＡＮの通信状態に関する情報（トラフィック量など）を入力し、グループ内通信用ＩＰパケットの転送ルートをシームレスに切り替える。
【０２９９】
仮想ＬＡＮインターフェース８２３は、グループ内通信用ＩＰパケットを仮想ＬＡＮドライバ８３４に出力する際、そのグループ内通信用ＩＰパケットを送信すべきＬＡＮインターフェース（無線ＬＡＮカード８３２または有線ＬＡＮカード８３３）を指定する。
【０３００】
仮想ＬＡＮドライバ８３４は、仮想ＬＡＮインターフェース８２３から指定されたＬＡＮインターフェース情報（以下、便宜上、指定ＬＡＮインターフェース情報と記載）をヘッダ処理部８３５に伝える。この指定ＬＡＮインターフェース情報は、ヘッダ処理部８３５、転送通番処理部８３６、ルート管理処理部８３７、トンネル処理部８３８と、順次、伝送される。
【０３０１】
トンネル処理部８３８は、前記指定ＬＡＮインターフェース情報に従って、ルート管理処理部８３７から受け取るグループ内通信用ＩＰパケットを、物理ＬＡＮドライバ８３１Ｒまたは物理ＬＡＮドライバ８３１ｃに送る。
【０３０２】
ヘッダ処理部８３５、転送通番処理部８３６、ルート管理処理部８３７及びトンネル処理部８３８の機能（処理）は、前述した図２１のＧＷのヘッダ処理部８３５、転送通番処理部８３６、ルート管理処理部８３７及びトンネル処理部８３８と同様である。したがって、前記グループ内通信用ＩＰパケットは、前記ＧＷ間ヘッダ（前記ＧＷ間標準ヘッダと前記ＧＷ間拡張ヘッダから構成されるヘッダ）が付加されて、物理ＬＡＮドライバ８３１ｃまたは物理ＬＡＮドライバ８３１Ｒに送られる。
【０３０３】
Ｎｏｔｅ−Ｃは、ＧＷ−Ｃから、通常ＩＰパケットまたは前記ＧＷ間ヘッダによりカプセル化されたＩＰパケット（以下、カプセル化パケットと記載）を受信する。Ｎｏｔｅ−Ｃは、ＧＷ−Ｃから送信されてくる上記２種類のパケットを、無線ＬＡＮカード８３２または有線ＬＡＮカード８３３で受信する。無線ＬＡＮカード８３２は、受信したパケットを物理ＬＡＮドライバ８３１Ｒに転送する。有線ＬＡＮカード８３３は、受信したパケットを物理ＬＡＮドライバ８３１ｃに転送する。
【０３０４】
物理ＬＡＮドライバ８３１ｃ、８３１Ｒは、受信したパケットが、通常ＩＰパケットま
たはカプセル化パケットであるか判断する。そして、通常ＩＰパケットであれば、それを実ＬＡＮインターフェース８２１ｃ、８２１Ｒに転送する。一方、カプセル化パケットであれば、それをトンネル処理部８３８に転送する。
【０３０５】
実ＬＡＮインターフェース８２１ｃ、８２１Ｒは、物理ＬＡＮドライバ８３１ｃ、８３１Ｒから受信した通常ＩＰパケットをクライアントアプリケーション８１１に渡す。
トンネル処理部８３８で受信されたカプセル化パケットは、トンネル処理部８３８、ルート管理処理部８３７、転送通番処理部８３６及びヘッダ処理部８３５により、前述した図２１のＧＷ８００と同様の処理を施されて、仮想ＬＡＮドライバ８３４に渡される。このようにして、仮想ＬＡＮドライバ８３４は、カプセル化パケットからＧＷ間ヘッダが外されたパケット（通常ＩＰパケット）をトンネル処理部８３８から受け取る。仮想ＬＡＮドライバ８３４は、その受け取った通常ＩＰパケットを仮想ＬＡＮインターフェース８２３に送る。仮想ＬＡＮインターフェース８２３は、仮想ＬＡＮドライバ８３４から受け取った前記通常ＩＰパケットをクライアントアプリケーション８１１に渡す。
【０３０６】
｛Ｎｏｔｅ−Ｃの詳細構成｝
図４７は、図４６に示すＮｏｔｅ−Ｃのカーネル領域８３０のより詳細な構成を示す図である。図４７において、図４６の構成要素と同じ構成要素には同じ符号を付与している。また、図２１の構成要素と同じ構成要素にも同じ符号を付与している。
【０３０７】
物理ＬＡＮドライバ８３１ｃと物理ＬＡＮドライバ８３１Ｒは、ＧＷのグローバル側インターフェース６１２に相当する。また、仮想ＬＡＮインターフェース８２３は、ＧＷのローカル側インターフェース６１１に相当する。
【０３０８】
ＧＷは、グローバル側インターフェース６１２を介して対向ＧＷとＩＰパケット（通常ＩＰパケットまたはカプセル化パケット）の送受信を行う。これに対し、Ｎｏｔｅ−Ｃは、物理ＬＡＮドライバ８３１ｃまたは物理ＬＡＮドライバ８３１Ｒを介して、有線ＬＡＮまたは無線ＬＡＮとの間でＩＰパケット（通常ＩＰパケットまたはカプセル化パケット）の送受信を行う。
【０３０９】
また、ＧＷは、ローカル側インターフェース６１１を介してＧＷ配下のホストとＩＰパケットの送受信を行うが、Ｎｏｔｅ−Ｃでは、仮想ＬＡＮインターフェース８２３を介してクライアントアプリケーション８１１とＩＰパケットの送受信を行う。
【０３１０】
｛Ｎｏｔｅ−Ｃのパケット送受信処理｝
図４７に示すＮｏｔｅ−Ｃの内部システムによるＩＰパケットの送受信処理を説明する。
【０３１１】
＜パケット送信処理＞
図４８は、第６実施形態におけるＮｏｔｅ−Ｃのパケット送信処理の手順を示すフローチャートである。図４８において、図２２のステップと同一のステップには同じステップ番号を付与している図４８のフローチャートが図２２のフローチャートと異なるのは、ステップ６０１とステップ６４０の処理である。
【０３１２】
ステップ６０１において、Ｎｏｔｅ−Ｃは、仮想ＬＡＮインターフェース８２３からクライアントアプリケーション８１１が生成したＩＰパケットを受信する。このＩＰパケットは、仮想ＬＡＮインターフェース８２３からヘッダ処理部８３５に転送される。Ｎｏｔｅ−Ｃは、以後、ＧＷと同様に、ステップＳ１１０〜Ｓ１３０の処理を行う。
【０３１３】
ステップＳ６４０では、トンネル処理部８３８は、転送通番処理部８３６またはルート
管理処理部８３７から送信されてくるＩＰパケット（カプセル化パケット）に対して暗号化等の処理を施し、該処理が施されたＩＰパケットを、指定出力ポートに対応する物理ＬＡＮドライバ（物理ＬＡＮドライバ８３１Ｃまたは物理ＬＡＮドライバ８３１Ｒ）へ送信する。
【０３１４】
＜パケット受信処理＞
図４９は、第６実施形態におけるＮｏｔｅ−Ｃのパケット受信処理の手順を示すフローチャートである。図４９において、図２４のステップと同一のステップには同じステップ番号を付与している。図４９のフローチャートが図２４のフローチャートと異なるのは、ステップ７０１とステップＳ７４０の処理である。
【０３１５】
ステップ７０１において、Ｎｏｔｅ−Ｃは、物理ＬＡＮドライバ８３１ｃ、８３１Ｒで、ＧＷ−Ｃから送られてくるＩＰパケットを無線ＬＡＮカード８３２または有線ＬＡＮカード８３３を経由して受信する。このＩＰパケットは、物理ＬＡＮドライバ８３１ｃまたは物理ＬＡＮドライバ８３１Ｒからトンネル処理部８３８に転送される。Ｎｏｔｅ−Ｃは、以後、ＧＷと同様に、ステップＳ３１０〜Ｓ３３０の処理を行う。
【０３１６】
ステップＳ７４０では、ヘッダ処理部８３５は、まず、ＧＷのヘッダ処理部６１３と同様の処理（を行う（Ｓ７４１）。このステップＳ７４１の処理は、図４０のステップＳ３４１の処理と同様である。そして、次に、カプセル化パケットからＧＷ間ヘッダを削除して通常ＩＰパケットを生成し、その通常ＩＰパケットを仮想ＬＡＮインターフェース８２３に転送する（Ｓ７４２）。
【０３１７】
第６実施形態では、ホスト（端末）としてノートパソコンを例示したが、本実施形態の構成はノートパソコン以外の各種形態のホストにも適用可能である。
また、本実施形態の端末装置は、前述した実施形態のＧＷと同様に、前記した通信ルートの最適化や、前述したルート切り替えを契機とする内部テーブルの同期更新を行うことも可能である。これらの処理は、前述したＧＷと同様な手法により実現できる。
【０３１８】
｛変形例｝
上述した実施形態は本発明をＧＷ（ゲートウェイ）に適用したものであるが、本発明は、ルータなどの他のパケット中継装置にも適用可能である。また、上述した第１、２、４、６実施形態のネットワークシステムは、ＣＰＥ(Customer Premises Equipment)としてＣＥデバイス を利用しているが、本発明のパケット中継装置は、ＣＥデバイス以外のＣＰＥを利用するネットワークシステムにも適用可能である。
【０３１９】
（付記１）
自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置であって、
前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に転送する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自配下の端末と送受信する第２のＩＰパケットの前記メインルート及び前記サブルートに関する前記グループメンバ間通信用のルーティング情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を記憶する記憶手段と、
該記憶手段に格納されている前記管理情報と前記ルート識別情報を設定、更新する情報管理手段と、
前記自配下の端末との間で、前記第２のＩＰパケットを送受信する第１の送受信手段と、
該記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、前記第１の送受信手段により受信された前記第２のＩＰパケットに前記グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダが付加された前記第１のＩＰパケットを作成する第１のパケット作成手段と、
該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、他のパケット中継装置に送信すると共に、他のパケット中継装置から自装置配下の端末宛の前記第１のＩＰパケットを受信する第２の送受信手段と、
該第２の送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除して、前記第２のＩＰパケットを作成し、その第２のＩＰパケットを前記第１の送受信手段に出力する第２のパケット作成手段と、
を備えることを特徴とするパケット中継装置。
（付記２）
付記１記載のパケット中継装置であって、
自装置が受信した前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、他のパケット中継装置に転送する転送手段を、
さらに備える。
（付記３）
付記１記載のパケット中継装置であって、
前記第２の送受信手段は、
他のパケット中継装置に送信する前記第１のＩＰパケットを暗号化する暗号化手段と、他のパケット中継装置から受信した前記第１のＩＰパケットを復号化する復号化手段と、
を備える。
（付記４）
付記１記載のパケット中継装置であって、
前記管理情報は、
自配下の第１の端末に割り当てられた実ＩＰアドレスに対応する、前記第１の端末に割り当てられた発信元識別番号と前記第１の端末が属する前記グループ番号を格納する第１テーブルと、
前記第１の端末の仮想ＩＰアドレスに対応する、前記第１の端末が送信する前記第２のＩＰパケットの宛先である第２の端末に割り当てられた宛先識別番号と前記第１の端末が属するグループのグループ番号と前記内部管理転送番号と前記サブ内部管理転送番号を格納する第２テーブルと、
前記内部管理転送番号に対応するＩＰパケットのルーティング情報と、前記サブ内部管理転送番号に対応する前記第２のＩＰパケットのルーティング情報を格納する第３テーブルと、
受信した前記第２のＩＰパケットのルーティング情報を、前記内部管理転送番号と前記サブ内部管理転送番号と前記グループ番号により管理している第４テーブルから構成される。
（付記５）
付記１記載のパケット中継装置であって、
前記ルーティング情報と前記ルート識別情報を、自配下の端末が前記第２のＩＰパケットを通信するために使用しているルートの状況に応じて更新する更新手段を、
さらに備える。
（付記６）
付記１記載のパケット中継装置であって、
前記自配下の端末が前記メインルートと前記サブルートを利用して前記第１のＩＰパケットを通信しているときに、他のパケット中継装置から前記端末宛ての第１のＩＰパケットを受信した場合、その第１のＩＰパケットを識別するためのパケット識別情報を格納する格納手段と、
該格納手段に格納されている前記パケット識別情報を基に、前記メインルートと前記サブルートから受信する前記端末を宛先とする同一な２つの前記第１のパケットの内、遅れて受信した第１のＩＰパケットを廃棄する遅達廃棄処理手段を、
さらに備える。
（付記７）
付記１記載のパケット中継装置であって、
前記ルーティング情報と前記ルート識別情報を更新することにより、前記第１のＩＰパケットの通信ルートを最適化する通信ルート最適化手段を、
さらに備える。
（付記８）
付記７記載のパケット中継装置であって、
前記通信ルート最適化手段は、前記第２のＩＰパケットを送受信している端末において、前記第２のＩＰパケットの通信量が規定値を超えたときに、前記通信ルートを最適化する。
（付記９）
付記７記載のパケット中継装置であって、
前記通信ルート最適化手段は、前記通信ルートの中継地点に配置されたパケット中継装置において、前記第１のＩＰパケットの転送量が規定値を超えたときに、前記通信ルートを最適化する。
（付記１０）
付記７記載のパケット中継装置であって、
前記通信ルート最適化手段は、前記通信ルートの最適化を段階的に実施する。
（付記１１）
付記１０記載のパケット中継装置であって、
前記通信ルート最適化手段は、まず、第一段階として前記第１のＩＰパケットを通信するルートを追加して前記第２のＩＰパケットを２つのルートで通信するようにし、次に、第二段階として前記第１のＩＰパケットを通信している２つのルートを、前記第２のＩＰパケットの転送率が良いほうのルートに一本化する。
（付記１２）
付記１１記載のパケット中継装置であって、
前記通信ルート最適化手段が最適化する通信ルートは、ユニキャスト用の通信ルートである。
（付記１３）
付記１２記載のパケット中継装置であって、
前記情報管理手段は、
前記第一段階において、追加された通信ルートに関するルーティング情報を前記記憶手段に追加し、
前記第二段階において、少なくとも前記内部管理転送番号または前記サブ内部管理転送番号のいずれか一方の設定を変更することにより、前記ルーティング情報から不要になった通信ルートに関係する転送識別番号と、前記内部管理転送番号もしくは前記サブ内部管理転送番号を削除する。
（付記１４）
付記１１記載のパケット中継装置であって、
前記通信ルート最適化手段が最適化する通信ルートは、マルチキャスト用の通信ルートである。
（付記１５）
付記１４記載のパケット中継装置であって、
前記情報管理手段は、
前記第一段階において、追加された通信ルートに関するルーティング情報の追加と、前記転送番号の共通化と、前記グループ番号の強制変換を行い、
前記第二段階において、少なくとも前記内部管理転送番号または前記サブ内部管理転送番号のいずれか一方の設定を変更することにより、前記ルーティング情報から不要になった通信ルートに関係する転送識別番号と、前記内部管理転送番号もしくは前記サブ内部管理転送番号を削除する。  
（付記１６）
付記１１記載のパケット中継装置であって、
前記最適化手段が最適化する通信ルートは、ブロードキャスト用の通信ルートである。（付記１７）
付記１６記載のパケット中継装置であって、
前記情報管理手段は、
前記第一段階において、追加された通信ルートに関するルーティング情報の追加と、前記転送番号の共通化と、前記グループ番号の強制変換を行い、
前記第二段階において、少なくとも前記内部管理転送番号または前記サブ内部管理転送番号のいずれか一方を設定変更し、前記ルーティング情報から不要になった通信ルートに関係する転送識別番号と、前記内部管理転送番号もしくは前記サブ内部管理転送番号を削除する。
（付記１８）
付記７記載のパケット中継装置であって、
前記通信ルート最適化手段は、自装置が２つの通信ルートから規定値以上の前記第２のＩＰパケットを受信したときに、前記第２段階として、メインルートとサブルートの切り替えを実施する。
（付記１９）
付記１記載のパケット中継装置であって、
自配下の端末が前記第２のＩＰパケットの通信に利用している通信ルートの使用状況を監視して、前記ルーティング情報と前記ルート識別情報を、前記通信ルートに配置されている他のパケット中継装置と同期して更新する同期更新手段を、
さらに備える。
（付記２０）
付記１９記載のパケット中継装置であって、
前記同期更新手段は、自装置が前記第１のＩＰパケットの通信ルートを１ルートから２ルートに切り替えるときに、前記同期更新を実施する。
（付記２１）
付記１９記載のパケット中継装置であって、
前記同期更新手段は、自装置が前記第１のＩＰパケットの通信ルートを２ルートから１ルートに切り替えるときに、前記同期更新を実施する。  
（付記２２）
自装置が収容するサブネットワークをグローバルネットワークに接続し、該サブネットワーク内の端末を仮想的にグループ化して、グループメンバ間通信により仮想閉域網を構築するパケット中継装置とＩＰパケットを通信する端末装置であって、
前記グループ間通信に使用するメインルートを識別するための内部管理転送番号と前記グループ内通信に使用するサブルートを識別するためのサブ内部管理転送番号と他のパケット中継装置に送信する第１のＩＰパケットの転送ルートを識別するための転送番号とグループを識別するためのグループ番号により管理された前記第１のＩＰパケット及び自装置内部で送受信処理する第２のＩＰパケットの前記メインルート及び前記サブルートに関する前記グループメンバ間通信用のルーティング情報と、前記メインルートと前記サブルートの２つのルートで転送されていることを識別するための情報であるルート識別情報を
記憶する記憶手段と、
該記憶手段に格納されている前記ルーティング情報と前記ルート識別情報を設定、更新する情報管理手段と、
前記記憶手段に記憶されている前記ルーティング情報を参照して、ＩＰヘッダの送信元アドレスとして自端末の実ＩＰアドレスが、宛先アドレスとして送信先の端末の仮想ＩＰアドレスが設定された前記第２のＩＰパケットに、グループメンバ間通信用の情報とメインルートに関する情報と前記ルート識別情報とパケットを識別するためのパケット識別番号を含むパケット中継装置間ヘッダを付加して、前記第１のＩＰパケットを作成する第１のパケット作成手段と、
該第１のパケット作成手段により作成された前記第１のＩＰパケットを、前記記憶手段に記憶されている前記ルーティング情報と前記ルート識別情報を参照して、自装置を収容しているパケット中継装置に送信すると共に、前記パケット中継装置から前記第１のＩＰパケットを受信する送受信手段と、
該送受信手段により受信された前記第１のＩＰパケットから前記パケット中継装置間ヘッダを削除し、次に、前記記憶手段に記憶されている前記ルーティング情報を参照して前記第２のＩＰパケットを作成する第２のパケット作成手段と、
を備えることを特徴とする端末装置。
（付記２３）
付記２２記載の端末装置であって、
前記送受信手段は、有線通信用の通信手段と無線通信用の通信手段を備え、前記パケット中継装置との前記第１のＩＰパケットの送受信を、該有線通信用通信手段と該無線通信用通信手段を利用して行う。
（付記２４）
付記２２記載の端末装置であって、
前記パケット中継装置間ヘッダを利用したルーティング処理が可能なパケット中継装置とトンネルを確立するトンネル確立手段を、
さらに備える。
（付記２５）
付記２２記載の端末装置であって、
前記管理情報は、
自配下の第１の端末に割り当てられた実ＩＰアドレスに対応する、前記第１の端末に割り当てられた発信元識別番号と前記第１の端末が属する前記グループ番号を格納する第１テーブルと、
前記第１の端末の仮想ＩＰアドレスに対応する、前記第１の端末が送信する前記第２のＩＰパケットの宛先である第２の端末に割り当てられた宛先識別番号と前記第１の端末が属するグループのグループ番号と前記内部管理転送番号と前記サブ内部管理転送番号を格納する第２テーブルと、
前記内部管理転送番号に対応するＩＰパケットのルーティング情報と、前記サブ内部管理転送番号に対応する前記第２のＩＰパケットのルーティング情報を格納する第３テーブルと、
受信した前記第２のＩＰパケットのルーティング情報を、前記内部管理転送番号と前記サブ内部管理転送番号と前記グループ番号により管理している第４テーブルから構成される。
（付記２６）
付記２２記載の端末装置であって、
前記ルーティング情報と前記ルート識別情報を更新することにより、前記第１のＩＰパケットの通信ルートを最適化する通信ルート最適化手段を、
さらに備える。
（付記２７）
付記２２記載の端末装置であって、
自装置が前記第１のＩＰパケットの通信に利用している通信ルートの使用状況を監視して、前記ルーティング情報と前記ルート識別情報を、前記通信ルートに配置されている他のパケット中継装置と同期して更新する同期更新手段を、
さらに備える。
【図面の簡単な説明】
【０３２０】
【図１】本発明の第１実施形態における、パケット転送経路の最適化の対象となるネットワークシステムを示す図である。
【図２】図１のネットワークシステムにおいてマルチキャストが行われる場合に生じる問題点を説明する図である。
【図３】図１のネットワークシステムを最適化する手法を示す図である。
【図４】第１実施形態において、Ｎｏｔｅ−Ｃがパケット通信で使用するＩＰパケットのフォーマットを示す図である。
【図５】第１実施形態における末端端末による段階的なトンネルのルート切り替え契機処理のアルゴリズムを示すフローチャートである。
【図６】第１実施形態における中継装置による段階的なトンネルのルート切り替え契機処理のアルゴリズムを示すフローチャートである。
【図７】第２実施形態のネットワークシステムの全体構成図である。
【図８】第２実施形態のネットワークシステムにおける一時的な２ルート転送状態を示す図である。
【図９】第２実施形態のネットワークシステムのＧＷ−Ａが保有するテーブルを示す図である。
【図１０】第２実施形態のネットワークシステムのＧＷ−Ｂが保有するテーブルを示す図である。
【図１１】第２実施形態のネットワークシステムのＧＷ−Ｃが保有するテーブルを示す図である。
【図１２】第２実施形態の２ルート決定時おけるＧＷ−Ａの内部テーブル設定処理を示すフローチャートである。
【図１３】第２実施形態においてＧＷ−Ｃが実行する、単純なルート切り替え方法の処理手順を示すフローチャートである。
【図１４】第２実施形態においてＧＷ−Ｃが実行する、転送率が良い方をメインルートとして残すルート切り替え方法の処理手順を示すフローチャートである。
【図１５】第２実施形態において、図８に示すように２ルートでユニキャストを行っていた状態から、メインルートからサブルートへの切り替えが発生した状態を示す図である。
【図１６】第２実施形態において、図１５に示すようなルート切り替えが行われた際におけるＧＷ−Ａの内部テーブルの状態を示す図である。
【図１７】第２実施形態において、図１５に示すようなルート切り替えが行われた際におけるＧＷ−Ｂの内部テーブルの状態を示す図である。
【図１８】第２実施形態において、図１５に示すようなルート切り替えが行われた際におけるＧＷ−Ｃの内部テーブルの状態を示す図である。
【図１９】第２実施形態におけるＧＷ−Ａの内部テーブル設定処理の手順を示すフローチャートである。
【図２０】第２実施形態における、図１５に示すようにルート一本化がなされた場合に、ＧＷ−Ｂが行う内部テーブルの設定処理の手順を示すフローチャートである。
【図２１】第２実施形態のＧＷ（ＧＷ−Ａ、ＧＷ−Ｂ及びＧＷ−Ｃ）の構成例を示す図である。
【図２２】第２実施形態において、ＧＷ−Ａがローカル側インターフェースから受信したＩＰパケットをグローバル側インターフェースから送信するまでの処理手順を示すフローチャートである。
【図２３】第２実施形態において、ＧＷ−Ｂがグローバル側インターフェースから受信するＩＰパケットを処理する手順を示すフローチャートである。
【図２４】第２実施形態において、ＧＷ−Ｃがグローバル側インターフェースから受信したＩＰパケットをローカル側インターフェースに出力するまでの処理手順を示すフローチャートである
【図２５】第３実施形態における、ＧＷ間拡張ヘッダ情報の同期更新処理のシーケンス図である
【図２６】第４実施形態のネットワークシステムにおける一時的な２ルート転送状態を示す図である。
【図２７】第４実施形態におけるシームレスな経路変更方法を全体的に示す図である。
【図２８】第４実施形態において、図２７に示すシームレスな経路変更方法を実現するＧＷ−Ａの内部テーブルの構成と状態を示す図である。
【図２９】第４実施形態において、図２７に示すシームレスな経路変更方法を実現するＧＷ−Ｂの内部テーブルの構成と状態を示す図である。
【図３０】第４実施形態において、図２７に示すシームレスな経路変更方法を実現するＧＷ−Ｃの内部テーブルの構成と状態を示す図である。
【図３１】第４実施形態におけるＧＷ−Ａの内部テーブル設定処理の手順を示すフローチャートである。
【図３２】第４実施形態において、図２８に示すブロードキャスト／マルチキャストの２ルート転送状態を、１ルートでの転送に切り替えた状態を示す図である。
【図３３】図３２に示す状態におけるＧＷ−Ａの内部テーブルの内容を示す図である。
【図３４】図３２に示す状態におけるＧＷ−Ｂの内部テーブルの内容を示す図である。
【図３５】図３２に示す状態におけるＧＷ−Ｃの内部テーブルの内容を示す図である。
【図３６】第４実施形態において、ＧＷ−Ａが内部テーブルを、図２８に示す状態から図３３に示す状態に変更する処理を示すフローチャートである。
【図３７】第４実施形態におけるＧＷ−Ｂの内部テーブル変更処理を示すフローチャートである。
【図３８】第４実施形態におけるＧＷ−ＡのＩＰパケットの送受信処理を示すフローチャートである。
【図３９】第４実施形態におけるＧＷ−ＢのＩＰパケットの送受信処理を示すフローチャートである。
【図４０】第４実施形態おけるＧＷ−ＣのＩＰパケットの送受信処理を示すフローチャートである。
【図４１】第５実施形態における各ＧＷ間でのＧＷ間拡張ヘッダ情報の同期処理のシーケンスを説明する図である。
【図４２】第６実施形態におけるＮｏｔｅ−Ｃの２ルート接続の構成例を示す図である。
【図４３】Ｎｏｔｅ−Ｃが図４２に示すような２ルート接続状態に至るまでの手順を示すシーケンス図である。
【図４４】第６実施形態における、Ｎｏｔｅ−Ｃが２ルート接続を行う他の構成例を示す図である。
【図４５】図４４に示すＮｏｔｅ−Ｃの２ルート接続を構成するための処理手順を示すシーケンス図である。
【図４６】図４３、４５のＮｏｔｅ−Ｃのシステム構成を示す図である。
【図４７】図４６に示すＮｏｔｅ−Ｃのカーネル領域のより詳細な構成を示す図である。
【図４８】第６実施形態におけるＮｏｔｅ−Ｃのパケット送信処理の手順を示すフローチャートである。
【図４９】第６実施形態におけるＮｏｔｅ−Ｃのパケット受信処理の手順を示すフローチャートである。
【図５０】ＩＰネットワーク（ネットワークシステム）においてホストのグループ化を行ったシステムの一例である。
【図５１】図５０に示すＩＰネットワークにおいて、Ｎｏｔｅ−Ｃが自宅のネットワークシステム３０００から出張先のネットワーク５０００に移動した状態を示す図である。
【符号の説明】
【０３２１】
ＰＣ−Ａ、ＰＣ−Ｂ、Ｎｏｔｅ−Ｃ  グループ１に属する端末（ホスト）
ＧＷ−Ａ、ＧＷ−Ｂ、ＧＷ−Ｃ      ゲートウェイ
Ｘ、Ｙ                            グローバルネットワーク
１０                              ＩＰパケット
１１                            ＩＰヘッダ
１２                            データ部
２０                          ＩＰパケット  
２１                        ＩＰヘッダ
２２                        データ
２３                        ＧＷ間ヘッダ
８３、５０３、８０００，８００１          トンネル（ユニキャスト）
９１                              仮想トンネル    
１００                            ネットワーク（サブネットワーク）
１０１                            ＩＰネットワーク
１１０                            ＧＷ間ヘッダ
１１１                            ＧＷ間標準ヘッダ
１１２                            ＧＷ間拡張ヘッダ
１２０                            ＴＣＰ／ＩＰヘッダ
１３０                            データ
１０５、１０６、１０８            ブロードキャストパケット（カプセル化パケット）
１０７、１０９                    ＩＰパケット（通常ＩＰパケット）
２００                            ネットワーク（サブネットワーク）
２０１                          サーバ
２００（２００Ａ、２００Ｂ、２００Ｃ）  ローカルテーブル
２１０（２１０Ａ、２１０Ｂ、２１０Ｃ）  ルートコードテーブル
２２０（２２０Ａ、２２０Ｂ、２２０Ｃ）  グローバルテーブル
２３０（２３０Ａ、２３０Ｂ、２３０Ｃ）  受信転送テーブル
２４０（２４０Ａ、２４０Ｂ、２４０Ｃ）  送信転送テーブル
３００                            ネットワーク（サブネットワーク）
４００                            インターネット
４０１、６００１                    ＣＥ(Customer Edge)デバイス
４１１〜４１３、６０１１〜６０１３  ＰＥ(Provider Edge)デバイス
５０１、５０２                トンネル（ユニキャスト、マルチキャスト、ブロードキャスト）
５０３                        トンネル（ユニキャスト）
５０４                            トンネル（マルチキャスト、ブロードキャスト）
６００                            ゲートウェイ（ＧＷ）
６１１                            ローカル側インターフェース
６１２                            グローバル側インターフェース
６１３                            ヘッダ処理部
６１４                            転送通番処理部
６１５                            ＩＰルーティング処理部
６１６                            トンネル処理部
６１７                            パケット送受信部
６１８                            管理テーブル
６１９                            転送通番テーブル
６３１                            ルート管理処理部
６３２                            ルートコードテーブル
６３３                            遅達管理バッファ
７０１                    ＧＷ−ＡとＮｏｔｅ−Ｃ間のトンネル（有線）
７０２                            ＧＷ−ＡとＮｏｔｅ−Ｃ間のトンネル（無線）
７１０                            ＧＷ−ＡとＧＷ−Ｃ間のトンネル（ユニキャスト、マルチキャスト、ブロードキャスト）
７２１                    ＧＷ−ＣとＮｏｔｅ−Ｃ間のトンネル（有線）
７２２                            ＧＷ−ＣとＮｏｔｅ−Ｃ間のトンネル（無線）  
８００                            Ｎｏｔｅ−Ｃ（クライアント）
８１０                            ユーザ領域  
８１１                            クライアントアプリケーション
８２１C                  実ＬＡＮインターフェース（有線）
８２１Ｒ                          実ＬＡＮインターフェース（無線）
８２３                            仮想ＬＡＮインターフェース
８３０                            カーネル領域        
８３１C、８３１R                  物理ＬＡＮドライバ
８３２                            無線ＬＡＮカード
８３３                            有線ＬＡＮカード
８３４                            仮想ＬＡＮドライバ
８３５                            ヘッダ処理部
８３６                            転送通番処理部
８３７                            ルート管理処理部
８３８                            トンネル処理部
【図１】
2008092170.tif 000003
【図２】
2008092170.tif 000004
【図３】
2008092170.tif 000005
【図４】
2008092170.tif 000006
【図５】
2008092170.tif 000007
【図６】
2008092170.tif 000008
【図７】
2008092170.tif 000009
【図８】
2008092170.tif 000010
【図９】
2008092170.tif 000011
【図１０】
2008092170.tif 000012
【図１１】
2008092170.tif 000013
【図１２】
2008092170.tif 000014
【図１３】
2008092170.tif 000015
【図１４】
2008092170.tif 000016
【図１５】
2008092170.tif 000017
【図１６】
2008092170.tif 000018
【図１７】
2008092170.tif 000019
【図１８】
2008092170.tif 000020
【図１９】
2008092170.tif 000021
【図２０】
2008092170.tif 000022
【図２１】
2008092170.tif 000023
【図２２】
2008092170.tif 000024
【図２３】
2008092170.tif 000025
【図２４】
2008092170.tif 000026
【図２５】
2008092170.tif 000027
【図２６】
2008092170.tif 000028
【図２７】
2008092170.tif 000029
【図２８】
2008092170.tif 000030
【図２９】
2008092170.tif 000031
【図３０】
2008092170.tif 000032
【図３１】
2008092170.tif 000033
【図３２】
2008092170.tif 000034
【図３３】
2008092170.tif 000035
【図３４】
2008092170.tif 000036
【図３５】
2008092170.tif 000037
【図３６】
2008092170.tif 000038
【図３７】
2008092170.tif 000039
【図３８】
2008092170.tif 000040
【図３９】
2008092170.tif 000041
【図４０】
2008092170.tif 000042
【図４１】
2008092170.tif 000043
【図４２】
2008092170.tif 000044
【図４３】
2008092170.tif 000045
【図４４】
2008092170.tif 000046
【図４５】
2008092170.tif 000047
【図４６】
2008092170.tif 000048
【図４７】
2008092170.tif 000049
【図４８】
2008092170.tif 000050
【図４９】
2008092170.tif 000051
【図５０】
2008092170.tif 000052
【図５１】
2008092170.tif 000053