"パケットを伝送する伝送装置において、前記パケットを所定の粒度の帯域でシェーピングするシェーピング回路と、前記シェーピング回路に入力される、前記所定の粒度の帯域より小さい帯域の帯域補正パケットを生成するパケット生成回路と、を有することを特徴とする伝送装置。前記パケットの出力先を切替えるスイッチをさらに有し、前記帯域補正パケットは、前記スイッチを介して前記シェーピング回路に入力されることを特徴とする請求項1記載の伝送装置。前記シェーピング回路の出力側に設けられ、前記帯域補正パケットを削除するプロセッサをさらに有することを特徴とする請求項1または2に記載の伝送装置。前記帯域補正パケットは、自身が帯域補正パケットであることを示す情報を有し、前記プロセッサは、前記情報に基づいて前記帯域補正パケットを削除することを特徴とする請求項3記載の伝送装置。前記帯域補正パケットは、前記パケットの経路確認を行うためのチェックパターンを有していることを特徴とする請求項1乃至4のいずれかに記載の伝送装置。前記シェーピング回路は、前記パケットの有する優先度に基づいて前記パケットを出力し、前記帯域補正パケットは、最も優先度が高いことを特徴とする請求項1乃至5のいずれかに記載の伝送装置。パケットを伝送する伝送装置に具備されるインタフェースカードにおいて、前記パケットを所定の粒度の帯域でシェーピングするシェーピング回路と、前記シェーピング回路に入力される、前記所定の粒度の帯域より小さい帯域の帯域補正パケットを生成するパケット生成回路と、を有することを特徴とするインタフェースカード。しかし、トラヒックシェーピングのシェーパ設定レートは、パケットをシェーピングする粒度があるため、出力先の物理回線の帯域に対してずれが生じるという問題点があった。例えば、パケットをシェーピングするシェーピング回路の粒度を500kbpsとする。シェーピング回路のシェーパ設定レートシェーピング回路から出力されるパケットの帯域を2.0Mbpsとする。シェーピング回路の出力先の物理回線の帯域を1.980Mbpsとする。この場合、シェーピング回路の出力帯域は、物理回線の帯域に対し、20kbps2.0Mbps-1.980Mbps分だけ過剰になる。そのため、過剰分のパケットは、物理回線に出力される前に廃棄される。また、上記条件において、シェーピング回路のシェーパ設定レートを、1.5Mbpsにしたとする。この場合、シェーピング回路の出力帯域は、物理回線の帯域に対し、480kbps分不足1.5Mbps-1.980Mbpsする。そのため、物理回線は、その分帯域を余らせてしまう。本件はこのような点に鑑みてなされたものであり、パケットのシェーピング後の帯域と物理回線帯域とのずれを解消することができる伝送装置およびインタフェースカードを提供することを目的とする。上記課題を解決するために、パケットを伝送する伝送装置が提供される。この伝送装置は、前記パケットを所定の粒度の帯域でシェーピングするシェーピング回路と、前記シェーピング回路に入力される、前記所定の粒度の帯域より小さい帯域の帯域補正パケットを生成するパケット生成回路と、を有する。開示の装置によれば、パケットのシェーピング後の帯域と物理回線帯域とのずれを解消することができる。以下、実施の形態を、図面を参照して詳細に説明する。[第1の実施の形態]図1は、第1の実施の形態に係る伝送装置の一例を示した図である。図1に示すように、伝送装置は、インタフェースカード1およびスイッチ2を有している。インタフェースカード1は、図1では1枚しか示していないが、複数枚存在してもよい。インタフェースカード1は、図示しない部位によって物理回線からパケットを受信し、スイッチ2に出力する。スイッチ2は、パケットの経路を切替え、切替えた経路に対応するインタフェースカードにパケットを出力する。インタフェースカード1は、スイッチ2によって経路が切替えられたパケットを物理回線に出力する。インタフェースカード1は、シェーピング回路1aおよびパケット生成回路1bを有している。シェーピング回路1aは、パケットを所定の粒度の帯域でシェーピングする。例えば、シェーピング回路1aは、スイッチ2から出力されるパケットを所定の粒度の帯域でシェーピングし、出力する。シェーピングされたパケットは、物理回線に出力される。パケット生成回路1bは、シェーピング回路1aの所定の粒度の帯域より小さい帯域の帯域補正パケットを生成する。例えば、シェーピング回路1aのパケットをシェーピングする所定の粒度の帯域を500kbpsとすると、パケット生成回路1bは、それより小さい20kbpsの帯域補正パケットを生成する。パケット生成回路1bの生成した帯域補正パケットは、シェーピング回路1aに入力される。インタフェースカード1の各部は、例えば、集積回路を備える半導体チップによって形成される。図1の伝送装置の動作について説明する。以下では、シェーピング回路1aのパケットをシェーピングする所定の粒度の帯域を500kbps、シェーパ設定レートを2.0Mbps、パケットを出力する物理回線帯域を1980kbpsとして説明する。また、帯域補正パケットのトラヒッククラスは、最高優先度とする。パケット生成回路1bは、シェーピング回路1aの所定の粒度の帯域‘500kbps’より小さい帯域の帯域補正パケットを生成する。例えば、パケット生成回路1bは、20kbpsの帯域補正パケットを生成する。シェーピング回路1aには、パケット生成回路1bで生成された20kbpsの帯域補正パケットと、スイッチ2から出力されるパケットとが入力される。帯域補正パケットは、最高優先度のパケットであるので、シェーピング回路1aからは、20kbpsのフル帯域で出力される。従って、シェーピング回路1aのシェーピング設定レートの2.0Mbpsのうち、20kbpsは、帯域補正パケットによって費やされる。よって、スイッチ2から出力されるパケットの帯域は、シェーピング回路1aから出力されるとき、物理回線帯域と同じ1.980Mbpsとなる。すなわち、シェーピング回路1aは、パケットをシェーピングする所定の粒度の帯域より小さい帯域の帯域補正パケットが入力されることにより、所定の粒度の帯域より細かなシェーピングレートが可能になる。このように、伝送装置のパケット生成回路1bは、パケットをシェーピングする所定の粒度の帯域より小さい帯域の帯域補正パケットを生成し、シェーピング回路1aに入力する。これにより、シェーピング回路1aは、所定の粒度の帯域より細かなシェーピングレートが可能になり、パケットのシェーピング後の帯域と物理回線帯域とのずれを解消することができる。[第2の実施の形態]次に、第2の実施の形態を、図面を参照して詳細に説明する。図2は、第2の実施の形態に係る伝送装置のハードウェアブロックの一例を示した図である。図2に示すように、伝送装置は、インタフェースカード10およびスイッチ20を有している。図2では、インタフェースカード10は、1枚しか示していないが、複数枚存在してもよい。伝送装置は、例えば、SONETSynchronousOpticalNetwork/SDHSynchronousDigitalHierarchyネットワークや、Ethernet登録商標overSONET/SDHネットワークに適用されるレイヤ2スイッチである。インタフェースカード10は、物理回線からパケットを受信し、スイッチ20に出力する。スイッチ20は、パケットの経路を切替えて、所定のインタフェースカードに出力する。インタフェースカード10は、スイッチ20によって経路が切替えられたパケットを物理回線に出力する。インタフェースカード10は、入力インタフェース回路11、Ingress-NPUNPU:NetworkProcessingUnit12、Ingress-TMTM:TrafficManagement回路13、Egress-TM回路14、Egress-NPU15、出力インタフェース回路16、CPUCentralProcessingUnit17、およびFPGAFieldProgrammableGateArray18を有している。インタフェースカード10の各部は、例えば、集積回路を備える半導体チップによって形成される。入力インタフェース回路11は、物理回線からパケットを受信する。Ingress-NPU12は、入力インタフェース回路11によって受信されたパケットを、例えば、クラシファイフィルタリング、パケット種別の識別、クラス分け等し、用途に応じてVLANVirtualLocalAreaNetworkタグの取り外しや、装置内メタデータの付与などのパケット処理を行うプロセッサである。Ingress-TM回路13は、Igress-NPU12から出力されるパケットを、例えば、VOQVirtualOutputQueueと呼ばれる出力回線パケットの出力先物理回線ごとのキューパケットの出力先インタフェースカードおよび出力先インタフェースごとに用意されたキューに格納し、ある出力回線向けのパケットが、他の出力回線向けのパケットに影響を与えないようにする。キューは、パケットを一時的に格納させる所定の容量を持つバッファであり、例えば、DRAMDynamicRandomAccessMemory、SRAMStaticRandomAccessMemory等のメモリで実現される。また、Ingress-TM回路13は、パケットの優先度クラスごとにパケット送出の優先制御を行いながら、パケットをスイッチ20に出力する。スイッチ20は、例えば、複数のインタフェースカードのIngress-TM回路から出力されるパケットを、送出したいインタフェースカードのEgress-TM回路へスイッチングする。Egress-TM回路14は、スイッチ20によってスイッチングされたパケットを、所定の粒度の帯域でシェーピングする。例えば、Egress-TM回路14は、それぞれの出力回線に対応した、トラヒッククラスごとのキューにパケットを格納し、シェーピングのトラヒック送出量のマネジメントを行う。Egress-NPU15は、Egress-TM回路14から出力されたパケットをフィルタリングしたり、クラス分けしたり、また、VLANタグを付加、変更したり、パケットに様々な処理を施すプロセッサである。また、Egress-NPU15は、Egress-TM回路14から出力される帯域補正パケットを廃棄する。出力インタフェース回路16は、例えば、1GE等のEthernet回線や、E1-Xv等のVCATVirtualConcatenation回線へパケットを出力する。出力インタフェース回路16は、FIFOバッファを具備しているが、このFIFOバッファは、パケットをトラヒッククラスでクラス分けせず、パケットがオーバフローした場合は、無差別に破棄する。CPU17は、インタフェースカード10全体を制御している。CPU17は、FPGA18を介して、インタフェースカード10の各部を制御している。FPGA18は、CPU17とインタフェースカード10の各部との間のデータのやり取りを仲介する。また、FPGA18は、CPU17の指示に基づいて、Egress-TM回路14の出力帯域Egress-TM回路14でパケットをシェーピングした後の帯域と、物理回線帯域とのずれを解消するための帯域補正パケットを生成する。FPGA18は、生成した帯域補正パケットを、CPU17の指示に基づいて、Ingress-TM回路13またはEgress-TM回路14へ出力する。図3は、帯域補正パケットのフォーマット例を示した図である。図3に示すように、帯域補正パケットは、20バイトのメタデータ領域と、64バイトのペイロード領域とを有している。メタデータ領域には、インタフェースカード10の制御に用いられるヘッダ情報が格納される。例えば、メタデータ領域には、フロータイプ、トラヒッククラス、ターゲットIF-CardID、ターゲットTMキューID、およびフラグの情報が格納される。<フロータイプ>フロータイプは、帯域補正パケットのインタフェースカード10内の伝送経路を選択するための情報である。例えば、フロータイプは、FPGA18で生成された帯域補正パケットが、Ingress-TM回路13へ出力されるのかまたはEgress-TM回路14へ出力されるのかを示す。例えば、フロータイプが、‘Ingress-TM回路13へ出力される’旨の情報を示している場合、FPGA18で生成された帯域補正パケットは、Ingress-TM回路13へ出力される。なお、Ingress-TM回路13へ出力された帯域補正パケットは、スイッチ20、Egress-TM回路14、およびEgress-NPU15の経路を辿り、Egress-NPU15で廃棄される。また、フロータイプが、‘Egress-TM回路14へ出力される’旨の情報を示している場合、FPGA18で生成された帯域補正パケットは、Egress-TM回路14へ出力される。なお、Egress-TM回路14へ出力されたパケットは、Egress-NPU15へ出力され、Egress-NPU15で廃棄される。<トラヒッククラス>トラヒッククラスは、帯域補正パケットの優先度を示す。帯域補正パケットのトラヒッククラスは、最高優先クラスに設定される。すなわち、Egress-TM回路14に入力された帯域補正パケットは、廃棄されずにEgress-NPU15に出力される。<ターゲットIF-CardID>ターゲットIF-CardIDは、帯域補正パケットの出力先インタフェースカードを示す。<ターゲットTMキューID>ターゲットTMキューIDは、Egress-TM回路14の有するキュー番号を示す。Egress-TM回路14は、以下で説明するが、出力先物理回線に対応したキューを有している。ターゲットTMキューIDは、帯域補正パケットが格納されるEgress-TM回路14のキュー番号を示す。<フラグ>フラグは、当該パケットが帯域補正パケットであることを示す。これにより、Egress-NPU15は、Egress-TM回路14から出力されるパケットが帯域補正パケットであるか否か判断することができる。ペイロード領域の領域31には、16バイトのヘルスチェックパターン1が格納される。領域32には、16バイトのヘルスチェックパターン2が格納される。ヘルスチェックパターン1,2は、固定の値であり、例えば、ぞれぞれ‘0x5A5A...5A’と‘0xA5A5...A5’の値をとる。帯域補正パケットを最終的に受信するEgress-NPU15は、ヘルスチェックパターン1,2によって、帯域補正パケットが伝搬した経路のエラーチェックを行うことができる。なお、帯域補正パケットは、伝送装置内で完結するパケットであるので、例えば、EthernetフレームのようなCRC-32等を付加せず、ヘルスチェックパターン1,2で処理を簡素化する。ペイロード領域の残りの領域には、ペイロード領域の長さを64バイトにするためのパディングが格納される。例えば、ペイロード領域の残りの領域には、‘0’が格納される。なお、ペイロード領域の長さは、64バイトでなくてもよい。例えば、帯域補正パケットの伝送装置内を伝搬する帯域によって変えてもよい。図4は、伝送装置の動作を説明する図のその1である。図4では、FPGA18で生成された帯域補正パケットがEgress-TM回路14に出力される場合の動作について説明する。図4において、図2と同じものには同じ符号を付し、その説明を省略する。なお、図4に示す矢印A11は、スイッチ20によって経路がスイッチングされたユーザパケットの経路を示している。矢印A12は、FPGA18によって生成された帯域補正パケットの経路を示している。入力インタフェース回路11は、物理回線に対応して、パケットを受信するインタフェース図4中のIF1Rx~IFnRxをn個有している。また、入力インタフェース回路11は、パケットを受信するインタフェースに対応した受信バッファ図4中のRxBufferをn個有している。Ingress-TM回路13は、n個のキュー図4中のIngressQueuesを有している。Ingress-NPU12は、入力インタフェース回路11から出力されるパケットを、Ingress-TM回路13の所定のキューに出力する。Ingress-TM回路13のキューに格納されたパケットは、スイッチ20によって、所定のインタフェースカードのEgress-TM回路の所定のキューに格納される。Egress-TM回路14は、出力インタフェース回路16の出力先物理回線に対応して、n個のキュー図4中のTMQueuesを有している。また、Egress-TM回路14は、出力インタフェース回路16の出力先物理回線に対応して、n個のシェーパ図4中のShaperを有している。n個のシェーパのそれぞれは、トークンバケットアルゴリズムに基づいて、対応するキューから、トラヒッククラスの優先度の高いパケットを取得し、Egress-NPU15へ出力する。出力インタフェース回路16は、出力先物理回線に対応して、FIFOバッファ図4中のTxFIFOを有している。また、出力インタフェース回路16は、出力先物理回線に対応して、n個のインタフェース図4中のIF1Rx~IFnRxを有している。ここで、伝送装置に接続されている物理回線帯域を1.980Mbpsとする。また、Egress-TM回路14のシェーピングの粒度を500kbpsとする。また、Egress-TM回路14のシェーパ設定レートを2.0Mbpsとする。また、FPGA18によって生成される帯域補正パケットのメタデータのフロータイプには、‘Egress-TM回路14へ出力される’旨の情報が格納されているとする。この場合、FPGA18によって生成された帯域補正パケットは、矢印A12に示すように、Egress-TM回路14に出力され、Egress-NPU15に受信される。帯域補正パケットのメタデータには、図3で説明したように、当該パケットが帯域補正パケットであることを示すフラグが含まれている。Egress-NPU15は、帯域補正パケットのメタデータに含まれるフラグに基づいて、受信したパケットが帯域補正パケットであることを認識し、廃棄する。これにより、帯域補正パケットは、出力インタフェース回路16を介して物理回線に出力されない。なお、スイッチ20から出力されたユーザパケットは、矢印A11に示すように、Egress-TM回路14、Egress-NPU15、および出力インタフェース回路16を介して、物理回線へ出力される。FPGA18は、Egress-TM回路14のシェーパ設定レートEgress-TM回路14から出力されるパケットの帯域と、物理回線帯域との差の帯域で帯域補正パケットを送出する。例えば、上記例より、Egress-TM回路14のシェーパ設定レートは、2.0Mbpsであり、物理回線帯域は、1980kbpsなので、FPGA18は、20kbpsの帯域の帯域補正パケットを送出する。より具体的には、帯域補正パケットのパケット長は64バイトなので、FPGA18は、25.6ms周期39.1fpsで帯域補正パケットを送出する。FPGA18からEgress-TM回路14へ送出された帯域補正パケットは、メタデータのターゲットTMキューIDに基づいて、Egress-TM回路14の所定のキューに格納される。例えば、ターゲットTMキューIDが‘1’を示している場合、帯域補正パケットは、図4に示すForIF1のShaperに対応するTMQueuesEgress-TM回路14の一番上のTMQueuesに格納される。FPGA18によって生成された帯域補正パケットのトラヒッククラスは、図3で説明したように、最高優先クラスである。従って、Egress-TM回路14のシェーパは、キューに格納された帯域補正パケットを最優先でEgress-NPU15に出力する。これにより、2.0Mbpsのシェーパ設定レートのうち、20Mbpsは、帯域補正パケットによって消費される。つまり、Egress-TM回路14から出力されるユーザパケットの帯域は、1.980Mbpsとなる。例えば、ForIF1のShaperからは、1.980Mbpsのユーザパケットが出力される。上記したように、帯域補正パケットは、Egress-NPU15で廃棄される。従って、Egress-NPU15からは、帯域補正パケットは出力されず、1.980Mbpsのユーザデータが出力インタフェース回路16へ出力される。これにより、出力インタフェース回路16でのパケットのオーバフローによる廃棄を回避できる。また、物理回線の1980kpsの帯域をフルに使い切ることができる。なお、Egress-NPU15は、帯域補正パケットを廃棄するとき、帯域補正パケットのヘルスチェックパターンを確認する。例えば、Egress-NPU15は、受信した帯域補正パケットのヘルスチェックパターン1,2がそれぞれ‘0x5A5A...5A’および‘0xA5A5...A5’であるか否か確認する。Egress-NPU15は、ヘルスチェックパターン1,2が前記の値でない場合、帯域補正パケットの伝搬してきた経路に異常があることを認識する。例えば、Egress-NPU15は、Egress-TM回路14とEgress-NPU15との間の経路に異常があると認識する。図5は、伝送装置の動作を説明する図のその2である。図5では、FPGA18で生成された帯域補正パケットがIngress-TM回路13に出力される場合の動作について説明する。図5において、図4と同じものには同じ符号を付し、その説明を省略する。図5では、FPGA18で生成されたパケットは、矢印A13に示すように、Ingress-TM回路13に出力され、スイッチ20を介してEgress-TM回路14へ出力される。FPGA18は、生成する帯域補正パケットのメタデータのターゲットIF-CardIDに、インタフェースカード10のIDを設定する。これにより、FPGA18からIngress-TM回路13へ出力された帯域補正パケットは、矢印A13に示すようにスイッチ20を介して、インタフェースカード10のEgrss-TM回路14に受信される。Egress-TM回路14によって受信された帯域補正パケットは、メタデータのターゲットTMキューIDに基づいて、所定のキューに格納される。なお、Egress-TM回路14のシェーピング処理は、図4と同様であり、その説明を省略する。Egress-NPU15は、帯域補正パケットを廃棄するとき、帯域補正パケットのヘルスチェックパターンを確認する。図5の場合、帯域補正パケットは、Ingress-TM回路13に出力され、スイッチ20、Egress-TM回路14を介して、Egress-NPU15に受信される。従って、図5の場合、Egress-NPU15は、Ingress-TM回路13とEgress-NPU15との間の経路の異常を確認することができる。図6は、FPGAの機能ブロックの一例を示した図である。図6には、パケット生成に関するFPGAの機能ブロックが示してある。図6に示すように、FPGA18は、IOInputOutputレジスタ41、帯域補正パケット生成回路42、スケジューラ43、FIFOバッファ44,45、および制御パケット生成回路46を有している。IOレジスタ41には、CPU17によってパラメータ設定がされる。CPU17によって設定されるパラメータは、図3で説明したメタデータフロータイプ、トラヒッククラス、ターゲットIF-CardID、ターゲットTMキューID、およびフラグである。また、CPU17によってIOレジスタ41に設定されるパラメータには、帯域補正パケットの送出の有効または無効を示す情報がある。また、CPU17によってIOレジスタ41に設定されるパラメータには、帯域補正パケットの送出周期がある。帯域補正パケット生成回路42は、IOレジスタ41からの指示に応じて、帯域補正パケットを生成する。例えば、帯域補正パケット生成回路42は、図3で説明した帯域補正パケットを生成する。帯域補正パケット生成回路42は、Egress-TM回路14の有するキューに対応して複数設けられる。例えば、帯域補正パケット生成回路42は、図4に示すForIF1~ForIFnに対応するn個のQueuesに対応して、n個設けられる。スケジューラ43は、n個の帯域補正パケット生成回路42から出力される帯域補正パケットと、制御パケット生成回路46から出力される制御パケットとを、所定のスケジューリングに基づき、FIFOバッファ44またはFIFOバッファ45のいずれか一方に出力する。例えば、スケジューラ43は、帯域補正パケットのメタデータのフロータイプに‘Ingress-TM回路13へ出力される’旨の情報が格納されている場合、FIFOバッファ44へ出力する。スケジューラ43は、帯域補正パケットのメタデータのフロータイプに‘Egress-TM回路14へ出力される’旨の情報が格納されている場合、FIFOバッファ45へ出力する。なお、スケジューラ43のスケジューリング方式は、例えば、ラウンドロビンである。FIFOバッファ44は、スケジューラ43から出力された帯域補正パケットまたは制御パケットを一時保持し、Ingress-TM回路13へ出力する。FIFOバッファ45は、スケジューラ43から出力された帯域補正パケットまたは制御パケットを一時保持し、Egress-TM回路14へ出力する。制御パケット生成回路46は、例えば、伝送路の監視用のパケットなどを生成する。図7は、FPGAの動作を説明する図である。図7において、図6と同じものには同じ符号を付し、その説明を省略する。IOレジスタ41には、帯域補正パケットのメタデータを生成するためのパラメータがCPU17によって設定される。図7中のFlowType、TrafficClass、TargetIF-CardID、TargetTMQueueID、およびFlagは、CPU17によって設定されるパラメータを示しており、図3で説明したフロータイプ、トラヒッククラス、ターゲットIF-CardID、ターゲットTMキューID、およびフラグが対応する。また、IOレジスタ41には、帯域補正パケットの送出の有効/無効を示すパラメータおよび帯域補正パケットの送出周期のパラメータ図7の送出enable/disableおよび送出周期が設定される。IOレジスタ41に設定されたパラメータは、帯域補正パケット生成回路42に取り込まれる。帯域補正パケット生成回路42は、取り込んだパラメータのフロータイプ、トラヒッククラス、ターゲットIF-CardID、ターゲットTMキューID、およびフラグに基づいて、帯域補正パケットのメタデータを生成する。また、帯域補正パケット生成回路42は、帯域補正パケットのヘルスチェックパターンを生成する。また、帯域補正パケット生成回路42は、帯域補正パケットのパディングを生成する。また、帯域補正パケット生成回路42は、取り込んだパラメータの送出周期をタイマ図7中の送出周期タイマにセットする。帯域補正パケット生成回路42は、送出の有効/無効を示すパラメータが有効の場合、タイマのカウント値に基づいて、生成した帯域補正パケットをスケジューラ43に出力する。例えば、帯域補正パケット生成回路42は、タイマのカウント値が0になるたびに、生成した帯域補正パケットをスケジューラ43に出力する。帯域補正パケット生成回路42は、送出の有効/無効のパラメータが無効の場合、生成した帯域補正パケットをスケジューラ43に出力しない。スケジューラ43には、n個の帯域補正パケット生成回路42から、n個の帯域補正パケットが入力される。図7に示す帯域補正パケット[1...n]の‘1...n’は、図4および図5に示したEgress-TM回路14のForIF1...ForIFnの‘1...n’に対応する。また、スケジューラ43には、帯域補正パケット生成回路42から帯域補正パケットの送出の有効/無効を示す信号が入力される図7中の送出enable。スケジューラ43は、送出有効を示す信号が入力された場合、帯域補正パケット生成回路42から出力された帯域補正パケットを、例えば、ラウンドロビンにてFIFOバッファ44,45に出力する。図8は、Egress-TM回路およびEgressNPUの動作を説明する図である。図8には、図2、図4、および図5で説明したEgress-TM回路14およびEgress-NPU15が示してある。また、図8には、Egress-TM回路14に入力される帯域補正パケットとユーザパケットとが示している。図8のEgress-TM回路14に示すClasslevelQueuesとPortlevelQueuesは、図4および図5に示したTMQueuesに対応する。また、図8のEgress-TM回路14に示すShaperは、図4および図5に示したShaperに対応する。ForIF1...ForIFnのShaperのそれぞれに対応している、複数のClasslevelQueuesは、トラヒッククラスに対応している。例えば、図8のForIF1のShaperに対応している、複数のClasslevelQueuesの一番上のキューは、最も優先度の高いトラヒッククラスに対応している。また、ForIF1のShaperに対応している、複数のClasslevelQueuesの一番下のキューは、最も優先度の低いトラヒッククラスに対応している。帯域補正パケットは、メタデータに含まれるターゲットTMキューIDに基づいて、所定のForIF1...ForIFnのShaperに対応する、ClasslevelQueuesに格納される。例えば、帯域補正パケットは、図8に示すように、ForIF1のShaperに対応するClasslevelQueuesに格納されている。また、帯域補正パケットは、トラヒッククラスの優先度が最も高いので、最高優先度のClasslevelQueuesに格納される。例えば、帯域補正パケットは、図8に示すように、ForIF1のShaperに対応している、複数のClasslevelQueuesの一番上のキューに格納される。なお、図8の例では、ユーザパケットは、ForIF1のShaperに対応している、複数のClasslevelQueuesの一番下のキューに格納されている。すなわち、図8に示すユーザパケットのトラヒッククラスの優先度は、最も低いものとなっている。図8に示すShaperは、設定された粒度に基づき、所定のシェーパ設定レートとなるよう、帯域補正パケットとユーザデータとをEgress-NPU15に出力する。このとき、Shaperは、優先度の高い順に、帯域補正パケットおよびユーザデータをClasslevelQueuesからPortlevelQueuesへ格納し、Egress-NPU15に出力する。Egress-NPU15は、Egress-TM回路14から出力される帯域補正パケットおよびユーザパケットのメタデータを解析する。例えば、Egress-NPU15は、メタデータに含まれるフラグに基づいて、Egress-TM回路14から出力されるパケットが帯域補正パケットであるかユーザデータであるか判断する。Egress-NPU15は、Egress-TM回路14から出力されるパケットがユーザパケットの場合、ユーザパケットをフィルタリングしたり、クラス分けしたり、また、VLANタグを付加、変更したり、ユーザパケット処理を施す。また、Egress-NPU15は、Egress-TM回路14から出力されるパケットが帯域補正パケットである場合、帯域補正パケット処理を行う。例えば、Egress-NPU15は、帯域補正パケットのヘルスチェックパターンを確認する。例えば、Egress-NPU15は、図3の帯域補正パケットの領域31,32に、‘0x5A5A...5A’および‘0xA5A5...A5’のヘルスチェックパターンが格納されているか否か確認する。Egress-NPU15は、帯域補正パケットのヘルスチェックパターンのエラー数について統計を取る。例えば、Egress-NPU15は、帯域補正パケットのヘルスチェックパターンのエラーが何回起きたかカウントする。Egress-NPU15は、帯域補正パケットのヘルスチェックパターンのエラー数について統計をとると、その帯域補正パケットを廃棄する。図9は、帯域補正パケットの生成動作の一例を示したフローチャートである。図9のフローチャートは、帯域補正パケットk[k=1...n]ごとに実行される。nは、例えば、図7に示すnに対応する。[ステップS1]帯域補正パケット生成回路42は、IOレジスタ41のレジスタ値を取り込む。例えば、帯域補正パケット生成回路42は、図9のステップS1に示す式の左辺の値IOレジスタ41に設定されている値、例えば、図7のIOレジスタ41の枠内に示しているパラメータを、右辺の変数に格納する。[ステップS2a]帯域補正パケット生成回路42は、IOレジスタ41から取り込んだIOレジスタ値を、メモリ帯域補正パケット[k]の該当アドレスに書き込む。[ステップS3a]帯域補正パケット生成回路42は、ヘルスチェックパターン1をメモリに書き込む。[ステップS4a]帯域補正パケット生成回路42は、ヘルスチェックパターン2をメモリに書き込む。[ステップS2b]帯域補正パケット生成回路42は、Send_Period[k]のカウント値で、送出周期タイマT[k]を始動する。[ステップS3b]帯域補正パケット生成回路42は、送出周期タイマT[k]のカウント値に基づいて、帯域補正パケット[k]の送出周期になったか否か判断する。例えば、帯域補正パケット生成回路42は、送出周期タイマT[k]のカウント値が、Send_Period[k]の値から減算して0になると、帯域補正パケット[k]の送出周期になったと判断する。帯域補正パケット生成回路42は、帯域補正パケット[k]の送出周期になった場合、ステップS4bへ進む。帯域補正パケット生成回路42は、帯域補正パケット[k]の送出周期でない場合、ステップS3bの処理を繰り返す。[ステップS4b]帯域補正パケット生成回路42は、送出タイミング信号[k]にエッジを立てる。例えば、帯域補正パケット生成回路42は、送出タイミング信号[k]に‘1’を格納する。なお、ステップS2a~S4aの処理とステップS2b~S4bの処理は、並列に実行される。[ステップS5]帯域補正パケット生成回路42は、Send_Enable[k]がenableであるか否か判断する。帯域補正パケット生成回路42は、Send_Enable[k]がdisableである場合、処理を終了する。帯域補正パケット生成回路42は、Send_Enable[k]がenableである場合、ステップS6へ進む。[ステップS6]帯域補正パケット生成回路42は、送出タイミング信号[k]にエッジが立っているか否か判断する。帯域補正パケット生成回路42は、送出タイミング信号[k]にエッジが立っている場合、ステップS7へ進む。帯域補正パケット生成回路42は、送出タイミング信号[k]にエッジが立っていない場合、ステップS6の処理を繰り返す。[ステップS7]スケジューラ43は、帯域補正パケット生成回路42で生成された帯域補正パケット[k]が送信順番になったか否か判断する。スケジューラ43は、例えば、ラウンドロビンによって、生成された帯域補正パケット[k]の送信順番を判断する。スケジューラ43は、生成された帯域補正パケット[k]が送信順番になった場合、ステップS8へ進む。スケジューラ43は、生成された帯域補正パケット[k]が送信順番でない場合、ステップS7の処理を繰り返す。[ステップS8]スケジューラ43は、F_Type[k]が‘Ingress-TM回路13へ出力される’旨の情報を示しているか否か判断する。スケジューラ43は、F_Type[k]が‘Ingress-TM回路13へ出力される’旨の情報を示している場合、ステップS9へ進む。スケジューラ43は、F_Type[k]が‘Ingress-TM回路13へ出力される’旨の情報を示していない場合、ステップS10へ進む。[ステップS9]スケジューラ43は、Ingress-TM回路13に対応したFIFOバッファ44に帯域補正パケットを書き込む。これにより、帯域補正パケット生成回路42で生成された帯域補正パケット[k]は、Ingress-TM回路13へ出力される。[ステップS10]スケジューラ43は、F_Type[k]が‘Egress-TM回路14へ出力される’旨の情報を示しているか否か判断する。スケジューラ43は、F_Type[k]が‘Egress-TM回路14へ出力される’旨の情報を示している場合、ステップS11へ進む。スケジューラ43は、F_Type[k]が‘Egress-TM回路13へ出力される’旨の情報を示していない場合、ステップS12へ進む。[ステップS11]スケジューラ43は、Egress-TM回路14に対応したFIFOバッファ45に帯域補正パケットを書き込む。これにより、帯域補正パケット生成回路42で生成された帯域補正パケット[k]は、Egress-TM回路14へ出力される。[ステップS12]FPGA18は、エラー処理を行う。例えば、FPGA18は、CPU17に帯域補正パケットが正常に出力されなかった旨を通知する。図10は、帯域補正パケットの廃棄動作の一例を示したフローチャートである。[ステップS21]Egress-NPU15は、受信したパケットのメタデータを読み出す。例えば、Egress-NPU15は、受信したパケットの先頭から20バイトを読み出す。Egress-NPU15は、読み出したメタデータのフラグを読み出し、RxFlagに格納する。[ステップS22]Egress-NPU15は、RxFlagが‘1’であるか否か判断する。すなわち、Egress-NPU15は、受信したパケットが帯域補正パケットであるか否か判断する。Egress-NPU15は、受信したパケットが帯域補正パケットである場合、ステップS24へ進む。Egress-NPU15は、受信したパケットが帯域補正パケットでない場合、すなわち、受信したパケットがユーザパケットである場合、ステップS23へ進む。[ステップS23]Egress-NPU15は、受信したパケットにユーザパケット処理を施す。[ステップS24]Egress-NPU15は、帯域補正パケットのヘルスチェックパターン1をRxTattern1に格納する。[ステップS25]Egress-NPU15は、RxPattern1のパターンが‘0x5A5A...5A’であるか否か判断する。Egress-NPU15は、RxPattern1のパターンが‘0x5A5A...5A’である場合、ステップS26へ進む。Egress-NPU15は、RxPattern1のパターンが‘0x5A5A...5A’でない場合、ステップS29へ進む。[ステップS26]Egress-NPU15は、帯域補正パケットのヘルスチェックパターン2をRxTattern2に格納する。[ステップS27]Egress-NPU15は、RxPattern2のパターンが‘0xA5A5...A5’であるか否か判断する。Egress-NPU15は、RxPattern2のパターンが‘0xA5A5...A5’である場合、ステップS28へ進む。Egress-NPU15は、RxPattern2のパターンが‘0xA5A5...A5’でない場合、ステップS29へ進む。[ステップS28]Egress-NPU15は、帯域補正パケットの受信数をカウントしている統計カウンタを1インクリメントする。[ステップS29]Egress-NPU15は、ヘルスチェックエラーパケットの受信数をカウントしている統計カウンタを1インクリメントする。[ステップS30]Egress-NPU15は、帯域補正パケットを廃棄する。図11は、シェーピングレートの一例を説明する図である。図11に示す表のシェーパ設定レートは、図2のEgress-TM回路14に設定されるシェーパ設定レートを示している。図11には、‘500kbps’のシェーパ設定レートが設定された場合と‘1000kbps’のシェーパ設定レートが設定された場合とが示してある。Egress-TM回路14の粒度は、500kbpsとする。図11に示す帯域補正パケットレートは、FPGA18から出力される帯域補正パケットのレートが示してある。ユーザパケットレートは、Egress-TM回路14から出力されるユーザパケットのレートが示してある。例えば、Egress-TM回路14に設定されたシェーパ設定レートが‘500kbps’であったとする。FPGA18で生成される帯域補正パケットのレートが‘450kbps’であったとする。この場合、Egress-TM回路14からは、図11に示すように‘50kbps’のユーザパケットが出力されることになる。また、例えば、Egress-TM回路14に設定されたシェーパ設定レートが‘1000kbps’であったとする。FPGA18で生成される帯域補正パケットのレートが‘450kbps’であったとする。この場合、Egress-TM回路14からは、図11に示すように‘550kbps’のユーザパケットが出力されることになる。図11に示すように、FPGA18の生成する帯域補正パケットのレートを‘50kbps’ごとに可変すれば、ユーザパケットの出力帯域を‘50kbps’単位で可変することができる。すなわち、図2の伝送装置では、設定される粒度が500kbpsであっても、シェーピングレートを細かく設定することができる。つまり、図2の伝送装置は、帯域補正パケットのレートを可変することにより、ユーザパケットの帯域を細かく制御でき、物理回線帯域に合わせることが可能となる。また、図2の伝送装置は、帯域補正パケットのレートを可変することにより、ユーザパケットの帯域を物理回線帯域に合わせることができるので、装置の設計実装の柔軟性を実現することができる。ここで、帯域補正パケットを生成しない場合の伝送装置の動作について説明する。図12は、帯域補正パケットを生成しない場合の伝送装置の動作について説明する図のその1である。図12に示すように、インタフェースカード50は、Egress-TM回路51、Egress-NPU52、および出力インタフェース回路53を有している。図12では、Ingress部分については、図示を省略している。図12では、物理回線帯域を1.980Mbpsとする。Egress-TM回路51の粒度を500kbpsとする。Egress-TM回路51のシェーパ設定レートを2000kbpsとする。この場合、Egress-TM回路51からは、2000kbpsのユーザパケットが出力される。これに対し、物理回線帯域は、1.980Mbpsなので、出力インタフェース回路53は、過剰分の20kbpsのユーザパケットを、TxFIFOバッファにて無差別に廃棄する。すなわち、帯域補正パケットを生成しない場合、ユーザパケットが廃棄される場合がある。図13は、帯域補正パケットを生成しない場合の伝送装置の動作について説明する図のその2である。図13において、図12と同じものには同じ符号を付し、その説明を省略する。図13では、物理回線帯域を1.980Mbpsとする。Egress-TM回路51の粒度を500kbpsとする。Egress-TM回路51のシェーパ設定レートを1500kbpsとする。この場合、Egress-TM回路51の出力帯域は、物理回線帯域に対し、480kbps分不足する。そのため、物理回線は、その分帯域を余らせてしまう。図12と図13で説明したように、帯域補正パケットを生成しない場合、Egress-TM回路51の出力帯域と物理回線帯域とにずれが生じ、ユーザパケットが無差別に廃棄されたり、物理回線帯域が余ったりする。これに対し、図2の伝送装置では、物理回線帯域に対し、Egress-TM回路51から出力されるユーザパケットの帯域を合わせることができる。図2の伝送装置の物理回線に対する帯域補正パケットの送出量について説明する。図14は、物理回線と帯域補正パケットの送出量の設定例を示した図である。図14では、物理回線がE1-XvX=1...16の場合の、帯域補正パケットの送出量の設定例が示してある。図2の伝送装置のEgress-TM回路14の粒度を500kbps最大10Gbpsの設定レンジとして妥当な粒度設計、FPGA18の生成する帯域補正パケットのパケット長を64バイトとする。図14のAの欄には、E1-Xvの回線帯域が示してある。Bの欄には、E1-Xvのペイロード帯域が示してある。Cの欄には、Egress-TM回路14のシェーパ設定レートが示してある。Dの欄には、FPGA18の帯域補正パケットの送出周期が示してある。Eの欄には、帯域補正パケットのパケット長が示してある。Fの欄には、帯域補正パケットのレートpackts/sが示してある。Gの欄には、帯域補正パケットのレートkbpsが示してある。例えば、E1-1vにおいて、Egress-TM回路14のシェーパ設定レートを、ペイロード帯域1980kbpsより大きい2000kbpsに設定する。この場合、FPGA18は、D欄およびG欄に示すように、64バイトのパケット長の帯域補正パケットを、25.6ms周期で送出するようにする。すると、Egress-TM回路14には、20kbpsの帯域補正パケットが入力され、Egress-TM回路14からは、1980kbpsのユーザパケットが出力される。これにより、Egress-TM回路14は、FPGA18の生成する帯域補正パケットによって、ペイロード帯域と同等のシェーピングを行うことができる。このように、FPGA18は、Egress-TM回路14のパケットをシェーピングする所定の粒度の帯域より小さい帯域の帯域補正パケットを生成し、Egress-TM回路14に入力する。これにより、Egress-TM回路14は、所定の粒度の帯域より細かなシェーピングレートが可能になり、パケットをシェーピングした後の帯域と物理回線帯域とのずれを解消することができる。また、Egress-TM回路14は、パケットをシェーピングした後の帯域と物理回線帯域とのずれを解消できるので、出力インタフェース回路16は、ユーザパケットを破棄しなくて済む。また、伝送装置は、物理回線帯域を余らすことなく、ユーザパケットを物理回線に出力することができる。また、Egress-TM回路14は、例えば、ハードウェアにて粒度を細かくすることで、パケットのシェーピング後の帯域と物理回線帯域とのずれを解消することも可能である。しかし、大容量化が進む昨今では、10Gbpsまたはそれ以上の設定レンジが要求されるので、粒度を細かくすればするほど、デバイス設計および設定の難度が上がり、コストも高くなる。また、例えば、Egress-TM回路14と出力インタフェース回路16との間にバックプレッシャ機能を実装することが考えられる。この場合、出力インタフェース回路16でのバッファオーバフローによるパケットの廃棄を回避することが可能になる。しかし、バックプレッシャ信号の伝搬時間等、詳細なタイミング設計が要求されるため、デバイス設計および設定の難度が上がり、コストも高くなる。これに対し、図2の伝送装置では、帯域補正パケットの送出量を変えることによって、容易にEgress-TM回路14のシェーパレートを変えることができる。また、容易にEgress-TM回路14のシェーパレートを変えることができるので、コストを低減することができる。なお、上記では、FPGA18がCPU17の指示に基づいた帯域補正パケットを生成するとしたが、CPU17が帯域補正パケットを生成して出力するようにしてもよい。また、FPGA18の帯域補正パケットを生成する機能をEgress-TM回路14に実装するようにしてもよい。"