(実施形態1)
以下、図面を用いて本発明の第一の実施の形態を詳細に説明する。
図3は本発明が適用されるパケットトランスポート装置により、それぞれ地理的に離れた位置にある2つ以上のネットワークをインタワークする中継ネットワークを構築した例を示す図である。
本図では通信事業者1と通信事業者2が存在し、通信事業者1の地理的に離れた位置にある4つのネットワーク301-1、301-2、301-3、301-4を、通信事業者2の中継ネットワーク302でインタワークしている。
通信事業者1のネットワーク301は、通信装置310-1、310-2、310-3、310-4、310-5、310-6、310-7、310-8、で構成されている。通信装置310は、ルーティングプロトコルを用いてネットワークの端から端までデータの通り道となる論理パス340を構成する転送プロトコルを実装している。論理パス340は、通信事業者1と契約するユーザのユーザサイト1 341を収容する通信装置310-1とユーザサイト2 342を収容する通信装置310-4との間で設定される。図3では、論理パスは1本しか記載していないが、通信事業者1のネットワーク内には契約ユーザ毎に論理パスが設定される。これにより、通信事業者1と契約するユーザは、機密性の高い通信サービスを利用することができる。ユーザサイトからネットワークに入力されたデータパケットには、通信装置310にて論理パスを識別する論理パスヘッダが付与さる。ネットワークを構成する通信装置310は、論理パスヘッダによりパケットの転送先を特定する。
通信事業者1のネットワークで用いているルーティングプロトコルでは、論理パスを識別する論理パスIDを、論理パスの始点から終点方向に通知する。よって、通信装置310-1から310-4に向かう方向でデータ転送するための論理パスを構築する場合、通信装置310-1が、通信装置310-2、310-3、310-4へ向けて、どの論理パスIDの論理パスを構築するかを通知する。通信装置310-2は、通信装置310-1から論理パスIDを通知するルーティングプロトコルパケットを受信すると、通信装置310-1から受信したルーティングプロトコルパケットで指定されている論理パスIDを装置にセットする。また、通信装置310-2は、論理パスの通り道となる次の通信装置310-3にルーティングパケットを送信して論理パスIDを通知する。このようにして、End-Endの論理パスを構築する。
通信事業者1のネットワークを構成する通信装置310は、ルーティングプロトコルを利用する。そのため、通信事業者1のネットワーク内には、図1及び図2に示すユーザデータパケット100とルーティングプロトコルパケット200が混在する。ユーザデータパケット100はOSI(Open Systems Interconnection)参照モデルのレイヤ2に相当するMACヘッダ111と中継ネットワーク内で論理パスを特定するための論理パスヘッダ112とデータ領域113から構成されている。論理パス340を識別するためのIDは論理パスヘッダ112内で保持される。MACヘッダは宛先を特定する宛先MACアドレス121と、送信元を特定する送信元MACアドレス122と、MACヘッダ111の次に続くヘッダのプロトコルを特定するタイプ123から構成される。
ルーティングプロトコルパケット200はOSI参照モデルのレイヤ2に相当するMACヘッダ111とルーティング情報領域211から構成されている。通信プロトコル1において、論理パスを特定するためのヘッダ112はルーティングプロトコルパケット200には付与されていない。
通信事業者2の中継ネットワーク302は、パケットトランスポート装置320-1、320-2、320-3、320-4で構成されている。パケットトランスポート装置320は、中継ネットワーク302の端から端までデータの通り道となる中継論理パスを構成する転送プロトコルを実装している。中継ネットワーク302の転送プロトコルには、ルーティングプロトコルを用いて中継論理パスを構築するものを用いても良いし、中継ネットワーク302を構成するパケットトランスポート装置320に明示的に中継論理パスの経路を設定するネットワークマネージメントシステムを用いて中継論理パスを構築するものを用いても良い。
図3の例では、中継ネットワーク302内の中継論理パスは、通信事業者1のネットワーク301を相互接続するために、通信事業者1のネットワーク301-1を収容するパケットトランスポート装置320-1と通信事業者1のネットワーク301-2を収容するパケットトランスポート装置320-2とを接続する中継論理パス331、通信事業者1のネットワーク301-1を収容するパケットトランスポート装置320-1と通信事業者1のネットワーク301-3を収容するパケットトランスポート装置320-3とを接続する中継論理パス332、通信事業者1のネットワーク301-1を収容するパケットトランスポート装置320-1と通信事業者1のネットワーク301-4を収容するパケットトランスポート装置320-4とを接続する中継論理パス333を設定している。通信事業者1のネットワークから通信事業者2のネットワークに入力したパケットは、通信事業者1のネットワーク間を接続する中継論理パス331、332、333の何れかにより転送されるため、通信事業者2内で機密性の高い通信を実現できる。通信事業者2の中継ネットワーク302において、通信事業者1と契約するユーザのユーザサイト1 341とユーザサイト2 342を接続する論理パス340を流れるユーザデータは、中継ネットワーク302の中継論理パス331で転送される必要がある。論理パス340を流れるユーザデータが、中継ネットワーク302の他の中継論理パスへ転送されると、通信の機密性が守れなくなってしまうためである。
図3の一例では、中継ネットワーク302に設定されている中継論理パス331に収容される通信事業者1の論理パスは論理パス340の1本だけだが、同じ中継論理パス331に通信事業者1の複数の論理パスが設定されることもある。
図6は本発明の一適用例であるパケットトランスポート装置320の構成図である。パケットトランスポート装置320は、1個以上のスイッチ部323と、1個以上の装置制御部324と、1枚以上の中継ネットワークIF322と、1枚以上のインタワークインタフェース(IF)321から構成される。スイッチ部323、装置制御部324、中継ネットワークIF322、インタワークIF321は互いに接続される。
装置制御部324は、ネットワーク管理者の保守メンテナンス用のインタフェースおよびインタワークIF321と中継ネットワークIF322及びスイッチ部323を制御する。スイッチ部323は、データの転送先を特定し、適切なインタワークIF321又は中継ネットワークIF322に転送データを引き渡す。中継ネットワークIF322は中継ネットワーク302を構成する他のパケットトランスポート装置320を接続するインタフェースである。
中継ネットワークIF322は、中継ネットワークを構成する他のパケットトランスポート装置320を接続するインタフェースである。中継ネットワークIF322は受信回路621、中継論理パス検索部622、SW送信回路623、SW受信回路624、送信回路625、IF制御部626を含む。
IF制御部626は、装置制御部324と接続しており、装置制御部324から通知された設定情報を中継ネットワークIF322の各構成部に対して設定する機能と、各構成部に設定されている情報を読み出して、装置制御部324へ通知する機能を有する。
受信回路621は、中継ネットワークのその他のパケットトランスポート装置320からパケットを受信する。送信回路625は、中継ネットワークのその他のパケットトランスポート装置320へパケットを送信する。
中継論理パス検索部622は、受信したパケットが本インタフェースで受信すべきパケットかどうかを確認する。受信すべきでないパケットは中継論理パス検索部622で廃棄される。中継論理パス検索部622は中継論理パス管理テーブル(図示せず)を具備しており、受信パケットの中継論理パスヘッダ402から取得した中継論理パスIDと中継論理パス管理テーブルに設定されている中継論理パスIDとを比較し、IDの値が一致した場合はパケットをSW送信回路626へ転送し、値が一致しなかった場合は受信パケットを廃棄する。
SW送信回路623は、スイッチ部323へパケットを送信する。SW受信回路624は、スイッチ部323からパケットを受信する。
インタワークIF321は、他の通信業者の通信装置を接続するインタフェースである。さらに、インタワークIF321は、他の通信事業者の通信装置から受信したパケットから宛先を学習する機能と、受信したパケットに中継ネットワークで使用する中継論理パスヘッダを付与する機能を有する。
インタワークIF321は、受信回路601、宛先MAC検索部602、インタワークパス検索部603、ルーティングプロトコルスヌーピング処理604、中継論理パス処理部605、SW送信回路606、SW受信回路607、中継論理パス終端部608、送信元MAC学習部610、送信回路611、IF制御部615を含む。
IF制御部615は、装置制御部324と接続しており、装置制御部324から通知された設定情報をインタワークIF321の各構成部に対して設定する機能と、各構成部に設定されている情報を読み出して、装置制御部324へ通知する機能と、を有する。
受信回路601は、他の通信事業者の通信装置310からパケットを受信する。
宛先MAC検索部602は、パケットを受信すると受信したパケットのMACヘッダ111から宛先MACアドレス121を取得して、受信したパケットの宛先MACがMAC学習テーブル612に登録されているかどうかを確認する。宛先MAC検索部602が、パケットを受信したときの動作を図7と図14を用いて述べる。
図7は、宛先MAC検索部602および送信元MAC学習部610がパケットを受信したときに検索するMAC学習テーブル612の構成を図示したものである。図7ではMAC学習テーブルの登録可能エントリ数が3個の場合の一例を表しているが、もっと多くのエントリを登録することも発明の効果に関係なく可能である。MAC学習テーブル612は、学習MACアドレス701と中継論理パス検索インデックス702から構成されている。MAC学習テーブル612の中継論理パス検索インデックス702と学習MACアドレス701はそれぞれ、中継ネットワーク302側から受信したパケットが転送されてきた中継ネットワークの中継論理パスを装置内で管理するIDと、そのパケットの送信元MACアドレスである。これら設定値は、インタワークIF321が自律的に収集してテーブルに登録する。パケットトランスポート装置320は、送信元MACアドレス701と中継論理パス検索インデックス702を関連付けてテーブルに登録することで、送信元MACアドレスを有する通信装置が、中継論理パス検索インデックスで特定される中継ネットワークの中継論理パスの先に存在することを学習する。MAC学習テーブルへの登録については後述する。
図14はパケットを受信したときの宛先MAC検索部602の動作フローチャートである。宛先MAC検索部602は、パケットを受信すると、まず、受信パケットのMACヘッダ111から宛先MACアドレス121を取得する(S1400)。次に、取得した宛先MACアドレス121を検索キーとして、MAC学習テーブル612に一致するアドレスが登録されているか、MAC学習テーブル612の学習MACアドレス701を検索する(S1402)。MAC学習テーブル612の検索結果、取得した宛先MACアドレスはMAC学習テーブル612に登録されているかを判定する(S1403)。MAC学習テーブル612に取得した宛先MACアドレスと同一のMACアドレスが登録されている場合、宛先MACアドレスに対応する中継論理パス検索インデックスをテーブルから取得する(S1404)。MAC学習テーブル612に同一のMACアドレスが登録されていない場合、インタワークIFに登録されている全ての中継論理パスに対してパケットを複製して転送することを表すフラッディング用中継論理パス検索インデックスを保持する(S1407)。
次に受信したパケットの種別を判定する。受信したパケットがユーザデータパケット100かルーティングプロトコルパケット200かを判定する。ルーティングプロトコルパケット200の場合、さらにそのパケットが、通信事業者1の通信装置310間でデータ通信するための論理パスIDを通知するメッセージであるか、または、通信事業者1の通信装置310間でデータ通信するための論理パスIDを削除する通知するメッセージであるかどうかを判定する(S1405)。受信パケットが論理パスIDを通知するメッセージまたは論理パスIDを削除するメッセージの場合、中継論理パス検索インデックス702と受信パケットとをルーティングプロトコルスヌーピング部604へと転送する(S1406)。受信パケットが論理パスIDを通知するメッセージまたは論理パスIDを削除するメッセージでなかった場合、中継論理パス検索インデックス702と受信パケットとをインタワークパス検索部603へと転送する(S1408)。受信パケットがユーザデータパケット100かルーティングプロトコルパケット102かは、MACヘッダのタイプ123の値で確認することができる。また、ルーティングパプロトコルパケット102であった場合は、ルーティング情報領域からメッセージの内容を確認することができる。
ルーティングプロトコルスヌーピング処理部604は、ルーティングプロトコルパケット200のルーティング情報領域211から通信事業者1のネットワークで用いている論理パスIDおよびパケットのメッセージ種別を収集して、インタワークパス学習テーブルの情報の登録及び削除を行う。ルーティングプロトコルスヌーピング処理部604が、パケットを受信したときの動作を図8と図15を用いて述べる。
図8は、ルーティングプロトコルスヌーピング処理部604とインタワークパス検索部603のそれぞれがパケットを受信したときに検索するインタワークパス学習テーブル613の構成を図示したものである。図8では、インタワークパス学習テーブル613の登録可能エントリ数が3個の場合の一例を表しているが、もっと多くのエントリを登録することも発明の効果に関係なく可能である。インタワークパス学習テーブル613は、インタワークパスID801と中継論理パス検索インデックス802とから構成されている。
インタワークパス学習テーブル613のインタワークパスID801と中継論理パス検索インデックス802を、インタワークパス学習テーブル613へ登録する手順を図15を用いて述べる。
ルーティングプロトコルスヌーピング処理部604は、ルーティングプロトコルパケット200を宛先MACアドレス検索部602から受信すると、ルーティング情報領域211から通信事業者1のネットワークで用いている論理パスIDを取得する(S1500)。次に、受信したパケットが論理パスIDを通知するメッセージか、論理パスIDを削除するメッセージかを確認する(S1502)。メッセージの種別もルーティング情報領域で確認することが可能である。受信したルーティングプロトコルパケット200が論理パスID割当メッセージだった場合、受信したパケットから取得した論理パスIDをインタワークパス学習テーブル613のインタワークパスID801に登録し、宛先MACアドレス検索部602から通知された中継論理パス検索インデックスをインタワークパス学習テーブル613の中継論理パス検索インデックス802に登録する(S1503)。S1503により、通信事業者1のネットワークで使用する論理パスと通信事業者2の中継ネットワークで使用する中継論理パスが一対一で対応付く事になる。
受信したルーティングプロトコルパケット200が論理パスID削除メッセージだった場合、受信したパケットから取得した論理パスIDを用いてインタワークパス学習テーブル613を検索する。取得した論理パスIDと一致する登録済みのインタワークパスID801がテーブルに設定されている場合は、登録済みのインタワークパスID801と対応する中継論理パス検索インデックス802をインタワークパス学習テーブル613から削除する(S1504)。S1504により、通信事業者1で使用しなくなる論理パスを削除することができるため、インタワークパス学習テーブル613に不要なエントリが残らない。
S1503、S1504のいずれかの処理を行った後、中継論理パス検索インデックスとルーティングプロトコルパケット200を中継論理パス処理部605へと転送する。
インタワークパス検索部603は、ユーザデータパケット100を受信すると論理パスヘッダ112から論理パスIDを取得し、取得した論理パスIDを用いてインタワークパス学習テーブル613を検索して、中継論理パス検索インデックスを取得する。インタワークパス検索部603がパケットを受信したときの動作を図8と図16を用いて述べる。
インタワークパス検索部603は、ユーザデータパケット100またはルーティングプロトコルパケット200を宛先MACアドレス検索部602から受信すると、論理パスヘッダ112が付いているユーザデータかどうかを判定する(S1601)。受信パケットが論理パスヘッダ112が付いているユーザデータパケット100であった場合、論理パスヘッダ112から論理パスIDを取得する(S1602)。受信パケットがルーティングプロトコルパケット200であった場合、S1607の処理へ移る。次に、取得した論理パスIDを検索キーとしてインタワークパス学習テーブルを検索する(S1603)。インタワークパス学習テーブル613のインタワークパスID801に、取得した論理パスIDが登録されているかどうかを確認する(S1604)。
インタワークパス学習テーブル613に取得した論理パスIDが登録されていた場合、対応する中継論理パス検索インデックス802を取得する。このとき、宛先MAC検索部602から通知されていた中継論理パス検索インデックス702を、インタワークパス学習テーブル613から取得した中継論理パス検索インデックス802で更新する(S1605)。
次に、インタワークパス検索部603で更新した中継論理パス検索インデックス802またはルーティングプロトコルパケットの場合は、宛先MACアドレス検索部602から取得した中継論理パス検索インデックス702とパケットを中継論理パス処理部へと転送する(S1607)。
受信したパケットがユーザデータパケットにも関わらず、インタワークパス学習テーブル613に取得した論理パスIDが登録されていなかった場合、未設定パスへのデータ誤配信の可能性があるため、インタワークパス検索部603でユーザデータパケット100を廃棄して処理を終了する(S1606)。
インタワークパス検索部603のS1605の動作により、ユーザデータパケット100の宛先MACアドレス121が複数の宛先にパケットを複写して転送するマルチキャストアドレスやブロードキャストアドレスであった場合でも、論理パスヘッダ112から通信事業者2の中継ネットワークで設定している特定の中継論理パスを選択してパケットを転送することができる。さらに追加して説明すると、図3に示す論理パス340で転送されるユーザデータパケットの宛先MACアドレスがマルチキャストやブロードキャストで有った場合でも、通信事業者2の中継ネットワークの中継論理パス331を利用してパケットを転送することができる(中継論理パス332や中継論理パス333へパケットが転送されることは無い)。また、ユーザデータパケット100の宛先MACアドレス121が単一の宛先を示すユニキャストアドレスだが、MAC学習テーブル612に宛先MACアドレスが登録されていなかった場合でも特定の中継論理パスを選択してパケットを転送することができる。
中継論理パス処理部605は、通信事業者2の中継ネットワークが使用する転送プロトコルの中継論理パスの始点となる処理部である。中継論理パス処理部605は、ユーザデータパケット100またはルーティングプロトコルパケット200を受信すると、中継ネットワーク302でパケットを転送すべき中継論理パスを特定して、受信パケットに中継論理パスヘッダを付与する。中継論理パス処理部605がパケットを受信したときの動作を図9と図17を用いて述べる。
図9は、中継論理パス処理部605と中継論理パス終端部608がパケットを受信したときに検索する中継論理パス管理テーブル614の構成を図示したものである。中継論理パス管理テーブル614は、中継論理パス検索インデックス901と中継論理パスIDから構成されている。図9では中継論理パス管理テーブルの登録可能エントリ数が3個の場合の一例を表しているが、もっと多くのエントリを登録することも発明の効果に関係なく可能である。通信事業者2は、通信事業者1に提供する中継ネットワーク302内の論理パスをサービス開始前に決定し、本テーブルに、装置内で管理する論理パスのインデックスである中継論理パス検索インデックス901と、決定した通信事業者1に提供する中継ネットワーク302内の論理パスを通信事業者2の中継ネットワーク内で用いる論理パスの識別子である中継論理パスIDとしてそれぞれ事前登録しておく。図9の登録内容は、パケットトランスポート装置320-1のインタワークIF321の中継論理パス管理テーブル614の一例を表している。図3の例ではパケットトランスポート装置320-1には3本の論理パスが設定されている。パケットトランスポート装置320-2と接続する論理パス331、パケットトランスポート装置320-3と接続する論理パス333、パケットトランスポート装置320-4と接続する論理パス332である。これらは順に中継論理パス検索インデックス0、1、2、論理パスID1000、2000、3000として登録されている。本テーブルへのエントリの登録は通信業者2のネットワーク管理者により装置制御部324を経由して明示的に1装置ずつ登録されても良いし、中継ネットワーク302を構成するパケットトランスポート装置320間でルーティングプロトコルを利用して自律的に登録されても良い。
図17は中継論理パス処理部605の動作フローチャートである。
中継論理パス処理部605は、パケットと中継論理パス検索インデックスを受信すると、受信した中継論理パス検索インデックスがフラッディング用のインデックスかどうかを判定する(S1701)。受信したパケットがフラッディング用のインデックスで無い場合、取得した中継論理パス検索インデックスを検索キーとして中継論理パス管理テーブル614を検索する(S1703)。次に、中継論理パス管理テーブル614から対応する中継論理パスIDを取得する(S1704)。次に、取得した中継論理パスIDの中継論理パスヘッダを作成して受信パケットの先頭にヘッダを付与してカプセル化する(S1705)。
カプセル化したあとのパケットフォーマットを図4および図5に示している。図4は、ユーザデータパケットを通信事業者2の中継ネットワークの転送プロトコルでカプセル化したパケットフォーマット400である。図5は、ルーティングプロトコルパケットを通信事業者2の中継ネットワークの転送プロトコルでカプセル化したパケットフォーマット500である。受信パケットのMACヘッダ111の外側に中継論理パスヘッダ402を付与する。中継論理パスヘッダ402の外側に位置するレイヤ2ヘッダ400は通信事業者2の中継ネットワークで用いられているOSI参照モデルのレイヤ2プロトコルに依存するヘッダであり、中継ネットワークIF322の送信回路625で付与され、同じく中継ネットワークIF322の受信回路621で削除されるヘッダである。
また、通信事業者2の中継ネットワークで用いられるレイヤ2プロトコルがイーサネットの場合、通信事業者1のネットワークで使用しているMACヘッダ111を利用することも可能である。通信事業者1のネットワークで使用しているMACヘッダ111を利用する場合のパケットフォーマットを図36、37に示す。図36は、ユーザデータパケット100を通信事業者2のネットワークで転送するときのパケットフォーマット3600である。中継論理パスヘッダ402は、受信したユーザデータパケットのMACヘッダ111と論理パスヘッダ112との間に付与する。図37はルーティングプロトコルパケット200を通信事業者2のネットワークで転送するときのパケットフォーマット3700である。中継論理パスヘッダ402は、MACヘッダ111とルーティング情報領域211の間に付与する。このように、通信事業者1で用いられるMACヘッダ111を流用することで、オーバヘッドを小さくする効果がある。以下、実施例では通信事業者2の中継ネットワークで用いるパケットフォーマットは図4、図5として説明するが、図36、図37のパケットフォーマットでも同じ処理で同じ効果を得ることができる。
中継論理パス処理部で受信したパケットの中継論理パス検索インデックスがフラッディング用で有った場合、本インタフェースに設定されている全中継論理パス数分パケットをコピーし、各中継論理パス の中継論理パスヘッダを生成し、コピーしたパケットをカプセル化する(S1703)。
通信事業者2の転送プロトコルでカプセル化したパケットは、SW送信回路606へ転送される(S1706)。
SW送信回路606はスイッチ部123へパケットを転送する。SW受信回路607はスイッチ部123からパケットを受信する。
中継論理パス終端部608は、通信事業者2の中継ネットワークが使用する転送プロトコルの中継論理パスを終端する処理部である。中継論理パス終端部608は、受信したパケットの中継論理パスヘッダ402から通信事業者2の中継ネットワーク中継論理パスを特定する中継論理パスIDを取得して、インタワークIF321で管理している中継論理パス検索インデックスを、中継論理パス管理テーブル614から取得する。中継論理パス終端部608がパケットを受信したときの動作を図9と図12を用いて述べる。
中継論理パス終端部608は、ユーザデータパケット400またはルーティングプロトコルパケット500を受信すると中継論理パスヘッダ402から中継論理パスIDを取得する。また、中継論理パスヘッダ402を受信パケットから削除する(S1201)。次に、取得した中継論理パスIDを検索キーとして中継論理パス管理テーブル614を検索し、取得した論理パスIDと一致する中継論理パスIDに対応付く中継論理パス検索インデックス901を取得する(S1202)。次の処理ブロックに、受信したパケットと中継論理パス検索インデックスを転送する(S1203)。
送信元MAC学習部610は、通信事業者1のネットワークが送受信するパケットの送信元MACアドレス122とインタワークIF321で管理している中継論理パス検索インデックスとを対応付けてMAC学習テーブル612に登録する。送信元MAC学習部610がパケットを受信したときの動作を図7と図13を用いて述べる。
送信元MAC学習部610は、パケットを受信すると、受信パケットのMACヘッダ111から送信元MACアドレス122を取得する(S1301)。取得した送信元MACアドレス122を検索キーとして、MAC学習テーブル612を検索する(S1302)。検索の結果、送信元MACがテーブルに登録されているかどうかを確認する(S1303)。MAC学習テーブル612に同一のMACアドレスが登録されていなかった場合、MAC学習テーブル612に取得したMACアドレスと中継論理パス検索インデックスとを対応付けてMAC学習テーブル612に登録する(S1304)。MAC学習テーブル612に同一のMACアドレスが登録されている場合は、何もせず処理を終了する。
送信元MAC学習部610が、受信パケットの送信元MACアドレス122と中継論理パス検索インデックス702とを対応付けてMAC学習テーブル612に登録することから、通信事業者1のネットワークの通信装置310から受信した論理パスヘッダが付いていないパケットであっても、パケットトランスポート装置320は通信事業者2が設定している特定の中継論理パスを選択してパケットを転送することができる。
次に、図10と図11を用いて本発明が適用されるパケットトランスポート装置320が、送信元MACアドレスと通信事業者1のネットワークで用いられる論理パスIDを学習する手順を説明する。
図10は、通信事業者1のネットワークの通信装置310-2と通信装置310-3との間で論理パスが設定された後、データ送受が行われ、さらには、論理パスが削除されるまでのシーケンスの一例を記載した図である。図11は、本発明のパケットトランスポート装置320-1が有するMAC学習テーブル612、インタワークパス学習テーブル613、中継論理パス管理テーブル614の設定内容を表している。
通信事業者2の中継ネットワークのパケットトランスポート装置320の中継論理パス管理テーブル614において、通信事業者1のネットワークに提供する中継論理パスのみ設定された初期状態がS1101となる。このとき、中継論理パス管理テーブル614には、中継ネットワーク302に設定された中継論理パス331、332、333の情報が、中継論理パス検索インデックス0中継論理パスID1000、中継論理パス検索インデックス1中継論理パスID2000、中継論理パス検索インデックス2中継論理パスID3000、として登録されている。
通信事業者1のネットワークに対して通信事業者2がネットワーク提供を開始すると、通信装置310-2は、ネットワーク内に同一転送プロトコルを使用する通信装置が存在するかを確認する探索メッセージ1011を送信する。探索メッセージ1101の宛先MACアドレスには、ネットワーク内の全ての通信装置310にパケットが届くように、ブロードキャストアドレスまたはマルチキャストアドレスが使用される。パケットトランスポート装置320-1は、探索メッセージ1101を受信すると、宛先MACアドレスがブロードキャスト(マルチキャスト)でありかつ、論理パスヘッダ112が付与されていないことから、インタワークIF321に登録されている全ての中継論理パス(331、332、333)にパケットをコピーして転送する。
探索メッセージ1011を受信した通信装置310-3は、応答メッセージ1012を通信装置310-2へ送信する。応答メッセージ1012を受信したパケットトランスポート装置320-1は、受信した応答メッセージが転送されてきた中継ネットワークの中継論理パス331の論理パスID1000に対応する中継論理パス検索インデックス0を、中継論理パス管理テーブル614から取得する。また、MACヘッダ111の送信元MACアドレス112の位置から、通信装置310-3のMACアドレスである「A」を取得し、MAC学習テーブル612にMACアドレス「A」と中継論理パス検索インデックス「0」とを登録する(S1102)。パケットトランスポート装置320-1のMAC学習テーブル612に、送信元MACアドレス「A」が登録されていないため、図13のS1304で説明した、送信元MAC学習部の処理により登録されるものである。MAC応答メッセージ1012は、パケットトランスポート装置320-1から通信装置310-2へと転送される。
次に、通信事業者1のネットワークで使用する論理パスの設定するために、通信装置310-2は、論理パスID割当メッセージ1013を通信装置320-3へ送信する。通信事業者1のネットワークの中で使用する論理パスを通知する、論理パスID割当メッセージ1013が通信装置320-2から通信装置310-3へと送信される。論理パスID割当メッセージ1013の宛先MACアドレス121は通信装置310-3を特定する「A」が付与されており、ルーティング情報領域211には利用する論理パスIDが「100」であることが記載されている。論理パスID割当メッセージを受信したパケットトランスポート装置320-1の宛先MAC検索部は、MACヘッダ111から受信パケットの宛先MACアドレス121が「A」であることを取得し、MACアドレス「A」を検索キーとしてMAC学習テーブル612を検索する。これにより、MAC学習テーブル612から中継論理パス検索インデックス「0」を所得する。
次に、受信したパケットが論理パスID割当メッセージの場合はルーティング情報領域211から判断し、パケットトランスポート装置320-1のルーティングプロトコルスヌーピング処理部604において同じくルーティング情報領域211から通信事業者1のネットワークの通信装置310が設定しようとしている論理パスID「100」を取得し、インタワークパス学習テーブル613に論理パスID「100」と中継論理パス検索インデックス「0」とを登録する(S1103)。これにより、パケットトランスポート装置320-1は、通信事業者1のネットワークで使用する論理パス「100」と通信事業者2の中継ネットワークで使用する中継論理パス「1000」とを一対一で対応付けることができる。また、論理パスID割当メッセージ1013は、宛先MACアドレスから中継論理パス検索インデックスが「0」であることが特定されているため、中継論理パスIDが「1000」の中継論理パスヘッダ402でカプセル化されて、パケットトランスポート装置320-1から中継ネットワーク302へと転送される。
論理パスID割当メッセージ1013を受信した通信装置310-3は、通信装置310-2から転送されてくるユーザデータパケット100には、論理パスヘッダ112の論理パスIDが「100」と設定されるということを学習する。
論理パスID割当メッセージ1013を受信した通信装置310-3は、応答メッセージ1014を通信装置310-2へ送信する。応答メッセージ1014を通信装置310-2が受信することで、通信装置310-2と通信装置310-3の間に論理パスID100の論理パスが開通することになる。
論理パスが開通すると、通信事業者1は、通信事業者1と契約するユーザに対して通信サービスを開始する。それにともない、通信装置310-2からはユーザデータパケット1015が送信されてくる。
パケットトランスポート装置320-1は、ユーザデータパケット1015を受信すると、論理パスヘッダ112から論理パスID「100」を取得し、インタワークパス検索部において論理パスIDを検索キーとしてインタワークパス学習テーブル613を検索し、対応する中継論理パス検索インデックス802の値「0」を取得する。次に、中継論理パス検索部において中継論理パス検索インデックス802を検索キーとして中継論理パス管理テーブルを検索し、中継論理パスIDの値「1000」を取得する。パケットトランスポート装置320-1は、取得した中継論理パスIDで中継論理パスヘッダ402を生成して、受信したユーザデータパケットをカプセル化して、パケットトランスポート装置320-1から中継ネットワーク302へカプセル化したユーザデータを転送する。このように、パケットトランスポート装置は、通信装置310-2と通信装置310-3で使用する論理パスIDを論理パスID割当メッセージ1013から学習することができるため、宛先MACアドレス121がマルチキャストやブロードキャストであるユーザデータパケット1015を受信したとしても、中継ネットワーク302の特定の中継論理パスID「1000」の中継論理パスでパケットを転送することができる。
次に、通信事業者1のネットワークで使用する論理パスを削除する、論理パスID削除メッセージ1016が、通信装置310-2から通信装置310-3へと送信される。論理パスID削除メッセージ1016の宛先MACアドレス121には通信装置310-3を特定する「A」が付与されており、ルーティング情報領域211には削除する論理パスIDが「100」であることが記載されている。論理パスID削除メッセージを受信したパケットトランスポート装置320-1は、MACヘッダ111から受信パケットの宛先MACアドレス121が「A」であることを取得し、MACアドレス「A」を検索キーとしてMAC学習テーブル612を検索する。これにより、MAC学習テーブル612から中継論理パス検索インデックス「0」を取得する。次に、受信したパケットが論理パスID削除メッセージであることをルーティング情報領域211から判断し、ルーティングプロトコルスヌーピング処理部604において同じくルーティング情報領域211から論理パスID「100」を取得し、インタワークパス学習テーブル613から論理パスID「100」と中継論理パス検索インデックス「0」とを削除する(S1102)。また、論理パスID割当メッセージ1013は、宛先MACアドレスから中継論理パス検索インデックスが「0」であることが特定されているため、中継論理パスIDが「1000」の中継論理パスヘッダ402でカプセル化されて、パケットトランスポート装置320-1から中継ネットワーク302へと転送される。
論理パスID削除メッセージ1016を受信した通信装置310-3は、通信装置310-2との間で設定されていた論理パスID「100」が廃止されるということを学習する。
論理パスID削除メッセージ1016を受信した通信装置310-3は、応答メッセージ1017を通信装置310-2へ送信する。応答メッセージ1017を通信装置310-2が受信することで、通信装置310-2と通信装置310-3との間に設定された論理パスID100が廃止されることになる。
本実施例1で述べた、通信事業者1のネットワークで用いられる転送プロトコルの具体的代表例としては、IP/MPLSのLDP(Label Distribution Protocol)アップストリームラベル割当てやPPPoEなどがあげられる。尚、実施例では、通信事業者1と通信事業者2として説明しているが、通信事業者は同じでもよく、第2の論理パスを用いてパケットを転送する第2の中継ネットワークが、第1の論理パスを用いてパケットを転送する、複数の拠点にまたがっている第1のネットワークを中継する場合に適用する発明である。
また、ルーティングプロトコルによっては、論理パスID割当てメッセージ1913を送信する前に、通信装置310間で論理パスID要求メッセージ(図示せず)を送信するものもある。
本発明を適用するパケットトランスポート装置320の拡張例の一つを図23、図25、図26を用いて解説する。
通信事業者1の中には、付加価値機能としてネットワーク301の契約者に対して契約帯域を保証するサービスを提供する場合がある。ルーティングプロトコルで論理パスを設定する転送プロトコルを利用する通信事業者1が契約帯域を保証するサービスを提供する場合、ネットワーク301を構築する通信装置310の帯域リソースを確保することができるルーティングプロトコルを用いることができる。このようなルーティングプロトコルには論理パス通知IDメッセージのルーティング情報領域211の中に論理パスIDだけでなく確保すべき帯域情報が含まれている。
上記転送プロトコルを利用するネットワークを収容する通信事業者2では、中継ネットワーク102の契約者に対して契約帯域を保証するサービスを提供する必要がある。このとき、通信事業者2のパケットトランスポート装置320のインタワークIF121には、帯域制御処理部641が追加される。
帯域制御処理部641では、中継ネットワーク302の中継論理パスを利用する契約者の契約帯域を超過したデータが中継ネットワーク302内に流入しないように監視しており、契約帯域を超過したデータが流入した場合は、超過データを廃棄したり、超過データの廃棄優先度を高めたり、超過データに遅延を加えたりする帯域制御を実行する。
中継ネットワーク302の中継論理パスを利用する契約者の契約帯域情報は、帯域管理テーブル642で管理される。図25に帯域管理テーブルの構成例を示す。本発明のパケットトランスポート装置320では、帯域管理テーブル642に中継ネットワーク302の中継論理パスIDを装置内で管理するための中継論理パス検索インデックス2500と、中継論理パス検索インデックス2500で特定される中継論理パスを契約するユーザの契約帯域を保持する中継論理パス契約帯域2502とを有する。さらに、帯域管理テーブル642は、通信装置310間でルーティングプロトコルを利用して確保した論理パスの帯域を管理するインタワークパス消費帯域2503を有する。
このインタワークパス消費帯域2503を有することで、通信事業者2の中継ネットワーク302の同一中継論理パス内に、通信事業者1の複数の帯域確保型の論理パスが設定される場合、通信事業者1が通信事業者2との間で契約している契約帯域に対して現在通信事業者1が消費(使用)している帯域をパケットトランスポート装置320は知ることができる。これにより、論理パス契約帯域に対して消費帯域量がある一定割合を上回った場合に、パケットトランスポート装置320が通信事業者2のネットワーク管理者に対して警告を上げることができる。これにより、通信事業者2のネットワーク管理者は通信事業者1のネットワーク管理者に対して、契約帯域を大きくするように警告を出すことができる。
これら機能を実現するために、インタワークIF121のルーティングプロトコルスヌーピング処理部604の処理フローチャートを変更する。変更したフローチャートを図26に示す。
ルーティングプロトコルスヌーピング処理部604は、ルーティングプロトコルパケット200のルーティング情報領域211から通信事業者1の論理パスIDおよびパケットのメッセージ種別を収集して、インタワークパス学習テーブルに情報の登録及び削除を行う。また、帯域監視テーブル643のインタワークパス消費帯域の更新を行う。
ルーティングプロトコルスヌーピング処理部604は、ルーティングプロトコルパケット200を宛先MACアドレス検索部602から受信すると、ルーティング情報領域211から通信事業者1のネットワークで用いている論理パスIDと確保帯域情報を取得する(S2601)。次に、受信したパケットが論理パスIDを通知するメッセージか、論理パスIDを削除するメッセージかを確認する(S2602)。メッセージの種別もルーティング情報領域で確認することが可能である。受信したルーティングプロトコルパケット200が論理パスID割当メッセージだった場合、受信したパケットから取得した論理パスIDをインタワークパスID801に登録し、宛先MACアドレス検索部602から通知された中継論理パス検索インデックスを中継論理パス検索インデックス802に登録する(S2603)。S2603により、通信事業者1のネットワークで使用する論理パスと通信事業者2の中継ネットワークで使用する中継論理パスが一対一で対応付く事になる。
次に、中継論理パス検索インデックスを検索キーとして帯域管理テーブル643を検索する。中継論理パス検索インデックスが一致したエントリのインタワークパス消費帯域2503に、取得した確保帯域情報を加算する(S2604)。
次に、中継論理パス契約帯域2502とインタワークパス消費帯域2503を比較し、比較結果が一定割合を超過している場合は、IF制御部615へと帯域異常警報を通知する(S2605)。
受信したルーティングプロトコルパケット200が論理パスID削除メッセージだった場合、受信したパケットから取得した論理パスIDからインタワークパス学習テーブル613を検索する。取得した論理パスIDと一致する登録済みのインタワークパスID801がテーブルに設定されている場合は、登録済みのインタワークパスID801と対応する中継論理パス検索インデックス802をインタワークパス学習テーブル613から削除する(S2607)。S2607により、通信事業者1のネットワークで使用しなくなる論理パスを削除することができるため、インタワークパス学習テーブル613に不要なエントリが残らない。
次に、中継論理パス検索インデックスを検索キーとして帯域管理テーブル643を検索する。中継論理パス検索インデックスが一致したエントリのインタワークパス消費帯域2503から取得した確保帯域情報を減算する(S2608)。
中継論理パス検索インデックスとルーティングプロトコルパケット200を中継論理パス処理部605へと転送する(S2606)。
これにより、帯域確保型のサービスにおいて、契約帯域に対して消費帯域がある一定割合を上回った場合に、パケットトランスポート装置320が通信事業者2のネットワーク管理者に対して警告を上げることができる。
通信事業者1のネットワーク301を構築する通信装置310の帯域リソースを確保することができるルーティングプロトコルの具体的代表例としてはRSVP(Resource Reservation Protocol)やCRLDP(Constraint-based Routed Label Distribution Protocol)などがあげられる。
(実施例2)
以下、図面を用いて本発明の第二の実施の形態を詳細に説明する。
図18は本発明が適用されるパケットトランスポート装置の第二の実施例である。
第二の実施形態ではルーティングプロトコルスヌーピング処理部632が、中継論理パス終端部608と送信元MAC学習部610の間に位置している。それ以外の処理ブロックの配備位置は第一の実施例と同じ構成となっている。
図18に示すパケットトランスポート装置が適用されるネットワークは、第一の実施形態と同じ図3の中継ネットワーク302となる。
第二の実施例では、通信事業者1のネットワークで用いているルーティングプロトコルでは、論理パスを識別する論理パスIDを論理パスの終点から始点方向に通知する。よって、通信装置310-1から通信装置310-4の方向にデータ転送するための論理パスを構築する場合、通信装置310-4が、通信装置310-3、310-2、310-1へ向けてどの論理パスIDを用いて論理パスを構築するかを通知する。通信装置310-3は、通信装置310-4から論理パスIDを通知するルーティングプロトコルパケットを受信すると、通信装置310-4から受信したルーティングプロトコルパケットで指定されている論理パスIDを装置にセットする。また、通信装置310-3は、論理パスの通り道となる次の通信装置310-2にルーティングパケットを送信して論理パスIDを通知する。このようにして、End-Endの論理パスを構築する。
第一の実施例にあるパケットトランスポート装置と第二の実施例にあるパケットトランスポート装置を構成する処理ブロックで動作に差異がある宛先MAC検索部631とルーティングプロトコルスヌーピング処理632について処理動作詳細を述べる。
宛先MAC検索部631は、パケットを受信すると、受信したパケットのMACヘッダ111から宛先MACアドレス121を取得して、受信したパケットの宛先MACがMAC学習テーブル612に登録されているかどうかを確認する。宛先MAC検索部602がパケットを受信したときの動作を図7と図21を用いて述べる。
図21は、第二の実施例にあるパケットトランスポート装置の宛先MAC検索部631の処理動作を記載したフローチャートである。宛先MAC検索部631は、パケットを受信すると、まず、受信パケットのMACヘッダ111から宛先MACアドレス121を取得する(S2101)。次に、取得した宛先MACアドレス121を検索キーとして、MAC学習テーブル612に一致するアドレスが登録されているかMAC学習テーブル612の学習MACアドレス701を検索する(S2102)。MAC学習テーブル612の検索結果、取得MACはMAC学習テーブル612に登録されているかを判定する(S2103)。MAC学習テーブル612に同一のMACアドレスが登録されている場合、宛先MACアドレスに対応する中継論理パス検索インデックスをテーブルから取得する(S2104)。MAC学習テーブル612に同一のMACアドレスが登録されていない場合、インタワークIFに登録されている全ての中継論理パスに対してパケットを複製して転送することを表すフラッディング用中継論理パス検索インデックスを保持する(S2107)。中継論理パス検索インデックス702と受信パケットとをインタワークパス検索部603へと転送する(S2106)。受信パケットがユーザデータパケット100かルーティングプロトコルパケット102かはMACヘッダのタイプ123の値で確認することができる。また、ルーティングパプロトコルパケット102であった場合は、ルーティング情報領域からメッセージの内容を確認することができる。
ルーティングプロトコルスヌーピング処理部632は、ルーティングプロトコルパケット200のルーティング情報領域211から通信事業者1のネットワークで使用されている論理パスIDおよびパケットのメッセージ種別を収集して、インタワークパス学習テーブルに情報の登録及び削除を行う。ルーティングプロトコルスヌーピング処理部604がパケットを受信したときの動作を図8と図22を用いて述べる。
ルーティングプロトコルスヌーピング処理部632は、中継論理パス終端部608から受信したパケットがユーザデータパケット100かルーティングプロトコルパケット200かを判定する。ルーティングプロトコルパケット200の場合、さらにそのパケットが通信事業者1の通信装置310間でデータ通信するための論理パスIDを通知するメッセージ、または、通信事業者1の通信装置310間でデータ通信するための論理パスIDを削除する通知するメッセージであるかどうかを判定する(S2201)。
受信パケットがルーティングプロトコルパケット200で、かつ論理パスID割当メッセージまたは論理パスID削除メッセージであった場合、ルーティング情報領域211から通信事業者1のネットワークで用いている論理パスIDを取得する(S2202)。次に、受信したパケットが、論理パスIDを通知するメッセージか、論理パスIDを削除するメッセージかを確認する(S2203)。メッセージの種別はルーティング情報領域で確認することが可能である。受信したルーティングプロトコルパケット200が論理パスID割当メッセージだった場合、受信したパケットから取得した論理パスIDをインタワークパスID801に登録し、中継論理パス終端部608から通知された中継論理パス検索インデックスを中継論理パス検索インデックス802に登録する(S2204)。S2204により、通信事業者1のネットワークで使用する論理パスと通信事業者2の中継ネットワークで使用する中継論理パスが一対一で対応付く事になる。
受信したルーティングプロトコルパケット200が論理パスID削除メッセージだった場合、受信したパケットから取得した論理パスIDからインタワークパス学習テーブル613を検索する。取得した論理パスIDと一致する登録済みのインタワークパスID801がテーブルに設定されている場合は、登録済みのインタワークパスID801と対応する中継論理パス検索インデックス802の双方をインタワークパス学習テーブル613から削除する(S2206)。S2206により、通信事業者1で使用しなくなる論理パスを削除することができるため、インタワークパス学習テーブル613に不要なエントリが残らない。
S2204、S2205のいずれかの処理を行った後、中継論理パス検索インデックスとルーティングプロトコルパケット200を、中継論理パス処理部605へと転送する。
次に、図19と図20を用いて本発明が適用されるパケットトランスポート装置320が送信元MACアドレスと通信事業者1のネットワークで用いられる論理パスIDを学習する手順を説明する。
図19は、通信事業者1の通信装置310-2と通信装置310-3との間で論理パスが設定された後、データ送受が行われ、さらには論理パスが削除されるまでのシーケンスの一例を記載した図である。図20は、本発明のパケットトランスポート装置320-1が有するMAC学習テーブル612、インタワークパス学習テーブル613、中継論理パス管理テーブル614の設定内容を表している。
通信事業者2のパケットトランスポート装置において、通信事業者1のネットワークに提供する中継論理パスのみ設定された初期状態がS2001である。このとき、中継論理パス管理テーブル614には、中継ネットワーク302に設定された中継論理パス331、332、333の情報が、中継論理パス検索インデックス0中継論理パスID1000、中継論理パス検索インデックス1中継論理パスID2000、中継論理パス検索インデックス2中継論理パスID3000、として登録されている。
通信事業者1に対して通信事業者2がネットワーク提供を開始すると、通信装置310-2は、ネットワーク内に同一転送プロトコルを使用する通信装置が存在するかを確認する探索メッセージ1911を送信する。探索メッセージ1911の宛先MACアドレスは、ネットワーク内の全ての通信装置310にパケットが届くようにブロードキャストアドレスまたはマルチキャストアドレスが使用される。パケットトランスポート装置320-1が探索メッセージ1911を受信すると、宛先MACアドレスがブロードキャスト(マルチキャスト)であり、かつ、論理パスヘッダ112が付与されていないことから、インタワークIF321に登録されている全ての中継論理パス(331、332、333)にパケットをコピーして転送する。
探索メッセージ1911を受信した通信装置310-3は、応答メッセージ1912を通信装置310-2へ送信する。応答メッセージ1912を受信したパケットトランスポート装置320-1は、受信した応答メッセージが転送されてきた中継ネットワークの中継論理パス331の中継論理パスID1000に対応する中継論理パス検索インデックス0を、中継論理パス管理テーブル614から取得する。また、MACヘッダ111の送信元MACアドレス112の位置から、通信装置310-3のMACアドレスである「A」を取得し、MAC学習テーブル612にMACアドレス「A」と中継論理パス検索インデックス「0」を登録する(S2002)。MAC応答メッセージ1912は、パケットトランスポート装置320-1から通信装置310-2へと転送される。
次に、通信事業者1の中で使用する論理パスの設定するために、通信装置310-3は、論理パスID割当メッセージ1913を通信装置320-2へ送信する。通信装置320-2は、パケットを受信すると、中継論理パスID「1000」で論理パスID割当メッセージ1913をカプセル化して、パケットを中継ネットワーク302へと転送する。論理パスID割当メッセージを受信したパケットトランスポート装置320-1は、中継論理パスヘッダ402から受信パケットの中継論理パスIDが「1000」であることを取得し、中継論理パスID「1000」を検索キーとして中継論理パス管理テーブル614を検索する。これにより、中継論理パス管理テーブル614から中継論理パス検索インデックス「0」を所得する。次に、受信したパケットが論理パスID割当メッセージであるとルーティング情報領域211から判断し、ルーティングプロトコルスヌーピング処理部604にて同じくルーティング情報領域211から通信事業者1の通信装置310が設定しようとしている論理パスID「100」を取得し、インタワークパス学習テーブル613に論理パスID「100」と中継論理パス検索インデックス「0」とを登録する(S2003)。
論理パスID割当メッセージ1913を受信した通信装置310-2は、通信装置310-3へ転送すべきユーザデータパケット100には、論理パスヘッダ112の論理パスIDが「100」と設定する必要があるということを学習する。
論理パスID割当メッセージ1913を受信した通信装置310-2は、応答メッセージ1914を通信装置310-3へ送信する。応答メッセージ1914を通信装置310-3が受信することで、通信装置310-2と通信装置310-3の間に論理パスID「100」の論理パス340が開通することになる。
論理パス340が開通すると、通信事業者1は、通信事業者1と契約するユーザに対して通信サービスを開始する。それにともない、通信装置310-2からはユーザデータパケット1915が送信されてくる。
パケットトランスポート装置320-1は、ユーザデータパケット1915を受信すると、論理パスヘッダ112から論理パスID「100」を取得し、論理パスIDを検索キーとしてインタワークパス学習テーブル613を検索し、対応する中継論理パス検索インデックス802の値「0」を取得する。次に、中継論理パス検索インデックス802を検索キーとして中継論理パス管理テーブルを検索し、中継論理パスIDの値「1000」を取得する。取得した論理パスIDで中継論理パスヘッダ402を生成して、受信したユーザデータパケットをカプセル化して、パケットトランスポート装置320-1から中継ネットワーク302へと転送する。このように、パケットトランスポート装置は、通信装置310-2と310-3で使用する論理パスIDを論理パスID割当メッセージ1913から学習することができるため、宛先MACアドレス121がマルチキャストやブロードキャストであるユーザデータパケット1015を受信したとしても、中継ネットワーク302の特定の中継論理パスID「1000」の中継論理パスでパケットを転送することができる。
次に、通信事業者1のネットワークで使用する論理パスを削除する、論理パスID削除メッセージ1916が、通信装置310-3から通信装置310-2へと送信される。
論理パスID削除メッセージを受信したパケットトランスポート装置320-1は、中継論理パスヘッダ402から受信パケットの中継論理パスIDが「1000」であることを取得し、中継論理パスID「1000」を検索キーとして中継論理パス管理テーブル614を検索する。これにより、中継論理パス管理テーブル614から中継論理パス検索インデックス「0」を所得する。次に、受信したパケットが論理パスID削除メッセージ1916であることをルーティング情報領域211から判断し、ルーティングプロトコルスヌーピング処理部604において同じくルーティング情報領域211から通信事業者1の通信装置310が削除しようとしている中継論理パスID「100」を取得し、インタワークパス学習テーブル613から論理パスID「100」と中継論理パス検索インデックス「0」とを削除する(S2002)。また、パケットトランスポート装置320-1は、通信装置310-2へ論理パスID削除メッセージ1916を転送する。
本実施例2で述べた、通信事業者1のネットワークで使用する転送プロトコルの具体的代表例としてはIP/MPLSのLDP(Label Distribution Protocol)によるダウンストリームラベル割当てなどがあげられる。
また、ルーティングプロトコルによっては、論理パスID割当てメッセージ1913を送信する前に、通信装置310間で論理パスID要求メッセージ(図示せず)を送信するものもある。
実施例2のパケットトランスポート装置320の拡張例の一つを図24、図25、図32を用いて解説する。
通信事業者1の中には、付加価値機能としてネットワーク301の契約者に対して契約帯域を保証するサービスを提供する場合がある。ルーティングプロトコルで論理パスを設定する転送プロトコルを利用する通信事業者1が契約帯域を保証するサービスを提供する場合、ネットワーク301を構築する通信装置310の帯域リソースを確保することができるルーティングプロトコルを用いることができる。このようなルーティングプロトコルには論理パス通知IDメッセージのルーティング情報領域211の中に論理パスIDだけでなく確保すべき帯域情報が含まれている。
上記転送プロトコルを利用するネットワークを収容する通信事業者2では、中継ネットワーク102の契約者に対して契約帯域を保証するサービスを提供する必要がある。このとき、通信事業者2のパケットトランスポート装置320のインタワークIF121には帯域制御処理部641が追加される。
帯域制御処理部641では中継ネットワーク302の中継論理パスを利用する契約者の契約帯域を超過したデータが中継ネットワーク302内に流入しないように監視しており、契約帯域を超過したデータが流入した場合は超過データを廃棄したり、超過データの廃棄優先度を高めたり、超過データに遅延を加えたりする帯域制御を実行する。
中継ネットワーク302の中継論理パスを利用する契約者の契約帯域情報は帯域管理テーブル642で管理されている。図25に帯域管理テーブルの構成例を示す。本発明のパケットトランスポート装置320では、帯域管理テーブル642に中継ネットワーク302の中継論理パスIDを装置内で管理するための中継論理パス検索インデックス2500と、中継論理パス検索インデックス2500で特定される中継論理パスを契約するユーザの契約帯域を保持する中継論理パス契約帯域2502を有している。さらに、通信装置310間でルーティングプロトコルを利用して確保した論理パスの帯域を管理するインタワークパス消費帯域2503を有している。
このインタワークパス消費帯域2503を有することで、通信事業者2の中継ネットワーク302の同一中継論理パス内に、通信事業者1の複数の帯域確保型の論理パスが設定される場合、通信事業者1が通信事業者2との間で契約している契約帯域に対して現在通信事業者1が消費している帯域をパケットトランスポート装置320は知ることができる。これにより、中継論理パス契約帯域に対して消費帯域量がある一定割合を上回った場合に、パケットトランスポート装置320が通信事業者2のネットワーク管理者に対して警告を上げることができる。これにより、通信事業者2のネットワーク管理者は通信事業者1のネットワーク管理者に対して、契約帯域を大きくするように警告を出すことができる。
これら機能を実現するために、インタワークIF121のルーティングプロトコルスヌーピング処理部604の処理フローチャートを変更する。変更したフローチャートを図32に示す。
ルーティングプロトコルスヌーピング処理部632はルーティングプロトコルパケット200のルーティング情報領域211から通信事業者1の論理パスIDおよびパケットのメッセージ種別を収集して、インタワークパス学習テーブルに情報の登録及び削除を行う。また、帯域監視テーブル643のインタワークパス消費帯域の更新を行う。
ルーティングプロトコルスヌーピング処理部632は中継論理パス終端部608から受信したパケットがユーザデータパケット100かルーティングプロトコルパケット200かを判定する。ルーティングプロトコルパケット200の場合、さらにそのパケットが通信事業者1の通信装置310間でデータ通信するための論理パスIDを通知するメッセージまたは、通信事業者1の通信装置310間でデータ通信するための論理パスIDを削除する通知するメッセージであるかどうかを判定する(S3101)。
受信パケットがルーティングプロトコルパケット200でかつ論理パスID割当メッセージまたは論理パスID削除メッセージであった場合、ルーティング情報領域211から通信事業者1で用いている論理パスIDと確保帯域情報を取得する(S3102)。次に、受信したパケットが論理パスIDを割当てるメッセージか、論理パスIDを削除するメッセージかを確認する(S3103)。メッセージの種別はルーティング情報領域で確認することが可能である。受信したルーティングプロトコルパケット200が論理パスID割当メッセージだった場合、受信したパケットから取得した論理パスIDをインタワークパスID801に登録し、中継論理パス終端部608から通知された中継論理パス検索インデックスを中継論理パス検索インデックス802に登録する(S3104)。S2204により、通信業者1で使用する論理パスと通信事業者2で使用する中継論理パスが一対一で対応付く事になる。
次に、中継論理パス検索インデックスを検索キーとして帯域管理テーブル643を検索する。中継論理パス検索インデックスが一致したエントリのインタワークパス消費帯域2503に取得した確保帯域情報を加算する(S3105)。
次に、中継論理パス契約帯域2502とインタワークパス消費帯域2503を比較し、比較結果が一定割合を超過している場合はIF制御部615へと帯域異常警報を通知する(S3106)。
受信したルーティングプロトコルパケット200が論理パスID削除メッセージだった場合、受信したパケットから取得した論理パスIDからインタワークパス学習テーブル613を検索する。取得した論理パスIDと一致する登録済みのインタワークパスID801がテーブルに設定されている場合は、登録済みのインタワークパスID801と対応する中継論理パス検索インデックス802の双方をインタワークパス学習テーブル613から削除する(S3108)。S3108により、通信事業者1で使用しなくなる論理パスを削除することができるため、インタワークパス学習テーブル613に不要なエントリが残らない。
次に、中継論理パス検索インデックスを検索キーとして帯域管理テーブル643を検索する。中継論理パス検索インデックスが一致したエントリのインタワークパス消費帯域2503から取得した確保帯域情報を減算する(S3109)。
中継論理パス検索インデックスとルーティングプロトコルパケット200を次処理ブロックへと転送する(S3107)。
これにより、帯域確保型のサービスにおいて、契約帯域に対して消費帯域がある一定割合を上回った場合に、パケットトランスポート装置320が通信事業者2のネットワーク管理者に対して警告を上げることができる。
通信事業者1のネットワーク301を構築する通信装置310の帯域リソースを確保することができるルーティングプロトコルの具体的代表例としてはRSVP(Resource Reservation Protocol)やCRLDP(Constraint-based Routed Label Distribution Protocol)などがあげられる。
(実施例3)
以下、図面を用いて本発明の第三の実施の形態を詳細に説明する。
図27は、図3の通信事業者1の転送プロトコルをIP/MPLSプロトコルに、通信事業者2に転送プロトコルをMPLS-TPプロトコルとした場合の実施例である。
図27は、本発明が適用されるパケットトランスポート装置により、それぞれ地理的に離れた位置にある2つ以上のネットワークをインタワークする中継ネットワークを構築した例を示す図である。
本図では、通信事業者1と通信事業者2が存在し、通信事業者1の地理的に離れた位置にある4つのネットワーク2701-1、2701-2、2701-3、2701-4を通信事業者2の中継ネットワーク2702でインタワークしている。
通信事業者1のネットワーク2701-1は、転送プロトコルとしてIP/MPLS(Internet Protocol/ Multi-Protocol Label Switching)が用いられている。通信事業者2の中継ネットワーク2702は、転送プロトコルとしてMPLS-TP(Multi-Protocol Label Switching - Transport Profile)が用いられている。
図32と図33はIP/MPLSのユーザデータパケット3200とルーティングプロトコルパケット3300のフォーマットである。
IP/MPLSのユーザデータパケット3200は、MACヘッダ111とIP/MPLSヘッダ3201、ペイロード113から構成されている。さらに、ペイロード113をより具体化するとIPヘッダ3202とTCPヘッダ3203とデータ領域3204から構成されている。
IP/MPLSのルーティングプロトコルパケット3300は、MACヘッダ111とルーティング情報領域211から構成されている。さらに、ルーティング情報領域211をより具体化すると、IPヘッダ3202とTCPヘッダ3203とLDPまたはRSVPのルーティング情報3301から構成されている。
転送プロトコル1とIP/MPLSプロトコルとの差分は、論理パスヘッダがIP/MPLSヘッダとなり、論理パスヘッダに含まれる論理パスIDがIP/MPLSラベルIDに名称変更されている点である。それ以外の機能的差分は無い。
図34はユーザデータパケット3200をMPLS-TPでカプセル化したフレームフォーマット3400である。
ユーザデータパケット3200をカプセル化した場合は、IP/MPLSのユーザデータパケットのMACヘッダ111の外側にMPLS-TPヘッダ3401が付与される。さらには、MPLS-TP中継ネットワーク2702で使用されるレイヤ2ヘッダ400が付与される。
図35はルーティングプロトコルパケット3300をMPLS-TPでカプセル化したフレームフォーマット3500である。
ルーティングプロトコルパケット3300をカプセル化した場合は、IP/MPLSのルーティングプロトコルパケットのMACヘッダ111の外側にMPLS-TPヘッダ3401が付与される。さらには、MPLS-TP中継ネットワーク2702で使用されるレイヤ2ヘッダ400が付与される。
転送プロトコル2とMPLS-TPプロトコルの差分は、中継論理パスヘッダ402がMPLS-TPヘッダに名称変更されている。それ以外の機能的差分は無い。
MPLS-TPネットワーク2702で用いられるレイヤ2プロトコルがイーサネットの場合、IP/MPLSネットワーク2701で使用しているMACヘッダ111を利用することも可能である。IP/MPLSネットワーク2701で使用しているMACヘッダ111を利用する場合のパケットフォーマットを図38、39に示す。図38は、ユーザデータパケット3200をMPLS-TPネットワーク2702で転送するパケットフォーマット3800である。MPLS-TPヘッダ3401は、受信したユーザデータパケットのMACヘッダ111とIP/MPLSヘッダ3201との間に付与する。図39は、ルーティングプロトコルパケット3300を通信事業者2のネットワークで転送するパケットフォーマット3900である。中継論理パスヘッダ3401は、MACヘッダ111とIPヘッダ3202の間に付与する。このように、IP/MPLSネットワーク2701で用いられるMACヘッダ111を流用することで、オーバヘッドを小さくする効果がある。以下、実施例では通信事業者2で用いるパケットフォーマットは図34、図35として説明するが、図38、図39のパケットフォーマットでも同じ処理で同じ効果を得ることができる。
通信事業者1のネットワークはIP/MPLSルータ2710で構成されている。IP/MPLSルータは、LDPやRSVPなどのルーティングプロトコルを用いてIP/MPLSルータ間にMPLSの論理パスを設定する。ユーザサイトからネットワークに入力したデータパケットには、IP/MPLSの論理パスを識別するIP/MPLSヘッダが付与さる。IP/MPLSルータはIP/MPLSヘッダによりパケットの転送先を特定する。
図27の一例では、通信事業者1の地理的に離れる2つのネットワークにユーザサイト12471とユーザサイト2 2472が接続されている。この2つのユーザサイトを接続する論理パス2740が、IP/MPLSルータ2710-1とIP/MPLSルータ2710-4との間で設定される。この論理パス2740は、IP/MPLSルータ2710-1、2710-2、2710-3、2710-4の間でルーティングプロトコルを用いて設定される。通信事業者1が地理的に離れたネットワークのEnd-End間で論理パスを構築するためには、通信事業者2の中継ネットワークはルーティングプロトコルパケットも転送する必要がある。
通信事業者2の中継ネットワーク2702はMPLS-TP伝送装置2720で構成されている。MPLS-TP伝送装置2720間の論理パスは、中継ネットワーク2702を契約するユーザ(他の通信業者)が利用できるMPLS-TPの論理パスがネットワークマネージメントシステムから予め設定される。図27の一例では、通信事業者1を接続する3本のMPLS-TPの論理パス2731、2732、2733が設定されている。
図28は、地理的に離れたIP/MPLSネットワーク2701をMPLS-TP中継ネットワーク2702でインタワークすることを実現する、本発明の適用例であるMPLS-TP伝送装置2720の構成図である。本構成のMPLS-TP伝送装置2720は、通信事業者1がルーティングプロトコルにLDPのダウンストリームラベル割当てを用いる場合に適用できる。
MPLS-TP伝送装置2720は、1個以上のスイッチ部323と、1個以上の装置制御部324と、1枚以上の中継ネットワークIF322と、1枚以上のインタワークインタフェース(IF)321から構成される。スイッチ部323、装置制御部324、中継ネットワークIF322、インタワークIF321は互いに接続される。これら構成要素は、図18に示すパケットトランスポート装置320と同一のものとなる。差分は、インタワークIF321のIP/MPLSパス学習テーブル2811、MPLS-TPパス管理テーブル、IP/MPLS論理パス検索部2801、MPLS-TP処理部2802、MPLS-TP終端部2803、ルーティングプロトコルスヌーピング処理部2804と、中継ネットワークIF322のMPLS-TP検索部2821となる。
差分となる機能ブロックのみ詳細説明する。
図29はIP/MPLSパス学習テーブル2811の1構成例である。IP/MPLSパス学習テーブル2811とインタワークパス学習テーブル614との差分は、インタワークパスID 801がIP/MPLSラベルID 2901に名称変更した点である。
図30は、MPLS-TPパス管理テーブル2812の1構成例である。MPLS-TPパス管理テーブル2812と中継論理パス管理テーブル614との差分は、中継論理パスIDがMPLS-TPラベルID 3102に名称変更した点である。
IP/MPLS論理パス検索部2801とインタワークパス検索部603との違いは、受信するパケットの参照するヘッダが論理パスヘッダ112からIP/MPLSヘッダ3201に変更になったのみである。IP/MPLSヘッダ3201から論理パスIDにあたるラベルIDを取得し、取得したラベルIDを検索キーとしてIP/MPLSパス学習テーブルを検索する。その他動作は、全てインタワークパス検索部603と共通となる。
MPLS-TP処理部2802と中継論理パス処理部605との違いは、受信したパケットに付与するヘッダが中継論理パスヘッダからMPLS-TPヘッダに変更になったのみである。MPLS-TP処理部2802は、パケットを受信すると、中継論理パス検索インデックスでMPLS-TPパス管理テーブル2812を検索し、MPLS-TPラベルID3001を取得して、MPLS-TPヘッダを生成する。
MPLS-TP終端部2803と中継論理パス終端部608との違いは、受信したパケットの参照するヘッダが中継論理パスヘッダ402からMPLS-TPヘッダ3400に変更になったのみである。中継論理パスヘッダ402とMPLS-TPヘッダ3400との構成情報は共に同じである。
ルーティングプロトコルスヌーピング処理部2804の違いは、受信したルーティングプロトコルパケットから取得する情報が、論理パスIDからIP/MPLSラベルIDに名称変更になったのみである。
本発明を適用するMPLS-TP伝送装置2720によると、地理的に離れているIP/MPLSネットワークをMPLS-TP中継ネットワークでインタワークすることが可能となる。
また、実施例1の図6に示すパケットトランスポートと同じく、ルーティングプロトコルスヌーピング処理2804を宛先MAC検索部602とMPLS-TP処理部2802との間に配備することで、LDPのダウンストリームラベル割当てにも適用することができる。
さらには、実施例1の図23や実施例2の図24のように、帯域制御処理部641と帯域管理テーブル642を具備することでRSVPやCRLDPにも適用することができる。