JP3692830B2 - Multicast communication system - Google Patents
Multicast communication system Download PDFInfo
- Publication number
- JP3692830B2 JP3692830B2 JP13372199A JP13372199A JP3692830B2 JP 3692830 B2 JP3692830 B2 JP 3692830B2 JP 13372199 A JP13372199 A JP 13372199A JP 13372199 A JP13372199 A JP 13372199A JP 3692830 B2 JP3692830 B2 JP 3692830B2
- Authority
- JP
- Japan
- Prior art keywords
- host
- multicast
- hosts
- data
- group
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Radio Relay Systems (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ネットワークを用いてデータの配信を行うためのマルチキャスト通信システムの大規模化、高信頼化技術に関する。
【0002】
【従来の技術】
現在特定の複数宛先にデータを配信できるマルチキャスト通信に関係する技術として、IETF(Internet Engineering Task Force)にてIGMP(Internet Group Management Protocol:RFC2236)がIPレベルの標準として成立している。またマルチキャスト用のアドレスの使い方はRFC2356で開示されている。IGMPはマルチキャストルータが、マルチキャストデータを効率よく転送できるように所属するローカルネットワークに該当するマルチキャストグループのメンバが存在するか否かを把握するためのプロトコルである。またIETFのドラフトレベルではルーティングプロトコルとして、世界規模のマルチキャスト仮想実験ネットワークのMBONE向けにDVMRP(Distance Vector Multicast Routing Protocol)及びMOSPF(Multicast Open Shortest First)がある。どちらもマルチキャストデータ転送に関するツリーを作成するものである。上記技術は、マルチキャストデータの転送を効率よく行わせるためのものである。
【0003】
マルチキャストの大規模化に関しては、近年のインタネットのインフラ整備と共に爆発的に利用者が増加している現状においては、マルチキャストサービスに大規模化にも対処できるスケーラビリティを有することが非常に重要となっている。このような状況において、マルチキャスト伝送媒体として親和性が非常に高い無線回線が着目されつつある。地上波デジタル通信網、移動体通信網、衛星通信網が次第に整いつつある。特に広域・高速性を有する衛星回線は大規模マルチキャスト通信に対処する有力な基盤として注目されている。この特徴を利用して、本社から広域分散する支社に対しての社内放送、教育TV放送、画像のダウンロードシステムなど、放送型のサービスとして実用化されている。また放送波の隙間を利用したデータ配信サービスが家庭にまで浸透しつつある。
【0004】
マルチキャストデータの高信頼化技術として、データの中に誤り訂正符号を加えるものと、再送制御を行うものがある。再送制御は最も高い信頼性を得ることができるため、ファイル配信、プログラムダウンロード、バージョンアップ、企業データの配信には送達確認による再送制御が採用されている。再送制御技術には基本となるGO-Back-N方式とSelective Repeat方式がある。文献1(藤部、小林、中山著「マルチメディア衛星通信における高信頼マルチキャスト通信方式の課題と提案」(信学技報SAT96−127、1997−01)には、これらを組合せたり修正した方式も開示されている。さらに再送制御を加えたマルチキャストシステムのシステムスループットの向上を図る方式にも以下に示すように、送信制御、送達確認制御及び再送制御のタイミングにより分離される、様々なものがある。
【0005】
▲1▼送信制御の終了後に送達確認及び再送制御を行う方法、例えば、文献2(城下、高橋、他3名著「高信頼マルチキャスト通信プロトコル(RMTP)の各種ネットワークへの適用性」(信学技報SSE95−196,1996−03)で開示されているRMTP)参照。
【0006】
▲2▼送信制御と送達確認を並行に行い、一通りデータを送信したあとに再送制御を行う方法、例えば文献3(米StarBurst社の MFTP;White Paper「An Efficient,Scalable Method for Distributing Information Using IP Multicast」)、や文献4(米Mentat社のXTP4.0;江口著「TCP/IPから見たXTPプロトコル」雑誌Bit Vol.28No4,1996−04)参照。
【0007】
▲3▼送信制御、送達確認及び再送制御を並行に行う方法(文献2参照)
がある。いずれもIPあるいはUDPのをベースに行っている。また、送達確認及び再送制御の送信ホストへの負荷を軽減するために、文献5( B.N.Levine他1名著「A comparison of known Classes of Reliable Multicast Protocols」ICNP1996−Oct,Columbus Ohio)には、送達確認或は再送制御タイミングを時間的に分散させること、正常受信していない送達確認のみ通知する方法が開示されている。
【0008】
【発明が解決しようとする課題】
例えばインタネットを利用している数万を越える契約ユーザにゲームソフトなどのソフトウエアを配信するサービスのように、おびただしい数のユーザに誤りなく確実にデータをマルチキャスト送信する場合、上記送達確認と再送制御を採用することが重要となる。特に回線品質が高くない無線回線を利用する際には必須の手段である。このような場合ユーザ数が莫大になると、送達確認或は再送制御にかかる送信ホストへの負荷が、時間的分散などの工夫にかかわらず軽減できなくなり配信に多大な時間を要することになる。またネットワークの一部の回線の不具合やトラヒック輻輳が発生する等で、DVMRPやMOSPFによって作成されたマルチキャストツリーの一部が不通になりデータ配送が不可能あるいは伝送時間の長大化等システム全体に悪影響を及ぼすおそれがある。
【0009】
本発明の目的は、上記課題を解決し多数のユーザに確実にデータを送信することができる、大規模なマルチキャスト通信システムを提供することである。
具体的には、
(1)送達確認と再送制御にかかる送信ホストの負荷を分散すること、
(2)トラヒック輻輳やデータ伝送の滞りを回避すること、
(3)ルータ等のネットワーク資源の消費を抑えること、
が可能なマルチキャスト通信方法とそれを用いたマルチキャスト通信システムと、当該システムを構築するために必要な、個々の通信装置や、計算機上にこれらの通信装置を実現するプログラムを提供することである。
【0010】
【課題を解決するための手段】
上記目的を達成するために、本発明では、マルチキャストデータを送信するホストが、ネットワークの状況に応じて、ホストグループ(マルチキャストグループともいう)の構成を動的に制御することを特徴とする。
他の観点では、送信ホストからマルチキャストグループを構成するホストまでの経路、つまりマルチキャストツリーを動的に再構成することを特徴とする。
一般的にツリーを構成するのは、経路制御機能をもったネットワークノードです。具体的には、ルータであったり、gatewayでも、通常のPCでも経路制御機能があれば構わない。
【0011】
制御の方法として、正常に受信したホストを含むように、ホストグループを構成する(例えば、新たに1つ以上生成するかまたは既存のホストグループの構成を変更する)ことを特徴とする。
さらに、該正常に受信したホストに、該ホストが所属する新たに生成したまたは変更したホストグループ内に対する通信処理の一部を行わせることを特徴とする。
他の観点として、正常に受信したホストを新たな送信ホストとして、マルチキャストツリーを再構築することを特徴とする。
さらに、本発明のマルチキャスト通信システムにおける、前記指名されたホストは、受信したデータ送達確認を送信ホストに送る手段と、正常に受信できなかったデータの再送を要求する手段とを備えることを特徴とする。
【0012】
本発明のマルチキャスト通信システムによれば、送信ホストの負荷を分散でき大規模なマルチキャストシステムを実現することが可能になる。また一部の不具合状況にしたがって、ホストグループを再構成し、前記指名ホストに処理を移すことでトラヒック輻輳、データ伝送の滞りを回避することが可能になる。すなわち、高信頼化を担う再送制御処理を効率化することができ、システム効率の低下を防ぐことが可能になる。
また、本発明は、複数のホスト間の経路に無線回線、特に衛星回線を利用することを特徴とするものである。再構成したホストグループをルータ等のネットワークノードを介さずに無線(衛星)回線で直接接続で構成させることにより、送達確認或は再送制御等の通信処理による影響を他のネットワークへ及ぼさないこと、他のネットワークからも影響受けないことが可能になり、通信処理の効率化とシステム効率の低下防止が可能になる。
【0013】
また、本発明は、送信正常に受信できなかったデータの再送を要求するシステムにおいて、指名ホストが新たに生成した或は変更した該ホストグループにマルチキャストで再送を行わせることを特徴とする。
また、本発明に用いる通信処理装置は、ネットワークを構成するノード間で、再構成したホストグループの定義情報を通知する手段を備え、前記再構成したホストグループに閉じた通信処理を行うことを特徴とする。
また、本発明に用いる通信処理装置は、新たにあるいは変更したホストグループを構成するホストとのネットワークコストが最小となるような正常受信ホストを選択する手段を備えることを特徴とする。
【0014】
【発明の実施の形態】
以下、図にしたがって本発明を用いた実施例を説明する。
図1は本発明の概要を説明するシステム構成図である。システムは複数のネットワーク120〜127、これらネットワーク間を接続する複数のルータ130〜134及びネットワーク120〜127とルータ130〜134からなるネットワークに接続するホスト100及び150〜163からなる。同図ではホスト100が配信するマルチキャストデータを有する送信ホストを示し、ホスト150〜163は、該マルチキャストデータを受け取るマルチキャストグループを構成していることを示している。グループ170及びグループ171は本発明にて新たに生成されるホストグループを示す。ここでは、ホスト100がマルチキャストデータ101を複数のフレームに分割しこのマルチキャストグループのマルチキャストグループアドレスを宛先アドレスとして、マルチキャストグループに所属するホスト150〜163に送達確認と再送制御をもちいて高信頼に配信する場合を例として説明する。
【0015】
この場合、ホスト100は送信したフレームに対してホスト150〜163から送達確認通知を受け取り、ホスト150〜163おのおのに対してフレーム単位で未受信と正常受信の状態管理を行う。ここではホスト152、153、154、160、162、163を、未受信フレームが有り再送を要求する旨の通知を行ったホスト(以降、未受信ホストと呼ぶ)と仮定し、その他のホストはすべてのフレームを正常受信したホスト(以降、正常ホストと呼ぶ)と仮定する。この送達確認通知結果を基に、ホスト100は正常受信ホストを含め未受信通知を行ったホスト152、153、154、160、162、163から新たにホストグループを定義する。
【0016】
この図では未受信ホストまでのトータルネットワークコストが小さくなるような方針で、正常ホストとしてホスト159及び151を指名し、それぞれを含む2つの新たなホストグループ170と171を定義している。ホストグループ170は指名されたホスト(以降、指名ホストと呼ぶ)159、未受信ホスト160、162、163で構成し、ホストグループ171は指名ホスト151、未受信ホスト152、153、154で構成する。
【0017】
ホスト100は、定義した新たなホストグループにそれぞれ新たなマルチキャストアドレスを付与しグループの定義情報と共に制御データとして、再送開始までにマルチキャストデータのフレーム送信と並行して送信し、ホスト150〜163に通知する。
【0018】
前記定義情報に関わるホスト151、152、153、154、159、160、162、163はそれぞれ通知された定義情報を受信する。ホスト151はホストグループ171、ホスト159はホストグループ170の指名ホストであることを認識する。
【0019】
指名ホスト151、159は、それぞれホストグループ171、ホストグループ170の再送制御のマスタとなり、ホストグループ171及び170それぞれ付与されたマルチキャストアドレスを付けて必要なフレーム180及び181を再送する。再送制御が終了するとその旨をホスト100へ通知する。
【0020】
このように受信状況及びトラヒック状況に応じて、再送のために必要なホストグループを指名ホストともに一時的に定義して再送制御をローカルで行うことで再送処理を分散し、大規模な高信頼マルチキャストサービスへ対処が可能となる。またローカルに閉じた通信処理を行うことで、ホスト100から再送する場合に比べ、未受信ホストから遠いネットワーク或はルータ等のネットワーク資源の消費を抑えること、すなわち、再送フレームのトラヒック増加による悪影響を抑えることができる。
【0021】
次に図2を用いて、広域・同報性を有し大規模なマルチキャスト通信に非常に有効な伝送媒体である衛星回線を利用する場合の実施例を説明する。図2において、200は通信衛星、210、220〜234は衛星回線にデータを変換し送受信を行う地球局装置、211、240〜247及び290〜295はそれぞれ地球局装置220〜234に接続しデータの処理を行うホストを示す。ここでは、マルチキャストデータを有するホスト211が、地球局装置210、通信衛星200を介して衛星回線212にてマルチキャストグループ250を構成するホスト240〜247及び290〜295にマルチキャストデータを配信する場合を説明する。
【0022】
上記と同様にデータをフレームに分割してマルチキャストグループ250のグループアドレスを付して同報する。マルチキャストグループ250の構成ホストは送達確認をホスト211にユニキャストで返信する。この送達確認を基にホスト240〜247及び290〜295の受信状態を把握して、新たなホストグループ270と280を定義する。ここでは、未受信ホストがホスト290〜295であり、これら以外のホストは正常ホストである。指名ホストは正常ホスト246及び247である。ホストグループの定義は、受信状況をみて以下の基準で行うことが考えられる。
【0023】
(1)フレーム未受信率が同一(定義は後述する)のホストを同一グループとする
(2)フレーム未受信パターンが同一(定義は後述する)のホストを同一グループとする
(3)同一の地域のホストを同一グループとする
指名ホストの選択は、出来るだけ上記生成したホストグループに物理的に近いことを基準とする等が考えられる。
【0024】
指名ホスト246はホストグループ270を、指名ホスト247はホストグループ280の再送制御を担う。指名ホスト246は再送フレーム271を、指名ホスト247は再送フレーム281を、通信衛星200を介してそれぞれのホストグループ270及び280の未受信ホストへ送信する。
以下では上記従来の技術にて示している、送信制御と送達確認を並行に行い一通りデータを送信したあとに再送制御を行う方法での実施例を説明する。
【0025】
図3に本実施例でのシーケンスを示す。図3(1)は送信制御と送達確認を並行に行うシーケンスを、図3(2)は再送制御のシーケンス例を示す。図3(1)ではホスト240、290、295がマルチキャストでデータを受信しているところを示している。301〜309はマルチキャストデータのフレームを、6フレームで1つのブロックを定義している。ブロック毎に受信したホストが未受信のみの送達確認を行っている。受信したホストがそれぞれブロック終了毎にタイマーを作動させランダム時間経過後に送達確認を送信している。
【0026】
なお、並行に行うとは、マルチキャストデータを、例えばフレーム単位で受信しながら同時にこれまで受信したデータフレームに対する受信状況(送達確認)を送ることを意味している。受信状況を送るタイミングは採用する送達確認方法に従って任意に選択できるものである。例えば、ウインドウサイズ分ごとに送達確認するとか、ある受信データ量ごとに送達確認する等の方法が可能である。また、送信制御とは、再送も含めてマルチキャストデータを送信することである。送達確認とは、マルチキャストデータに対する受信状況を送信側に通達することで、マルチキャストデータに対する正常受信かエラー受信かを送信側が認識することである。
【0027】
未受信フレームがあることを通知するNACK(X,Y)フレームにおけるXはホストの識別子を、Yは未受信フレーム番号で未受信フレームを通知する。図ではホスト290はフレーム番号2のフレームが未受信であることを、ホスト295はフレーム番号6と7が未受信であることを通知している。図3(2)では、(1)のシーケンスが一通り終了し、ホスト211が受信状況から新たにホストグループ270及び280を生成し、そのうちホストグループ280における指名ホスト247からホスト295へマルチキャストでフレーム6及び7の再送を実施している様子を示している。
【0028】
図4は、図3のシーケンスを実行する主要な装置の構成例を示したものである。この図において、通信衛星と送受信を行う地球局装置210、235、227には、それぞれ本発明を実行する通信処理装置400が接続されている。さらに前記通信処理装置にはそれぞれ、ホスト211、295、247が接続されている。もちろん通信処理装置はホストの中で実現することも可能であるが、発明説明を明確にするために分離した。ホスト247はこの例では指名ホストとなるものである。
【0029】
図5は図3のマルチキャスト手順を実行する通信処理装置400の構成を示すブロック図である。CPU500は、マルチキャスト通信制御等の各種の通信処理プログラムをROM510から呼び出して実行する。RAM520は、受信状態管理表など本発明実施の上で参照される情報を一時保存する制御情報記憶手段である。I/F回路530は地球局装置との接続を行い入出力バッファ560に一時的に入出力データを記憶する。I/F回路540はホストとの接続を行い入出力バッファ570で一時的に入出力データを記憶する。
【0030】
I/F回路550は他のネットワークとの接続を行い入出力バッファ580で一時的に入出力データを記憶する。CPU500は入出力バッファを監視している。これにより、接続するホストあるいはネットワークからのデータを入出力バッファを介して通信する。ここでは一般的なインタネットプロトコルであるTCP/IP(Transmission Control Protocol /Internet Protocol)でホスト或はネットワークと通信する場合で説明する。また地球局装置とはIPベースの上に、マルチキャスト用の下記に説明するプロトコルを実施する。
【0031】
図6はIETFで標準化されておりインタネット等で利用されているIPパケット600を示す。IPパケット600は通常20バイトのIPヘッダ部とIPデータ部620からなる。マルチキャストデータはこのIPデータ部620で運ばれる。通信処理装置400はホスト或はネットワークで図6のフォーマットでやり取りするデータを入出力バッファに蓄え、IPデータ620を取り出し、フレームサイズに分割し、新たに制御情報を加え再度IPパケット化を行いI/F回路530へ出力する。
【0032】
図7は上記I/F回路530を介して衛星回線へ送信するために再度組み立てられたIPパケット700のフォーマットを示す。IPパケット700は標準の20バイトのIPヘッダ部710とIPデータ部720からなり、IPデータ部720には通信処理装置400で作成したフレームセグメント770が格納される。IPデータ部720はフレームヘッダ部730とフレームデータ部750からなる。フレームデータ部750にはユーザデータ或は制御情報が格納される。
【0033】
フレームヘッダ部730はユーザデータ/制御データの識別を行うデータフレームと制御フレームを示すフレームタイプ731、送信元ポート番号732、宛先ポート番号733、フレームシーケンス番号734、ブロックの開始と終了のためブロック識別子735、マルチキャストアプリケーションを識別するIPマルチキャストアドレス736、フレームが正常に到着したことを確認するチェックサム737からなる。制御フレームには、例えば、後述するようにマルチキャストデータを送信する側から送るホストグループ定義のためのフレームや受信する側の送達確認通知等、今回の発明に関わる制御情報を伝達するフレームである。データフレームは、マルチキャストデータを送信するためのフレームである。
【0034】
まず、マルチキャストデータの送信元となるホスト211に接続する通信処理装置400のデータ送信処理手順を図5〜図7を利用して図8のフローチャートで説明する。ステップ801で入出力バッファ570のIPパケット600をチェックして、ステップ802でIPマルチキャストデータであるかをIPヘッダの宛先IPアドレスで判断する。インタネット標準の仕様では、クラスDのIPアドレスをマルチキャスト用に定義しており、先頭4ビットが「1110」(10進法では224)となっている。
【0035】
図2では、マルチキャストグループ250用にマルチキャストアドレスが割当てられている。このマルチキャストアドレスは、標準ではクラスDのうちパブリックに割り当てられている224.0.1.0〜238.255.255.255のいづれかである。或は1つの団体で閉じている場合だと、ローカルに割り当てられている239.0.0.0〜239.255.255.255が利用できる。ステップ802で通常のユニキャストIPアドレスであると入出力バッファ570のIPパケットをステップ809で取り出してそのままステップ808で入出力バッファ560へ送信する。
【0036】
ステップ802でマルチキャストデータであると判断すると、ステップ803でIPパケット600を取り出してデカプセルする。ステップ804でデカプセル後のIPデータ620をフレームに分割する。必ずしも1つのIPデータからフレームを作成するわけではなく、複数IPデータで1つのフレームを構成することもある。ステップ805でフレームヘッダの作成を行う。フレームヘッダは図7で示したが、フレームタイプ731をユーザデータタイプとし、ホスト211から受け継いだ送信元ポート番号732、宛先ポート番号733、そしてシーケンス番号734は分割したフレーム番号を付する。ブロック番号735は先頭及び終わりのフレームに付する。
【0037】
IPマルチキャストアドレス736は、今回のマルチキャストアプリケーションを識別するため、前記IPマルチキャストアドレスを付ける。ステップ806でステップ804でのフレームデータにステップ805のフレームヘッダからをフレームを組み立て、ステップ807でステップ803でデカプセル化後のIPヘッダ610でステップ806のフレームをカプセル化して、ステップ808で入出力バッファ560へ送信する。以上がデータ送信処理の動作である。なおここでは、通信制御装置400がホストのIPマルチキャスト及びIPアドレスを管理しているものとして説明している。
【0038】
次に送信するホスト211に接続する通信処理装置400の受信処理手順を説明するがその前に使用する制御フレームについて示しておく。図9はマルチキャストデータを受信するマルチキャストグループ250を構成するホスト240〜247及び290〜295の通信処理装置400が衛星回線を介して返す未受信送達確認のフレーム(NACKフレームと呼ぶ)の制御情報900である。NACKフレームは図7で説明したフレームヘッダ730のフレームタイプが制御データのNACK通知であることの識別子を付けた制御フレームであり、フレームデータ部750には図9で示す未受信のフレームシーケンス番号の先頭と末尾をペアにしたものである。
【0039】
図10は送信側通信処理装置400が受信側の通信処理装置400へ送る制御フレームであるホストグループ通知フレームのフレームデータ部750の制御情報1000を示す。制御情報1000は1つのホストグループ毎にホストグループのIPマルチキャストアドレス1001、指名ホストのIPアドレス1002、構成するホストのIPアドレス1003、1004、及びこのホストグループ1010の構成において未受信フレームのシーケンス番号の先頭1005及び末尾1006からなる。ここで新たに割当てるIPマルチキャストアドレスはプライベートに割当てるローカルなものである。従ってローカルに割り当てられている239.192.0.0〜239.251.255.255の中から割当てる。
【0040】
上記制御情報1000は、定義されたホストグループ構成に基づくものであり、送信ホストがこのホストグループ構成定義情報を保存する。また、指名ホストにおいても、任された新たなホストグループに係わる構成定義情報たとえばホストIPアドレスを同様の情報として保存する。さらに各構成ホストにおいても、指名ホストIPアドレスを保存する。
【0041】
図11は、マルチキャスト送信側の通信処理装置400がRAM520で管理する受信状態管理表1100を示す。受信状態管理表1100は受信のホストID1101と未受信フレーム番号1102からなり、通信処理装置毎で未受信フレーム番号が管理されている。以上のフレームを利用して、図12で送信側の通信処理装置400の受信処理手順を説明する。
【0042】
ここで、前述のフレーム未受信率、フレーム未受信パターンについて本発明における定義を例示する。
【0043】
各受信ホストのフレームの未受信率は、例えば、データの全フレーム数を dtとすると、
フレーム未受信率=ホストの未受信フレーム数/dt
で定義される。未受信フレーム数は、図11の表を基に受信ホスト毎にカウントする。ホスト290であれば、A-F-1からA-F-Nの数を累計したものになる。フレーム未受信率があらかじめ設定した誤差の範囲内に収まる場合に「フレーム未受信率が等しい」と定義する。
【0044】
フレーム未受信のパターンは、図11でまとめてある各受信ホストの未受信フレームのうち、他のホストと比較してフレーム番号が一致する率を算出したもので以下のように定義する。以下の式は、ホスト290をホスト291と比較した一致率を示す。この一致率があらかじめ設定した範囲内に収まる場合を「フレーム未受信パターンが同じ」とみなす。
【0045】
一致率(ホスト290→ホスト291)=
ホスト291とフレーム番号が一致した数/ホスト290のフレーム未受信数
図12のステップ1201でNACKフレームを格納するIPパケットを受信すると、IPヘッダ610の送信IPアドレス711と図9で示す未受信フレーム番号を読み取り、ステップ1202で受信状態管理表1100を更新する。図3のシーケンスでは、ホスト290から未受信フレーム先頭番号=未受信フレーム末尾番号=2のNACKフレームが、ホスト295からは未受信フレーム先頭番号=6、未受信フレーム末尾番号=7のNACKフレームを受信していることを示す。
【0046】
ステップ1203で新たなホストグループ定義通知を行うタイミングか否かを判断する。判断の方法としてはいろいろな場合が想定されるが、例えば▲1▼マルチキャストデータの送信が全て完了する数ブロック前をタイミングとして定期的に通知する、▲2▼マルチキャストデータ送信完了後タイミングで数回通知する等がある。未受信フレーム数が規定以上に多いホストグループの場合には天候等による回線品質の低下の可能性があるため一定の時間後に再送するように指示する。指名ホストへのホストグループ定義通知を行うタイミングでなければステップ1201へ戻る。
【0047】
ステップ1204で、受信状態管理表1100から、前記で示したホストグループ定義基準に従ってグループ構成ホスト及び指名ホストを決定する。
【0048】
図2では新たなホストグループ270が指名ホスト246、未受信ホスト290〜292で、ホストグループ280が指名ホスト247、未受信ホスト293〜295で構成定義したものである。ステップ1205ではこの定義をもとに、ホストグループ通知フレームのフレームデータ部750の制御情報1000を作成しマルチキャストグループ250のIPマルチキャストアドレスを宛先IPアドレスとしたIPヘッダでカプセル化する。ステップ1206でこのIPカプセル化した制御フレームを入出力バッファ560へ送信する。
【0049】
図13は通信処理装置400のRAM520で管理しているアプリケーション毎のIPマルチキャスト対応表を示したものである。これによりアプリケーション毎のホストグループを管理している。ここでは3つのマルチキャストを利用するアプリケーション毎のIPマルチキャスト対応表1300、1310、1320である。
【0050】
図14はプライベートIPマルチキャスト管理表1400を示したものである。この表は例えば企業が利用する場合であれば、企業内に1つこの表を管理するマスタサーバを立ち上げて管理していくものである。プライベートIPマルチキャスト管理表1400へ必要なホストは登録してプライベートIPマルチキャストを取得する。利用できるプライベートIPマルチキャストは、IETFでローカルに割り当てられている239.192.0.0〜239.251.255.255を利用する。プライベートIPマルチキャスト管理表1400は取得元のホストIPアドレスが記載されている。未使用だと0.0.0.0となっている。
【0051】
図15でマルチキャストグループ250を構成するホストのうち、指名ホストとなるホスト246及びホスト247に接続する通信処理装置400の処理手順を説明する。ここでは特に指名ホストとして特有の手順のみについて記す。
【0052】
ステップ1500でを入出力バッファ560からホストグループ通知フレームを格納するIPパケットを受信すると、ステップ1501で自ホストのIPアドレスが指名ホストとして記されているかを判断する。記されてなければ終了。ステップ1502で指名ホストであることを認識すると再送タイミングであるかを判断する。再送タイミングにもマルチキャストシステムによって決定される。図3のシーケンスでは再送タイミングは送信のホストから与えられる。再送タイミングでなければステップ1500へ戻る。
【0053】
ステップ1503でホストグループ通知フレームで指示された再送のフレームを自ホストが新たに担当するホストグループのプライベートIPマルチキャストアドレスをIPヘッダ610の宛先IPアドレス712に、自ホストIPアドレスを送信元IPアドレス711にして、IP化して再送する。図3のホストグループ280の指名ホスト247だとフレーム6及び7を再送する。
【0054】
ステップ1504で所属するホストグループの未受信ホストからのNACKフレームを受信したか否かを判断する。受信しなければステップ1505でマルチキャストデータの送信ホストに向けて再送完了フレーム1600を作成し、IPヘッダ610の送信元IPアドレスに自ホストIPアドレスを、宛先IPアドレスには送信ホスト211のIPアドレスにしてIP化して入出力バッファ560へ送信する。ここで再送完了フレーム1600は図16に示すとおりである。フレームタイプ731を再送完了フレームタイプに、フレームデータ部750の制御情報として所属するプライベートIPマルチキャストアドレス1610を、それ以降に完了した再送フレームのシーケンス番号の先頭1620と末尾1621を格納したものある。
【0055】
図17に未受信ホストの通信処理装置400の処理手順を示す。ここでは特にNACKフレームを送信した以降の手順について記す。ステップ1701でホストグループ通知フレームを受信すると、ステップ1702で該ホストグループ通知フレームの制御情報1000をチェックして、受信ホストIPアドレス1002に自ホストのIPアドレスを探して、指定された所属のプライベートIPマルチキャストアドレス1001及び指名ホストのIPアドレスをRAM520に記憶する。
【0056】
ステップ1703で受信した再送フレームが自ホストの未受信マルチキャストフレームであるかを判断し、未受信マルチキャストフレームでなければ待ち状態となる。ステップ1704で正常に再送フレームを受信していれば終了となるが、正常受信してなければステップ1705でNACKフレームの制御情報900に未受信フレームシーケンス番号の先頭910と末尾920をセットしてIPパケット化する。IPヘッダの宛先IPアドレスには再送元の指名ホストIPアドレスをセットして入出力バッファ560に送信する。
【0057】
他の実施例として、送信制御の終了後に送達確認及び再送制御を行う方法でマルチキャストを行う方法も考えられる。この方法では、送達確認通知をマルチキャストデータの送信後に行うことから、マルチキャストデータを受信するホストの通信処理装置400の送達確認通知のタイミングを変更することで実現され、本発明に関わる処理としては同じである。
【0058】
第3の実施例として、図18で示すように送信制御、送達確認及び再送制御を並行に行う方法について説明する。この場合は、一通りのマルチキャストデータの送信を完了しなくてもNACKフレームに対する再送を行うことから、通信処理装置400の処理手順が次のように異なる。
【0059】
まずマルチキャストデータを送信するホスト211の通信処理装置400のホストグループ通知フレームの送信がより頻繁に行われる。さらに該ホストグループ通知フレームタイミング毎にホストグループが異なることがある。このため該ホストグループ通知フレームにてホストグループの動的変更が行われる。つまり、前回の該ホストグループ通知フレームの通知から今回の該ホストグループ通知フレーム通知のあいだに受信するNACKの状況が大きく変化する際にホストグループの構成変更が発生し、図12で示したステップ1203の判断が前記と異なる。これに伴い指名ホストとなる受信ホストにおいても所属するホストグループ変更が図15で説明した処理で頻繁に行われる。受信ホストにおいても所属するホストグループ及び指名ホストの変更が図17で示した処理で頻繁に行われるようになる。受信ホスト側の本発明に関わる通信処理装置400の基本処理手順に変更はない。
【0060】
次に指名ホストが予め決められ、送達確認及び再送制御を指名ホストに実施させる場合のマルチキャストシステムの実施例について説明する。図19にシステム構成を示す。この図において、送信ホスト1900は衛星通信用の地球局装置1901907を介してマルチキャストグループ1902を構成するホスト1910、1920、1930、1940、1950、1960、1970、1990へマルチキャストデータを送信する。予めホストグループ1903、1904、1905が定義されている。ホストグループ1903は、ホスト1920、1940、1950からなりホスト1940が指名ホストである。ホストグループ1904は、ホスト1910、1930、1960からなりホスト1910が指名ホストである。ホストグループ1905は、ホスト1970、1980、1990からなりホスト1990が指名ホストである。
【0061】
各指名ホストは、所属するホストグループの他のホストからの送達確認通知を集計して、送信ホスト1900へ各ホストグループの受信状態を通知する。例えば指名ホスト1940はホストグループ1903のホスト1920、1950の送達確認通知を受取り集計して、受信集計フレームとしてホスト1900へ送る。
【0062】
図20に受信集計フレームの制御情報2000のフォーマットを示す。制御情報はホストグループID2010、受信ホストIPアドレス2020及び該受信ホストの未受信フレームシーケンス番号の先頭2030及び末尾2040からなる。送信ホスト1900はマルチキャストデータの送信を完了し各指名ホストから送られた受信集計フレームから受信状態管理表1100を作成する。この後システムは再送制御動作に移行する。
【0063】
つぎに、未受信ホストとしてホスト1920とホスト1930を想定して、受信状態管理表1100に基づいて現状のホストグループの構成を変更して再送制御を指名ホストに実施させる例を説明する。
図19で、送信ホストはホスト1910を指名ホストに選び、未受信ホスト1920及び1930でホストグループ1906を定義し、ホストグループ通知フレーム1000で通知する。指名ホストに選ばれたホスト1910は、新たなホストグループ1906用のプライベートIPマルチキャストアドレスで再送制御を行い完了すると図16で示した制御情報の再送完了フレームを送信ホスト1900へ送信する。
【0064】
本実施例のように再送制御時に動的にホストグループを変更することで、受信正常ホストは未受信ホストの影響を受けずにマルチキャストデータの受信が可能となる。必要なホストのみで新たにホストグループを構成することで再送処理を効率化が図れる。
【0065】
次に本発明を地上回線に適用する場合の実現構成について説明する。
図1で説明したように地上では衛星回線と異なりマルチキャストデータを配信するためにはマルチキャストツリー上の複数のネットワークを通過しなくてはならない。ツリーの構成要素であるネットワークノードは具体的には、ルータ、gateway、または経路制御機能をもった計算機などが相当し、通常ネットワークノードとしてルータが用いられている。これらのルータから構成されるネットワークにおいて、マルチキャストを実施する場合インタネットでは従来の技術で説明したようにIGMP、DVMRPやMOSPFが利用されている。
【0066】
これらの技術をもとに本発明の動的なマルチキャストを実現するために、図21で示すようなIGMPメッセージを拡張したフォーマットの制御情報をマルチキャスト対応のルータ間でやり取りさせる。
図21にIGMPメッセージの未使用領域にサブタイプ2130を設けホストグループ通知メッセージの識別子を入れた例を示す。チェックサム2140の後にパブリックなIPマルチキャストアドレス2150と該IPマルチキャストアドレス2150のなかで一時的に動的に定義するプライベートIPマルチキャストアドレス2160と指名ホストIPアドレス2170及びプライベートIPマルチキャストアドレス2160で構成するホストのIPアドレス2180、2190で構成される。
【0067】
図22にルータ2200の構成を示す。CPU2210は、ROM2220のルーティング処理ソフトを実行し、RAM2230のルーティングテーブルを参照しながら、受信したIPパケットを、インタフェース回路2240、2250、2260のうち、IPパケットを受信したインタフェース以外に送出する。
【0068】
図23で本発明に係わるルータの処理手順を説明する。ステップ2301でホストグループ通知メッセージ2100の受信を行うと、ステップ2302でプライベートIPマルチキャストグループを構成する指名ホストIPアドレス2170、ホストIPアドレス2180、2190をチェックする。ステップ2303で、自ルータのルーティングテーブルを参照して配下にある1つのインタフェースのネットワークに、プライベートIPマルチキャストグループを構成するホストが全て接続されているか否かを判断する。全て接続されていればステップ2304にて、受信したホストグループ通知メッセージ2100を接続されているネットワークへのインタフェースへ送出する。そうでなければステップ2305で、自ルータのルーティングテーブルヘプライベートIPマルチキャストアドレス及び構成ホストを登録して、ステップ2306で指名ルータ及び構成ホストへのインタフェースに該受信したホストグループ通知メッセージ2100を送出する。
図23の動作により、指名ホストの担当のプライベートIPマルチキャストグループの中だけでプライベートIPマルチキャストアドレスによる通信処理が行われる。
【0069】
次に受信ホストが移動しても動的にホストグループを変更させることで容易にマルチキャストデータを受信させる実施例について説明する。このようにホスト移動が伴う場合には衛星回線のような広域をカバーする無線回線が非常に有利となるが、図1の地上回線でも対応可能である。ここでは図24にて衛星回線を利用するマルチキャストシステムの受信ホストが他の地球局装置の配下に移動したときの動作を説明する。
【0070】
この図では、送信ホスト2402が、通信処理装置2400、地球局装置2401、衛星回線2480を経て、マルチキャストグループ2470を構成する受信ホスト2412、2413、2422、2423、2424、2432、2433にマルチキャストデータを送信する例を示す。受信ホスト2412、2413は通信処理装置400に、受信ホスト2422、2423、2424は通信処理装置400に、受信ホスト2432、2433は通信処理装置400に、それぞれLAN(Local Area Network)2419によって接続されている。地球局装置2420配下の受信ホスト2423が地球局装置2440配下のLAN2441へ移動する場合、通信処理装置2400は以下のように動的にマルチキャストグループ構成を変更する。
【0071】
すなわち、移動するホスト2423は、通信処理装置2440の配下に移動すると、図7で説明した制御フレームの一つである移動通知フレームをLAN2449から通信処理装置400と衛星回線2490を介した送信ホスト2402の通信処理装置400へ通知する。移動通知フレームのフレームデータ部750には制御情報としてユニークな自ホストID(MAC[Media Access Control]アドレスでも可能)、新たに割付けられたホストIPアドレスが格納されている。ホストIPアドレスがパブリックなものであれば、ユニークな自ホストIDとして利用することもできる。この該移動通知フレームを受信した受信ホスト2423の通信処理装置400は新たにルーティングテーブルのネットワーク構成テーブルに受信ホスト2423のIPアドレスを追加する。
【0072】
また送信ホスト2402側の通信処理装置400は該移動通知フレームを受信すると、これまでのマルチキャストグループ2470の構成ホストへのデータ配信を持続させるため、これまでのマルチキャストグループ2460を変更して、地球局2441への衛星回線2490の接続を含むようにマルチキャストグループ2460を定義する。この新たな定義は図13で示したIPマルチキャスト対応表の受信ホストIPアドレスを更新することでなされる。このように衛星回線のような無線回線を利用すると、受信ホストが移動しても移動先までのネットワークコストを増加させないで新たなマルチキャストグループを定義できるため、移動体に容易に対応できる。
【0073】
上記実施例は、衛星通信網を前提に説明したが、その他のマルチキャスト伝送媒体である地上波デジタル通信網、移動体通信網にも適用可能である。
【0074】
以上のように、本発明によれば、送信ホストの負荷を分散でき大規模なマルチキャストシステムの実現が可能になる。また一部の不具合状況にしたがって、ホストグループを再構成し、前記ホストグループに属する指名ホストに任すことでトラヒック輻輳、データ伝送の滞りを回避することが可能になる。
【0075】
また、再構成したホストグループをルータ等のネットワークノードを介さずに無線(衛星)回線で直接接続で構成させることが可能になる。また、送達確認或は再送制御等の通信処理による影響を他のネットワークへ及ぼさないこと、他のネットワークからも影響受けないことが可能になり、通信処理の効率化とシステム効率の低下防止が可能になる。
【0076】
【発明の効果】
以上のように、本発明によれば、
(1)送信ホストの負荷を分散して大規模なマルチキャストシステムを実現できる、
(2)トラヒック輻輳やデータ伝送の滞りを回避することができる、
(3)ルータ等のネットワーク資源の消費を抑えることができる、
(4)通信処理の効率向上とシステム効率の低下防止を防ぐことができる、
という効果がある
【図面の簡単な説明】
【図1】本発明の概要を説明するシステム構成図である。
【図2】本発明を衛星回線を利用したネットワークに適用した実施例の概要を説明する図である。
【図3】本発明の衛星回線利用による具体的実施例を示すシーケンス図である。
【図4】図3のシーケンスを実行するシステム構成例を示す図である。
【図5】本発明を実行する通信処理装置の構成図である。
【図6】IETFで標準化されているIPパケットのフォーマット図である。
【図7】本発明の実施例で用いるフレームのフォーマット図である。
【図8】実施例のマルチキャストデータを送信するホストの通信処理装置の送信処理手順を説明するフロー図である。
【図9】未受信フレームを通知するNACKフレームの制御情報フォーマット図である。
【図10】新たなホストグループの通知を行うホストグループ通知フレームの制御情報フォーマット図である。
【図11】送信ホストに接続する通信処理装置が管理する受信状態管理表である。
【図12】送信ホストに接続する通信処理装置のホストグループ定義及び通知の処理手順を説明するフロー図である。
【図13】送信ホストが管理するIPマルチキャスト対応表である。
【図14】プライベートIPマルチキャストアドレス管理表である。
【図15】指名ホストに接続する通信処理装置の本発明に係わる処理手順を説明する図である。
【図16】図3の実施例で利用する再送完了フレームの制御情報フォーマット図である。
【図17】未受信ホストに接続する通信処理装置の再送制御に係わる処理手順を説明する図である。
【図18】衛星回線利用する具体的実施例を示すシーケンス図である。
【図19】本発明のホストグループを変更する実施例を説明する図である。
【図20】図19の実施例で使用する受信集計フレームの制御情報フォーマット図である。
【図21】ルータ間で本発明を実現するためのやり取りするホストグループメッセージフォーマット図である。
【図22】ルータの構成図である。
【図23】本発明に係わるルータの処理手順を説明する図である。
【図24】本発明を移動ホストに適用したときの実施例を説明する図である。
【符号の説明】
100…送信ホスト、
151,159…指名ホスト、
130,131,132,133,134…ルータ、
152,153,154,160,162,163…未受信ホスト、
200…通信衛星、
170,171,270,280…プライベートIPマルチキャストグループ、
210,227,235…地球局装置、
400…通信処理装置。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technology for increasing the scale and reliability of a multicast communication system for distributing data using a network.
[0002]
[Prior art]
Currently, IGMP (Internet Group Management Protocol: RFC2236) has been established as an IP level standard by the Internet Engineering Task Force (IETF) as a technology related to multicast communication capable of distributing data to a plurality of specific destinations. The usage of multicast addresses is disclosed in RFC2356. IGMP is a protocol for determining whether or not a multicast group member exists in the local network to which the multicast router belongs so that the multicast data can be efficiently transferred. At the draft level of IETF, DVMRP (Distance Vector Multicast Routing Protocol) and MOSPF (Multicast Open Shortest First) are available as routing protocols for MBONE, a global multicast virtual experiment network. Both create a tree for multicast data transfer. The above technique is for efficiently performing multicast data transfer.
[0003]
With regard to the large scale of multicast, in the current situation where the number of users has increased explosively with the recent infrastructure development of the Internet, it is very important that the multicast service has the scalability to cope with the large scale. Yes. Under such circumstances, a wireless line having a very high affinity is attracting attention as a multicast transmission medium. Terrestrial digital communication networks, mobile communication networks, and satellite communication networks are gradually being prepared. In particular, satellite links with wide area and high speed are attracting attention as a powerful base for dealing with large-scale multicast communications. Utilizing this feature, it has been put into practical use as a broadcast-type service such as in-house broadcasting, educational TV broadcasting, and image download system for branch offices distributed from the head office. In addition, data distribution services using the gap between broadcast waves are spreading to homes.
[0004]
As techniques for improving the reliability of multicast data, there are a technique for adding an error correction code to data and a technique for performing retransmission control. Since retransmission control can obtain the highest reliability, retransmission control based on delivery confirmation is adopted for file distribution, program download, version upgrade, and corporate data distribution. There are basic GO-Back-N method and Selective Repeat method in retransmission control technology. Reference 1 (Fujibe, Kobayashi, Nakayama, “Problems and Proposals for Highly Reliable Multicast Communication Systems in Multimedia Satellite Communication” (Science Technical Report SAT96-127, 1997-01) includes methods that combine or modify them. Further, as shown below, there are various methods for improving the system throughput of a multicast system to which retransmission control is added, which are separated according to the timing of transmission control, delivery confirmation control, and retransmission control. .
[0005]
(1) Delivery confirmation and retransmission control after transmission control is completed, for example, Reference 2 (Joshishita, Takahashi, and other three authors “Applicability of Reliable Multicast Communication Protocol (RMTP) to Various Networks” (Science and Technology) RMTP) disclosed in SSE95-196, 1996-03).
[0006]
(2) A method for performing retransmission control after performing transmission control and delivery confirmation in parallel, for example, Reference 3 (StarBurst MFTP; White Paper “An Efficient, Scalable Method for Distributing Information Using IP Multicast "), and reference 4 (Mentat, USA XTP4.0;" XTP protocol as seen from TCP / IP "by Eguchi, magazine Bit Vol. 28 No. 4, 1996-04).
[0007]
(3) A method of performing transmission control, delivery confirmation and retransmission control in parallel (see Document 2)
There is. Both are based on IP or UDP. In addition, in order to reduce the load on the transmission host for acknowledgment and retransmission control, Reference 5 (BN Levine et al., “A comparison of known Classes of Reliable Multicast Protocols” ICNP1996-Oct, Columbus Ohio) Discloses a method in which retransmission control timing is dispersed in time and only a delivery confirmation that is not normally received is notified.
[0008]
[Problems to be solved by the invention]
For example, the above-mentioned delivery confirmation and retransmission control can be used when data is reliably multicasted without error to a large number of users, such as a service that distributes software such as game software to tens of thousands of contract users who use the Internet. It is important to adopt This is an indispensable means especially when using a wireless line whose quality is not high. In such a case, if the number of users becomes enormous, the load on the transmission host related to delivery confirmation or retransmission control cannot be reduced regardless of contrivances such as time dispersion, and much time is required for distribution. Also, due to problems such as part of the network line or traffic congestion, part of the multicast tree created by DVMRP or MOSPF is interrupted, making data delivery impossible or lengthening the transmission time, which adversely affects the entire system. May cause effects.
[0009]
An object of the present invention is to provide a large-scale multicast communication system capable of solving the above-described problems and reliably transmitting data to a large number of users.
In particular,
(1) Distributing the load on the sending host for delivery confirmation and retransmission control;
(2) avoid traffic congestion and data transmission stagnation;
(3) To suppress the consumption of network resources such as routers,
It is to provide a multicast communication method using the same, a multicast communication system using the same, an individual communication device necessary for constructing the system, and a program for realizing these communication devices on a computer.
[0010]
[Means for Solving the Problems]
In order to achieve the above object, the present invention is characterized in that a host that transmits multicast data dynamically controls the configuration of a host group (also referred to as a multicast group) according to network conditions.
In another aspect, the present invention is characterized in that a route from a transmission host to a host constituting a multicast group, that is, a multicast tree is dynamically reconfigured.
In general, a network is composed of network nodes with routing functions. Specifically, it may be a router, a gateway, or a normal PC as long as it has a path control function.
[0011]
As a control method, a host group is configured to include normally received hosts (for example, one or more newly created or the configuration of an existing host group is changed).
Further, the present invention is characterized in that the normally received host is caused to perform a part of communication processing for a newly created or changed host group to which the host belongs.
As another aspect, the present invention is characterized in that a multicast tree is reconstructed with a normally received host as a new transmission host.
Furthermore, in the multicast communication system of the present invention, the designated host comprises means for sending the received data delivery confirmation to the sending host, and means for requesting retransmission of data that could not be received normally. To do.
[0012]
According to the multicast communication system of the present invention, the load on the transmission host can be distributed, and a large-scale multicast system can be realized. In addition, according to some trouble situations, it becomes possible to avoid traffic congestion and data transmission stagnation by reconfiguring the host group and transferring the processing to the designated host. That is, it is possible to improve the efficiency of the retransmission control process that is responsible for high reliability, and it is possible to prevent a reduction in system efficiency.
Further, the present invention is characterized in that a wireless line, particularly a satellite line, is used for a route between a plurality of hosts. By configuring the reconfigured host group by direct connection via a wireless (satellite) line without going through a network node such as a router, the influence of communication processing such as delivery confirmation or retransmission control is not exerted on other networks. It becomes possible not to be influenced by other networks, and it becomes possible to improve the efficiency of communication processing and prevent the system efficiency from being lowered.
[0013]
Further, the present invention is characterized in that, in a system that requests retransmission of data that could not be normally transmitted, the host group newly created or changed by the designated host is retransmitted by multicast.
The communication processing apparatus used in the present invention includes means for notifying definition information of a reconfigured host group between nodes constituting the network, and performs communication processing closed to the reconfigured host group. And
Further, the communication processing apparatus used in the present invention is characterized by comprising means for selecting a normal receiving host that minimizes the network cost with the hosts constituting the new or changed host group.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments using the present invention will be described below with reference to the drawings.
FIG. 1 is a system configuration diagram for explaining the outline of the present invention. The system includes a plurality of
[0015]
In this case, the
[0016]
In this figure, hosts 159 and 151 are designated as normal hosts, and two
[0017]
The
[0018]
The
[0019]
The designated hosts 151 and 159 serve as masters for retransmission control of the
[0020]
In this way, depending on the reception status and traffic status, the host group necessary for retransmission is temporarily defined together with the designated host, and retransmission control is performed locally to perform retransmission control, thereby enabling large-scale highly reliable multicast Service can be handled. Also, by performing locally closed communication processing, compared to the case of retransmitting from the
[0021]
Next, referring to FIG. 2, a description will be given of an embodiment in the case of using a satellite line which is a transmission medium having wide area and broadcast capability and very effective for large-scale multicast communication. In FIG. 2, 200 is a communication satellite, 210 and 220 to 234 are earth station devices that convert data to satellite channels and transmit / receive data, 211, 240 to 247, and 290 to 295 are connected to the
[0022]
In the same manner as described above, the data is divided into frames, and the
[0023]
(1) Hosts having the same frame non-reception rate (definition will be described later) are set to the same group.
(2) Hosts with the same frame unreceived pattern (definition will be described later) are set to the same group.
(3) Hosts in the same region are grouped together
The selection of the designated host may be based on being physically close to the generated host group as much as possible.
[0024]
The designated host 246 is responsible for the
In the following, an embodiment of a method for performing retransmission control after performing transmission control and delivery confirmation in parallel and transmitting data in a row as shown in the above-described conventional technology will be described.
[0025]
FIG. 3 shows a sequence in this embodiment. FIG. 3A shows a sequence for performing transmission control and delivery confirmation in parallel, and FIG. 3B shows an example of a sequence for retransmission control. FIG. 3A shows that the
[0026]
Note that performing in parallel means sending the reception status (acknowledgment confirmation) for the data frames received so far while receiving multicast data, for example, in units of frames. The timing for sending the reception status can be arbitrarily selected according to the delivery confirmation method employed. For example, a method of confirming delivery for every window size or confirming delivery for every certain amount of received data is possible. Also, transmission control is transmission of multicast data including retransmission. The delivery confirmation means that the transmission side recognizes whether the multicast data is normally received or received in error by notifying the transmission side of the reception status for the multicast data.
[0027]
In the NACK (X, Y) frame for notifying that there is an unreceived frame, X is the host identifier, and Y is the unreceived frame number to notify the unreceived frame. In the figure, the
[0028]
FIG. 4 shows a configuration example of a main apparatus that executes the sequence of FIG. In this figure, a
[0029]
FIG. 5 is a block diagram showing a configuration of the
[0030]
The I /
[0031]
FIG. 6 shows an
[0032]
FIG. 7 shows the format of an
[0033]
The
[0034]
First, the data transmission processing procedure of the
[0035]
In FIG. 2, a multicast address is assigned for the
[0036]
If it is determined in
[0037]
The
[0038]
Next, a reception processing procedure of the
[0039]
FIG. 10 shows the
[0040]
The
[0041]
FIG. 11 shows a reception status management table 1100 managed by the
[0042]
Here, the definition in this invention is illustrated about the above-mentioned frame unreception rate and a frame unreception pattern.
[0043]
The frame non-reception rate of each receiving host is, for example, when the total number of data frames is dt.
Frame unreceived rate = Host unreceived frames / dt
Defined by The number of unreceived frames is counted for each receiving host based on the table of FIG. In the case of the
[0044]
The frame non-reception pattern is defined as follows, in which the rate of matching frame numbers compared to other hosts is calculated among the non-reception frames of each reception host summarized in FIG. The following formula shows the coincidence rate when the
[0045]
Match rate (host 290 → host 291) =
Number of frames with the same number as
When the IP packet storing the NACK frame is received in
[0046]
In
[0047]
In
[0048]
In FIG. 2, the
[0049]
FIG. 13 shows an IP multicast correspondence table for each application managed by the
[0050]
FIG. 14 shows a private IP multicast management table 1400. For example, if this table is used by a company, one master server that manages this table is set up and managed in the company. Necessary hosts are registered in the private IP multicast management table 1400 to obtain private IP multicast. The private IP multicast that can be used uses 239.192.0.0-239.251.255.255, which is locally allocated by IETF. The private IP multicast management table 1400 describes the host IP address of the acquisition source. If unused, it is 0.0.0.0.
[0051]
FIG. 15 illustrates a processing procedure of the
[0052]
When the IP packet storing the host group notification frame is received from the input /
[0053]
In
[0054]
In
[0055]
FIG. 17 shows a processing procedure of the
[0056]
It is determined whether the retransmission frame received in
[0057]
As another embodiment, a method of performing multicast by a method of performing delivery confirmation and retransmission control after the end of transmission control is also conceivable. In this method, since the delivery confirmation notification is performed after the multicast data is transmitted, it is realized by changing the timing of the delivery confirmation notification of the
[0058]
As a third embodiment, a method of performing transmission control, delivery confirmation, and retransmission control in parallel as shown in FIG. 18 will be described. In this case, since the NACK frame is retransmitted without completing a single transmission of multicast data, the processing procedure of the
[0059]
First, the host group notification frame of the
[0060]
Next, a description will be given of an embodiment of a multicast system in which a designated host is determined in advance and delivery confirmation and retransmission control are performed by the designated host. FIG. 19 shows the system configuration. In this figure, a
[0061]
Each designated host aggregates delivery confirmation notifications from other hosts in the host group to which it belongs and notifies the
[0062]
FIG. 20 shows a format of the control information 2000 of the received total frame. The control information includes a
[0063]
Next, an example in which the
In FIG. 19, the transmission host selects the
[0064]
By dynamically changing the host group at the time of retransmission control as in this embodiment, a normal reception host can receive multicast data without being affected by an unreceived host. By newly configuring a host group with only necessary hosts, retransmission processing can be made more efficient.
[0065]
Next, an implementation configuration when the present invention is applied to a land line will be described.
As described with reference to FIG. 1, in order to distribute multicast data on the ground unlike satellite links, it must pass through a plurality of networks on the multicast tree. Specifically, the network node that is a constituent element of the tree corresponds to a router, a gateway, or a computer having a path control function, and a router is usually used as a network node. In a network composed of these routers, when performing multicast, the Internet uses IGMP, DVMRP, and MOSPF as described in the prior art.
[0066]
In order to realize the dynamic multicast of the present invention based on these techniques, control information in a format in which an IGMP message is extended as shown in FIG. 21 is exchanged between multicast-compatible routers.
FIG. 21 shows an example in which the
[0067]
FIG. 22 shows the configuration of the
[0068]
The processing procedure of the router according to the present invention will be described with reference to FIG. When the host
With the operation in FIG. 23, communication processing using the private IP multicast address is performed only in the private IP multicast group in charge of the designated host.
[0069]
Next, an embodiment in which multicast data can be easily received by dynamically changing the host group even when the receiving host moves will be described. When the host is moved in this way, a wireless line covering a wide area such as a satellite line is very advantageous, but the ground line in FIG. Here, the operation when the receiving host of the multicast system using the satellite line moves under the control of another earth station apparatus will be described with reference to FIG.
[0070]
In this figure, the sending
[0071]
That is, when the moving
[0072]
When the
[0073]
Although the above embodiment has been described on the assumption of a satellite communication network, it can also be applied to terrestrial digital communication networks and mobile communication networks, which are other multicast transmission media.
[0074]
As described above, according to the present invention, the load on the transmission host can be distributed and a large-scale multicast system can be realized. In addition, according to some trouble situations, it becomes possible to avoid traffic congestion and data transmission stagnation by reconfiguring the host group and leaving it to the designated host belonging to the host group.
[0075]
In addition, the reconfigured host group can be configured by direct connection via a wireless (satellite) line without going through a network node such as a router. In addition, it is possible not to affect other networks by communication processing such as delivery confirmation or retransmission control, and it is possible not to be affected by other networks, and it is possible to improve the efficiency of communication processing and prevent the system efficiency from decreasing. become.
[0076]
【The invention's effect】
As described above, according to the present invention,
(1) A large-scale multicast system can be realized by distributing the load on the sending host.
(2) Traffic congestion and data transmission stagnation can be avoided.
(3) The consumption of network resources such as routers can be suppressed.
(4) It is possible to prevent the communication processing efficiency from being improved and the system efficiency from being lowered.
There is an effect
[Brief description of the drawings]
FIG. 1 is a system configuration diagram illustrating an outline of the present invention.
FIG. 2 is a diagram illustrating an outline of an embodiment in which the present invention is applied to a network using a satellite line.
FIG. 3 is a sequence diagram showing a specific embodiment using the satellite line of the present invention.
4 is a diagram showing a system configuration example for executing the sequence of FIG. 3; FIG.
FIG. 5 is a configuration diagram of a communication processing apparatus that executes the present invention;
FIG. 6 is a format diagram of an IP packet standardized by IETF.
FIG. 7 is a format diagram of a frame used in the embodiment of the present invention.
FIG. 8 is a flowchart illustrating a transmission processing procedure of a communication processing apparatus of a host that transmits multicast data according to the embodiment.
FIG. 9 is a control information format diagram of a NACK frame notifying an unreceived frame.
FIG. 10 is a control information format diagram of a host group notification frame for notifying a new host group.
FIG. 11 is a reception state management table managed by a communication processing apparatus connected to a transmission host.
FIG. 12 is a flowchart illustrating a host group definition and notification processing procedure of a communication processing apparatus connected to a transmission host.
FIG. 13 is an IP multicast correspondence table managed by a transmission host.
FIG. 14 is a private IP multicast address management table.
FIG. 15 is a diagram illustrating a processing procedure according to the present invention of a communication processing apparatus connected to a designated host.
16 is a control information format diagram of a retransmission completion frame used in the embodiment of FIG. 3;
FIG. 17 is a diagram illustrating a processing procedure related to retransmission control of a communication processing apparatus connected to an unreceived host.
FIG. 18 is a sequence diagram showing a specific embodiment using a satellite line.
FIG. 19 is a diagram illustrating an example of changing a host group according to the present invention.
FIG. 20 is a control information format diagram of a received total frame used in the embodiment of FIG. 19;
FIG. 21 is a host group message format diagram exchanged between routers to implement the present invention.
FIG. 22 is a configuration diagram of a router.
FIG. 23 is a diagram illustrating a processing procedure of a router according to the present invention.
FIG. 24 is a diagram illustrating an embodiment when the present invention is applied to a mobile host.
[Explanation of symbols]
100: Sending host,
151,159 ... Nominated host,
130, 131, 132, 133, 134 ... router,
152, 153, 154, 160, 162, 163 ... unreceived hosts,
200 ... communication satellite,
170, 171, 270, 280 ... Private IP multicast group,
210, 227, 235 ... Earth station device,
400: Communication processing device.
Claims (6)
前記他のホストのうち,送信された前記データを受信した受信ホストは,前記送信ホストへ,送達確認を送信する手段を備え,The receiving host that has received the transmitted data among the other hosts includes means for transmitting a delivery confirmation to the transmitting host,
前記送信ホストは,The sending host is
前記複数の他のホストから,前記送信データに対する送達確認を受信する手段と,Means for receiving a delivery confirmation for the transmitted data from the other hosts;
受信した前記送達確認に基づき,前記受信ホストの中から,前記他のホストのうち前記データの送達を確認できなかった未受信ホストに対する前記通信処理を行わせる指名ホストを選択する手段と,を備え,Means for selecting, based on the received delivery confirmation, a designated host for performing the communication process for the unreceived host that could not confirm delivery of the data among the other hosts from the receiving host; ,
選択された前記指名ホストは,前記未受信ホストに対する前記通信処理を行う手段を備えるThe selected designated host includes means for performing the communication process with respect to the unreceived host.
ことを特徴とするマルチキャスト通信システム。A multicast communication system.
前記送信ホストは,受信した前記送達確認に基づき,前記受信ホストと,前記未受信ホストと,からなるホストグループを構成する手段と,The sending host comprises means for configuring a host group comprising the receiving host and the unreceived host based on the received delivery confirmation;
前記構成したホストグループ内の前記受信ホストの中から,指名ホストを選択する手段と,を備え,Means for selecting a designated host from the receiving hosts in the configured host group,
選択された前記指名ホストは,当該指名ホストが属する前記ホストグループに含まれる他の前記未受信ホストに対する前記通信処理を行う手段を備えるThe selected designated host includes means for performing the communication process with respect to the other unreceived hosts included in the host group to which the designated host belongs.
ことを特徴とするマルチキャスト通信システム。A multicast communication system.
前記通信処理は,前記未受信ホストへの再送処理であり,The communication process is a retransmission process to the unreceived host,
選択された前記指名ホストは,前記未受信ホストに対し,当該指名ホストが受信済みの前記データを再送する手段を備えるThe selected designated host includes means for resending the data received by the designated host to the unreceived host.
ことを特徴とするマルチキャスト通信システム。A multicast communication system.
前記複数の他のホストは,指名ホストと,その他のホストと,からなるホストグループを,予め一つ以上構成し,The plurality of other hosts are configured in advance with at least one host group including a designated host and other hosts,
前記指名ホストは,前記送信ホストから当該ホストグループ内の他のホストへ送信されたデータの送達確認を集計し,前記送信ホストへ送信する手段と,The designated host includes means for counting delivery confirmations of data transmitted from the transmission host to other hosts in the host group and transmitting to the transmission host;
前記送信ホストは,前記指名ホストから送信された送達確認に基づき,送信された前記データを受信した受信ホストと,前記データの送達を確認できなかった未受信ホストからなる新たなホストグループを構成し,The sending host forms a new host group consisting of a receiving host that has received the sent data and an unreceived host that has not been able to confirm the delivery of the data, based on the delivery confirmation sent from the designated host. ,
前記新たなホストグループ内の前記受信ホストの中から,新たな指名ホストを選択する手段と,を備え,Means for selecting a new designated host from the receiving hosts in the new host group,
前記新たな指名ホストは,当該新たな指名ホストが属する前記新たなホストグループに含まれる他の前記ホストに対し,受信済みの前記データを再送する手段を備えるThe new designated host includes means for retransmitting the received data to other hosts included in the new host group to which the new designated host belongs.
ことを特徴とするマルチキャスト通信システム。A multicast communication system.
前記複数のホストは,
受信したデータ送達確認を送信ホストに送る手段と,
正常に受信できなかったデータの再送を要求する手段とを備える
ことを特徴とするマルチキャスト通信システム。In the multicast communication system according to any one of claims 1 to 4 ,
The plurality of hosts are:
Means for sending the received data delivery confirmation to the sending host;
And a means for requesting retransmission of data that could not be normally received.
前記ネットワークに無線回線を用いる
ことを特徴とするマルチキャスト通信システム。In the multicast communication system according to any one of claims 1 to 5 ,
A multicast communication system using a wireless line for the network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13372199A JP3692830B2 (en) | 1999-05-14 | 1999-05-14 | Multicast communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13372199A JP3692830B2 (en) | 1999-05-14 | 1999-05-14 | Multicast communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000324155A JP2000324155A (en) | 2000-11-24 |
JP3692830B2 true JP3692830B2 (en) | 2005-09-07 |
Family
ID=15111366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13372199A Expired - Fee Related JP3692830B2 (en) | 1999-05-14 | 1999-05-14 | Multicast communication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3692830B2 (en) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001203747A (en) * | 2000-01-21 | 2001-07-27 | Space Communications Corp | Content service method |
JP3908490B2 (en) * | 2000-08-03 | 2007-04-25 | 株式会社エヌ・ティ・ティ・ドコモ | Retransmission control method and system in multicast distribution service, retransmission control apparatus, radio base station, and radio terminal |
US9100457B2 (en) | 2001-03-28 | 2015-08-04 | Qualcomm Incorporated | Method and apparatus for transmission framing in a wireless communication system |
US8121296B2 (en) | 2001-03-28 | 2012-02-21 | Qualcomm Incorporated | Method and apparatus for security in a data processing system |
US8077679B2 (en) | 2001-03-28 | 2011-12-13 | Qualcomm Incorporated | Method and apparatus for providing protocol options in a wireless communication system |
JP2002318751A (en) * | 2001-04-20 | 2002-10-31 | Sony Corp | Communication system |
US7352868B2 (en) | 2001-10-09 | 2008-04-01 | Philip Hawkes | Method and apparatus for security in a data processing system |
US7649829B2 (en) | 2001-10-12 | 2010-01-19 | Qualcomm Incorporated | Method and system for reduction of decoding complexity in a communication system |
US7599655B2 (en) | 2003-01-02 | 2009-10-06 | Qualcomm Incorporated | Method and apparatus for broadcast services in a communication system |
US8098818B2 (en) | 2003-07-07 | 2012-01-17 | Qualcomm Incorporated | Secure registration for a multicast-broadcast-multimedia system (MBMS) |
US8718279B2 (en) | 2003-07-08 | 2014-05-06 | Qualcomm Incorporated | Apparatus and method for a secure broadcast system |
US8724803B2 (en) | 2003-09-02 | 2014-05-13 | Qualcomm Incorporated | Method and apparatus for providing authenticated challenges for broadcast-multicast communications in a communication system |
AU2004277204A1 (en) * | 2003-09-22 | 2005-04-07 | Transeam Technologies | Group-to-group communication over a single connection and fault tolerant symmetric multi-computing system |
JP4521368B2 (en) * | 2006-02-24 | 2010-08-11 | 株式会社東芝 | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM |
US8279893B2 (en) | 2006-06-16 | 2012-10-02 | Nvidia Corporation | System and method for communicating data utilizing multiple types of data connections |
JP5672063B2 (en) * | 2011-02-24 | 2015-02-18 | 富士通株式会社 | Transmission control program, communication apparatus, and transmission control method |
US9814052B2 (en) | 2013-02-14 | 2017-11-07 | Mitsubishi Electric Corporation | Data distribution system, distribution device, terminal device, and data distribution method providing enhanced communication efficiency |
JP6942609B2 (en) * | 2017-10-31 | 2021-09-29 | キヤノン株式会社 | Communication equipment, communication methods, and programs |
WO2019187551A1 (en) * | 2018-03-26 | 2019-10-03 | 三菱電機株式会社 | Multicast delivery destination designation method, transmission station, and reception station |
-
1999
- 1999-05-14 JP JP13372199A patent/JP3692830B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000324155A (en) | 2000-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3692830B2 (en) | Multicast communication system | |
Levine et al. | Improving internet multicast with routing labels | |
Gossain et al. | Multicast: Wired to wireless | |
Chikarmane et al. | Multicast support for mobile hosts using mobile IP: Design issues and proposed architecture | |
KR100946108B1 (en) | Method and apparatus for group communication with end-to-end reliability | |
CN102263648B (en) | System and method for grouping multiple VLANs into a single 802.11 IP multicast domain | |
CA2151072C (en) | Method of multicasting | |
CN1543728B (en) | Multicast in point-to-point packet-switched telecommunication networks | |
Li et al. | OTERS (On-tree efficient recovery using subcasting): A reliable multicast protocol | |
US6625773B1 (en) | System for multicast communications in packet switched networks | |
US7054948B2 (en) | Collaborative host masquerading system | |
JP4698684B2 (en) | A method for aggregating data traffic on an access domain and nodes relating to the method | |
US8838692B2 (en) | Distribution of XML documents/messages to XML appliances/routers | |
US20030031175A1 (en) | Method of multicasting | |
Hofmann | Enabling group communication in global networks | |
CN1675882A (en) | Satellite IP multicasting system and method | |
JP4436960B2 (en) | Packet communication system and mobile communication system | |
CN100417141C (en) | A method for realizing multicast service | |
CN100490405C (en) | Flow medium data multi-point transmission method | |
EP1699169A1 (en) | Wireless base station, wireless mobile device, and wireless access network for reducing signalling traffic | |
CN101120546B (en) | Method and nodes for handling broadcast messages over an access domain | |
Whetten et al. | TRACK Architecture: A Scalable Real-time Reliable Multicast Protocol | |
KR100432937B1 (en) | Multicast routing method and system for delivering multicast data with high-efficient on a mobile network | |
JPH11127151A (en) | Multicast method | |
Hofmann | Scalable Multicast Communication in the Internet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041203 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041207 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050207 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050531 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050613 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090701 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100701 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110701 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110701 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120701 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130701 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |