(57)【要約】      （修正有）【課題】各ユーザノードからのフローごとキューを用いず、同時にフレームヘッダに対する値の書き込みを行わずに、各フローの入力レートに基づいたフレーム廃棄を行い、各ユーザノードからのフロー間のスループットを公平化する。【解決手段】通信装置１及びマスタ装置を備え、通信装置１は入力レートごとに振り分ける振り分け部１１と、振り分け結果に基づいてフレームにフラグを付与するフラグ付与部１２と、フラグとフレーム廃棄閾値Ｔに基づいてフレームを廃棄する廃棄判断部１３と、を備え、マスタ装置は、通信装置１のレート測定結果に基づき、フレーム廃棄閾値Ｔを算出して通信装置１に送信する。【選択図】図２
2015154378.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークであって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置は、
特定ポートから受信したフレームごとに入力レートを測定するレート測定部と、
前記レート測定部の測定した入力レートに応じたフラグをフレームに付与するフラグ付与部と、
前記レート測定部の測定した入力レートを前記マスタ装置に対して送信するレート送信部と、
前記フラグ付与部の付与したフラグを前記マスタ装置から受信したフレーム廃棄閾値と比較し、フレーム廃棄閾値に対して予め定められた関係にあるフラグのフレームを廃棄するフラグ判断部と、
各フレームに付与されたフラグを除去するフラグ除去部と、
前記フラグ除去部においてフラグを除去したフレームを前記マスタ装置に向けて送信するフレーム送信部と、
を備え、
前記マスタ装置は、
前記レート送信部から送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、前記フレーム廃棄閾値を算出して前記通信装置に送信する廃棄閾値算出部と、を備える
通信システム。
【請求項２】
前記レート測定部は、
入力レートの値をＮ段階で表すためのレート判断基準をあらかじめ設定し、
ｉ番目（ｉは正数）のフローの入力レートｒｉを測定した上で、
前記レート判断基準を用いてｄｉ（ｄｉは０≦ｄｉ≦Ｎを満たす整数）に変換し、
前記フラグ付与部は、
ｉ番目のフローのフレーム受信時に、当該フレームに対してフラグｎ（ｎは０≦ｎ≦ｄｉを満たす整数）をランダムに付与する、
ことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記フレーム廃棄部は、
前記フレーム廃棄閾値Ｔの整数部分Ｍ及び小数部分Ｐとフレームに付与された前記フラグｎとを比較し、
ｎ＞Ｍであれば廃棄し、
ｎ＝Ｍであれば確率１−Ｐで廃棄し、
Ｍ＝Ｎであればｎ＝Ｍのとき全て廃棄とする、
ことを特徴とする請求項２に記載の通信システム。
【請求項４】
前記レート送信部は、
各フローの入力レートについて、前記Ｎ段階の各段階に存在するフロー数、すなわち段階ｋ（ｋは１≦ｋ≦Ｎを満たす整数）に関しｄｉ＝ｋを満たすフローｉの数ｊｋを求め、
マスタ装置に対して、算出されたｊｋを送信し、
前記廃棄閾値算出部は、
各通信装置から受信したｊｋに基づき、整数ｋ（１≦ｋ≦Ｎ−１）を用いて、ｄｉ≧ｋを満たすフローの数Ｊｋを求め、入力レートの段階ｋ間の差分レートＲｋを求め、フローの数Ｊｋ及び差分レートＲｋを用いて式（Ｃ１）を満たす入力レートの段階ｋ０を求め、
式（Ｃ２）を用いて前記フレーム廃棄閾値Ｔの整数部分Ｍを求め、式（Ｃ３）を用いて前記フレーム廃棄閾値Ｔの小数部分Ｐを求めることによって、前記フレーム廃棄閾値Ｔを算出する
ことを特徴とする請求項２又は３に記載の通信システム。
【数Ｃ１】
2015154378.tif 000008
【数Ｃ２】
2015154378.tif 000009
【数Ｃ３】
2015154378.tif 000010
【請求項５】
前記マスタ装置の廃棄閾値算出部は、
ｋ（１≦ｋ≦Ｎ）についてのΣＪｋＲｋが一定以上の場合に、前記フレーム廃棄閾値を算出して前記通信装置に送信する、
ことを特徴とする請求項４に記載の通信システム。
【請求項６】
前記マスタ装置は、
前記複数の通信装置から前記エッジルータへのフレームを蓄積する出力キューを備え、
前記廃棄閾値算出部は、前記出力キューに蓄積されているキュー長が一定以上の場合に、前記フレーム廃棄閾値を算出して前記通信装置に送信する、
ことを特徴とする請求項１から５のいずれかに記載の通信システム。
【請求項７】
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークにおける通信方法であって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、特定ポートから受信したフレームごとに入力レートを測定し、測定した入力レートごとに種類の異なるフラグをフレームに付与するとともに、測定した入力レートを前記マスタ装置に対して送信するフラグ付与及びレート送信手順と、
前記マスタ装置が、前記レート送信手順で送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、前記フレーム廃棄閾値を算出して前記通信装置に送信する廃棄閾値算出手順と、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、フレームに付与されたフラグの種類に応じて、フレームを廃棄するフラグ判断手順と、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、各フレームに付与されたフラグを除去し、フラグを除去後のフレームを前記マスタ装置に向けて送信するフレーム送信手順と、
を順に有する通信方法。
【請求項８】
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークに用いられる前記マスタ装置を除く前記通信装置であって、
特定ポートから受信したフレームごとに入力レートを測定するレート測定部と、
前記レート測定部の測定した入力レートに応じたフラグをフレームに付与するフラグ付与部と、
前記レート測定部の測定した入力レートを前記マスタ装置に対して送信するレート送信部と、
前記フラグ付与部の付与したフラグを前記マスタ装置から受信したフレーム廃棄閾値と比較し、フレーム廃棄閾値に対して予め定められた関係にあるフラグのフレームを廃棄するフラグ判断部と、
各フレームに付与されたフラグを除去するフラグ除去部と、
前記フラグ除去部においてフラグを除去したフレームを前記マスタ装置に向けて送信するフレーム送信部と、
を備える
通信装置。
【請求項９】
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークに用いられる前記マスタ装置であって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置から送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、各通信装置においてフレームを廃棄する基準となるフレーム廃棄閾値を算出する廃棄閾値算出部と、を備える
マスタ装置。
【請求項１０】
コンピュータを請求項８に記載のレート測定部、フラグ付与部、レート送信部、フラグ判断部及びフレーム送信部として機能させるためのプログラム。
【請求項１１】
コンピュータを請求項９に記載の廃棄閾値算出部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、通信装置及び通信方法に関し、特に、通信装置におけるトラヒック制御技術に係に関するものである。
【背景技術】
【０００２】
一般に、アクセスネットワークにおいて、データの転送制御を行う通信装置は、ユーザノードから転送されたトラヒックの集線を行い、ユーザトラヒックを多重化した上で、エッジルータを通じコアネットワーク（通信事業者間を接続する大容量の基幹通信ネットワーク）に転送する。各通信装置は、フレームに記載されたＣＯＳ（Ｃｌａｓｓ  ｏｆ  Ｓｅｒｖｉｃｅ）などの値を用いて優先度を識別し、ＶＬＡＮＩＤなどのユーザ識別子を用いて送信元ユーザを識別する。特に、集線を効率的に行うためには、通信装置を多段接続した上で、コアネットワークに接続する構成が必要となる。キャリアネットワークにおいては、信頼性向上の観点から装置や経路の冗長化が重要であり、従来ＥＲＰ（Ｅｔｈｅｒｎｅｔ（Ｅｔｈｅｒｎｅｔは登録商標）  Ｒｉｎｇ  Ｐｒｏｔｅｃｔｉｏｎ）等を適用したレイヤ２リングトポロジが広く採用されている。
【０００３】
しかしながら、レイヤ２リングトポロジにおいては、ユーザ間でスループットや遅延などといった転送品質に不公平が生じる。これは、ユーザノードが接続された通信装置によって、コアネットワークに至るまでに経由する通信装置数が異なることに起因する。このような不公平性を改善するためには、転送品質の公平性を実現するための公平制御が必要である。
【０００４】
ユーザ間のスループット公平性を実現するための第１の関連技術として、非特許文献１に記載の手法がある。この技術は、スレーブ装置が各ユーザノードからのフローごとのキューを持ち、各ユーザノードからのフローの入出力レートを観測した上でマスタ装置に報告し、マスタ装置が周期的に帯域割り当て計算を行い、スレーブ装置は割り当て帯域に基づいたレートで各ユーザノードからのフローごとのキューをＤＲＲ（ｄｅｆｉｃｉｔ  ｒｏｕｎｄ  ｒｏｂｉｎ）出力することで、スループット公平化を図る。
【０００５】
第２の関連技術として、非特許文献２に記載の手法がある。この技術は、各ユーザノードからのフローごとに一つのトークンバケットを用い、ユーザノードからのフローの入力レートに応じたマーキング閾値に基づいてフレームヘッダに廃棄優先度を書き込んだ上で転送し、キュー長が伸び輻輳が強まるほど廃棄色数を増やし、入力レートが大きいフローのフレームを優先的に廃棄することで、スループット公平化を図る。
【０００６】
これらの技術を用いることで、レイヤ２リングトポロジにおけるユーザ間のスループットの公平性を改善することができる。
【０００７】
しかし、これらの技術には課題が存在した。例えば、非特許文献１の技術を用いた場合、各通信装置において各ユーザノードからのフローごとのキューが必要となり、ユーザノード数が多い場合には、装置コストの増大を招く。非特許文献２の技術を用いた場合、フレームヘッダに対して廃棄優先度を書き込んだ上でフレーム転送を行うために、実データ量に対してヘッダ長が大きくなる。特に高精度な制御を行うためには多くのビット数を必要とするため、リンク利用効率が低下するという課題がある。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】多段集線ネットワークにおける帯域公平化方式に関する解析的検討、中山悠・太田憲行、電子情報通信学会論文誌Ｂ、Ｖｏｌ．Ｊ９５−Ｂ、Ｎｏ．１０、ｐｐ．１３１３−１３２４、２０１２
【非特許文献２】Ｆａｉｒｎｅｓｓ  ｗｉｔｈ  ｎ  ｒａｔｅ  ｎ＋１  ｃｏｌｏｒ  ｍａｒｋｉｎｇ  ｏｎ  ｃａｓｃａｄｅ  ａｇｇｒｅｇａｔｉｏｎ  ｆｏｒ  ａｃｃｅｓｓ  ｎｅｔｗｏｒｋ，Ｙ．Ｎａｋａｙａｍａ  ａｎｄ  Ｎ．Ｏｏｔａ，ＩＥＥＥ  Ｇｌｏｂａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ  （ＧＬＯＢＥＣＯＭ  ２０１１），Ｄｅｃｅｍｂｅｒ  ２０１１，ｐｐ．１−５
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明が解決しようとする問題点は、従来技術では、各ユーザノードからのフローごとにキューを用いる必要性がある、またはフレームヘッダに廃棄優先度を書き込む必要があった点である。ユーザノードからのフローごとのキューを用いれば回路規模が増大し、装置コストが大きくなる。フレームヘッダに値を書き込めば、実データ量に対してヘッダ長が大きくなり、リンク利用効率が低下してしまう。
【００１０】
本発明の目的は、これら従来技術の課題を解決し、各ユーザノードからのフローごとキューを用いず、同時にフレームヘッダに対する値の書き込みを行わずに、各フローの入力レートに基づいたフレーム廃棄を行い、各ユーザノードからのフロー間のスループットを公平化することである。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明に係る通信装置は、特定ポートから受信したフレームについて、フローごとの入力レートをＮ段階で測定するレート測定手段と、レート測定結果に基づいてフレームにフラグを付与する手段と、前記フラグとフレーム廃棄閾値とを比較し、選択的にフレームを廃棄する手段と、前記フラグを除去する手段と、マスタ装置との間で周期的に通信を行う手段と、を備え、前記通信装置は、前記マスタ装置に対して前記レート測定結果を送信し、前記マスタ装置は、受信した前記レート測定結果に基づき、前記フレーム廃棄閾値を算出して前記通信装置に送信し、前記通信装置は、受信した前記フレーム廃棄閾値に基づき、フレーム廃棄を行い、非廃棄フレームについては前記フラグを除去した上で転送を行う。
【００１２】
具体的には、本発明に係る通信システムは、
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークであって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置は、
特定ポートから受信したフレームごとに入力レートを測定するレート測定部と、
前記レート測定部の測定した入力レートに応じたフラグをフレームに付与するフラグ付与部と、
前記レート測定部の測定した入力レートを前記マスタ装置に対して送信するレート送信部と、
前記フラグ付与部の付与したフラグを前記マスタ装置から受信したフレーム廃棄閾値と比較し、フレーム廃棄閾値に対して予め定められた関係にあるフラグのフレームを廃棄するフラグ判断部と、
各フレームに付与されたフラグを除去するフラグ除去部と、
前記フラグ除去部においてフラグを除去したフレームを前記マスタ装置に向けて送信するフレーム送信部と、
を備え、
前記マスタ装置は、
前記レート送信部から送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、前記フレーム廃棄閾値を算出して前記通信装置に送信する廃棄閾値算出部と、を備える。
【００１３】
本発明に係る通信システムでは、
前記レート測定部は、
入力レートの値をＮ段階で表すためのレート判断基準をあらかじめ設定し、
ｉ番目（ｉは正数）のフローの入力レートｒｉを測定した上で、
前記レート判断基準を用いてｄｉ（ｄｉは０≦ｄｉ≦Ｎを満たす整数）に変換し、
前記フラグ付与部は、
ｉ番目のフローのフレーム受信時に、当該フレームに対してフラグｎ（ｎは０≦ｎ≦ｄｉを満たす整数）をランダムに付与してもよい。
【００１４】
本発明に係る通信システムでは、
前記フレーム廃棄部は、
前記フレーム廃棄閾値Ｔの整数部分Ｍ及び小数部分Ｐとフレームに付与された前記フラグｎとを比較し、
ｎ＞Ｍであれば廃棄し、
ｎ＝Ｍであれば確率１−Ｐで廃棄し、
Ｍ＝Ｎであればｎ＝Ｍのとき全て廃棄としてもよい。
【００１５】
本発明に係る通信システムでは、
前記レート送信部は、
各フローの入力レートについて、前記Ｎ段階の各段階に存在するフロー数、すなわち段階ｋ（ｋは１≦ｋ≦Ｎを満たす整数）に関しｄｉ＝ｋを満たすフローｉの数ｊｋを求め、
マスタ装置に対して、算出されたｊｋを送信し、
前記廃棄閾値算出部は、
各通信装置から受信したｊｋに基づき、整数ｋ（１≦ｋ≦Ｎ−１）を用いて、ｄｉ≧ｋを満たすフローの数Ｊｋを求め、入力レートの段階ｋ間の差分レートＲｋを求め、フローの数Ｊｋ及び差分レートＲｋを用いて式（３）を満たす入力レートの段階ｋ０を求め、
式（４）を用いて前記フレーム廃棄閾値Ｔの整数部分Ｍを求め、式（５）を用いて前記フレーム廃棄閾値Ｔの小数部分Ｐを求めることによって、前記フレーム廃棄閾値Ｔを算出してもよい。
【００１６】
本発明に係る通信システムでは、
前記マスタ装置の廃棄閾値算出部は、
ｋ（１≦ｋ≦Ｎ）についてのΣＪｋＲｋが一定以上の場合に、前記フレーム廃棄閾値を算出して前記通信装置に送信してもよい。
【００１７】
本発明に係る通信システムでは、
前記マスタ装置は、
前記複数の通信装置から前記エッジルータへのフレームを蓄積する出力キューを備え、
前記廃棄閾値算出部は、前記出力キューに蓄積されているキュー長が一定以上の場合に、前記フレーム廃棄閾値を算出して前記通信装置に送信してもよい。
【００１８】
具体的には、本発明に係る通信方法は、
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークにおける通信方法であって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、特定ポートから受信したフレームごとに入力レートを測定し、測定した入力レートごとに種類の異なるフラグをフレームに付与するとともに、測定した入力レートを前記マスタ装置に対して送信するフラグ付与及びレート送信手順と、
前記マスタ装置が、前記レート送信手順で送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、前記フレーム廃棄閾値を算出して前記通信装置に送信する廃棄閾値算出手順と、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、フレームに付与されたフラグの種類に応じて、フレームを廃棄するフラグ判断手順と、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置が、各フレームに付与されたフラグを除去し、フラグを除去後のフレームを前記マスタ装置に向けて送信するフレーム送信手順と、
を順に有する。
【００１９】
具体的には、本発明に係る通信装置は、
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークに用いられる前記マスタ装置を除く前記通信装置であって、
特定ポートから受信したフレームごとに入力レートを測定するレート測定部と、
前記レート測定部の測定した入力レートに応じたフラグをフレームに付与するフラグ付与部と、
前記レート測定部の測定した入力レートを前記マスタ装置に対して送信するレート送信部と、
前記フラグ付与部の付与したフラグを前記マスタ装置から受信したフレーム廃棄閾値と比較し、フレーム廃棄閾値に対して予め定められた関係にあるフラグのフレームを廃棄するフラグ判断部と、
各フレームに付与されたフラグを除去するフラグ除去部と、
前記フラグ除去部においてフラグを除去したフレームを前記マスタ装置に向けて送信するフレーム送信部と、
を備える。
【００２０】
具体的には、本発明に係るマスタ装置は、
複数の通信装置がリング状に接続され、前記複数の通信装置のうちの少なくともいずれかがマスタ装置として前記複数の通信装置以外の装置に接続される通信ネットワークに用いられる前記マスタ装置であって、
前記複数の通信装置のうちの前記マスタ装置を除く通信装置から送信された各通信装置の入力レートを集計し、集計した入力レートに基づき、各通信装置においてフレームを廃棄する基準となるフレーム廃棄閾値を算出する廃棄閾値算出部と、を備える。
【００２１】
具体的には、本発明に係る通信装置を実現するためのプログラムは、コンピュータをレート測定部、フラグ付与部、レート送信部、フラグ判断部及びフレーム送信部として機能させるためのプログラムである。
【００２２】
具体的には、本発明に係るマスタ装置を実現するためのプログラムは、コンピュータを廃棄閾値算出部として機能させるためのプログラムである。
【００２３】
なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００２４】
本発明によれば、輻輳時に各フローの入力レートに基づいたフレーム廃棄を行うことができ、フロー間のスループットを公平化することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係る通信ネットワークの構成例を示す図である。
【図２】本発明の実施形態に係る通信装置の構成例を示すブロック図である。
【図３】本発明の実施形態に係るマスタ装置の構成例を示すブロック図である。
【図４】本発明の実施形態に係る通信装置における入力レートの例を表す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。なお、本発明は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本発明は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００２７】
＜第１の実施の形態＞
まず、図１、図２及び図３を用いて本発明の第１の実施の形態について説明する。
図１に、本実施形態に係る通信システムの一例を示す。本実施形態に係る通信システムは、通信装置１、マスタ装置１００、並びにエッジルータ１０を備える。通信装置１及びマスタ装置１００は、レイヤ２リングネットワークを形成している。リングネットワーク内のノード数は何でも良い。各通信装置１にはそれぞれ、アクセスネットワークを通じてユーザノード４が接続される。さらに、マスタ装置１００に対しエッジルータ１０が接続され、さらにエッジルータ１０はコアネットワークに接続されている。レイヤ２リングネットワークでは通常ブロッキングポートが設けられるため（図１中の点線）、論理的なフレーム転送経路はバストポロジと同等である。本例ではユーザノード４からエッジルータ１０へ向かうトラヒックに着目し、さらに＃２の通信装置１に注目し、＃２の通信装置１を上流側通信装置、＃３の通信装置１を下流側通信装置とする。
【００２８】
本実施形態に係る通信方法は、フラグ付与及びレート送信手順と、廃棄閾値算出手順と、フラグ判断手順と、フレーム送信手順と、を順に有する。フラグ付与及びレート送信手順、フラグ判断手順及びフレーム送信手順は通信装置１が実行し、廃棄閾値算出手順はマスタ装置１００が実行する。本実施形態では、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）がフラグ付与及びレート送信手順、フラグ判断手順及びフレーム送信手順を実行することで通信装置１を実現し、ＣＰＵが廃棄閾値算出手順を実行することでマスタ装置１００を実現してもよい。
【００２９】
図２に、本実施形態に係る通信装置の構成の一例を示す。本実施形態に係る通信装置１は、振り分け部１１、レート測定部及びフラグ付与部として機能するフローごとマーカ１２−ｉ（ただし、ｉは正数）、フラグ判断部及びフラグ除去部として機能する廃棄判断部１３、レート送信部として機能する通信部１４、及びフレーム送信部として機能する出力キュー１５を備える。
【００３０】
図３に、本実施形態に係るマスタ装置の構成の一例を示す。マスタ装置１００の構成は、ほぼ他の通信装置１の構成と同様であるが、以下の点が異なる。すなわち、通信部１４の代わりに、通信部２４および廃棄閾値算出部２６を備える。
【００３１】
通信装置＃１は、図示しない受信部を用いて、上流側通信装置＃２およびユーザノード４からのフレームを受信する。通信装置＃１の受信部（不図示）は、上流側通信装置＃２から受信したフレームを、出力キュー１５へ転送する。通信装置＃１の受信部（不図示）は、ユーザノード４からフレームを受信すると、振り分け部１１へ転送する。
通信装置＃１は、ユーザノード４からのフレームを受信すると、フラグ付与及びレート送信手順を実行する。
【００３２】
フラグ付与及びレート送信手順では、通信装置１−１が、フローごとマーカ１２−ｉ及び通信部１４を機能させる。このとき、振り分け部１１は、フレームのフローｉ（ｉ＝１，２，３）を識別する。振り分け部１１は、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、ＶＩＤ、およびその組み合わせのいずれかを用いてどのユーザノード４からのフローであるかを識別する。
【００３３】
フローごとマーカ１２−ｉは、レート測定部及びフラグ付与部として機能し、ｉ番目のユーザノード４からのフローｉについて、レート測定およびフラグ付与を行う。例えば、フローごとマーカ１２−１はユーザノード＃１からのフローについて、フローごとマーカ１２−２はユーザノード＃２からのフローについて、レート測定を行い、入力レートに応じたフラグをフレームに付与する。通信部１４が、フローごとマーカ１２−ｉの測定した入力レートをマスタ装置１００に対して送信する。
【００３４】
ここで、フローごとマーカ１２−ｉの数すなわちｉの値は、任意であるが、通信装置１に接続されているユーザノード４の数以上であることが好ましい。これにより、各ユーザノード４から同時にフレームが送信された場合であっても、各ユーザノード４からのフレームのレート測定およびフラグ付与を行うことができる。
【００３５】
フローｉの入力レートｒｉの測定方法の例として、トークンバケツを用いる方法と、フレーム到着間隔から推定する方法とがある。測定したレートは、ｄｉ（ｄｉは０≦ｄｉ≦Ｎを満たす整数）として表す。
【００３６】
トークンバケツを用いる場合、閾値ｆを記憶し、通常時にはトークンを一定速度ｗで生成し、トークンがトークンバケツ長Ｂを超えた場合にはｆを１減算してトークンをリセットする。フレーム長Ｌのフレームが到着した際にはトークンをＬ÷（ｆ＋１）消費し、トークンが０となった場合にはｆを１加算してトークンをリセットする。このようなトークンバケツの場合、ｆの値をｄｉに代入することで、レートｄｉを求めることができる。このときｆ≧Ｎの場合には、レートｄｉをユーザノード４に割当可能な最大レートＮとする。
【００３７】
フレーム到着間隔から推定する場合、あらかじめ設定したレート判断基準を用いてｄｉを求める。例えば、フローｉのｋ番目のフレームについて、ｔｋｉを到着時刻、ｌｋｉをフレーム長とし、Ｔｋｉ＝ｔｋｉ−ｔｋ−１ｉとおき、Ｋを定数とする。これらを用いて、推定レートｒｎｅｗｉを式（１）を用いて求める。
【数１】
2015154378.tif 000003
さらに、例えばレート判断基準としてｄｉ＝ｆｌｏｏｒ（ｒｉ［Ｍｂｐｓ］）を用いることとすれば、例えばｒｉ＝３．５Ｍｂｐｓであればｄｉ＝３が成立する。以上の様にして、算出した推定レートｒｉを用いて、ｄｉを求めることができる。このときｄ≧Ｎとなる場合にはレートｄｉをユーザノード４に割当可能な最大レートＮとすればよい。
【００３８】
そして、フローごとマーカ１２は、フローｉに対し、レートｄｉを求めた後は、フラグ付与を行う。フローごとマーカ１２は、フローｉのフレーム受信時に、当該フレームに対してフラグｎ（ｎは０≦ｎ≦ｄｉを満たす整数）をランダムに付与する。ランダムに付与することによって、０からｄｉの各フラグが付与されたフレームの頻度がおおよそ等しくなる。このフラグは、フレーム識別のために当該通信装置＃１内でのみ利用するものであり、フレームのヘッダ等を書き換える必要はない。例えば、フレームの先頭や末尾に対して独自のビット列を付与する等の方法によってフラグを付与する。
【００３９】
通信部１４は、レート送信部として機能し、各フローの入力レートを表すｄｉの値を集計する。ｄｉは０≦ｄｉ≦Ｎを満たし、入力レートはＮ＋１段階で表されることから、各段階に存在するフロー数を集計する。つまり段階ｋ（ｋは１≦ｋ≦Ｎを満たす整数）について、ｄｉ＝ｋを満たすフローの数ｊｋを求め、算出されたｊｋをマスタ装置１００に対して送信する。この送信は周期的に行い、その周期は任意に設定可能とする。また、通信部１４は、マスタ装置１００からのフレーム廃棄閾値Ｔを受信し、受信したＴを廃棄判断部１３へ出力する。
【００４０】
廃棄判断部１３にフレーム廃棄閾値Ｔが入力されると、通信装置１はフラグ判断手順を実行する。フラグ判断手順では、通信装置１が廃棄判断部１３を機能させる。このとき、廃棄判断部１３が、フラグ判断部として機能し、フレームに付与されたフラグの種類に応じて、フレームを廃棄する。
【００４１】
例えば、廃棄判断部１３は、フレーム廃棄閾値Ｔを記憶し、Ｔの整数部分Ｍと、Ｔの小数部分Ｐとを用いてフレーム廃棄判断を行う。まずフレームに付与されたフラグｎとＴの整数部分Ｍを比較し、ｎ＞Ｍを満たす場合には、当該フレームを廃棄する。また、ｎ＝Ｍを満たす場合には、確率１−Ｐで廃棄し、確率Ｐで非廃棄とする。ただし、Ｍ＝Ｎである場合には、ｎ＝Ｍを満たすフレームも全て廃棄する。
【００４２】
出力キュー１５にフレームが入力されると、通信装置１はフレーム送信手順を実行する。フレーム送信手順では、通信装置１が廃棄判断部１３及び送受信部（不図示）を機能させる。このとき、廃棄判断部１３は、フラグ除去部として機能し、非廃棄と判断されたフレームについて、フラグを除去した上で出力キュー１５へ転送する。送受信部（不図示）が、出力キュー１５に蓄積されたフラグを除去後のフレームをマスタ装置１００に向けて送信する。
【００４３】
図３に示すマスタ装置１００は、各通信装置１から入力レートを受信すると、廃棄閾値算出手順を実行する。廃棄閾値算出手順では、マスタ装置１００が、通信部２４及び廃棄閾値算出部２６を機能させる。このとき、通信部２４が、レート送信手順で送信された各通信装置１の入力レートを受信して廃棄閾値算出部２６へ出力する。廃棄閾値算出部２６が、各通信装置１の入力レートを集計し、集計した入力レートに基づき、フレーム廃棄閾値Ｔを算出する。例えば、通信部２４は、各通信装置１から各段階ｋのフローの数ｊｋを受信する。そして、廃棄閾値算出部２６はこれらを用いて、周期的にフレーム廃棄閾値Ｔを算出する。さらに通信部２４は、算出されたＴを各通信装置１に送信する。
【００４４】
Ｔの算出は以下の様にして行う。
まず各通信装置１から受信した各段階ｋに存在するフローの数ｊｋをさらに集計し、リングネットワーク全体におけるｄｉ≧ｋを満たすフローの数Ｊｋを求める。例えば、各ｋ（１≦ｋ≦Ｎ−１）につき、通信装置＃ｓ＝１〜Ｓから受信したｊｋ１〜ｊｋＳを合計する、すなわち式（２）を求め、Ｊｋとする。これにより、Ｊｋを求める。
【数２】
2015154378.tif 000004
【００４５】
次に、リンク速度をＣとし、入力レートの段階ｋ間の差分レートＲｋを求める。差分レートＲｋの算出方法については後述する。そして、式（３）を満たすｋ０を求める。
【００４６】
【数３】
2015154378.tif 000005
【００４７】
さらに式（４）及び式（５）を求める。
【数４】
2015154378.tif 000006
【数５】
2015154378.tif 000007
【００４８】
最後に、Ｔ＝Ｍ＋Ｐとして、フレーム廃棄閾値Ｔを算出する。この算出処理をＴ算出プロセスとする。なお、式（３）を満たすｋ０が存在しない場合には、Ｍ＝Ｎ＋１、Ｐ＝０とする。
【００４９】
ここで、差分レートＲｋは、ｄｉの求め方から定まる。例えば、図４に示すように、入力レートが大きくなるほどｄｉが大きくなる場合について考える。この場合、Ｒｋは、測定レートｄｉがｋと等しくなる入力レートｒｉの範囲の大きさである。トークンバケツを用いる方法を用いた場合、トークンの生成速度をｗとすると、Ｒｋ＝ｗとなる。また、フレーム到着間隔から推定する方法を用いた場合、ｘＭｂｐｓ≦ｒｉ＜（ｘ＋１）Ｍｂｐｓを満たすｘをｄｉに代入する際に、Ｒｋ＝１Ｍｂｐｓとなる。
【００５０】
各通信装置１の廃棄判断部１３は、マスタ装置１００から新たに受信したＴを用いて、廃棄判断を行う。この方法により、ネットワーク全体のトラヒック状況に応じて、輻輳時には各通信装置１で同一の基準を用いてフレーム廃棄を行うことが可能となる。入力レートが大きいフローほどｄｉが大きくなるため、フレームに付与されるフラグｎの最大値が増大する。輻輳するほどフレーム廃棄閾値Ｔが減少し、廃棄フレームが増加するが、このときフラグｎが大きいフレームから廃棄が始まる。よって入力レートが小さいフローのフレームは、輻輳がより強まったときにのみ廃棄される。また非廃棄と判断されたフレームは、フラグを除去して転送されるため、転送先では廃棄されずに転送される。すなわちマスタ装置１００がフレーム廃棄閾値Ｔを通知することで、廃棄判断はリングネットワーク内に入る際にのみ行うようにし、フレームヘッダへの書き込みを行わない。以上の方法により、フロー間のスループットを公平化することが可能である。
【００５１】
＜第２の実施の形態＞
本発明の第２の実施の形態は、ほぼ第１の実施の形態と同じであるが、次の点が異なる。すなわち、第１の実施形態では各通信装置１の廃棄判断部１３が常にフレーム廃棄判断を行っていたが、本実施形態ではマスタ装置１００の出力キュー１５のキュー長が一定以上の場合にのみ各通信装置１がフレーム廃棄判断を行う。
【００５２】
マスタ装置１００の廃棄閾値算出部２６は、マスタ装置１００の出力キュー１５のキュー長が一定以上の場合にのみＴ算出プロセスを実行する。出力キュー１５のキュー長が一定未満の場合、廃棄閾値算出部２６はフレーム廃棄閾値Ｔを算出しない。
【００５３】
廃棄判断部１３は、通信部２４からフレーム廃棄閾値Ｔを受信しない間はフレーム廃棄判断を行わず、通信部２４からフレーム廃棄閾値Ｔを受信したときにフレーム廃棄判断を行う。通信部２４は、フレーム廃棄閾値Ｔを受信した最後の時間から所定の継続時間はフレーム廃棄判断を継続し、所定の継続時間が経過するとフレーム廃棄判断を停止する。所定の継続時間は任意に設定することができるが、例えば通信部１４からのｊｋの送信周期とする。
【００５４】
本実施形態では、輻輳した状態がある程度の時間継続した場合にのみ、フレーム廃棄を実行することが可能となる。例えば、各フローの入力レートが短い時間増大しその後低下する場合などには、瞬間的には輻輳が発生するが、一定の期間でみればフレーム廃棄を行う必要がないことがある。その様な場合に、不要なフレーム廃棄を防ぐことができる。
【００５５】
＜第３の実施の形態＞
本発明の第３の実施の形態は、ほぼ第２の実施の形態と同じであるが、次の点が異なる。すなわち、第２の実施形態では出力キュー１５のキュー長が一定以上の場合に各通信装置１がフレーム廃棄判断を行っていたが、本実施形態ではＪｋＲｋの和が一定以上の場合にのみ各通信装置１がフレーム廃棄判断を行う。
【００５６】
本実施形態では、マスタ装置１００の廃棄閾値算出部２６は、ｋ（１≦ｋ≦Ｎ）についてのＪｋＲｋの和が一定以上の場合には、キュー長に関わらずにＴ算出プロセスを実行する。この方法により、急激なトラヒック量の増大に迅速に対応することが可能となる。
【００５７】
本発明の装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
【産業上の利用可能性】
【００５８】
本発明は情報通信産業に適用することができる。
【符号の説明】
【００５９】
１：通信装置
４：ユーザノード
１０：エッジルータ
１１：振り分け部
１２−１、１２−２、１２−３：フローごとマーカ
１３：廃棄判断部
１５：出力キュー
２４：通信部
２６：廃棄閾値算出部
【図１】
2015154378.tif 000011
【図２】
2015154378.tif 000012
【図３】
2015154378.tif 000013
【図４】
2015154378.tif 000014