(57)【要約】【課題】廃棄優先度が異なるパケット同士が結合された場合に、廃棄優先度に基づいた廃棄優先度処理の実行の容易化を図ること。【解決手段】伝送装置のパケット処理部２０１−ｉは、一連のパケットＰ１〜Ｐ４の中の各々のパケットにパケットの帯域に応じた廃棄優先度を付与するポリサ部３０１と、ポリサ部３０１によって廃棄優先度が付与された一連のパケットＰ１〜Ｐ４を廃棄優先度が同一であるパケット群に分離する分離部３０２と、分離部３０２によって分離された複数のパケット群（Ｐ１，Ｐ３），（Ｐ２，Ｐ４）の中のいずれかのパケット群（Ｐ１，Ｐ３）を入力し、いずれかのパケット群の各パケットを入力順に結合するパケット結合部３０３−ｉと、を有する。【選択図】図４
2014155151.tif 000002
【特許請求の範囲】
【請求項１】
一連のパケットの中の各々のパケットに前記パケットの帯域に応じた廃棄優先度を付与するポリサ部と、
前記ポリサ部によって廃棄優先度が付与された一連のパケットを廃棄優先度が同一であるパケット群に分離する分離部と、
前記分離部によって分離された複数のパケット群の中のいずれかのパケット群を入力し、前記いずれかのパケット群の各パケットを入力順に結合する結合部と、
を有することを特徴とする伝送装置。
【請求項２】
一連のパケットの中の連続する第１のパケット列の各パケットに第１の識別子を付与し、前記一連のパケットの中の前記第１のパケット列の後続となる第２のパケット列の各パケットに前記第１の識別子とは異なる第２の識別子を付与する識別子付与部と、
前記識別子付与部によって第１の識別子が付与された前記第１のパケット列の各パケットに、前記第１のパケット列の先頭パケットの帯域に応じた廃棄優先度を付与するとともに、前記識別子付与部によって第２の識別子が付与された前記第２のパケット列の各パケットに、前記第２のパケット列の先頭パケットの帯域に応じた廃棄優先度を付与するポリサ部と、
前記ポリサ部によって廃棄優先度が付与された前記第１のパケット列の各パケットを入力順に結合し、結合した第１の結合パケットを出力するとともに、前記ポリサ部によって廃棄優先度が付与された前記第２のパケット列の各パケットを入力順に結合して、結合した第２の結合パケットを前記第１の結合パケットの後に出力する結合部と、
を有することを特徴とする伝送装置。
【請求項３】
前記識別子付与部は、前記一連のパケットの先頭パケットからの総パケット長が所定長を超えない最大長となる前記第１のパケット列に前記第１の識別子を付与し、前記第１のパケット列の末尾のパケットの次のパケットからの総パケット長が前記所定長を超えない最大長となる前記第２のパケット列に前記第２の識別子を付与することを特徴とする請求項２に記載の伝送装置。
【請求項４】
前記識別子付与部は、前記一連のパケットの先頭パケットからの総パケット数が所定長を超えない最大数となる前記第１のパケット列に前記第１の識別子を付与し、前記第１のパケット列の末尾のパケットの次のパケットからの総パケット数が前記所定数を超えない最大数となる前記第２のパケット列に前記第２の識別子を付与することを特徴とする請求項２に記載の伝送装置。
【請求項５】
前記ポリサ部は、トークンバケット方式により廃棄優先度の付与処理を実行し、前記第１および第２のパケット列の各先頭パケットについては、当該先頭パケットのパケット長が残存トークン量以上であるか否かを判断し、前記残存トークン量未満である場合には、前記残存トークン量から前記先頭パケットのパケット長を減算する減算処理を実行して、第１および第２の廃棄優先度のうち廃棄優先度が低い第１の廃棄優先度を付与し、前記残存トークン量以上である場合には、前記減算処理を実行せずに前記第２の廃棄優先度を付与することを特徴とする請求項２〜４のいずれか一つに記載の伝送装置。
【請求項６】
前記ポリサ部は、トークンバケット方式により廃棄優先度の付与処理を実行し、前記第１および第２のパケット列の各先頭パケットに続く後続パケットについては、前記先頭パケットと同一の廃棄優先度を付与し、第１および第２の廃棄優先度のうち廃棄優先度が低い第１の廃棄優先度を付与する場合には、残存トークン量から前記後続パケットのパケット長を減算する減算処理を実行し、前記第２の廃棄優先度を付与する場合には、前記減算処理を実行しないことを特徴とする請求項２〜４のいずれか一つに記載の伝送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットを伝送する伝送装置に関する。
【背景技術】
【０００２】
イーサネット通信（イーサネットは登録商標、以下同じ）においては、最低１２［ｂｙｔｅ］以上のＩＦＧ（Ｉｎｔｅｒ  Ｆｒａｍｅ  Ｇａｐ）と呼ばれる無信号状態を表すデータが伝送される。このため、パケット長が短いほど伝送路に占める無通信区間の割合が増えることで伝送効率が下がってしまい、逆にパケット長が長いほど伝送効率が上がる。イーサネット通信では、６４［ｂｙｔｅ］長のパケットと、１５１８［ｂｙｔｅ］長のパケットでは、伝送効率として約２２％の差がある。そのため、下記特許文献１に示すような、複数のパケットを結合することで、伝送路に占めるＩＦＧの割合を減少させる方式が提案される。
【０００３】
特許文献１の技術では、宛先ネットワークが同一である多数のパケットが転送されていることをルーティング処理部が検知すると、ルーティング情報処理部がその経路の送信経路の最大転送単位を決定する。結合部は送信経路の最大転送単位を超えない長さまでパケットを結合して結合パケットを組み立てて送出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−９８３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年の帯域不足によるユーザデータの遅延やロスなどの問題に対応する為に、伝送装置において帯域を制限する機能を持たせることが主流になりつつある。帯域制限の方式には、一例としてポリシングがある。ポリシングとは、帯域制限対象のトラフィックに対し、あらかじめ設定した帯域値をもとにパケットに廃棄優先度付けを行い、輻輳時に廃棄優先度に基づいた廃棄を行うことで帯域管理を実現する方式である。
【０００６】
廃棄優先度付与のアルゴリズムの一例としてトークンバケットアルゴリズムが挙げられる、トークンバケットアルゴリズムとは、トークンを一定の割合（ｒ）でバケツに供給し、バケツにトークンがある場合は、到着するパケット長Ｌに応じてトークンがバケツから取り出される。長さＬのパケットを通過させる分のトークンがバケツにない場合は、トークンが補給されるレート（ｒ）よりも高いレートでパケットが到着していることを意味しており、トークンバケットアルゴリズムは帯域外と判定する。帯域外と判定した場合、トークンバケットアルゴリズムは、当該パケットに高廃棄優先度を付与する。長さＬのパケットを通過させる分のトークンがバケツにある場合は、帯域内と判定する。帯域内と判定した場合、トークンバケットアルゴリズムは、当該パケットに低廃棄優先度を付与する。
【０００７】
スイッチ群を含むネットワークに接続されるエッジノードなどの伝送装置は、入力パケットを多重化して、ネットワーク内に伝送する。具体的には、伝送装置は、入力パケットごとに廃棄優先度を付与し、待機バッファ８３１に待機させ、多重化する。伝送装置は、多重化した順に多重化したパケットを出力する。
【０００８】
廃棄優先度の付与処理では、伝送装置は、設定される帯域値未満のパケットに対しては廃棄優先度「低」を、設定される帯域値以上のパケットに対しては廃棄優先度「高」を付与する。このような伝送装置において、上記特許文献１のような複数のパケットを結合する方式を採用すると、廃棄優先度の異なるパケットが混在した経路で適用した場合、廃棄優先度が異なるパケット同士が結合され、廃棄優先度に基づいた廃棄優先度処理の実行が困難になるという問題がある。
【０００９】
本発明は、廃棄優先度が異なるパケット同士が結合された場合に、廃棄優先度に基づいた廃棄優先度処理の実行の容易化を図ることを目的とする。
【課題を解決するための手段】
【００１０】
本願において開示される発明の一側面となる伝送装置は、一連のパケットの中の各々のパケットに前記パケットの帯域に応じた廃棄優先度を付与するポリサ部と、前記ポリサ部によって廃棄優先度が付与された一連のパケットを廃棄優先度が同一であるパケット群に分離する分離部と、前記分離部によって分離された複数のパケット群の中のいずれかのパケット群を入力し、前記いずれかのパケット群の各パケットを入力順に結合する結合部と、を有する。
【発明の効果】
【００１１】
本発明の代表的な実施の形態によれば、廃棄優先度が異なるパケット同士が結合された場合に、廃棄優先度に基づいた廃棄優先度処理の実行の容易化を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】実施例１にかかる伝送装置を適用したネットワーク構成例を示す説明図である。
【図２】実施例１にかかる伝送装置のハードウェア構成例を示すブロック図である。
【図３】図２に示したパケット処理部の詳細なハードウェア構成例を示すブロック図である。
【図４】実施例１にかかる伝送装置のパケット処理部におけるパケット処理例を示す説明図である。
【図５】実施例２にかかる伝送装置のハードウェア構成例を示すブロック図である。
【図６】実施例２にかかる伝送装置のパケット処理部におけるパケット処理例を示す説明図である。
【図７】図６に示すパケット処理例におけるトークンの時間的変動を示すグラフである。
【図８】図５に示した伝送装置のハードウェア構成例の詳細構成例を示すブロック図である。
【図９】ポリサ部の動作処理手順例を示すフローチャートである。
【図１０】パケット結合管理部の動作処理手順例を示すフローチャートである。
【図１１】パケット結合制御部およびパケット結合処理部８３５の動作処理手順例を示すフローチャートである。
【図１２】管理テーブルの更新例（その１）を示す説明図である。
【図１３】管理テーブルの更新例（その２）を示す説明図である。
【図１４】管理テーブルの更新例（その３）を示す説明図である。
【図１５】管理テーブルの更新例（その４）を示す説明図である。
【図１６】管理テーブルの更新例（その５）を示す説明図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態にかかる伝送装置について添付図面を用いて説明する。まず、伝送装置を適用したネットワーク構成例について説明する。
【００１４】
（実施例１）
図１は、実施例１にかかる伝送装置を適用したネットワーク構成例を示す説明図である。通信システム１００において、伝送装置１０１は、入力パケットを多重化してネットワーク１１０内のスイッチ１０２に伝送する。スイッチ１０２は、伝送装置１０１からの多重化パケットを送信経路ごとに分配し、待機バッファ８３１に待機させた後、待機順に伝送路に出力する。スイッチ１０２の配下には図示しない端末が接続される。なお、図１のネットワーク構成例は、後述する実施例２にも適用される。
【００１５】
図２は、実施例１にかかる伝送装置１０１のハードウェア構成例を示すブロック図である。伝送装置１０１は、経路ごとに設けられた複数のパケット処理部２０１−１〜２０１−ｎ（ｎは２以上の整数）と、複数のパケット処理部２０１−１〜２０１−ｎの出力段に接続される多重化処理部２０２と、を有する。各パケット処理部は、入力されてくるパケットに廃棄優先度を付与して多重化処理部２０２に出力する。多重化処理部２０２は、各パケット処理部２０１−ｉ（ｉは１≦ｉ≦ｎを満たす整数）からのパケットを多重化して伝送路に出力する。
【００１６】
図３は、図２に示したパケット処理部２０１−ｉの詳細なハードウェア構成例を示すブロック図である。パケット処理部２０１−ｉは、ポリサ部３０１と、分離部３０２と、複数のパケット結合部３０３−１〜３０３−ｍ（ｎは２以上の整数）と、多重化部３０４と、を有する。ポリサ部３０１は、入力されてくるパケットに廃棄優先度を付与する。具体的には、たとえば、ポリサ部３０１は、設定される帯域値未満のパケットに対しては廃棄優先度「低」を、設定される帯域値以上のパケットに対しては廃棄優先度「高」を付与する。廃棄優先度付与アルゴリズムの一例としてトークンバケットアルゴリズムが採用される。
【００１７】
この場合、長さＬのパケットを通過させる分のトークンがバケツにない場合は、トークンが補給されるレートよりも高いレートでパケットが到着していることを意味しており、これを帯域外と判定する。帯域外と判定した場合、当該パケットに高廃棄優先度を付与する。長さＬのパケットを通過させる分のトークンがバケツにある場合は、帯域内と判定する。帯域内と判定した場合、トークンバケットアルゴリズムは、当該パケットに低廃棄優先度を付与する。なお、廃棄優先度は、「高」、「低」の２段階に限らず、３段階以上であってもよい。
【００１８】
分離部３０２は、廃棄優先度毎にパケットを分離する。パケット結合部３０３−ｊ（ｊは１≦ｊ≦ｍを満たす整数）は、分離部３０２によって分離された同一廃棄優先度のパケット列を入力し、入力された同一廃棄優先度のパケット列を結合する。多重化部３０４は、各パケット結合部３０３−ｊによって結合されたパケットを多重化し、多重化処理部２０２に出力する。
【００１９】
図４は、実施例１にかかる伝送装置１０１のパケット処理部２０１−ｉにおけるパケット処理例を示す説明図である。ここでは、ｍ＝２とし、例として４個のパケットが順に入力された場合を例に挙げて説明する。ポリサ部３０１は、順次到来した４個のパケットＰ１〜Ｐ４に対して、設定される帯域値未満のパケットＰ１、Ｐ３には廃棄優先度「低」を、設定される帯域値以上のパケットＰ２、Ｐ４には廃棄優先度「高」を付与して、分離部３０２に順次出力する。
【００２０】
分離部３０２は、ポリサ部３０１からのパケット群のうち、廃棄優先度「低」が付与されたパケットＰ１、Ｐ３を経路Ｒ１に分配し、廃棄優先度「高」が付与されたパケットＰ２、Ｐ４を経路Ｒ２に分配する。すなわち、分離部３０２は、廃棄優先度毎にパケットを分配する。各パケット結合部３０３−ｊは、分離部３０２から分配されてくるパケットどうしを結合する。これにより、同一の廃棄優先度のパケットどうしが結合されることになる。多重化部３０４は、パケット結合部３０３−ｊにより結合された結合パケットを多重化し、多重化処理部２０２に出力する。これにより、同一の廃棄優先度を有するパケットが結合されるため、廃棄優先度に基づいた廃棄優先度処理を実行することができる。
【００２１】
（実施例２）
つぎに、実施例２にかかる伝送装置について説明する。実施例１では、図４に示したように、同一廃棄優先度のパケットを結合することにより、廃棄優先度に基づいた廃棄優先度処理を実行することができる伝送装置について説明した。これに対し、実施例２では、さらに、パケットの出力順序性を保証したまま、同一廃棄優先度のパケットを結合することにより、廃棄優先度に基づいた廃棄優先度処理を実行することができる伝送装置について説明する。
【００２２】
伝送装置がパケットにシーケンス番号を付与しパケットの順序性を監視する仕組みを持っている場合、受信側の伝送装置は、シーケンス番号が連続しない箇所でパケットの廃棄を実行する。パケットの廃棄が頻発するとパケットの再送処理が頻発し、伝送路の伝送効率が低下してしまう。したがって、パケットの出力順序も維持したまま、同一廃棄優先度のパケットを結合することにより、伝送効率の向上を図る。
【００２３】
また、受信側の伝送装置において、結合パケットを結合前の元のパケットに戻す際にシーケンス番号順に整列しなおす必要もないため、受信側の伝送装置のパケット処理の負荷や遅延が増加しないことになる。以下、実施例２にかかる伝送装置について説明するが、実施例１と同一構成には同一符号を付し、その説明を省略する。
【００２４】
図５は、実施例２にかかる伝送装置１０１のハードウェア構成例を示すブロック図である。伝送装置１０１は、経路ごとに設けられた複数のパケット処理部５００−１〜５００−ｎ（ｎは２以上の整数）と、複数のパケット処理部５００−１〜５００−ｎの出力段に接続される多重化処理部２０２と、を有する。各パケット処理部５００−ｉ（ｉは１≦ｉ≦ｎを満たす整数）は、入力されてくるパケットに廃棄優先度を付与して多重化処理部２０２に出力する。多重化処理部２０２は、各パケット処理部５００−ｉからのパケットを多重化して伝送路に出力する。
【００２５】
以降、同一宛先、同一サービスクラスのパケットが入力されたものとして説明するが、複数宛先、複数サービスクラスを持つパケットが入力される場合は、宛先毎、サービスクラス毎に処理されることになる。
【００２６】
パケット処理部５００−ｉは、結合グループ識別子付与部５０１−ｉと、ポリサ部５０２−ｉと、パケット結合部５０３−ｉと、を有する。結合グループ識別子付与部５０１−ｉは、同一廃棄優先度でグループ化し、かつ、パケットの順序性を崩さないようにするため、結合グループ識別子をパケットに付与する。結合グループ識別子とは、結合するグループを一意に特定する情報である。同一の結合グループ識別子を付与されたパケットは、パケット結合部５０３−ｉにより結合される。結合グループ識別子付与部５０１−ｉは、結合グループ識別子を、パケット結合部５０３−ｉによる結合に先だってパケットに付与する。
【００２７】
ポリサ部５０２−ｉは、パケットに廃棄優先度を付与する。ポリサ部５０２−ｉによる廃棄優先度の付与は、パケットが持つ結合グループ識別子や到着順番、先行パケットの廃棄優先度により、実施例１とは異なる付与処理となる。
【００２８】
具体的には、たとえば、ポリサ部５０２−ｉは、結合グループ識別子を持つパケットに対して付与する廃棄優先度の判断を行う。廃棄優先度付与の判断対象となるパケットは、１つ前のパケットである先行パケットが存在しない場合に入力されたパケットや、後続のパケットであっても１つ前のパケットとは結合グループが異なるパケットである。このようなパケットを、「先頭パケット」と称す。
【００２９】
具体的には、たとえば、ポリサ部５０２−ｉは、設定される帯域値未満の先頭パケットに対しては廃棄優先度「低」を付与し、設定される帯域値以上の先頭パケットに対しては廃棄優先度「高」を付与する。ポリサ部５０２−ｉは、廃棄優先度付与アルゴリズムにより、廃棄優先度「低」を付与した先頭パケットのパケット長分のトークンを減算する。廃棄優先度「高」を付与する場合には、トークンの減算は行わない。
【００３０】
また、先頭パケットに廃棄優先度「低」を付与した場合、ポリサ部５０２−ｉは、先頭パケットに続く後続パケット列を到来順に取り込み、先頭パケットと同一の結合グループ識別子が付与された後続パケットについては、先頭パケットと同一の廃棄優先度「低」を付与する。この場合、後続パケットのパケット長分のトークンが不足していても、ポリサ部５０２−ｉは、廃棄優先度「低」を付与することになる。すなわち、トークン量は負の値となることが許容され、ポリサ部５０２−ｉは、後続パケットのパケット長分のトークンを減算する。これにより、廃棄優先度付与アルゴリズムをパケット結合部５０３−ｉによるパケット結合処理と連動させることができる。
【００３１】
また、先頭パケットに廃棄優先度「高」を付与した場合、ポリサ部５０２−ｉは、先頭パケットに続く後続パケット列を到来順に取り込み、先頭パケットと同一の結合グループ識別子が付与された後続パケットについては、先頭パケットと同一の廃棄優先度「高」を付与する。この場合、後続パケットのパケット長分のトークンが充足していても、ポリサ部５０２−ｉは、後続パケットに廃棄優先度「高」を付与し、かつ、後続パケットのパケット長分のトークンを減算しない。
【００３２】
パケット結合部５０３−ｉは、同一の結合グループ識別子が付与された一連のパケットを結合し、結合パケットとして多重化処理部２０２に出力する。これにより、平均的に見たときに設定帯域値に基づいた廃棄優先度付けを行うことが可能となり、パケットの伝送順序を保証したまま同一の結合グループ識別子が付与されたパケット列について同一の廃棄優先度を付与することができる。なお、廃棄優先度は、「高」、「低」の２段階に限らず、３段階以上であってもよい。この場合、伝送装置１０１は、設定される帯域値の異なるポリサ部５０２−ｉを複数有する。例えば、廃棄優先度が３段階である場合は、廃棄優先度「高」及び「中」を判定するポリサ部５０２−ｉと廃棄優先度「中」及び「低」を判定するポリサ部５０２−ｉの２つを有する。すなわち、ｋ段階（ｋは２以上の整数）の廃棄優先度を付与する場合、パケット結合部５０３−ｉは、ｋ−１個のポリサ部５０２−ｉが必要になる。
【００３３】
図６は、実施例２にかかる伝送装置１０１のパケット処理部５００−ｉにおけるパケット処理例を示す説明図である。また、図７は、図６に示すパケット処理例におけるトークンの時間的変動を示すグラフである。図７のグラフの横軸は経過時間であり、縦軸はトークン量である。横軸よりも上の領域は、正のトークン量であり、横軸よりも下の領域は負のトークン量である。
【００３４】
ここでは、例として４個のパケットＰ１〜Ｐ４が順に入力された場合を例に挙げて説明する。結合グループ識別子付与部５０１−ｉは、順に到来するパケットＰ１〜Ｐ４に対して、パケットＰ１、Ｐ２に結合グループ識別子「Ａ」を付与し、パケットＰ３、Ｐ４に結合グループ識別子「Ｂ」を付与したものとする。
【００３５】
ポリサ部５０２−ｉは、結合グループ識別子「Ａ」を持つパケット列の中で先頭パケットＰ１において付与する廃棄優先度の判断を行う。ここでは、パケットＰ１は、設定される帯域値未満であるとし、ポリサ部５０２−ｉは、パケットＰ１に廃棄優先度「低」を付与する。このとき、図７に示すようにパケットＰ１のパケット長分のトークンが減算される。
【００３６】
後続パケットＰ２は結合グループ識別子「Ａ」を有するため、ポリサ部５０２−ｉは、パケットＰ１と同一の廃棄優先度「低」をパケットＰ２に付与する。このとき、図７に示すように、パケットＰ２のパケット長分のトークンが不足していても、ポリサ部５０２−ｉは、廃棄優先度「低」を付与することになる。この場合、トークン量は負の値となることを許容して、ポリサ部５０２−ｉはパケットＰ２のパケット長分のトークンを減算する。
【００３７】
このように、廃棄優先度付与アルゴリズムにしたがうと、本来であれば、パケットＰ２には廃棄優先度「高」が付与されるはずが、トークン量が負になることが許容されるため、パケットＰ２には、結合グループ識別子が同一の直前のパケットＰ１と同一の廃棄優先度「低」が付与される。これにより、パケットＰ１、Ｐ２を同一の結合グループ「Ａ」で、かつ、同一の廃棄優先度「低」として結合することができる。
【００３８】
つぎに、パケットＰ２と異なる結合グループ識別子「Ｂ」を持つパケットＰ３が到来した際に、ポリサ部５０２−ｉは、廃棄優先度の判断を行う。ここでは、パケットＰ３は、設定される帯域値以上とし、ポリサ部５０２−ｉは、パケットＰ３に廃棄優先度「高」を付与する。このとき、図７に示すようにパケットＰ３のパケット長分のトークンが減算されない。
【００３９】
後続パケットＰ４は結合グループ識別子「Ｂ」を有するため、ポリサ部５０２−ｉは、パケットＰ３と同一の廃棄優先度「高」をパケットＰ３に付与する。このとき、図７に示すように、パケットＰ４のパケット長分のトークンが存在していても、ポリサ部５０２−ｉは、廃棄優先度「高」を付与することになる。このとき、図７に示すようにパケットＰ４のパケット長分のトークンが減算されない。
【００４０】
この結果、パケットＰ１、Ｐ２には同一の廃棄優先度「低」が付与され、パケットＰ３、Ｐ４には同一の廃棄優先度「高」が付与される。パケット結合部５０３−ｉは、同一の結合グループ識別子を持つパケット同士の結合を行う。この結果、パケットＰ１、Ｐ２の結合処理とパケットＰ３、Ｐ４の結合処理が行われる。このパケット結合を行うと、同一の廃棄優先度「低」を持つパケットＰ１、Ｐ２が結合され、また、同一の廃棄優先度「高」を持つパケットＰ３、Ｐ４が結合される。したがって、結合パケットにおいて、廃棄優先度の異なるパケットの混在や、パケットの順序性の崩壊を防止することができる。
【００４１】
図８は、図５に示した伝送装置１０１のハードウェア構成例の詳細構成例を示すブロック図である。結合グループ識別子付与部５０１−ｉは、第１のパケット長解析部８１１と、結合グループ識別子付与制御部８１３と、結合グループ識別子付与処理部８１２と、を有する。
【００４２】
第１のパケット長解析部８１１は、到来したパケットを解析してパケット長を特定する。パケット長解析部は、結合グループ識別子付与制御部８１３に対し、特定したパケット長を通知する。
【００４３】
結合グループ識別子付与制御部８１３は、パケット到来毎に通知されるパケット長を積算する。そして、結合グループ識別子付与制御部８１３は、積算パケット長が、指定されたパケット長を超えるまでは、同一の結合グループ識別子をパケットに付与するように、結合グループ識別子付与処理部８１２を制御する。
【００４４】
また、結合グループ識別子付与制御部８１３は、積算後のパケット長が指定されたパケット長を超える場合は、異なる結合グループ識別子を付与するように、結合グループ識別子付与処理部８１２を制御する。この場合、結合グループ識別子付与制御部８１３は、これまでに積算したパケット長を一度０にリセットした後、到来したパケットのパケット長の積算処理を行う。到来したパケットの積算パケット長および付与すべき結合グループ識別子は、結合グループ識別子付与制御部８１３内のメモリに格納される。
【００４５】
結合グループ識別子付与処理部８１２は、結合グループ識別子付与制御部８１３から通知された結合グループ識別子を基に、到来したパケットに対して結合グループ識別子を付与する。そして、結合グループ識別子付与処理部８１２は、結合グループ識別子が付与されたパケットをポリサ部５０２−ｉに出力する。これにより、結合される各グループの総パケット長の均一化を図ることができる。
【００４６】
なお、ここでは、パケット長を用いて、結合グループ識別子を付与することにしたが、パケットの個数により付与することとしてもよい。たとえば、連続１０個までは同一の結合グループ識別子を付与することとしてもよい。これにより、結合グループ識別子の付与処理を簡略化することができる。また、結合グループ識別子付与処理部８１２を、後述するポリサ部５０２−ｉに持たせる構成としても良い。
【００４７】
ポリサ部５０２−ｉは、第２のパケット長解析部８２１と、流量監視部８２２と、結合グループ識別子解析部８２３と、廃棄優先度付与処理部８２４と、を有する。第２のパケット長解析部８２１は、結合グループ識別子付与部５０１−ｉから到来したパケットを解析して、当該パケットのパケット長を特定する。第２のパケット長解析部８２１は、特定したパケット長を流量監視部８２２に通知する。結合グループ識別子解析部８２３は、到来したパケットを解析して、当該パケットに付与された結合グループ識別子を特定し、特定した結合グループ識別子を流量監視部８２２に通知する。
【００４８】
流量監視部８２２は、第２のパケット長解析部８２１から通知されたパケット長と結合グループ識別子解析部８２３から通知された結合グループ識別子を基に、流量監視処理を実行する。流量監視処理には、結合グループ識別子判定処理と廃棄優先度判定処理とトークン演算処理とがある。
【００４９】
結合グループ識別子判定処理は、結合グループ識別子解析部８２３から通知された結合グループ識別子が、直前に到来したパケットの結合グループ識別子と同一識別子であるか否かを判定する処理である。
【００５０】
廃棄優先度判定処理は、結合グループ識別子判定処理による判定結果が同一識別子である場合は、流量監視部８２２において直前に到来したパケットの廃棄優先度が「高」であるかを判定する処理である。直前の到来パケットの廃棄優先度判定処理の判定結果が「高」である場合は、流量監視部８２２は、廃棄優先度「高」を到来パケットに付与するように廃棄優先度付与処理部８２４に通知する。
【００５１】
また、廃棄優先度判定処理は、結合グループ識別子判定処理での判定結果が同一識別子でない場合に、流量監視部８２２が、現在のトークン量がパケット長解析部から通知されたパケット長分のトークン量より少ないか判定する処理も含む。また、これにより、少ない場合は、流量監視部８２２は、廃棄優先度「高」を付与するように廃棄優先度付与処理部８２４に通知する。廃棄優先度付与処理部８２４は、流量監視部８２２から通知された廃棄優先度「高」の付与を受けて、廃棄優先度「高」を到来パケットに付与することになる。
【００５２】
トークン演算処理は、直前の到来パケットについての廃棄優先度判定処理の判定結果が「高」でない場合に、流量監視部８２２がパケット長解析部から通知されたパケット長分のトークンを減算する処理である。また、トークン演算処理は、現在のトークン量がパケット長解析部から通知されたパケット長分のトークン量より多い場合に、流量監視部８２２が、パケット長解析部から通知されたパケット長分のトークンを減算する処理も含む。なお、トークンの量は、流量監視部８２２内のメモリ上に格納される。
【００５３】
廃棄優先度付与処理部８２４は、流量監視部８２２から通知された廃棄優先度を受けて、当該廃棄優先度を到来パケットに付与する。
【００５４】
パケット結合部５０３−ｉは、待機バッファ８３１と、パケット結合管理部８３２と、パケット結合制御部８３３と、管理テーブル８３４と、パケット結合処理部８３５と、を有する。待機バッファ８３１は、ポリサ部５０２−ｉからのパケットを一時的に保持するメモリ領域である。
【００５５】
パケット結合管理部８３２は、タイマを有し、タイマを用いてタイムアウト処理を実行する。タイムアウト判定処理は、タイマの値が設定時間以下か判断し、設定時間を超えた場合にはタイムアウトしたと判定する処理である。
【００５６】
また、パケット結合管理部８３２は、パケット到来判定処理を実行する。パケット到来判定処理は、タイムアウト判定処理の判定結果がタイムアウトしていないという判定結果である場合に、パケットが到来したか判定する処理である。パケットが到来していない場合には、パケット結合管理部８３２は、タイムアウト判定処理に戻る。
【００５７】
また、パケット結合管理部８３２は、パケット到来判定処理の判定結果によりパケットが到来したと判定された場合、到来したパケットを解析して、当該パケットの結合グループ識別子およびパケット長を特定する。また、パケット結合管理部８３２は、特定した結合グループ識別子およびパケット長を管理テーブル８３４に書き込む。管理テーブル８３４の更新例については後述する。
【００５８】
また、パケット結合管理部８３２は、結合グループ識別子判定処理を実行する。結合グループ識別子判定処理は、到来したパケットの結合グループ識別子が直前に到来したパケットの結合グループ識別子と同一であるか判定する処理である。同一である場合には、パケット結合管理部８３２は、タイムアウト判定処理に戻る。同一でない場合、パケット結合管理部８３２は、直前に到来したパケットの結合グループ識別子を持つパケットに関して結合すべきパケットが揃ったと判定する。そして、パケット結合管理部８３２は、結合すべきパケットの結合グループ識別子をパケット結合制御部８３３に通知する。
【００５９】
また、パケット結合管理部８３２は、タイムアウト判定処理の結果、タイムアウトしている場合は直前に到来したパケットの結合グループ識別子を持つパケットに関して結合すべきパケットが揃ったと判定する。この場合、パケット結合管理部８３２は、結合すべきパケットの結合グループ識別子をパケット結合制御部８３３に通知する。その後、パケット結合管理部８３２はタイマを０にリセットする。
【００６０】
パケット結合制御部８３３は、パケット送出問合せ処理を実行する。パケット送出問合せ処理は、パケット結合管理部８３２からの結合グループ識別子の通知を受けて、多重化処理部２０２に対してパケット送出の可否を問い合わせる処理である。多重化処理部２０２は、複数の経路に対して順にパケット送出可の通知をパケット結合制御部８３３に行う。
【００６１】
パケット送出可否問合せ処理の結果、パケット送出が否の場合は、パケット結合制御部８３３は、送出許可が得られるまで待機する。パケット送出可否問合せ処理の結果、パケット送出が可の場合は、パケット結合制御部８３３は、通知された結合グループ識別子を持つパケットのパケット長及びパケット数の情報を管理テーブル８３４から取り出す。
【００６２】
パケット結合制御部８３３は、取りだしたパケット長及びパケット数を待機バッファ８３１及びパケット結合処理部８３５に通知する。この場合、待機バッファ８３１はパケット長およびパケット数を基に、出力すべきデータ量を判断し、データの出力を行う。
【００６３】
パケット結合処理部８３５は、待機バッファ８３１から出力されたパケットの結合処理と、パケット長およびパケット数を結合後のパケットに付与し、多重化処理部２０２へ送出する。その後、パケット結合制御部８３３は、パケット結合されたパケットの結合グループ識別子およびパケット長を管理テーブル８３４から消去する。
【００６４】
＜動作処理手順＞
つぎに、伝送装置１０１の動作処理手順例について説明する。図９では、ポリサ部５０２−ｉの動作処理手順例を示し、図１０では、パケット結合管理部８３２の動作処理手順例を示し、図１１では、パケット結合制御部８３３およびパケット結合処理部８３５の動作処理手順例を示す。
【００６５】
図９は、ポリサ部５０２−ｉの動作処理手順例を示すフローチャートである。ポリサ部５０２−ｉは、パケット長解析部により、到来するパケットのパケット長を解析して流量解析部に通知する（ステップＳ９０１）。また、ポリサ部５０２−ｉは、結合グループ識別子解析部８２３により、到来したパケットの結合グループ識別子を解析して流量解析部に通知する（ステップＳ９０２）。
【００６６】
つぎに、ポリサ部５０２−ｉは、流量解析部により、到来したパケットの結合グル―プ識別子が、その直前のパケットの結合グループ識別子と同一であるか否かを判断する（ステップＳ９０３）。同一である場合（ステップＳ９０３：Ｙｅｓ）、ポリサ部５０２−ｉは、流量解析部により、直前のパケットの廃棄優先度が「高」であるか否かを判断する（ステップＳ９０４）。
【００６７】
「高」である場合（ステップＳ９０４：Ｙｅｓ）、ポリサ部５０２−ｉは、流量監視部８２２により、到来したパケットに廃棄優先度「高」を付与するように、廃棄優先度付与処理部８２４に通知する（ステップＳ９０５）。そして、ポリサ部５０２−ｉは、廃棄優先度付与処理部８２４により、到来したパケットに対し、廃棄優先度「高」を付与する（ステップＳ９０６）。これにより、ポリサ部５０２−ｉの動作を終了する。このあと、ポリサ部５０２−ｉは、パケット結合部５０３−ｉにパケットを出力する。
【００６８】
また、ステップＳ９０４において、直前のパケットの廃棄優先度が「高」でない場合（ステップＳ９０４：Ｎｏ）、ポリサ部５０２−ｉは、流量解析部により、パケット長解析部から通知された到来したパケットのパケット長分のトークンを減算する（ステップＳ９０７）。このあと、ポリサ部５０２−ｉは、流量監視部８２２により、到来したパケットに廃棄優先度「低」を付与するように、廃棄優先度付与処理部８２４に通知する（ステップＳ９０８）。そして、ポリサ部５０２−ｉは、廃棄優先度付与処理部８２４により、到来したパケットに対し、廃棄優先度「低」を付与する（ステップＳ９０９）。これにより、ポリサ部５０２−ｉの動作を終了する。このあと、ポリサ部５０２−ｉは、パケット結合部５０３−ｉにパケットを出力する。
【００６９】
また、ステップＳ９０３において、到来したパケットの結合グル―プ識別子が、その直前のパケットの結合グループ識別子と同一でない場合（ステップＳ９０３：Ｎｏ）、ポリサ部５０２−ｉは、流量監視部８２２により、現在のトークン量がパケット長解析部から通知されたパケット長分のトークン量以下か否かを判定する（ステップＳ９１０）。
【００７０】
現在のトークン量がパケット長解析部から通知されたパケット長分のトークン量以下である場合（ステップＳ９１０：Ｙｅｓ）、ポリサ部５０２−ｉは、流量監視部８２２により、到来したパケットに廃棄優先度「高」を付与するように、廃棄優先度付与処理部８２４に通知する（ステップＳ９１１）。そして、ポリサ部５０２−ｉは、廃棄優先度付与処理部８２４により、到来したパケットに対し、廃棄優先度「高」を付与する（ステップＳ９１２）。これにより、ポリサ部５０２−ｉの動作を終了する。このあと、ポリサ部５０２−ｉは、パケット結合部５０３−ｉにパケットを出力する。
【００７１】
また、現在のトークン量がパケット長解析部から通知されたパケット長分のトークン量以下でない場合（ステップＳ９１０：Ｎｏ）、ポリサ部５０２−ｉは、流量解析部により、パケット長解析部から通知された到来したパケットのパケット長分のトークンを減算する（ステップＳ９０７）。このあと、ポリサ部５０２−ｉは、流量監視部８２２により、到来したパケットに廃棄優先度「低」を付与するように、廃棄優先度付与処理部８２４に通知する（ステップＳ９０８）。そして、ポリサ部５０２−ｉは、廃棄優先度付与処理部８２４により、到来したパケットに対し、廃棄優先度「低」を付与する（ステップＳ９０９）。これにより、ポリサ部５０２−ｉの動作を終了する。このあと、ポリサ部５０２−ｉは、パケット結合部５０３−ｉにパケットを出力する。
【００７２】
図１０は、パケット結合管理部８３２の動作処理手順例を示すフローチャートである。まず、パケット結合管理部８３２は、タイマの値が設定時間以下であるか判断し（ステップＳ１００１）、タイマの値が設定時間を超えた場合（ステップＳ１００１：Ｎｏ）、タイムアウトであるとして、ステップＳ１００６に移行する。一方、タイマの値が設定時間以下である場合（ステップＳ１００１：Ｙｅｓ）、パケットが到来したか否かを判定する（ステップＳ１００２）。パケットが到来していない場合（ステップＳ１００２：Ｎｏ）、ステップＳ１００１に戻る。
【００７３】
一方、パケットが到来した場合（ステップＳ１００２：Ｙｅｓ）、パケット結合管理部８３２は、到来したパケットの結合グループ識別子およびパケット長を解析する（ステップＳ１００３）。そして、パケット結合管理部８３２は、解析した結合グループ識別子およびパケット長を管理テーブル８３４に書き込む（ステップＳ１００４）。
【００７４】
このあと、パケット結合管理部８３２は、到来したパケットの結合グループ識別子とその直前のパケットの結合グループ識別子とが同一であるか否かを判断する（ステップＳ１００５）。同一である場合（ステップＳ１００５：Ｙｅｓ）、ステップＳ１００１に戻る。一方、同一でない場合（ステップＳ１００５：Ｎｏ）、ステップＳ１００６に移行する。
【００７５】
ステップＳ１００６において、パケット結合管理部８３２は、直前に到来したパケットの結合グループ識別子を持つパケットに関して結合すべきパケットが揃ったと判定する。このため、パケット結合管理部８３２は、結合すべきパケットの結合グループ識別子をパケット結合制御部８３３に通知する（ステップＳ１００６）。このあと、パケット結合管理部８３２は、タイマをリセットし（ステップＳ１００７）、一連の処理を終了する。
【００７６】
図１１は、パケット結合制御部８３３およびパケット結合処理部８３５の動作処理手順例を示すフローチャートである。パケット結合制御部８３３は、パケット結合管理部８３２からの結合グループ識別子の通知（ステップＳ１００６）を受けて、多重化処理部２０２に対してパケット送出の可否を問い合わせる。この問い合わせに応じて、多重化処理部２０２は複数の経路に対して順にパケット送出可の通知を行う。これにより、パケット結合制御部８３３は、パケット送出の可否を判断する（ステップＳ１１０１）。パケット結合制御部８３３は、パケット送出の許可を待ち受ける（ステップＳ１１０１：Ｎｏ）。
【００７７】
パケット送出の許可が出た場合（ステップＳ１１０１：Ｙｅｓ）、パケット結合制御部８３３は、結合グループ識別子の通知（ステップＳ１００６）により通知された結合グループ識別子を持つパケットのパケット長およびパケット数を管理テーブル８３４から取り出す（ステップＳ１１０２）。
【００７８】
そして、パケット結合制御部８３３は、取りだしたパケット長およびパケット数を待機バッファ８３１およびパケット結合処理部８３５に通知する（ステップＳ１１０３）。このあと、待機バッファ８３１は、通知されたパケット長およびパケット数を基に、出力すべきデータ量を判断し、データの出力を行う（ステップＳ１１０４）。
【００７９】
このあと、パケット結合処理部８３５は、待機バッファ８３１から出力されたパケットのパケット長およびパケット数を結合後のパケットに付与し、多重化処理部２０２へ送出する（ステップＳ１１０５）。このあと、パケット結合制御部８３３は、パケット結合処理を行ったパケットの結合グループ識別子およびパケット長を管理テーブル８３４から消去する（ステップＳ１１０６）。これにより、一連の処理を終了する。
【００８０】
＜管理テーブル８３４の更新例＞
図１２〜図１６は、管理テーブル８３４の更新例を示す説明図である。図１２〜図１６において、管理テーブル８３４は、項番項目と、パケット長項目と、結合グループ識別子項目とを有し、項番ごとにエントリを構成する。項番項目には、項番が格納される。項番とは、管理テーブル８３４に書き込まれる順序を示す昇順の番号であり、エントリを指定する。パケット長項目には、パケット長が格納される。結合グループ識別子項目には、結合グループ識別子が格納される。
【００８１】
図１２において、たとえば、最初にパケット長５６０［ｂｙｔｅ］で、かつ、結合グループ識別子「Ａ」を持つパケットが到来した場合には，項番「１」を割り当てて、項番「１」のエントリのパケット長項目に５６０［ｂｙｔｅ］が、結合グループ識別子項目に「Ａ」が書き込まれる。
【００８２】
また、図１３に示すように、つぎに、パケット長４００［ｂｙｔｅ］で、かつ、結合グループ識別子「Ａ」を持つパケットが到来した場合には，項番「２」を割り当てて、項番「２」のエントリのパケット長項目に５６０［ｂｙｔｅ］が、結合グループ識別子項目に「Ａ」が書き込まれる。
【００８３】
図１４では、項番「４」まで書き込まれた状態を示す。図１０に示したパケット結合管理部８３２の動作において、到来するパケットの結合グループ識別子と直前のパケットの結合グループ識別子とが同一でない場合（ステップＳ１００５：Ｎｏ）、パケット結合管理部８３２は、結合すべきパケットの結合グループ識別子をパケット結合制御部８３３に通知する（ステップＳ１００６）。図１４では、項番「４」のエントリに対応する到来するパケットの結合グループ識別子「Ｂ」は、項番「３」のエントリに対応する直前のパケットの結合グループ識別子「Ａ」と異なる。したがって、ステップＳ１００６に示したように、パケット結合管理部８３２は、結合グループ識別子「Ａ」を通知する。
【００８４】
また、図１５では、項番「２」まで書き込まれた状態を示す。図１０に示したパケット結合管理部８３２の動作において、タイムアウトになった場合（ステップＳ１００１：Ｎｏ）、パケット結合管理部８３２は、結合すべきパケットの結合グループ識別子をパケット結合制御部８３３に通知する（ステップＳ１００６）。図１５では、パケット結合管理部８３２は、項番「２」のエントリに対応する到来するパケットの結合グループ識別子「Ａ」を通知する。
【００８５】
また、管理テーブル８３４が図１４の状態である場合、図１１に示したパケット結合制御部８３３の動作では、パケット結合制御部８３３は、ステップＳ１１０２において、項番１〜３のパケット長５６０［ｂｙｔｅ］、４００［ｂｙｔｅ］、２００［ｂｙｔｅ］とパケット数「３」を、を管理テーブル８３４から取り出す。
【００８６】
また、管理テーブル８３４が図１４の状態である場合、図１１に示したパケット結合制御部８３３の動作では、パケット結合制御部８３３は、ステップＳ１１０６において、結合グループ識別子「Ａ」を持つパケットの結合処理を行った場合、図１４の項番１〜３のエントリを消去する。これにより、管理テーブル８３４は図１６に示す状態となる。
【００８７】
以上に説明したように、実施例２によれば、廃棄優先度の異なるパケットが混在した状態においても、帯域管理を行いつつ、パケットの順序性を保証することができるパケット結合を行うことができ、伝送効率を高めることが可能となる。
【００８８】
また、上述した実施例では、ポリサ部５０２−ｉは、廃棄優先度付与のアルゴリズムの一例としてトークンバケットアルゴリズムにより帯域管理する例を説明したが、リーキーバケットアルゴリズムにより帯域管理することとしてもよい。この場合、リーキーバケットアルゴリズムでは、バケットが満杯になるまでは、ポリサ部５０２−ｉは設定される帯域内と判断してパケットに廃棄優先度「低」を付与し、バケットが溢れた場合には、バケットから溢れたパケットに廃棄優先度「高」を付与する。
【００８９】
本実施例に適用する場合、ポリサ部５０２−ｉは、同一の結合グループの先頭パケットがバケットから溢れた場合、リーキーバケットアルゴリズムにより先頭パケットに廃棄優先度「高」を付与するとともに、同一の結合グループの後続パケットについても無条件に廃棄優先度「高」を付与する。すなわち、後続パケットについては、バケットから溢れていなくても、ポリサ部５０２−ｉは、出力順序を維持するため、無条件に廃棄優先度「高」を付与する。
【００９０】
また、ポリサ部５０２−ｉは、同一の結合グループの先頭パケットがバケットから溢れていない場合、リーキーバケットアルゴリズムにより先頭パケットに廃棄優先度「低」を付与するとともに、同一の結合グループの後続パケットについても無条件に廃棄優先度「低」を付与する。すなわち、後続パケットについては、バケットから溢れていても、ポリサ部５０２−ｉは、出力順序を維持するため、無条件に廃棄優先度「低」を付与する。
【００９１】
これにより、リーキーバケットアルゴリズムを適用した場合でも、廃棄優先度の異なるパケットが混在した状態においても、帯域管理を行いつつ、パケットの順序性を保証することができるパケット結合を行うことができ、伝送効率を高めることが可能となる。このように、トークンバケットアルゴリズムとリーキーバケットアルゴリズムのいずれのアルゴリズムにおいても本実施例を適用することができ、汎用性の向上を図ることができる。
【００９２】
以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。
【符号の説明】
【００９３】
１００  通信システム
１０１  伝送装置
１０２  スイッチ
１１０  ネットワーク
２０１−ｉ  パケット処理部
２０２  多重化処理部
３０１  ポリサ部
３０２  分離部
３０３−ｊ  パケット結合部
３０４  多重化部
５００−ｉ  パケット処理部
５０１−ｉ  結合グループ識別子付与部
５０２−ｉ  ポリサ部
５０３−ｉ  パケット結合部
【図２】
2014155151.tif 000003
【図３】
2014155151.tif 000004
【図５】
2014155151.tif 000005
【図８】
2014155151.tif 000006
【図９】
2014155151.tif 000007
【図１０】
2014155151.tif 000008
【図１１】
2014155151.tif 000009
【図１２】
2014155151.tif 000010
【図１３】
2014155151.tif 000011
【図１４】
2014155151.tif 000012
【図１５】
2014155151.tif 000013
【図１６】
2014155151.tif 000014
【図１】
2014155151.tif 000015
【図４】
2014155151.tif 000016
【図６】
2014155151.tif 000017
【図７】
2014155151.tif 000018