(57)【特許請求の範囲】
【請求項１】
ネットワークに接続された受信装置の利用可能帯域に基づきクラス分類された受信装置に、各クラスに属する受信装置をヘッダに含む受信者リストに記述したパケットを送信する機能を備えた送信装置であって、
受信装置から受信した伝送能力に関する情報から当該受信装置の利用可能な帯域を推定する利用可能帯域推定部と、
各クラスに属する受信装置数からヘッダサイズを計算し、前記利用可能な帯域をヘッダサイズの違いに基づき補正する帯域補正部と、
補正された利用可能な帯域に基づき受信装置の属するクラスを決定し、受信者リストに登録するクラス決定処理部と、
を備えた送信装置。
【請求項２】
前記伝送能力に関する情報は、受信装置が測定した損失イベント率、当該送信装置からのパケットの送信時刻および受信装置が受信できた実効レートを含む、
請求項１に記載の送信装置。
【請求項３】
前記利用可能帯域推定部は、当該送信装置からパケットが送信された時刻と受信装置からの前記パケットに対する応答パケットを受信した時刻から求めたラウンドトリップタイム、パケットサイズおよびＴＣＰの再送タイマのタイムアウト時間をさらに用いて利用可能な帯域を推定する、
請求項２に記載の送信装置。
【請求項４】
前記帯域補正部は、受信装置が属するクラスのヘッダサイズと、伝送レートが当該クラスより一段階高いクラスのヘッダサイズとから推定帯域補正変数を求め、その推定帯域補正変数を用いて、前記利用可能帯域推定部が推定した利用可能な帯域の補正を行う、
請求項１に記載の送信装置。
【請求項５】
前記クラス決定処理部は、最大ペイロードサイズと各クラスのヘッダサイズとから算出した各クラスにおける実効レートと、前記帯域補正部が補正した帯域とを比較し、補正された帯域を越えない範囲で、最大の実効レートのクラスに受信装置を分類する、
請求項４に記載の送信装置。
【請求項６】
ネットワークを介して受信装置へ送信するパケットの送信レートを制御する送信レート制御方法であって、
前記受信装置から、伝送能力に関する情報を含む前記パケットを受信するステップと、
前記受信した前記パケットに含まれる前記伝送能力に関する情報から、当該受信装置への伝送に利用可能な帯域を推定するステップと、
前記推定した前記利用可能な帯域に基づき、当該受信装置をクラス分類するステップと、
前記分類した前記クラスに属する前記受信装置の受信装置数から、前記各クラスのヘッダサイズを計算し、前記ヘッダサイズの違いに基づき前記利用可能な帯域を補正するステップと、
前記補正した前記利用可能な帯域に基づき、前記受信装置の属する前記クラスを決定するステップと、
を含む送信レート制御方法。
【請求項７】
前記伝送能力に関する情報は、前記受信装置が測定した損出イベント率、前記パケットの送信時刻および前記受信装置が受信できた実効レートを含む、
請求項６に記載の送信レート制御方法。
【請求項８】
前記推定するステップでは、前記パケットのラウンドトリップタイム、パケットサイズおよびＴＣＰの再送タイマのタイムアウト時間をさらに用いて、前記利用可能な帯域を推定する、
請求項６に記載の送信レート制御方法。
【請求項９】
前記補正するステップでは、前記ヘッダサイズの違いに基づき前記利用可能な帯域を補正する場合、
前記計算した前記クラスの前記ヘッダサイズとペイロードサイズを含んで構成される当該クラスのパケットサイズを計算し、当該クラスの前記パケットサイズを、その上位のクラスの前記パケットサイズで除算して、前記利用可能な帯域の帯域補正係数を計算するステップと、
前記計算した前記帯域補正係数を前記利用可能な帯域に乗算して、前記利用可能な帯域を補正する、
請求項６に記載の送信レート制御方法。
【請求項１０】
前記各クラスは、実効レートを有しており、
前記クラスを決定するステップでは、前記補正した前記利用可能な帯域を越えない範囲内で、かつ前記実効レートが最大となる前記クラスに決定する、
請求項６に記載の送信レート制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像・音声といったマルチメディアデータを高品質でマルチキャスト通信する送信装置に関する。
【背景技術】
【０００２】
近年、ネットワークの急速な発展に伴って、テレビ会議やネットワークゲームなど、同一のグループに属する複数の受信装置に対してマルチメディアデータを伝送する機会が増大している。その際に、すべての受信装置に対して同一のパケットを効率的に伝送するための通信方法として、マルチキャスト通信が知られている。
【０００３】
送信装置は、マルチメディアデータを配信する受信装置を１０人程度のスモールグループに分け、スモールグループごとにマルチキャスト通信を行う。そのマルチキャスト通信方式として、明示的マルチキャスト方式がある。これは、送信装置がグループに属する全受信装置の宛先アドレスを、パケット内のオプションヘッダまたはペイロードに受信者リストとして格納し、パケットを配信する全受信装置を明示的に指定するものである。以降、本発明において単に「パケット」と記述した場合、明示的マルチキャスト方式におけるパケットをいう。
【０００４】
代表的な、明示的マルチキャスト方式として，Ｅｘｐｌｉｃｉｔ  Ｍｕｌｔｉｃａｓｔ６（以降、「ＸＣＡＳＴ６」という。）がある（非特許文献１）。
【０００５】
図６は、ＸＣＡＳＴ６のパケットのヘッダフォーマットを示す図である。なお、このＸＣＡＳＴ６は、ＩＰアドレスとしてＩＰｖ６を用いて通信を行うものである。
【０００６】
図６において、ＩＰｖ６ヘッダ６０１内の送信元アドレス（Source Address）６０２には、パケットの送信元アドレスを記載し、宛先アドレス（Destination Address）６０３に送信先の宛先アドレスを記載する。
【０００７】
ＸＣＡＳＴヘッダ（ＸＣＡＳＴＨｄｒ）６０４は、ＩＰｖ６ヘッダ（ＩＰｖ６Ｈｄｒ）６０５とルーティングヘッダ（ＲｏｕｔｉｎｇＨｄｒ）６０６とで構成されている。ＩＰｖ６ヘッダ６０５の送信元アドレス６０７には、パケットの送信元アドレスが格納され、宛先アドレス６０４には、ＸＣＡＳＴ６に与えられたマルチキャストアドレス、例えばｆｆ０５：：１０を格納する。
【０００８】
ルーティングヘッダ６０６には、マルチキャストの送信先である、すべての宛先アドレス０〜ｎ（６０９）、宛先ポート（Ｐｏｒｔ）０〜ｎ（Ａ１０）を格納する。
【０００９】
具体的に、明示的マルチキャスト方式によるパケット配信方法を以下に説明する。
【００１０】
明示的マルチキャスト方式に対応したルータは、パケットを受信すると、パケットのルーティングヘッダ６０６に格納されたすべての宛先アドレス６０９に対して、自身の持つユニキャスト経路表を検索し、各宛先アドレスに対応した送出インターフェースを調べる。そして、複数の出力インターフェースに対してパケットを送出しなければならない場合、ルータは送出インターフェースの数だけパケットを複製する。その際、ルータは、送出インターフェースに含まれる受信装置以外の宛先アドレスをパケットのルーティングヘッダ６０６から削除するか、配送済みのマークを付加する。また、ルータは、ＩＰヘッダの宛先アドレス６０３を未配送の受信装置の宛先アドレスに書き換える。
【００１１】
一方、明示的マルチキャスト方式に対応していないルータは、パケットに格納された宛先アドレス６０５を参照せずに、ＩＰヘッダに記載された宛先アドレスからユニキャスト経路表を検索する。そして、通常のユニキャスト通信と同様にパケットを送出する。すなわち、明示的マルチキャスト方式に対応していないルータは、マルチキャスト通信を行わない。しかし、明示的マルチキャスト方式に対応している受信装置がこのパケットを受信すると、ＸＣＡＳＴヘッダに格納された受信者リストを参照する。そして、受信者リストに未配送の宛先アドレスがあった場合、受信装置はパケットを複製し、ＩＰヘッダの宛先アドレス６０３を未配送の宛先アドレスに書き換えて転送する。
【００１２】
以上の方法により、明示的マルチキャスト方式では、経路上のすべてのルータが明示的マルチキャスト方式に対応していなくても、すべての受信装置に対してパケットを配信できた。
【００１３】
しかし、マルチメディアデータを明示的マルチキャスト方式で伝送する場合、ネットワーク上で輻輳が発生すると、受信装置は安定してマルチメディアデータを受信できなくなり、映像や音声の品質が著しく低下してしまう。そのため、輻輳を回避することが重要となる。しかし、明示的マルチキャスト方式では、伝送レート制御が定義されていないため、例え輻輳が発生しても、伝送レートを制御することによって、輻輳を回避することができなかった。
【００１４】
伝送レート制御方法としては、フィードバック情報を用いたＴＦＲＣ（ＴＣＰ Friendly Rate Control）が知られている（非特許文献２）。このＴＦＲＣは、パケットロスが発生するまで伝送レートを上昇させ、パケットロスが発生した場合に伝送レートを下げる処理を行う。これにより、送信装置は適した伝送レートで伝送を行うことができる。
【００１５】
そこで、明示的マルチキャスト方式を用いた通信に、ＴＦＲＣを利用した伝送レート制御を行うことが検討され、ＳＩＣＣ（Sender Initiated Congestion Control）が提案された（非特許文献３）。
【００１６】
図７は、ＳＩＣＣの動作を示すパケット配送図である。
【００１７】
図７において、あらかじめ送信装置は、異なる伝送レートを割当てたクラスを複数設定する。ＳＩＣＣでは、送信速度の上限Ｂ（ｂｐｓ）を設定し、それに対して１／２ずつ減速したＢ／２クラスとＢ／４クラスを含む３クラスが設定されている。送信装置は、受信装置をクラスごとに分類し、各クラスに属する受信装置の宛先アドレスをヘッダに格納したパケットをクラスごとに送信する。
【００１８】
受信装置がどのクラスに属するかは、各受信装置の利用可能な帯域によって決定される。すなわち、送信装置は、ＴＦＲＣの規定による、受信装置から送信装置へフィードバックされる損失イベント率、受信したパケットが送信装置において送信された時刻、受信装置が受信できた実効レートなどの情報を受信し、それらフィードバック情報に基づいて（式１）により受信装置の利用可能な帯域を推定する。そして、送信装置は、推定した受信装置の利用可能な帯域に基づいて、その帯域を最大限利用できる伝送レートを設定したクラスに受信装置を分類する。
【数１】
0004772053.tif 000002
【００１９】
ただし、Ｘ：利用可能な帯域（ｂｐｓ）、Ｒ：ラウンドトリップタイム（秒）、ｐ：損失イベント率、ｓ：パケットサイズ（ｂｙｔｅ）、Ｔ＿ＲＴＯ：ＴＣＰのタイムアウト値（＝４×Ｒ）を示す。
【００２０】
なお、（式１）で用いるラウンドトリップタイムは、フィードバック情報に含まれる送信元送信時刻と受信レポートパケットを受信した時刻から求められる。
【００２１】
また、送信装置が各受信装置のクラスを分類する処理は、ＴＦＲＣと同様に受信装置からのフィードバック情報を受信するごとに実施されるので、受信装置をネットワークの状態に合わせて受信装置を利用可能な帯域に適したクラスに動的に分類することができる。このように、受信装置はどこか１つのクラスに分類され、送信装置はクラスごとにパケットを送信するので、受信装置のネットワーク状態に合わせた伝送レート制御が実現できた。
【非特許文献１】Ｙ．Ｉｍａｉ，Ｍ．Ｓｈｉｎ  ａｎｄ  Ｙ．Ｋｉｍ，“ＸＣＡＳＴ６：ｅＸｐｌｉｃｉｔ  Ｍｕｌｔｉｃａｓｔ  ｏｎ  ＩＰｖ６”，ＩＥＥＥ／ＩＰＳＪ  ＳＡＩＮＴ２００３  Ｗｏｒｋｓｈｏｐ  ４，ＩＰｖ６  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，Ｏｒｌａｎｄ，Ｊａｎ．２００３．
【非特許文献２】Ｍ．Ｈａｎｄｌｅｙ  ｅｔ  ａｌ．，“ＴＣＰ  Ｆｒｉｅｎｄｌｙ  Ｒａｔｅ  Ｃｏｎｔｒｏｌ（ＴＦＲＣ）：Ｐｒｏｔｏｃｏｌ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”，ＲＦＣ  ３４４８、インターネット＜ＵＲＬ：http://www.faqs.org/rfcs/rfc3448.html＞
【非特許文献３】村本 衛一、米田 孝弘、鈴木 史章、鈴木良宏、中村 敦司、“送信者起動マルチキャストにおける輻輳制御方法の提案”、インターネットコンファレンス  ２００３論文集ｐｐ５−１０，２００３／１０
【発明の開示】
【発明が解決しようとする課題】
【００２２】
しかしながら、明示的マルチキャスト方式では、パケットを配信する受信装置数によってヘッダに格納する宛先アドレスの数が変化するため、パケットサイズが変わってしまう。そして、データ送信の実効レートが変化してしまう。このため、送信装置が受信装置からのフィードバック情報を用いて推定した利用可能な帯域を基に受信装置のクラス変更を行った場合、変更先のクラスの実効レートは、変更先のクラスに属する受信装置数が、受信装置数よりも多いまたは同一であれば、変更後のパケットサイズが増えるので、実際の実効レートも高くなってしまう。これにより、送信装置からクラス変更した受信装置へのデータ通信の実効レートは、その受信装置の利用可能な帯域を超えてしまう場合がある。
【００２３】
例えば、受信装置が現在属しているクラス（以降、現クラスとする）の受信装置数よりも、送信レートが一段階高いクラス（以降、上位クラスとする）の受信装置数の方が多いかあるいは同一とする。
【００２４】
この場合、現クラスから上位クラスへ受信装置がクラス変更すると、上位クラスのヘッダサイズは現クラスのヘッダサイズよりも大きくなり、実際の上位クラスにおける実効レートは現クラスの実効レートよりも大きくなる。そのため、上位クラスにおける実効レートは受信装置の利用可能な帯域を超えてしまう可能性がある。
【００２５】
受信装置が利用可能な帯域を超える実効レートで送信装置がパケットを送信すると、輻輳が発生し、その結果パケットロスが起こり、受信装置が測定している損失イベント率が上昇する。そうすると、送信装置は受信装置が利用可能な帯域を低く推定することになり、その受信装置の属するクラスを伝送レートの低いクラスへ変更しなくてはならなくなる。
【００２６】
このように、受信装置を伝送レートの高い上位クラスへ変更しても、すぐにクラスを下げなければならず、頻繁にクラス変更を行うことになる。その結果、受信装置は伝送された映像のフレームレートが頻繁に変化し、画質の低下が起こるという課題を有していた。
【００２７】
本発明は、ＳＩＣＣに用いられる明示的マルチキャスト方式による通信において、伝送レートが変動する頻度を低下させ、高品質なマルチメディアデータの伝送を可能にする送信装置を提供する。
【課題を解決するための手段】
【００２８】
本発明に係る送信装置は、受信装置から受信したフィードバック情報を用いて利用可能な帯域を推定する場合、受信装置の属する現クラスと上位クラスとのヘッダサイズの違いを基に推定した帯域を補正する。そして、送信装置は、補正した帯域を用いて受信装置の属するクラスを決定する。
【００２９】
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えるようなことを防止できる。そのため、送信装置は、受信装置の属するクラスをすぐに低いクラスに下げることがなくなり、伝送レートの頻繁な変動を低減することができる。
【００３０】
本発明に係る送信装置は、ネットワークに接続された受信装置の利用可能帯域に基づきクラス分類された受信装置に、各クラスに属する受信装置をヘッダに含む受信者リストに記述したパケットを送信する機能を備えており、受信装置から受信した伝送能力に関する情報から当該受信装置の利用可能な帯域を推定する利用可能帯域推定部と、各クラスに属する受信装置数からヘッダサイズを計算し、利用可能な帯域をヘッダサイズの違いに基づき補正する帯域補正部と、補正された利用可能な帯域に基づき受信装置の属するクラスを決定するクラス決定処理部とを備えている。
【００３１】
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるような、伝送レートの頻繁な変動を低減することができる。
【００３２】
また、本発明に係る送信装置が取得する伝送能力に関する情報は、受信装置が測定した損失イベント率と、当該送信装置からパケットが送信された時刻と、受信装置が受信できた実効レートである。
【００３３】
これにより、送信装置はＴＦＲＣの規定に基づいた伝送能力に関する情報の入った伝送レート制御用パケットを利用することが可能になる。
【００３４】
また、本発明に係る送信装置の利用可能帯域推定部は、当該送信装置からパケットが送信された時刻と受信装置からの応答のパケットを受信した時刻とから求めたラウンドトリップタイム、パケットサイズ、およびＴＣＰの再送タイマのタイムアウト時間をさらに用いて利用可能な帯域を推定するものである。
【００３５】
これにより、送信装置はＴＦＲＣの規定に基づいた最大送信速度の推定技術を利用することが可能になる。
【００３６】
また、本発明に係る送信装置の帯域補正部は、受信装置が属するクラスのヘッダサイズと、伝送レートが当該クラスより一段階高いクラスのヘッダサイズとから推定帯域補正変数を求め、その推定帯域補正変数を用いて、利用可能帯域推定部が推定した利用可能な帯域の補正を行うものである。
【００３７】
これにより、受信装置への伝送レートはあらたなクラスの受信装置数の影響を予測したものとなるので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるようなことを防止できる。
【００３８】
また、本発明に係る送信装置のクラス決定処理部は、最大ペイロードサイズと各クラスのヘッダサイズとから算出した各クラスにおける実効レートと、帯域補正部が補正した帯域とを比較し、補正された帯域を越えない範囲で、最大の実効レートのクラスに受信装置を分類するものである。
【００３９】
これにより、送信装置は受信装置を利用可能な帯域の中で、最も高い実効レートでデータ伝送をすることが可能になる。
【００４０】
また、本発明に係る送信レート制御方法は、ネットワークを介して受信装置へ送信するパケットの送信レートを制御する送信レート制御方法であって、上記受信装置から、伝送能力に関する情報を含む上記パケットを受信するステップと、上記受信した上記パケットに含まれる上記伝送能力に関する情報から、当該受信装置への伝送に利用可能な帯域を推定するステップと、上記推定した上記利用可能な帯域に基づき、当該受信装置をクラス分類するステップとを有する。そして、送信レート制御方法は、上記分類した上記クラスに属する上記受信装置の受信装置数から、上記各クラスのヘッダサイズを計算し、上記ヘッダサイズの違いに基づき上記利用可能な帯域を補正するステップと、上記補正した上記利用可能な帯域に基づき、上記受信装置の属する上記クラスを決定するステップと、指定された上記クラスに応じた上記パケットを送信するステップとを有する。
【発明の効果】
【００４１】
本発明によれば、ＳＩＣＣに用いられる明示的マルチキャスト方式による通信において、伝送レートの変更頻度を低減することにより、高品質のマルチメディアデータの伝送が可能となる。
【発明を実施するための最良の形態】
【００４２】
以下、本発明の実施の形態について、図面を参照しつつ説明する。
【００４３】
本発明の実施の形態を説明する上で、明示的マルチキャスト方式としてＸＣＡＳＴ６を例にとる。また、パケットとしてはＸＣＡＳＴ６のパケットを指すものとする。
【００４４】
図１は、本実施の形態に係る送信装置の構成を示している。
【００４５】
図１において、アプリケーション部１１０は送信装置１００の有するアプリケーションを実施するものであり、受信部１０１は、例えば受信装置２００から受信者レポートパケットを受信し、フィードバック情報を抽出する。図２はこの受信者レポートパケットのデータフォーマットを示す図である。
【００４６】
図２において、送信装置からパケットが送信された時刻（以下、「送信元送信時刻」という。）２０１と、受信装置が受信できた実効レート２０２と、受信装置が測定した損失イベント率２０３とがフィードバック情報である。
【００４７】
利用可能帯域推定部１０２は、受信部１０１から受け取ったフィードバック情報に、ＴＦＲＣで定義されている帯域推定方式を用いて受信装置の利用可能帯域を推定するものである。
【００４８】
帯域補正部１０３は、各クラスのヘッダサイズを計算し補正係数を求め、これを用いて利用可能帯域推定部１０２で推定した利用可能な帯域を補正するものである。
【００４９】
クラス決定処理部１０４は、あらかじめ規定している伝送レートから実効レートを算出し、可変長ヘッダ処理部２０３で補正した帯域と比較する。これにより、クラス決定処理部１０４は、受信装置の属するクラスを決定し、クラス別受信者記憶部１０５に記録する。本実施の形態においては、送信装置の最大送信速度１Ｍ（ｂｐｓ）を設定し、５１２Ｋ（ｂｐｓ）と２５６Ｋ（ｂｐｓ）を閾値とするクラス１乃至クラス３の３つに分ける。そして、それぞれのクラスごとに受信者リストを作成する。
【００５０】
パケット構成部１０６は、明示的マルチキャスト方式のパケットヘッダを構成するものであり、受信者リストをこのヘッダのルーティングヘッダに格納する。また、アプリケーション部１１０から受け取った受信装置へ送信すべきコンテンツをペイロードに記録する。
【００５１】
送信レート制御部１０７は、パケットを送出するタイミングを制御するものであり、受信者リストのクラスに応じて、パケットを送出する時間間隔を制御する。
【００５２】
送信部１０８は、送信レート制御部１０７から指定されたタイミングでパケットを送信するものである。
【００５３】
なお、送信装置は、各クラスへ異なる送信レートによってマルチメディアデータを送信するために、パケット構成部１０６が各クラスにおいて動画像のフレームを間引いたデータでパケットを生成する。そして、送信部１０８は、送信レート制御部１０７から指示された送信レートでパケットを送信する。例えば、１Ｍｂｐｓのクラスの受信装置へは、すべての動画像のフレームを送出し、５１２ｋｂｐｓのクラスへは、１Ｍｂｐｓクラスへのフレームを半分間引いて送出する。さらに、２５６Ｋｂｐｓへのクラスへはさらに半分間引いて送出する。
【００５４】
また、データ構成部１０６は、各クラスの受信装置へフレーム数の異なるデータを送出するために、Ｍｏｔｉｏｎ  ＪＰＥＧ（Motion Joint Photographic Experts）や、階層符号化した動画像データのように、フレーム間で依存関係のない圧縮・符号化方式を採用する。
【００５５】
なお、各クラスにおけるフレームの間引きは送信前に行われ、送信中に変更されることはない。
【００５６】
次に、本実施の形態に係る送信装置の行う伝送レート制御の動作、作用を詳細に説明する。図３は、送信装置の伝送レート制御処理を示す図である。
【００５７】
図３において、受信部１０１が受信装置からパケットを受信すると、受信者レポートが含まれているか否かをチェックする（ステップＳ３０１）。
【００５８】
受信者レポートが含まれていない場合、受信部１０１は待機状態に戻る。
【００５９】
一方、受信レポートが含まれていた場合、受信部１０１はフィードバック情報を送信元受信装置のアドレスとともに利用可能帯域推定部２０２へ通知する。
【００６０】
利用可能帯域推定部１０２は、これを受けて、ＴＦＲＣで規定される上記した（式１）に基づいて受信装置の利用可能帯域を推定する（ステップＳ３０２）。そして、利用可能帯域推定部１０２は推定された利用可能な帯域を帯域補正部１０３に通知する。
【００６１】
ここで、利用可能帯域推定部２０２は、受信装置が属するクラスのパケットサイズｓを次の（式２）により計算する。
【００６２】
ｓ＝Ｎｏ＿ａｄｄｒ＿ｈｄｒ＋Ａｄｄｒ＿ｓｉｚｅ＋Ｍａｘ＿ｐｌｅｎ      （２）
ただし、Ｎｏ＿ａｄｄｒ＿ｈｄｒは、宛先アドレスリストを除いたヘッダサイズであり、Ａｄｄｒ＿ｓｉｚｅは宛先アドレスリストのサイズであり、Ｍａｘ＿ｐｌｅｎはパケットの最大ペイロードサイズである。ＸＣＡＳＴ６では、Ｎｏ＿ａｄｄｒ＿ｓｉｚｅは、ＩＰｖ６ヘッダ６０１、アドレスリストを除いたＸＣＡＳＴ６ヘッダ６０４、およびＵＤＰヘッダから構成される。また、ＳＩＣＣの様に独自プロトコルの場合、さらにプロトコル固有のヘッダをＮｏ＿ａｄｄｒ＿ｓｉｚｅに加える場合がある。
【００６３】
また、ラウンドトリップタイム（往復伝播遅延時間）Ｒは、次の（式３）、（式４）により推定する。
【００６４】
Ｒ＿ｓａｍｐｌｅ＝ｔ＿ｎｏｗ−ｔ＿ｓｔａｍｐ−ｔ＿ｄｅｌａｙ      （３）
ただし、Ｒ＿ｓａｍｐｌｅは最新の応答遅延時間であり、ｔ＿ｓｔａｍｐは送信装置が送出したパケットの送信時刻であり、ｔ＿ｎｏｗは現在時刻であり、ｔ＿ｄｅｌａｙは受信装置がフィードバックパケットを作成するために要した時間である。
【００６５】
Ｒ＝ｑ×Ｒ＋（１−ｑ）×Ｒ＿ｓａｍｐｌｅ      （４）
ただし、０＝＜ｑ＜１であり、ｑは過去の応答遅延時間の情報をどの程度反映するかを決定する値である。
【００６６】
上記の計算式は、フィードバックされた情報のみから、応答遅延時間を求めるのではなく、過去の応答遅延時間を加味することでラウンドトリップタイムＲを求めることを示している。ｑが０に近ければフィードバック情報から求めた最新の応答遅延時間が全体の応答遅延時間に対して影響が大きくなり、１に近ければ、過去の応答遅延時間の情報が大きく影響を与える。
【００６７】
上記ＲからＴＣＰのタイムアウト時間Ｔ＿ＲＴＯは次の（式５）により求める。
【００６８】
Ｔ＿ＲＴＯ＝４×Ｒ      （５）
最後に、受信装置の利用可能な帯域を（式１）に基づき、推定する。
【００６９】
次に、帯域補正部１０３は、受信装置が属する現クラスの受信装置数と、当該受信装置が加わった後の上位クラスの受信装置数とから各クラスのヘッダサイズを求め、現クラスの帯域を補正するための推定帯域補正変数ｃｌａｓｓ＿ｆａｃｔｏｒを算出する。そして、帯域補正部１０３は、利用可能推定部１０２により推定した現クラスの利用可能な帯域と、フィードバック情報と、ｃｌａｓｓ＿ｆａｃｔｏｒとを用いて、ヘッダサイズの違いを補正した、上位クラスで当該受信装置が利用可能な帯域を推定する（ステップＳ３０３）。
【００７０】
図４は、帯域補正部１０３が利用可能な帯域を補正する処理を示す図である。
【００７１】
まず、帯域補正部１０３が、推定帯域補正変数ｃｌａｓｓ＿ｆａｃｔｏｒを求める（ステップＳ４０１）。例えば、ｃｌａｓｓ＿ｆａｃｔｏｒは、受信装置の宛先アドレスリストのサイズを除いたヘッダサイズＮｏ＿ａｄｄｒ＿ｈｄｒ、最大ペイロードサイズＭａｘ＿ｐｌｅｎ、上位クラスの宛先アドレスリストのサイズＵｐｐｅｒ＿ａｄｄｒ＿ｓｉｚｅ、および現クラスの宛先アドレスリストのサイズＣｕｒｒｅｎｔ＿ａｄｄｒ＿ｓｉｚｅを用いて、（式６）により計算する。
【００７２】
ｃｌａｓｓ＿ｆａｃｔｏｒ＝（Ｎｏ＿ａｄｄｒ＿ｈｄｒ＋Ｕｐｐｅｒ＿ａｄｄｒ＿ｓｉｚｅ＋Ｍａｘ＿ｐｌｅｎ）／（Ｎｏ＿ａｄｄｒ＿ｈｄｒ＋Ｃｕｒｒｅｎｔ＿ａｄｄｒ＿ｓｉｚｅ＋Ｍａｘ＿ｐｌｅｎ）        （６）
次に、帯域補正部１０３は、損失イベント率ｐが‘０’か否かを判定し（ステップＳ４０２）、‘０’でなければ、帯域Ｘ１を（式７）により計算する（ステップＳ４０３）。
【００７３】
Ｘ１＝ｍａｘ（ｍｉｎ（Ｘ＿ｃａｌｃ，２×ｃｌａｓｓ＿ｆａｃｔｏｒ×Ｘ＿ｒｅｃｖ），ｓ／ｔ＿ｍｂｉ）        （７）
但し、Ｘ＿ｃａｌｃは、利用可能帯域推定部により計算された帯域であり、Ｘ＿ｒｅｃｖはフィードバックされる受信装置が実際に受信できた帯域であり、ｓはパケットサイズであり、ｔ＿ｍｂｉは最大ＲＴＴである。
【００７４】
一方、損失イベント率ｐが‘０’の場合、帯域補正部１０３は、前回フィードバック情報を受信した時刻ｔｌｄから現在時刻ｔ＿ｎｏｗまでの経過時間（ｔ＿ｎｏｗ−ｔｌｄ）が、ラウンドトリップタイムＲよりも長いか否かを判定し、長くなければ処理を終了する。
【００７５】
一方、経過時間が長い場合、帯域補正部１０３は、帯域Ｘ０を（式８）により計算する（ステップＳ４０５）。
【００７６】
Ｘ０＝ｍａｘ（ｍｉｎ（２×ｃｌａｓｓ＿ｆａｃｔｏｒ×Ｘ，２×ｃｌａｓｓ＿ｆａｃｔｏｒ×Ｘ＿ｒｅｃｖ），ｓ／Ｒ）        （８）
次に、帯域補正部１０３は、ｔｌｄを現在時刻に更新する。
【００７７】
以上のように、利用可能な帯域を補正した後、帯域補正部１０３はクラス決定処理部２０４に算出結果を通知する。
【００７８】
次に、クラス決定処理部１０４は、補正した利用可能な帯域を基に、受信装置がどのクラスに属するかを決定する（ステップＳ３０４）。図５は、クラス決定処理部１０４がクラスを決定する処理を示す図である。
【００７９】
図５において、まず、クラス決定処理部２０４は、各クラスにおける実効レートＢｉを計算する（ステップＳ５０１）。例えば、各クラスの実効レートＢｉは、クラスごとに設定された伝送レートＣｉ、各クラスのヘッダサイズＨｉ、最大ペイロードサイズＭａｘ＿ｐｌｅｎから、次の（式９）により計算する。ただし、ｉ＝０乃至ｎであり、ｎはクラス数を示す。
【００８０】
Ｂｉ＝Ｃｉ×（Ｈｉ＋Ｍａｘ＿ｐｌｅｎ）／Ｍａｘ＿ｐｌｅｎ        （９）
次に、クラス決定処理部２０４は、利用可能な帯域Ｘと各クラスの実効レートＢｉとを伝送レートの高いクラスから、低いクラスへと順番に比較し、実効レートＸが実効レートＢｉよりも高いという条件を満たしたクラスのうちで、最も伝送レートの高いクラスに受信装置を分類する（ステップＳ５０２）。
【００８１】
具体的には、クラス決定処理部２０４は、クラス０からクラスｎの間でｉを繰り返し更新して条件Ｘ＞Ｂｉを満たすクラスを探索する。例えば、クラス数が３であり、各クラスの実行レートをクラス０が１Ｍｂｐｓ、クラス１が５１２ｋｂｐｓ、クラス２が２５６ｋｂｐｓであり、利用可能な帯域Ｘが６００ｋｂｐｓとする。この場合、Ｘ＞Ｂ１を満たすため、受信装置はクラス１に分類される。
【００８２】
次に、クラス決定処理部２０４は、決定されたクラスに受信装置が属するようにクラス別受信者記憶部１０５に記録されている受信者リストを変更する。
【００８３】
以上により、本実施の形態に係る送信装置は、クラス間のヘッダサイズの違いを用いてフィードバック情報から求めた利用可能な帯域を補正し、その補正された帯域を用いて受信装置をどのクラスに分類するかを決定する。これにより、ＳＩＣＣでの明示的マルチキャスト方式の通信において、新たなクラスに受信装置を変更しても、そのクラスでのヘッダサイズの違いによる伝送レートの変化は補正済みであるので、受信装置の利用可能な伝送レートを超えることがない。このため、送信装置は、受信装置への伝送レートを変更後、すぐに低いクラスに変更するようなことがなく、伝送レートの変更頻度を低減できる。その結果、送信装置は、高品質のマルチメディアデータを伝送することが可能となる。
【産業上の利用可能性】
【００８４】
本発明は、明示的マルチキャスト方式によるデータ送信を行う送信装置等に有用であり、パケットの伝送レートの変更頻度を低減するのに適している。
【図面の簡単な説明】
【００８５】
【図１】本発明の実施の形態における送信装置の構成例を示す図
【図２】本発明の実施の形態における受信者レポートパケットのデータフォーマットを示す図
【図３】本発明の実施の形態における送信装置の伝送レート制御処理を示す図
【図４】本発明の実施の形態における送信装置の帯域補正部による帯域の補正処理を示す図
【図５】本発明の実施の形態における送信装置のクラス決定処理部によるクラス分類処理を示す図
【図６】従来のＸＣＡＳＴ６におけるヘッダフォーマットを示す図
【図７】従来のＳＩＣＣの動作を示すパケット配送図
【符号の説明】
【００８６】
１０１    受信部
１０２    利用可能帯域推定部
１０３    帯域補正部
１０４    クラス決定処理部
１０５    クラス別受信者記憶部
１０６    パケット構成部
１０７    送信レート制御部
１０８    送信部
１１０    アプリケーション部
【図１】
0004772053.tif 000003
【図２】
0004772053.tif 000004
【図３】
0004772053.tif 000005
【図４】
0004772053.tif 000006
【図５】
0004772053.tif 000007
【図６】
0004772053.tif 000008
【図７】
0004772053.tif 000009