JPWO2007015482A1 - 送信装置および送信レート制御方法 - Google Patents

送信装置および送信レート制御方法 Download PDF

Info

Publication number
JPWO2007015482A1
JPWO2007015482A1 JP2007529273A JP2007529273A JPWO2007015482A1 JP WO2007015482 A1 JPWO2007015482 A1 JP WO2007015482A1 JP 2007529273 A JP2007529273 A JP 2007529273A JP 2007529273 A JP2007529273 A JP 2007529273A JP WO2007015482 A1 JPWO2007015482 A1 JP WO2007015482A1
Authority
JP
Japan
Prior art keywords
class
transmission
packet
available bandwidth
receiving device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007529273A
Other languages
English (en)
Other versions
JP4772053B2 (ja
Inventor
一暢 小西
一暢 小西
衛一 村本
衛一 村本
孝弘 米田
孝弘 米田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007529273A priority Critical patent/JP4772053B2/ja
Publication of JPWO2007015482A1 publication Critical patent/JPWO2007015482A1/ja
Application granted granted Critical
Publication of JP4772053B2 publication Critical patent/JP4772053B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1836Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with heterogeneous network architecture
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本発明は、SICCに用いられる明示的マルチキャスト方式による通信において、伝送レートが変動する頻度を低下させ、高品質なマルチメディアデータの伝送を可能にする。送信装置(100)の利用可能帯域推定部(102)は、受信部(101)で受信した受信装置(200)からのフィードバック情報を用いて、受信装置の利用可能な帯域を推定する。帯域補正部(103)は、現クラスと上位クラスのヘッダサイズの違いから、推定した利用可能な帯域の補正を行う。クラス決定処理部(104)は、補正した帯域を用いて受信装置が属するクラスの変更を行う。

Description

本発明は、映像・音声といったマルチメディアデータを高品質でマルチキャスト通信する送信装置に関する。
近年、ネットワークの急速な発展に伴って、テレビ会議やネットワークゲームなど、同一のグループに属する複数の受信装置に対してマルチメディアデータを伝送する機会が増大している。その際に、すべての受信装置に対して同一のパケットを効率的に伝送するための通信方法として、マルチキャスト通信が知られている。
送信装置は、マルチメディアデータを配信する受信装置を10人程度のスモールグループに分け、スモールグループごとにマルチキャスト通信を行う。そのマルチキャスト通信方式として、明示的マルチキャスト方式がある。これは、送信装置がグループに属する全受信装置の宛先アドレスを、パケット内のオプションヘッダまたはペイロードに受信者リストとして格納し、パケットを配信する全受信装置を明示的に指定するものである。以降、本発明において単に「パケット」と記述した場合、明示的マルチキャスト方式におけるパケットをいう。
代表的な、明示的マルチキャスト方式として,Explicit Multicast6(以降、「XCAST6」という。)がある(非特許文献1)。
図6は、XCAST6のパケットのヘッダフォーマットを示す図である。なお、このXCAST6は、IPアドレスとしてIPv6を用いて通信を行うものである。
図6において、IPv6ヘッダ601内の送信元アドレス(Source Address)602には、パケットの送信元アドレスを記載し、宛先アドレス(Distination Address)603に送信先の宛先アドレスを記載する。
XCASTヘッダ(XCASTHdr)604は、IPv6ヘッダ(IPv6Hdr)605とルーティングヘッダ(RoutingHdr)606とで構成されている。IPv6ヘッダ605の送信元アドレス607には、パケットの送信元アドレスが格納され、宛先アドレス604には、XCAST6に与えられたマルチキャストアドレス、例えばff05::10を格納する。
ルーティングヘッダ606には、マルチキャストの送信先である、すべての宛先アドレス0〜n(609)、宛先ポート(Port)0〜n(A10)を格納する。
具体的に、明示的マルチキャスト方式によるパケット配信方法を以下に説明する。
明示的マルチキャスト方式に対応したルータは、パケットを受信すると、パケットのルーティングヘッダ606に格納されたすべての宛先アドレス609に対して、自身の持つユニキャスト経路表を検索し、各宛先アドレスに対応した送出インターフェースを調べる。そして、複数の出力インターフェースに対してパケットを送出しなければならない場合、ルータは送出インターフェースの数だけパケットを複製する。その際、ルータは、送出インターフェースに含まれる受信装置以外の宛先アドレスをパケットのルーティングヘッダ606から削除するか、配送済みのマークを付加する。また、ルータは、IPヘッダの宛先アドレス603を未配送の受信装置の宛先アドレスに書き換える。
一方、明示的マルチキャスト方式に対応していないルータは、パケットに格納された宛先アドレス605を参照せずに、IPヘッダに記載された宛先アドレスからユニキャスト経路表を検索する。そして、通常のユニキャスト通信と同様にパケットを送出する。すなわち、明示的マルチキャスト方式に対応していないルータは、マルチキャスト通信を行わない。しかし、明示的マルチキャスト方式に対応している受信装置がこのパケットを受信すると、XCASTヘッダに格納された受信者リストを参照する。そして、受信者リストに未配送の宛先アドレスがあった場合、受信装置はパケットを複製し、IPヘッダの宛先アドレス603を未配送の宛先アドレスに書き換えて転送する。
以上の方法により、明示的マルチキャスト方式では、経路上のすべてのルータが明示的マルチキャスト方式に対応していなくても、すべての受信装置に対してパケットを配信できた。
しかし、マルチメディアデータを明示的マルチキャスト方式で伝送する場合、ネットワーク上で輻輳が発生すると、受信装置は安定してマルチメディアデータを受信できなくなり、映像や音声の品質が著しく低下してしまう。そのため、輻輳を回避することが重要となる。しかし、明示的マルチキャスト方式では、伝送レート制御が定義されていないため、例え輻輳が発生しても、伝送レートを制御することによって、輻輳を回避することができなかった。
伝送レート制御方法としては、フィードバック情報を用いたTFRC(TCP Friendly Rate Control)が知られている(非特許文献2)。このTFRCは、パケットロスが発生するまで伝送レートを上昇させ、パケットロスが発生した場合に伝送レートを下げる処理を行う。これにより、送信装置は適した伝送レートで伝送を行うことができる。
そこで、明示的マルチキャスト方式を用いた通信に、TFRCを利用した伝送レート制御を行うことが検討され、SICC(Sender Initiated Congestion Control)が提案された(非特許文献3)。
図7は、SICCの動作を示すパケット配送図である。
図7において、あらかじめ送信装置は、異なる伝送レートを割当てたクラスを複数設定する。SICCでは、送信速度の上限B(bps)を設定し、それに対して1/2ずつ減速したB/2クラスとB/4クラスを含む3クラスが設定されている。送信装置は、受信装置をクラスごとに分類し、各クラスに属する受信装置の宛先アドレスをヘッダに格納したパケットをクラスごとに送信する。
受信装置がどのクラスに属するかは、各受信装置の利用可能な帯域によって決定される。すなわち、送信装置は、TFRCの規定による、受信装置から送信装置へフィードバックされる損失イベント率、受信したパケットが送信装置において送信された時刻、受信装置が受信できた実効レートなどの情報を受信し、それらフィードバック情報に基づいて(式1)により受信装置の利用可能な帯域を推定する。そして、送信装置は、推定した受信装置の利用可能な帯域に基づいて、その帯域を最大限利用できる伝送レートを設定したクラスに受信装置を分類する。
Figure 2007015482
ただし、X:利用可能な帯域(bps)、R:ラウンドトリップタイム(秒)、p:損失イベント率、s:パケットサイズ(byte)、T_RTO:TCPのタイムアウト値(=4×R)を示す。
なお、(式1)で用いるラウンドトリップタイムは、フィードバック情報に含まれる送信元送信時刻と受信レポートパケットを受信した時刻から求められる。
また、送信装置が各受信装置のクラスを分類する処理は、TFRCと同様に受信装置からのフィードバック情報を受信するごとに実施されるので、受信装置をネットワークの状態に合わせて受信装置を利用可能な帯域に適したクラスに動的に分類することができる。このように、受信装置はどこか1つのクラスに分類され、送信装置はクラスごとにパケットを送信するので、受信装置のネットワーク状態に合わせた伝送レート制御が実現できた。
Y.Imai,M.Shin and Y.Kim,"XCAST6:eXplicit Multicast on IPv6",IEEE/IPSJ SAINT2003 Workshop 4,IPv6 and Applications,Orland,Jan.2003. M.Handley et al.,"TCP Friendly Rate Control(TFRC):Protocol Specification",RFC 3448、インターネット<URL:http://www.faqs.org/rfcs/rfc3448.html> 村本 衛一、米田 孝弘、鈴木 史章、鈴木良宏、中村 敦司、"送信者起動マルチキャストにおける輻輳制御方法の提案"、インターネットコンファレンス 2003論文集pp5−10,2003/10
(発明が解決しようとする課題)
しかしながら、明示的マルチキャスト方式では、パケットを配信する受信装置数によってヘッダに格納する宛先アドレスの数が変化するため、パケットサイズが変わってしまう。そして、データ送信の実効レートが変化してしまう。このため、送信装置が受信装置からのフィードバック情報を用いて推定した利用可能な帯域を基に受信装置のクラス変更を行った場合、変更先のクラスの実効レートは、変更先のクラスに属する受信装置数が、受信装置数よりも多いまたは同一であれば、変更後のパケットサイズが増えるので、実際の実効レートも高くなってしまう。これにより、送信装置からクラス変更した受信装置へのデータ通信の実効レートは、その受信装置の利用可能な帯域を超えてしまう場合がある。
例えば、受信装置が現在属しているクラス(以降、現クラスとする)の受信装置数よりも、送信レートが一段階高いクラス(以降、上位クラスとする)の受信装置数の方が多いかあるいは同一とする。
この場合、現クラスから上位クラスへ受信装置がクラス変更すると、上位クラスのヘッダサイズは現クラスのヘッダサイズよりも大きくなり、実際の上位クラスにおける実効レートは現クラスの実効レートよりも大きくなる。そのため、上位クラスにおける実効レートは受信装置の利用可能な帯域を超えてしまう可能性がある。
受信装置が利用可能な帯域を超える実効レートで送信装置がパケットを送信すると、輻輳が発生し、その結果パケットロスが起こり、受信装置が測定している損失イベント率が上昇する。そうすると、送信装置は受信装置が利用可能な帯域を低く推定することになり、その受信装置の属するクラスを伝送レートの低いクラスへ変更しなくてはならなくなる。
このように、受信装置を伝送レートの高い上位クラスへ変更しても、すぐにクラスを下げなければならず、頻繁にクラス変更を行うことになる。その結果、受信装置は伝送された映像のフレームレートが頻繁に変化し、画質の低下が起こるという課題を有していた。
本発明は、SICCに用いられる明示的マルチキャスト方式による通信において、伝送レートが変動する頻度を低下させ、高品質なマルチメディアデータの伝送を可能にする送信装置を提供する。
(課題を解決するための手段)
本発明に係る送信装置は、受信装置から受信したフィードバック情報を用いて利用可能な帯域を推定する場合、受信装置の属する現クラスと上位クラスとのヘッダサイズの違いを基に推定した帯域を補正する。そして、送信装置は、補正した帯域を用いて受信装置の属するクラスを決定する。
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えるようなことを防止できる。そのため、送信装置は、受信装置の属するクラスをすぐに低いクラスに下げることがなくなり、伝送レートの頻繁な変動を低減することができる。
本発明に係る送信装置は、ネットワークに接続された受信装置の利用可能帯域に基づきクラス分類された受信装置に、各クラスに属する受信装置をヘッダに含む受信者リストに記述したパケットを送信する機能を備えており、受信装置から受信した伝送能力に関する情報から当該受信装置の利用可能な帯域を推定する利用可能帯域推定部と、各クラスに属する受信装置数からヘッダサイズを計算し、利用可能な帯域をヘッダサイズの違いに基づき補正する帯域補正部と、補正された利用可能な帯域に基づき受信装置の属するクラスを決定するクラス決定処理部とを備えている。
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるような、伝送レートの頻繁な変動を低減することができる。
また、本発明に係る送信装置が取得する伝送能力に関する情報は、受信装置が測定した損失イベント率と、当該送信装置からパケットが送信された時刻と、受信装置が受信できた実効レートである。
これにより、送信装置はTFRCの規定に基づいた伝送能力に関する情報の入った伝送レート制御用パケットを利用することが可能になる。
また、本発明に係る送信装置の利用可能帯域推定部は、当該送信装置からパケットが送信された時刻と受信装置からの応答のパケットを受信した時刻とから求めたラウンドトリップタイム、パケットサイズ、およびTCPの再送タイマのタイムアウト時間をさらに用いて利用可能な帯域を推定するものである。
これにより、送信装置はTFRCの規定に基づいた最大送信速度の推定技術を利用することが可能になる。
また、本発明に係る送信装置の帯域補正部は、受信装置が属するクラスのヘッダサイズと、伝送レートが当該クラスより一段階高いクラスのヘッダサイズとから推定帯域補正変数を求め、その推定帯域補正変数を用いて、利用可能帯域推定部が推定した利用可能な帯域の補正を行うものである。
これにより、受信装置への伝送レートはあらたなクラスの受信装置数の影響を予測したものとなるので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるようなことを防止できる。
また、本発明に係る送信装置のクラス決定処理部は、最大ペイロードサイズと各クラスのヘッダサイズとから算出した各クラスにおける実効レートと、帯域補正部が補正した帯域とを比較し、補正された帯域を越えない範囲で、最大の実効レートのクラスに受信装置を分類するものである。
これにより、送信装置は受信装置を利用可能な帯域の中で、最も高い実効レートでデータ伝送をすることが可能になる。
また、本発明に係る送信レート制御方法は、ネットワークを介して受信装置へ送信するパケットの送信レートを制御する送信レート制御方法であって、上記受信装置から、伝送能力に関する情報を含む上記パケットを受信するステップと、上記受信した上記パケットに含まれる上記伝送能力に関する情報から、当該受信装置への伝送に利用可能な帯域を推定するステップと、上記推定した上記利用可能な帯域に基づき、当該受信装置をクラス分類するステップとを有する。そして、送信レート制御方法は、上記分類した上記クラスに属する上記受信装置の受信装置数から、上記各クラスのヘッダサイズを計算し、上記ヘッダサイズの違いに基づき上記利用可能な帯域を補正するステップと、上記補正した上記利用可能な帯域に基づき、上記受信装置の属する上記クラスを決定するステップとを有する。
(発明の効果)
本発明によれば、SICCに用いられる明示的マルチキャスト方式による通信において、伝送レートの変更頻度を低減することにより、高品質のマルチメディアデータの伝送が可能となる。
本発明の実施の形態における送信装置の構成例を示す図 本発明の実施の形態における受信者レポートパケットのデータフォーマットを示す図 本発明の実施の形態における送信装置の伝送レート制御処理を示す図 本発明の実施の形態における送信装置の帯域補正部による帯域の補正処理を示す図 本発明の実施の形態における送信装置のクラス決定処理部によるクラス分類処理を示す図 従来のXCAST6におけるヘッダフォーマットを示す図 従来のSICCの動作を示すパケット配送図
符号の説明
101 受信部
102 利用可能帯域推定部
103 帯域補正部
104 クラス決定処理部
105 クラス別受信者記憶部
106 パケット構成部
107 送信レート制御部
108 送信部
110 アプリケーション部
以下、本発明の実施の形態について、図面を参照しつつ説明する。
本発明の実施の形態を説明する上で、明示的マルチキャスト方式としてXCAST6を例にとる。また、パケットとしてはXCAST6のパケットを指すものとする。
図1は、本実施の形態に係る送信装置の構成を示している。
図1において、アプリケーション部110は送信装置100の有するアプリケーションを実施するものであり、受信部101は、例えば受信装置200から受信者レポートパケットを受信し、フィードバック情報を抽出する。図2はこの受信者レポートパケットのデータフォーマットを示す図である。
図2において、送信装置からパケットが送信された時刻(以下、「送信元送信時刻」という。)201と、受信装置が受信できた実効レート202と、受信装置が測定した損失イベント率203とがフィードバック情報である。
利用可能帯域推定部102は、受信部101から受け取ったフィードバック情報に、TFRCで定義されている帯域推定方式を用いて受信装置の利用可能帯域を推定するものである。
帯域補正部103は、各クラスのヘッダサイズを計算し補正係数を求め、これを用いて利用可能帯域推定部102で推定した利用可能な帯域を補正するものである。
クラス決定処理部104は、あらかじめ規定している伝送レートから実効レートを算出し、可変長ヘッダ処理部203で補正した帯域と比較する。これにより、クラス決定処理部104は、受信装置の属するクラスを決定し、クラス別受信者記憶部105に記録する。本実施の形態においては、送信装置の最大送信速度1M(bps)を設定し、512K(bps)と256K(bps)を閾値とするクラス1乃至クラス3の3つに分ける。そして、それぞれのクラスごとに受信者リストを作成する。
パケット構成部106は、明示的マルチキャスト方式のパケットヘッダを構成するものであり、受信者リストをこのヘッダのルーティングヘッダに格納する。また、アプリケーション部110から受け取った受信装置へ送信すべきコンテンツをペイロードに記録する。
送信レート制御部107は、パケットを送出するタイミングを制御するものであり、受信者リストのクラスに応じて、パケットを送出する時間間隔を制御する。
送信部108は、送信レート制御部107から指定されたタイミングでパケットを送信するものである。
なお、送信装置は、各クラスへ異なる送信レートによってマルチメディアデータを送信するために、パケット構成部106が各クラスにおいて動画像のフレームを間引いたデータでパケットを生成する。そして、送信部108は、送信レート制御部107から指示された送信レートでパケットを送信する。例えば、1Mbpsのクラスの受信装置へは、すべての動画像のフレームを送出し、512kbpsのクラスへは、1Mbpsクラスへのフレームを半分間引いて送出する。さらに、256Kbpsへのクラスへはさらに半分間引いて送出する。
また、データ構成部106は、各クラスの受信装置へフレーム数の異なるデータを送出するために、Motion JPEG(Motion Joint Photographic Experts Group)や、階層符号化した動画像データのように、フレーム間で依存関係のない圧縮・符号化方式を採用する。
なお、各クラスにおけるフレームの間引きは送信前に行われ、送信中に変更されることはない。
次に、本実施の形態に係る送信装置の行う伝送レート制御の動作、作用を詳細に説明する。図3は、送信装置の伝送レート制御処理を示す図である。
図3において、受信部101が受信装置からパケットを受信すると、受信者レポートが含まれているか否かをチェックする(ステップS301)。
受信者レポートが含まれていない場合、受信部101は待機状態に戻る。
一方、受信レポートが含まれていた場合、受信部101はフィードバック情報を送信元受信装置のアドレスとともに利用可能帯域推定部202へ通知する。
利用可能帯域推定部102は、これを受けて、TFRCで規定される上記した(式1)に基づいて受信装置の利用可能帯域を推定する(ステップS302)。そして、利用可能帯域推定部102は推定された利用可能な帯域を帯域補正部103に通知する。
ここで、利用可能帯域推定部202は、受信装置が属するクラスのパケットサイズsを次の(式2)により計算する。
s=No_addr_hdr+Addr_size+Max_plen (2)
ただし、No_addr_hdrは、宛先アドレスリストを除いたヘッダサイズであり、Addr_sizeは宛先アドレスリストのサイズであり、Max_plenはパケットの最大ペイロードサイズである。XCAST6では、No_addr_sizeは、IPv6ヘッダ601、アドレスリストを除いたXCAST6ヘッダ604、およびUDPヘッダから構成される。また、SICCの様に独自プロトコルの場合、さらにプロトコル固有のヘッダをNo_addr_sizeに加える場合がある。
また、ラウンドトリップタイム(往復伝播遅延時間)Rは、次の(式3)、(式4)により推定する。
R_sample=t_now−t_stamp−t_delay (3)
ただし、R_sampleは最新の応答遅延時間であり、t_stampは送信装置が送出したパケットの送信時刻であり、t_nowは現在時刻であり、t_delayは受信装置がフィードバックパケットを作成するために要した時間である。
R=q×R+(1−q)×R_sample (4)
ただし、0=<q<1であり、qは過去の応答遅延時間の情報をどの程度反映するかを決定する値である。
上記の計算式は、フィードバックされた情報のみから、応答遅延時間を求めるのではなく、過去の応答遅延時間を加味することでラウンドトリップタイムRを求めることを示している。qが0に近ければフィードバック情報から求めた最新の応答遅延時間が全体の応答遅延時間に対して影響が大きくなり、1に近ければ、過去の応答遅延時間の情報が大きく影響を与える。
上記RからTCPのタイムアウト時間T_RTOは次の(式5)により求める。
T_RTO=4×R (5)
最後に、受信装置の利用可能な帯域を(式1)に基づき、推定する。
次に、帯域補正部103は、受信装置が属する現クラスの受信装置数と、当該受信装置が加わった後の上位クラスの受信装置数とから各クラスのヘッダサイズを求め、現クラスの帯域を補正するための推定帯域補正変数class_factorを算出する。そして、帯域補正部103は、利用可能推定部102により推定した現クラスの利用可能な帯域と、フィードバック情報と、class_factorとを用いて、ヘッダサイズの違いを補正した、上位クラスで当該受信装置が利用可能な帯域を推定する(ステップS303)。
図4は、帯域補正部103が利用可能な帯域を補正する処理を示す図である。
まず、帯域補正部103が、推定帯域補正変数class_factorを求める(ステップS401)。例えば、class_factorは、受信装置の宛先アドレスリストのサイズを除いたヘッダサイズNo_addr_hdr、最大ペイロードサイズMax_plen、上位クラスの宛先アドレスリストのサイズUpper_addr_size、および現クラスの宛先アドレスリストのサイズCurrent_addr_sizeを用いて、(式6)により計算する。
class_factor=(No_addr_hdr+Upper_addr_size+Max_plen)/(No_addr_hdr+Current_addr_size+Max_plen) (6)
次に、帯域補正部103は、損失イベント率pが‘0’か否かを判定し(ステップS402)、‘0’でなければ、帯域X1を(式7)により計算する(ステップS403)。
X1=max(min(X_calc,2×class_factor×X_recv),s/t_mbi) (7)
但し、X_calcは、利用可能帯域推定部により計算された帯域であり、X_recvはフィードバックされる受信装置が実際に受信できた帯域であり、sはパケットサイズであり、t_mbiは最大RTTである。
一方、損失イベント率pが‘0’の場合、帯域補正部103は、前回フィードバック情報を受信した時刻tldから現在時刻t_nowまでの経過時間(t_now−tld)が、ラウンドトリップタイムRよりも長いか否かを判定し、長くなければ処理を終了する。
一方、経過時間が長い場合、帯域補正部103は、帯域X0を(式8)により計算する(ステップS405)。
X0=max(min(2×class_factor×X,2×class_factor×X_recv),s/R) (8)
次に、帯域補正部103は、tldを現在時刻に更新する。
以上のように、利用可能な帯域を補正した後、帯域補正部103はクラス決定処理部204に算出結果を通知する。
次に、クラス決定処理部104は、補正した利用可能な帯域を基に、受信装置がどのクラスに属するかを決定する(ステップS304)。図5は、クラス決定処理部104がクラスを決定する処理を示す図である。
図5において、まず、クラス決定処理部204は、各クラスにおける実効レートBiを計算する(ステップS501)。例えば、各クラスの実効レートBiは、クラスごとに設定された伝送レートCi、各クラスのヘッダサイズHi、最大ペイロードサイズMax_plenから、次の(式9)により計算する。ただし、i=0乃至nであり、nはクラス数を示す。
Bi=Ci×(Hi+Max_plen)/Max_plen (9)
次に、クラス決定処理部204は、利用可能な帯域Xと各クラスの実効レートBiとを伝送レートの高いクラスから、低いクラスへと順番に比較し、利用可能な帯域Xが実効レートBiよりも高いという条件を満たしたクラスのうちで、最も伝送レートの高いクラスに受信装置を分類する(ステップS502)。
具体的には、クラス決定処理部204は、クラス0からクラスnの間でiを繰り返し更新して条件X>Biを満たすクラスを探索する。例えば、クラス数が3であり、各クラスの実行レートをクラス0が1Mbps、クラス1が512kbps、クラス2が256kbpsであり、利用可能な帯域Xが600kbpsとする。この場合、X>B1を満たすため、受信装置はクラス1に分類される。
次に、クラス決定処理部204は、決定されたクラスに受信装置が属するようにクラス別受信者記憶部105に記録されている受信者リストを変更する。
以上により、本実施の形態に係る送信装置は、クラス間のヘッダサイズの違いを用いてフィードバック情報から求めた利用可能な帯域を補正し、その補正された帯域を用いて受信装置をどのクラスに分類するかを決定する。これにより、SICCでの明示的マルチキャスト方式の通信において、新たなクラスに受信装置を変更しても、そのクラスでのヘッダサイズの違いによる伝送レートの変化は補正済みであるので、受信装置の利用可能な伝送レートを超えることがない。このため、送信装置は、受信装置への伝送レートを変更後、すぐに低いクラスに変更するようなことがなく、伝送レートの変更頻度を低減できる。その結果、送信装置は、高品質のマルチメディアデータを伝送することが可能となる。
本発明は、明示的マルチキャスト方式によるデータ送信を行う送信装置等に有用であり、パケットの伝送レートの変更頻度を低減するのに適している。

本発明は、映像・音声といったマルチメディアデータを高品質でマルチキャスト通信する送信装置に関する。
近年、ネットワークの急速な発展に伴って、テレビ会議やネットワークゲームなど、同一のグループに属する複数の受信装置に対してマルチメディアデータを伝送する機会が増大している。その際に、すべての受信装置に対して同一のパケットを効率的に伝送するための通信方法として、マルチキャスト通信が知られている。
送信装置は、マルチメディアデータを配信する受信装置を10人程度のスモールグループに分け、スモールグループごとにマルチキャスト通信を行う。そのマルチキャスト通信方式として、明示的マルチキャスト方式がある。これは、送信装置がグループに属する全受信装置の宛先アドレスを、パケット内のオプションヘッダまたはペイロードに受信者リストとして格納し、パケットを配信する全受信装置を明示的に指定するものである。以降、本発明において単に「パケット」と記述した場合、明示的マルチキャスト方式におけるパケットをいう。
代表的な、明示的マルチキャスト方式として,Explicit Multicast6(以降、「XCAST6」という。)がある(非特許文献1)。
図6は、XCAST6のパケットのヘッダフォーマットを示す図である。なお、このXCAST6は、IPアドレスとしてIPv6を用いて通信を行うものである。
図6において、IPv6ヘッダ601内の送信元アドレス(Source Address)602には、パケットの送信元アドレスを記載し、宛先アドレス(Destination Address)603に送信先の宛先アドレスを記載する。
XCASTヘッダ(XCASTHdr)604は、IPv6ヘッダ(IPv6Hdr)605とルーティングヘッダ(RoutingHdr)606とで構成されている。IPv6ヘッダ605の送信元アドレス607には、パケットの送信元アドレスが格納され、宛先アドレス604には、XCAST6に与えられたマルチキャストアドレス、例えばff05::10を格納する。
ルーティングヘッダ606には、マルチキャストの送信先である、すべての宛先アドレス0〜n(609)、宛先ポート(Port)0〜n(A10)を格納する。
具体的に、明示的マルチキャスト方式によるパケット配信方法を以下に説明する。
明示的マルチキャスト方式に対応したルータは、パケットを受信すると、パケットのルーティングヘッダ606に格納されたすべての宛先アドレス609に対して、自身の持つユニキャスト経路表を検索し、各宛先アドレスに対応した送出インターフェースを調べる。そして、複数の出力インターフェースに対してパケットを送出しなければならない場合、ルータは送出インターフェースの数だけパケットを複製する。その際、ルータは、送出インターフェースに含まれる受信装置以外の宛先アドレスをパケットのルーティングヘッダ606から削除するか、配送済みのマークを付加する。また、ルータは、IPヘッダの宛先アドレス603を未配送の受信装置の宛先アドレスに書き換える。
一方、明示的マルチキャスト方式に対応していないルータは、パケットに格納された宛先アドレス605を参照せずに、IPヘッダに記載された宛先アドレスからユニキャスト経路表を検索する。そして、通常のユニキャスト通信と同様にパケットを送出する。すなわち、明示的マルチキャスト方式に対応していないルータは、マルチキャスト通信を行わない。しかし、明示的マルチキャスト方式に対応している受信装置がこのパケットを受信すると、XCASTヘッダに格納された受信者リストを参照する。そして、受信者リストに未配送の宛先アドレスがあった場合、受信装置はパケットを複製し、IPヘッダの宛先アドレス603を未配送の宛先アドレスに書き換えて転送する。
以上の方法により、明示的マルチキャスト方式では、経路上のすべてのルータが明示的マルチキャスト方式に対応していなくても、すべての受信装置に対してパケットを配信できた。
しかし、マルチメディアデータを明示的マルチキャスト方式で伝送する場合、ネットワーク上で輻輳が発生すると、受信装置は安定してマルチメディアデータを受信できなくなり、映像や音声の品質が著しく低下してしまう。そのため、輻輳を回避することが重要となる。しかし、明示的マルチキャスト方式では、伝送レート制御が定義されていないため、例え輻輳が発生しても、伝送レートを制御することによって、輻輳を回避することができなかった。
伝送レート制御方法としては、フィードバック情報を用いたTFRC(TCP Friendly Rate Control)が知られている(非特許文献2)。このTFRCは、パケットロスが発生するまで伝送レートを上昇させ、パケットロスが発生した場合に伝送レートを下げる処理を行う。これにより、送信装置は適した伝送レートで伝送を行うことができる。
そこで、明示的マルチキャスト方式を用いた通信に、TFRCを利用した伝送レート制御を行うことが検討され、SICC(Sender Initiated Congestion Control)が提案された(非特許文献3)。
図7は、SICCの動作を示すパケット配送図である。
図7において、あらかじめ送信装置は、異なる伝送レートを割当てたクラスを複数設定する。SICCでは、送信速度の上限B(bps)を設定し、それに対して1/2ずつ減速したB/2クラスとB/4クラスを含む3クラスが設定されている。送信装置は、受信装置をクラスごとに分類し、各クラスに属する受信装置の宛先アドレスをヘッダに格納したパケットをクラスごとに送信する。
受信装置がどのクラスに属するかは、各受信装置の利用可能な帯域によって決定される。すなわち、送信装置は、TFRCの規定による、受信装置から送信装置へフィードバックされる損失イベント率、受信したパケットが送信装置において送信された時刻、受信装置が受信できた実効レートなどの情報を受信し、それらフィードバック情報に基づいて(式1)により受信装置の利用可能な帯域を推定する。そして、送信装置は、推定した受信装置の利用可能な帯域に基づいて、その帯域を最大限利用できる伝送レートを設定したクラスに受信装置を分類する。
Figure 2007015482
ただし、X:利用可能な帯域(bps)、R:ラウンドトリップタイム(秒)、p:損失イベント率、s:パケットサイズ(byte)、T_RTO:TCPのタイムアウト値(=4×R)を示す。
なお、(式1)で用いるラウンドトリップタイムは、フィードバック情報に含まれる送信元送信時刻と受信レポートパケットを受信した時刻から求められる。
また、送信装置が各受信装置のクラスを分類する処理は、TFRCと同様に受信装置からのフィードバック情報を受信するごとに実施されるので、受信装置をネットワークの状態に合わせて受信装置を利用可能な帯域に適したクラスに動的に分類することができる。このように、受信装置はどこか1つのクラスに分類され、送信装置はクラスごとにパケットを送信するので、受信装置のネットワーク状態に合わせた伝送レート制御が実現できた。
Y.Imai,M.Shin and Y.Kim,"XCAST6:eXplicit Multicast on IPv6",IEEE/IPSJ SAINT2003 Workshop 4,IPv6 and Applications,Orland,Jan.2003. M.Handley et al.,"TCP Friendly Rate Control(TFRC):Protocol Specification",RFC 3448、インターネット<URL:http://www.faqs.org/rfcs/rfc3448.html> 村本 衛一、米田 孝弘、鈴木 史章、鈴木良宏、中村 敦司、"送信者起動マルチキャストにおける輻輳制御方法の提案"、インターネットコンファレンス 2003論文集pp5−10,2003/10
しかしながら、明示的マルチキャスト方式では、パケットを配信する受信装置数によってヘッダに格納する宛先アドレスの数が変化するため、パケットサイズが変わってしまう。そして、データ送信の実効レートが変化してしまう。このため、送信装置が受信装置からのフィードバック情報を用いて推定した利用可能な帯域を基に受信装置のクラス変更を行った場合、変更先のクラスの実効レートは、変更先のクラスに属する受信装置数が、受信装置数よりも多いまたは同一であれば、変更後のパケットサイズが増えるので、実際の実効レートも高くなってしまう。これにより、送信装置からクラス変更した受信装置へのデータ通信の実効レートは、その受信装置の利用可能な帯域を超えてしまう場合がある。
例えば、受信装置が現在属しているクラス(以降、現クラスとする)の受信装置数よりも、送信レートが一段階高いクラス(以降、上位クラスとする)の受信装置数の方が多いかあるいは同一とする。
この場合、現クラスから上位クラスへ受信装置がクラス変更すると、上位クラスのヘッダサイズは現クラスのヘッダサイズよりも大きくなり、実際の上位クラスにおける実効レートは現クラスの実効レートよりも大きくなる。そのため、上位クラスにおける実効レートは受信装置の利用可能な帯域を超えてしまう可能性がある。
受信装置が利用可能な帯域を超える実効レートで送信装置がパケットを送信すると、輻輳が発生し、その結果パケットロスが起こり、受信装置が測定している損失イベント率が上昇する。そうすると、送信装置は受信装置が利用可能な帯域を低く推定することになり、その受信装置の属するクラスを伝送レートの低いクラスへ変更しなくてはならなくなる。
このように、受信装置を伝送レートの高い上位クラスへ変更しても、すぐにクラスを下げなければならず、頻繁にクラス変更を行うことになる。その結果、受信装置は伝送された映像のフレームレートが頻繁に変化し、画質の低下が起こるという課題を有していた。
本発明は、SICCに用いられる明示的マルチキャスト方式による通信において、伝送レートが変動する頻度を低下させ、高品質なマルチメディアデータの伝送を可能にする送信装置を提供する。
本発明に係る送信装置は、受信装置から受信したフィードバック情報を用いて利用可能な帯域を推定する場合、受信装置の属する現クラスと上位クラスとのヘッダサイズの違いを基に推定した帯域を補正する。そして、送信装置は、補正した帯域を用いて受信装置の属するクラスを決定する。
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えるようなことを防止できる。そのため、送信装置は、受信装置の属するクラスをすぐに低いクラスに下げることがなくなり、伝送レートの頻繁な変動を低減することができる。
本発明に係る送信装置は、ネットワークに接続された受信装置の利用可能帯域に基づきクラス分類された受信装置に、各クラスに属する受信装置をヘッダに含む受信者リストに記述したパケットを送信する機能を備えており、受信装置から受信した伝送能力に関する情報から当該受信装置の利用可能な帯域を推定する利用可能帯域推定部と、各クラスに属する受信装置数からヘッダサイズを計算し、利用可能な帯域をヘッダサイズの違いに基づき補正する帯域補正部と、補正された利用可能な帯域に基づき受信装置の属するクラスを決定するクラス決定処理部とを備えている。
これにより、送信装置は上位クラスの受信装置数の影響を予測しているので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるような、伝送レートの頻繁な変動を低減することができる。
また、本発明に係る送信装置が取得する伝送能力に関する情報は、受信装置が測定した損失イベント率と、当該送信装置からパケットが送信された時刻と、受信装置が受信できた実効レートである。
これにより、送信装置はTFRCの規定に基づいた伝送能力に関する情報の入った伝送レート制御用パケットを利用することが可能になる。
また、本発明に係る送信装置の利用可能帯域推定部は、当該送信装置からパケットが送信された時刻と受信装置からの応答のパケットを受信した時刻とから求めたラウンドトリップタイム、パケットサイズ、およびTCPの再送タイマのタイムアウト時間をさらに用いて利用可能な帯域を推定するものである。
これにより、送信装置はTFRCの規定に基づいた最大送信速度の推定技術を利用することが可能になる。
また、本発明に係る送信装置の帯域補正部は、受信装置が属するクラスのヘッダサイズと、伝送レートが当該クラスより一段階高いクラスのヘッダサイズとから推定帯域補正変数を求め、その推定帯域補正変数を用いて、利用可能帯域推定部が推定した利用可能な帯域の補正を行うものである。
これにより、受信装置への伝送レートはあらたなクラスの受信装置数の影響を予測したものとなるので、上位クラスに変更した受信装置の伝送レートが自己の利用可能な帯域を越えているため再び属するクラスを下げるようなことを防止できる。
また、本発明に係る送信装置のクラス決定処理部は、最大ペイロードサイズと各クラスのヘッダサイズとから算出した各クラスにおける実効レートと、帯域補正部が補正した帯域とを比較し、補正された帯域を越えない範囲で、最大の実効レートのクラスに受信装置を分類するものである。
これにより、送信装置は受信装置を利用可能な帯域の中で、最も高い実効レートでデータ伝送をすることが可能になる。
また、本発明に係る送信レート制御方法は、ネットワークを介して受信装置へ送信するパケットの送信レートを制御する送信レート制御方法であって、上記受信装置から、伝送能力に関する情報を含む上記パケットを受信するステップと、上記受信した上記パケットに含まれる上記伝送能力に関する情報から、当該受信装置への伝送に利用可能な帯域を推定するステップと、上記推定した上記利用可能な帯域に基づき、当該受信装置をクラス分類するステップとを有する。そして、送信レート制御方法は、上記分類した上記クラスに属する上記受信装置の受信装置数から、上記各クラスのヘッダサイズを計算し、上記ヘッダサイズの違いに基づき上記利用可能な帯域を補正するステップと、上記補正した上記利用可能な帯域に基づき、上記受信装置の属する上記クラスを決定するステップと、指定された上記クラスに応じた上記パケットを送信するステップとを有する。
本発明によれば、SICCに用いられる明示的マルチキャスト方式による通信において、伝送レートの変更頻度を低減することにより、高品質のマルチメディアデータの伝送が可能となる。
以下、本発明の実施の形態について、図面を参照しつつ説明する。
本発明の実施の形態を説明する上で、明示的マルチキャスト方式としてXCAST6を例にとる。また、パケットとしてはXCAST6のパケットを指すものとする。
図1は、本実施の形態に係る送信装置の構成を示している。
図1において、アプリケーション部110は送信装置100の有するアプリケーションを実施するものであり、受信部101は、例えば受信装置200から受信者レポートパケットを受信し、フィードバック情報を抽出する。図2はこの受信者レポートパケットのデータフォーマットを示す図である。
図2において、送信装置からパケットが送信された時刻(以下、「送信元送信時刻」という。)201と、受信装置が受信できた実効レート202と、受信装置が測定した損失イベント率203とがフィードバック情報である。
利用可能帯域推定部102は、受信部101から受け取ったフィードバック情報に、TFRCで定義されている帯域推定方式を用いて受信装置の利用可能帯域を推定するものである。
帯域補正部103は、各クラスのヘッダサイズを計算し補正係数を求め、これを用いて利用可能帯域推定部102で推定した利用可能な帯域を補正するものである。
クラス決定処理部104は、あらかじめ規定している伝送レートから実効レートを算出し、可変長ヘッダ処理部203で補正した帯域と比較する。これにより、クラス決定処理部104は、受信装置の属するクラスを決定し、クラス別受信者記憶部105に記録する。本実施の形態においては、送信装置の最大送信速度1M(bps)を設定し、512K(bps)と256K(bps)を閾値とするクラス1乃至クラス3の3つに分ける。そして、それぞれのクラスごとに受信者リストを作成する。
パケット構成部106は、明示的マルチキャスト方式のパケットヘッダを構成するものであり、受信者リストをこのヘッダのルーティングヘッダに格納する。また、アプリケーション部110から受け取った受信装置へ送信すべきコンテンツをペイロードに記録する。
送信レート制御部107は、パケットを送出するタイミングを制御するものであり、受信者リストのクラスに応じて、パケットを送出する時間間隔を制御する。
送信部108は、送信レート制御部107から指定されたタイミングでパケットを送信するものである。
なお、送信装置は、各クラスへ異なる送信レートによってマルチメディアデータを送信するために、パケット構成部106が各クラスにおいて動画像のフレームを間引いたデータでパケットを生成する。そして、送信部108は、送信レート制御部107から指示された送信レートでパケットを送信する。例えば、1Mbpsのクラスの受信装置へは、すべての動画像のフレームを送出し、512kbpsのクラスへは、1Mbpsクラスへのフレームを半分間引いて送出する。さらに、256Kbpsへのクラスへはさらに半分間引いて送出する。
また、データ構成部106は、各クラスの受信装置へフレーム数の異なるデータを送出するために、Motion JPEG(Motion Joint Photographic Experts)や、階層符号化した動画像データのように、フレーム間で依存関係のない圧縮・符号化方式を採用する。
なお、各クラスにおけるフレームの間引きは送信前に行われ、送信中に変更されることはない。
次に、本実施の形態に係る送信装置の行う伝送レート制御の動作、作用を詳細に説明する。図3は、送信装置の伝送レート制御処理を示す図である。
図3において、受信部101が受信装置からパケットを受信すると、受信者レポートが含まれているか否かをチェックする(ステップS301)。
受信者レポートが含まれていない場合、受信部101は待機状態に戻る。
一方、受信レポートが含まれていた場合、受信部101はフィードバック情報を送信元受信装置のアドレスとともに利用可能帯域推定部202へ通知する。
利用可能帯域推定部102は、これを受けて、TFRCで規定される上記した(式1)に基づいて受信装置の利用可能帯域を推定する(ステップS302)。そして、利用可能帯域推定部102は推定された利用可能な帯域を帯域補正部103に通知する。
ここで、利用可能帯域推定部202は、受信装置が属するクラスのパケットサイズsを次の(式2)により計算する。
s=No_addr_hdr+Addr_size+Max_plen (2)
ただし、No_addr_hdrは、宛先アドレスリストを除いたヘッダサイズであり、Addr_sizeは宛先アドレスリストのサイズであり、Max_plenはパケットの最大ペイロードサイズである。XCAST6では、No_addr_sizeは、IPv6ヘッダ601、アドレスリストを除いたXCAST6ヘッダ604、およびUDPヘッダから構成される。また、SICCの様に独自プロトコルの場合、さらにプロトコル固有のヘッダをNo_addr_sizeに加える場合がある。
また、ラウンドトリップタイム(往復伝播遅延時間)Rは、次の(式3)、(式4)により推定する。
R_sample=t_now−t_stamp−t_delay (3)
ただし、R_sampleは最新の応答遅延時間であり、t_stampは送信装置が送出したパケットの送信時刻であり、t_nowは現在時刻であり、t_delayは受信装置がフィードバックパケットを作成するために要した時間である。
R=q×R+(1−q)×R_sample (4)
ただし、0=<q<1であり、qは過去の応答遅延時間の情報をどの程度反映するかを決定する値である。
上記の計算式は、フィードバックされた情報のみから、応答遅延時間を求めるのではなく、過去の応答遅延時間を加味することでラウンドトリップタイムRを求めることを示している。qが0に近ければフィードバック情報から求めた最新の応答遅延時間が全体の応答遅延時間に対して影響が大きくなり、1に近ければ、過去の応答遅延時間の情報が大きく影響を与える。
上記RからTCPのタイムアウト時間T_RTOは次の(式5)により求める。
T_RTO=4×R (5)
最後に、受信装置の利用可能な帯域を(式1)に基づき、推定する。
次に、帯域補正部103は、受信装置が属する現クラスの受信装置数と、当該受信装置が加わった後の上位クラスの受信装置数とから各クラスのヘッダサイズを求め、現クラスの帯域を補正するための推定帯域補正変数class_factorを算出する。そして、帯域補正部103は、利用可能推定部102により推定した現クラスの利用可能な帯域と、フィードバック情報と、class_factorとを用いて、ヘッダサイズの違いを補正した、上位クラスで当該受信装置が利用可能な帯域を推定する(ステップS303)。
図4は、帯域補正部103が利用可能な帯域を補正する処理を示す図である。
まず、帯域補正部103が、推定帯域補正変数class_factorを求める(ステップS401)。例えば、class_factorは、受信装置の宛先アドレスリストのサイズを除いたヘッダサイズNo_addr_hdr、最大ペイロードサイズMax_plen、上位クラスの宛先アドレスリストのサイズUpper_addr_size、および現クラスの宛先アドレスリストのサイズCurrent_addr_sizeを用いて、(式6)により計算する。
class_factor=(No_addr_hdr+Upper_addr_size+Max_plen)/(No_addr_hdr+Current_addr_size+Max_plen) (6)
次に、帯域補正部103は、損失イベント率pが‘0’か否かを判定し(ステップS402)、‘0’でなければ、帯域X1を(式7)により計算する(ステップS403)。
X1=max(min(X_calc,2×class_factor×X_recv),s/t_mbi) (7)
但し、X_calcは、利用可能帯域推定部により計算された帯域であり、X_recvはフィードバックされる受信装置が実際に受信できた帯域であり、sはパケットサイズであり、t_mbiは最大RTTである。
一方、損失イベント率pが‘0’の場合、帯域補正部103は、前回フィードバック情報を受信した時刻tldから現在時刻t_nowまでの経過時間(t_now−tld)が、ラウンドトリップタイムRよりも長いか否かを判定し、長くなければ処理を終了する。
一方、経過時間が長い場合、帯域補正部103は、帯域X0を(式8)により計算する(ステップS405)。
X0=max(min(2×class_factor×X,2×class_factor×X_recv),s/R) (8)
次に、帯域補正部103は、tldを現在時刻に更新する。
以上のように、利用可能な帯域を補正した後、帯域補正部103はクラス決定処理部204に算出結果を通知する。
次に、クラス決定処理部104は、補正した利用可能な帯域を基に、受信装置がどのクラスに属するかを決定する(ステップS304)。図5は、クラス決定処理部104がクラスを決定する処理を示す図である。
図5において、まず、クラス決定処理部204は、各クラスにおける実効レートBiを計算する(ステップS501)。例えば、各クラスの実効レートBiは、クラスごとに設定された伝送レートCi、各クラスのヘッダサイズHi、最大ペイロードサイズMax_plenから、次の(式9)により計算する。ただし、i=0乃至nであり、nはクラス数を示す。
Bi=Ci×(Hi+Max_plen)/Max_plen (9)
次に、クラス決定処理部204は、利用可能な帯域Xと各クラスの実効レートBiとを伝送レートの高いクラスから、低いクラスへと順番に比較し、実効レートXが実効レートBiよりも高いという条件を満たしたクラスのうちで、最も伝送レートの高いクラスに受信装置を分類する(ステップS502)。
具体的には、クラス決定処理部204は、クラス0からクラスnの間でiを繰り返し更新して条件X>Biを満たすクラスを探索する。例えば、クラス数が3であり、各クラスの実行レートをクラス0が1Mbps、クラス1が512kbps、クラス2が256kbpsであり、利用可能な帯域Xが600kbpsとする。この場合、X>B1を満たすため、受信装置はクラス1に分類される。
次に、クラス決定処理部204は、決定されたクラスに受信装置が属するようにクラス別受信者記憶部105に記録されている受信者リストを変更する。
以上により、本実施の形態に係る送信装置は、クラス間のヘッダサイズの違いを用いてフィードバック情報から求めた利用可能な帯域を補正し、その補正された帯域を用いて受信装置をどのクラスに分類するかを決定する。これにより、SICCでの明示的マルチキャスト方式の通信において、新たなクラスに受信装置を変更しても、そのクラスでのヘッダサイズの違いによる伝送レートの変化は補正済みであるので、受信装置の利用可能な伝送レートを超えることがない。このため、送信装置は、受信装置への伝送レートを変更後、すぐに低いクラスに変更するようなことがなく、伝送レートの変更頻度を低減できる。その結果、送信装置は、高品質のマルチメディアデータを伝送することが可能となる。
本発明は、明示的マルチキャスト方式によるデータ送信を行う送信装置等に有用であり、パケットの伝送レートの変更頻度を低減するのに適している。
本発明の実施の形態における送信装置の構成例を示す図 本発明の実施の形態における受信者レポートパケットのデータフォーマットを示す図 本発明の実施の形態における送信装置の伝送レート制御処理を示す図 本発明の実施の形態における送信装置の帯域補正部による帯域の補正処理を示す図 本発明の実施の形態における送信装置のクラス決定処理部によるクラス分類処理を示す図 従来のXCAST6におけるヘッダフォーマットを示す図 従来のSICCの動作を示すパケット配送図
符号の説明
101 受信部
102 利用可能帯域推定部
103 帯域補正部
104 クラス決定処理部
105 クラス別受信者記憶部
106 パケット構成部
107 送信レート制御部
108 送信部
110 アプリケーション部

Claims (10)

  1. ネットワークに接続された受信装置の利用可能帯域に基づきクラス分類された受信装置に、各クラスに属する受信装置をヘッダに含む受信者リストに記述したパケットを送信する機能を備えた送信装置であって、
    受信装置から受信した伝送能力に関する情報から当該受信装置の利用可能な帯域を推定する利用可能帯域推定部と、
    各クラスに属する受信装置数からヘッダサイズを計算し、前記利用可能な帯域をヘッダサイズの違いに基づき補正する帯域補正部と、
    補正された利用可能な帯域に基づき受信装置の属するクラスを決定し、受信者リストに登録するクラス決定処理部と、
    を備えた送信装置。
  2. 前記伝送能力に関する情報は、受信装置が測定した損失イベント率、当該送信装置からのパケットの送信時刻および受信装置が受信できた実効レートを含む、
    請求項1に記載の送信装置。
  3. 前記利用可能帯域推定部は、当該送信装置からパケットが送信された時刻と受信装置からの前記パケットに対する応答パケットを受信した時刻から求めたラウンドトリップタイム、パケットサイズおよびTCPの再送タイマのタイムアウト時間をさらに用いて利用可能な帯域を推定する、
    請求項2に記載の送信装置。
  4. 前記帯域補正部は、受信装置が属するクラスのヘッダサイズと、伝送レートが当該クラスより一段階高いクラスのヘッダサイズとから推定帯域補正変数を求め、その推定帯域補正変数を用いて、前記利用可能帯域推定部が推定した利用可能な帯域の補正を行う、
    請求項1に記載の送信装置。
  5. 前記クラス決定処理部は、最大ペイロードサイズと各クラスのヘッダサイズとから算出した各クラスにおける実効レートと、前記帯域補正部が補正した帯域とを比較し、補正された帯域を越えない範囲で、最大の実効レートのクラスに受信装置を分類する、
    請求項4に記載の送信装置。
  6. ネットワークを介して受信装置へ送信するパケットの送信レートを制御する送信レート制御方法であって、
    前記受信装置から、伝送能力に関する情報を含む前記パケットを受信するステップと、
    前記受信した前記パケットに含まれる前記伝送能力に関する情報から、当該受信装置への伝送に利用可能な帯域を推定するステップと、
    前記推定した前記利用可能な帯域に基づき、当該受信装置をクラス分類するステップと、
    前記分類した前記クラスに属する前記受信装置の受信装置数から、前記各クラスのヘッダサイズを計算し、前記ヘッダサイズの違いに基づき前記利用可能な帯域を補正するステップと、
    前記補正した前記利用可能な帯域に基づき、前記受信装置の属する前記クラスを決定するステップと、
    を含む送信レート制御方法。
  7. 前記伝送能力に関する情報は、前記受信装置が測定した損出イベント率、前記パケットの送信時刻および前記受信装置が受信できた実効レートを含む、
    請求項6に記載の送信レート制御方法。
  8. 前記推定するステップでは、前記パケットのラウンドトリップタイム、パケットサイズおよびTCPの再送タイマのタイムアウト時間をさらに用いて、前記利用可能な帯域を推定する、
    請求項6に記載の送信レート制御方法。
  9. 前記補正するステップでは、前記ヘッダサイズの違いに基づき前記利用可能な帯域を補正する場合、
    前記計算した前記クラスの前記ヘッダサイズとペイロードサイズを含んで構成される当該クラスのパケットサイズを計算し、当該クラスの前記パケットサイズを、その上位のクラスの前記パケットサイズで除算して、前記利用可能な帯域の帯域補正係数を計算するステップと、
    前記計算した前記帯域補正係数を前記利用可能な帯域に乗算して、前記利用可能な帯域を補正する、
    請求項6に記載の送信レート制御方法。
  10. 前記各クラスは、実効レートを有しており、
    前記クラスを決定するステップでは、前記補正した前記利用可能な帯域を越えない範囲内で、かつ前記実効レートが最大となる前記クラスに決定する、
    請求項6に記載の送信レート制御方法。

JP2007529273A 2005-08-04 2006-08-01 送信装置および送信レート制御方法 Expired - Fee Related JP4772053B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007529273A JP4772053B2 (ja) 2005-08-04 2006-08-01 送信装置および送信レート制御方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2005226466 2005-08-04
JP2005226466 2005-08-04
JP2007529273A JP4772053B2 (ja) 2005-08-04 2006-08-01 送信装置および送信レート制御方法
PCT/JP2006/315213 WO2007015482A1 (ja) 2005-08-04 2006-08-01 送信装置および送信レート制御方法

Publications (2)

Publication Number Publication Date
JPWO2007015482A1 true JPWO2007015482A1 (ja) 2009-02-19
JP4772053B2 JP4772053B2 (ja) 2011-09-14

Family

ID=37708763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007529273A Expired - Fee Related JP4772053B2 (ja) 2005-08-04 2006-08-01 送信装置および送信レート制御方法

Country Status (3)

Country Link
US (1) US8009564B2 (ja)
JP (1) JP4772053B2 (ja)
WO (1) WO2007015482A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101500251B1 (ko) * 2010-12-17 2015-03-06 닛본 덴끼 가부시끼가이샤 통신 시스템, 노드, 패킷 전송 방법 및 프로그램을 기록한 컴퓨터 판독가능 기록 매체
WO2013042639A1 (ja) * 2011-09-21 2013-03-28 日本電気株式会社 コンテンツ配信システム、キャッシュサーバおよびコンテンツ配信方法
US9596177B2 (en) * 2012-04-12 2017-03-14 Lantiq Deutschland Gmbh Method for a retransmission roundtrip correction
JP6051939B2 (ja) * 2013-02-27 2016-12-27 富士ゼロックス株式会社 帯域測定装置及びプログラム
US9621581B2 (en) * 2013-03-15 2017-04-11 Cisco Technology, Inc. IPV6/IPV4 resolution-less forwarding up to a destination
US9270529B2 (en) * 2013-10-22 2016-02-23 Landis+Gyr Innovations, Inc. Distributed data transmission in data networks

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3711752B2 (ja) * 1998-07-09 2005-11-02 株式会社日立製作所 パケット通信装置
US7389356B2 (en) * 1999-12-15 2008-06-17 Microsoft Corporation Generalized differentiation methods and arrangements for adaptive multimedia communications
JP3639792B2 (ja) * 2000-07-25 2005-04-20 株式会社日立製作所 ネットワークシステムとその通信帯域制御方法
WO2006023485A1 (en) * 2004-08-16 2006-03-02 Flarion Technologies, Inc. Group communication signal methods and apparatus
US20060168338A1 (en) * 2004-11-23 2006-07-27 Bruegl Aaron R Methods and systems for providing data across a network

Also Published As

Publication number Publication date
WO2007015482A1 (ja) 2007-02-08
US8009564B2 (en) 2011-08-30
US20100157795A1 (en) 2010-06-24
JP4772053B2 (ja) 2011-09-14

Similar Documents

Publication Publication Date Title
JP4598073B2 (ja) 送信装置および送信方法
CN102859950B (zh) 估计拥塞的方法
EP1235392A1 (en) Data transmitting/receiving method, transmitting device, receiving device, transmitting/receiving system, and program
JP4323432B2 (ja) ストリーミングメディアの伝送品質を高めるための方法
WO2002033896A2 (en) Method and apparatus for characterizing the quality of a network path
KR20090080933A (ko) 멀티플 인터페이스들을 통한 비디오 스트리밍
JP4772053B2 (ja) 送信装置および送信レート制御方法
Liang et al. TCP-RTM: Using TCP for real time multimedia applications
CN112737964B (zh) 一种融合推拉语义的传输控制方法及系统
EP3547690B1 (en) Real-time video transmission method of multipath network
JP2004007361A (ja) データ送信制御方法及びこの方法のプログラム並びにこれを用いるデータ送信装置
US20060209687A1 (en) Communication rate control method and device
US20080101237A1 (en) Communication device
Pyun et al. Wireless measurement based resource allocation for QoS provisioning over IEEE 802.11 wireless LAN
Sisalem et al. The direct adjustment algorithm: A TCP-friendly adaptation scheme
Azad et al. A comparative analysis of DCCP variants (CCID2, CCID3), TCP and UDP for MPEG4 video applications
JP2006109325A (ja) 通信システム、通信装置、およびプログラム
Papadimitriou et al. A rate control scheme for adaptive video streaming over the internet
CN114979011A (zh) 一种应用于园区网络的拥塞控制方法
Hsiao et al. Streaming video over TCP with receiver-based delay control
JP2002077240A (ja) フロー制御方式およびそれを実行する送信端末
JP2006352420A (ja) 通信品質情報を含む品質パケットを送受信する端末、品質レポートサーバ及びプログラム
Puangpronpitag et al. Explicit rate adjustment: An efficient congestion control protocol for layered multicast
Kazantzidis Adaptive multimedia in wireless IP networks
Vu et al. Dynamic packet size mechanism (DPSM) for multimedia in wireless networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090428

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110531

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110621

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140701

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees