JP4338924B2 - Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus - Google Patents

Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus Download PDF

Info

Publication number
JP4338924B2
JP4338924B2 JP2001371904A JP2001371904A JP4338924B2 JP 4338924 B2 JP4338924 B2 JP 4338924B2 JP 2001371904 A JP2001371904 A JP 2001371904A JP 2001371904 A JP2001371904 A JP 2001371904A JP 4338924 B2 JP4338924 B2 JP 4338924B2
Authority
JP
Japan
Prior art keywords
multicast
relay node
transmission
receiving
packet
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.)
Expired - Fee Related
Application number
JP2001371904A
Other languages
Japanese (ja)
Other versions
JP2003174478A (en
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2001371904A priority Critical patent/JP4338924B2/en
Publication of JP2003174478A publication Critical patent/JP2003174478A/en
Application granted granted Critical
Publication of JP4338924B2 publication Critical patent/JP4338924B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はマルチキャスト通信方式、マルチキャスト通信に用いる中継ノード装置、及び、中継ノード装置における送信制御方法に関し、特に送信装置より、複数の受信装置にマルチキャストでデータを配信するマルチキャスト通信方式、マルチキャスト通信に用いる中継ノード装置、及び、中継ノード装置における送信制御方法に関する。
【0002】
【従来の技術】
一般に、ICMP(Internet Control Message Protocol),IGMP(Internet Group Management Protocol)等を含む広義のIP(Internet Protocol)を用いたネットワーク(IPネットワーク)では、複数の受信装置に対してファイルや動画像のデータを配信するマルチキャストを行うことができる。IGMPを用いたマルチキャストグループの管理手順は、IETF(Internet Engineering Task Force)のRFC(Request For Comments)1112等において規定されている。
【0003】
このようなマルチキャスト通信では、受信装置はマルチキャストルータを介してマルチキャストデータの配信を行う送信装置に有線もしくは無線を介して接続されており、PIM−SM(Protocol Independent Multicast−Sparse Mode:RFC2362)やDVMRP(Distance Vector Multicast Routing Protocol:RFC1075)等のマルチキャスト経路制御プロトコルによって、送信装置、マルチキャストルータ、受信装置の間でマルチキャストパケットの伝送経路が形成される。なお、マルチキャストではUDP(User Datagram Protocol)を使用するのが一般的であり、UDPはユニキャストで用いられるTCP(Transmission Control Protocol)とは異なり、信頼性を持たないプロトコルである。
【0004】
このようにマルチキャストルータを介して、送受信装置間の伝送経路が形成されている際に、伝送経路上のマルチキャストルータに送信装置からのマルチキャストパケットが供給されると、マルチキャストルータは配下(送信装置から見て下流側)に複数の受信装置が存在し、複数の伝送経路を必要とする場合に、供給されたマルチキャストパケットをコピーして各伝送経路にそれぞれ送信する。このように、配下に複数の伝送経路を有する場所、すなわち伝送経路が分岐するマルチキャストルータにおいて、マルチキャストパケットをコピーして各伝送経路に伝送することにより、伝送経路上でのトラヒックを必要以上に増加させず、ネットワークの帯域を有効に利用することができる。
【0005】
ところで、インターネット等のIPネットワークは、基本的には最善努力(ベストエフォート)型のネットワークであるため、各々の受信装置までに伝送経路におけるマルチキャストパケットの伝送条件が一様でない場合もあり、ネットワークの輻輳等により各受信装置に到達するまでにパケットがロスしてしまうことがある。
このため、全ての受信装置にマルチキャストパケットが確実に配信されるような信頼性を提供するマルチキャスト(信頼性マルチキャスト)が知られている。信頼性マルチキャストには、各々の受信装置が正常に受信できたマルチキャストパケットに対して確認応答(ACK)を送信する方法と、各々の受信装置が受信できなかったマルチキャストパケットに対して再送要求(NAK:Negative ACK)を送信する方法等がある。以下では、NAKによる信頼性マルチキャストを用いて説明を行う。
【0006】
NAKによる信頼性マルチキャストでは、受信装置においてパケットが正常に受信できたかを判断する必要があるため、送信装置において、送信するマルチキャストパケット毎に連続した番号(seq:シーケンス番号)を割り当てておく。これにより、受信装置は受信したマルチキャストパケットのシーケンス番号seqを見ることにより、正常に受信できたパケットの番号、及びロスしたパケットの番号を知ることができる。受信装置はロスしたパケットがあると、送信装置に再送要求メッセージを送信する。
【0007】
送信装置は受信装置からのNAKを受信すると対応するデータパケットを再送することにより、パケットロスを検出した受信装置はロスしたパケットを受信することができる。
しかしながら、送信装置が全データを再送する場合、全受信装置中の1受信装置がロスしただけでも送信装置にNAKが送信される。このため、受信装置数が増加すると送信装置に届くNAK数、及びそれに伴い送信装置が再送するデータ数が増加し、送信装置の負荷が増加し送信装置が制御不能に陥る可能性がある。また、制御不能に陥らないまでも送信装置は1受信装置のロスを修復するために、再送データを全受信装置に送信するために帯域を使用することになり、信頼性マルチキャスト通信のスループットが向上しないという問題がある。
【0008】
このため、送受信装置間の経路における特定のマルチキャストルータに送信装置から送信されたマルチキャストデータを一定量バッファする機能を持たせ、配下受信装置からのNAKに対してはそのマルチキャストルータが再送を行うローカルリカバリ方式が提案されている。この方式を使用することにより、送信装置に届くNAK量を減少させることができるとともに、再送データが配信される範囲をそのマルチキャストルータ配下に限定することができるため、信頼性マルチキャスト通信の性能を向上させることができる。なお、マルチキャストルータにおけるバッファ方式は管理の容易さからFIFO(First−in First−out)を用いるのが一般的である。
【0009】
また、マルチキャスト通信では受信装置が複数存在し、各々の受信装置までに伝送経路におけるマルチキャストパケットの伝送条件が一様でないため、送信レート等の制御を適切に行わないと、受信装置への経路上で輻輳が発生し、パケットロス、許容以上の遅延等を生じ、信頼性マルチキャスト通信が不能に陥ってしまう恐れがある。
全ての受信装置への経路で許容帯域以上のパケットを送信しないようにするためには、全ての受信装置に至る経路のうち最も伝送条件の悪い経路でも許容帯域以上にならないように、送信装置が送信レート等を調整すればよく、これにより許容帯域以上のパケットを送信してしまうことに起因するパケットロスは防止することができる。なお、受信装置への経路の許容帯域は受信装置におけるパケットロス率及び送受信装置間のRTT(Round Trip Time)を用いて近似式により見積るのが一般的であり、受信装置から送信装置に通知される。
【0010】
また、インターネットトラフィックの約90%を占めるTCPとの親和性を実現するために、受信装置によるレート通知に基づき、送信装置が最も帯域の小さい受信装置(最悪受信装置)を選択し、送信装置と最悪受信装置との間でTCPと同じ輻輳ウィンドウによる輻輳制御を行う方式も提案されている。この方式では、送信装置が単にパケットの送信レートを調整する場合よりも、TCPとの親和性が高い。
【0011】
ここで、図5に示されているように、送受信装置間にマルチキャストルータを設け、送信装置10のみが送信レートを調整する方式では、マルチキャストルータ20a〜20gを介して全受信装置40a〜40hに至る経路中で最も許容帯域が小さい経路の帯域に合わせた送信がなされる。このため、ダイアルアップ接続等で許容帯域の小さい受信装置が接続されている場合には、許容帯域が大きい経路配下に接続されている受信装置は帯域を効率的に使用できない。これを解決するために、図6に示されているように、送信装置に対して受信装置として動作し、配下受信装置に対しては送信装置として動作するマルチキャスト中継ノード装置50a,50bを設け、これらを用いて階層的に制御を行う信頼性マルチキャスト通信方式が提案されている。この通信方式は、例えば、山口誠、山本幹(大阪大学大学院工学研究科)による文献「信頼性マルチキャストにおけるIntra−session Fairnessを考慮した輻輳制御方式」、信学技報SSE2000−278,IN2000−234(2001−03)に記載されている。
【0012】
この中継ノード装置を用いることにより、送信装置は、中継ノード装置を含む受信装置中で最も許容帯域が小さい受信装置に合わせた配信を行うことができ、中継ノード装置は配下の受信装置中で最も許容帯域が小さい受信装置に合わせた配信を行うため、ある程度帯域を効率的に使用することができる。
一方、無線区間を介して接続されている受信装置が存在する場合は、フェージング等の無線区間の特性により、パケットをロスしてしまうことがある。この無線区間におけるパケットロスは再送することにより、ロスを修復することができるが、輻輳によるパケットロスとは異なり、許容帯域以上のパケットが送信されているわけではないので、FEC(Forward Error Collection)技術等を用いることにより、再送を行わず修復することもできる。なお、FEC技術は、送信装置においてk個のデータパケットに対して冗長なn−k(n>k)個のパケットを生成し、送信装置は冗長パケットを含むn個のパケットを送信し、受信装置において、任意のk個のパケットが受信できれば、元のk個のパケットを復元する技術である。
【0013】
【発明が解決しようとする課題】
上述したように階層的に制御を行う信頼性マルチキャスト通信方式が提案されている。しかしながら、中継ノード装置は送信装置と同一の制御を行うだけであり、中継ノード装置配下の受信装置が無線区間を介して接続されていても、無線区間に通した制御を行うことができないという問題点があった。
また、全受信装置に対して、送信装置によって一意に定められた制御が行われるため、輻輳が発生しやすいネットワークでは輻輳制御を行い、無線ロスが発生しやすいネットワークでは無線ロスを吸収可能な制御を行うといった、各ネットワークの伝送特性等に応じた制御や、マルチキャストパケットの伝送レートをある一定レート以下に抑えて、他のトラヒックに十分な帯域を確保するといったネットワークの管理ポリシ等に応じた制御等を行うことができないという問題点があった。
【0014】
さらにまた、上述した信頼性マルチキャスト通信方式において、ネットワークの輻輳を緩和するために、輻輳制御機構を使用している場合、輻輳制御機構は送受信装置間で動作し、受信装置への経路の許容帯域を求めるのに、受信装置におけるパケットロス率を元にしている。このため、無線を介して接続されている受信装置の場合、無線のエラーによるパケットロスが発生する恐れがあるが、受信装置ではパケットロスの原因が輻輳によるものか、無線特性によるものかを判断することができない。したがって、無線特性によるパケットロスに対しても帯域不足と判断され、誤った帯域見積りを行ってしまい、その帯域に合わせた送信レート制御等が行われてしまうため、帯域を効率的に使用できないという問題点があった。
【0015】
さらにまた、上述した信頼性マルチキャスト通信方式において用いている輻輳制御方式がTCPと同じ輻輳ウィンドウを使用したものである場合は、1つのパケットロスが発生すると輻輳と判断され、輻輳ウィンドウが半分になってしまう。このため、無線を介して受信装置が接続されている場合は、無線特性によるパケットロスが発生するために、輻輳制御が行われ、スループットが向上しないという問題点があった。
【0016】
本発明は上述した従来技術の欠点を解決するためになされたものであり、その目的はマルチキャスト通信経路の帯域を効率的に使用するとともに、各区間、ネットワークにおける伝送特性、管理ポリシ等に応じた適切な制御を可能とするマルチキャスト通信方式、マルチキャスト通信に用いる中継ノード装置、及び、中継ノード装置における送信制御方法を提供することである。
【0018】
本発明の請求項によるマルチキャスト通信方式は、送信装置がマルチキャスト通信に使用するマルチキャストプロトコルにおける受信装置としての機能と、自身を介してマルチキャストデータを受信する受信装置に対し、該受信装置が接続されているネットワークの伝送特性に適した信頼性マルチキャスト通信制御を行う送信装置としての機能とを有する中継ノード装置を使用して前記送信装置から前記複数の受信装置にマルチキャストデータを配信するマルチキャスト通信方式であって、前記中継ノード装置と他の装置との間の有線区間については輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、前記中継ノード装置と他の装置との間の無線区間についてはパケットの送信間隔を制御することを特徴とする。
【0019】
本発明の請求項によるマルチキャスト通信方式は、請求項記載のマルチキャスト通信方式であって、前記中継ノード装置が受信装置として動作するマルチキャストプロトコルと、前記中継ノード装置が送信装置として受信装置に対して配信を行うマルチキャストプロトコルとを異なるプロトコルとしたことを特徴とする。
【0020】
本発明の請求項によるマルチキャスト通信方式は、請求項1又は2記載のマルチキャスト通信方式であって、前記中継ノード装置が送信装置として動作するネットワークが無線ネットワークである場合に、該中継ノード装置において配信するマルチキャストデータを、無線ロス耐性のあるデータに変更して配信を行うことを特徴とする。
【0022】
本発明の請求項による中継ノード装置は、送信装置から配信されるマルチキャストデータを受信し、前記送信装置が信頼性マルチキャスト通信に使用する信頼性マルチキャストプロトコルにおける受信装置として動作する受信手段と、自装置を介してマルチキャストデータを受信する受信装置に対し、該受信装置が接続されているネットワークの伝送特性に適したマルチキャスト通信制御を行う送信装置として動作する送信手段とを含み、前記マルチキャストデータを転送する中継ノード装置であって、他の装置との間の有線区間については輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、他の装置との間の無線区間についてはパケットの送信間隔を制御することを特徴とする。
【0023】
本発明の請求項による中継ノード装置は、請求項記載の中継ノード装置であって、前記送信装置より配信され、自装置が受信装置として動作するマルチキャストプロトコルと、自装置が送信装置として前記受信装置に対して配信を行うマルチキャストプロトコルとを異なるプロトコルとしたことを特徴とする。
本発明の請求項による中継ノード装置は、請求項4又は5記載の中継ノード装置であって、自装置が送信装置として動作するネットワークが無線ネットワークである場合に、配信するマルチキャストデータを無線ロス耐性のあるデータに変更して配信を行う手段を含むことを特徴とする。
【0024】
本発明の請求項による中継ノード装置は、請求項から請求項までのいずれか1項に記載の中継ノード装置であって、自装置が受信装置として動作するマルチキャスト通信と、自装置が送信装置として動作して配下に配信を行うマルチキャスト通信との送信レートの差分を吸収し、前記受信装置のデータロスの影響を前記送信装置に与えずに信頼性マルチキャスト通信を行うために、前記送信装置より配信されるマルチキャストデータを保存する保存手段を含み、前記保存手段に保存しているマルチキャストデータを、前記受信装置からの再送要求に応答して配信することを特徴とする。
【0025】
要するに、本通信方式では、送信装置に対してはマルチキャスト受信装置として動作し、送信装置から送信されたマルチキャストデータを受信し、パケットロスを検出した際にはデータの再送を送信装置もしくは再送を行う上流(中継ノードから見て送信装置側)マルチキャストルータに要求することにより、送信装置から配信されたマルチキャストパケットをバッファする機能を有し、受信装置に対してはマルチキャスト送信装置として機能し、配下受信装置に対してマルチキャストパケットの配信を行う機能を有すると共に、送信装置とは独立に配下受信装置が接続されているネットワークの伝送特性に応じて適切にマルチキャスト通信を制御する機能を有するノード装置を使用する。
【0026】
本通信方式においては、送信装置がマルチキャストデータの配信に使用した信頼性マルチキャストプロトコルと異なる信頼性マルチキャストプロトコルを用いて配下受信装置にマルチキャストデータの配信を行うことができる。
また、本通信方式は中継ノード装置の配下において受信装置が無線ネットワークを介して接続されている場合、配下受信装置への配信の際に無線に通したロス耐性処理、例えばFECエンコード処理を行って配信を行うことができる。
【0027】
また、本通信方式では、中継ノード装置は有線を介して送信装置に接続されており、中継ノード装置配下の受信装置は無線等輻輳が発生しないネットワークを介して接続されている場合に、有線ネットワークでの輻輳を回避するために、送信装置から中継ノード装置までの配信には輻輳制御機構を使用する、もしくは輻輳制御機構を有する信頼性マルチキャストプロトコルを使用し、中継ノード装置からの配信には輻輳制御を使用しない、もしくは輻輳制御機構を有しないマルチキャストプロトコルを使用することができる。なお、送信装置と中継ノード装置との間の有線区間においては輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、受信装置と中継ノード装置との間の無線区間においては送信レートを制御するレート制御によって輻輳制御しても良い。
【0028】
また、本発明による中継ノード装置は、送信装置に対してはマルチキャスト受信装置として動作し、送信装置から送信されたマルチキャストデータを受信し、パケットロスを検出した際にはデータの再送を送信装置もしくは再送を行う上流マルチキャストルータに要求することにより、送信装置から配信されたマルチキャストパケットをバッファする機能を有し、受信装置に対してはマルチキャスト送信装置として機能し、配下受信装置に対してマルチキャストパケットの配信を行う機能を有すると共に、送信装置とは独立に配下受信装置が接続されているネットワークの伝送特性に応じて適切にマルチキャスト通信を制御する機能を有している。
【0029】
この中継ノード装置では、送信装置がマルチキャストデータの配信に使用したマルチキャストプロトコルとは独立に、配下受信装置にマルチキャストデータの配信を行うための信頼性マルチキャストプロトコルを決定することができる。
また、この中継ノード装置の配下において受信装置が無線ネットワークを介して接続されている場合、配下受信装置への配信の際に無線に適したロス耐性処理、例えばFECエンコード処理を行って配信を行うことができる。
【0030】
さらに、この中継ノード装置は、中継ノード装置が有線を介して送信装置に接続されており、中継ノード装置配下の受信装置は無線等輻輳が発生しないネットワークを介して接続されている場合であり、有線ネットワークでの輻輳を回避するために、送信装置から中継ノード装置までの配信には輻輳制御機構を使用している場合に、中継ノード装置からの配信には輻輳制御を使用しない、もしくは輻輳制御機構を有しないマルチキャストプロトコルに変更して配信することができる。なお、中継ノード装置において、送信装置との間の有線区間においては輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、受信装置との間の無線区間においては送信レートを制御するレート制御によって輻輳制御しても良い。
【0031】
また、この中継ノード装置は、中継ノード装置が受信装置として動作するマルチキャスト通信と、中継ノード装置が送信装置として動作し、配下に配信を行うマルチキャスト通信の送信レートの差分を吸収し、受信装置のデータロスの影響を送信装置に与えずに信頼性マルチキャスト通信を行うために、送信装置より配信される全マルチキャストデータを保存する機能を有し、受信装置からの再送要求に対して保存しているマルチキャストデータを配信する機能を有する。
【0032】
本発明における送信制御方法においては、複数の受信装置を含むネットワークにおいて、送信装置から前記複数の受信装置への経路上に設けられマルチキャスト通信に用いる中継ノード装置における送信制御方法であり、中継ノード装置が複数の受信装置に配信すべきマルチキャストデータが存在するかどうかを判定し、配信すべきマルチキャストデータが存在すると判定された場合、ロスしたデータを修復するための冗長パケットを生成し、この生成した冗長パケットをマルチキャストデータと共に配信する。
【0033】
【発明の実施の形態】
次に、図面を参照して本発明の実施の形態について説明する。なお、以下の説明において参照する各図においては、他の図と同等部分に同一符号が付されている。
図1は、本発明によるマルチキャスト通信方式を採用した通信システムの実施の一形態に係る構成を示すブロック図である。同図に示されている通信システムは、例えばソフトウェア、動画像等のファイルデータから所定のパケット(マルチキャストパケット)を構成して送信する送信装置10と、送信装置10からのマルチキャストデータを中継し、マルチキャストパケットの複製を行うマルチキャストルータ20a,20bと、マルチキャストデータを受信、バッファし、配下の受信装置に対して、その伝送特性に応じて適切な制御の下で配信を行う中継ノード装置30と、マルチキャストデータを受信する受信装置40a,40b,40cとを備えている。
【0034】
送信装置10は、例えばパーソナルコンピュータ、ワークステーション等の情報処理装置からなる。この送信装置10は、例えばソフトウェア、動画像等のデータが格納されたハードディスクドライブ装置(以下、HDDと略す)11と、HDD11に格納されたデータを読み出してマルチキャストデータを生成するパケット生成部12と、マルチキャストルータ20との通信を行うための通信インターフェース(I/F)13と、パケット生成部12が生成するマルチキャストパケットの送信レート等の制御、及び受信装置等からの再送要求に対して、パケットの再送指示等を行う制御部14とを備えている。
【0035】
制御部14による送信レート等の制御は、所定の間隔でパケット生成部12に割り込みをかけ、所定長のパケットを生成させることによって行う。所定の間隔を変化させることにより、マルチキャストパケットの送信レートを制御することができる。あるいは、例えば、いくつかのパケット分のウィンドウを設定し、受信状態が最も悪い受信装置(最悪受信装置)のみから送信装置に確認応答(ACK)を送信し、ACKが返されるまでに送信することのできるパケット数をウィンドウ内に制限するようにしてもよい。これにより、最悪受信装置が受信し得る範囲内にマルチキャストパケットの送信数を制限することができる。
【0036】
また、あるいは全受信装置からACKを上流のマルチキャストルータ宛に送信させ、マルチキャストルータにおいて配下の全受信装置からのACKが届いた時点で、マルチキャストルータが上流のマルチキャストルータもしくは送信装置にACKを送信することにより、ウィンドウの制御を行ってもよい。この場合は全受信装置が受信し得る範囲内にマルチキャストパケットの送信数を制限することができる。
【0037】
つまり、信頼性マルチキャストの輻輳制御方式には、
(1)パケットの送信間隔を制御する送信レート制御を用いた輻輳制御方式、
(2)最悪受信者にのみACKを送信させ、TCPと同じ輻輳制御ウィンドウを使用して輻輳制御を行う方式、
(3)全受信者にACKを送信させ、マルチキャストルータにおいてACKを集約し、送信装置において全受信者からのACKを受信した(マルチキャストルータからのACKは配下の全受信者からのACKに相当)ことを契機に輻輳ウィンドウを使用する輻輳制御方式、
等がある。上記の(2)や(3)の方式はTCPと同じように輻輳ウィンドウを使用しているため、TCPとの親和性が高い。しかしながら、パケットロスが1つ発生しただけで、輻輳ウィンドウを半分にしてしまうため、パケットロスが頻繁に発生する無線区間には適していない。これに対して、上記(1)の方式は、受信装置からのパケットロス率とRTTとを元に適切なルートを、近似式(例えば、パケットロス率の平方根にRTT値を乗じる)を用いて算出する。このため、TCPとの親和性は(2)や(3)ほど高くはないが、パケットロスが発生しても急激にレートが落ちるということがないので、無線区間でもある程度使用できる。
【0038】
そこで、送信装置と中継ノードとの間の有線区間には上記(2)又は(3)のように輻輳ウィンドウを用いた輻輳制御方式を使用し、中継ノードと受信装置との間の無線区間には上記(1)のように送信レートを制御するレート制御による輻輳制御方式を使用するのが望ましい。
マルチキャストルータ20aは、例えば市販のマルチキャストルータ、もしくはパーソナルコンピュータ、ワークステーション等の汎用の情報処理装置上でルーティングを行うソフトウェア等を起動したものである。このマルチキャストルータ20aは、送信装置と通信するための通信I/F21と、送信装置からのマルチキャストパケットの複製を行うパケット複製部22、配下のマルチキャストルータ20bや中継ノード装置30と通信するための通信I/F23とを備えている。なお、マルチキャストルータ20bも、このマルチキャストルータ20aと同様に構成されている。
【0039】
中継ノード装置30は、例えば専用のハードウェアを備えたマルチキャストルータからなる。この中継ノード装置30は、上流のマルチキャストルータ20aと通信するための、通信I/F31と、送信装置に対してマルチキャスト受信装置として機能するための受信装置機能用バッファ32と、受信したデータを格納するHDD34と、受信したデータを配下受信装置に配信するための送信データに変更したり、受信装置からの再送要求に対してデータをHDD34から読み出して、配下受信装置に配信するための送信データを生成したりするパケット生成/変更部33と、受信装置機能用バッファ32で受信したデータにロスが存在した場合に、上流ノード装置に向けて再送要求の送信を指示したり、送信装置に対して受信装置として振舞うための各機能を制御したりする受信装置機能制御部35と、配下受信装置に対して配下受信装置の伝送特性に応じて適切な送信レート等を制御したり、伝送特性に応じたパケット生成等を制御したり、配下受信装置からの再送要求に対してデータの再送を指示したりする送信装置機能制御部36と、受信装置に対してマルチキャスト送信装置として機能するための送信装置機能用バッファ37と、配下受信装置40a,40bと通信するための通信I/F(無線通信I/F)38とを備えている。
【0040】
なお、この中継ノード装置30は、このような機能を有する専用のハードウェアとして構成することもできるが、パケット生成/変更部33、受信装置機能制御部35、送信装置機能制御部36等をソフトウェアによって実現するパーソナルコンピュータ、ワークステーション等の汎用の情報処理装置で構成することもできる。
受信装置40aは、例えばパーソナルコンピュータ、ワークステーション等の汎用情報処理装置からなる。この受信装置40aは、中継ノード装置30と通信を行う通信I/F(無線通信I/F)41と、バッファ42と、バッファ42において受信したマルチキャストデータにロスが存在した場合に、上流ノード装置に向けて再送要求の送信を指示する等パケットの修復処理を制御したり、マルチキャスト受信装置として振舞うための各機能を制御する制御部43と、受信したデータをファイルとして保存するためのHDD44とを備えている。なお、受信装置40bも、この受信装置40aと同様に構成されており、受信装置40cも通信I/Fが有線通信I/Fであることを除いて同様に構成されている。
【0041】
なお、この図1中では、説明の簡略化のために、送信装置10、マルチキャストルータ20a,20b、中継ノード装置30、受信装置40a,40b,40cを備える通信システムを示したが、さらに階層化がなされた構成としてもよい。例えば、図2に示されているように、送信装置10、マルチキャストルータ20a〜20e、中継ノード装置30a,30b、受信装置40a〜40hを備えるような構成としてもよい。
【0042】
図1のように構成された通信システムでは、受信装置40a,40b,40cはマルチキャストを受信するために、送信装置10が配信を行うマルチキャストグループに加入する。受信装置が、マルチキャストルータ、中継ノード装置等上流のノード装置にマルチキャストグループへの加入を通知し、そのノード装置がさらに上流のノードへ加入を通知することを繰り返し、送信装置10に到達した時点で送信装置10から各受信装置までのマルチキャストパケットの伝送経路が設定され、マルチキャストグループが形成される。
【0043】
送信装置10はマルチキャストパケットの配信をはじめる前に、送信装置10自身のアドレスを含むSPM(Source Path Message)を配信し、配下のノード装置に自身のアドレス、使用する信頼性マルチキャストプロトコル、制御機能等を通知する。SPMを受信したマルチキャストルータ20aはパケットを複製し、マルチキャストルータ20bと中継ノード装置30に配信する。
【0044】
配信されたSPMが中継ノード装置30に到達すると、中継ノード装置30は送信装置10が配信を行うマルチキャストグループの受信装置機能を起動し、送信装置10に対して受信装置となる。次にSPM中の送信装置のアドレスを自身のアドレスで上書きし、必要があれば、SPM中の送信装置10が使用する制御機能等を通知するフィールドを、自身が配下受信装置に配信する際に使用する信頼性マルチキャストプロトコルや制御機能等で変更して、受信装置40a,40bに配信する。
【0045】
受信装置40aはSPMを受信すると、上流に中継ノード装置30が存在することを認識し、中継ノード装置30が配信を行う制御機能等を有する受信装置機能を起動することにより、中継ノード装置30を見かけ上の送信装置とする受信装置となる。なお、受信装置40bについても同様に、中継ノード装置30を見かけ上の送信装置とする受信装置となるが、受信装置40cは送信装置10を送信装置とする受信装置となる。
【0046】
これに応じて、各受信装置機能では必要な制御機能が起動され、例えば送信装置10が輻輳制御機能を使用することを通知していれば、送信装置10に対して受信装置として振舞う中継ノード装置30、及び受信装置40cは、送信装置10から自身へ至る経路の許容帯域を見積るために、送信装置10までのRTT(Round Trip Time)を測定する。この測定は、中継ノード装置30、受信装置40cが各々送信装置10に対して所定のパケットを送信し、これに対する応答として送信装置10から送信されるパケットが各装置に供給されるまでの時間を各装置が測定する。このようにRTTを測定すると、各装置は、初期状態ではパケットロス率が0であるとして、パケットロス率とRTTとから送信装置10との間のスループットを見積る。この後、中継ノード装置30、受信装置40cは、求めたスループット情報等を有する状態報告パケットを送信装置10に送信する。なお、この状態報告パケットは、最悪受信装置の状態報告パケットのみが送信装置に供給されればよいため、経路中のマルチキャストルータにおいて、最も状態の悪い受信装置の情報のみが上流に供給されるように集約を行ってもよい。
【0047】
この状態報告パケットはマルチキャストルータ20a、通信I/F13を介して制御部14に供給される。制御部14は、供給された受信状態報告パケット中のスループット等を示す情報に応じて、最も許容帯域の小さい経路配下に存在する受信装置にも受信し得るように、マルチキャストパケットの送信レート等の条件を設定する。
条件の設定が終了すると、制御部14は、これに応じてパケット生成部12が生成するマルチキャストパケットの送信レートの制御を行う。
【0048】
これに応じて、パケット生成部12は、HDD11に保持されているデータの読み出しを開始し、所定長毎に、マルチキャスト先のグループを示す情報(マルチキャストアドレス)、一連のマルチキャストパケット中における個々のパケットを識別するための番号(seq:シーケンス番号)等を含むマルチキャストパケットを生成し、通信I/F13を介して送信する。このパケット生成部12が、マルチキャストパケットを生成するタイミングは、送信装置10に供給された受信状態報告パケット中のスループット等を示す情報に応じて、制御部14が制御する。このマルチキャストパケットは、例えばヘッダ中に上述の宛先マルチキャストアドレス、パケット送信元アドレス等を含むIPパケットからなる。このIPパケットのペイロード部分には、例えばヘッダ部分に所定のUDPポート番号を有するUDPパケットが格納されている。このUDPパケットのペイロード部分には、例えば所定長に分割されたソフトウェア、動画像等のデータが格納されている。ところで、トランスポート層プロトコルにUDPを使用する場合は、TCPを使用する場合と異なりヘッダにシーケンス番号(seq)が付加されないため、例えばペイロード部分にシーケンス番号を付加しておく。
【0049】
送信装置10から送信されたマルチキャストパケットは、伝送路を介して通信I/F21に供給される。通信I/F21は、マルチキャストパケットを受信すると、順次、パケット複製部22に送り、パケット複製部22はマルチキャストパケットの宛先アドレスに応じて、配信を行う必要があるマルチキャスト先(図1の場合ではマルチキャストルータ20bと中継ノード装置30)の数だけコピーして、順次、通信I/F23に供給され、通信I/F23はこれをマルチキャスト20bと中継ノード装置30に送信する。なお、マルチキャストルータ20bもマルチキャストルータ20aと同様の処理を行い、受信装置40cにマルチキャストパケットを送信する。
【0050】
中継ノード装置30の通信I/F31はマルチキャストルータ20aからのマルチキャストパケットを受信し、順次、受信装置機能用バッファ32に格納する。受信装置機能制御部35は、受信するマルチキャストパケットの受信状態を監視しており、パケットロスが発生すると、再送要求メッセージにより、上流側の装置にマルチキャストパケットの再送を要求する。図1に示されている場合では、通信I/F31よりマルチキャストルータ20aを介して送信装置に再送要求メッセージが供給され、送信装置がマルチキャストパケットの再送を行う。なお、受信装置40cについても中継ノード装置30の受信装置機能制御部35と同様の制御部を持ち、パケットロスに対して同様の処理を行う。
【0051】
以上の処理により、中継ノード装置30はパケットロスを修復して、送信装置から配信されるマルチキャストパケットを全て受信することができる。受信装置機能用バッファ32は送信装置から配信されるマルチキャストパケットが正常に受信できると、順次、パケット生成/変更部33に供給する。また、配下受信装置40a,40bへの送信レートよりも、受信レートが高い場合は、受信したマルチキャストパケットを即座に送信することができないため、HDD34にデータを格納する。このように、HDD34にデータを一旦保存することにより、自装置が受信装置として動作するマルチキャスト通信と、送信装置として動作して配下に配信を行うマルチキャスト通信との送信レートの差分を吸収し、受信装置のデータロスの影響を送信装置に与えずに信頼性マルチキャスト通信を行うことができる。なお、パケットロスがあった場合は、再送によりパケットロスが修復できた後で、供給を行う。
【0052】
また、マルチキャストパケットの受信状態を監視している受信装置機能制御部35は、受信が完了したマルチキャストパケットのシーケンス番号(seq)等を送信装置機能制御部36に通知する。
この通信システムでは、中継ノード装置30から受信装置40a,40bへの配信制御機構は、受信装置40a,40bが接続されている形態の伝送特性によって送信装置10が使用している制御機構とは独立に決定することができ、使用する制御機構は送信装置機能制御部36に保持される。どのような制御機構を使用するかは、配下受信装置が接続されている形態の伝送特性がわかっている場合は、デフォルトとして前もって送信装置機能制御部36に設定しておくこともできるが、配信を行う前に伝送特性や配信されるデータの形式に適した制御機構を選択し、設定することもできる。
【0053】
図3に示されている通信システムの場合、中継ノード装置30と受信装置40a,40bとは無線区間を介して接続されているため、例えば制御機構として輻輳制御機構なし、送信レートは無線帯域幅に合わせた固定レート、無線区間のエラー等によるパケットロス対策のためFECを使用することを選択し、設定する。
送信装置機能制御部36では、受信装置機能制御部35からのシーケンス番号(seq)等の通知をもとに、現在、配下受信装置40a,40bに配信できるマルチキャストデータが存在する場合には、これらの制御機構に基づき、FEC制御を行うための冗長パケットの生成と、固定レートで送信するために、一定間隔でパケットを生成/変更する指示とを行う。
【0054】
パケット生成/変更部33では、送信装置機能制御部36からの指示をもとに、受信装置機能用バッファ32、もしくはHDD34からデータの読み出しを行い、FECの冗長度に合わせて冗長パケットの生成を行い、送信装置機能用バッファ37に供給する。送信装置機能用バッファ37に配信すべきマルチキャストパケットが供給されると、無線通信I/F38は、これを順次読み出して、受信装置40a,40bに配信する。なお、無線特性により、送信装置が各受信装置宛にパケットを送信しなくとも、複数の受信装置が受信可能であるため、この場合パケットの複製は必要ない。
【0055】
受信装置40aの通信I/F41は中継ノード装置30からのマルチキャストパケットを受信し、順次、バッファ42に格納する。制御部43は、受信するマルチキャストパケットの受信状態を監視しており、パケットロスが発生すると、FECデコード処理を行い、正常に受信できたパケットと冗長パケットとに基づいて、ロスしたシーケンス番号(seq)に対応するパケットを復元する。もしFECによって修復できる以上のパケットロスが発生した場合は、再送要求メッセージにより、中継ノード装置30にロスしたシーケンス番号(seq)に対応するマルチキャストパケットの再送を要求する。
【0056】
バッファ42はパケットロスが修復されると、シーケンス番号にしたがって順次、HDD44にデータを格納していき、送信装置から配信された全マルチキャストパケットの受信が完了すると、HDD44上にソフトウェア、動画像等のファイルが保存された状態となり、これらを使用することが可能になる。また、同様の手順により、受信装置40bにも受信装置40aと同様に、送信装置から配信されたソフトウェア、動画像等のデータをHDDに保存することができる。
【0057】
また、この通信システムでは、中継ノード装置30において受信した全マルチキャストデータをHDD34に格納しておくことにより、マルチキャストデータの配信開始後にマルチキャストグループに参加した受信装置、ネットワーク間を移動する移動受信装置であって、中継ノード装置配下のネットワークに移動してきた受信装置等でも、中継ノード装置からユニキャストもしくはマルチキャストでマルチキャストデータの配信を行うことにより、他の受信装置に影響を与えずに、送信装置から配信されるデータを受信しファイルを復元することができるため、中継ノード装置30において受信したマルチキャストパケットを即座に配信する場合であっても、受信装置機能用バッファ32からパケット生成/変更部33にパケットを供給する際に、HDD34にもデータを格納しておくこともできる。
【0058】
なお、上述の説明では、説明の簡略化のために、送信装置10、マルチキャストルータ20a,20b、中継ノード装置30、受信装置40a,40b,40cを備える通信システムを用いて説明したが、例えば図2に示されているように、さらに階層化がなされ、送信装置10、マルチキャストルータ20a〜20e、中継ノード装置30a,30b、受信装置40a〜40hを備えるような構成の場合、図3に示されているように送信装置、中継ノード装置が配信の際に使用する信頼性マルチキャスト制御機構を定めることができる。
【0059】
また、上述の説明では、信頼性マルチキャスト制御機構についてのみ触れたが、送信装置が使用する信頼性マルチキャストプロトコルと、中継ノード装置が配下ノードへの配信の際に使用する信頼性マルチキャストプロトコルとを異なるプロトコルにすることも可能である。
中継ノード装置が受信装置として動作するネットワークでの輻輳を回避するために、該中継ノード装置までの配信には輻輳制御を行い、該中継ノード装置からの配信には輻輳制御を行わないようにすることは、マルチキャスト用として個別に帯域が保証されている無線ネットワーク(例えば、IMT−2000等の携帯電話網にマルチキャスト配信を適用する場合)に有効である。
【0060】
また、中継ノード装置と送信装置との間の有線区間についてはTCPと親和性の高い輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、中継ノード装置と受信装置との間の無線区間についてはTCPとの親和性は輻輳ウィンドウを用いた場合よりも劣るが無線ロスに比較的耐性のある送信レートを変更(パケットの送信間隔を制御)して輻輳制御することは、マルチキャストとユニキャストとが無線区間においても帯域をシェアするネットワーク(既存の無線LANネットワークでマルチキャスト配信を使用する場合)に有効である。
【0061】
ところで、上述した中継ノード装置30内の送信装置機能制御部36においては、図4に示されているような送信制御方法が実現されている。すなわち、同図において、まず、配下受信装置に配信すべきマルチキャストデータが存在するかどうか判定する(ステップS41)。配信すべきマルチキャストデータが存在する場合には、FEC技術等により、ロスしたデータを修復するための冗長パケットを生成する(ステップS41→S42)。最後に、この生成した冗長パケットをマルチキャストデータと共に配信する(ステップS43)。
【0062】
したがって、送信装置機能制御部36においては、以下のような送信制御方法が実現されていることになる。すなわち、中継ノード装置が複数の受信装置に配信すべきマルチキャストデータが存在するかどうかを判定する判定ステップと、この判定ステップにおいて配信すべきマルチキャストデータが存在すると判定された場合、ロスしたデータを修復するための冗長パケットを生成する冗長パケット生成ステップと、この冗長パケット生成ステップにおいて生成した冗長パケットをマルチキャストデータと共に配信する配信ステップとを含む送信制御方法が実現されている。このような送信制御方法を採用することで、配下受信装置に配信したマルチキャストデータについてパケットロスが生じた場合であっても、それを修復することができる。
【0063】
【発明の効果】
以上説明したように本発明は、上述のように中継ノード装置を用いて、送信装置が使用する信頼性マルチキャスト制御機構とは独立に配下受信装置に配信する際に使用する制御機構を選択することにより、無線区間を介して受信を行う受信装置が存在する場合には、FEC等の無線ロスに耐性のある制御機構を使用する等、中継ノード装置から配下受信装置に対して、その伝送路特性に応じた制御を行うことが可能となり、スループット等信頼性マルチキャスト通信の効率を向上させることができるという効果がある。
【0064】
また、従来の信頼性マルチキャスト通信方式においては、送信装置が使用する制御機構を一意に決定するため、ある1つのネットワークの受信装置に配信するために必要な制御機構を使用する際には、他のネットワークに存在する受信装置にもその制御機構を使用する影響があったが、このように中継ノード装置を介してマルチキャスト通信を行う方式においては、中継ノード装置が独立に配下受信装置に配信を行う際に使用する制御機構を決定することができる。このため、中継ノード装置が使用するマルチキャスト制御機構がどのようなものであれ、送信装置及び中継ノード装置配下に存在しない受信装置に対しては、その制御機構を使用することによる影響を与えることがないので、他の受信装置のスループット等を低下させることなく、中継ノード装置配下のネットワークの伝送特性、管理ポリシ等に応じた制御を行うことが可能になるという効果がある。
【0065】
さらにまた、送信装置から各受信装置への配信の際には、インターネット等有線を経由して配信が行われるため、送信装置は信頼性マルチキャストの制御機構として輻輳制御機構を使用することが想定され、受信装置の見積り帯域をもとに送信レート等が調整され、無線区間を介して接続されている受信装置が存在する場合、無線ロスの影響により誤った帯域見積りを行ってしまうことがある。しかしながら、この通信方式を使用すれば、中継ノード装置が送信装置に対して受信装置として振舞い、配下受信装置への配信の際には、輻輳制御機構を使用しないことが可能となるため、送信装置が制御する輻輳制御機構に対して、受信装置への伝送経路中の無線ロスの影響を与えることがなくなる。したがって、送信装置は正確に見積られた許容帯域をもとに送信レート等の制御を行うことが可能になり、スループット等信頼性マルチキャスト通信の効率を向上させることが可能になるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るマルチキャスト通信システムの構成を示すブロック図である。
【図2】一般的なマルチキャスト通信システムにおける送信装置、マルチキャストルータ、中継ノード装置、受信装置の接続例を示す図である。
【図3】図2のマルチキャスト通信システムにおいて、送信装置、中継ノード装置が配下受信装置への配信の際に使用する信頼性マルチキャスト制御機構の一例とその際の各受信装置の受信レートを示す図である。
【図4】中継ノード装置内の送信装置機能制御部において実現されている送信制御方法を示すフローチャートである。
【図5】送信装置のみが送信レートの制御を行う信頼性マルチキャスト通信方式における各受信装置の受信レートを示す図である。
【図6】図5と同じ構成において、信頼性マルチキャスト中継ノード装置が、送信装置に対して受信装置として動作し、配下受信装置に対して送信装置として動作し、配下受信装置に対して送信装置と同一の制御を行う場合における各受信装置の受信レートを示す図である。
【符号の説明】
10 送信装置
11,34,44 HDD
12 パケット生成部
13,21,23,31 通信インターフェース
14 制御部
20a,20b マルチキャストルータ
22 パケット複製部
30,30a,30b 中継ノード装置
32 受信装置機能用バッファ
33 パケット生成/変更部
35 受信装置機能制御部
36 送信装置機能制御部
37 送信装置機能用バッファ
38,41 無線通信インターフェース
40a,40b,40c 受信装置
42 バッファ
43 制御部
50a,50b マルチキャスト中継ノード装置
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a multicast communication method, a relay node device used for multicast communication, and a transmission control method in the relay node device, and more particularly to a multicast communication method for distributing data to a plurality of receiving devices by multicast from the transmitting device, and used for multicast communication. The present invention relates to a relay node device and a transmission control method in the relay node device.
[0002]
[Prior art]
In general, in a network (IP network) using a broad sense IP (Internet Protocol) including ICMP (Internet Control Message Protocol), IGMP (Internet Group Management Protocol), etc., data of files and moving images for a plurality of receiving devices. Can be multicast to distribute. The multicast group management procedure using IGMP is defined in RFC (Request For Comments) 1112 of IETF (Internet Engineering Task Force) and the like.
[0003]
In such multicast communication, the receiving device is connected to a transmitting device that distributes multicast data via a multicast router via a wired or wireless connection, and PIM-SM (Protocol Independent Multicast-Sparse Mode: RFC2362) or DVMRP A multicast packet transmission route is formed between a transmission device, a multicast router, and a reception device by a multicast route control protocol such as (Distance Vector Multicast Routing Protocol: RFC1075). Note that UDP (User Datagram Protocol) is generally used for multicast, and UDP is a protocol having no reliability, unlike TCP (Transmission Control Protocol) used for unicast.
[0004]
In this way, when the transmission path between the transmission / reception devices is formed via the multicast router, if the multicast packet from the transmission device is supplied to the multicast router on the transmission route, the multicast router is subordinate (from the transmission device). When there are a plurality of receiving apparatuses on the downstream side as viewed and a plurality of transmission paths are required, the supplied multicast packet is copied and transmitted to each transmission path. In this way, in a multicast router where there are multiple transmission paths under its control, that is, a multicast router where the transmission path branches, the multicast packet is copied and transmitted to each transmission path, thereby increasing the traffic on the transmission path more than necessary. Network bandwidth can be used effectively.
[0005]
By the way, since an IP network such as the Internet is basically a best effort network, the transmission conditions of multicast packets in the transmission path may not be uniform up to each receiving device. Packets may be lost before reaching each receiving device due to congestion or the like.
For this reason, multicast (reliable multicast) is known which provides reliability so that multicast packets are reliably distributed to all receiving apparatuses. In reliable multicast, a method of transmitting an acknowledgment (ACK) to a multicast packet that each receiving apparatus has successfully received, and a retransmission request (NAK) to a multicast packet that each receiving apparatus has not received. : Negative ACK). In the following, description will be made using reliable multicast by NAK.
[0006]
In the reliable multicast by NAK, it is necessary to determine whether or not the receiving apparatus has successfully received the packet. Therefore, the transmitting apparatus assigns consecutive numbers (seq: sequence number) to each multicast packet to be transmitted. Thereby, the receiving apparatus can know the number of the packet that has been normally received and the number of the lost packet by looking at the sequence number seq of the received multicast packet. When there is a lost packet, the receiving device transmits a retransmission request message to the transmitting device.
[0007]
When the transmitting apparatus receives the NAK from the receiving apparatus, the transmitting apparatus retransmits the corresponding data packet, so that the receiving apparatus that detects the packet loss can receive the lost packet.
However, when the transmitting apparatus retransmits all data, the NAK is transmitted to the transmitting apparatus even if one receiving apparatus among all the receiving apparatuses is lost. For this reason, when the number of receiving devices increases, the number of NAKs that reach the transmitting device and the number of data that the transmitting device retransmits increases accordingly, which may increase the load on the transmitting device and make the transmitting device uncontrollable. In addition, the transmission device uses a band to transmit the retransmission data to all the reception devices in order to repair the loss of one reception device even if it does not fall out of control, thereby improving the throughput of the reliable multicast communication. There is a problem of not.
[0008]
For this reason, a specific multicast router in the path between the transmitting and receiving apparatuses is provided with a function of buffering a certain amount of multicast data transmitted from the transmitting apparatus, and the local multicast router retransmits the NAK from the subordinate receiving apparatus. A recovery method has been proposed. By using this method, the amount of NAK that reaches the transmitting device can be reduced, and the range in which retransmission data is distributed can be limited to the subordinate of the multicast router, improving the performance of reliable multicast communication. Can be made. The buffer method in the multicast router generally uses a FIFO (First-in First-out) for ease of management.
[0009]
In multicast communication, there are a plurality of receiving devices, and the transmission conditions of the multicast packet in the transmission path are not uniform up to each receiving device. Congestion may occur, causing packet loss, delay more than allowable, and the like, and reliable multicast communication may be disabled.
In order not to send packets that exceed the allowable bandwidth on the route to all receiving devices, the transmitting device must be configured so that the route with the worst transmission conditions among the routes to all receiving devices does not exceed the allowable bandwidth. What is necessary is just to adjust a transmission rate etc. Thereby, the packet loss resulting from transmitting the packet beyond an allowable band can be prevented. In general, the allowable bandwidth of the path to the receiving device is estimated by an approximate expression using the packet loss rate in the receiving device and the RTT (Round Trip Time) between the transmitting and receiving devices, and is notified from the receiving device to the transmitting device. The
[0010]
Further, in order to realize affinity with TCP that accounts for about 90% of Internet traffic, based on the rate notification by the receiving device, the transmitting device selects the receiving device with the smallest bandwidth (worst receiving device), and A method of performing congestion control with the worst receiving apparatus using the same congestion window as TCP has also been proposed. This scheme has higher affinity with TCP than when the transmission device simply adjusts the packet transmission rate.
[0011]
Here, as shown in FIG. 5, in a method in which a multicast router is provided between the transmitting and receiving devices and only the transmitting device 10 adjusts the transmission rate, all the receiving devices 40 a to 40 h are connected via the multicast routers 20 a to 20 g. Transmission is performed in accordance with the bandwidth of the route with the smallest allowable bandwidth among the routes to reach. For this reason, when a receiving device with a small allowable bandwidth is connected by dial-up connection or the like, a receiving device connected under a path with a large allowable bandwidth cannot use the bandwidth efficiently. In order to solve this, as shown in FIG. 6, multicast relay node devices 50a and 50b that operate as a receiving device for a transmitting device and operate as a transmitting device for a subordinate receiving device are provided, A reliable multicast communication system that performs hierarchical control using these has been proposed. This communication method is, for example, a document by Makoto Yamaguchi and Miki Yamamoto (Graduate School of Engineering, Osaka University) “Congestion control method considering intra-session fairness in reliable multicast”, IEICE Technical Report SSE2000-278, IN2000-234. (2001-03).
[0012]
By using this relay node device, the transmission device can perform distribution according to the reception device having the smallest allowable bandwidth among the reception devices including the relay node device, and the relay node device is the most common among the subordinate reception devices. Since distribution is performed according to a receiving device having a small allowable bandwidth, the bandwidth can be efficiently used to some extent.
On the other hand, when there is a receiving device connected through a wireless section, packets may be lost due to characteristics of the wireless section such as fading. By retransmitting the packet loss in this wireless section, the loss can be repaired. However, unlike the packet loss due to congestion, a packet exceeding the allowable bandwidth is not transmitted, so FEC (Forward Error Collection). By using a technique or the like, it is possible to repair without performing retransmission. In the FEC technique, redundant nk (n> k) packets are generated for k data packets in the transmission device, and the transmission device transmits n packets including the redundant packets and receives them. This is a technique for restoring the original k packets if an apparatus can receive any k packets.
[0013]
[Problems to be solved by the invention]
As described above, a reliable multicast communication system that performs hierarchical control has been proposed. However, the relay node device only performs the same control as the transmission device, and even if the receiving device under the relay node device is connected through the wireless section, the control through the wireless section cannot be performed. There was a point.
In addition, since control uniquely determined by the transmitting device is performed for all receiving devices, congestion control is performed in a network where congestion is likely to occur, and control capable of absorbing radio loss in a network where radio loss is likely to occur. Control according to the transmission characteristics of each network, etc., and control according to the network management policy such as securing a sufficient bandwidth for other traffic by keeping the transmission rate of multicast packets below a certain rate There was a problem that it could not be performed.
[0014]
Furthermore, in the above-described reliable multicast communication method, when a congestion control mechanism is used to alleviate network congestion, the congestion control mechanism operates between the transmitting and receiving apparatuses, and the allowable bandwidth of the path to the receiving apparatus Is obtained based on the packet loss rate in the receiving apparatus. For this reason, in the case of a receiving device connected via radio, packet loss may occur due to a radio error, but the receiving device determines whether the cause of packet loss is due to congestion or due to radio characteristics. Can not do it. Therefore, it is determined that the bandwidth is insufficient even for packet loss due to radio characteristics, and erroneous bandwidth estimation is performed, and transmission rate control or the like according to the bandwidth is performed, so the bandwidth cannot be used efficiently. There was a problem.
[0015]
Furthermore, if the congestion control method used in the above-described reliable multicast communication method uses the same congestion window as TCP, it is determined that congestion occurs when one packet loss occurs, and the congestion window is halved. End up. For this reason, when the receiving apparatus is connected via radio, packet loss due to radio characteristics occurs, so that congestion control is performed and throughput is not improved.
[0016]
The present invention has been made to solve the above-described drawbacks of the prior art, and its purpose is to efficiently use the bandwidth of the multicast communication path and to respond to each section, the transmission characteristics in the network, the management policy, and the like. To provide a multicast communication method capable of appropriate control, a relay node device used for multicast communication, and a transmission control method in the relay node device.
[0018]
Claims of the invention 1 The multicast communication method according to the above is a function as a receiving device in a multicast protocol used by a transmitting device for multicast communication, and transmission characteristics of a network to which the receiving device is connected to a receiving device that receives multicast data via itself. A multicast communication system that distributes multicast data from the transmission device to the plurality of reception devices using a relay node device having a function as a transmission device that performs reliable multicast communication control suitable for the relay node device, wherein the relay node Congestion control is performed using a congestion window for congestion control for a wired section between the device and another device, and a packet transmission interval is controlled for a wireless section between the relay node device and another device. It is characterized by that.
[0019]
Claims of the invention 2 Multicast communication method by 1 The multicast communication system according to claim 1, wherein a multicast protocol in which the relay node device operates as a receiving device and a multicast protocol in which the relay node device distributes to the receiving device as a transmitting device are different protocols. And
[0020]
Claims of the invention 3 The multicast communication method according to claim 1 is as follows. Or 2 In the multicast communication method described above, when the network in which the relay node device operates as a transmission device is a wireless network, the multicast data distributed in the relay node device is changed to data with wireless loss tolerance and distributed. It is characterized by performing.
[0022]
Claims of the invention 4 The relay node device receives multicast data distributed from the transmitting device, and the receiving device operates as a receiving device in the reliable multicast protocol used by the transmitting device for reliable multicast communication, and the multicast data via the own device. A relay node device that forwards the multicast data to a receiving device that receives the multicast data, and a transmitting unit that operates as a transmitting device that performs multicast communication control suitable for transmission characteristics of a network to which the receiving device is connected. In addition, for a wired section with another apparatus, congestion control is performed using a congestion window for congestion control, and for a wireless section with another apparatus, a packet transmission interval is controlled. .
[0023]
Claims of the invention 5 The relay node device according to claim 4 The multicast node device described above, wherein a multicast protocol that is distributed from the transmitting device and that operates as a receiving device is different from a multicast protocol that distributes to the receiving device as a transmitting device. It is characterized by that.
Claims of the invention 6 The relay node device according to claim 4 or 5 The relay node device according to claim 1, further comprising means for performing distribution by changing multicast data to be distributed to data having radio loss tolerance when the network in which the device operates as a transmission device is a wireless network. And
[0024]
Claims of the invention 7 The relay node device according to claim 4 Claims from 6 The relay node apparatus according to any one of the preceding claims, wherein a difference in transmission rate between multicast communication in which the own apparatus operates as a receiving apparatus and multicast communication in which the own apparatus operates as a transmitting apparatus and performs subordinate distribution And storing the multicast data distributed from the transmitting device in order to perform reliable multicast communication without affecting the transmitting device the data loss of the receiving device, the storing unit The stored multicast data is distributed in response to a retransmission request from the receiving device.
[0025]
In short, in this communication method, the transmission device operates as a multicast reception device, receives multicast data transmitted from the transmission device, and retransmits data when a packet loss is detected. It has a function to buffer the multicast packet distributed from the transmitting device by requesting the upstream (transmitting device side when viewed from the relay node) multicast router, and it functions as a multicast transmitting device for the receiving device, subordinate receiving Uses a node device that has the function of distributing multicast packets to the device, and the function of controlling multicast communication appropriately according to the transmission characteristics of the network to which the subordinate receiving device is connected independently of the transmitting device To do.
[0026]
In this communication method, it is possible to distribute multicast data to subordinate receiving apparatuses using a reliable multicast protocol different from the reliable multicast protocol used by the transmitting apparatus for distributing multicast data.
In addition, when the receiving device is connected via a wireless network under the relay node device, this communication method performs loss tolerance processing, for example, FEC encoding processing, which is transmitted wirelessly during distribution to the receiving device. Distribution can be performed.
[0027]
In this communication method, the relay node device is connected to the transmission device via a wire, and the reception device under the relay node device is connected via a network that does not cause congestion such as a wireless network. In order to avoid congestion in the network, a congestion control mechanism is used for distribution from the transmission apparatus to the relay node apparatus, or a reliable multicast protocol having a congestion control mechanism is used, and congestion is distributed for distribution from the relay node apparatus. A multicast protocol that does not use control or does not have a congestion control mechanism can be used. Note that the congestion control is performed using a congestion window for congestion control in the wired section between the transmission apparatus and the relay node apparatus, and the transmission rate is controlled in the wireless section between the reception apparatus and the relay node apparatus. Congestion control may be performed by control.
[0028]
Further, the relay node device according to the present invention operates as a multicast receiving device for the transmitting device, receives multicast data transmitted from the transmitting device, and transmits a retransmission of data when a packet loss is detected. By requesting the upstream multicast router to perform retransmission, it has a function to buffer the multicast packet distributed from the transmitting device, functions as a multicast transmitting device for the receiving device, and transmits multicast packets to the subordinate receiving device. In addition to having a function of performing distribution, it has a function of appropriately controlling multicast communication according to the transmission characteristics of the network to which the subordinate receiving apparatus is connected independently of the transmitting apparatus.
[0029]
In this relay node device, a reliable multicast protocol for distributing multicast data to subordinate receiving devices can be determined independently of the multicast protocol used by the transmitting device for distributing multicast data.
In addition, when a receiving device is connected via a wireless network under the relay node device, distribution is performed by performing loss tolerance processing suitable for radio, for example, FEC encoding processing, when distributing to the subordinate receiving device. be able to.
[0030]
Furthermore, this relay node device is a case where the relay node device is connected to the transmitting device via a wire, and the receiving device under the relay node device is connected via a network where no wireless congestion occurs, In order to avoid congestion in the wired network, when the congestion control mechanism is used for distribution from the transmission device to the relay node device, congestion control is not used for distribution from the relay node device, or congestion control The multicast protocol without a mechanism can be changed and distributed. In the relay node apparatus, congestion control is performed using a congestion window for congestion control in the wired section with the transmission apparatus, and congestion is controlled by rate control for controlling the transmission rate in the wireless section with the reception apparatus. You may control.
[0031]
Further, this relay node device absorbs a difference in transmission rate between multicast communication in which the relay node device operates as a reception device and multicast communication in which the relay node device operates as a transmission device and performs distribution under the relay node device. In order to perform reliable multicast communication without affecting the transmission device, it has a function to store all multicast data distributed from the transmission device, and stores it in response to retransmission requests from the reception device. It has a function of distributing multicast data.
[0032]
The transmission control method according to the present invention is a transmission control method in a relay node device used for multicast communication provided on a path from a transmission device to the plurality of reception devices in a network including a plurality of reception devices. Determines whether there is multicast data to be distributed to multiple receiving devices, and if it is determined that there is multicast data to be distributed, generates a redundant packet to repair the lost data, Deliver redundant packets with multicast data.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings. In each drawing referred to in the following description, the same reference numerals are given to the same parts as in the other drawings.
FIG. 1 is a block diagram showing a configuration according to an embodiment of a communication system employing a multicast communication system according to the present invention. The communication system shown in the figure relays the multicast data from the transmission device 10 and the transmission device 10 configured to transmit a predetermined packet (multicast packet) from file data such as software and moving images, for example, Multicast routers 20a and 20b for replicating multicast packets, relay node devices 30 for receiving and buffering multicast data, and for delivering to the subordinate receiving devices under appropriate control according to their transmission characteristics; Receiving devices 40a, 40b, and 40c that receive multicast data are provided.
[0034]
The transmission device 10 includes an information processing device such as a personal computer or a workstation. The transmission device 10 includes, for example, a hard disk drive device (hereinafter abbreviated as HDD) 11 in which data such as software and moving images are stored, and a packet generation unit 12 that reads data stored in the HDD 11 and generates multicast data. In response to a communication interface (I / F) 13 for communication with the multicast router 20, control of a transmission rate of a multicast packet generated by the packet generator 12, and a retransmission request from a receiving device or the like And a control unit 14 for performing a retransmission instruction and the like.
[0035]
Control of the transmission rate and the like by the control unit 14 is performed by interrupting the packet generation unit 12 at a predetermined interval and generating a packet of a predetermined length. By changing the predetermined interval, the transmission rate of the multicast packet can be controlled. Or, for example, a window for several packets is set, and an acknowledgment (ACK) is transmitted from only the worst receiving device (worst receiving device) to the transmitting device, and transmitted until ACK is returned. The number of packets that can be received may be limited within the window. Thereby, the transmission number of a multicast packet can be restrict | limited within the range which a worst receiving apparatus can receive.
[0036]
Alternatively, ACK is transmitted from all receiving devices to the upstream multicast router, and when the ACK is received from all receiving devices under the multicast router, the multicast router transmits ACK to the upstream multicast router or transmitting device. Thus, the window may be controlled. In this case, it is possible to limit the number of multicast packets transmitted within a range that can be received by all receiving apparatuses.
[0037]
In other words, the reliability multicast congestion control method includes:
(1) A congestion control method using transmission rate control for controlling the packet transmission interval,
(2) A method in which ACK is transmitted only to the worst receiver and congestion control is performed using the same congestion control window as that of TCP,
(3) ACK is transmitted to all receivers, ACKs are aggregated at the multicast router, and ACKs from all receivers are received at the transmission device (ACK from the multicast router is equivalent to ACK from all subordinate receivers) A congestion control method that uses a congestion window
Etc. The above methods (2) and (3) use a congestion window in the same way as TCP, and therefore have high affinity with TCP. However, since only one packet loss occurs and the congestion window is halved, it is not suitable for a wireless section in which packet loss frequently occurs. On the other hand, the method (1) uses an approximate expression (for example, multiplying the square root of the packet loss rate by the RTT value) based on an appropriate route based on the packet loss rate and the RTT from the receiving device. calculate. For this reason, the affinity with TCP is not as high as (2) and (3), but even if packet loss occurs, the rate does not drop sharply, so it can be used to some extent even in the wireless section.
[0038]
Therefore, a congestion control method using a congestion window is used for the wired section between the transmission device and the relay node as in (2) or (3) above, and the wireless section between the relay node and the reception device is used. It is desirable to use a congestion control method by rate control for controlling the transmission rate as described in (1) above.
The multicast router 20a is, for example, a commercial multicast router or a software that performs routing on a general-purpose information processing device such as a personal computer or a workstation. The multicast router 20a is a communication I / F 21 for communicating with a transmitting device, a packet duplicating unit 22 for copying a multicast packet from the transmitting device, and a communication for communicating with a subordinate multicast router 20b and a relay node device 30. I / F23. The multicast router 20b is configured similarly to the multicast router 20a.
[0039]
The relay node device 30 is composed of, for example, a multicast router provided with dedicated hardware. The relay node device 30 stores a communication I / F 31 for communicating with the upstream multicast router 20a, a reception device function buffer 32 for functioning as a multicast reception device for the transmission device, and received data. HDD 34 to be transmitted and transmission data for changing the received data to transmission data for distribution to the subordinate receiving apparatus, or reading data from the HDD 34 in response to a retransmission request from the receiving apparatus and distributing to the subordinate receiving apparatus When there is a loss in the data received by the packet generation / modification unit 33 and the reception device function buffer 32, the retransmission request is sent to the upstream node device, or the transmission device is instructed. A receiving device function control unit 35 that controls each function for acting as a receiving device and a subordinate receiving device. A transmission apparatus that controls an appropriate transmission rate according to the transmission characteristics of the apparatus, controls packet generation according to the transmission characteristics, etc., and instructs retransmission of data in response to a retransmission request from a subordinate receiving apparatus A function control unit 36, a transmission device function buffer 37 for functioning as a multicast transmission device for the reception device, and a communication I / F (wireless communication I / F) 38 for communication with the subordinate reception devices 40a and 40b And.
[0040]
The relay node device 30 can be configured as dedicated hardware having such a function. However, the packet generation / modification unit 33, the reception device function control unit 35, the transmission device function control unit 36, etc. It can also be configured by a general-purpose information processing device such as a personal computer or a workstation realized by the above.
The receiving device 40a includes a general-purpose information processing device such as a personal computer or a workstation. The reception device 40a is configured to communicate with the relay node device 30 when there is a loss in the communication I / F (wireless communication I / F) 41, the buffer 42, and the multicast data received in the buffer 42. A control unit 43 that controls packet repair processing, such as instructing transmission of a retransmission request toward the destination, or controls each function for acting as a multicast receiver, and an HDD 44 for storing received data as a file. I have. The receiving device 40b is configured similarly to the receiving device 40a, and the receiving device 40c is configured similarly except that the communication I / F is a wired communication I / F.
[0041]
In FIG. 1, for simplicity of explanation, a communication system including a transmission device 10, multicast routers 20a and 20b, a relay node device 30, and reception devices 40a, 40b, and 40c is shown. It is good also as a structure by which. For example, as illustrated in FIG. 2, the transmission device 10, the multicast routers 20 a to 20 e, the relay node devices 30 a and 30 b, and the reception devices 40 a to 40 h may be provided.
[0042]
In the communication system configured as shown in FIG. 1, the receiving devices 40a, 40b, and 40c join a multicast group to which the transmitting device 10 distributes in order to receive multicast. When the receiving apparatus reaches the transmitting apparatus 10 by repeatedly notifying the upstream node apparatus such as a multicast router or relay node apparatus of joining the multicast group and notifying the further upstream node of the joining. A multicast packet transmission path from the transmission device 10 to each reception device is set, and a multicast group is formed.
[0043]
Before starting the delivery of multicast packets, the sending device 10 delivers an SPM (Source Path Message) including the address of the sending device 10 itself, and its own address, the reliable multicast protocol to be used, a control function, etc. To be notified. The multicast router 20 a that has received the SPM duplicates the packet and distributes it to the multicast router 20 b and the relay node device 30.
[0044]
When the distributed SPM reaches the relay node device 30, the relay node device 30 activates the reception device function of the multicast group to which the transmission device 10 distributes and becomes the reception device for the transmission device 10. Next, the address of the transmitting device in the SPM is overwritten with its own address, and if necessary, when a field for notifying the control function used by the transmitting device 10 in the SPM is delivered to the subordinate receiving device. It is changed by the reliable multicast protocol to be used, the control function, etc., and distributed to the receiving devices 40a and 40b.
[0045]
When the receiving device 40a receives the SPM, the receiving device 40a recognizes that the relay node device 30 exists upstream, and activates the receiving device function having a control function and the like for the relay node device 30 to perform distribution. It becomes a receiving device as an apparent transmitting device. Similarly, the receiving device 40b is a receiving device that uses the relay node device 30 as an apparent transmitting device, but the receiving device 40c is a receiving device that uses the transmitting device 10 as a transmitting device.
[0046]
Accordingly, a necessary control function is activated in each reception device function. For example, if the transmission device 10 notifies that the congestion control function is used, the relay node device that behaves as a reception device to the transmission device 10 30 and the receiving device 40c measure RTT (Round Trip Time) to the transmitting device 10 in order to estimate the allowable bandwidth of the route from the transmitting device 10 to itself. In this measurement, the relay node device 30 and the receiving device 40c each transmit a predetermined packet to the transmitting device 10, and the time until the packet transmitted from the transmitting device 10 is supplied to each device as a response thereto is measured. Each device measures. When the RTT is measured in this way, each device estimates the throughput between the transmission device 10 from the packet loss rate and the RTT, assuming that the packet loss rate is 0 in the initial state. Thereafter, the relay node device 30 and the receiving device 40c transmit a status report packet having the obtained throughput information and the like to the transmitting device 10. Since only the status report packet of the worst receiving device needs to be supplied to the transmitting device, only the information of the receiving device having the worst status is supplied upstream in the multicast router in the path. Aggregation may be performed.
[0047]
This status report packet is supplied to the control unit 14 via the multicast router 20a and the communication I / F 13. The control unit 14 determines the transmission rate of the multicast packet, etc. so that it can be received by the receiving device under the path with the smallest allowable bandwidth according to the information indicating the throughput in the supplied reception status report packet. Set conditions.
When the setting of the conditions is completed, the control unit 14 controls the transmission rate of the multicast packet generated by the packet generation unit 12 accordingly.
[0048]
In response to this, the packet generation unit 12 starts reading the data held in the HDD 11, information (multicast address) indicating a multicast destination group, and individual packets in a series of multicast packets for each predetermined length. A multicast packet including a number (seq: sequence number) for identifying the packet is generated and transmitted via the communication I / F 13. The timing at which the packet generator 12 generates the multicast packet is controlled by the controller 14 according to information indicating the throughput and the like in the reception status report packet supplied to the transmission device 10. This multicast packet is composed of, for example, an IP packet including the above-described destination multicast address, packet transmission source address, and the like in the header. In the payload portion of this IP packet, for example, a UDP packet having a predetermined UDP port number in the header portion is stored. In the payload portion of this UDP packet, for example, data such as software and moving images divided into a predetermined length is stored. By the way, when using UDP for the transport layer protocol, unlike the case of using TCP, the sequence number (seq) is not added to the header. For example, the sequence number is added to the payload portion.
[0049]
The multicast packet transmitted from the transmission device 10 is supplied to the communication I / F 21 via the transmission path. When receiving the multicast packet, the communication I / F 21 sequentially sends the packet to the packet duplicating unit 22, and the packet duplicating unit 22 needs to perform distribution according to the destination address of the multicast packet (in the case of FIG. 1, the multicast destination). The number of routers 20b and the number of relay node devices 30) is copied and sequentially supplied to the communication I / F 23. The communication I / F 23 transmits this to the multicast 20b and the relay node device 30. The multicast router 20b performs the same process as the multicast router 20a, and transmits a multicast packet to the receiving device 40c.
[0050]
The communication I / F 31 of the relay node device 30 receives the multicast packet from the multicast router 20a and sequentially stores it in the reception device function buffer 32. The reception device function control unit 35 monitors the reception state of the received multicast packet. When a packet loss occurs, the reception device function control unit 35 requests the upstream device to retransmit the multicast packet by a retransmission request message. In the case shown in FIG. 1, a retransmission request message is supplied from the communication I / F 31 to the transmission device via the multicast router 20a, and the transmission device retransmits the multicast packet. The receiving device 40c also has a control unit similar to the receiving device function control unit 35 of the relay node device 30, and performs the same processing for packet loss.
[0051]
Through the above processing, the relay node device 30 can repair the packet loss and receive all the multicast packets distributed from the transmission device. When the multicast packet distributed from the transmission device can be normally received, the reception device function buffer 32 supplies the packet generation / modification unit 33 sequentially. In addition, when the reception rate is higher than the transmission rate to the subordinate receiving apparatuses 40a and 40b, the received multicast packet cannot be transmitted immediately, so the data is stored in the HDD 34. As described above, once data is stored in the HDD 34, the difference between the transmission rates of the multicast communication in which the own apparatus operates as a receiving apparatus and the multicast communication in which the own apparatus operates as a transmitting apparatus and performs distribution under the transmission is absorbed. Reliable multicast communication can be performed without influencing the transmission device of the data loss of the device. If there is a packet loss, supply is performed after the packet loss can be repaired by retransmission.
[0052]
In addition, the reception device function control unit 35 that monitors the reception state of the multicast packet notifies the transmission device function control unit 36 of the sequence number (seq) of the multicast packet that has been received.
In this communication system, the distribution control mechanism from the relay node device 30 to the receiving devices 40a and 40b is independent of the control mechanism used by the transmitting device 10 according to the transmission characteristics of the form in which the receiving devices 40a and 40b are connected. The control mechanism to be used is held in the transmitter function control unit 36. As to what control mechanism is used, if the transmission characteristic of the form in which the subordinate receiver is connected is known, it can be set in advance in the transmitter function control unit 36 as a default. It is also possible to select and set a control mechanism suitable for the transmission characteristics and the format of the data to be distributed before performing.
[0053]
In the case of the communication system shown in FIG. 3, since the relay node device 30 and the receiving devices 40a and 40b are connected via a wireless section, for example, there is no congestion control mechanism as a control mechanism, and the transmission rate is the wireless bandwidth. Is selected and set to use FEC as a countermeasure against packet loss due to fixed rate, radio section error, etc.
Based on the notification of the sequence number (seq) and the like from the receiving device function control unit 35, the transmitting device function control unit 36 currently has multicast data that can be distributed to the subordinate receiving devices 40a and 40b. Based on the control mechanism, generation of a redundant packet for performing FEC control and an instruction to generate / change a packet at regular intervals for transmission at a fixed rate are performed.
[0054]
The packet generation / modification unit 33 reads data from the reception device function buffer 32 or the HDD 34 based on an instruction from the transmission device function control unit 36, and generates a redundant packet in accordance with the FEC redundancy. And is supplied to the transmitter function buffer 37. When a multicast packet to be distributed is supplied to the transmission device function buffer 37, the wireless communication I / F 38 sequentially reads out and distributes it to the reception devices 40a and 40b. Note that, due to the wireless characteristics, even if the transmitting device does not transmit a packet to each receiving device, a plurality of receiving devices can receive it. In this case, it is not necessary to duplicate the packet.
[0055]
The communication I / F 41 of the receiving device 40a receives the multicast packet from the relay node device 30 and stores it in the buffer 42 sequentially. The control unit 43 monitors the reception state of the received multicast packet. When a packet loss occurs, the control unit 43 performs FEC decoding processing, and based on the successfully received packet and the redundant packet, the lost sequence number (seq ) Is restored. If a packet loss that can be repaired by FEC occurs, the retransmission request message requests the relay node device 30 to retransmit the multicast packet corresponding to the lost sequence number (seq).
[0056]
When the packet loss is repaired, the buffer 42 sequentially stores data in the HDD 44 in accordance with the sequence number. When reception of all the multicast packets distributed from the transmission device is completed, software, moving images, etc. are stored on the HDD 44. Files are saved and can be used. Also, by the same procedure, data such as software and moving images distributed from the transmission device can be stored in the HDD in the reception device 40b as well as the reception device 40a.
[0057]
Further, in this communication system, all multicast data received by the relay node device 30 is stored in the HDD 34, so that the receiving device that has joined the multicast group after the start of multicast data distribution and the mobile receiving device that moves between networks can be used. Even in a receiving device that has moved to the network under the relay node device, the multicast data is distributed from the relay node device by unicast or multicast, so that the other receiving device is not affected. Since the distributed data can be received and the file can be restored, even if the multicast packet received by the relay node device 30 is immediately distributed, the packet generating / changing unit 33 receives the packet from the reception device function buffer 32. Supply packets When, it is also possible to store the data in HDD 34.
[0058]
In the above description, for simplification of description, the description has been given using the communication system including the transmission device 10, the multicast routers 20a and 20b, the relay node device 30, and the reception devices 40a, 40b, and 40c. As shown in FIG. 3, the configuration is further hierarchized and includes a transmission device 10, multicast routers 20a to 20e, relay node devices 30a and 30b, and reception devices 40a to 40h. As described above, it is possible to define a reliable multicast control mechanism used by the transmission device and the relay node device for distribution.
[0059]
In the above description, only the reliable multicast control mechanism has been described. However, the reliable multicast protocol used by the transmission device is different from the reliable multicast protocol used by the relay node device when distributing to the subordinate node. It can also be a protocol.
In order to avoid congestion in a network in which a relay node device operates as a receiving device, congestion control is performed for distribution to the relay node device, and congestion control is not performed for distribution from the relay node device. This is effective for a wireless network (for example, when multicast distribution is applied to a mobile phone network such as IMT-2000) whose bandwidth is individually guaranteed for multicast.
[0060]
In addition, for the wired section between the relay node device and the transmission device, congestion control is performed using a congestion window for congestion control that is highly compatible with TCP, and for the wireless section between the relay node device and the reception device. Although the affinity with TCP is inferior to that when using a congestion window, congestion control is performed by changing the transmission rate that is relatively resistant to radio loss (controlling the packet transmission interval) between multicast and unicast. It is effective for a network that shares a band even in a wireless section (when multicast distribution is used in an existing wireless LAN network).
[0061]
Incidentally, in the transmission device function control unit 36 in the relay node device 30 described above, a transmission control method as shown in FIG. 4 is realized. That is, in the figure, first, it is determined whether there is multicast data to be distributed to the subordinate receiving apparatus (step S41). If there is multicast data to be distributed, a redundant packet for repairing the lost data is generated by FEC technology or the like (steps S41 → S42). Finally, the generated redundant packet is distributed together with the multicast data (step S43).
[0062]
Therefore, the transmission device function control unit 36 implements the following transmission control method. That is, a determination step for determining whether there is multicast data to be distributed to a plurality of receiving devices by a relay node device, and repairing lost data when it is determined in this determination step that multicast data to be distributed exists A transmission control method including a redundant packet generating step for generating a redundant packet to be performed and a distribution step for distributing the redundant packet generated in the redundant packet generating step together with multicast data is realized. By adopting such a transmission control method, even if a packet loss occurs in the multicast data distributed to the subordinate receiving apparatus, it can be repaired.
[0063]
【The invention's effect】
As described above, the present invention uses the relay node device as described above to select the control mechanism used when delivering to the subordinate receiving device independently of the reliable multicast control mechanism used by the transmitting device. Therefore, when there is a receiving device that performs reception through a wireless section, the transmission path characteristics from the relay node device to the subordinate receiving device, such as using a control mechanism that is resistant to radio loss such as FEC. It is possible to perform control according to the above, and there is an effect that the efficiency of reliable multicast communication such as throughput can be improved.
[0064]
In addition, in the conventional reliable multicast communication system, since a control mechanism used by a transmission device is uniquely determined, when using a control mechanism necessary for distribution to a reception device of a certain network, other However, in such a method of performing multicast communication through the relay node device, the relay node device independently distributes to the subordinate receiving device. The control mechanism to be used when performing can be determined. For this reason, whatever multicast control mechanism is used by the relay node device, receiving devices that are not under the control of the transmission device and the relay node device may be affected by the use of the control mechanism. Therefore, there is an effect that it is possible to perform control according to the transmission characteristics, management policy, etc. of the network under the relay node device without reducing the throughput of other receiving devices.
[0065]
Furthermore, since the distribution from the transmission device to each reception device is performed via a wired line such as the Internet, it is assumed that the transmission device uses a congestion control mechanism as a reliable multicast control mechanism. When a transmission rate or the like is adjusted based on the estimated bandwidth of the receiving device and there is a receiving device connected through a wireless section, an erroneous bandwidth estimation may be performed due to the influence of wireless loss. However, if this communication method is used, the relay node device behaves as a receiving device with respect to the transmitting device, and it is possible to avoid using the congestion control mechanism when distributing to the subordinate receiving device. The congestion control mechanism controlled by the wireless communication device is not affected by the radio loss in the transmission path to the receiving device. Therefore, the transmission apparatus can control the transmission rate and the like based on the accurately estimated allowable bandwidth, and it is possible to improve the efficiency of reliable multicast communication such as throughput.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a multicast communication system according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a connection example of a transmission device, a multicast router, a relay node device, and a reception device in a general multicast communication system.
3 is a diagram illustrating an example of a reliable multicast control mechanism used when a transmission device and a relay node device distribute to a subordinate reception device in the multicast communication system of FIG. 2 and a reception rate of each reception device at that time; It is.
FIG. 4 is a flowchart illustrating a transmission control method implemented in a transmission device function control unit in a relay node device.
FIG. 5 is a diagram illustrating a reception rate of each receiving apparatus in the reliable multicast communication scheme in which only the transmitting apparatus controls the transmission rate.
6 shows a configuration in which the reliable multicast relay node apparatus operates as a receiving apparatus for a transmitting apparatus, operates as a transmitting apparatus for a subordinate receiving apparatus, and transmits to a subordinate receiving apparatus in the same configuration as FIG. It is a figure which shows the receiving rate of each receiving apparatus in the case of performing the same control.
[Explanation of symbols]
10 Transmitter
11, 34, 44 HDD
12 Packet generator
13, 21, 23, 31 Communication interface
14 Control unit
20a, 20b Multicast router
22 Packet replication part
30, 30a, 30b Relay node device
32 Buffer for receiver function
33 packet generator / modifier
35 Receiver function control unit
36 Transmitter function control unit
37 Buffer for transmitter function
38, 41 Wireless communication interface
40a, 40b, 40c receiver
42 buffers
43 Control unit
50a, 50b Multicast relay node device

