(57)【要約】【課題】  既存のハードウェアを変更することなく新たな拡張機能を容易に追加可能な構造のパケット転送装置を提供する。【解決手段】  外部ネットワークに接続するインタフェースのうちの少なくとも１つを拡張インタフェースに指定し、追加機能を備えた拡張装置を拡張インタフェースを介してパケット転送装置に接続しておき、他のネットワーク・インタフェースで受信された追加機能を利用すべき受信パケットを拡張装置に転送し、拡張機能によって処理された受信パケットを拡張インタフェースを介してパケット転送装置に再入力し、受信パケットの宛先アドレスと対応したネットワーク・インタフェースから外部ネットワークに送出するパケット転送装置。【選択図】  図１
2006157537.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの機能拡張装置と連携してパケットの転送制御を行うパケット転送装置であって、
それぞれ受信回線インタフェースと送信回線インタフェースとからなる複数のネットワーク・インタフェースと、
各受信回線インタフェースに付随して設けられ、受信回線インタフェースからの受信パケットを受信回線インタフェースの識別子と転送先識別子とを含む内部ヘッダをもった内部パケットに変換して出力する複数の受信パケット処理部と、
各送信回線インタフェースに付随して設けられた複数の送信パケット処理部と、
各受信パケット処理部からの出力パケットを内部ヘッダに含まれる転送先識別子で特定される何れかの送信パケット処理部に転送するための内部パケット転送部とからなり、
上記ネットワーク・インタフェースのうちの１つが上記機能拡張装置に接続される拡張インタフェースとして指定されており、
拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、予め指定されたヘッダ条件に該当する受信パケットに、上記拡張インタフェースを示す転送先識別子を含む内部ヘッダを付加し、内部パケットとして上記内部パケット転送部に出力する機能を備え、
上記拡張インタフェースに付随する送信パケット処理部が、上記内部パケット転送部から受信した内部パケットに、宛先アドレスとして上記拡張装置のアドレスを含む外部ネットワーク用ヘッダを付加し、送信パケットとして送信回線インタフェースに出力し、
上記拡張インタフェースに付随する受信パケット処理部が、受信回線インタフェースから受信した上記拡張装置で処理されたパケットから外部ネットワーク用ヘッダを除去し、内部パケットとして上記内部パケット転送部に出力することを特徴とするパケット転送装置。
【請求項２】
前記拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、拡張インタフェースに転送すべき受信パケットの識別条件と転送先識別子との関係を示す受信パケット識別テーブルを有し、上記識別条件に該当する受信パケットに上記受信パケット識別テーブルが示す転送先識別子を含む内部ヘッダを付加し、内部パケットとして前記内部パケット転送部に出力し、
前記拡張インタフェース以外のネットワーク・インタフェースに付随する各送信パケット処理部が、前記内部パケット転送部から受信した内部パケットから内部ヘッダを除去し、送信パケットとして送信回線インタフェースに出力することを特徴とする請求項１に記載のパケット転送装置。
【請求項３】
前記各受信パケット処理部と送信パケット処理部が、それぞれに付随するネットワーク・インタフェースが拡張インタフェースか否かを示すフラグ情報を記憶し、該フラグ情報の状態によって、前記受信回線インタフェースおよび内部パケット転送部からの受信パケットの処理モードを切り換えることを特徴とする請求項２に記載のパケット転送装置。
【請求項４】
前記各受信パケット処理部が、受信パケットの宛先アドレスと転送識別子との関係を示す経路テーブルを備え、前記フラグ情報が拡張モードを示す場合は、前記受信回線インタフェースからの受信パケットから外部ネットワーク用ヘッダを除去し、前記フラグ情報が通常モードを示す場合は、前記受信パケット識別テーブルを参照して、受信パケットが前記識別条件に該当するパケットか否かを判定し、識別条件に該当するパケットは、該受信パケット識別テーブルが示す転送先識別子を含む内部ヘッダをもつ内部パケットに変換し、識別条件に該当しないパケットは、上記経路テーブルから検索された転送先識別子を含む内部ヘッダをもつ内部パケットに変換することを特徴とする請求項３に記載のパケット転送装置。
【請求項５】
前記拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、拡張インタフェースに転送すべき受信パケットの識別条件と転送先識別子との関係を示す複数のテーブルエントリからなる受信パケット識別テーブルを有し、
前記ネットワーク・インタフェースのうちの複数が拡張インタフェースとして指定されていることを特徴とする請求項２〜請求項４の何れかに記載のパケット転送装置。
【請求項６】
前記拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、拡張インタフェースに転送すべき受信パケットの識別条件と転送先識別子と送信パケット処理識別子の関係を示す複数のテーブルエントリからなる受信パケット識別テーブルを有し、上記識別条件に該当する受信パケットに上記受信パケット識別テーブルが示す転送先識別子と送信パケット処理識別子とを含む内部ヘッダを付加し、内部パケットとして前記内部パケット転送部に出力し、
前記拡張インタフェースに付随する送信パケット処理部が、送信パケット処理識別子と宛先アドレスとの関係を示す宛先切替えテーブルを備え、前記内部パケット転送部から受信した内部パケットに、上記宛先切替えテーブルから検索された該内部パケットが示す送信パケット処理識別子と対応する宛先アドレスを含む外部ネットワーク用ヘッダを付加し、送信パケットとして送信回線インタフェースに出力することを特徴とする請求項２〜請求項４の何れかに記載のパケット転送装置。
【請求項７】
前記拡張インタフェース以外の受信回線インタフェースが、外部ネットワーク用ヘッダ付きの受信パケットを出力し、上記受信回線インタフェースに付随する入力パケット処理部が、上記受信パケットに受信回線インタフェースの識別子と転送先識別子と送信パケット処理識別子とを含む内部ヘッダを付加し、内部パケットとして前記内部パケット転送部に出力し、
前記拡張インタフェースが外部ネットワークから受信するパケットの内部ヘッダが、アドレス変換不要を指示する送信パケット処理識別子を含み、
前記拡張インタフェース以外のネットワーク・インタフェースに付随する各送信パケット処理部が、前記内部パケット転送部から受信した内部パケットの内部ヘッダをチェックし、送信パケット処理識別子がアドレス変換不要を指示していた場合は、内部ヘッダを除去した受信パケットを送信パケットとして出力し、送信パケット処理識別子がアドレス変換を指定していた場合は、受信パケットに含まれる外部ネットワーク用ヘッダのアドレスを変換し、内部ヘッダを除去した受信パケットを送信パケットとして出力することを特徴とする請求項１〜請求項６の何れかに記載のパケット転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット転送装置に関し、更に詳しくは、パケット転送装置の機能を拡張するための装置構成に関する。
【背景技術】
【０００２】
ＩＰネットワークなどのパケット通信ネットワークは、パケットを中継するための複数のパケット転送装置で構成される。端末装置から送信されたパケットは、これらのパケット転送装置を経由して、宛先の端末またはサーバに到達する。各パケット転送装置は、各入力回線から受信したパケットのヘッダに含まれる宛先アドレスに従って経路テーブルを参照し、受信パケットを転送すべき出力回線を特定する。また、受信パケットのヘッダ情報に適切な更新処理を施した後、上記出力回線を介して次のパケット転送装置に受信パケットを送信する。
【０００３】
従来のパケット転送装置は、受信パケットの処理能力に制約があり、処理能力を大幅に変更したい場合は、パケット転送装置全体を新たな装置と交換する必要がある。新たなパケット転送装置への交換は、大きな設備投資を必要とするため、ユーザニーズに応じてネットワーク機能を頻繁に変更することは困難となる。
【０００４】
上記問題に対処する１つの解決策として、パケット転送装置の機能を或る程度拡張可能な構造に設計しておき、必要に応じて、パケット転送装置の一部を変更または新たな機能ボードを追加することが考えられる。例えば、特開２００２−２８１０７号公報（特許文献１）には、パケット転送装置の内部スイッチに接続されるネットワークインタフェースカードを機能拡張カードと交換することによって、機能の拡張を可能にしたインターネットワーク装置及びインターネットワーク方法が提案されている。
【０００５】
【特許文献１】特開２００２−２８１０７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
然るに、特許文献１で提案された拡張方式では、パケット転送装置が備えるメーカ独自の内部スイッチに接続されるネットワーク・インタフェースのハードウェアを新規に開発し、既設のパケット転送装置と部品交換する必要がある。この方式は、パケット転送装置全体を新たな機種と置き換える場合に比較して低コストとなるが、新規インタフェースボードの提供には、パケット転送装置のハードウェアに関する専門的な理解力が必要とされ、ハードウェアの設計と試作に依然として高いコストを必要とする。また、新規インタフェースボードには、既存のボードに置き換えるためにサイズ的な制約もある。
【０００７】
本発明の目的は、既存のハードウェアを変更することなく新たな拡張機能を容易に追加可能な構造のパケット転送装置を提供することにある。
本発明の他の目的は、複数種類の新たな拡張機能を容易に追加可能な構造のパケット転送装置を提供することにある。
本発明の更に他の目的は、追加された新たな拡張機能を他のパケット転送装置と共用可能な構造のパケット転送装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明のパケット転送装置は、外部ネットワークに接続するための汎用的な複数のネットワーク・インタフェースのうちの少なくとも１つを拡張インタフェースに指定し、追加機能を備えた拡張装置を上記拡張インタフェースを介してパケット転送装置に接続しておき、他のネットワーク・インタフェースが受信した追加機能を利用すべき受信パケットを上記拡張装置に転送し、拡張機能によって処理された受信パケットを上記拡張インタフェースを介してパケット転送装置に再入力し、受信パケットの宛先アドレスと対応したネットワーク・インタフェースから外部ネットワークに送出するようにしたことを特徴とする。
【０００９】
更に詳述すると、上記各ネットワーク・インタフェースは、受信回線インタフェースと送信回線インタフェースとからなり、本発明のパケット転送装置は、各受信回線インタフェースに付随して設けられた受信パケット処理部と、各送信回線インタフェースに付随して設けられた複数の送信パケット処理部と、各受信パケット処理部からの出力パケットを内部ヘッダに含まれる転送先識別子で特定される何れかの送信パケット処理部に転送するための内部パケット転送部とからなる。ここで、各送信パケット処理部は、受信回線インタフェースからの受信パケットを受信回線インタフェースの識別子と転送先識別子とを含む内部ヘッダをもった内部パケットに変換して、内部パケット転送部に出力する。
【００１０】
本発明の１つの特徴は、拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、予め指定されたヘッダ条件に該当する受信パケットに、転送先識別子で上記拡張インタフェースを指定した内部ヘッダを付加し、内部パケットとして内部パケット転送部に出力する機能を備え、上記拡張インタフェースに付随する送信パケット処理部が、上記内部パケット転送部から受信した内部パケットに、宛先アドレスとして上記拡張装置のアドレスを含む外部ネットワーク用ヘッダを付加し、送信パケットとして送信回線インタフェースに出力し、上記拡張インタフェースに付随する受信パケット処理部が、受信回線インタフェースから受信した上記拡張装置で処理されたパケットから外部ネットワーク用ヘッダを除去し、内部パケットとして上記内部パケット転送部に出力することにある。
【００１１】
拡張装置が、パケット転送装置の各受信パケット処理部に代わって受信パケットを処理するためには、受信パケットのヘッダ情報の他に、例えば、受信インタフェース識別子のような受信パケットの属性情報が必要となる。本発明では、拡張インタフェース以外のネットワーク・インタフェースに付随する各受信パケット処理部が、拡張装置に転送すべき受信パケットに、拡張装置が必要とするパケットの属性情報含む内部ヘッダを付加し、拡張インタフェースに付随する送信パケット処理部が、上記内部パケットに外部ネットワーク用ヘッダを付加した形の送信パケットを送信回線インタフェースに出力しているため、拡張装置は、受信パケットの属性情報とヘッダ情報に基づいたパケット処理を実行することが可能となる。
【００１２】
拡張装置は、受信パケットの内部ヘッダ情報とパケットヘッダ情報に基づいて、受信パケットをルーティング処理し、ヘッダ変換されたパケットをパケット転送装置の拡張インタフェースに送り返す。本発明では、拡張インタフェースに付随する受信パケット処理部が、受信回線インタフェースから受信したパケットから外部ネットワーク用ヘッダを除去し、拡張装置でヘッダ変換された内部ヘッダとパケットヘッダとをもつ内部パケットを内部パケット転送部に出力するようにしているため、上記内部パケットは、内部ヘッダが示す転送先識別子に従って、受信パケットの宛先アドレスと対応した送信パケット処理部に転送され、内部ヘッダを除去した形で外部ネットワークに送出される。
【発明の効果】
【００１３】
本発明によれば、汎用的なネットワーク・インタフェースで接続された拡張装置を用いて、パケット転送装置の機能を拡張することが可能となる。拡張装置としては、目的機能に応じて、例えば、サーバやネットワークプロセッサなど、汎用的なネットワーク・インタフェースをもつ各種の機器を適用できる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の実施例について説明する。
【実施例１】
【００１５】
本発明の実施例１として、ＩＰｖ４パケットの経路制御機能を備えたパケット転送装置に対して、ネットワーク・インタフェースのうちの一つを介してＩＰｖ６拡張装置を接続することにより、ＩＰｖ６経路制御機能を追加した場合のシステム構成と動作について説明する。
【００１６】
図１は、本発明によるパケット転送装置１０の１実施例を示す。
パケット転送装置１０は、複数の受信回線インタフェース１１（１１−１〜１１−ｎ）と、複数の送信回線インタフェース１２（１２−１〜１２−ｎ）と、受信回線インタフェース１１に接続された複数の受信パケット処理部１３（１３−１〜１３−ｎ）と、送信回線インタフェース１２に接続された複数の送信パケット処理部１４（１４−１〜１４−ｎ）と、制御部１５と、これらの受信パケット処理部１３、送信パケット処理部１４および制御部１５に接続された内部パケット転送部１６とからなる。９０は、制御部１５に接続された制御端末を示す。
【００１７】
尚、ここでは、内部パケット転送部１６として、各受信パケット処理部１３から受信したパケットを内部ヘッダに従ってルーティングする内部スイッチを採用した構成について説明するが、本発明のパケット転送装置は、各受信パケット処理部１３が内部ヘッダ付きの受信パケットを内部バスに出力し、各送信パケット処理部１４が内部バスから自分宛のパケットを選択的に受信するバス型の内部パケット転送部を採用することもでき、内部パケット転送部の構造に特別な限定はない。
【００１８】
互いに対をなす受信回線インタフェース１１−ｉと送信回線インタフェース１２−ｉ（ｉ＝１〜ｎ）で１つのネットワーク・インタフェースを形成しており、各ネットワーク・インタフェースは、外部ネットワークＮＷ（ＮＷ−１、ＮＷ−２、…）、またはＩＰｖ６拡張装置４０に接続されている。本実施例では、各ネットワーク・インタフェースは、外部ネットワークＮＷまたはＩＰｖ６拡張装置４０との間で、外部ネットワーク用ヘッダとしてレイヤ２ヘッダをもつＩＰパケットを送受信するものとする。
【００１９】
図示した例では、ＩＰｖ６拡張装置４０は、第ｎネットワーク・インタフェース（受信回線インタフェース１１−ｎと送信回線インタフェース１２−ｎ）を介して、パケット転送装置１０に接続されている。また、外部ネットワークＮＷに接続されたネットワーク・インタフェースは、外部ネットワークＮＷから受信したＩＰｖ４パケットについては、通常のルーティング処理機能を有し、ＩＰｖ６パケットについては、ＩＰｖ６拡張装置４０にルーティング処理を委ねるものとする。
【００２０】
受信パケット処理部１３−ｊ（ｊ＝１〜ｎ−１）は、受信回線インタフェース１１−ｊが外部ネットワークＮＷから受信したＬ２ヘッダをもつパケットに内部ヘッダを付加し、内部パケット形式で内部スイッチ部に入力する。後で詳述するように、ＩＰｖ６拡張装置４０と第ｎネットワーク・インタフェースとの間で送受信されるパケットは、内部パケット形式のパケットに更にＬ２ヘッダを付加した特殊なパケット形式となっている。従って、受信パケット処理部１３−ｎは、受信回線インタフェース１１−ｎがＩＰｖ６拡張装置４０から受信したパケットからＬ２ヘッダを除去して得られた内部パケットを内部スイッチ部１６に入力する。
【００２１】
内部スイッチ部１６は、各受信パケット処理部１３から受信した内部パケットを内部ヘッダ情報によって特定される何れかの送信パケット処理部１４に転送する。外部ネットワークＮＷと対応付けられた送信パケット処理部１４−ｊ（ｊ＝１〜ｎ−１）は、内部スイッチ部１６から受信した内部パケットから不要となった内部ヘッダを除去し、得られたＬ２ヘッダ付きのＩＰパケットを送信回線インタフェース１２−ｊ（ｊ＝１〜ｎ−１）を介して外部ネットワークＮＷに出力する。一方、ＩＰｖ６拡張装置４０と対応付けられた送信パケット処理部１４−ｎは、内部スイッチ部１６から受信した内部パケットに、宛先Ｌ２アドレスでＩＰｖ６拡張装置４０を指定した新たなＬ２ヘッダを付加し、得られたパケットを送信回線インタフェース１２−ｎを介してＩＰｖ６拡張装置４０との接続回線に出力する。
【００２２】
図２（Ａ）は、受信回線インタフェース１１−ｊと送信回線インタフェース１２−ｊ（ｊ＝１〜ｎ−１）とからなるネットワーク・インタフェースが外部ネットワークＮＷとの間で送受信するパケットＰＫ１のフォーマットを示す。
パケットＰＫ１は、ＩＰペイロード８０と、ＩＰｖ４バージョンまたはＩＰｖ６バージョンのＩＰヘッダ８１と、Ｌ２ヘッダ８２とからなる。例えば、ＩＰｖ６バージョンの場合、ＩＰヘッダ８１は、バージョン８１１、クラス８１２、フローラベル８１３、ペイロード長８１４、次ヘッダ種別８１５、ホップリミット（中継限界数）８１６と、１２８ビットの送信元ＩＰアドレス８１Ｓおよび宛先ＩＰアドレス８１Ｄを含む。また、Ｌ２ヘッダ８２は、送信元Ｌ２アレス８２Ｓと宛先Ｌ２アドレス８２Ｄを含む。
【００２３】
図２（Ｂ）は、内部スイッチ部１６に入力される内部パケットＰＫ２のフォーマットの1例を示す。
内部パケットＰＫ２は、パケットＰＫ１に内部ヘッダ８３を付加したものであり、内部ヘッダ８３は、本実施例の場合、パケットの受信回線を示す受信回線インタフェース識別子（ＩＤ）８３１と、パケットの送信回線を示す送信回線インタフェース識別子（ＩＤ）８３２と、内部スイッチ部１６から該パケットを受信した送信パケット処理部１４で実行すべき処理を指定する送信パケット処理識別子８３３とを含む。内部スイッチ部１６は、各受信パケット処理部１３から受信した内部パケットＰＫ２を内部ヘッダに含まれる送信回線インタフェースＩＤ８３２で特定される何れかの送信パケット処理部１４に転送する。
【００２４】
図２（Ｃ）は、受信回線インタフェース１１−ｎと送信回線インタフェース１２−ｎとからなるネットワーク・インタフェースがＩＰｖ６拡張装置４０との間で送受信するパケットＰＫ３のフォーマットを示す。
パケットＰＫ３は、内部パケットＰＫ２の先頭に、送信元Ｌ２ヘッダ８４Ｓと宛先Ｌ２ヘッダ８４Ｄとを含む新たなＬ２ヘッダ８４を付加したフォーマットとなっている。以下の説明では、Ｌ２ヘッダ８４を拡張Ｌ２ヘッダ、Ｌ２ヘッダ８２をオリジナルＬ２ヘッダと呼ぶことにする。
【００２５】
図３は、受信パケット処理部１３−ｉ（ｉ＝１〜ｎ）の詳細を示す。
受信パケット処理部１３−ｉは、受信回線インタフェース１１−ｉから受信したパケットを一時的に格納するためのバッファメモリ２１と、受信パケットを内部パケットに変換する受信パケットプロセッサ２２と、受信パケットプロセッサ２２から出力された内部パケットを内部スイッチ部１６の入力ポートに転送するための内部スイッチインタフェース２３とからなる。
【００２６】
受信パケットプロセッサ２２は、受信回線インタフェース１１−ｉが、外部ネットワークＮＷに接続された通常のインタフェース（以下、通常ＩＮＦと言う）か、ＩＰｖ６拡張装置４０に接続されたインタフェース（以下、拡張ＩＮＦと言う）かの識別情報となるフラグ（以下、拡張フラグと言う）を記憶するためのレジスタ２２１を有し、拡張フラグの状態によって異なった受信パケット処理を実行する。後述するように、各送信パケット処理部１４も拡張フラグレジスタ３３１を備えている。以下の説明では、拡張フラグ「１」は、受信回線インタフェース１１−ｋおよび送信回線インタフェース１２−ｋが拡張装置（図１ではＩＰｖ６拡張装置４０）に接続された拡張ＩＮＦであることを示し、拡張フラグ「０」は、受信回線インタフェース１１−ｋがおよび送信回線インタフェース１２−ｋが外部ネットワークＮＷに接続された通常ＩＮＦであることを示すものとする。
【００２７】
各ネットワーク・インタフェースのレジスタ２２１、３３１は、初期状態で拡張フラグ＝「０」に設定してあり、拡張フラグ＝「１」の設定は、制御端末９０からのオペレータ指令に応答して、制御部１５が行う。具体的には、パケット転送装置１０の管理者が、制御端末９０から、拡張装置が接続されたネットワーク・インタフェースの識別子（図１の例では「ｎ」）を指定して、制御部１５に該当する受信パケット処理部と送信パケット処理部への拡張フラグの設定を指令する。制御部１５は、上記指令に応答して、指定された識別子「ｎ」をもつ受信パケット処理部１３−ｎと送信パケット処理部１４−ｎの拡張フラグレジスタに値「１」を書き込む。
各受信パケット処理部１３と送信パケット処理部１４は、上記拡張フラグを参照するによって、ネットワーク・インタフェースでの送受信パケットが拡張装置を相手とするものか否か判定する。
【００２８】
受信パケットプロセッサ２２は、レジスタ２２１が示す拡張フラグが「０」状態の時、受信パケット識別テーブル２４または通常パケット経路テーブル２５に従って内部ヘッダを生成し、バッファメモリ２１から読み出された受信パケットＰＫ１を内部パケットＰＫ２に変換する内部ヘッダ付加機能２２２と、拡張フラグが「１」状態の時、バッファメモリ２１から読み出された受信パケットＰＫ３から拡張Ｌ２ヘッダ８４を除去することによって、受信パケットＰＫ３を内部パケットＰＫ２に変換するＬ２ヘッダ除去機能２２３とを備えている。
【００２９】
図４は、受信パケット識別テーブル２４の１例を示す。
受信パケット識別テーブル２４には、拡張処理すべき受信パケット、すなわち、ＩＰｖ６拡張装置４０に転送すべき受信パケットの識別条件２４１と、この条件に該当した受信パケットの転送先インタフェースの識別子２４２と、送信パケット処理識別子２４３との関係を示す１つ又は複数のテーブルレコード２４０（２４０−１、２４０−２、…）が登録されている。
【００３０】
図１に示したネットワーク構成の場合、パケット転送装置１０には、拡張装置としてＩＰｖ６拡張装置４０のみが接続されているため、受信パケット識別テーブル２４には、拡張処理パケット識別条件２４１でＩＰｖ６パケットの識別条件を示し、転送先インタフェース識別子２４２で送信回線インタフェース１２−ｎを指定し、送信パケット処理識別子２４３で送信パケット処理部１４−ｎが実行すべきパケット処理を指定したテーブルエントリ２４０−１のみが必要となる。
【００３１】
ＩＰｖ６用以外の拡張装置として、例えば、受信回線回線インタフェース１１−ｉと送信回線インタフェース１２−ｉにＰＰＰｏＥ用の拡張装置が接続された場合、受信パケット識別テーブル２４には、テーブルエントリ２４０−２が示すように、拡張処理パケット識別条件２４１でＰＰＰｏＥパケットの識別条件を示し、転送先インタフェース識別子２４２で送信回線インタフェース１２−ｉを指定し、送信パケット処理識別子２４３で送信パケット処理部１４−ｉが実行すべきパケット処理を指定したテーブルエントリが追加される。
【００３２】
パケット転送装置１０には、同一機能をもつ複数の拡張装置、例えば、複数のＩＰｖ６拡張装置が接続されてもよい。この場合、拡張処理パケット識別条件２４１で、Ｉｐｖ６パケットをグループ分けし、転送先インタフェース識別子２４２で、グループ毎に異なったネットワーク・インタフェースを指定すればよい。
【００３３】
図５は、バッファメモリ２１に受信パケットが格納された時、受信パケットプロセッサ２２が実行する受信パケット処理ルーチン２６０のフローチャートを示す。
受信パケットプロセッサ２２は、バッファメモリ２１から受信パケットを読み出し（ステップ２６１）、レジスタ２２１が示す拡張フラグの状態を判定する（２６２）。拡張フラグが「０」の場合、受信パケットは、図２（Ａ）に示したパケットＰＫ１のフォーマットとなっている。この場合、受信パケットプロセッサ２２は、受信パケット識別テーブル２４を検索し（２６３）、受信パケットのヘッダ情報が何れかのテーブルエントリの拡張処理パケット識別条件２４１に該当するか否かを判定する（２６４）。
【００３４】
受信パケット識別テーブル検索の結果、受信パケットが何れかのテーブルエントリの拡張処理パケット識別条件２４１に該当した場合、受信パケットのＩＰヘッダ８１は、受信パケットプロセッサ２２ではルーティングできないＩＰｖ４以外のバージョン（図１の構成では、ＩＰｖ６ヘッダ）となっている。この場合、受信パケットプロセッサ２２は、検索されたテーブルエントリが示す転送先インタフェース識別子２４２および送信パケット処理識別子２４２をそれぞれ送信回線インタフェース識別子８３２、送信パケット処理識別子８３３として含む内部ヘッダ８３を生成する（２６５）。尚、内部ヘッダ８３の受信回線インタフェースＩＤ８３１には、受信パケットプロセッサ２２に予め指定されているネットワーク・インタフェースの内部識別子（上記受信パケットが入力された受信回線インタフェース識別子）の値が設定される。
【００３５】
受信パケットがテーブルエントリのどの拡張処理パケット識別条件２４１にも該当しなかった場合、受信パケットプロセッサ２２は、受信パケットが自分でルーティング可能なＩＰｖ４パケットであると判断し、通常パケット経路テーブル２５から受信パケットの宛先ＩＰアドレスに該当するエントリを検索する（２６６）。通常パケット経路テーブル２５には、宛先ＩＰアドレスと、送信回線インタフェース識別子と、送信パケット処理識別子との関係を示す複数のテーブルエントリが登録されている。
【００３６】
受信パケットプロセッサ２２は、通常パケット経路テーブル２５からの検索エントリが示す送信回線インタフェース識別子および送信パケット処理識別子を送信回線インタフェース識別子８３２、送信パケット処理識別子８３３として含む内部ヘッダ８３を生成する（２６７）。内部ヘッダ８３の受信回線インタフェースＩＤ８３１には、予め指定されているネットワーク・インタフェースの内部識別子の値が設定される。この後、受信パケットプロセッサ２２は、ステップ１６５または２６６で生成した内部ヘッダ８３を受信パケットＰＫ１に付加し（２６８）、内部パケットＰＫ２として内部スイッチインタフェース２３に出力する（２７０）。
【００３７】
一方、ステップ２６２で拡張フラグが「１」の場合、受信パケットは、図２（Ｃ）に示したパケットＰＫ３のフォーマットとなっている。この場合、受信パケットプロセッサ２２は、受信パケットＰＫ３から拡張Ｌ２ヘッダ８４を除去（２６９）することによって、受信パケットを図２（Ｂ）に示した内部パケット形式に変換して、内部スイッチインタフェース２３に出力する（２７０）。
【００３８】
図６は、送信パケット処理部１４−ｉ（ｉ＝１〜ｎ）の詳細を示す。
送信パケット処理部１４−ｉは、内部スイッチ部１６の出力ポートから内部パケットを受信するための内部スイッチインタフェース３１と、内部スイッチインタフェース３１で受信された内部パケットを一時的に格納するためのバッファメモリ３２と、バッファメモリ３２から読み出された内部パケットを図２（Ａ）に示すパケットＰＫ１または図２（Ｃ）に示すパケットＰＫ３に変換するための送信パケットプロセッサ３３とからなる。
【００３９】
送信パケットプロセッサ３３は、拡張フラグを記憶するためのレジスタ３３１と、内部パケットＰＫ２から不要となった内部ヘッダ８３を除去して、パケットＰＫ１に変換する内部ヘッダ除去機能３３２と、送信パケット処理テーブル３４に従って拡張Ｌ２ヘッダ８４を生成し、内部パケットヘッダＰＫ２を拡張Ｌ２ヘッダ付きのパケットＰＫ３に変換するＬ２ヘッダ付加機能３３３と、送信元Ｌ２アドレスレジスタ３３４と、宛先Ｌ２アドレスレジスタ３３５とを備えている。送信元Ｌ２アドレスレジスタ３３４は、送信パケット処理部１４−ｉに割り当てられたＬ２アドレスの値、宛先Ｌ２アドレスレジスタ３３５は、受信パケットの転送先となる拡張装置のＬ２アドレスの値を示す。宛先Ｌ２アドレスレジスタ３３５は、拡張装置のＬ２アドレスを示し、拡張フラグが「１」の場合に有効となる。
【００４０】
図７は、送信パケット処理テーブル３４の1例を示す。
送信パケット処理テーブル３４には、送信パケット処理識別子３４１と処理内容３４２との関係を示す少なくとも１つのテーブルエントリ３４０（３４０−１、３４０−２、…）が登録されている。ここに示した例では、処理内容３４２は、Ｌ２ヘッダ８２の宛先Ｌ２アドレス８２Ｄとして適用すべきアドレス値を示している。但し、送信パケット処理テーブル３４には、エントリ３４０−３のように、処理内容３４２として「アドレス変更なし」を指定するエントリも含まれる。
【００４１】
図８は、バッファメモリ３２に内部パケットが格納された時、送信パケットプロセッサ３３が実行する送信パケット処理ルーチン３６０のフローチャートを示す。
送信パケットプロセッサ３３は、バッファメモリ３２から内部パケットＰＫ２を読み出し（ステップ３６１）、レジスタ３３１に記憶された拡張フラグの状態を判定する（３６２）。
【００４２】
拡張フラグが「０」、すなわち、送信パケットプロセッサ３３が、通常ＩＮＦに接続された送信パケット処理部１４−ｉに所属している場合、送信パケットプロセッサ３３は、内部パケットＰＫ２の内部ヘッダ８３が示す送信パケット処理識別子８３３に基づいて、送信パケット処理テーブル３４を検索する（３６２）。
【００４３】
送信パケット処理テーブル３４から送信パケット処理識別子８３３に該当するエントリが見つかった場合は（３６４）、送信パケットプロセッサ３３は、内部パケットＰＫ２のオリジナルＬ２ヘッダに含まれる宛先Ｌ２アドレス８２Ｄを検索エントリの処理内容３４２に従って変換し、送信元Ｌ２アドレスをレジスタ３３４が示す送信元Ｌ２アドレスに置換する（３６５）。但し、検索エントリの処理内容３４２が、例えば、エントリ３４０−３のように、アドレス変換不要を示していた場合は、上述したＬ２アドレスの変換は行われない。
【００４４】
送信パケットプロセッサ３３は、この後、内部パケットＰＫ２から内部ヘッダ８４を除去し、パケットＰＫ１として送信回線インタフェース１２−ｉに出力する（３６６）。送信パケット処理テーブル３４から送信パケット処理識別子８３３に該当するエントリが見つからなかった場合、送信パケットプロセッサ３３は、オリジナルＬ２ヘッダを変換することなく内部ヘッダ８４を除去し、パケットＰＫ１を送信回線インタフェース１２−ｉに出力する（３６６）。
【００４５】
拡張フラグが「１」の場合、送信パケットプロセッサ３３は、レジスタ３３４および３３５が示すＬ２アドレスをそれぞれ送信元Ｌ２アドレス８４Ｓ、宛先Ｌ２アドレス８４Ｄとして含む拡張Ｌ２ヘッダ８４を生成し（３７０）、内部パケットＰＫ２を拡張Ｌ２ヘッダ付きのパケットＰＫ３に変換して、送信回線インタフェース１２−ｉに出力する（３７１）。この場合、オリジナルＬ２ヘッダ８２と内部ヘッダ８３の状態を維持したまま、受信パケットが拡張装置に転送されることになる。
【００４６】
次に、拡張ＩＮＦに接続されたＩＰｖ６拡張装置４０の構成と動作について説明する。
図９は、ＩＰｖ６拡張装置４０の詳細を示す。
ＩＰｖ６拡張装置４０は、ネットワークを介してパケット転送装置１０と接続するためのネットワーク・インタフェース４１と、ネットワーク・インタフェース４１に接続された受信バッファ４２および送信バッファ４３と、これらのバッファに接続されたＩＰｖ６経路制御部４４とからなる。ＩＰｖ６経路制御部４４は、受信パケット判定テーブル４５とＩＰｖ６経路テーブル４６を備えている。
【００４７】
図１０は、受信パケット判定テーブル４５の１例を示す。
受信パケット判定テーブル４５には、受信回線インタフェース識別子４５１とＬ２アドレス４５２との関係を示す複数のエントリ４５０（４５０−１〜４５０−ｎ）が登録されている。
【００４８】
図１１は、ＩＰｖ６経路テーブル４６の１例を示す。
ＩＰｖ６経路テーブル４６には、受信パケットに含まれる宛先ＩＰｖ６アドレス４６１と、受信パケットを出力すべき転送先送信回線インタフェース識別子４６２と、送信回線インタフェースから送出されるパケットに付すべき宛先Ｌ２アドレスとの関係を示す複数のエントリ４６０−１、４６０−２、・・・が登録されている。
【００４９】
図１２は、ネットワーク・インタフェース４１で受信されたパケットＰＫ３が受信バッファ４２に格納された時、ＩＰｖ６経路制御部４４が実行するＩＰｖ６パケット処理ルーチン５００のフローチャートを示す。
受信バッファ４２には、図２（Ｃ）に示したように、ＩＰｖ６パケットにオリジナルＬ２ヘッダ８２、内部ヘッダ８３、拡張ヘッダ８４を付した形式のパケットＰＫ３が格納される。
【００５０】
ＩＰｖ６経路制御部４２は、受信バッファ４２から受信パケットＰＫ３を読み出し（ステップ５０１）、内部ヘッダ８３から受信回線インタフェース識別子８３１の値ＩＮＦ−ＩＤ（Ｒｘ）を抽出し（５０２）、オリジナルＬ２ヘッダ８２から宛先Ｌ２アドレスの値Ｌ２−ＤＳＴを抽出する（５０３）。この後、受信回線インタフェース識別子の値ＩＮＦ−ＩＤ（Ｒｘ）を検索キーとして、受信パケット判定テーブル４５を検索する（５０４）。これによって、受信回線インタフェース識別子４５１がＩＮＦ−ＩＤ（Ｒｘ）に一致するエントリ４５０−ｋが検索され、該エントリ４５０−ｋから、パケット転送装置１０における上記パケットの受信回線インタフェースがもつＬ２アドレス４５２の値ＩＮＦ−Ｌ２（Ｒｘ）が判明する。
【００５１】
ＩＰｖ６経路制御部４２は、次に、アドレス値ＩＮＦ−Ｌ２（Ｒｘ）とＬ２−ＤＳＴとを比較する（５０５）。アドレス値ＩＮＦ−Ｌ２（Ｒｘ）とＬ２−ＤＳＴとが一致しなかった場合、ＩＰｖ６経路制御部４２は、受信パケットがパケット転送装置１０でルーティングすべきパケットではないと判断し、受信パケットを廃棄する（５０６）。アドレス値ＩＮＦ−Ｌ２（Ｒｘ）とＬ２−ＤＳＴとが一致した場合、ＩＰｖ６経路制御部４２は、以下に述べるＩＰｖ６経路制御のための処理を実行する。
【００５２】
ＩＰｖ６経路制御において、ＩＰｖ６経路制御部４４は、ＩＰｖ６ヘッダ８１から宛先ＩＰｖ６アドレス８１Ｄの値を抽出し（５０８）、これを検索キーとして、ＩＰｖ６経路テーブル４６から宛先ＩＰｖ６アドレス４６１の最長一致検索を実行する（５０９）。上記テーブル検索で見つかったテーブルエントリ４６０−ｋから、受信パケットを出力すべき転送先送信回線インタフェース識別子４６２の値ＩＮＦ−Ｔｘと、宛先Ｌ２アドレス４６３の値Ｌ２−Ｎｅｘｔが判明する。
【００５３】
ＩＰｖ６経路制御部４４は、パケット転送装置１０が上記受信パケットを適切な送信回線インタフェース１２−ｊから送信できるように、内部ヘッダ８３の送信回線インタフェース識別子８３２を上記ＩＮＦ−Ｔｘに書き換え、受信パケット転送先の送信パケット処理部１４−ｊが受信パケットのヘッダ変換を行わないように、内部ヘッダ８３の送信パケット処理識別子８３３を特定値（図７に示した送信パケット処理テーブルの例では「３」）に書き換え（５１０）、パケット転送装置１０が送信回線インタフェース１２−ｊから送信したパケットが次の転送先装置に正しく到達するように、オリジナルＬ２ヘッダ８２の宛先Ｌ２アドレス８１ＤをＬ２−Ｎｅｘｔに書き換える（５１１）。
【００５４】
ＩＰｖ６経路制御部４４は、次に、ＩＮＦ−Ｔｘを検索キーとして、受信パケット判定テーブル４５を検索し（５１２）、オリジナルＬ２ヘッダ８２の送信元Ｌ２アドレス８２Ｓを上記受信パケット判定テーブル４５から検索されたエントリのＬ２アドレス４５２が示すアドレス値に書き換える（５１３）。また、受信パケットがパケット転送装置１０を経由したことを示すため、ＩＰｖ６ヘッダ８１にあるホップリミット８１６の値を１だけ減算する（５１４）。
【００５５】
このようにＩＰｖ６ヘッダ８１、オリジナルＬ２ヘッダ８２、内部ヘッダ８３に変更を加えた受信パケットをパケット転送装置１０に返送するため、ＩＰｖ６経路制御部４４は、拡張Ｌ２ヘッダ８４の宛先Ｌ２アドレス８４Ｄと送信元Ｌ２アドレス８４Ｓを互いに入れ替えて（５１５）、ヘッダ変換後のパケットＰＫ３を送信バッファ４３に出力する（５１６）。上記パケットＰＫ３は、ネットワーク・インタフェース４１を介して、パケット転送装置１０に送信される。
【００５６】
パケット転送装置１０は、ＩＰｖ６拡張装置４０が返送したパケットＰＫ３を受信回線インタフェース１１−ｎで受信し、図５で説明した受信パケット処理ルーチン２６０に従って処理する。この場合、受信回線インタフェース１１−ｎに接続された受信パケット処理部１３−ｎでは、拡張フラグが「１」となっているため、パケットＰＫ３から拡張Ｌ２ヘッダ８４を除去して得られた内部パケットＰＫ２が内部スイッチ部１６に入力される。
【００５７】
上記内部パケットＰＫ２は、内部ヘッダ８３が示す送信回線インタフェース識別子８３２で特定される出力パケット処理部１４−ｊに転送される。出力パケット処理部１４−ｊは、受信した内部パケットＰＫ２から内部ヘッダ８３を除去し、パケットＰＫ１に変換する。上記パケットＰＫ１は、出力回線インタフェース１２−ｊを介して外部ネットワークＮＷ−ｊに送出される。
【００５８】
図１３は、具体的な動作例として、図１に示したＩＰｖ６端末ＴＥ−１がＩＰｖ６端末ＴＥ−２宛に送信したＩＰｖ６パケットのヘッダ変化の過程を示す。
図１３（Ａ）は、ＩＰｖ６端末ＴＥ−１から送信されたパケットＰＫ１の主要部分を示している。ここで、送信元ＩＰアドレス８１Ｓは、ＩＰｖ６端末ＴＥ−１のＩＰｖ６アドレス、宛先ＩＰアドレス８１Ｄは、ＩＰｖ６端末ＴＥ−２のＩＰｖ６アドレスを示す。また、送信元Ｌ２アドレス８２Ｓは、ＩＰｖ６端末ＴＥ−１のＬ２アドレス、宛先Ｌ２アドレス８２Ｓは、パケット転送装置１０の受信回線インタフェース１１−１のＬ２アドレスを示している。
【００５９】
受信回線インタフェース１１−１に接続された受信パケット処理部１３−１は、上記パケットＰＫ１を図５で説明した受信パケット処理ルーチン２６０に従って処理する。受信回線インタフェース１１−１は通常ＩＮＦであり、受信パケットプロセッサ２２の拡張フラグは「０」に設定されている。従って、受信パケットプロセッサ２２は、ステップ２６３を実行し、受信パケット識別テーブル２４からＩＰｖ６パケット用のテーブルエントリ２４０−１の検索に成功する。受信パケットプロセッサ２２は、次に、ステップ４０５を実行し、上記テーブルエントリの記述内容に従って、送信回線インタフェース識別子＝「ｎ」、送信パケット処理識別子＝「１」、受信回線インタフェース識別子＝「１」を含む内部ヘッダ８３を生成し、ステップ２６８で生成した図１３（Ｂ）に示す内部パケットＰＫ２を内部スイッチインタフェース２３に出力する。
【００６０】
図１３（Ｂ）では、簡単化のために、内部ヘッダ８３の受信回線インタフェース識別子８３１を「元」、送信回線インタフェース識別子８３２を「先」、送信パケット処理識別子８３３を「処理」で表示している。上記内部パケットＰＫ２は、内部スイッチ部１６によって、送信回線インタフェース識別子８３２の値「ｎ」で特定される送信パケット処理部１４−ｎに転送される。
【００６１】
送信パケット処理部１４−ｎは、図８で説明した送信パケット処理ルーチン３６０に従って、受信パケットＰＫ２を処理する。送信パケット処理部１４−ｎが接続された送信回線インタフェース１２−ｎは拡張ＩＮＦとなっているため、送信パケットプロセッサ３３の拡張フラグは「１」に設定されている。従って、送信パケットプロセッサ３３は、ステップ３７０で拡張Ｌ２ヘッダ８４を生成し、ステップ３７１で、拡張Ｌ２ヘッダ付きのパケットＰＫ３を送信回線インタフェース１２−ｎに出力する。上記拡張Ｌ２ヘッダは、図１３（Ｃ）に示すように、送信元Ｌ２アドレス８４Ｓとして送信回線インタフェース１２−ｎのＬ２アドレス、宛先Ｌ２アドレスとしてＩＰｖ６拡張装置のネットワーク・インタフェースのＬ２アドレスを含んでいる。これらのＬ２アドレスは、レジスタ３３４、３３５から得られる。
【００６２】
上記パケットＰＫ３は、ＩＰｖ６拡張装置４０のネットワーク・インタフェース４１で受信され、受信バッファ４２に格納され、ＩＰｖ６経路制御部４４によって、図１２で説明したＩＰｖ６パケット処理ルーチン５００に従って処理される。ＩＰｖ６経路制御部４４は、受信パケットＰＫ３の内部ヘッダ８３から、受信回線インタフェース識別子「１」を抽出し（５０２）、オリジナルＬ２ヘッダ８２から宛先Ｌ２アドレス８２Ｄの値「66:77:88:99:AA:BB」を抽出する（５０３）。次に、受信パケット判定テーブル４５を検索した結果、受信回線インタフェース識別子「１」に対応するＬ２アドレスが「66:77:88:99:AA:BB」であることを知る（５０４）。本例の場合、オリジナルＬ２ヘッダ８２の宛先Ｌ２アドレスは、上記受信パケット判定テーブル４５が指定したＬ２アドレスの値と一致しているため、ＩＰｖ６経路制御部４４は、上記パケットがパケット転送装置１０で中継すべき正当なパケットであると判断し、ＩＰｖ６経路処理を実行する。
【００６３】
ＩＰｖ６経路制御部４４は、ステップ５０８で、ＩＰｖ６ヘッダ８１から宛先ＩＰｖ６アドレス８１Ｄの値「3ffe::1」を抽出し、これを検索キーとして、ステップ１１０９でＩＰｖ６経路テーブル４６を検索した結果、図１１に示すテーブルエントリ４６０−５から、転送先送信回線インタフェース識別子４６２の値「２」と、宛先Ｌ２アドレス４６３の値「FE:DC:BA:98:76:54」を得る。ＩＰｖ６経路制御部４４は、上記検索結果と、既知のインタフェース識別子および送信パケット処理識別子の値に従って、内部ヘッダ８３の受信回線インタフェース識別子８３１、送信回線インタフェース識別子８３２および送信パケット処理識別子８３３と、オリジナルＬ２ヘッダ８２の宛先Ｌ２アドレス８２Ｄを書き換え（ステップ５１１、５１２）、受信パケット処理テーブル４５から検索されたＬ２アドレス「CC:DD:EE:FF:00:11」に従って、オリジナルＬ２ヘッダの送信元Ｌ２アドレス８２Ｓを書き換え（ステップ５１２、５１３）、ＩＰｖ６ヘッダのホップリミット８１６を更新（ステップ５１４）した後、拡張Ｌ２ヘッダを書き換える（ステップ５１５）。
【００６４】
上記ＩＰｖ６経路処理の実行によって、受信パケットＰＫ３は、図１３（Ｄ）に示すパケットＰＫ３に変換され、パケット転送装置１０に返送される。
【００６５】
ヘッダ変換されたパケットＰＫ３は、パケット転送装置１０の受信回線インタフェース１１−ｎで受信され、受信パケット処理部１３−ｎの受信パケットプロセッサ２２によって、図５に示した受信パケット処理ルーチン２６０に従って処理される。受信回線インタフェース１１−ｎは拡張ＩＮＦとなっているため、受信パケットプロセッサ２２の拡張フラグは「１」に設定されている。従って、受信パケットプロセッサ２２は、ステップ２６８を実行し、受信パケットＰＫ３から拡張Ｌ２ヘッダ８４を削除し、図１３（Ｅ）に示す内部パケットＰＫ２形式として、内部スイッチインタフェース２３に出力する（ステップ２７０）。
【００６６】
上記内部パケットＰＫ２は、内部スイッチ部１６によって、内部ヘッダ８３の送信回線インタフェース識別子８３２の値「２」と対応する送信パケット処理部１４−２に転送される。送信パケット処理部１４−２で受信された内部パケットＰＫ２は、送信パケットプロセッサ３３が実行する図８の送信パケット処理ルーチン３６０に従って処理される。
【００６７】
送信パケット処理部１４−２は、通常ＩＮＦである送信回線インタフェース１２−２に接続されているため、送信パケットプロセッサ３３の拡張フラグは「０」に設定されている。この場合、送信パケットプロセッサ３３は、ステップ３６３で、内部ヘッダ８３から送信パケット処理識別子「３」を抽出し、これを検索キーとして、送信パケット処理テーブル３４を検索する。図７に示した送信パケット処理テーブル３４によれば、上記検索によって、テーブルエントリ３４０−３が検索される。
【００６８】
送信パケットプロセッサ３３は、検索されたテーブルエントリの処理内容３４２から、今回の受信パケットについては「アドレス変更なし」と判断し、ステップ３６５で何も行うことなく、ステップ３６６で受信パケットＰＫ２から内部ヘッダ８３を除去し、図１３（Ｆ）に示すパケットＰＫ１を送信回線インタフェース１２−２に出力する。パケットＰＫ１は、送信回線インタフェース１２−２によって外部ネットワークＮＷ−２に送出され、宛先ＩＰｖ６アドレスで指定されたＩＰｖ６端末ＴＥ−２に到着する。
【００６９】
以上の実施例から、本発明によれば、ＩＰｖ４パケットのルーティング機能を備えたパケット転送装置１０に、ネットワーク・インタフェースのうちの１つを介してＩＰｖ６拡張装置４０を接続しておき、他のネットワーク・インタフェースで受信したＩＰｖ６パケットを、受信パケット識別テーブル２４に従って、ＩＰｖ６拡張装置４０に転送させることにより、実質的にＩＰｖ６経路制御機能を追加できることがわかる。
【実施例２】
【００７０】
図１４は、拡張装置４０の他の応用例を示す。
本実施例は、複数のパケット転送装置１０−１〜１０−ｍが、１つの拡張装置４０を共有することによって、各パケット転送装置が専用の拡張装置を備える場合に比較して、システムコストの大幅ダウンを可能としたものである。ここに示した例では、ＩＰｖ４パケットのルーティング機能をもつパケット転送装置１０−１〜１０−ｍが、Ｌ２ネットワークＮＷ−Ｓを介して、共用のＩＰｖ６拡張装置４０に接続されている。各パケット転送装置は、受信パケットがＩＰｖ６パケットの場合、上述した実施例１と同様、ＩＰｖ６拡張装置４０によって受信パケットの経路処理を行い、ＩＰｖ６拡張装置４０からヘッダ変換されたパケットを受信して、宛先ＩＰｖ６アドレスに対応する適切なネットワーク・インタフェースに受信パケットを転送する。
【００７１】
図１５は、複数のパケット転送装置で共用されるＩＰｖ６拡張装置４０の１実施例を示す。
共用型のＩＰｖ６拡張装置４０は、パケット送信元のパケット転送装置に応じて処理内容を切替えられるようにするために、ＩＰｖ６経路制御部４４に接続して、切替えテーブル４７と、各パケット転送装置に対応した複数組の受信パケット判定テーブル４５−１〜４５−ｍ、ＩＰｖ６経路テーブル４６−１〜４６−ｍを備えている。
【００７２】
図１６は、切替えテーブル４７の１例を示す。
切替えテーブル４７は、送信元Ｌ２アドレス４７１とテーブル識別子４７２との関係を示す複数のテーブルエントリ４７０−１、４７０−２、…からなる。
【００７３】
ＩＰｖ６拡張装置４０は、パケット転送装置１−ｉ（ｉ＝１〜ｍ）からに図２に示した拡張Ｌ２ヘッダ付きのパケットＰＫ３を受信すると、拡張Ｌ２ヘッダの送信元Ｌ２アドレスを検索キーとして、切替えテーブル４７からテーブル識別子４７２を検索し、検索されたテーブル識別子４７２の値ｋで特定された組の受信パケット判定テーブル４５−ｋとＩＰｖ６経路テーブル４６−ｋを使用して、図１２で説明したＩＰｖ６パケット処理ルーチン５００を実行する。
【００７４】
具体的には、ＩＰｖ６経路制御部４４は、ステップ５０１で受信バッファ４２からパケットを読み出すと、受信パケットの拡張Ｌ２ヘッダ８４から送信元Ｌ２アドレス８４Ｄを抽出し、切替えテーブル４７から、送信元Ｌ２アドレス４７１が上記抽出された送信元Ｌ２アドレス８４Ｄに一致するエントリを検索することによって、パケット送信元のパケット転送装置と対応したテーブル識別子４７２の値ｋを決定する。
ＩＰｖ６経路制御部４４は、ＩＰｖ６パケット処理ルーチン５００におけるテーブル検索ステップ５０４、５０９、５１２において、上記テーブル識別子の値ｋで特定された受信パケット判定テーブル４５−ｋまたはＩＰｖ６経路テーブル４６−ｋを使用する。
【００７５】
このように、受信パケットＰＫ３の送信元アドレスに応じて、ＩＰｖ６経路制御に必要なテーブルを切替えことによって、単一のＩＰｖ６拡張装置４０を複数のパケット転送装置１０で共用することが可能となる。尚、テーブル識別子４７２の値ｋは、実際に受信パケット判定テーブル４５−ｋまたはＩＰｖ６経路テーブル４６−ｋが参照される前に決定できればよいため、上述した送信元Ｌ２アドレス８４Ｄの抽出と切替えテーブル４７の検索は、図１２のステップ５０１〜５０３の間の任意のステップで実行すればよい。
【実施例３】
【００７６】
図１７は、パケット転送装置１０の他の実施例を示す。
本実施例は、１つのパケット転送装置１０に、Ｌ２ネットワークＮＷ−Ｓを介して複数台の拡張装置４０−１〜４０−ｍを接続することによって、パケット転送装置の機能を順次に拡張できるようにしたものである。本実施例を実現するためには、パケット転送装置１０の拡張ＩＮＦに接続された送信パケット処理部に、送信パケットの種類に応じて宛先となる拡張装置の切替え機能が必要となる。
【００７７】
図１８は、本実施例に適したパケット転送装置１０の送信パケット処理部１４−ｉの構成を示す。本実施例では、拡張ヘッダ付きのパケットＰＫ３の宛先を切替えるため、送信パケットプロセッサ３３に、パケット宛先切替えテーブル４５を用意する。
【００７８】
パケット宛先切替えテーブル４５には、例えば、図１９に示すように、送信パケット処理識別子３５１と宛先Ｌ２アドレス３５２との関係を示す複数のテーブルエントリを登録する。登録されるテーブルエントリの数は、パケット転送装置１０が使用する拡張装置４０の台数によって決まる。
【００７９】
図２０は、図１８に示した送信パケットプロセッサ３３が実行する送信パケット処理ルーチン３６０のフローチャートを示す。
ステップ３６１〜３６６は、図８で説明した実施例１と同一である。
【００８０】
Ｌ２ネットワークＮＷ−Ｓに接続された送信回線インタフェース１２−ｎに付随する出力パケット処理部１４−ｎの送信パケットプロセッサ３３では、拡張フラグが「１」に設定されている。本実施例の場合、送信パケットプロセッサ３３は、拡張フラグが「１」となっていることを確認すると、バッファメモリ３２から読み出された内部パケットの内部ヘッダ８３から送信パケット処理識別子８３３を抽出し（ステップ３６８）、これを検索キーとして、パケット宛先切替えテーブル３５から、送信パケット処理識別子８３３と対応する宛先Ｌ２アドレス３５２の値を検索する（３６９）。
【００８１】
実施例１では、レジスタ３３４と３３５が示す送信元Ｌ２アドレスと宛先Ｌ２アドレスを使用して拡張Ｌ２ヘッダが生成されたが、本実施例では、送信パケットプロセッサ３３は、レジスタ３３４が示す送信元Ｌ２アドレスと、上記パケット宛先切替えテーブル３５から検索された宛先Ｌ２アドレス３５２とを適用して拡張Ｌ２ヘッダを生成し（３７０）、拡張Ｌ２ヘッダ付きのパケットＰＫ３を送信回線インタフェース１２−ｎに出力する（３７１）。
【００８２】
本実施例のように、単一のパケット転送装置１０に複数の拡張装置を接続する場合、受信パケット処理部１３の受信パケット識別テーブル２４には、拡張装置の台数に合わせた複数のテーブルエントリを登録しておき、拡張処理パケット識別条件２４１によって、各拡張装置に転送すべき受信パケットの種類を識別するようにすればよい。
【実施例４】
【００８３】
実施例１〜実施例３では、各受信パケット処理部１３（受信パケットプロセッサ２２）と各送信パケット処理部１４（送信パケットプロセッサ３３）に拡張フラグレジスタ２２１と３３１を配置した構成となっているが、これらの拡張フラグレジスタの内容を制御部１５にテーブル形式で保持することによって、通常ＩＮＦと拡張ＩＮＦとの切替えを容易にすることができる。
【００８４】
図２１は、制御部１５が備える拡張フラグテーブル１５０の１例を示す。
拡張フラグテーブル１５０は、ネットワーク・インタフェース（受信回線インタフェース１１−ｉと送信回線インタフェース１２−ｉの組）の個数に等しい複数のテーブルエントリからなり、各エントリは、インタフェース識別子１５１と拡張フラグ１５２との関係を示している。インタフェース識別子ｋを検索キーとして、拡張フラグテーブル１５０を検索することにより、受信パケット処理部１３−ｋと送信パケット処理部１４−ｋの拡張フラグの状態を判断できる。また、制御端末９０を操作するオペレータが、制御部１５の拡張フラグテーブル１５０の内容を参照し、特定のインタフェース識別子ｋと対応する拡張フラグ１５２の状態を変更することによって、各送受信パケット処理部１３−ｋ、１４−ｋの機能を変更することができる。
【００８５】
本実施例のように、制御部１５に拡張フラグテーブル１５０を備えた場合、各送受信パケット処理部１３、１４から拡張フラグレジスタ２２１、３３１を排除し、受信パケットプロセッサ２２と送信パケットプロセッサ３３が、上記拡張フラグテーブル１５０を参照して、それぞれの拡張フラグの状態を判定するようにしてもよい。
【図面の簡単な説明】
【００８６】
【図１】本発明によるパケット転送装置１０の１実施例を示す図。
【図２】図（Ａ）は、図１におけるパケット転送装置１０と外部ネットワークＮＷ（ＮＷ−１、ＮＷ−２）との間で送受信されるパケットＰＫ１のフォーマット、図（Ｂ）は、パケット転送装置１０の内部パケットＰＫ２のフォーマット、図（Ｃ）は、パケット転送装置１０と拡張装置４０との間で送受信されるパケットＰＫ３のフォーマットを示す。
【図３】パケット転送装置１０の受信パケット処理部１３−ｉの詳細図。
【図４】受信パケット処理部１３−ｉが備える受信パケット識別テーブル２４の１例を示す図。
【図５】受信パケット処理部１３−ｉの受信パケットプロセッサ２２が実行する受信パケット処理ルーチン２６０のフローチャート。
【図６】送信パケット処理部１４−ｉの詳細図。
【図７】送信パケット処理部１４−ｉが備える送信パケット処理テーブル３４の１例を示す図。
【図８】送信パケット処理部１４−ｉの送信パケットプロセッサ３３が実行する送信パケット処理ルーチン３６０のフローチャート。
【図９】ＩＰｖ６拡張装置４０の１実施例を示す図。
【図１０】ＩＰｖ６拡張装置４０が備える受信パケット判定テーブル４５の１例を示す図。
【図１１】ＩＰｖ６拡張装置４０が備えるＩＰｖ６経路テーブル４６の１例を示す図。
【図１２】ＩＰｖ６拡張装置４０のＩＰｖ６経路制御部４４が実行するＩＰｖ６パケット処理ルーチン５００のフローチャート。
【図１３】図１のシステム構成におけるＩＰｖ６パケットのヘッダ変化の過程を示す図。
【図１４】ＩＰｖ６拡張装置４０の他の応用例を示す図。
【図１５】図１４に示したＩＰｖ６拡張装置４０の１実施例を示す図。
【図１６】図１４のＩＰｖ６拡張装置４０が備える切替えテーブル４７の１例を示す図。
【図１７】本発明によるパケット転送装置１０の他の実施例を示す図。
【図１８】図１７に示したパケット転送装置１０の送信パケット処理部１４−ｉの構成を示す図。
【図１９】図１７の送信パケット処理部１４−ｉが備えるパケット宛先切替えテーブル３５の１例を示す図。
【図２０】図１８に示した送信パケットプロセッサ３３が実行する送信パケット処理ルーチン３６０のフローチャート。
【図２１】本発明のパケット転送装置の更に他の実施例において、制御部１５が備える拡張フラグテーブル１５０の１例を示す図。
【符号の説明】
【００８７】
ＴＥ：ＩＰｖ６端末、ＮＷ：外部ネットワーク、４０：ＩＰｖ６拡張装置、
１０：パケット転送装置、１１：受信回線インタフェース、１２：送信回線インタフェース、１３：受信パケット処理部、１４：送信パケット処理部、１５：制御部、１６：内部スイッチ部、
２１：バッファメモリ、２２：受信パケットプロセッサ、２３：内部スイッチインタフェース、２４：受信パケット識別テーブル、２５：通常パケット経路テーブル、２２１：拡張フラグレジスタ、２２２：内部ヘッダ付加部、２２３：Ｌ２ヘッダ除去部、
３１：内部スイッチインタフェース、３２：バッファメモリ、３３：送信パケットプロセサア、３４：送信パケット処理テーブル、３５：パケット宛先切替えテーブル、
３３１：拡張フラグレジスタ、３３２：内部ヘッダ除去部、３３３：Ｌ２ヘッダ付加部、３３４：送信元Ｌ２アドレスレジスタ、３３５：宛先Ｌ２アドレスレジスタ、
４１：ネットワーク・インタフェース、４２：受信バッファ、４３：送信バッファ、４４：ＩＰｖ６経路制御部、４５：受信パケット判定テーブル、４６：ＩＰｖ６経路テーブル、４７：切替えテーブル、１５０：拡張フラグテーブル。
【図１】
2006157537.tif 000003
【図２】
2006157537.tif 000004
【図３】
2006157537.tif 000005
【図４】
2006157537.tif 000006
【図５】
2006157537.tif 000007
【図６】
2006157537.tif 000008
【図７】
2006157537.tif 000009
【図８】
2006157537.tif 000010
【図９】
2006157537.tif 000011
【図１０】
2006157537.tif 000012
【図１１】
2006157537.tif 000013
【図１２】
2006157537.tif 000014
【図１３】
2006157537.tif 000015
【図１４】
2006157537.tif 000016
【図１５】
2006157537.tif 000017
【図１６】
2006157537.tif 000018
【図１７】
2006157537.tif 000019
【図１８】
2006157537.tif 000020
【図１９】
2006157537.tif 000021
【図２０】
2006157537.tif 000022
【図２１】
2006157537.tif 000023