(57)【要約】【課題】ＭＡＣ−ｉｎ−ＭＡＣフレームのように拡張されたイーサネットフレームの転送に適したパケット転送装置（Ｌ２ＳＷ）を提供する。【解決手段】受信フレームのペイロード長が、受信フレームの転送先となるイーサネット網で通信可能な標準的ＭＴＵ値（１５００バイト）を超える場合に、受信フレームをＭＴＵ以下のサイズをもつ複数のデータブロックに分割し、複数のフラグメントフレームに変換するフレーム分割機能と、イーサネット網からフラグメントフレームを受信した場合、一連のフラグメントフレームから元の拡張フレームを復元するフレーム復元機能とを備えたパケット転送装置。【選択図】図６
2009065429.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがポート識別子によって識別される複数対の入出力ポートを有し、各入力ポートからの受信フレームを宛先ＭＡＣアドレスによって特定された何れかの出力ポートに転送するパケット転送装置であって、
宛先アドレスと対応して、受信フレームの転送先ポートを示すポート識別子を記憶したスイッチング情報管理テーブルと、
上記各ポート識別子と対応して送信ＭＴＵを記憶したポート管理テーブルと、
上記スイッチング情報管理テーブルに従って、受信フレームの転送先ポートの識別子を特定するためのルーティング手段と、
上記受信フレームのペイロード長が、上記ポート管理テーブルが示す上記転送先ポート識別子と対応する送信ＭＴＵを超えている場合、該受信フレームを上記送信ＭＴＵよりも短い複数のデータブロックに分割し、それぞれのペイロードに上記データブロックのうちの１つを含む複数のフラグメントフレームを生成するフラグメントフレーム生成手段と、
上記何れかの入力ポートからフラグメントフレームを受信した場合、受信したフラグメントフレームを一時的に保持しておき、複数のフラグメントフレームから元のフレームを復元するフレーム復元手段とを備え、
上記特定された転送先ポート識別子をもつ出力ポートに対して、上記受信フレーム、フラグメントフレーム、または複数のフラグメントフレームから復元されたフレームの何れかが選択的に転送されるようにしたことを特徴とするパケット転送装置。
【請求項２】
請求項１に記載のパケット転送装置において、
前記受信フレームが、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを含むイーサネットヘッダを有し、
前記フラグメントフレーム生成手段で生成される各フラグメントフレームが、前記受信フレームのイーサネットヘッダから抽出された宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを含むフレームヘッダと、フラグメントタグと、ペイロードとからなり、
上記ペイロードが、前記受信フレームから分割された何れかのデータブロックを含み、
上記フラグメントタグが、元のイーサネットフレームを一意に識別するためのフラグメントＩＤと、各フラグメントフレームの生成順序を示すフラグメントインデックスと、同一のイーサネットフレームから生成された一連のフラグメントフレームにおける先頭フレーム、途中フレーム、最終フレームの区別を示すフラグメントステータスと、上記ペイロードに含まれるデータブロックの長さを示すフラグメントサイズとを含むことを特徴とするパケット転送装置。
【請求項３】
請求項２に記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、前記受信フレームの宛先ＭＡＣアドレスと送信元ＭＡＣアドレス以外の部分を前記複数のデータブロックに分轄して、前記複数のフラグメントフレームを生成することを特徴とするパケット転送装置。
【請求項４】
請求項２に記載のパケット転送装置において、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、該フラグメントフレームと同一のフラグメントＩＤをもつ複数のフラグメントフレームの各ペイロードから抽出されたデータブロックを前記フラグメントインデックスの順に結合することによって、元のフレームを復元することを特徴とするパケット転送装置。
【請求項５】
請求項２に記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、前記受信フレームのうち、前記宛先ＭＡＣアドレスと送信元ＭＡＣアドレス以外の部分を複数のデータブロックに分轄して、前記複数のフラグメントフレームを生成し、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、該フラグメントフレームと同一のフラグメントＩＤをもつ複数のフラグメントフレームの各ペイロードから抽出されたデータブロックを前記フラグメントインデックスの順に結合し、その先頭部に位置したフレームヘッダに、上記何れかのフラグメントフレームのイーサネットフレームヘッダから抽出された宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを付加することによって、元のフレームを復元することを特徴とするパケット転送装置。
【請求項６】
請求項１に記載のパケット転送装置において、
前記受信イーサネットフレームと前記各フラグメントフレームが、それぞれのフレームヘッダに、前記宛先ＭＡＣアドレスおよび送信元ＭＡＣアドレスと共に、プロトコルタイプ識別子を含み、上記プロトコルタイプ識別子によって、前記受信フレームがフラグメントフレームか否かが判断されることを特徴とするパケット転送装置。
【請求項７】
請求項２〜請求項６の何れかに記載のパケット転送装置において、
前記フラグメントＩＤと対応付けて、受信した各フラグメントフレームのフラグメントタグが示すフラグメントステータスおよびフラグメントインデックスの値と、上記フラグメントフレームのペイロードから抽出されたデータブロックを管理するための復元パラメータ管理テーブルを備え、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、上記復元パラメータ管理テーブルによって、フレーム復元に必要な全てのフラグメントフレームが受信済みであることを確認して、同一のフラグメントＩＤをもつ前記複数のフラグメントフレームから、元のフレームを復元することを特徴とするパケット転送装置。
【請求項８】
請求項２〜請求項７の何れかに記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、１つのイーサネットフレームが別のイーサネットヘッダでカプセル化された拡張フレーム構造の受信フレームを前記複数のフラグメントフレームに変換することを特徴とするパケット転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット転送装置に関し、更に詳しくは、ＭＡＣ−ｉｎ−ＭＡＣフレームのように拡張されたイーサネット（登録商標）フレームが転送される広域イーサネット網に適用されるパケット転送装置に関するものである。
【背景技術】
【０００２】
インターネット技術を利用した企業内ネットワークの構築の普及に伴って、拠点内ネットワーク（ＬＡＮ：Local Area Network）と他の拠点内ネットワークとを接続するＷＡＮ（Wide Area Network）が普及した。当初のＷＡＮでは、低速の電話回線や専用線を用いていたため、高コストのサービス提供となっていたが、高速のＸＤＳＬや光回線接続の普及によって、低コストのサービス提供が可能となっている。
【０００３】
当初のＷＡＮでは、通信プロトコルとして、専らＩＰ（Internet Protocol）が使用されていたため、ユーザがＩＰ以外の通信プロトコルを使用する場合、ユーザ側で、プロトコル変換等の処理を行う必要があった。その後、各ユーザが柔軟にネットワークを構成できるＶＬＡＮ技術の普及に伴って、ＷＡＮ上では、イーサネット（Ethernet）フレーム自体を直接的に転送する必要性が高まってきた。
【０００４】
このような状況から、イーサネットフレームをそのままの形で転送できる広域イーサネットサービス網が登場してきた。例えば、ＩＥＥＥ  ８０２．１ａｄ（非特許文献１）で規定された拡張ＶＬＡＮでは、各ユーザが構築するＶＬＡＮ網に対して、ユーザ毎に個別のＶＬＡＮ−ＩＤを割当てることによって、通信業者の提供する一つネットワーク上に、複数ユーザのＶＬＡＮ網を論理的に束ねることが可能となっている。しかしながら、拡張ＶＬＡＮ方式では、１つのネットワークに４０９６を超えるユーザを収容できない。また、ユーザ数が増加し、ＭＡＣアドレス数が、広域イーサネット網を形成するレイヤ２スイッチ（Ｌ２ＳＷ）で処理可能な限界値を超えてしまうと、Ｌ２ＳＷでのフレーム転送が不可能になるという問題がある。
【０００５】
これらの問題を解決する１つの技術として、ＩＥＥＥ  ８０２．１ａｈ（非特許文献２）で提案されたＭＡＣ−ｉｎ−ＭＡＣ方式がある。ＭＡＣ−ｉｎ−ＭＡＣ方式は、拡張ＶＬＡＮフレームをイーサネットヘッダでカプセル化し、ＭＡＣ−ｉｎ−ＭＡＣフレーム形式に変換することにより、使用可能なＶＬＡＮ−ＩＤの個数の増加できる。また、ユーザが個別に使用する複数のＭＡＣアドレスをＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダで１つのＭＡＣアドレスに集約することによって、Ｌ２ＳＷでのフレーム転送が可能となる。
【０００６】
【非特許文献１】次世代広域イーサネット標準、ＩＥＥＥ  ８０２．１ａｈの概要（ＮＴＴ技術ジャーナル２００６．１）
【非特許文献２】ＩＥＥＥ  ８０２．１ａｈプロバイダ基幹ブリッジの概要（ＮＴＴ技術ジャーナル２００６．４）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ＭＡＣ−ｉｎ−ＭＡＣフレームのような拡張フレームは、ヘッダ部が、標準的なイーサネットフレームと互換性をもっている。しかしながら、ＭＡＣ−ｉｎ−ＭＡＣフレームの場合、ヘッダ部とペイロード部との間にＶＬＡＮ  ＩＤを拡張するためのフィールドが追加されており、そのペイロード部には、拡張ＶＬＡＮフレーム全体（ヘッダ部からフレーム最後尾のＦＣＳまで）が収容されるため、ＭＡＣ−ｉｎ−ＭＡＣフレームのペイロード長は、標準的なイーサネットフレームのＭＴＵ（Maximum Transmission Unit）サイズ（１５００バイト）を超る可能性がある。この場合、ＭＡＣ−ｉｎ−ＭＡＣフレームは、標準的なイーサネット網を通過できなくなる。
【０００８】
一方、標準的なイーサネットフレームよりも長いフレーム長を規定して、最大ペイロード長を拡大したジャンボフレーム網が知られているが、ジャンボフレームには、標準的な規格がなく、扱えるフレーム長がハードウェアベンダによって異なっている。従って、広域ネットワークを規格の異なる複数ベンダのノード装置で構成した場合、結果的に、全通信経路中で最小サイズのジャンボフレームで通信する必要があり、ジャンボフレームの利点を最大限に利用することができない。また、経路上にジャンボフレームに非対応のネットワーク区間が存在した場合、その区間ではジャンボフレームが転送されないという問題がある。
【０００９】
本発明の目的は、ＭＡＣ−ｉｎ−ＭＡＣフレームのように拡張されたイーサネットフレーム（拡張フレーム）の転送に適したパケット転送装置（Ｌ２ＳＷ）を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明は、ＭＡＣ−ｉｎ−ＭＡＣフレームのような拡張フレームを送受信するパケット転送装置（Ｌ２ＳＷ）において、受信フレームのペイロード長が、受信フレームの転送先となるイーサネット網で通信可能な標準的ＭＴＵ値（１５００バイト）を超える場合に、受信フレームをＭＴＵ以下のサイズをもつ複数のデータブロックに分割し、複数のフラグメントフレームに変換するフレーム分割機能と、イーサネット網からフラグメントフレームを受信した場合、一連のフラグメントフレームから元のフレームを復元するフレーム復元機能とを備えたことを特徴とする。ここで、受信フレームのペイロード長は、受信フレーム（拡張フレーム）のうち、フィールド長が標準的なイーサネットヘッダと共通しているフレームヘッダより後の部分を指している。
【００１１】
更に詳述すると、本発明は、それぞれがポート識別子によって識別される複数対の入出力ポートを有し、各入力ポートからの受信フレームを宛先ＭＡＣアドレスによって特定された何れかの出力ポートに転送するパケット転送装置であって、
宛先アドレスと対応して、受信フレームの転送先ポートを示すポート識別子を記憶したスイッチング情報管理テーブルと、
上記各ポート識別子と対応して送信ＭＴＵを記憶したポート管理テーブルと、
上記スイッチング情報管理テーブルに従って、受信フレームの転送先ポートの識別子を特定するためのルーティング手段と、
上記受信フレームのペイロード長が、上記ポート管理テーブルが示す上記転送先ポート識別子と対応する送信ＭＴＵを超えている場合、該受信フレームを上記送信ＭＴＵよりも短い複数のデータブロックに分割し、それぞれのペイロードに上記データブロックのうちの１つを含む複数のフラグメントフレームを生成するフラグメントフレーム生成手段と、
上記何れかの入力ポートからフラグメントフレームを受信した場合、受信したフラグメントフレームを一時的に保持しておき、複数のフラグメントフレームから元のフレームを復元するフレーム復元手段とを備え、
上記特定された転送先ポート識別子をもつ出力ポートに対して、上記受信フレーム、フラグメントフレーム、または複数のフラグメントフレームから復元されたフレームの何れかが選択的に転送されるようにしたことを特徴とするパケット転送装置。
【発明の効果】
【００１２】
本発明のパケット転送装置は、受信フレーム分轄／復元機能を備えたことによって、受信フレームが、ＭＡＣ−ｉｎ−ＭＡＣフレームのように標準的なイーサネットフレームを拡張した形式のフレームであれば（それがＭＡＣ−ｉｎ−ＭＡＣフレーム以外のフレームであっても）、ＭＴＵに制約がある標準的なイーサネット網への転送が可能となる。
【００１３】
また、本発明のパケット転送装置をフレーム形式またはＭＴＵが異なる異種ネットワーク間の接続ノードとして適用することにより、送信側のユーザがデータサイズを調整することなく、効率的なフレーム転送が可能となる。また、ＭＴＵの異なる複数種類の中継網が混在する広域ネットワークにおいて、送信側でデータサイズの調整しなくても、ＭＴＵの長いフレームを転送することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施例について、図面を参照して詳細に説明する。
図１は、本発明のパケット転送装置（レイヤ２スイッチ：Ｌ２ＳＷ）が適用されるネットワーク構成の１例を示す。
【００１５】
２０は、広域Ｅｔｈｅｒｎｅｔ網であり、標準フレーム対応の中継網２４と、ジャンボフレーム対応の中継網２５と、複数のレイヤ２ゲートウエイ：Ｌ２ＧＷ２１（２１−１〜２１−５）と、複数のレイヤ２スイッチ：Ｌ２ＳＷ２２（２２−１、２２−２）とからなっている。１０（１０−１〜１０−５）はＶＬＡＮ網であり、それぞれ図面では省略された複数のユーザ端末またはサーバを収容している。
【００１６】
各ＶＬＡＮ網１０は、少なくとも１つのエッジノード１１（１１−１Ａ〜１１−５Ｂ）を介して、広域Ｅｔｈｅｒｎｅｔ網２０の接続点となる何れかのＬ２ＧＷ２１に接続されている。図示した例では、各ＶＬＡＮ網１０は、２つのエッジノードを介してＬ２ＧＷ２１に接続されており、各Ｌ２ＧＷ２１は、Ｌ２ＳＷ２２を経由して、標準フレーム対応の中継網２４、またはジャンボフレーム対応の中継網２５に接続されている。
【００１７】
図２の（Ａ）は、図１のネットワークでＬ２ＳＷ２２−１、２２−２を経由したフレームの転送動作を説明するために用意された接続モデルの１例を示している。ここでは、標準フレーム対応の中継網２４を経由するＶＬＡＮ網０Ａ：１０−１とＶＬＡＮ網１Ａ：１０−３との間の通信について説明するが、標準フレーム対応の中継網２４を経由する他のＶＬＡＮ網間の通信、例えば、ＶＬＡＮ網０Ｂ：１０−２とＶＬＡＮ網１Ｂ：１０−４と間の通信においても、同様の動作が行われる。
【００１８】
例えば、ＶＬＡＮ網０Ａ：１０−１に接続されたユーザ端末Ａが、ＶＬＡＮ網１Ａ：１０−３に接続されたユーザ端末Ｂ宛にパケットを送信した場合を想定する。ユーザ端末Ａが送信したパケットは、ＶＬＡＮフレーム形式で、ＶＬＡＮ網０Ａのエッジノード１１−１Ａに転送される。エッジノード１１−１Ａは、Ｌ２ＧＷ２１−１のポートＡ００に接続されている。
【００１９】
エッジノード１１−１Ａは、ユーザ端末ＡからのＶＬＡＮフレームを受信すると、図２の（Ｂ）に示すように、受信したＶＬＡＮフレームをＶＬＡＮ網１Ａ：１０−３宛の拡張ＬＡＮフレーム３０に変換して、Ｌ２ＧＷ２１−１に転送する。Ｌ２ＧＷ２１−１は、上記拡張ＶＬＡＮフレームをポートＡ００で受信すると、受信フレームをＭＡＣ−ｉｎ−ＭＡＣフレーム３１のペイロードに収容して、ポートＡ１０からＬ２ＳＷ２２−１に送信する。
【００２０】
図示したネットワーク構成では、Ｌ２ＳＷ２２−１は、標準フレーム対応の中継網２４と、Ｌ２ＳＷ２２−２と、Ｌ２ＧＷ２１−３を介して、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１の宛先ＶＬＡＮ網１Ａ：１０−３に接続されている。ここでは、標準フレーム対応の中継網２４は、ＭＴＵが１５００バイトであり、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のペイロード長が中継網２４のＭＴＵを越えていたと仮定する。
【００２１】
Ｌ２ＳＷ２２−１は、受信したＭＡＣ−ｉｎ−ＭＡＣフレーム３１が、そのままでは中継網２４を通過できないと判断すると、受信フレームを中継網２４で転送可能なサイズの複数のフラグメントフレーム３２（ここでは、３２−１と３２−２）に変換する。これらのフラグメントフレーム３２は、ポートＡ１００から標準フレーム対応の中継網２４に転送される。
【００２２】
広域Ｅｔｈｅｒｎｅｔ網２０内では、各ノードは、受信レームをＶＬＡＮ−ＩＤに従って転送する。Ｌ２ＳＷ２２−１から送信されたフラグメントフレーム３２は、中継網２４によって、Ｌ２ＳＷ２２−２のポートＢ１００に転送される。
【００２３】
Ｌ２ＳＷ２２−２は、最初のフラグメントフレーム３２−１を受信すると、受信フレームを一時的に蓄積しておき、次のフラグメントフレーム３２−２が受信されるのを待つ。  Ｌ２ＳＷ２２−２は、Ｌ２ＳＷ２２−１で生成した一連のフラグメントフレームが全て揃った時点で、元のＭＡＣ−ｉｎ−ＭＡＣフレーム３１を復元する。復元されたＭＡＣ−ｉｎ−ＭＡＣフレーム３１は、ポートＢ０００からＬ２ＧＷ２１−３に転送される。
【００２４】
Ｌ２ＳＷ２１−３は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１を受信すると、そのペイロードから拡張ＶＬＡＮフレーム３０を抽出し、これを宛先ＶＬＡＮ網１Ａ：１０−３のエッジノード１１−３Ａと接続されているポートＢ００から送信する。拡張ＶＬＡＮフレーム３０は、エッジノード１１−３ＡによってＶＬＡＮ網１Ａ：１０−３に送出され、宛先のユーザ端末Ｂに転送される。
【００２５】
図３の（Ａ）は、拡張ＶＬＡＮフレーム３０のフォーマットを示す。
拡張ＶＬＡＮフレーム３０は、宛先ＭＡＣアドレス・フィールド３０１と、送信元ＭＡＣアドレス・フィールド３０２と、Ｓ−ＴＰＩＤタグ・フィールド３０３と、Ｓ−ＶＩＤタグ・フィールド３０４と、Ｃ−ＴＰＩＤタグ・フィールド３０５と、Ｃ−ＶＩＤタグ・フィールド３０６と、Ｔｙｐｅ／長さ・フィールド３０７と、ペイロード３０８と、ＦＣＳフィールド３０９とからなり、最大フレーム長は１５２６バイトとなっている。
【００２６】
図３の（Ｂ）は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のフォーマットを示す。
ＭＡＣ−ｉｎ−ＭＡＣフレーム３１は、宛先ＭＡＣアドレス・フィールド３１０と、送信元ＭＡＣアドレス・フィールド３１１と、Ｂ−ＴＰＩＤタグ・フィールド３１２と、Ｂ−ＶＩＤタグ・フィールド３１３と、Ｉ−ＴＰＩＤタグ・フィールド３１４と、Ｉ−ＳＩＤタグ・フィールド３４５と、ペイロード３１６と、ＦＣＳフィールド３１７とからなり、最大フレーム長は１５５２バイトとなっている。
【００２７】
ＭＡＣ−ｉｎ−ＭＡＣフレームのペイロード３１６には、拡張ＶＬＡＮフレーム３０の全体が格納される。ＭＡＣ−ｉｎ−ＭＡＣフレームの最大ペイロード長は、１５２６バイトとなっている。従って、拡張ＶＬＡＮフレーム３０のペイロード長が最大値に近ければ、ＭＡＣ−ｉｎ−ＭＡＣフレームのペイロード３１６が標準フレーム対応の中継網２４のＭＴＵ（１５００バイト）を超え、中継網２４で転送できなくなる可能性がある。
【００２８】
図３の（Ｃ）は、フラグメントフレーム３２のフォーマットを示す。
フラグメントフレーム３２は、フラグメントヘッダ３２０と、フラグメントタグ３３０と、フラグメントペイロード３４０と、ＦＣＳフィールド３４１とからなっている。
【００２９】
フラグメントヘッダ３２０は、宛先ＭＡＣアドレス・フィールド３２１と、送信元ＭＡＣアドレス・フィールド３２２と、ＴＰＩＤタグ・フィールド３２３と、ＶＩＤタグ・フィールド３２４と、Ｔｙｐｅ／長さ・フィールド３２５とからなり、ＭＡＣ−ｉｎ−ＭＡＣフレームのヘッダと類似したヘッダ構造となっている。
【００３０】
フラグメントタグ３３０は、フラグメントフレームをユニークに識別するためのフラグメントＩＤ・フィールド３３１と、フラグメントフレームの順序を示すフラグメントインデックス・フィールド３３２と、そのフラグメントフレームが元のフレームの先頭部分、途中の部分、最終部分のうちのどの部分を含むか示すフラグメントステータス・フィールド３３３と、後続するフラグメントペイロード３４０の長さを示すフラグメントサイズ・フィールド３３４とからなっている。
【００３１】
フラグメントフレームヘッダ３２０の内容は、１つのＭＡＣ−ｉｎ−ＭＡＣフレームから生成された全てのフラグメントフレームに共通している。本発明では、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１を複数のブロックに分割し、複数フラグメントフレーム３２のペイロード部３４０に分散することによって、標準フレーム対応の中継網２４でのＭＡＣ−ｉｎ−ＭＡＣフレームの転送を可能にする。
【００３２】
尚、本実施例では、Ｌ２ＳＷ２２が、広域イーサネット網内で、ＶＬＡＮタグ付きのＭＡＣフレームの送受信にのみ対応可能な中継網にも接続されることを想定している。この場合、フラグメントフレームは、ＶＬＡＮタグ付きＭＡＣフレームと同一形式、同一フレーム長に収める必要があり、ＭＡＣヘッダ内にフラグメントフレームに固有の情報を載せることができなくなる。
【００３３】
図示したフラグメントフレーム３２のフォーマットでは、フラグメントタグ・フィールド３３０に４バイトが費やされているために、標準フレーム対応の中継網２４で転送可能なペイロード長（１５００バイト）のうち、４バイトをフラグメントタグ３３０として使用して、実際にＭＴＵとして使用できる最大ペイロード長（フラグメントペイロード３４０の長さ）を１４９６バイト、最小ペイロード長を４２バイトにしている。但し、本発明は、フラグメントフレーム３２を図示したのフォーマットに限定するものではなく、ＭＴＵが１５００バイトを超えるフラグメントフレームを採用することも可能である。
【００３４】
図４は、エッジノード１１−１Ａで生成される拡張ＶＬＡＮフレーム３０と、Ｌ２ＧＷ２１−２で生成されるＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＳＷ２２−１で生成されるフラグメントフレーム３２−１、３２−２の関係を示す。
【００３５】
エッジノード１１−１Ａで生成される拡張ＶＬＡＮフレーム３０は、宛先ＭＡＣアドレス・フィールド３０１にユーザ端末ＢのＭＡＣアドレス、送信元ＭＡＣアドレス・フィールド３０２にユーザ端末ＡのＭＡＣアドレスを含む。
Ｓ−ＴＰＩＤタグ・フィールド３０３と、Ｓ−ＶＩＤタグ・フィールド３０４には、送信元ＶＬＡＮ網０Ａ：１０−１を提供している通信業者が指定したタグ識別番号の値「０ｘ９５００」と、ＶＬＡＮ  ＩＤの値「０」が設定される。
【００３６】
Ｃ−ＴＰＩＤタグ・フィールド３０５と、Ｃ−ＶＩＤタグ・フィールド３０６には、ユーザが使用するタグ識別番号の値「０ｘ８１００」と、ＶＬＡＮ  ＩＤの値「Ｘ」が設定され、Ｔｙｐｅ／長さ・フィールド３０７には、ペイロード３０８に収容されるパケットのプロトコルタイプとペイロード長の値「０ｘ０８００」が設定される。
ペイロード３０８には、端末間で実際に送受信されるパケット（またはデータ）が収容され、ＦＣＳフィールド３０９には、先頭フィールド３０１からペイロード３０８までのメッセージ内容に基いて算出されたチェックサム（ＣＲＣ）の値が設定される。
【００３７】
Ｌ２ＧＷ２１−１は、上記拡張ＶＬＡＮフレーム３０を受信すると、上記拡張ＶＬＡＮフレーム３０をペイロード３１６に収容したＭＡＣ−ｉｎ−ＭＡＣフレーム３１を生成する。
ＭＡＣ−ｉｎ−ＭＡＣフレーム３１の宛先ＭＡＣアドレス・フィールド３１０には、Ｌ２ＧＷ２１−３のポートＢ１０を示すＭＡＣアドレス「Ｂ１００」、送信元ＭＡＣアドレス・フィールド３１１には、Ｌ２ＧＷ２１−１のポートＡ１０を示すＭＡＣアドレス「Ａ１０」が設定される。
【００３８】
Ｂ−ＴＰＩＤタグ・フィールド３１２と、Ｂ−ＶＩＤタグ・フィールド３１３には、それぞれ広域Ｅｔｈｅｒｎｅｔ網を提供する通信業者が指定したタグ識別番号の「０ｘ９１００」と、ＶＬＡＮ  ＩＤの値「００」とが設定され、Ｉ−ＴＰＩＤタグ・フィールド３１４と、Ｓ−ＶＩＤタグ・フィールド３１５には、それぞれ広域Ｅｔｈｅｒｎｅｔ網の提供サービスを受ける通信業者が使用するタグ識別番号の「０ｘ９３００」と、ＶＬＡＮ  ＩＤの値「Ｙ」とが設定される。
ペイロード３１６には、拡張ＶＬＡＮフレーム３０の全体が収容され、ＦＣＳフィールド３１７には、先頭フィールド３１０からペイロード３１６までのメッセージ内容に基いて算出されたチェックサム（ＣＲＣ）の値が設定される。
【００３９】
Ｌ２ＳＷ２２−１は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１を受信すると、受信フレームから第１のフラグメントフレーム３２−１と、第２のフラグメントフレーム３２−２を生成する。
第１のフラグメントフレーム３２−１の宛先ＭＡＣアドレス３２１と送信元ＭＡＣアドレス３２２には、それぞれＭＡＣ−ｉｎ−ＭＡＣフレーム３１から抽出した宛先ＭＡＣアドレス３１０と送信元ＭＡＣアドレス３１１の値が設定される。
ＴＰＩＤタグ・フィールド３２３と、ＶＩＤタグ・フィールド３２４には、それぞれ標準フレーム対応の中継網２４で指定されたタグ識別番号の値「０ｘ８１００」と、ＶＬＡＮ  ＩＤの値「００」とが設定され、Ｔｙｐｅ／長さ・フィールド３２５には、フラグメントフレームを示すＴｙｐｅ値「０ｘＦ０Ｆ０」が設定される。
【００４０】
フラグメントフレーム３２−１のフラグメントタグ・フィールド３３０は、フラグメントＩＤ３３１として、Ｌ２ＳＷ２２−１がＭＡＣ−ｉｎ−ＭＡＣフレーム３１に割り当てたＩＤ値「０」を含み、フラグメントインデックス３３２として、フラグメントフレームの生成順序「０」、フラグメントステータス３３３として、先頭フレームを示す「０」、フラグメントサイズ３３４として、フラグメントペイロード３４０の長さ「１４９６」を含む。
【００４１】
また、フラグメントフレーム３２−１のフラグメントペイロード３４０には、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のＢ−ＴＰＩＤタグ・フィールド３１２以降の１４９６バイト分のメッセージ内容が収容され、ＦＣＳフィールド３４１には、このフレームの先頭フィールド（宛先ＭＡＣアドレス・フィールド）３２１からペイロード３４０までのメッセージ内容から算出されたチェックサム（ＣＲＣ）の値が設定される。
【００４２】
第２のフラグメントフレーム３２−２には、フラグメントフレーム３２−１と同じフラグメントフレームヘッダ３２０（フィールド３１０〜３２５）が付加される。フラグメントフレーム３２−２のフラグメントタグ・フィールド３３０は、フラグメントＩＤ３３１として、フラグメントフレーム３２−１と同じＩＤ値「０」を含み、フラグメントインデックス３３２として、フラグメントフレームの生成順序「１」、フラグメントステータス３３３として、最終フレームを示す「２」、フラグメントサイズ３３４として、フラグメントペイロード３４０の長さ「４４」を含む。
【００４３】
フラグメントフレーム３２−２のフラグメントペイロード３４０には、ＭＡＣ−ｉｎ−ＭＡＣフレームの残り部分が収容され、ＦＣＳフィールド３４１には、このフレームの先頭フィールド（宛先ＭＡＣアドレス・フィールド）３２１からペイロード３４０までのメッセージ内容から算出されたチェックサム（ＣＲＣ）の値が設定される。
【００４４】
尚、ＭＡＣ−ｉｎ−ＭＡＣフレームの分割後の残りブロック長が、フラグメントフレームの最小ペイロード長である４２バイト未満となった場合は、４２バイトに不足するバイト部分を値「０ｘ００」をもつパディングバイトで補うパディング処理が行われる。この場合、フラグメントサイズ・フィールド３３４には、フラグメントペイロード３４０内の有効ブロック長の値、例えば、ＭＡＣ−ｉｎ−ＭＡＣフレームの残りブロック長が３４バイトで、パディングバイト数が８バイトの場合は、値「３４」が設定される。
【００４５】
図５は、フラグメントフレーム３２−１、３２−２と、Ｌ２ＳＷ２２−２が再生するＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＧＷ２１−３が再生する拡張ＶＬＡＮフレーム３０との関係を示す。
Ｌ２ＳＷ２２−２は、図４で説明した第１のフラグメントフレーム３２−１を受信した後、第２のフラグメントフレーム３２−２を受信すると、同一フラグメントＩＤをもつこれらのフラグメントフレームから、フラグメントペイロード３４０に含まれるデータブロックを抽出し、これらのデータブロックをフラグメントインデックス３３２が示す順に結合する。
【００４６】
Ｌ２ＳＷ２２−２は、結合されたデータブロックの先頭に、宛先ＭＡＣアドレス３１０、送信元ＭＡＣアドレス３１１として、フラグメントフレーム３２−１（またはフラグメントフレーム３２−２）のフレームヘッダから抽出した宛先ＭＡＣアドレス３２１と送信元ＭＡＣアドレス３２２の値を付加することにより、分割前のＭＡＣ−ｉｎ−ＭＡＣフレーム３１を復元できる。また、Ｌ２ＧＷ２１−３は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１からペイロード３１６の内容を抽出することによって、拡張ＶＬＡＮフレーム３０を再生できる。
【００４７】
図６は、本発明によるＬ２ＳＷ２２（２２−１、２２−２）の１実施例を示すブロック構成を示す。
Ｌ２ＳＷ２２は、図２に示したポート識別子Ａ０００（Ｂ０００）〜Ａ１０ｎ（Ｂ１０ｎ）と対応する複数対の入力回線インタフェース２２１（２２１−１〜２２１−４）および出力回線インタフェース２２２（２２２−１〜２２２−４）と、各入力回線インタフェース２２１と内部バス２００との間に接続された受信バッファ２２３（２２３−１〜２２３−４）と、各出力回線インタフェース２２２と内部バス２００との間に接続された送信バッファ２２４（２２４−１〜２２４−４）と、内部バス２００に接続されたプロセッサ２３０、プログラムメモリ２３１、データメモリ２３２、フラグメントバッファ２３３、タイマ２３４および入出力装置２３５とからなる。
【００４８】
プログラムメモリ２３１には、プロセッサ２３０によって実行される本発明に関係するプログラムとして、基本制御ルーチン５０と、後で詳述するフレーム受信処理ルーチン６０、フレーム分割処理ルーチン７０およびフレーム復元処理ルーチン８０が用意されている。また、データメモリ２３２には、ポート管理テーブル４１、スイッチング情報管理テーブル４２、フラグメントＩＤ管理テーブル４３、フラグメント復元管理テーブル４４、復元パラメータ管理テーブル４５が形成されている。
【００４９】
図７は、ポート管理テーブル４１の１例を示す。
ポート管理テーブルは、Ｌ２ＳＷの各ポートに割り当てられたポート識別子(ポートＩＤ)４１１をもつ複数のテーブルエントリからなる。各テーブルエントリは、ポートＩＤ４１１と対応して、入力ポートで受信可能なＭＴＵサイズを示す受信ＭＴＵ４１２と、出力ポートで送信可能なＭＴＵサイズ、すなわち、そのポートに接続された受信側ノードで受信可能なＭＴＵサイズを示す送信ＭＴＵ４１３と、入力ポートで受信許可されたフレームがもつべきＶＬＡＮ  ＩＤを示すＶＬＡＮ−ＩＤ４１４と、入力ポートで認識可能なタグ識別子を示す有効タイプ４１５を示している。
【００５０】
図８は、スイッチング情報管理テーブル４２の１例を示す。
スイッチング情報管理テーブル４２は、フレームの送信元または宛先のＭＡＣアドレス４２１と対応して、ＶＬＡＮ−ＩＤ４２２と、フレームの入力ポートまたは出力ポートを示すポートＩＤ４２３とを示す複数のテーブルエントリからなる。
【００５１】
図９は、フラグメントＩＤ管理テーブル４３の１例を示す。
フラグメントＩＤ管理テーブル４３は、同一グループに属したフラグメントフレームを識別するためのフラグメントＩＤ４３１と、フラグメントＩＤの空き状態を示す状態フラグ４３２との対応関係を示す複数のテーブルエントリからなる。状態フラグ４３２は、フラグメントＩＤが使用状態にあれば「１」、空き状態にあれば「０」となる。
【００５２】
図１０は、フラグメント復元管理テーブル４４の１例を示す。
フラグメント復元管理テーブル４４は、フラグメントＩＤ４４１をもつ複数のテーブルエントリからなり、各テーブルエントリは、フラグメントＩＤ４４１と対応して、受信タイマの値４４２と、宛先ＭＡＣアドレス４４３と、送信元ＭＡＣアドレス４４４とを示している。
【００５３】
図１１は、復元パラメータ管理テーブル４５の１例を示す。
復元パラメータ管理テーブル４５は、フラグメントＩＤ４５０毎に、フラグメントステータス４５１と、フラグメントインデックス４５２と、フラグメントデータの格納位置を示すフラグメントポインタ４５３との対応関係を示す複数のテーブルエントリからなっている。
【００５４】
図１に示したＬ２ＳＷ２２−１、２２−３の運用に先立って、システム管理者は、入出力装置２３５を利用して、管理テーブル４１〜４５に初期データを設定する。プロセッサ２３０は、基本制御ルーチン４１に従って、入出力装置２３５を制御し、システム管理者が入力した初期データを各テーブルに設定する。
【００５５】
Ｌ２ＳＷ２２−１のポート管理テーブル４１Ａには、例えば、図１２の（Ａ）に示すように、使用可能な各ポートＩＤ４１１と対応して、受信ＭＴＵ４１２、送信ＭＴＵ４１３、通信を許可するＶＬＡＮ−ＩＤ４１４、有効タイプ４１５の値が設定される。同様に、Ｌ２ＳＷ２２−２のポート管理テーブル４１Ｂにも、例えば、図１２の（Ｂ）に示すように、使用可能なポートＩＤ４１１と対応して、受信ＭＴＵ４１２、送信ＭＴＵ４１３、通信を許可するＶＬＡＮ−ＩＤ４１４、有効タイプ４１５の値が設定される。
【００５６】
Ｌ２ＳＷ２２−１、２２−３のスイッチング情報管理テーブル４２には、図１３の（Ａ）に示すように、ＭＡＣアドレス４２１、ＶＬＡＮ−ＩＤ４２２、ポート４２３のそれぞれに初期値「ｎｕｌｌ」が設定される。
【００５７】
Ｌ２ＳＷ２２−１、２２−３のフラグメントＩＤ管理テーブル４３には、図１４の（Ａ）に示すように、フラグメントＩＤ４３１として使用可能なＩＤ値を設定し、状態フラグ４３２には、空き状態を示す初期値「０」が設定される。
【００５８】
Ｌ２ＳＷ２２−１、２２−３のフラグメント復元管理テーブル４４は、図１５の（Ａ）に示すように、フラグメントＩＤ４４１、受信タイマ４４２、宛先ＭＡＣアドレス４４３、送信元ＭＡＣアドレス４４に初期値「ｎｕｌｌ」が設定される。
【００５９】
また、Ｌ２ＳＷ２２−１、２２−３の復元パラメータ管理テーブル４５も、図１６の（Ａ）に示すように、フラグメントＩＤ４５０、フラグメントステータス４５１、フラグメントインデックス４５２、フラグメントポインタ４５３に、初期値「ｎｕｌｌ」が設定される。
【００６０】
以下、フレーム受信処理とフレーム分割処理については、図２のＬ２ＳＷ２２−１に着目して、フレームの復元処理については、図２のＬ２ＳＷ２２−２に着目して、本発明のＬ２ＳＷ２２の動作について詳細に説明する。
【００６１】
Ｌ２ＧＷ２２−１は、ポートＡ０００、ポートＡ００ｎで、ＭＡＣ−ｉｎ−ＭＡＣフレームを送受信する。ポートＡ１００では、フラグメントフレーム、またはＭＴＵが１５００バイト以下のＭＡＣ−ｉｎ−ＭＡＣフレームが送受信される。また、ポートＡ１０ｎでは、ＭＡＣ−ｉｎ−ＭＡＣフレームが送受信される。ポートＡ１０ｎで受信するＭＡＣ−ｉｎ−ＭＡＣフレームは、ＭＴＵが１５００バイトを超える場合がある。
【００６２】
入力回線インタフェース２２１（２２１−１〜２２１−４）は、各入力ポート（入力回線）から受信したフレームを受信順に受信バッファ２２３（２２３−１〜２２３−４）に蓄積する。出力回線インタフェース２２１（２２１−１〜２２１−４）は、プロセッサ２３０が、内部バス２００を介して送信バッファ２２４（２２４−１〜２２４−４）に出力した送信フレームを順次に読み出し、各出力ポート（出力回線）に送出する。
【００６３】
プロセッサ２３０は、基本制御ルーチン５０によって、受信バッファ２２３−１〜２２３−４を循環的にアクセスし、受信フレーム（ＭＡＣ−ｉｎ−ＭＡＣフレーム３１またはセグメントフレーム３２）を読み出し、フレーム受信処理ルーチン６０によって、これらの受信フレームを処理する。
【００６４】
図１７は、フレーム受信処理ルーチン６０のフローチャートを示す。
フレーム受信処理ルーチン６０において、プロセッサ２３０は、受信フレーム毎のＦＣＳを算出し、受信フレームの最後に付されたＦＣＳフィールドの値をチェックし（ステップ６０１）、ＦＣＳエラーが検出された場合、受信フレームを廃棄して（６１３）、このルーチンを終了する。この場合、プロセッサ２３０は、基本制御ルーチン３１によって、次の受信バッファ２２３から新たな受信フレームを読み出し、フレーム受信処理ルーチン６０を実行する。
【００６５】
ＦＣＳにエラーが無ければ、プロセッサ２３０は、受信フレームの第２フィールド（第７バイト〜第１２バイト）から送信元ＭＡＣアドレス３１０または３２１の値を抽出し、第４フィールド（第１５バイト〜第１６バイト）からＢ−ＶＩＤ３１３またはＶＩＤ３２４の値を抽出する（６０２）。
【００６６】
次に、プロセッサ２３０は、上記送信元ＭＡＣアドレスがスイッチング情報管理テーブル４２にＭＡＣアドレス４２１として登録済みか否かを判定し（６０３）、未登録の場合は、受信フレームから抽出された上記送信元ＭＡＣアドレス（３１０または３２１）およびＶＬＡＮ−ＩＤ（Ｂ−ＶＩＤ３１３またはＶＩＤ３２４）の値と、上記受信フレームの入力ポートのポートＩＤをそれぞれＭＡＣアドレス４２１、ＶＬＡＮ−ＩＤ４２２、ポートＩＤ４２３とする新たなテーブルエントリを生成し、これをスイッチング情報管理テーブル４２に登録する（６０４）。例えば、Ｌ２ＳＷ２２−１が、Ｌ２ＧＷ２１−１から、図４に示したＭＡＣ−ｉｎ−ＭＡフレーム３１を受信した時、スイッチング情報管理テーブル４２には、図１３の（Ｂ）に示すテーブルエントリが登録される。
【００６７】
プロセッサ３９は、受信フレームの第１フィールド（第１バイト〜第６バイト）が示す宛先ＭＡＣアドレス３１０または３２１が、ユニキャストアドレスか否かを判定し（６０５）、宛先ＭＡＣアドレスがブロードキャストアドレスまたはマルチキャストアドレスの場合は、受信フレームの出力ポートＰ−Ｏｕｔとして、入力ポート以外の他の全ポートを指定（６０９）した後、受信フレームの形式を判定する（６１０）。
【００６８】
判定ステップ６０５で、宛先ＭＡＣアドレスがユニキャストアドレスの場合、プロセッサ２３０は、この宛先ＭＡＣアドレスとＶＬＡＮ−ＩＤ（Ｂ−ＶＩＤ３１３またはＶＩＤ３２４）との対応関係が、スイッチング情報管理テーブル４２に、ＭＡＣアドレス４２１およびＶＬＡＶ−ＩＤ４２２として登録済みか否かをチェックし（６０６）、未登録の場合は、受信フレームの出力ポートＰ−Ｏｕｔとして、入力ポート以外の他の全ポートを指定（６０９）した後、受信フレームの形式判定（６１０）を実行する。
【００６９】
判定ステップ６０６で、受信フレームの宛先ＭＡＣアドレスとＶＬＡＮ−ＩＤがスイッチング情報管理テーブル４２に登録済みの場合、プロセッサ２３０は、受信フレームの入力ポートのＩＤが、スイッチング情報管理テーブル４２に登録されたポートＩＤ４２３と一致するか否かを判定し（６０７）、もし一致していた場合、受信フレームを廃棄して（６１３）、このルーチンを終了する。
【００７０】
受信フレームの入力ポートのＩＤが、スイッチング情報管理テーブル４２に登録されたポートＩＤ４２３とは異なる場合、プロセッサ２３０は、受信フレームの出力ポートＰ−Ｏｕｔとして、上記スイッチング情報管理テーブル４２に登録されたポートＩＤを指定（６０８）して、受信フレームの形式を判定する（６１０）。
【００７１】
受信フレームの形式は、受信フレームの第５フィールド（第１７バイトと第１８バイト）の設定値をチェックし、「０ｘＦ０Ｆ０」であればセグメントフレーム、そうでなければ、ＭＡＣ−ｉｎ−ＭＡＣフレームと判断できる。
【００７２】
受信フレームがフラグメントフレームの場合、プロセッサ２３０は、図１９で詳述するフレーム復元処理ルーチン８０を実行して、このルーチンを終了する。受信フレームがＭＡＣ−ｉｎ−ＭＡＣフレームの場合、プロセッサ２３０は、ポート管理テーブル４１から受信フレームの転送先ポートと対応する送信ＭＴＵを検索し、受信フレームのペイロード長が送信ＭＴＵを超えているか否かを判定する（６１１）。
【００７３】
ペイロード長が送信ＭＴＵを超えていた場合は、プロセッサ２３０は、図１８で詳述するフレーム分割処理ルーチン７０を実行し、そうでなければ、受信フレームを出力ポートＰ−Ｏｕｔと対応する送信バッファに出力して（６１２）、このルーチンを終了する。尚、受信フレームの出力ポートが複数（マルチキャスト）の場合、何れかの出力ポートでペイロード長が送信ＭＴＵを超えていた場合は、図１８で詳述するフレーム分割処理ルーチン７０を実行する。
【００７４】
図１８は、フレーム分割処理ルーチン７０のフローチャートを示す。
フレーム分割処理ルーチン７０において、プロセッサ２３０は、パラメータＰｍａｘに、フラグメントフレームの最大ペイロード長の値（図４の例では１４９６バイト）を設定し、パラメータＰｍｉｎに、フラグメントフレームの最小ペイロード長の値（図４の例では４２バイト）を設定し（ステップ７０１）、受信フレーム（ＭＡＣ−ｉｎ−ＭＡＣフレーム）から宛先ＭＡＣアドレス３１０と、送信元ＭＡＣアドレス３１１と、Ｂ−ＶＩＤ３１３の値を抽出する（７０２）。
【００７５】
プロセッサ２３０は、次に、ポート管理テーブル４１から、ポートＩＤ４１１が出力ポートＰ−Ｏｕｔと対応するテーブルエントリを検索し、有効タイプ４１５を特定する（７０３）。Ｌ２ＳＷ２２−１が、例えば、図４のＭＡＣ−ｉｎ−ＭＡＣフレーム３１を受信した場合、出力ポートＰ−ＯｕｔのポートＩＤ：「Ａ１００」と対応する有効タイプの値「０ｘ８１００」が特定される。
【００７６】
プロセッサ２３０は、特定された有効タイプの値「０ｘ８１００」と、予め指定されているフラグメントフレームのＴｙｐｅ値「０ｘＦ０Ｆ０」を適用して、フラグメントフレームヘッダ３２０を生成（７０４）した後、フラグメントＩＤ管理テーブル４３を参照して、空き状態にあるフラグメントＩＤの中から、ＩＤ値が最小のフラグメントＩＤを取得し、図１４の（Ｂ）に示すように、取得したフラグメントＩＤの状態フラグ４３２の値を「０」から「１」に変更する（７０５）。
【００７７】
プロセッサ２３０は、受信したＭＡＣ−ｉｎ−ＭＡＣフレームから、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスを除いたフレーム部分を送信データブロックとして抽出し（７０６）、送信データブロック長をパラメータＢＬに初期値として設定し（７０７）、フラグメントインデック・スカウンタＦ−Ｉｎｄｅｘを初期値「０」に設定する（７０８）。
【００７８】
プロセッサ２３０は、パラメータＢＬとＰｍｉｎを比較し（７０９）、ＢＬ≧Ｐｍｉｎの場合は、送信データブロックの先頭から、フラグメントデータを抽出し（７１０）、抽出したフラグメントデータ長をフラグメントサイズ３３４の値として保存（７１１）する。このとき、送信データブロックから抽出されるフラグメントデータの長さは、ＢＬ≧Ｐｍａｘの場合はＰｍａｘ、ＢＬ＜Ｐｍａｘの場合はＢＬとなる。
【００７９】
この後、プロセッサ２３０は、パラメータＢＬの値を更新し（７１２〜７１４）、フラグメントステータス３９３に、今回のフラグメントデータが送信データブロックの先頭、途中、最終の何れかを示す値を設定（７１５）した後、フラグメントフレームを生成する（７２０）。パラメータＢＬの更新では、現在のＢＬ値とＰｍａｘを比較し（７１２）、ＢＬ＞Ｐｍａｘの場合は、新ＢＬ＝現在のＢＬ−Ｐｍａｘとし（７１３）、ＢＬ≦Ｐｍａｘの場合は、新ＢＬ＝０とする。
【００８０】
ステップ７０９で、ＢＬ＜Ｐｍｉｎの場合、プロセッサ２３０は、送信データブロックにパディング処理を行い（７１６）、現在のＢＬ値をフラグメントサイズ３３４の値として保存し（７１７）、新たなＢＬ値を０にし（７１８）、フラグメントステータス３９３に最終ブロックを示す値を設定（７１９）した後、フラグメントフレームを生成する（７２０）。
【００８１】
フラグメントフレームは、ステップ７０５で取得したフラグメントＩＤ、フラグメントインデック・スカウンタＦ−Ｉｎｄｅｘが示すフラグメントインデックス、ステップ７１５または７１９で設定したフラグメントステータス、ステップ７１１または７１７で保存されたフラグメントデータサイズの値を用いてフラグメントタグ３３０を生成し、ステップ７０４で生成済みのフラグメントフレームヘッダと、ここで生成したフラグメントタグと、フラグメントデータとを順に繋ぎ合わせることによって生成される（７２０）。
【００８２】
プロセッサ２３０は、生成されたフラグメントフレームを出力ポートＰ−Ｏｕｔと対応する送信バッファ２２４−ｘに転送する（７２１）。この後、プロセッサ２３０は、パラメータＢＬの現在値を判定し（７２２）、ＢＬ＝０でなければ、Ｆ−Ｉｎｄｅｘの値をインクリメントし（７２３）、ステップ７０９以降の処理を繰り返す。
【００８３】
ステップ７２２で、ＢＬ＝０となっていた場合、プロセッサ２３０は、不要となったフラグメントＩＤを解放、すなわち、図１４の（Ａ）に示すように、フラグメントＩＤ管理テーブル４３の該当する状態フラグの値を「０」に書き換えて（７２４）、このルーチンを終了する。
【００８４】
上記フレーム分割処理ルーチン７０によって、図２で説明したフラグメントフレーム３２−１、３２−２が、出力ポートＡ１００と対応する送信バッファ２２４−２３に順次に出力され、出力回線インタフェース２２２−２によって、標準フレーム対応の中継網２４に送信される。これらのフラグメントフレームは、Ｌ２ＳＷ２２−２で受信される。
【００８５】
Ｌ２ＳＷ２２−２のプロセッサ２３０は、フラグメントフレーム３２−１を受信すると、上述したフレーム受信処理ルーチン６０を実行し、スイッチング情報管理テーブル４２に、図１３の（Ｃ）に示すテーブルエントリを追加し、判定ステップ６１０で、フレーム復元処理８０を選択する。
【００８６】
図１９は、フレーム復元処理ルーチン８０のフローチャートを示す。
Ｌ２ＳＷ２２−２のプロセッサ２３０は、フレーム復元処理ルーチン８０において、受信フレームから、フラグメントタグ３３０の内容を抽出し（８０１）、フラグメントＩＤ３３１が、フラグメント復元管理テーブル４４に登録済みのものか否かを判定する（８０２）。
【００８７】
もし、受信フレームのフラグメントＩＤ３３１が、フラグメント復元管理テーブル４４に未登録の場合、プロセッサ２３０は、フラグメントＩＤ３３１と対応する新たなテーブルエントリをフラグメント復元管理テーブル４４に追加し（８０３）、受信タイマをスタート（８０４）させた後、フラグメントサイズ３３４に従って、受信フレームのペイロード３４０から、フラグメントデータを抽出する（８０７）。
【００８８】
受信フレームが、図５に示した第１のフラグメントフレーム３２−１の場合、フラグメント復元管理テーブル４４に追加される新たなテーブルエントリＥＮ１は、図１５の（Ｂ）に示すように、フラグメントＩＤ４４１、宛先ＭＡＣアドレス４４３、送信元ＭＡＣアドレス４４４として、受信フレームのフラグメントＩＤ「０」、宛先ＭＡＣアドレス「Ｂ１００」、送信元ＭＡＣアドレス「Ａ１０」を含み、受信タイマ４４２は、スタート時の初期値「５００（ｍ秒）」に設定される。
【００８９】
判定ステップ８０２で、受信フレームのフラグメントＩＤ３３１が、フラグメント復元管理テーブル４４に既に登録済みとなっていた場合、プロセッサ２３０は、フラグメント復元管理テーブル４４が示す上記フラグメントＩＤ３３１と対応する受信タイマ４４２がタイムアウトしているか否かを判定する（８０５）。受信タイマがタイムアウトしていなければ、プロセッサ２３０は、受信タイマを初期値に更新して（８０６）、受信フレームのペイロード３４０から、フラグメントデータを抽出する（８０７）。
【００９０】
プロセッサ２３０は、受信フレームから抽出したフラグメントデータをフラグメントバッファ２３３に格納（８０８）した後、復元パラメータ管理テーブル４５に、受信フレームのフラグメントタグ３３０と対応した管理パラメータを登録する（８０９）。
【００９１】
Ｌ２ＳＷ２２−２が、図４に示した第１のフラグメントフレーム３２−１を受信した時点では、復元パラメータ管理テーブル４５には、例えば、図１６の（Ｂ）に示すパラメータ値を含むテーブルエントリＥＮ０１が追加される。ここで、フラグメントステータス４５１とフラグメントインデックス４５２には、受信フレームのフラグメントタグ３３０から抽出したフラグメントステータス３３３とフラグメントインデックス３３２の値「０」が設定される。フラグメントポインタ４５３には、フラグメントバッファ２３３におけるフラグメントデータのアドレス値「Ａ」が設定される。
【００９２】
プロセッサ２３０は、復元パラメータ管理テーブル４５に記憶されているフラグメントステータス４５１、フラグメントインデックス４５２の値から、元のＭＡＣ−ｉｎ−ＭＡＣフレームの復元に必要な全てのフラグメントフレームが受信済みとなったか否かを判定し（８１０）、もし受信済みでなければ、このルーチンを終了して、同一フラグメントＩＤをもつ次のフラグメントフレームの受信を待つ。
【００９３】
Ｌ２ＳＷ２２−２が、図４に示した第１フラグメントフレーム３２−１に続いて、第２フラグメントフレーム３２−２を受信した場合、復元パラメータ管理テーブル４５には、図１６の（Ｃ）に示すように、第２フラグメントフレーム３２−２と対応するテーブルエントリＥＮ０２が追加される。この時、プロセッサ２３０は、テーブルエントリＥＮ０２のフラグメントステータス４５１の値から、第２フラグメントフレーム３２−２が最終のフラグメントフレームであり、且つ、テーブルエントリＥＮ０１、ＥＮ０２のフラグメントインデックス４５２の値が連続していることから、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１の復元に必要な全てのフラグメントフレームが受信済みとなった、と判断する。
【００９４】
この場合、プロセッサ２３０は、テーブルエントリＥＮ０１、ＥＮ０２が示すフラグメントポインタ４５３に従って、フラグメントバッファ２３３からセグメントデータを読み出し、フラグメントインデックス４５２が示すインデックス値順にセグメントデータを連結することによって、送信データブロックを復元する（８１１）。
【００９５】
プロセッサ２３０は、送信データブロックの先頭に、受信フレーム（今回の例ではフラグメントフレーム３２−２）が示す宛先ＭＡＣアドレスと送信元ＭＡＣアドレスを付加することによって、ＭＡＣ−ｉｎ−ＭＡＣフレームを復元し（８１２）、これを出力ポートＰ−Ｏｕｔと対応する送信バッファに出力する（８１３）。この後、プロセッサ２３０は、フラグメント復元管理テーブル４３と復元パラメータ管理テーブル４５から、不要となったテーブルエントリＥＮ１、ＥＮ０１、ＥＮ０２を削除して（８１５）、このルーチンを終了する。
【００９６】
判定ステップ８０５で、受信タイマがタイムアップしていた場合、プロセッサ２３０は、受信フレームを廃棄（８１４）した後、フラグメント復元管理テーブル４３と復元パラメータ管理テーブル４５から、不要となったテーブルエントリを削除して（８１５）、このルーチンを終了する。
【００９７】
尚、フレーム受信処理ルーチン６０のステップ６１２、フレーム分割処理ルーチン７０のステップ７２１、フレーム復元処理ルーチン８０のステップ８１３において、フレームの出力ポートＰ−Ｏｕｔが全ポート指定となっていた場合、プロセッサ２３０は、送信フレームヘッダの第４フィールド（第１５バイト、第１６バイト）が示すＶＩＤまたはＢ−ＶＩＤの値が、ポート管理テーブル４１（図１２の４１Ａまたは４１Ｂ）でＶＬＡＮ−ＩＤ４１４として登録されていないポートＩＤ、または、第３フィールド（第１３バイト、第１４バイト）が示すＴＰＩＤまたはＢ−ＴＰＩＤの値が、ポート管理テーブル４１（図１２の４１Ａまたは４１Ｂ）で有効タイプ４１５として登録されていないポートＩＤをもつ出力ポートに対しては、フレームを送信しないようにしてもよい。
【００９８】
但し、同一のフレームが複数の出力ポートから送信された場合でも、これを受信したノード装置で、受信フレームの宛先ＭＡＣアドレスを判定して不要フレームを廃棄できるため、結果的には、Ｌ２ＳＷ２２−１がマルチキャストしたフレームは、宛先ＭＡＣアドレスに対応した特定のＬ２ＳＷまたはＬ２ＧＷに転送されたことになる。
【００９９】
上述したＬ２ＳＷ２２の動作から明らかなように、本実施例によれば、標準フレーム対応の中継網２４に接続された第１のＬ２ＳＷ２２−１が、Ｌ２ＧＷ２１−１から受信したＭＡＣ−ｉｎ−ＭＡＣ形式のフレームのペイロード長を判定し、受信フレームが中継網２４のＭＴＵ値よりも長い場合は、受信フレームを中継網２４に適合したサイズの複数のフラグメントフレームに分割して送出し、中継網２４からこれらのフラグメントフレームを受信した第２のＬ２ＳＷ２２−２で、元のＭＡＣ−ｉｎ−ＭＡＣフレームを復元し、復元されたＭＡＣ−ｉｎ−ＭＡＣフレームを宛先端末側のＬ２ＧＷ２１−３に転送するようになっている。
【０１００】
従って、本発明のＬ２ＳＷは、ＭＡＣ−ｉｎ−ＭＡＣフレームような拡張フレームのペイロード長が、標準フレーム対応の中継網２４で規定されたサイズを超える場合でも、拡張フレームの確実な転送を可能にする。
【０１０１】
上記実施例では、第１のＬ２ＳＷ２２−１が、ＭＡＣ−ｉｎ−ＭＡＣフレームを複数のフラグメントフレームに分割し、第２のＬ２ＳＷ２２−２が、元のＭＡＣ−ｉｎ−ＭＡＣフレームに復元するネットワーク構成について説明したが、本発明は、Ｌ２ＳＷの受信フレームが、イーサネットフレーム形式をもつＭＡＣ−ｉｎ−ＭＡＣ以外のフレーム、例えば、拡張ＶＬＡＮ、ＰＰＰｏＥ等のレイヤ２トンネリングプロトコルのフレームであってよい。
【０１０２】
また、本発明は、Ｌ２ＳＷで生成するフラグメントフレームを実施例で示したフラグメントタグ３３０をもつフレーム形式に限定するものではない。また、フラグメントフレームが転送される中継網も、実施例で示したＭＴＵが１５００バイトの網に限定されるものではない。
【０１０３】
実施例に示したＬ２ＳＷでは、フレームの分割処理とフレームの復元処理をプロセッサ２３０で行ったが、フレームの分割機能を複数の入力回線インタフェースに分散し、フレームの復元機能を複数の出力回線インタフェースに分散した装置構成にしてもよい。
【図面の簡単な説明】
【０１０４】
【図１】本発明のレイヤ２スイッチ（Ｌ２ＳＷ）が適用されるネットワーク構成の１例を示す概略図。
【図２】図１のネットワークにおけるフレーム転送動作を説明するための接続モデルの１例（Ａ）とフレームの変換過程（Ｂ）を示す図。
【図３】拡張ＶＬＡＮフレーム３０のフォーマット（Ａ）と、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のフォーマット（Ｂ）と、フラグメントフレーム３２のフォーマット（Ｃ）を示す図。
【図４】エッジノード１１−１Ａで生成される拡張ＶＬＡＮフレーム３０と、Ｌ２ＧＷ２１−２で生成されるＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＳＷ２２−１で生成されるフラグメントフレーム３２−１、３２−２の関係を示す図
【図５】フラグメントフレーム３２−１、３２−２と、Ｌ２ＳＷ２２−２が再生するＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＧＷ２１−３が再生する拡張ＶＬＡＮフレーム３０との関係を示す。
【図６】本発明によるＬ２ＳＷ２２の１実施例を示すブロック構成図。
【図７】ポート管理テーブル４１の１例を示す図。
【図８】スイッチング情報管理テーブル４２の１例を示す図。
【図９】フラグメントＩＤ管理テーブル４３の１例を示す図。
【図１０】フラグメント復元管理テーブル４４の１例を示す図。
【図１１】復元パラメータ管理テーブル４５の１例を示す図。
【図１２】Ｌ２ＳＷ２２−１が備えるポート管理テーブル４１Ａと、Ｌ２ＳＷ２２−２が備えるポート管理テーブル４１Ｂの設定値の１例を示す図。
【図１３】スイッチング情報管理テーブル４２の内容変化を説明するための図。
【図１４】フラグメントＩＤ管理テーブル４３の内容変化を説明するための図。
【図１５】フラグメント復元管理テーブル４４の内容変化を説明するための図。
【図１６】復元パラメータ管理テーブル４５の内容変化を説明するための図。
【図１７】フレーム受信処理ルーチン６０の１実施例を示すフローチャート。
【図１８】フレーム分割処理ルーチン７０の１実施例を示すフローチャート。
【図１９】フレーム復元処理ルーチン８０の１実施例を示すフローチャート。
【符号の説明】
【０１０５】
１０：ＶＬＡＮ網、１１：エッジノード、２０：広域Ｅｔｈｅｒｎｅｔ網、
２１：Ｌ２ＧＷ、２２：Ｌ２ＳＷ、２４：標準フレーム対応の中継網、２５：ジャンボフレーム対応の中継網、３０：拡張ＶＬＡＮフレーム、３１：Ｍａｃ−ｉｎ−ＭＡＣフレーム、３２：フラグメントフレーム、４１：ポート管理テーブル、４２：スイッチング情報管理テーブル、４３：フラグメントＩＤ管理テーブル、４４：フラグメント復元管理テーブル、４５：復元パラメータ管理テーブル、５０：基本制御ルーチン、６０：フレーム受信処理ルーチン、７０：フレーム分割処理ルーチン、８０：フレーム復元処理ルーチン、
２００：内部バス、２２１：入力回線インタフェース、２２２：出力回線インタフェース、２２３：受信バファ、２２４：送信バファ、２３０：プロセッサ、２３１：プログラムメモリ、２３２：データメモリ、２３３：フラグメントバッファ、２３４：タイマ、
２３５：入出力装置。
【図１】
2009065429.tif 000003
【図２】
2009065429.tif 000004
【図３】
2009065429.tif 000005
【図４】
2009065429.tif 000006
【図５】
2009065429.tif 000007
【図６】
2009065429.tif 000008
【図７】
2009065429.tif 000009
【図８】
2009065429.tif 000010
【図９】
2009065429.tif 000011
【図１０】
2009065429.tif 000012
【図１１】
2009065429.tif 000013
【図１２】
2009065429.tif 000014
【図１３】
2009065429.tif 000015
【図１４】
2009065429.tif 000016
【図１５】
2009065429.tif 000017
【図１６】
2009065429.tif 000018
【図１７】
2009065429.tif 000019
【図１８】
2009065429.tif 000020
【図１９】
2009065429.tif 000021
【手続補正書】
【提出日】平成20年11月18日(2008.11.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
それぞれがポート識別子によって識別される複数対の入出力ポートを有し、各入力ポートからの受信フレームを宛先ＭＡＣアドレスによって特定された何れかの出力ポートに転送するパケット転送装置であって、
宛先アドレスと対応して、受信フレームの転送先ポートを示すポート識別子を記憶したスイッチング情報管理テーブルと、
上記各ポート識別子と対応して送信ＭＴＵサイズを記憶したポート管理テーブルと、
上記スイッチング情報管理テーブルに従って、受信フレームの転送先ポートの識別子を特定するためのルーティング手段と、
上記受信フレームのペイロード長が、上記ポート管理テーブルが示す上記転送先ポート識別子と対応する送信ＭＴＵサイズを超えている場合、該受信フレームを上記送信ＭＴＵよりも短い複数のデータブロックに分割し、それぞれのペイロードに上記データブロックのうちの１つを含む複数のフラグメントフレームを生成するフラグメントフレーム生成手段と、
上記何れかの入力ポートからフラグメントフレームを受信した場合、受信したフラグメントフレームを一時的に保持しておき、複数のフラグメントフレームから元のフレームを復元するフレーム復元手段とを備え、
上記特定された転送先ポート識別子をもつ出力ポートに対して、上記受信フレーム、フラグメントフレーム、または複数のフラグメントフレームから復元されたフレームの何れかが選択的に転送されるようにしたことを特徴とするパケット転送装置。
【請求項２】
請求項１に記載のパケット転送装置において、
前記受信フレームが、宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを含むイーサネットヘッダを有し、
前記フラグメントフレーム生成手段で生成される各フラグメントフレームが、前記受信フレームのイーサネットヘッダから抽出された宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを含むフレームヘッダと、フラグメントタグと、ペイロードとからなり、
上記ペイロードが、前記受信フレームから分割された何れかのデータブロックを含み、
上記フラグメントタグが、元のイーサネットフレームを一意に識別するためのフラグメントＩＤと、各フラグメントフレームの生成順序を示すフラグメントインデックスと、同一のイーサネットフレームから生成された一連のフラグメントフレームにおける先頭フレーム、途中フレーム、最終フレームの区別を示すフラグメントステータスと、上記ペイロードに含まれるデータブロックの長さを示すフラグメントサイズとを含むことを特徴とするパケット転送装置。
【請求項３】
請求項２に記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、前記受信フレームの宛先ＭＡＣアドレスと送信元ＭＡＣアドレス以外の部分を前記複数のデータブロックに分轄して、前記複数のフラグメントフレームを生成することを特徴とするパケット転送装置。
【請求項４】
請求項２に記載のパケット転送装置において、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、該フラグメントフレームと同一のフラグメントＩＤをもつ複数のフラグメントフレームの各ペイロードから抽出されたデータブロックを前記フラグメントインデックスの順に結合することによって、元のフレームを復元することを特徴とするパケット転送装置。
【請求項５】
請求項２に記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、前記受信フレームのうち、前記宛先ＭＡＣアドレスと送信元ＭＡＣアドレス以外の部分を複数のデータブロックに分轄して、前記複数のフラグメントフレームを生成し、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、該フラグメントフレームと同一のフラグメントＩＤをもつ複数のフラグメントフレームの各ペイロードから抽出されたデータブロックを前記フラグメントインデックスの順に結合し、その先頭部に位置したフレームヘッダに、上記何れかのフラグメントフレームのイーサネットフレームヘッダから抽出された宛先ＭＡＣアドレスと送信元ＭＡＣアドレスとを付加することによって、元のフレームを復元することを特徴とするパケット転送装置。
【請求項６】
請求項２に記載のパケット転送装置において、
前記受信イーサネットフレームと前記各フラグメントフレームが、それぞれのフレームヘッダに、前記宛先ＭＡＣアドレスおよび送信元ＭＡＣアドレスと共に、プロトコルタイプ識別子を含み、上記プロトコルタイプ識別子によって、前記受信フレームがフラグメントフレームか否かが判断されることを特徴とするパケット転送装置。
【請求項７】
請求項２〜請求項６の何れかに記載のパケット転送装置において、
前記フラグメントＩＤと対応付けて、受信した各フラグメントフレームのフラグメントタグが示すフラグメントステータスおよびフラグメントインデックスの値と、上記フラグメントフレームのペイロードから抽出されたデータブロックを管理するための復元パラメータ管理テーブルを備え、
前記フレーム復元手段が、前記フラグメントステータスが最終フレームを示すフラグメントフレームを受信した時、上記復元パラメータ管理テーブルによって、フレーム復元に必要な全てのフラグメントフレームが受信済みであることを確認して、同一のフラグメントＩＤをもつ前記複数のフラグメントフレームから、元のフレームを復元することを特徴とするパケット転送装置。
【請求項８】
請求項２〜請求項７の何れかに記載のパケット転送装置において、
前記フラグメントフレーム生成手段が、１つのイーサネットフレームが別のイーサネットヘッダでカプセル化された拡張フレーム構造の受信フレームを前記複数のフラグメントフレームに変換することを特徴とするパケット転送装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
更に詳述すると、本発明は、それぞれがポート識別子によって識別される複数対の入出力ポートを有し、各入力ポートからの受信フレームを宛先ＭＡＣアドレスによって特定された何れかの出力ポートに転送するパケット転送装置であって、
宛先アドレスと対応して、受信フレームの転送先ポートを示すポート識別子を記憶したスイッチング情報管理テーブルと、
上記各ポート識別子と対応して送信ＭＴＵサイズを記憶したポート管理テーブルと、
上記スイッチング情報管理テーブルに従って、受信フレームの転送先ポートの識別子を特定するためのルーティング手段と、
上記受信フレームのペイロード長が、上記ポート管理テーブルが示す上記転送先ポート識別子と対応する送信ＭＴＵサイズを超えている場合、該受信フレームを上記送信ＭＴＵよりも短い複数のデータブロックに分割し、それぞれのペイロードに上記データブロックのうちの１つを含む複数のフラグメントフレームを生成するフラグメントフレーム生成手段と、
上記何れかの入力ポートからフラグメントフレームを受信した場合、受信したフラグメントフレームを一時的に保持しておき、複数のフラグメントフレームから元のフレームを復元するフレーム復元手段とを備え、
上記特定された転送先ポート識別子をもつ出力ポートに対して、上記受信フレーム、フラグメントフレーム、または複数のフラグメントフレームから復元されたフレームの何れかが選択的に転送されるようにしたことを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
エッジノード１１−１Ａは、ユーザ端末ＡからのＶＬＡＮフレームを受信すると、図２の（Ｂ）に示すように、受信したＶＬＡＮフレームをＶＬＡＮ網１Ａ：１０−３宛の拡張ＶＬＡＮフレーム３０に変換して、Ｌ２ＧＷ２１−１に転送する。Ｌ２ＧＷ２１−１は、上記拡張ＶＬＡＮフレームをポートＡ００で受信すると、受信フレームをＭＡＣ−ｉｎ−ＭＡＣフレーム３１のペイロードに収容して、ポートＡ１０からＬ２ＳＷ２２−１に送信する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
図示したネットワーク構成では、Ｌ２ＳＷ２２−１は、標準フレーム対応の中継網２４と、Ｌ２ＳＷ２２−２と、Ｌ２ＧＷ２１−３を介して、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１の宛先ＶＬＡＮ網１Ａ：１０−３に接続されている。ここでは、標準フレーム対応の中継網２４は、ＭＴＵサイズが１５００バイトであり、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のペイロード長が中継網２４のＭＴＵサイズを越えていたと仮定する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
広域Ｅｔｈｅｒｎｅｔ網２０内では、各ノードは、受信フレームをＶＬＡＮ−ＩＤに従って転送する。Ｌ２ＳＷ２２−１から送信されたフラグメントフレーム３２は、中継網２４によって、Ｌ２ＳＷ２２−２のポートＢ１００に転送される。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
Ｌ２ＧＷ２１−３は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１を受信すると、そのペイロードから拡張ＶＬＡＮフレーム３０を抽出し、これを宛先ＶＬＡＮ網１Ａ：１０−３のエッジノード１１−３Ａと接続されているポートＢ００から送信する。拡張ＶＬＡＮフレーム３０は、エッジノード１１−３ＡによってＶＬＡＮ網１Ａ：１０−３に送出され、宛先のユーザ端末Ｂに転送される。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
図３の（Ｂ）は、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のフォーマットを示す。
ＭＡＣ−ｉｎ−ＭＡＣフレーム３１は、宛先ＭＡＣアドレス・フィールド３１０と、送信元ＭＡＣアドレス・フィールド３１１と、Ｂ−ＴＰＩＤタグ・フィールド３１２と、Ｂ−ＶＩＤタグ・フィールド３１３と、Ｉ−ＴＰＩＤタグ・フィールド３１４と、Ｉ−ＳＩＤタグ・フィールド３１５と、ペイロード３１６と、ＦＣＳフィールド３１７とからなり、最大フレーム長は１５５２バイトとなっている。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
ＭＡＣ−ｉｎ−ＭＡＣフレームのペイロード３１６には、拡張ＶＬＡＮフレーム３０の全体が格納される。ＭＡＣ−ｉｎ−ＭＡＣフレームの最大ペイロード長は、１５２６バイトとなっている。従って、拡張ＶＬＡＮフレーム３０のペイロード長が最大値に近ければ、ＭＡＣ−ｉｎ−ＭＡＣフレームのペイロード３１６が標準フレーム対応の中継網２４のＭＴＵサイズ（１５００バイト）を超え、中継網２４で転送できなくなる可能性がある。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００３４
【補正方法】変更
【補正の内容】
【００３４】
図４は、エッジノード１１−１Ａで生成される拡張ＶＬＡＮフレーム３０と、Ｌ２ＧＷ２１−１で生成されるＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＳＷ２２−１で生成されるフラグメントフレーム３２−１、３２−２の関係を示す。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
第２のフラグメントフレーム３２−２には、フラグメントフレーム３２−１と同じフラグメントフレームヘッダ３２０（フィールド３２１〜３２５）が付加される。フラグメントフレーム３２−２のフラグメントタグ・フィールド３３０は、フラグメントＩＤ３３１として、フラグメントフレーム３２−１と同じＩＤ値「０」を含み、フラグメントインデックス３３２として、フラグメントフレームの生成順序「１」、フラグメントステータス３３３として、最終フレームを示す「２」、フラグメントサイズ３３４として、フラグメントペイロード３４０の長さ「４４」を含む。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
図１に示したＬ２ＳＷ２２−１、２２−２の運用に先立って、システム管理者は、入出力装置２３５を利用して、管理テーブル４１〜４５に初期データを設定する。プロセッサ２３０は、基本制御ルーチン５０に従って、入出力装置２３５を制御し、システム管理者が入力した初期データを各テーブルに設定する。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
Ｌ２ＳＷ２２−１、２２−２のスイッチング情報管理テーブル４２には、図１３の（Ａ）に示すように、ＭＡＣアドレス４２１、ＶＬＡＮ−ＩＤ４２２、ポートＩＤ４２３のそれぞれに初期値「ｎｕｌｌ」が設定される。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
Ｌ２ＳＷ２２−１、２２−２のフラグメントＩＤ管理テーブル４３には、図１４の（Ａ）に示すように、フラグメントＩＤ４３１として使用可能なＩＤ値を設定し、状態フラグ４３２には、空き状態を示す初期値「０」が設定される。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００５８
【補正方法】変更
【補正の内容】
【００５８】
Ｌ２ＳＷ２２−１、２２−２のフラグメント復元管理テーブル４４は、図１５の（Ａ）に示すように、フラグメントＩＤ４４１、受信タイマ４４２、宛先ＭＡＣアドレス４４３、送信元ＭＡＣアドレス４４に初期値「ｎｕｌｌ」が設定される。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００５９
【補正方法】変更
【補正の内容】
【００５９】
また、Ｌ２ＳＷ２２−１、２２−２の復元パラメータ管理テーブル４５も、図１６の（Ａ）に示すように、フラグメントＩＤ４５０、フラグメントステータス４５１、フラグメントインデックス４５２、フラグメントポインタ４５３に、初期値「ｎｕｌｌ」が設定される。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００６１
【補正方法】変更
【補正の内容】
【００６１】
Ｌ２ＳＷ２２−１は、ポートＡ０００、ポートＡ００ｎで、ＭＡＣ−ｉｎ−ＭＡＣフレームを送受信する。ポートＡ１００では、フラグメントフレーム、またはＭＴＵが１５００バイト以下のＭＡＣ−ｉｎ−ＭＡＣフレームが送受信される。また、ポートＡ１０ｎでは、ＭＡＣ−ｉｎ−ＭＡＣフレームが送受信される。ポートＡ１０ｎで受信するＭＡＣ−ｉｎ−ＭＡＣフレームは、ＭＴＵが１５００バイトを超える場合がある。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００６２
【補正方法】変更
【補正の内容】
【００６２】
入力回線インタフェース２２１（２２１−１〜２２１−４）は、各入力ポート（入力回線）から受信したフレームを受信順に受信バッファ２２３（２２３−１〜２２３−４）に蓄積する。出力回線インタフェース２２２（２２２−１〜２２２−４）は、プロセッサ２３０が、内部バス２００を介して送信バッファ２２４（２２４−１〜２２４−４）に出力した送信フレームを順次に読み出し、各出力ポート（出力回線）に送出する。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００６４
【補正方法】変更
【補正の内容】
【００６４】
図１７は、フレーム受信処理ルーチン６０のフローチャートを示す。
フレーム受信処理ルーチン６０において、プロセッサ２３０は、受信フレーム毎のＦＣＳを算出し、受信フレームの最後に付されたＦＣＳフィールドの値をチェックし（ステップ６０１）、ＦＣＳエラーが検出された場合、受信フレームを廃棄して（６１３）、このルーチンを終了する。この場合、プロセッサ２３０は、基本制御ルーチン５０によって、次の受信バッファ２２３から新たな受信フレームを読み出し、フレーム受信処理ルーチン６０を実行する。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００６５
【補正方法】変更
【補正の内容】
【００６５】
ＦＣＳにエラーが無ければ、プロセッサ２３０は、受信フレームの第２フィールド（第７バイト〜第１２バイト）から送信元ＭＡＣアドレス３１１または３２２の値を抽出し、第４フィールド（第１５バイト〜第１６バイト）からＢ−ＶＩＤ３１３またはＶＩＤ３２４の値を抽出する（６０２）。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】００６７
【補正方法】変更
【補正の内容】
【００６７】
プロセッサ２３０は、受信フレームの第１フィールド（第１バイト〜第６バイト）が示す宛先ＭＡＣアドレス３１０または３２１が、ユニキャストアドレスか否かを判定し（６０５）、宛先ＭＡＣアドレスがブロードキャストアドレスまたはマルチキャストアドレスの場合は、受信フレームの出力ポートＰ−Ｏｕｔとして、入力ポート以外の他の全ポートを指定（６０９）した後、受信フレームの形式を判定する（６１０）。
【手続補正２１】
【補正対象書類名】明細書
【補正対象項目名】００６８
【補正方法】変更
【補正の内容】
【００６８】
判定ステップ６０５で、宛先ＭＡＣアドレスがユニキャストアドレスの場合、プロセッサ２３０は、この宛先ＭＡＣアドレスとＶＬＡＮ−ＩＤ（Ｂ−ＶＩＤ３１３またはＶＩＤ３２４）との対応関係が、スイッチング情報管理テーブル４２に、ＭＡＣアドレス４２１およびＶＬＡＮ−ＩＤ４２２として登録済みか否かをチェックし（６０６）、未登録の場合は、受信フレームの出力ポートＰ−Ｏｕｔとして、入力ポート以外の他の全ポートを指定（６０９）した後、受信フレームの形式判定（６１０）を実行する。
【手続補正２２】
【補正対象書類名】明細書
【補正対象項目名】００７９
【補正方法】変更
【補正の内容】
【００７９】
この後、プロセッサ２３０は、パラメータＢＬの値を更新し（７１２〜７１４）、フラグメントステータス３３３に、今回のフラグメントデータが送信データブロックの先頭、途中、最終の何れかを示す値を設定（７１５）した後、フラグメントフレームを生成する（７２０）。パラメータＢＬの更新では、現在のＢＬ値とＰｍａｘを比較し（７１２）、ＢＬ＞Ｐｍａｘの場合は、新ＢＬ＝現在のＢＬ−Ｐｍａｘとし（７１３）、ＢＬ≦Ｐｍａｘの場合は、新ＢＬ＝０とする。
【手続補正２３】
【補正対象書類名】明細書
【補正対象項目名】００８０
【補正方法】変更
【補正の内容】
【００８０】
ステップ７０９で、ＢＬ＜Ｐｍｉｎの場合、プロセッサ２３０は、送信データブロックにパディング処理を行い（７１６）、現在のＢＬ値をフラグメントサイズ３３４の値として保存し（７１７）、新たなＢＬ値を０にし（７１８）、フラグメントステータス３３３に最終ブロックを示す値を設定（７１９）した後、フラグメントフレームを生成する（７２０）。
【手続補正２４】
【補正対象書類名】明細書
【補正対象項目名】００８４
【補正方法】変更
【補正の内容】
【００８４】
上記フレーム分割処理ルーチン７０によって、図２で説明したフラグメントフレーム３２−１、３２−２が、出力ポートＡ１００と対応する送信バッファ２２４−３に順次に出力され、出力回線インタフェース２２２−３によって、標準フレーム対応の中継網２４に送信される。これらのフラグメントフレームは、Ｌ２ＳＷ２２−２で受信される。
【手続補正２５】
【補正対象書類名】明細書
【補正対象項目名】００８８
【補正方法】変更
【補正の内容】
【００８８】
受信フレームが、図５に示した第１のフラグメントフレーム３２−１の場合、フラグメント復元管理テーブル４４に追加される新たなテーブルエントリＥＮ０は、図１５の（Ｂ）に示すように、フラグメントＩＤ４４１、宛先ＭＡＣアドレス４４３、送信元ＭＡＣアドレス４４４として、受信フレームのフラグメントＩＤ「０」、宛先ＭＡＣアドレス「Ｂ１００」、送信元ＭＡＣアドレス「Ａ１０」を含み、受信タイマ４４２は、スタート時の初期値「５００（ｍ秒）」に設定される。
【手続補正２６】
【補正対象書類名】明細書
【補正対象項目名】００９４
【補正方法】変更
【補正の内容】
【００９４】
この場合、プロセッサ２３０は、テーブルエントリＥＮ０１、ＥＮ０２が示すフラグメントポインタ４５３に従って、フラグメントバッファ２３３からフラグメントデータを読み出し、フラグメントインデックス４５２が示すインデックス値順にフラグメントデータを連結することによって、送信データブロックを復元する（８１１）。
【手続補正２７】
【補正対象書類名】明細書
【補正対象項目名】００９５
【補正方法】変更
【補正の内容】
【００９５】
プロセッサ２３０は、送信データブロックの先頭に、受信フレーム（今回の例ではフラグメントフレーム３２−２）が示す宛先ＭＡＣアドレスと送信元ＭＡＣアドレスを付加することによって、ＭＡＣ−ｉｎ−ＭＡＣフレームを復元し（８１２）、これを出力ポートＰ−Ｏｕｔと対応する送信バッファに出力する（８１３）。この後、プロセッサ２３０は、フラグメント復元管理テーブル４４と復元パラメータ管理テーブル４５から、不要となったテーブルエントリＥＮ１、ＥＮ０１、ＥＮ０２を削除して（８１５）、このルーチンを終了する。
【手続補正２８】
【補正対象書類名】明細書
【補正対象項目名】０１０４
【補正方法】変更
【補正の内容】
【０１０４】
【図１】本発明のレイヤ２スイッチ（Ｌ２ＳＷ）が適用されるネットワーク構成の１例を示す概略図。
【図２】図１のネットワークにおけるフレーム転送動作を説明するための接続モデルの１例（Ａ）とフレームの変換過程（Ｂ）を示す図。
【図３】拡張ＶＬＡＮフレーム３０のフォーマット（Ａ）と、ＭＡＣ−ｉｎ−ＭＡＣフレーム３１のフォーマット（Ｂ）と、フラグメントフレーム３２のフォーマット（Ｃ）を示す図。
【図４】エッジノード１１−１Ａで生成される拡張ＶＬＡＮフレーム３０と、Ｌ２ＧＷ２１−１で生成されるＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＳＷ２２−１で生成されるフラグメントフレーム３２−１、３２−２の関係を示す図
【図５】フラグメントフレーム３２−１、３２−２と、Ｌ２ＳＷ２２−２が再生するＭＡＣ−ｉｎ−ＭＡＣフレーム３１と、Ｌ２ＧＷ２１−３が再生する拡張ＶＬＡＮフレーム３０との関係を示す。
【図６】本発明によるＬ２ＳＷ２２の１実施例を示すブロック構成図。
【図７】ポート管理テーブル４１の１例を示す図。
【図８】スイッチング情報管理テーブル４２の１例を示す図。
【図９】フラグメントＩＤ管理テーブル４３の１例を示す図。
【図１０】フラグメント復元管理テーブル４４の１例を示す図。
【図１１】復元パラメータ管理テーブル４５の１例を示す図。
【図１２】Ｌ２ＳＷ２２−１が備えるポート管理テーブル４１Ａと、Ｌ２ＳＷ２２−２が備えるポート管理テーブル４１Ｂの設定値の１例を示す図。
【図１３】スイッチング情報管理テーブル４２の内容変化を説明するための図。
【図１４】フラグメントＩＤ管理テーブル４３の内容変化を説明するための図。
【図１５】フラグメント復元管理テーブル４４の内容変化を説明するための図。
【図１６】復元パラメータ管理テーブル４５の内容変化を説明するための図。
【図１７】フレーム受信処理ルーチン６０の１実施例を示すフローチャート。
【図１８】フレーム分割処理ルーチン７０の１実施例を示すフローチャート。
【図１９】フレーム復元処理ルーチン８０の１実施例を示すフローチャート。
【手続補正２９】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2009065429.tif 000022