Claims (7)

送信装置がマルチキャスト通信に使用するマルチキャストプロトコルにおける受信装置としての機能と、自身を介してマルチキャストデータを受信する受信装置に対し、該受信装置が接続されているネットワークの伝送特性に適した信頼性マルチキャスト通信制御を行う送信装置としての機能とを有する中継ノード装置を使用して前記送信装置から前記複数の受信装置にマルチキャストデータを配信するマルチキャスト通信方式であって、前記中継ノード装置と他の装置との間の有線区間については輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、前記中継ノード装置と他の装置との間の無線区間についてはパケットの送信間隔を制御することを特徴とするマルチキャスト通信方式。A function as a receiving device in the multicast protocol used by the transmitting device for multicast communication and a reliable multicast suitable for the transmission characteristics of the network to which the receiving device is connected to the receiving device that receives the multicast data via itself A multicast communication system that distributes multicast data from the transmitting device to the plurality of receiving devices using a relay node device having a function as a transmitting device that performs communication control, the relay node device and other devices, A multicast section characterized in that congestion control is performed using a congestion window for congestion control for a wired section between and a packet transmission interval is controlled for a wireless section between the relay node apparatus and another apparatus. Communication method. 請求項1記載のマルチキャスト通信方式であって、前記中継ノード装置が受信装置として動作するマルチキャストプロトコルと、前記中継ノード装置が送信装置として受信装置に対して配信を行うマルチキャストプロトコルとを異なるプロトコルとしたことを特徴とするマルチキャスト通信方式。 2. The multicast communication system according to claim 1, wherein a multicast protocol in which the relay node device operates as a receiving device and a multicast protocol in which the relay node device performs distribution to the receiving device as a transmitting device are different protocols. Multicast communication system characterized by this. 請求項1又は2記載のマルチキャスト通信方式であって、前記中継ノード装置が送信装置として動作するネットワークが無線ネットワークである場合に、該中継ノード装置において配信するマルチキャストデータを、無線ロス耐性のあるデータに変更して配信を行うことを特徴とするマルチキャスト通信方式。3. The multicast communication system according to claim 1 or 2, wherein when the network in which the relay node device operates as a transmission device is a wireless network, multicast data distributed in the relay node device is data with radio loss tolerance. A multicast communication system characterized in that the distribution is performed by changing to 送信装置から配信されるマルチキャストデータを受信し、前記送信装置が信頼性マルチキャスト通信に使用する信頼性マルチキャストプロトコルにおける受信装置として動作する受信手段と、自装置を介してマルチキャストデータを受信する受信装置に対し、該受信装置が接続されているネットワークの伝送特性に適したマルチキャスト通信制御を行う送信装置として動作する送信手段とを含み、前記マルチキャストデータを転送する中継ノード装置であって、他の装置との間の有線区間については輻輳制御用の輻輳ウィンドウを使用して輻輳制御し、他の装置との間の無線区間についてはパケットの送信間隔を制御することを特徴とする中継ノード装置。A receiving unit that receives multicast data distributed from a transmitting device and operates as a receiving device in a reliable multicast protocol used by the transmitting device for reliable multicast communication; and a receiving device that receives the multicast data via the own device. On the other hand, a relay node device that forwards the multicast data, including a transmission means that operates as a transmission device that performs multicast communication control suitable for the transmission characteristics of the network to which the reception device is connected, and A relay node apparatus that performs congestion control using a congestion window for congestion control for a wired section between the two, and controls a packet transmission interval for a wireless section with another apparatus. 請求項4記載の中継ノード装置であって、前記送信装置より配信され、自装置が受信装置として動作するマルチキャストプロトコルと、自装置が送信装置として前記受信装置に対して配信を行うマルチキャストプロトコルとを異なるプロトコルとしたことを特徴とする中継ノード装置。 5. The relay node device according to claim 4, wherein a multicast protocol that is distributed from the transmitting device and that operates as a receiving device, and a multicast protocol that distributes to the receiving device as a transmitting device. A relay node device characterized by a different protocol . 請求項4又は5記載の中継ノード装置であって、自装置が送信装置として動作するネットワークが無線ネットワークである場合に、配信するマルチキャストデータを無線ロス耐性のあるデータに変更して配信を行う手段を含むことを特徴とする中継ノード装置。 6. The relay node device according to claim 4 or 5, wherein, when the network in which the device operates as a transmission device is a wireless network, the multicast data to be distributed is changed to data having a radio loss tolerance and distributed. relay node apparatus which comprises a. 請求項4から請求項6までのいずれか1項に記載の中継ノード装置であって、自装置が受信装置として動作するマルチキャスト通信と、自装置が送信装置として動作して配下に配信を行うマルチキャスト通信との送信レートの差分を吸収し、前記受信装置のデータロスの影響を前記送信装置に与えずに信頼性マルチキャスト通信を行うために、前記送信装置より配信されるマルチキャストデータを保存する保存手段を含み、前記保存手段に保存しているマルチキャストデータを、前記受信装置からの再送要求に応答して配信することを特徴とする中継ノード装置。 The relay node device according to any one of claims 4 to 6, wherein the own device operates as a receiving device, and the multicast device operates as a transmitting device and performs distribution under its control. Storage means for storing multicast data distributed from the transmission device in order to absorb a difference in transmission rate with communication and perform reliable multicast communication without affecting the transmission device data loss of the reception device And relaying multicast data stored in the storage means in response to a retransmission request from the receiving device.
JP2001371904A 2001-12-05 2001-12-05 Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus Expired - Fee Related JP4338924B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001371904A JP4338924B2 (en) 2001-12-05 2001-12-05 Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001371904A JP4338924B2 (en) 2001-12-05 2001-12-05 Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus

Publications (2)

Publication Number Publication Date
JP2003174478A JP2003174478A (en) 2003-06-20
JP4338924B2 true JP4338924B2 (en) 2009-10-07

Family

ID=19180885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001371904A Expired - Fee Related JP4338924B2 (en) 2001-12-05 2001-12-05 Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus

Country Status (1)

Country Link
JP (1) JP4338924B2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005027208A (en) * 2003-07-01 2005-01-27 Sony Corp Apparatus and method of transmission, recording medium, and program
GB0316692D0 (en) * 2003-07-17 2003-08-20 Koninkl Philips Electronics Nv Enhanced multi-path for mimo devices
JP4328602B2 (en) 2003-11-20 2009-09-09 富士通株式会社 Packet error correction apparatus and method
JP2006279937A (en) 2005-03-02 2006-10-12 Fujitsu Ltd Wireless base station, wireless terminal, and wireless access network
US7889654B2 (en) 2005-03-30 2011-02-15 At&T Intellectual Property Ii, L.P. Loss tolerant transmission control protocol
JP4736527B2 (en) * 2005-05-11 2011-07-27 ブラザー工業株式会社 Distribution system, node device, data packet complementing method, etc.
WO2007119403A1 (en) * 2006-03-16 2007-10-25 Matsushita Electric Industrial Co., Ltd. Terminal
AU2008303800A1 (en) * 2007-09-28 2009-04-02 Nec Europe Ltd. Method and system for transmitting data packets to multiple receivers
JP5092877B2 (en) * 2008-04-30 2012-12-05 ブラザー工業株式会社 Tree-type broadcasting system, packet transmission method, node device, and node processing program
JP5169788B2 (en) * 2008-12-12 2013-03-27 富士通株式会社 Network equipment

