サービスネットワークとホームネットワークとの間でフレームを転送する通信装置において、L2スイッチと接続するバッファ装置であって、前記L2スイッチが備えるフォワーディングテーブル、および前記L2スイッチから前記ホームネットワークへフレームを送信する出力ポートのリンク速度を監視するL2監視手段と、前記サービスネットワークから取得したフレームにタグを挿入し、また、前記L2スイッチのタグスイッチングを制御するL2制御手段と、前記出力ポート毎に対応したシェーパを備え、前記L2スイッチを監視した結果および前記シェーパの状態に基づいて、タグ挿入後のフレームを前記L2スイッチへ送信するタイミングを制御するスケジューリングを行うスケジューラ手段と、前記スケジューリングの結果に応じて、前記スケジューラ手段が一時的にフレームを蓄積するバッファ手段と、を備えることを特徴とするバッファ装置。前記スケジューラ手段は、前記L2スイッチを監視した結果に基づいてフレームの出力対象となる出力ポートを判別し、出力対象の出力ポートに対応したシェーパの状態を確認した結果、対象の全ての出力ポートへの出力が不可能な場合、前記フレームを前記バッファ手段に蓄積し、対象の一部の出力ポートへの出力が不可能な場合、前記フレームをコピーし、一方のフレームのタグを書き換えて前記バッファ手段に蓄積し、他方のフレームのタグを書き換えて出力可能な出力ポートへ送信する、ことを特徴とする請求項1に記載のバッファ装置。前記スケジューラ手段は、前記バッファ手段を確認し、出力可能状態となった出力ポートへ送信するフレームが前記バッファ手段に存在する場合、当該フレームの出力先となる出力ポートが1つのときは、前記バッファ手段から取り出して前記出力可能状態となった出力ポートへ送信し、当該フレームの出力先となる出力ポートが複数のときは、他の出力ポートの出力状態に応じて送信を行う、ことを特徴とする請求項2に記載のバッファ装置。前記スケジューラ手段は、前記L2スイッチとの間の接続リンクの輻輳状態を示す情報に基づいて、前記L2スイッチへ送信するフレームを制御する、ことを特徴とする請求項1、2または3に記載のバッファ装置。前記タグスイッチングによりVLANを構成する、ことを特徴とする請求項1~4のいずれか1つに記載のバッファ装置。請求項1~5のいずれかに記載のバッファ装置を、L2スイッチの前段に備える、ことを特徴とする通信装置。サービスネットワークとホームネットワークとの間でフレームを転送する通信装置において、L2スイッチと接続するバッファ装置のフレーム送信方法であって、前記L2スイッチが備えるフォワーディングテーブル、および前記L2スイッチから前記ホームネットワークへフレームを送信する出力ポートのリンク速度を監視するL2監視ステップと、前記サービスネットワークから取得したフレームにタグを挿入し、また、前記L2スイッチのタグスイッチングを制御するL2制御ステップと、前記L2スイッチを監視した結果および前記出力ポート毎に対応したシェーパの状態に基づいて、タグ挿入後のフレームを前記L2スイッチへ送信するタイミングを制御するスケジューリングを行うスケジューリングステップと、を含むことを特徴とするフレーム送信方法。前記スケジューリングステップでは、前記L2スイッチを監視した結果に基づいてフレームの出力対象となる出力ポートを判別し、出力対象の出力ポートに対応したシェーパの状態を確認した結果、対象の全ての出力ポートへの出力が不可能な場合、前記フレームをバッファに蓄積し、対象の一部の出力ポートへの出力が不可能な場合、前記フレームをコピーし、一方のフレームのタグを書き換えて前記バッファに蓄積し、他方のフレームのタグを書き換えて出力可能な出力ポートへ送信する、ことを特徴とする請求項7に記載のフレーム送信方法。前記スケジューリングステップでは、前記バッファを確認し、出力可能状態となった出力ポートへ送信するフレームが前記バッファに存在する場合、当該フレームの出力先となる出力ポートが1つのときは、前記バッファから取り出して前記出力可能状態となった出力ポートへ送信し、当該フレームの出力先となる出力ポートが複数のときは、他の出力ポートの出力状態に応じて送信を行う、ことを特徴とする請求項8に記載のフレーム送信方法。前記スケジューリングステップでは、前記L2スイッチとの間の接続リンクの輻輳状態を示す情報に基づいて、前記L2スイッチへ送信するフレームを制御する、ことを特徴とする請求項7、8または9に記載のフレーム送信方法。前記タグスイッチングによりVLANを構成する、ことを特徴とする請求項7~10のいずれか1つに記載のフレーム送信方法。しかしながら、上記従来の技術によれば、L2スイッチを基本的な機能のみを有する安価なデバイスで実現することは装置コストの面で有利である。一方で、高い性能を持つバッファリング機能またはフロー制御方式を有するL2スイッチは概して高価である。そのため、低い装置コストと高いサービス品質を両立させることが困難である、という問題があった。本発明は、上記に鑑みてなされたものであって、安価なL2スイッチを用いた通信装置においてバッファリング機能を実現可能なバッファ装置を得ることを目的とする。上述した課題を解決し、目的を達成するために、本発明は、サービスネットワークとホームネットワークとの間でフレームを転送する通信装置において、L2スイッチと接続するバッファ装置であって、前記L2スイッチが備えるフォワーディングテーブル、および前記L2スイッチから前記ホームネットワークへフレームを送信する出力ポートのリンク速度を監視するL2監視手段と、前記サービスネットワークから取得したフレームにタグを挿入し、また、前記L2スイッチのタグスイッチングを制御するL2制御手段と、前記出力ポート毎に対応したシェーパを備え、前記L2スイッチを監視した結果および前記シェーパの状態に基づいて、タグ挿入後のフレームを前記L2スイッチへ送信するタイミングを制御するスケジューリングを行うスケジューラ手段と、前記スケジューリングの結果に応じて、前記スケジューラ手段が一時的にフレームを蓄積するバッファ手段と、を備えることを特徴とする。本発明によれば、安価なL2スイッチを用いた通信装置においてバッファリング機能を実現できる、という効果を奏する。以下に、本発明にかかる通信装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。実施の形態.図1は、本実施の形態にかかるバッファ装置を搭載した通信装置であるホームゲートウェイを含むネットワークの構成例を示す図である。このネットワークの構成は、一般的によく知られている構成である。ネットワークは、サービスネットワーク1と、ホームゲートウェイ2と、ホームネットワーク3と、から構成される。ホームゲートウェイ2は、インターネットプロバイダなどのサービスネットワーク1と、家庭内のネットワークであるホームネットワーク3とを接続する位置に配置されている。ホームゲートウェイ2は、物理インタフェース21と、L3プロセッサ22と、物理インタフェース23と、L3-L2間インタフェース24と、物理インタフェース25と、L3-L2間インタフェース26と、L2プロセッサ27と、物理インタフェース28と、を備える。L3プロセッサ22は、汎用プロセッサであって、レイヤ3の転送機能、スケジューラ、およびL2プロセッサの制御といった機能を備えるL3スイッチであり、バッファ装置を構成する。L2プロセッサ27は、ここでは、レイヤ2の転送機能に特化したL2スイッチである。物理インタフェース21はL3プロセッサ22の入力側のインタフェースであり、物理インタフェース23はL3プロセッサ22の出力側のインタフェースであり、物理インタフェース25はL2プロセッサ27の入力側のインタフェースであり、物理インタフェース28はL2プロセッサ27の出力側のインタフェースである。また、L3-L2間インタフェース24およびL3-L2間インタフェース26は、L3プロセッサ22とL2プロセッサ27との間を接続するインタフェースである。つぎに、L3プロセッサ22の構成について説明する。図2は、L3プロセッサ22の構成例を示す図である。L3プロセッサ22は、L3制御部221と、疑似L2機能部222と、L2情報テーブル部223と、スケジューラ部224と、バッファ部225と、を備える。なお、L3制御部221が、図1に示す転送機能を実現し、疑似L2機能部222およびL2情報テーブル部223が、図1に示すL2制御を実現し、スケジューラ部224およびバッファ部225が、図1に示すスケジューラを実現する。L3制御部221は、レイヤ3のパケット転送制御機能部である。L3制御部221は一般的なルータが備える機能、すなわち、IPInternetProtocolルーティング、アドレス解決、ネットワークアドレス変換、パケットフィルタなどの機能と、上記機能によるパケット処理の結果、ホームネットワーク3側へ送信するべきパケットをイーサネットフレーム化し、擬似L2機能部222へ渡す機能と、を有する。擬似L2機能部222は、L3-L2間インタフェース26を使用してL2プロセッサ27の制御監視を行い、上記制御監視の結果を示す情報をL2情報テーブル部223に保持する。また、擬似L2機能部222は、L2情報テーブル部223の内容に基づいて、L2プロセッサ27に向けて送信するパケットの処理を行う。また、擬似L2機能部222は、L3-L2間インタフェース26経由で、L2プロセッサ27から、少なくとも、L2プロセッサ27が入力フレームに付与されているVLANVirtualLocalAreaNetworkタグに基づいて出力ポートである物理インタフェース28以下、出力ポートとするを決定するための情報であるVLAN転送テーブルの設定、L2プロセッサ27が入力フレームの宛先アドレスを基に出力ポートを決定するための情報であるFDBForwardingDatabase、およびL2プロセッサ27の各物理ポートのリンク速度、の各情報を取得する。ここで、L3-L2間インタフェース26は、一般的なL2プロセッサ27が備えるものである。すなわち、ホームゲートウェイ2が、一般的なL2プロセッサ27を使用して実現可能であることを示している。L2情報テーブル部223は、擬似L2機能部222におけるL2プロセッサ27の制御監視の結果を保持する記憶部である。L2情報テーブル部223は、VLAN情報テーブルと、FDB情報テーブルと、リンク速度情報と、から構成される。VLAN情報テーブルは、出力ポートからVLANIDを参照するためのテーブルである。図3は、VLAN情報テーブルの構成例を示す図である。VLAN情報テーブルは、出力ポートと、VLANと、から構成される。出力ポートの各組み合わせに対して、VLANIDが付与されていることを示す。擬似L2機能部222は、転送に使用され得る出力ポートの組み合わせに対してVLANIDを割り当て、VLAN情報テーブルに保持する。このとき、擬似L2機能部222は、割当結果を、L3-L2間インタフェース26経由でL2プロセッサ27のVLAN転送テーブルに設定する。ホームネットワーク3側の物理インタフェース28の数が比較的小さく、転送に使用され得る出力ポートの組み合わせの数が、L2プロセッサ27に設定可能なVLANIDの最大値より小さい場合、全ての出力ポートの組み合わせについてVLANIDを割り当てることができる。このような場合、擬似L2機能部222は、転送処理を開始する以前にVLAN情報テーブルを一度だけ設定すれば、その後VLAN情報テーブルの更新維持を要さない。すなわち、擬似L2機能部222は、VLAN情報テーブルを静的な設定とすることができる。一方、ホームネットワーク3側の物理インタフェース28の数が比較的大きく、転送に使用され得る出力ポートの組み合わせの数が、L2プロセッサ27に設定可能なVLANIDの最大値より大きい場合、擬似L2機能部222は、動的なVLAN情報テーブルの更新維持を必要とする。FDB情報テーブルは、フレームの宛先MACアドレスから出力ポートおよびVLANIDを求めるためのテーブルである。図4は、FDB情報テーブルの構成例を示す図である。FDB情報テーブルは、MACアドレスと、出力ポートと、VLANと、から構成される。擬似L2機能部222は、L2プロセッサ27に設定されているFDBを監視し、FDBに登録されているMACアドレスと出力ポートの対応関係をFDB情報テーブルに保持する。また、擬似L2機能部222は、上記保持された出力ポートを基に、VLAN情報テーブル図3参照を参照し、出力ポートに対応するVLANIDをFDB情報テーブルに保持する。リンク速度情報は、擬似L2機能部222が、L3-L2間インタフェース26経由で取得したL2プロセッサ27の各出力ポートのリンク速度を示す情報である。つづいて、擬似L2機能部222が、L2情報テーブル部223に保持された内容に基づいて、L2プロセッサ27へ出力するパケットに対する処理について説明する。擬似L2機能部222は、L3制御部221からホームネットワーク3へ送信するイーサネットフレームを受け取ると、イーサネットフレームの宛先MACアドレスに基づいて、L2情報テーブル部223内のFDB情報テーブルを参照し、VLANIDを決定する。なお、FDB情報テーブルにイーサネットフレームと同一の宛先MACアドレスが存在しない場合、擬似L2機能部222は、全出力ポートに出力することを示すVLANIDを上記VLANIDとして決定する。そして、擬似L2機能部222は、イーサネットフレームにVLANタグを挿入し、VLANタグに上記VLANIDを付与する。擬似L2機能部222は、上述したように処理されたイーサネットフレームをスケジューラ部224へ渡す。なお、擬似L2機能部222が、L2プロセッサ27を監視し、また、イーサネットフレームにVLANタグを挿入しているが、これに限定するものではない。例えば、擬似L2機能部222を2つに分割し、L2プロセッサ27を監視する機能と、イーサネットフレームにVLANタグを挿入する機能と、をそれぞれ別の構成が行うようにしてもよい。スケジューラ部224は、L2情報テーブル部223を参照し、L2のリンク速度を考慮したバッファリングとフレーム送信を実施する。まず、スケジューラ部224は、L2情報テーブル部223のリンク速度情報を参照し、L2プロセッサ27の各出力ポートのリンク速度を監視する。スケジューラ部224は、出力ポート毎にリンク速度に応じて制御可能なシェーパ機構を備えており、各出力ポートへの出力レートがリンク速度を上回らないようにバッファリングと選択的なフレームのコピーおよび送信を行う。シェーパは、あるフレームについて通過の可否を判定し、通過不可能な場合には通過が可能となるタイミングを出力することによって、フレームの最大通過速度を制御する。一般的には、リーキバケットやトークンバケットといった方式が知られている。上記のバッファリングと選択的なフレームのコピーおよび送信について、フローチャートを用いて詳細に説明する。図5は、スケジューラ部224がフレームを受信した際の処理を示すフローチャートである。まず、スケジューラ部224は、受信したフレームの出力対象の出力ポートをVLANタグに基づいて判別し、出力対象の出力ポートそれぞれに対応したシェーパ状態を参照し、出力可能であるかどうかを確認するステップS1。出力不可能な出力ポートの数が0の場合ステップS2:Yes、スケジューラ部224は、そのままフレームを送信しステップS3、送信した出力対象の出力ポートのシェーパを出力不可能状態に更新するステップS4。出力不可能な出力ポートの数が0ではない、すなわち、0より大きい場合ステップS2:No、さらに、スケジューラ部224は、出力可能な出力ポートの数を確認するステップS5。出力可能な出力ポートの数が0ではない、すなわち、0より大きい場合ステップS5:No、スケジューラ部224は、フレームをコピーしステップS6、一方のフレーム例えば、コピー先フレームのVLANタグを出力不可能であった出力ポート全てに送信することを意味する値に書き換えてバッファ部225にバッファ蓄積しステップS7、もう一方のフレーム例えば、コピー元フレームのVLANタグを出力可能であった出力ポート全てに送信することを意味する値に書き換えて送信するステップS8。出力可能な出力ポートの数が0の場合ステップS5:Yes、スケジューラ部224は、フレームをそのままバッファ部225にバッファ蓄積するステップS9。このような処理を行うことによって、スケジューラ部224は、低速リンクである出力ポートと高速リンクである出力ポートの双方に出力すべきフレームについて、それぞれの速度に基づいたフレーム送信が可能となる。そのため、ホームゲートウェイ2では、L3プロセッサ22内でバッファリングを行うため、L2プロセッサ27は従来と同じものを使用しつつ、バッファ容量を目標性能に合わせて設定することが可能となる。つぎに、スケジューラ部224が、バッファ部225にバッファされているフレームを送信する処理について説明する。図6は、スケジューラ部224がバッファ部225にバッファされているフレームを送信する処理を示すフローチャートである。スケジューラ部224は、出力ポート毎に存在するシェーパのいずれかが出力可能状態となると、それを契機として、出力可能状態となった出力ポートへ送信するフレームがバッファ部225に存在するかどうかを確認するステップS11。送信するフレームが存在しない場合ステップS11:No、スケジューラ部224は、シェーパを出力可能状態に更新しステップS12、処理を終了する。送信するフレームが存在する場合ステップS11:Yes、スケジューラ部224は、該当フレームの出力先が、上記出力可能状態となった出力ポート以外に存在するかどうかを確認するステップS13。上記出力可能状態となった出力ポート以外に出力先が存在しない場合ステップS13:No、スケジューラ部224は、該当フレームを送信するステップS14。上記出力可能状態となった出力ポート以外に出力先が存在する場合ステップS13:Yes、スケジューラ部224は、該当フレームを送信する送信方式の選択を行うステップS15。具体的に、スケジューラ部224は、逐次送信、一括送信、または遅延付き逐次送信のいずれかの送信方式を選択し、選択された方式でフレームを送信する。逐次送信を選択した場合ステップS15:逐次送信、スケジューラ部224は、逐次送信処理を行うステップS16。具体的に、スケジューラ部224は、フレームをコピーし、一方のフレームのVLANタグを出力可能状態となった出力ポートのみを出力先とすることを意味する値に書き換え、送信する。また、もう一方のフレームのVLANタグを、上記出力可能状態となった出力ポート以外のフレームの出力先全てに送信することを意味する値に書き換え、引き続きバッファ部225に保持する。この方式では、スケジューラ部224は、出力先の出力ポートが送信可能状態となる毎にフレームをコピーし、1つずつ出力する。一括送信を選択した場合ステップS15:一括送信、スケジューラ部224は、一括送信処理を行うステップS17。具体的に、スケジューラ部224は、フレームの全ての出力先が出力可能となるまで、フレームをバッファ部225に保持する。すなわち、当該フレームが該当出力ポートに対して出力可能となったことを記録し、当該フレームが全ての出力ポートに対して出力可能となった場合、フレームを送信し、まだ出力ポートのうち、出力不可能な出力ポートが残っている場合、当該フレームを引き続きバッファ部225に保持する。この方式では、スケジューラ部224は、逐次送信と比較して、フレームのコピーを抑制できる一方、送信可能状態となった後もフレームの送信が保留されるため、フレーム送信までの遅延が大きくなる。遅延付き逐次送信を選択した場合ステップS15:遅延付き逐次送信、スケジューラ部224は、一定期間フレームの送信を保留した後にフレームを送信、すなわち、遅延付き逐次送信処理を行うステップS18。具体的に、スケジューラ部224は、当該フレームが該当出力ポートに対して出力可能となったことを記録し、一定期間のタイマを起動する。ただし、当該フレームについて既にタイマが起動済みの場合、タイマを新たに起動しない。タイマが満了した場合、またはタイマが起動済みかつ当該フレームが全ての出力ポートに対して出力可能となった場合、スケジューラ部224は、その時点で出力可能となっている出力ポートに対してフレームを送信する。すなわち、スケジューラ部224は、フレームのVLANタグを出力可能状態となった出力ポートのみを出力先とすることを意味する値に書き換えて送信するとともに、まだ出力不可能である出力ポートが存在する場合には、フレームをコピーし、コピーしたフレームのVLANタグを、上記出力可能状態となった出力ポート以外のフレームの出力先全てに送信することを意味する値に書き換えて引き続きバッファ部225に保持する。この方式では、スケジューラ部224は、逐次方式と比較して、一定期間の間フレームのコピーを抑制する効果を得ることができる一方、送信可能状態となった後もフレームの送信が保留されるため、フレーム送信までの遅延が大きくなる。また、一括送信方式と比較した場合、フレーム送信までの遅延は、最大でも上記一定期間に限られるため、小さくなるが、フレームのコピーの頻度は大きくなる。ここで、スケジューラ部224において、上述した3つの送信方式を選択する方法について説明する。3つの送信方式のうち、固定的にいずれかを選択する方法と、3つの送信方式のいずれかを状況に応じて選択する方法がある。固定的にいずれかを選択する方法については特別な説明を要さないので記載を省略する。一方、上記3つの送信方式のいずれかを状況に応じて選択する方法については以下に説明する。上述したように3つの送信方式には、フレームコピーの回数と、フレーム送信までの遅延と特徴的な差異がある。フレームコピーの回数が大きくなると、L3プロセッサ22とL2プロセッサ27との間のリンクを通過するフレーム数が大きくなるため、上記リンクにおいて輻輳が発生する可能性が高くなる。そのため、スケジューラ部224は、上記輻輳の発生確率を示す情報として上記リンクへ送信するためのキュー長を監視し、キュー長に応じて送信方式を選択する。例えば、キュー長に閾値Aを設定し、キュー長<Aの場合には、コピーが多いが遅延の小さい送信方式を使用し、A<キュー長の場合にはコピーが少なく、遅延が小さい送信方式を使用する。なお、この選択方法は一例であり、これに限定するものではない。例えば、上記閾値を2つ以上設定し、2つ以上の送信方式を使い分けることも可能である。以上説明したように、本実施の形態では、通信装置内において、一般的なL2スイッチの前段に汎用的なL3スイッチを配置し、L3スイッチがバッファ装置を構成して、L2スイッチからホームネットワーク側への出力ポートの送信状態に基づいて、サービスネットワーク側からL2スイッチへ入力されるフレームを出力ポート毎に制御することとした。これにより、通信装置では、安価なL2スイッチを用いつつ、バッファリング機能を実現でき、低パケットロス、かつ、高いサービス品質を得ることができる。