(57)【特許請求の範囲】
【請求項１】
通信網から優先度を有するデータが入力される通信ポートと、
前記通信ポートに到着した前記データの優先度を確認し、前記データのフレーム長を計測するトラヒック計測部と、
優先度別に蓄積する複数のバッファを有する子ノードの前記バッファ毎に蓄積可能なバッファ割当量、所定期間に前記トラヒック計測部が計測した前記データのフレーム長から得られる優先度別の到着データ量、及び各々の前記バッファから出力される出力データ量、に基づいて前記子ノードの前記バッファに蓄積されている現在のデータ量であるデータ蓄積量を推定し、到着した前記データを該データの優先度に対応する前記バッファに入力できるか否かの本バッファ入力可否判断を行い、前記本バッファ入力可否判断で入力可能であれば前記データの優先度を維持し、前記本バッファ入力可否判断で入力不可であれば前記データの優先度を他の優先度とする優先度決定を行う演算部と、
前記演算部の前記優先度決定に従い、到着した前記データの優先度を維持する又は前記他の優先度に書き換える優先度書換部と、
前記優先度書換部から出力される前記データを前記子ノードに出力する出力ポートと、
を備える親ノード。
【請求項２】
前記演算部は、
前記優先度決定を行う際、前記データの優先度を他の優先度とする場合に、到着した前記データが前記他の優先度に対応する同一の前記子ノードのバッファに入力可能か否かの他バッファ入力可否判断をさらに行い、前記他バッファ入力可否判断で入力不可であれば前記データの優先度を維持することを特徴とする請求項１に記載の親ノード。
【請求項３】
前記演算部は、
各々の前記バッファの前記バッファ割当量、前記データ蓄積量、及び前記出力データ量を保管しており、
前記他バッファ入力可否判断で入力可能である場合、
前記他のバッファの前記バッファ割当量、前記データ蓄積量、及び前記出力データ量に基づき、前記データを前記他のバッファに入力したときの、前記バッファで廃棄されるロスデータ量、到着したデータが前記バッファから出力されるまでの遅延量、及び該遅延量の遅延ゆらぎの推定値を推定し、前記推定値が予め設定されている前記ロスデータ量、前記遅延量、及び前記遅延ゆらぎの許容を満足するか否かの許容判断をさらに行い、前記許容判断で前記推定値が前記許容を不満足であれば前記データの優先度を維持することを特徴とする請求項２に記載の親ノード。
【請求項４】
到着した前記データのフローを識別するフロー識別部をさらに備え、
前記トラヒック計測部は、前記データのフレーム長を前記フロー識別部が識別したフロー単位で計測し、
前記演算部は、前記優先度決定を前記フロー識別部が識別したフロー単位で行うことを特徴とする請求項１から３のいずれかに記載の親ノード。
【請求項５】
請求項１から４のいずれかに記載の親ノードと、
複数の前記バッファ、前記通信装置の前記出力ポートからのデータが入力される入力ポート、前記入力ポートに入力されたデータを該データの優先度に応じて前記バッファに振り分けるデータ振り分け部、及び前記バッファに蓄積されたデータを前記バッファの優先度に応じて読み出して出力する読み出し部を有する子ノードと、
を備える通信システム。
【請求項６】
前記親ノードが光加入者終端装置であり、前記子ノードが光加入者装置であり、
前記親ノードの前記出力ポートと前記子ノードの前記入力ポートとを接続する光導波路をさらに備えることを特徴とする請求項５に記載の通信システム。
【請求項７】
前記親ノードと複数の前記子ノードを収容する筐体と、
前記親ノードの前記出力ポートと複数の前記子ノードの前記入力ポートとを選択して接続するスイッチと、
をさらに備えることを特徴とする請求項５に記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データをその優先度に従って転送する通信装置及び通信システムに関し、特に、データを一時的に格納するバッファの利用効率を向上させることが可能な通信装置及び通信システムに関する。
【背景技術】
【０００２】
近年、１つのアクセス回線にて電話、テレビ、インターネットを実現するトリプルプレイサービスが提供されている。それらのサービスはそれぞれ必要とされる通信品質（データ損失率、遅延、遅延揺らぎ等）が異なる。そのため、通信ネットワークでは様々なサービスを複数のサービスクラスに分類し、サービスクラス毎に満たすべき通信品質（ＱｏＳ：Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）が定められる。
【０００３】
サービスごとに通信品質を制御する方法として、以下の第一の従来技術がある。第一の従来技術では、データにサービスクラスに対応付けられた優先度識別子を設け、通信ネットワークを構成する通信装置は、優先度識別子に基づきデータの転送制御を行うことで通信品質を制御する。
【０００４】
第一の従来技術を、図１を用いて説明する。転送制御を行う通信装置は、優先度識別子に応じてデータを振り分けるデータ振分部８１と、データの優先度に対応した複数の出力バッファ８２と、出力バッファ８２に蓄積されたデータを優先度に応じて読みだす読出部８３とを備える。
【０００５】
通信装置に到着したデータは、予めサービスごとに設定された優先度識別子に応じて予め定められたバッファ８２にデータ振分部８１を介して格納される。格納されたデータは、読出部８３によって出力される。ここで、読出部８３は優先度ごとに定められたバッファ８２の優先度順に格納されたデータを出力する優先制御や、優先度に応じて定められた割合でデータを出力する重み付けラウンドロビンなどの制御を行う。これらの動作により、優先度ごとに異なるデータ転送を行い、通信品質を制御することができる。
【０００６】
第一の従来技術を用いて定められた通信品質を満たすために、ＱｏＳクラスに応じて通信ネットワークに入力されるサービス毎に平均レートと、バースト量と呼ばれるデータの塊の最大値（最大バースト量）を規定することが一般的である。これを以後トラヒック規定と呼ぶ。転送制御方法とトラヒック規定をもとにして、サービスごとの所要の通信品質を満たすように、通信装置の優先度ごとの出力バッファに割当てるべきバッファ量（バッファ割当量）が決定される。
【０００７】
また、サービスごとに通信品質を制御する方法として、以下の特許文献１に示される第二の従来技術がある。
【０００８】
第二の従来技術を、図２を用いて説明する。第二の従来技術では、加入者端末へのパケットを分類し、分類ごとに一定時間内での転送量を測定し、パケットの分類に応じて予め設定された閾値と比較して優先度を決定するプロファイルメータと、プロファイルメータによって決定された優先度を当該パケットに付与するマーカと、パケットの優先度に従って転送あるいは破棄を行うドロッパとを通信ネットワークに配備する。第二の従来技術は、ストリーミングデータにのみ高優先度を付与することで、非ストリーミングでデータの影響を排除し、遅延を抑えることができることからストリーミングデータを安定して配信することができる。
【０００９】
第二の従来技術の動作を、図２を用いて説明する。９１−ａ、９１−ｂは加入者端末、９２−ａ、９２−ｂは宅内ルータ、９３はパケット通信ネットワーク内に配置されたルータ、９４−ａ、９４−ｂは通信ネットワークとサーバをつなぐエッジルータであり、９５はストリーミングやｗｅｂサーバであって、宅内ルータにプロファイルメータ、ルータ９３にマーカ、エッジルータ９４−ａ、９４−ｂにドロッパが具備されているとする。
【００１０】
宅内ルータ９２−ａは加入者端末に転送されるパケットをプロトコルヘッダやトラヒックのバースト性から分類し、分類ごとに一定時間の転送量を測定する。さらに宅内ルータ９２−ａはパケットの分類と測定量と宅内ルータ９２−ａに予め設定された閾値から、パケットの分類ごとに優先度を決定する。特にストリーミングパケットを高い優先度にし、非ストリーミングパケットの優先度をストリーミングパケットより低く決定する。
【００１１】
ルータ９３は宅内ルータ９２−ａにて決定された優先度を該当パケットに付与する。
【００１２】
ルータ９３と宅内ルータ９２−ａの間に設置されたエッジルータ９４−ａはパケットの優先度に従って転送あるいは破棄を行う。
【００１３】
これにより、ストリーミングパケットは非ストリーミングパケットに対して優先的に転送が行われることから、非ストリーミングパケットの影響による遅延を完全に防ぐことができ、安定して加入者端末に配信される。
【００１４】
つまり、第一の技術においては予めデータに優先度識別子が付与されるのに対し、第二の技術においては、転送されるデータの性質によって通信装置が動的に優先度識別子を設定する。なお、第二の技術においても、定められた通信品質を満たすためにトラヒック規定を必要とすることは第一の技術の場合と同様である。
【００１５】
これらの転送制御方法は、アクセス回線を収容するアクセス装置でも用いられる。アクセス装置としては、例えばパッシブ光ネットワーク（Ｐａｓｓｉｖｅ  Ｏｐｔｉｃａｌ  Ｎｅｔｗｏｒｋ：ＰＯＮ）システムを用いたＧＥ−ＰＯＮ（Ｇｉｇａｂｉｔ  Ｅｔｈｅｒｎｅｔ（登録商標）−ＰＯＮ）やＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）、ＶＤＳＬ（Ｖｅｒｙ  ｈｉｇｈ−ｂｉｔ−ｒａｔｅ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）などが用いられる。ＧＥ−ＰＯＮシステムにおける転送制御方法については、例えば非特許文献１に記載される。
【００１６】
公衆網で用いられるアクセス装置は数量が膨大であるため、バッファ量を装置毎に設定管理することは困難である。従って、提供されるサービスの組み合わせをもとに少数のバッファ設定パターンで運用される。これを図３を用いて説明する。
【００１７】
アクセス装置のバッファ設定を簡易化するためには、バッファ割当量を少数の設定パターンとして管理できることが望ましい。バッファ割当量は、サービスごとに必要なバッファ量と、同一優先クラスに収容されるサービスの様々な組み合わせを包含するように決定される。これにより、少数の「設定」パターンにより複数のサービスの組み合わせを実現できる。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特開２００４―２４１９５２号公開
【非特許文献】
【００１９】
【非特許文献１】技術基礎講座“ＧＥ−ＰＯＮ技術  第４回  ＧＥ−ＰＯＮのシステム化機能”、ＮＴＴアクセスサービスシステム研究所、ＮＴＴ技術ジャーナル、Ｖｏｌ．１７、Ｎｏ．１１、ｐｐ．５９−６１、２００５年
【発明の概要】
【発明が解決しようとする課題】
【００２０】
しかしながら、第一の技術および第二の技術をアクセス装置に適用した際には、少数のバッファ設定パターンで運用されるために、サービス利用状況によっては特定の優先度のバッファを有効に利用できないという第一の課題がある。これは、予め想定されるサービスの組み合わせを包含するようにバッファ設定がなされるために、必要としないバッファ量を確保してしまう場合があるためである。そのため、加入者のサービス利用状況やキャリアのサービスメニューの追加・変更によって、予め設定したバッファ量と実際に利用されるバッファ量との間に齟齬が生じた場合に、特定の優先度バッファの使用効率が低下したままの状態になる。最悪の場合、特定の優先度バッファが全く使用されないことも起こり得る。
【００２１】
また、第一の技術および第二の技術では、サービスの組み合わせの変更に伴って、通信品質を低下させずにバッファ設定を変更することが難しいという第二の課題がある。これは、通信装置の全バッファ量における優先度ごとのバッファ量の割当量の変更を行うには、特定のバッファ設定の増減を伴うため、もしサービス中にバッファ設定を減少させた際にはデータ損失が生じ、通信品質を低下させる場合があるためである。
【００２２】
本発明は、上記課題を解消するためになされたものであり、その目的は、通信品質を保証し、かつ、バッファの利用効率を向上することを可能とする通信装置及び通信システムを提供することにある。
【課題を解決するための手段】
【００２３】
前記目標を達成するため、本発明は、データ転送先装置のバッファ状況を考慮して優先度を動的に書き換えることとした。
【００２４】
具体的には、本発明に係る通信装置は、
通信網から優先度を有するデータが入力される通信ポートと、
前記データを優先度別に蓄積する複数のバッファに出力する出力ポートと、
到着したデータの優先度を確認し、前記データのフレーム長を計測するトラヒック計測部と、
前記バッファ毎に蓄積可能なバッファ割当量、所定期間に前記トラヒック計測部が計測した前記データのフレーム長から得られる優先度別の到着データ量、及び各々の前記バッファから出力される出力データ量、に基づいて前記バッファに蓄積されている現在のデータ量であるデータ蓄積量を推定し、到着したデータを該データの優先度に対応する前記バッファに入力できるか否かの本バッファ入力可否判断を行い、前記本バッファ入力可否判断で入力可能であれば前記データの優先度を維持し、前記本バッファ入力可否判断で入力不可であれば前記データの優先度を他の優先度とする優先度決定を行う演算部と、
前記演算部の前記優先度決定に従い、到着したデータの優先度を維持する又は前記他の優先度に書き換える優先度書換部と、
を備える。
【００２５】
本通信装置は、バッファのデータ蓄積量に応じて到着データの優先度を書き換えることで、従来であればバッファ溢れで破棄されるデータを異なる優先度バッファに格納させる。すなわち、本通信装置は、空のあるバッファを有効に利用する。
【００２６】
また、本通信装置は、到着データの優先度を書き換えることでバッファ設定パターンを変更することが不要になる。すなわち、バッファ設定パターンを変更で生じるサービスの通信品質の低下を防止する。
【００２７】
従って、本発明は、通信品質を保証し、かつ、バッファの利用効率を向上することを可能とする通信装置を提供することができる。
【００２８】
本発明に係る通信装置の前記演算部は、前記優先度決定を行う際、前記データの優先度を他の優先度とする場合に、到着したデータが前記他の優先度に対応するバッファに入力可能か否かの他バッファ入力可否判断をさらに行い、前記他バッファ入力可否判断で入力不可であれば前記データの優先度を維持することを特徴とする。
【００２９】
本通信装置は、書き換え先の優先度のバッファにおいてバッファ溢れを起こさない範囲でデータの優先度を書き換える。優先度書き換えによる他の優先度のデータロスを防止することができる。
【００３０】
本発明に係る通信装置の前記演算部は、
各々の前記バッファの前記バッファ割当量、前記データ蓄積量、及び前記出力データ量を保管しており、
前記他バッファ入力可否判断で入力可能である場合、
前記他のバッファの前記バッファ割当量、前記データ蓄積量、及び前記出力データ量に基づき、前記データを前記他のバッファに入力したときの、前記バッファで廃棄されるロスデータ量、到着したデータが前記バッファから出力されるまでの遅延量、及び該遅延量の遅延ゆらぎの推定値を推定し、前記推定値が予め設定されている前記ロスデータ量、前記遅延量、及び前記遅延ゆらぎの許容を満足するか否かの許容判断をさらに行い、前記許容判断で前記推定値が前記許容を不満足であれば前記データの優先度を維持することを特徴とする。
【００３１】
本通信装置は、データの優先度を変更する際、変更先の優先度のバッファにおいて、データ廃棄、遅延、及び遅延ゆらぎが許容を超えるような場合、データの優先度を無変更とする。本通信装置は、優先度毎のバッファ割当（バッファ設定パターン）を変更することなくバッファの利用効率を高めることができる。
【００３２】
本発明に係る通信装置は、到着したデータのフローを識別するフロー識別部をさらに備え、前記トラヒック計測部は、前記データのフレーム長を前記フロー識別部が識別したフロー単位で計測し、前記演算部は、前記優先度決定を前記フロー識別部が識別したフロー単位で行うことを特徴とする。
【００３３】
本通信装置は、フロー単位で優先度の書き換えを行うため、バッファから出力されるデータの順が逆転することを防止できる。
【００３４】
本発明に係る通信システムは、前記通信装置である親ノードと、
複数の前記バッファ、前記通信装置の前記出力ポートからのデータが入力される入力ポート、前記入力ポートに入力されたデータを該データの優先度に応じて前記バッファに振り分けるデータ振り分け部、及び前記バッファに蓄積されたデータを前記バッファの優先度に応じて読み出して出力する読み出し部を有する子ノードと、
を備える。
【００３５】
本通信システムは、親ノードに前記通信装置を採用する。従って、本発明は、通信品質を保証し、かつ、バッファの利用効率を向上することを可能とする通信システムを提供することができる。
【００３６】
本発明に係る通信システムは、前記親ノードが光加入者終端装置であり、前記子ノードが光加入者装置であり、前記親ノードの前記出力ポートと前記子ノードの前記入力ポートとを接続する光導波路をさらに備えることができる。
【００３７】
本発明に係る通信システムは、前記親ノードと複数の前記子ノードを収容する筐体と、前記親ノードの前記出力ポートと複数の前記子ノードの前記入力ポートとを選択して接続するスイッチと、をさらに備えることもできる。
【発明の効果】
【００３８】
本発明は、通信品質を保証し、かつ、バッファの利用効率を向上することを可能とする通信装置及び通信システムを提供することができる。
【図面の簡単な説明】
【００３９】
【図１】関連する技術を説明する図である。
【図２】関連する技術を説明する図である。
【図３】サービスの組み合わせをもとに作成されるバッファ設定パターンを説明する図である。
【図４】本明細書で使用する用語の定義を説明する図である。
【図５】本発明に係る通信システムを説明する図である。
【図６】本発明に係る通信システムを説明する図である。
【図７】本発明に係る通信システムの動作を説明する図である。
【図８】本発明に係る通信システムの動作を説明する図である。
【図９】本発明に係る通信システムを説明する図である。
【図１０】本発明に係る通信システムを説明する図である。
【発明を実施するための形態】
【００４０】
実施形態の説明に先立って、図４を用いて説明に用いる用語を定義する。
【００４１】
バッファ必要量とは、通信ネットワークにおける転送制御方法とトラヒック規定からサービスごとに決定されるバッファ量であり、ここでは「同一優先クラスに収容されるサービスごとのバッファ必要量を全加入サービスで合計したバッファ量」をバッファ必要量と称する。
【００４２】
バッファ割当量とは、通信ネットワークにおける転送制御方法とトラヒック規定からサービスごとに決定されるバッファ量（バッファ必要量）と、同一優先クラスに収容されるサービスの組み合わせを考慮して決定されるバッファ量である。
【００４３】
バッファ割当量は加入者のサービス利用状況に対して固定的であるのに対し、バッファ必要量は加入者のサービス利用状況に対して変動するという性質の違いがある。
【００４４】
バッファ蓄積量とは、通信装置（親ノード）があるデータを受信した時刻において、通信装置の出力ポートに接続された一つまたは複数の通信装置（子ノード）の当該優先度バッファに蓄積されているデータ量のことを指し、過去の入力トラヒック量と、当該装置の転送制御方法と、当該装置の出力速度をもとに算出される。バッファ蓄積量は、サービスの利用状況により変動する。
【００４５】
以下に、本発明の実施の形態について図面を参照して詳細に記述する。以下に説明する実施形態は本発明の実施形態であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。また、図中、３、３１、３２、３３、３４、３５などに付与されている−ａ、−ｂ、−ａ１、−ａ２、−ｂ１、−ｂ２などの記号はそれぞれ複数の要素を区別するための記号であるが、以下では特に区別する必要がない場合は省略して説明する。
【００４６】
（実施形態１）
図５及び図６は、実施形態１の通信システム３０１を説明する図である。図７は、通信システム３０１の動作を説明するフローチャートである。なお、本実施形態では通信システム３０１をＰＯＮシステムを例として説明を行うが、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００４７】
通信システム３０１は、通信装置である親ノード１と、複数のバッファ３３、通信装置の出力ポート１３からのデータが入力される入力ポート３１、入力ポート３１に入力されたデータを該データの優先度に応じてバッファ３３に振り分けるデータ振分部３２、及びバッファ３３に蓄積されたデータをバッファ３３の優先度に応じて読み出して出力する読出部３４を有する子ノード３と、を備える。
【００４８】
親ノード１である通信装置は、通信網から優先度を有するデータが入力される通信ポート１２と、データを優先度別に蓄積する複数のバッファに出力する出力ポート１３と、到着したデータの優先度を確認し、データのフレーム長を計測するトラヒック計測部１４と、バッファ３３毎に蓄積可能なバッファ割当量、所定期間にトラヒック計測部１４が計測したデータのフレーム長から得られる優先度別の到着データ量、及び各々のバッファ３３から出力される出力データ量、に基づいてバッファ３３に蓄積されている現在のデータ量であるデータ蓄積量を推定し、到着したデータを該データの優先度に対応するバッファ３３に入力できるか否かの本バッファ入力可否判断を行い、本バッファ入力可否判断で入力可能であればデータの優先度を維持し、本バッファ入力可否判断で入力不可であればデータの優先度を他の優先度とする優先度決定を行う演算部１６と、演算部１６の優先度決定に従い、到着したデータの優先度を維持する又は前記他の優先度に書き換える優先度書換部１５と、を備える。
【００４９】
また、演算部１６は、優先度決定を行う際、データの優先度を他の優先度とする場合に、到着したデータが他の優先度に対応するバッファに入力可能か否かの他バッファ入力可否判断をさらに行い、他バッファ入力可否判断で入力不可であればデータの優先度を維持することとしてもよい。
【００５０】
親ノード１は、例えば、ＯＬＴである。受信側ノード３は、例えば、ＯＮＵである。以下の説明において、親ノード１を通信装置１又はＯＬＴ１、子ノード３を受信側ノード３又はＯＮＵ３と記載することがある。ＯＬＴ１と送信側ノード２は通信ポート１２を介して接続される。なお送信側ノード２および通信ポート１２は一つまたは複数のいずれでもよい（図５では１つの例を示す）。
【００５１】
また、通信システム３０１は、親ノード１の出力ポート１３と子ノード３の入力ポート３１とを接続する光導波路４をさらに備える。ＯＬＴ１と複数のＯＮＵ３は、光導波路４を介して出力ポート１３に接続される。光導波路４は、例えば、光ファイバと光学スプリッタで構成される。ＯＬＴ１の出力ポート１３はデータを電気信号から光信号へ変換して光導波路４へ出力する。また、ＯＮＵ３の入力ポート３１は光導波路４からのデータを光信号から電気信号へ変換して受信する。
【００５２】
ＯＬＴ１は通信ポート１２と、通信ポート１２が受信した優先度およびトラヒック量をＯＮＵ３ごとに計測するトラヒック計測部１４と、トラヒック計測部により得られた測定量、ＯＮＵ３のバッファ割当量、ＯＮＵ出力速度、転送制御方法からＯＮＵ３における優先度ごとのバッファ蓄積量を計算する演算部１６と、演算部１６での推定結果に応じてデータの優先度識別子を書き換える優先度書換部１５と、ＯＮＵ３にデータを転送する一つまたは複数の出力ポート１３と、を備える。
【００５３】
ＯＮＵ３はＯＬＴ１からデータを受信する入力ポート３１と、受信したデータの優先度に従ってデータを振り分けるデータ振分部３２と、データの優先度ごとに設けられた複数のバッファ３３と、バッファ３３に蓄積された優先度に応じてデータを読みだす読出部３４と、ルータやスイッチやＰＣなどの端末にデータ通信を転送する出力ポート３５を備える。
【００５４】
ＯＮＵ３の各バッファ３３には各優先度におけるバッファ割当量がそのまま設定される。
【００５５】
以下、図７も用いて通信システム３０１の動作を説明する。
ＯＬＴ１のトラヒック計測部１４は、通信ポート１２から入力されたデータについて、宛先ＯＮＵ３、優先度およびデータのフレーム長を計測し結果を演算部１６に通知する（ステップＳ１０１、Ｓ１０２）。なお、トラヒック計測部１４が測定するトラヒック量は、同一優先度のバースト量でも、レートでもよい。
【００５６】
演算部１６は、トラヒック計測部１４にて測定されたデータのフレーム長、ＯＮＵ３の出力速度、ＯＮＵ３の読出部３４の読み出し方式、ＯＮＵ３の各優先度のバッファ割当量をデータとして保持する。また、各優先クラスのバッファ必要量を予め決定し、予約バッファ量として保持する。
【００５７】
演算部１６は、過去にトラヒック計測部１４で計測されたデータのフレーム長、ＯＮＵ３の出力速度、転送制御方法から、ＯＮＵ３の優先度毎にバッファ３３の現在のバッファ蓄積量を計算する（ステップＳ１０３）とともに、ＯＮＵ３におけるバッファ割当量と比較する（ステップＳ１０４）。すなわち、ステップＳ１０４で本バッファ入力可否判断を行う。
【００５８】
計算されたバッファ蓄積量がバッファ割当量を超過しない（バッファ溢れが発生しない）場合、演算部１６は優先度書換部１５に指示を出さず、優先度書換部１５は、データの優先度の書き換えをせずそのまま出力ポート１３へ転送する（ステップＳ１０８）。
【００５９】
一方、計算されたバッファ蓄積量がバッファ割当量を超過する（バッファ溢れが発生する）場合、演算部１６は、バッファ溢れが発生していない他の優先度のバッファを選択（ステップＳ１０５）し、選択された優先度のバッファ必要量と該当データ長の和を選択された優先度のバッファ割当量と比較する（ステップＳ１０６）。すなわち、ステップＳ１０６で他バッファ入力可否判断を行う。
【００６０】
ステップＳ１０６で比較した結果、他の優先度のバッファについてバッファ溢れが発生しないのであれば、演算部１６は、該当データの優先度識別子を選択された優先度に対応した識別子に書き換えを指示する。なお、優先度書き換え先バッファの選択については、例えば該当データに対し一段階高い優先度に対応したバッファを優先的に選択したり、バッファ蓄積量が最も少ないバッファを選択するなど、書き換え元と書換え先の関係を予め指定しておいもよい。
【００６１】
ステップＳ１０６で比較した結果、他の優先度のバッファについてバッファ溢れが発生すれば、演算部１６は、優先度書換部１５に指示を出さず、優先度書換部１５は、データの優先度の書き換えをせずそのまま出力ポート１３へ転送する（ステップＳ１０８）。なお、演算部１６は、さらに他の優先度のバッファを選択し、ステップＳ１０５とステップＳ１０６を繰り返してもよい。
【００６２】
優先度書換部１５は、演算部１６からの書換え指示に対応する優先度のデータについて優先度を書き換え（ステップＳ１０７）、あるいは演算部１６からの書換え指示が無ければデータの優先度を書き換えず、出力ポート１３へ転送する（ステップＳ１０８）。図７において、ステップＳ１０４からステップＳ１０６が演算部１６が行う「優先度決定」である。
【００６３】
ＯＮＵ３に到着したデータは入力ポート３１からデータ振分部３２に転送される。データ振分部３２は予め設定された優先度識別子に応じて予め定められたバッファ３３に格納される。
【００６４】
格納されたデータは、読出部３４によって出力される。ここで、読出部３４は優先度ごとに定められたバッファ３３の優先度順に格納されたデータを出力する優先制御や、優先度ごとに定められたバッファの優先度に応じて定められた割合でデータを出力する重み付けラウンドロビンなどの制御を行う。
【００６５】
読出部３４は、読みだされたデータを出力ポート３５からルータやスイッチやＰＣなどへデータを出力する。
【００６６】
図６を用いて通信システム３０１の具体的な動作を説明する。低優先度のデータＡがＯＬＴ１の通信ポート１２に到着すると、データＡはトラヒック測定部１４に転送され、優先度およびフレーム長を記録される。
【００６７】
演算部１６は、データＡのフレーム長、データＡが到着する前のＯＮＵ３−ａの優先バッファ３３−ａ２のバッファ蓄積量、及びＯＮＵ３−ａの出力ポート３５−ａからのデータの出力速度と転送制御方法、に基づきデータＡが優先バッファ３３−ａ２に蓄積された際のバッファ蓄積量を算出する。演算部１６は、データＡが優先バッファ３３−ａ２に蓄積された際のバッファ蓄積量と予め優先バッファ３３−ａ２に設定したバッファ割当量を比較し、データＡを優先バッファ３３−ａ２に入力できるか否かを判断する。そして、演算部１６は、当該判断に基づきデータＡを入力する蓄積先バッファを決定する。
【００６８】
なお、演算部１６がバッファ蓄積量を計算する方法としては、例えば、データがバッファに蓄積される際にはそのデータのデータ長を加算し、転送制御方法に従ってバッファからデータが排出される際にはそのデータのデータ長を減算するといった計算を逐次的に行う公知の方法を用いることができる。
【００６９】
図６の場合、データＡを優先バッファ３３−ａ２に入力しても優先バッファ３３−ａ２のバッファ蓄積量が割当量を超えない。このため、優先度書換部１５はデータＡについて優先度書き換えの処理を行わずにＯＮＵ３−ａに転送する。そして、データＡはデータ振分部３２で優先バッファ３３−ａ２に振り分けられ、蓄積される。
【００７０】
データＡに続き通信ポート１２に到着したデータＢに関しても同様であり、トラヒック測定部１４に転送され、優先度及びフレーム長を記録される。演算部１６は、データＢのフレーム長、データＢが到着する前のＯＮＵ３−ａの優先バッファ３３−ａ２のバッファ蓄積量、及びＯＮＵ３−ａの出力ポート３５−ａからのデータの出力速度と転送制御方法、に基づきデータＢが優先バッファ３３−ａ２に蓄積された際のバッファ蓄積量を算出する。演算部１６は、データＢが優先バッファ３３−ａ２に蓄積された際のバッファ蓄積量と予め優先バッファ３３−ａ２に設定されたバッファ割当量を比較し、データＢを優先バッファ３３−ａ２に入力できるか否かを判断する。そして、演算部１６は、当該判断に基づきデータＢを入力する蓄積先バッファを決定する。
【００７１】
図６の場合、データＢを優先バッファ３３−ａ２に入力すると優先バッファ３３−ａ２のバッファ蓄積量が割当量を超えるため、演算部１６は、他のバッファを検索する。演算部１６は、最優先バッファ３３−ａ１を次の書き換え先バッファとして選択し、データＢのフレーム長と最優先クラスにおけるバッファ必要量の和と予め最優先バッファ３３−ａ１に設定されたバッファ割当量を比較する。図６の場合、データＢのフレーム長と最優先バッファ３３−ａ１におけるバッファ必要量の和がバッファ割当量を超えないため、優先度書換部１５はデータＢの優先度を優先から最優先に書き換え、ＯＮＵ３−ａに転送する。最優先に優先度が書き換えられたデータＢは、データ振分部３２で最優先バッファ３３−ａ１に振り分けられ、蓄積される。
【００７２】
以上のように、通信システム３０１は、ＯＬＴ１がＯＮＵ３におけるバッファ蓄積状態を計算し、バッファの蓄積状態に応じてデータの優先度を書き換える。この動作により、通信システム３０１は、従来の装置ではバッファ溢れによって破棄されるデータを異なる優先度バッファにバッファ溢れを起こさない範囲で格納させることが可能となり、バッファの利用効率を向上させることができる。
【００７３】
（実施形態２）
通信システム３０１は、優先度の書き換えを実施形態１で説明した判断と異なる判断で行ってもよい。図８は実施形態２の通信システム３０１の動作を示すフローチャートである。図７で説明した実施形態１の通信システム３０１の動作と異なるステップを中心に説明する。
【００７４】
演算部１６は、各々のバッファ３３のバッファ割当量、データ蓄積量、及び出力データ量を保管しており、
到着したデータが他のバッファ３３に入力可能と判断した場合、
他のバッファ３３のバッファ割当量、データ蓄積量、及び出力データ量に基づき、データを他のバッファ３３に入力したときの、バッファ３３で廃棄されるロスデータ量、到着したデータがバッファ３３から出力されるまでの遅延量、及び該遅延量の遅延ゆらぎを推定し、
予め設定されているロスデータ量、遅延量、及び遅延ゆらぎの許容を満たす場合に優先度書換部１５にデータの優先度を他のバッファ３３の優先度に書き換えさせる。
【００７５】
ここで、ロスデータ量とは、バッファ３３で廃棄されるデータの量を意味する。演算部１６は、トラヒック計測部１４を通過するデータ量と、ＯＮＵ３の出力速度及びＯＮＵ３の読出部３４の読み出し方式と、に基づいて、ある時点でのバッファ３３毎（優先度毎）のロスデータ量を算出できる。
【００７６】
遅延量とは、あるデータがＯＬＴ１の通信ポート１２に入力した時刻からＯＮＵ３の出力ポート３５から出力される時刻までの時間を意味する。演算部１６は、各バッファ３３のバッファ蓄積量を推定しており、このバッファ蓄積量と、ＯＮＵ３の出力速度及びＯＮＵ３の読出部３４の読み出し方式と、に基づいて、ある時点のバッファ３３毎（優先度毎）の遅延量を算出できる。また、演算部１６は、遅延量は時刻とともに変化するので、バッファ３３毎（優先度毎）の遅延ゆらぎも算出することができる。
【００７７】
演算部１６は、トラヒック計測部１４にて測定されたデータのフレーム長、ＯＮＵ３の出力速度、ＯＮＵ３の読出部３４の読み出し方式、及びＯＮＵ３の各優先度バッファ割当量を保持し、各優先度のバッファ必要量、各優先度のデータのロスデータ量、遅延量、及び遅延揺らぎを計算する。ステップＳ１０１からステップＳ１０６までは図７の説明と同じである。
【００７８】
ステップＳ１０６で比較した結果、他の優先度のバッファについてバッファ溢れが発生しないのであれば、演算部１６は、データの優先度を書き換えて選択されたバッファに蓄積された場合の当該優先度のロスデータ量、遅延量、及び遅延ゆらぎを算出し、予め設定された許容値と比較する（ステップＳ１２１）。すなわち、ステップＳ１２１で許容判断を行う。
【００７９】
これらが許容値を満たすのであれば、演算部１６は、優先度変更の判断を行い、優先度書換部１５に該当データの優先度識別子を選択された優先度に対応した識別子に書き換えさせる（ステップＳ１０７）。
【００８０】
一方、ステップＳ１２１でロスデータ量、遅延量、及び遅延ゆらぎが許容値を満たさない場合、演算部１６は、優先度書換部１５に指示を出さず、優先度書換部１５は、データの優先度の書き換えをせずそのまま出力ポート１３へ転送する（ステップＳ１０８）。図８において、ステップＳ１０４からステップＳ１０６、及びステップＳ１２１が演算部１６が行う「優先度決定」である。
【００８１】
このような判断を演算部１６が行うことで、ＯＮＵ３の優先度ごとのバッファ割当（バッファ設定パターン）を変更する必要がなく、バッファ３３の利用効率を高めることができる。
【００８２】
（実施形態３）
図９は、本実施形態の通信システム３０３の構成を説明する図である。通信システム３０３と図５の通信システム３０１との違いは、ＯＮＵ１が到着したデータのフローを識別するフロー識別部１７をさらに備え、トラヒック計測部１４が、データのフレーム長をフロー識別部１７が識別したフロー単位で計測し、演算部１６が、優先度書き換えの判断をフロー識別部１７が識別したフロー単位で行うことである。
【００８３】
フロー識別部１７は受信したデータから特定のフローを抽出する機能を有している。ここでフローとは［宛先、送信元ＩＰアドレス、プロトコル種別、上位プロトコルの宛先、、送信元ポート番号］の組によって一意に表されるデータ群を示す。
【００８４】
なお、本実施形態におけるフロー識別には、［宛先、送信元ＩＰアドレス、プロトコル種別、上位プロトコルの宛先、送信元ポート番号］の組を識別キーとしたハッシュ回路や、ＩＰｖ６フローラベルなど、任意の識別子を利用することができる。
【００８５】
通信システム３０３は、図７で説明した動作をフロー単位、すなわちフローに含まれる複数のデータのまとまり単位で行う。詳細には、通信システム３０３は、ＯＬＴ１の通信ポート１２が送信側ノード２から受信したデータをフロー識別部１７によってフロー毎に分類し、トラヒック測定部１４にてＯＮＵ３毎かつ優先度毎にフレーム長を測定し、当該データを優先度書換部１５に転送する。また、優先度書換部１５は演算部１６の書換え判定に応じて、フロー単位に優先度の書き換えを行った後、出力ポート１３へフレームを転送する。
【００８６】
通信システム３０３は、フローを識別し、フロー単位に優先度の書きかえを行うことが可能であることから、同一フローにおいてデータの順が変わること（ＯＬＴ１が受信したデータ順とＯＮＵ３から出力されるデータ順が異なる）を防ぐことができる。
【００８７】
（実施形態４）
図１０は、本実施形態の通信システム３０４の構成を説明する図である。通信システム３０４と図５の通信システム３０１との違いは、親ノード１と複数の子ノード３を収容する筐体１０と、親ノード１の出力ポート２３と複数の子ノード３の入力ポート２４とを選択して接続するスイッチ２１と、をさらに備えることである。筐体１０は、親ノード１と子ノード３を含む。親ノード１の出力ポート２３はデータを電気信号のままスイッチ２１へ出力する。子ノード３の入力ポート２４はスイッチ２１からのデータを電気信号のまま受信する。スイッチ２１は、データの宛先を確認して入力ポート２４を選択するスイッチ部である。
【００８８】
通信システム３０４は、データを電気信号のまま親ノード１から子ノード３へ転送できる。従って、通信システム（３０１、３０３）と比較して構成を簡略化できる。
【００８９】
実施形態１〜３では、親ノードと子ノードが光学スプリッタを介して接続される形態についての例を説明したが、本発明はこれに限るものでなく、図１０に示すように、親ノードと子ノードが同一の筐体内に収容される場合においても適用可能である。
【００９０】
従って、通信システム３０４は、通信システム３０１の説明と同様に動作し、バッファの利用効率を向上させることができる。
【００９１】
（効果）
実施形態１〜４で説明した通信システムは、通信装置（親ノード）がデータ転送先（子ノード）におけるバッファ蓄積状態を計算し、バッファの蓄積状態に応じてデータの優先度を書き換えることで、従来の装置ではバッファ溢れによって破棄されるデータを異なる優先度バッファにバッファ溢れを起こさない範囲で格納させることが可能となり、バッファの利用効率を向上する。
【００９２】
また、データの測定から優先度の書き換えまで、通信装置（親ノード）で一元的に行うため、データ転送先（子ノード）通信装置の搭載バッファに変更を加えることなく、通信装置搭載バッファの利用効率を高めることができる。
【００９３】
以下は、実施形態１〜４の通信システム（３０１、３０３、３０４）及び通信装置（ＯＬＴ１）の構成をまとめたものである。
（１）
通信網に接続される通信装置であって、
通信網からのデータを受信する一つまたは複数の入力ポートと、
受信したトラヒック量を計測する第１の手段と、
トラヒック量から出力ポートに接続された一つまたは複数の通信装置におけるバッファ蓄積量を計算する第２の手段と、
データに付与された優先度に対応したバッファ蓄積量に応じてデータに付与された優先度の書き換え判定を行う第３の手段と、
書き換え判定の結果に応じてデータに付与された優先度の書き換えを実行する第４の手段と、
データを転送する一つまたは複数の出力ポートと、
を備えることを特徴とする通信装置。
【００９４】
（２）
上記（１）に記載の通信装置であって、
第１の手段は、トラヒック量をフロー単位に計測し、
第３の手段は、バッファ蓄積量に基づき、データに付与された優先度の書き換えの可否をフロー単位に決定し、データに付与された優先度の書き換えを実行することを特徴とする通信装置。
【００９５】
（３）
上記（１）または（２）に記載の通信装置を親ノードとし、親ノードに一つまたは複数の子ノードが接続される通信システムであって、
第２の手段は、子ノードにおけるバッファ蓄積量を計算し、
出力ポートは一つまたは複数の子ノードにデータを転送し、  
子ノードは、
親ノードからデータを受信する入力ポートと、
受信したデータの優先度に従ってデータを振り分けるデータ振分部と、
データの優先度ごとに設けられた複数の出力バッファと、
出力バッファに蓄積された優先度に応じてデータを読みだす読出部と、
を出力ポートと、
を備えることを特徴とする通信システム。
【００９６】
（４）
上記（３）に記載の通信システムであって
第３の手段は、データに付与された優先度に対応したバッファ蓄積量と、予め設定されたバッファ割当量との比較に基づき、データに付与された優先度の書き換えの可否を決定し、
バッファ蓄積量がバッファ割当量を超える場合、異なる優先度バッファを選択し、選択されたバッファの蓄積量と、予め設定されたバッファ割当量との比較に基づき、データに付与された優先度の書き換えの可否を決定し、データに付与された優先度の書き換えを実行する
ことを特徴とする通信システム。
【００９７】
（５）
上記（３）に記載の通信システムであって
第３の手段は、データに付与された優先度に対応したバッファ蓄積量と、予め設定されたバッファ割当量との比較に基づき、データに付与された優先度の書き換えの可否を決定し、
バッファ蓄積量がバッファ割当量を超える場合、異なる優先度バッファを選択し、選択されたバッファの蓄積量と予め設定された予約バッファ量の和と、予め定められた値との比較に基づき、データに付与された優先度の書き換えの可否を決定し、データに付与された優先度の書き換えを実行する
ことを特徴とする通信システム。
【００９８】
（６）
上記（３）〜（５）に記載の通信システムであって、
親ノードと子ノードが、それぞれ光加入者終端装置、光加入者装置として光ファイバと光スプリッタで接続されることを特徴とする通信システム。
【００９９】
（７）
上記（３）〜（５）に記載の通信システムであって
親ノードと子ノードが、一つの筐体に収容されることを特徴とする通信システム。
【符号の説明】
【０１００】
１：ＯＬＴ、親ノード、又は通信装置
２：送信側ノード
３、３−ａ、３−ｂ：ＯＮＵ、又は子ノード
４：光導波路
１０：筐体
１２：通信ポート
１３：出力ポート
１４：トラヒック計測部
１５：優先度書換部
１６：演算部
１７：フロー識別部
２１：スイッチ
２３：出力ポート
２４：入力ポート
３１、３１−ａ、３１−ｂ：入力ポート
３２、３２−ａ、３２−ｂ：データ振分部
３３、３３−ａ１、３３−ａ２、３３−ｂ１、３３−ｂ２：バッファ
３４、３４−ａ、３４−ｂ：読出部
３５、３５−ａ、３５−ｂ：出力ポート
８１：データ振分部
８２：バッファ
８３：読出部
９１、９１−ａ、９１−ｂ：加入者端末
９２、９２−ａ、９２−ｂ：宅内ルータ、又はプロファイルメータ
９３：ルータ
９４、９４−ａ、９４−ｂ：エッジルータ
９５：サーバ
３０１、３０３、３０４：通信システム
【図１】
0005706811.tif 000002
【図２】
0005706811.tif 000003
【図３】
0005706811.tif 000004
【図４】
0005706811.tif 000005
【図５】
0005706811.tif 000006
【図６】
0005706811.tif 000007
【図７】
0005706811.tif 000008
【図８】
0005706811.tif 000009
【図９】
0005706811.tif 000010
【図１０】
0005706811.tif 000011