Also Published As

Publication number Publication date
JP2003174478A (en) 2003-06-20

Similar Documents

Publication Publication Date Title
US9270475B2 (en) Network-based service for the repair of IP multicast sessions
KR100946108B1 (en) Method and apparatus for group communication with end-to-end reliability
Mathis et al. Packetization layer path MTU discovery
Allman et al. Ongoing TCP research related to satellites
Balakrishnan et al. Explicit loss notification and wireless web performance
Floyd A report on recent developments in TCP congestion control
JP4338924B2 (en) Multicast communication method, relay node apparatus used for multicast communication, and transmission control method in relay node apparatus
Vusirikala et al. Hop-by-hop best effort link layer reliability in named data networking
Macker et al. The multicast dissemination protocol (MDP) toolkit
EP1139602A1 (en) Method and device for multicasting
JP4490314B2 (en) Communications system
WO2002089425A1 (en) Data communication method, data communication system and program
Natarajan et al. Concurrent multipath transfer using transport layer multihoming: Performance under network failures
JP2005244897A (en) Communication method with reliability and apparatus therefor
CN104717144A (en) Reliable multicast method based on within-network caching and hop-by-hop confirmation
CN106487478B (en) Multicast transmission using programmable network
Baek et al. A lightweight SCTP for partially reliable overlay video multicast service for mobile terminals
Li et al. File multicast transport protocol (FMTP)
Yoon et al. Adaptive reliable multicast
JP2005065100A (en) Data distribution method, repeating system, and computer program
Li et al. A reliable message multicast transport protocol for virtual circuits
JP2006174298A (en) Data distribution method, relay apparatus, computer program and recording medium recording computer program
Yoon et al. SomeCast. A paradigm for real-time adaptive reliable multicast
Miller Data distribution over IP in high error rate military radio environments
Mathis et al. RFC 4821: Packetization layer path MTU discovery

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060516

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060808

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061003

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20061012

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20061117

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090508

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: 20090701

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130710

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees