JP2004222029A - Multi-cast receiver and transmitter - Google Patents

Multi-cast receiver and transmitter Download PDF

Info

Publication number
JP2004222029A
JP2004222029A JP2003007969A JP2003007969A JP2004222029A JP 2004222029 A JP2004222029 A JP 2004222029A JP 2003007969 A JP2003007969 A JP 2003007969A JP 2003007969 A JP2003007969 A JP 2003007969A JP 2004222029 A JP2004222029 A JP 2004222029A
Authority
JP
Japan
Prior art keywords
host
receiving device
packet
transmission
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003007969A
Other languages
Japanese (ja)
Other versions
JP4135507B2 (en
Inventor
Hiroshi Mitani
浩 三谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2003007969A priority Critical patent/JP4135507B2/en
Publication of JP2004222029A publication Critical patent/JP2004222029A/en
Application granted granted Critical
Publication of JP4135507B2 publication Critical patent/JP4135507B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To easily realize multi-cast communication of a relatively small scale on an IP network. <P>SOLUTION: The multi-cast receiver is equipped with a transfer destination information holding means for holding information on the packet transfer destination; a data conversion means for taking out the packet to be transferred and rewriting it into a transfer packet on the basis of the transfer destination information held by the transferred party information holding means; an instantaneous transmission data holding means for holding the transfer packet rewritten by the data conversion means; and a transmission multiplexer for receiving a transmission packet from a transmission queue storing an ordinary transmission packet and the transfer packet held in the instantaneous transmission data holding means, and transmitting the transfer packet preferentially to a transmission data buffer temporarily holding the data to be transmitted. The packet which coincides with conditions for multi-casting is immediately transferred. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、IP(インターネットプロトコル)によって、ネットワーク上の特定のグループに属するホストにのみデータ送信を行う、マルチキャスト通信に関する。
【0002】
【従来の技術】
IPネットワーク上において、一つの送信元から、複数の受信先に向けてデータ送信を行うマルチキャストは、現在、おもに無線技術を用いて行われる放送に類似した情報伝搬形態として根強い需要がある。これに応える標準的な方法としてIPマルチキャストと呼ばれる通信方式が提案されている(例えば、特許文献1参照)。
図16は従来のマルチキャストを説明するための構成図である。カメラ1501によって撮影された映像情報が、送信装置1502によってパケット化され、ネットワーク上にマルチキャストされる。送信装置1502からのマルチキャストパケットは、まずルータ1508によってそのパケットの複製が作られ、受信装置1504と受信装置1505に送り届けられる。それぞれの受信装置においてマルチキャストパケットは映像信号に復号され、ビデオモニタ1506、ビデオモニタ1507にカメラ1501によって撮影された映像が表示される。
【0003】
ルータ1508によって複製されたマルチキャストパケットは、ルータ1510にも送られ、ここでさらに複製が作られ、受信装置1512、受信装置1515、受信装置1516に送り届けられる。このようにして、カメラ1501によって撮影された映像は、ビデオモニタ1513、ビデオモニタ1517、ビデオモニタ1518にも表示される。
【0004】
ここでのポイントは、同じ事を実現しようとして送信装置1502がすべての受信装置に直接送信した場合に比べて、ネットワーク上に流れるパケットの量を少なくすることができることである。例えば、送信装置1502が5台の受信装置にパケットを送る場合、ルータ1508とルータ1510の間には同じ情報を運ぶ3つのパケットが必要であるのに対し、IPマルチキャストを使うと、ルータ1510より下流側にある受信装置が必要とするパケットは、ルータ1510で複製が作られるので、複製のもとになる1つのパケットだけで済む。
このように、多数の受信ホストに対してデータ送信を行う場合にも、IPマルチキャストを使うと効率よくデータを送ることができる。
【0005】
【特許文献1】
特開平06−224912号公報
【0006】
【発明が解決しようとする課題】
しかしながら、前記従来の構成では、ルータにおいてパケットの複製を作ることが必要である。このため、マルチキャストを行うためにはルータに複製を作る機能が備わっていること、利用にあたっては事前にルータがしかるべく複製機能を実行するするように設定されていることが必要である。また、パケットの複製が送信装置とは別の場所で行われているため、送信装置側でどんな受信装置がマルチキャストを受信しているのか把握することが困難である。
【0007】
前者については、事前に利用が予定でき、機材やネットワークの準備、ルータ管理者との折衝が問題にならないような大規模な用途では問題にならないが、突発的かつ小規模な用途では大きな障害となる。また後者については課金や情報漏洩管理の上で問題となることがある。
【0008】
本発明は、前記従来の課題を解決するもので、同一ネットワークセグメント内のような比較的小規模な範囲でのマルチキャストに適用可能で、ルータにパケットを複製させる機能が不要で、したがってルータに事前の設定を必要とせず、また、送信装置側においてマルチキャストを受信している受信装置を認識することができるマルチキャスト機能を提供することを目的とする。
【0009】
【課題を解決するための手段】
第1の発明は、ネットワーク上に存在する複数のホストのうち、特定のグループに属する受信装置にのみ送信データを配信するマルチキャスト機能を実現するマルチキャスト受信装置であって、パケットの転送先の情報を保持する転送先情報保持手段と、受信パケットのうち、転送すべきパケットを取り出し、転送先情報保持手段に保持された転送先情報に基づいて転送パケットに書き換えるデータ変換手段と、前記データ変換手段によって書き換えられた転送パケットを保持する即時送信データ保持手段と、通常の送出パケットを蓄える送信キューからの送信パケットと、前記即時送信データ保持手段に保持された転送パケットとを受け、送信すべきデータを一時的に保持する送信データバッファに優先的に転送パケットを送り込む送信マルチプレクサとを備えたマルチキャスト受信装置である。第1の発明においては、マルチキャストすべき条件に一致したパケットをただちに転送することができ、転送に必要な遅延を低減できる。
【0010】
第2の発明は、送信パケット比較手段によって認識された特定の送信パケットの送出時刻に計時を開始し、受信パケット比較手段によって認識された特定の受信パケットの受信時刻に計時を停止するタイマー手段とを備えるマルチキャスト受信装置である。
第2の発明においては、特定のホストの応答時間を精密に計測することができ、自受信装置と特定のホストとのネットワーク上の距離を容易に見積もることができる。
【0011】
第3の発明は、受信装置からの送信装置の探索に応答する参加要求処理手段と、受信装置からの接続要求に対して、その受信装置が接続すべきホストのホスト情報を通知する接続要求処理手段と、受信装置からのマルチキャストグループからの離脱の要求を処理する離脱要求処理手段と、受信装置からの挿入の要求を処理する挿入要求処理手段とを備えるマルチキャスト送信装置である。
【0012】
第4の発明は、マルチキャストのデータ送信の起点となっている送信装置を探索する送信装置発見手段と、マルチキャストグループの接続状態を認識するために、探索リストを作成する接続点探索処理手段と、探索リストの中から、自受信装置がデータを受信すべき送信元ホストを選択し、自受信装置を経由してデータの受信送信がなされるよう設定を行う挿入処理手段と、他の受信装置からの接続要求に対して、その受信装置が接続すべきホストのホスト情報を通知する接続情報提供処理手段と、マルチキャストグループから離脱する際には、マルチキャストデータの送り受けが途切れないように設定を行うとともに、送信装置に対してマルチキャストグループからの離脱を要求する離脱処理手段と、マルチキャストすべきパケットを受信した際には、単一の受信装置にパケットを直ちに送信する送信処理手段とを備えた請求項1または2に記載の受信装置である。
第3、第4の発明においては、送信装置と受信装置とが、マルチキャストデータの送信装置を起点として、複数の受信装置が縦列接続する構成に整列させることができる。また、送信装置は、すべての受信装置からの接続要求を受けることから、マルチキャストグループに属する受信装置を把握することができる。
【0013】
【発明の実施の形態】
まず本発明の実施の形態にかかるマルチキャスト送信装置および受信装置によって実現されるマルチキャスト機能と、上述した従来のマルチキャスト機能の違いについて説明する。
【0014】
図15は、従来例を示す図16の構成図では説明に不要なため省略したイーサネット(R)スイッチや、比較的大きな伝送遅延を生じるルータ1508とルータ1510の間の広域ネットワークを含む本来のネットワークの構成図である。この構成において、カメラ1501によって撮影された映像情報が、送信装置1502によってパケット化され、受信装置1504、1505、1512、1515、1516に送り届けられ、ビデオモニタ1506、1507、1513、1517、1518に表示されるマルチキャストを想定する。
【0015】
従来のマルチキャスト技術では、上述のように図16の構成図上の矢印で示される経路に沿ってマルチキャストデータが送られる。一方、本発明の実施の形態にかかるマルチキャスト送信装置および受信装置によって実現されるマルチキャスト機能においては、図17のネットワーク構成図上の矢印で示される経路に沿ってマルチキャストデータが送られる。
【0016】
すなわち、送信装置1502をマルチキャストデータの送信の起点として、受信装置1504、受信装置1505、受信装置1512、受信装置1515、受信装置1516の順に受信装置を一筆書きに縦列に接続する経路を設定する。おのおのの受信装置ではマルチキャストデータを受信し、映像情報に復号すると同時に、受信したマルチキャストデータを他の受信装置に送信する。このように、順次マルチキャストデータを受信装置間で転送していくことでマルチキャスト機能を実現する。
【0017】
以下、図面を参照しながら、上述の図17のネットワーク構成図に示されたマルチキャスト機能を実現する本発明の実施の形態にかかるマルチキャスト送信装置および受信装置について説明する。
【0018】
図1は、本発明の実施の形態にかかるマルチキャスト受信装置においてマルチキャストデータの転送機能を実現する部分のブロック図である。
受信装置がネットワークから受信したパケットはまず受信データバッファ101に保持される。受信したパケットに付属する誤り検査符号は誤り検出器102によって検査され、誤りがないと判定されたパケットは転送ゲート103を経て、受信キュー104に蓄えられる。受信キュー104に蓄えられた受信パケットは、そのプログラムがROM105に記憶されたCPU106によってRAM107に読み出される。
一方、受信装置からパケットをネットワークに向けて送信する場合は、CPU106が送信すべきパケットを送信キュー108に蓄積する。送信キューに蓄積された送信パケットは、送信マルチプレクサ109を経て、送信データバッファにおかれ、ネットワークへの送出条件が整い次第ネットワークに送信される。
マルチキャストパケットを転送するには、まずCPU106がマルチキャストパケットとその他のパケットを識別するための情報を転送条件保持メモリ111に記憶させる。識別に有効な情報としては、送信元ホストのアドレス情報、UDP/IP方式を用いる場合には、ポート番号などのパケットヘッダ情報や、ユーザデータ部内に設けた識別データなどを用いることができる。
つぎにCPU106は、マルチキャストデータを運ぶパケットを受信した時、これを転送するための情報を転送先情報保持メモリに記憶させる。転送に必要な情報とは、転送先のホストのアドレス情報、あるいは転送を仲介してくれるルータなどが存在する場合はそのアドレスなどである。
比較器113は、パケット受信毎に、受信データバッファ101内の受信パケットと、転送条件保持メモリ111の内容を比較し、マルチキャストすべきパケットかどうかを識別する。比較器113がマルチキャストパケットを識別し、かつ、誤り検出器102が受信パケットに誤りがないと判定した場合には、データ変換器114は、その受信パケットを受信データバッファ101から取り出し、転送先情報保持メモリに記憶された転送先情報に基づいて受信パケットを、つぎの受信装置に転送できるよう転送パケットに変換する。
データ変換器114が変換した転送パケットは、即時送信メモリ115に置かれる。送信マルチプレクサ109は、送信すべき送信パケットが送信キュー108に蓄積されていても、即時送信メモリ115に転送パケットが存在する場合は、転送パケットを優先的に送信データバッファに送り込む。
上述の構成によって、マルチキャストすべきパケットを受信した時には、受信パケットをただちに転送することができる。
図17に示した経路に沿ってマルチキャストを実現する場合、マルチキャストパケットが順次、受信装置を辿っていくため、一つの受信装置を通過する際の処理時間が累積していく、また、パケットが途中の受信装置で失われたばあい、その受信装置より下流側のすべての受信装置にそのパケットが届かなくなる。
本発明のマルチキャスト受信装置においては、CPU106の介在なしに、また、他のパケットが処理されるのを待っている受信キュー104と、送信キュー108を通ることがないので、転送に要する所要時間を最小にすることができる。また、CPU106の処理負荷が重く、パケットの処理ができない場合にもパケットを失うことがないので、確実にマルチキャストパケットを送り届けることができる。
【0019】
図2は、本発明の実施の形態にかかるマルチキャスト受信装置において特定のホストまでのネットワーク上での距離を応答時間によって計測する機能を実現する部分のブロック図である。
まず、応答時間の計測に先だって、CPU106は自ホストから送り出すパケットを識別するための識別情報をパターン保持メモリ201に記憶させる。次に、応答時間を計測したいホストから応答として帰ってきたパケットを識別するための識別情報をパターン保持メモリ202に記憶させる。
一般に、IPネットワーク上では、他のホストに向かってパケットを送信し、そのホストからの応答をみるには、ICMPエコー要求パケットと呼ばれるパケットを送出する。ICMPエコー要求パケットを受信したホストは、ICMPエコー応答パケットと呼ばれる応答パケットをICMPエコー要求パケットを送信したホストに向けて送り返す。パターン保持メモリ201、202にはこのようなパケットの識別情報を記憶させる。
この状態で、CPU106は、特定のホストに向けて、ICMPエコー要求パケットを送信キュー108に置く。送信キュー108上に先に置かれていた他の送信パケットが順次送信され、ICMPエコー要求パケットが、送信マルチプレクサ109を経て、送信データバッファ110に置かれると、比較器203は、送信データバッファ110内のパケットと、パターン保持メモリ201の識別情報を比較することで、そのことを検出する。比較器203は、タイマー204に対し、時間の計測を開始するように指令を出す。
送信バッファ110上の、ICMPエコー要求パケットはほどなくネットワーク上に送信され、ネットワークを経由し、相手先のホストに到着する。
相手先のホストでは、ICMPエコー要求パケットを受信したので、応答としてICMPエコー応答パケットを送り返す。
送り返されてきたICMPエコー応答パケットは、受信データバッファ101に保持され、比較器205によってパターン保持メモリ202の識別情報との比較から、ICMPエコー応答パケットが帰ってきたことが検出される。
比較器205はタイマー204に対し、時間の計測を停止するように指令を出す。
CPU106がタイマー204の計測した時間を読み取ることで、自ホストからパケットが送信され、その応答が帰ってくるまでの時間、すなわちラウンドトリップ時間が計測することができる。ラウンドトリップ時間は、特定のホストまでのネットワーク上での距離に比例するので、これにより、他のホストとの遠近を認識することができる。
ただし、上述のラウンドトリップ時間には、相手先ホストの反応時間、すなわちパケットを受信してから、応答すべきパケットであると認識し、パケットを送信するまでの時間も含まれる。この時間は誤差となるので、図1に示した本発明のマルチキャスト受信装置の転送機能を転用すれば、計測精度を向上させることができる。
すなわち、図1の構成において、マルチキャストパケットをただちに転送することができることを説明したが、ICMPエコー要求パケットに対しては、ICMPエコー要求パケットを送出したホストに対してパケットを送り返すよう、転送条件保持メモリ111、転送先情報保持メモリを設定することで、ICMPエコー要求パケットに対しても、ただちに応答することができる。
図17に示したような一筆書きに受信装置を縦列に接続し、パケットを順次転送することでマルチキャスト機能を実現するためには、送信装置と受信装置、および、受信装置相互間が短い距離で結ばれることがネットワークの利用効率を上げることにつながる。このため、マルチキャストパケットを送り受けする受信装置が最短距離で結ばれるように、おのおのの受信装置は他のホストとの距離を認識する手段が必要である。
本発明のマルチキャスト受信装置においては、図2および図1の構成によって、他のホストとのネットワーク上の距離を計測することが可能で、そこで得られた情報をもとにパケットの送り受けの順序を決定する事により、ネットワーク利用効率を向上させることができる。
【0020】
図3は、本発明の実施の形態にかかるマルチキャスト送信装置の機能を示す機能ブロック図である。
送信装置の機能は大きく4つの部分からからなる。参加要求処理301は、受信装置からのマルチキャストグループに参加要求を処理する機能で、マルチキャストグループを識別するためのコミュニティ名を保持するコミュニティ名保持メモリ302と、マルチキャストグループに参加を許可しない受信装置のホスト情報を保持する拒否ホストリスト303を参照し、受信装置のマルチキャストグループへの参加を許可した場合には、それをコミュニティメンバーリストに登録する。
接続要求処理305は、受信装置からのマルチキャストパケットの送信を要求する接続要求を処理する機能で、コミュニティメンバーリスト304と、送信装置から直接、マルチキャストパケットを受信している受信装置のホスト情報を保持している最上位受信装置名保持メモリ306を参照し、受信装置からの接続要求に対し、その受信装置がパケットを受け取るべきホストを回答する。
挿入・離脱要求処理307は、受信装置からの送信装置のパケットの送信先ホストの変更要求や、マルチキャストグループからの離脱要求を処理する機能で、要求に応じて、最上位受信装置名保持メモリ306やコミュニティメンバーリスト304の内容を更新する。
送信処理308は、最上位受信装置名保持リスト306の内容に基づき、マルチキャストパケットを送信する。
図4は参加要求処理301の処理内容を示すフローチャートである。
まずステップ401でコミュニティ名保持メモリを読み出す。ステップ402では受信装置からの接続を待つ。受信装置から参加要求が来るとステップ403に進み、受信装置が参加したいマルチキャストグループと、この送信装置が属するマルチキャストグループが一致しているかを判定する。
一致している場合はステップ404に進み、マルチキャストグループに参加させない拒否ホストであるかの判定を行う。参加させてもよい場合は、ステップ405に進み、受信装置に対してマルチキャストグループへの参加許可を通知し、ステップ406においてコミュニティメンバーリスト304に受信装置のホスト情報を追加する。
一方、ステップ403でコミュニティ名が不一致だった場合、および、ステップ404で参加を認められなかった場合は、ステップ407に進み、受信装置に対してマルチキャストグループへの参加拒否を通知する。
ステップ406あるいはステップ407の後は、再びステップ402に戻り、上記の一連の処理を繰り返す。
図5は接続要求処理305の処理内容を示すフローチャートである。
まずステップ501で、コミュニティメンバーリスト304、最上位受信装置名保持メモリ306を読み出し、ステップ502で受信装置からの接続要求を待つ。
接続要求が来た場合には、ステップ503においてコミュニティメンバーリストのメンバー数により判定を行い、メンバー数が0、すなわち、受信装置がない場合はステップ504に進み、メンバー数が1以上、すなわち、すでに受信装置がある場合にはステップ505に進む。
ステップ504では最上位受信装置名として接続要求を出して来た受信装置を最上位受信装置名保持メモリ306に記憶させる。つぎにステップ506で、接続要求を出して来た受信装置に対し、接続先として送信装置自身を通知する。
ステップ505では接続先として、最上位受信装置を通知する。
ステップ505あるいはステップ506の後は、再びステップ502に戻り、上記の一連の処理を繰り返す。
図6は挿入・離脱処理307の処理内容を示すフローチャートである。
まずステップ601で、コミュニティメンバーリスト304を読み出し、ステップ602で受信装置からの挿入要求あるいは離脱要求を待つ。
ステップ603では、処理内容によって分岐し、挿入要求の場合はステップ604に進み、離脱要求であればステップ605に進む。
挿入要求の場合、ステップ604において、最上位受信ホスト名を挿入要求を出して来た受信装置に書き換える。
離脱要求の場合、ステップ605において、マルチキャストグループを構成するコミュニティメンバーリスト304から離脱要求を出して来た受信装置名を削除する。
また、離脱要求を出して来た受信装置が最上位受信装置であれば、ステップ604に進み、最上位受信ホスト名を離脱要求を出して来た受信装置が指定する受信装置に書き換える。
ステップ604の後、あるいはステップ606において、離脱要求を出して来た受信装置が最上位受信装置でなかった場合には、ステップ607に進み送信装置側の挿入要求処理、離脱要求処理が完了したことを受信装置に通知する。
ステップ607の後は、再びステップ602に戻り、上記の一連の処理を繰り返す。
【0021】
図7は、本発明の実施の形態にかかるマルチキャスト受信装置の機能を示す機能ブロック図である。
受信装置の機能は大きく6つの部分からからなる。送信装置発見処理701は、マルチキャストグループに参加するため、送信装置を発見する機能で、そのマルチキャストグループを識別するためのコミュニティ名を保持するコミュニティ名保持メモリ702を参照し、マルチキャストの起点となっている送信装置を発見する。発見した送信装置のホスト情報は送信装置情報保持メモリ703に記憶させる。
接続点探索処理704は、マルチキャストグループの構造を調べる機能で、送信装置情報保持メモリ703を参照し、まず最初に送信装置に対し接続要求を出す。順次、マルチキャストグループに属する受信装置に次々と接続要求を出し、マルチキャストグループに参加しようとした時点でのすべての受信装置のホスト情報と、そのホストまでの距離を前記の計測する機能によって調べ、検索リスト705を作成する。
挿入・離脱処理706は、マルチキャストグループへの参加あるいはマルチキャストグループからの離脱を処理する機能で、マルチキャストグループに参加する場合には探索リスト705から接続候補リスト707を作成し、接続候補となる受信装置に対し、マルチキャストデータの送信先、あるいは送信元を変更させ、マルチキャストデータを送り受けする経路の中に自受信装置を挿入する。
また、送信元受信装置、送信先受信装置のホスト情報を接続情報保持メモリ708に記憶させる。
挿入・離脱処理706は、マルチキャストグループから離脱場合には、接続情報保持メモリ708に記憶された送信元受信装置、送信先受信装置に対し、それぞれの送信先受信装置、受信元受信装置を変更させる。また、送信装置に対し、マルチキャストグループからの離脱を通知する。
接続情報提供処理709では、他の受信装置からの接続要求に対し、接続情報保持メモリ708の内容を参照し、その受信装置がパケットを受けるべきホストとして、送信先ホストを回答する。
接続情報変更処理710は、他の受信装置からの送信先あるいは送信元の変更要求を処理する機能で、接続先情報保持メモリ708の内容を要求に応じて変更する。
転送処理711は、接続先情報保持メモリ708の内容に基づき、マルチキャストパケットを受信し、転送すべき送信先がある場合には転送を行う。
図8は送信装置発見処理701の処理内容を示すフローチャートである。
ステップ801で、コミュニティ名保持メモリ702を読み出し、ステップ802でこのコミュニティ名を含む送信装置探索パケットをネットワークに送出する。
同一ネットワークセグメントに送信装置がある場合には、ブロードキャストパケットとして送出すればよい。
ステップ803で送信装置からの応答を待ち、送信装置からの参加許可の応答があれば、ステップ805に進み、応答のあった送信装置のホスト情報を送信装置情報保持メモリ703に記憶させる。一方、拒否された場合は、なにもせず終了する。
図9は接続点探索処理704の処理内容を示すフローチャートである。
ステップ901では、送信装置情報保持メモリ703を読み出す。ステップ902では接続要求パケットを相手先に送出する。例えば、一番最初には、送信装置に対して接続要求を出すことになる。ステップ903で相手ホストからの応答を待つ。
ステップ904では、接続要求を出したホストの名前と、そのホストの応答時間を探索リスト705に記録する。
ステップ905では、接続要求に対する応答内容を調べ、接続要求を出したホストと、応答として提供された接続すべきホストが一致するかどうかを判定する。上記ホストが互いに一致すれば、接続要求を出したホストにはマルチキャストパケットをさらに転送する送信先がなく、すなわち、マルチキャストグループの最後尾まで達したことがわかるので、接続点探索処理を704を終了する。
一致しない場合には、接続要求を出したホストの先にさらにマルチキャストグループに属するホストが存在するので、ステップ902に戻り、接続要求を出したホストから、応答として提供された接続すべきホストに対し接続要求を出す。以降、上記の処理を繰り返すことで、探索リストには、マルチキャストグループに属するすべてのホスト、すなわち送信装置と受信装置のホスト名と、そのホストまでの距離の情報のリストが得られる。
図10は、挿入・離脱処理706の処理内容を示すフローチャートである。
挿入・離脱処理706は、接続点探索処理704の終了、あるいはマルチキャストグループからの離脱を行う際に開始される。ステップ1001では、処理内容により挿入処理の場合と離脱処理の場合に分岐する。
挿入処理の場合、ステップ1002に進み、探索リスト705から、自受信装置にもっとも近く、送信装置から離れたホストを候補に選び、接続候補リスト707を作成する。
離脱処理の場合、ステップ1003に進み、接続情報保持メモリ708を読み出す。
ステップ1004では、送信装置に対して、マルチキャストグループからの離脱を通知する。ステップ1005で応答を待つ。
ステップ1006では、接続候補リスト707あるいは接続情報保持メモリ708の上流側ホストに対し、挿入処理の場合は、送信先ホストを自受信装置に変更させ、離脱処理の場合には、送信先ホストを接続情報保持メモリ708の下流側ホストに変更するよう、それぞれ要求を出す。ステップ1007では、その応答を待つ。
ステップ1008では、接続候補リスト707あるいは接続情報保持メモリ708の下流側ホストに対し、挿入処理の場合は、送信元ホストを自受信装置に変更させ、離脱処理の場合には、送信元ホストを接続情報保持メモリ708の上流側ホストに変更するよう、それぞれ要求を出す。ステップ1009では、その応答を待つ。
ステップ1010では、以上の変更内容を反映するよう、接続情報保持メモリ708の内容を更新する。
図11は、接続情報提供処理709の処理内容を示すフローチャートである。
ステップ1101で、接続情報保持メモリ708の送信先のホスト情報を読み出す。ステップ1102では他の受信装置からの接続要求があるかを判定し、もし接続要求の場合にはステップ1103に進む。接続要求がなければ再びステップ1101に戻り、改めて接続情報保持メモリ708の送信先のホスト情報を読み出す。これは、接続情報提供処理709の関知しない処理が、接続情報保持メモリ708の内容を更新する可能性があるためである。
ステップ1103では、接続要求に対し、接続情報保持メモリ708の下流側のホスト情報を応答する。もし、下流側のホストがないときには、自受信装置のホスト情報を応答する。
図12は、接続情報変更処理710の処理内容を示すフローチャートである。
ステップ1201で他の受信装置からの挿入および離脱の要求を待つ。
要求が来れば、ステップ1202で変更を要求されている内容によって分岐し、送信先ホストの変更を要求されている場合にはステップ1203に進み、接続情報保持メモリ708の送信先ホストの情報を変更し、送信元ホストの変更を要求されている場合にはステップ1204に進み、接続情報保持メモリ708の送信元ホストの情報を変更する。
いずれかの変更処理が終了すれば、ステップ1205に進み、要求を出した受信装置に対して処理完了の通知を行う。その後、再びステップ1201に戻り、挿入・離脱要求を待つ。
次に、上述の本発明のマルチキャスト送信装置およびマルチキャスト受信装置において、例えば、図15のネットワーク構成でのマルチキャストを実施するさいに図17に示すような受信装置が一筆書きに縦列接続され過程を説明する。
まず、送信装置1502にまだどの受信装置も接続していない場合は、上記の説明から、受信装置は、送信装置1502を発見するための探索パケットを送出し、送信装置がこれに応答すれば、受信装置にとっての接続先候補は送信装置1502だけとなり、送信装置1502に一つの受信装置が接続された構成が形成される。
次に、すでにいくつかの受信装置が、送信装置に接続された状態で、新たに受信装置がそのマルチキャストグループに参加する過程を説明する。
図13は、その様子を示す模式図である。
最初の例として、送信装置1502に、受信装置1 1504、受信装置2 1505、受信装置3 1512、受信装置4 1515がすでに接続されている状態(図13(a))で、新たに受信装置5 1516がこのマルチキャストグループに参加する場合を説明する。
マルチキャストグループに参加しようとする受信装置5 1516は、送信装置1502を探索するためのパケットを送出する。パケットが、送信装置1502に到達すれば、送信装置はマルチキャストグループへの参加許可を受信装置5 1516に対して出す。これを受けて受信装置5 1516は、まず最初に送信装置1502に接続要求を出す。送信装置1502は、受信装置5 1516に対し、接続すべき受信装置として、マルチキャストパケットを送っている受信装置1 1504の情報を提供する。
受信装置5 1516は、この送信装置1502からの応答を受けて、受信装置1 1504に対して接続要求を出す。受信装置1 1504はこの接続要求に対し、
接続すべき受信装置として、マルチキャストパケットを送っている受信装置2
1505の情報を提供する。
受信装置5 1516は、この受信装置1 1504からの応答を受けて、受信装置2 1505に対して接続要求を出す。受信装置2 1505はこの接続要求に対し、接続すべき受信装置として、マルチキャストパケットを送っている受信装置3 1512の情報を提供する。
受信装置5 1516は、この受信装置2 1505からの応答を受けて、受信装置3 1512に対して接続要求を出す。受信装置3 1512はこの接続要求に対し、接続すべき受信装置として、マルチキャストパケットを送っている受信装置4 1515の情報を提供する。
受信装置5 1516は、この受信装置3 1505からの応答を受けて、受信装置4 1515に対して接続要求を出す。受信装置4 1515は、マルチキャストパケットを送っている受信装置を持たないので、 この接続要求に対し、接続すべき受信装置として、自分自身である受信装置4 1515の情報を提供する。
受信装置5 1516は、この受信装置4 1515への接続要求ではじめて接続要求を出した受信装置と、接続すべき受信装置が一致したので、マルチキャストグループの最後尾に達したことを認識する。
図15のネットワーク構成において、イーサネット(R)スイッチ1503、あるいは、イーサネット(R)スイッチ1511を通過する際には、0.5ms、ルータ1508を経て、広域ネットワーク1509、ルータ1510を通過する場合、あるいはその逆経路を通過する際に5msを要するものとすると、受信装置5 1516が、接続要求を出す際に各ホストまでのラウンドトリップ時間を計測しているので、受信装置5 1516には、図14(a)のような探索リストが得られる。
表から明らかなように、受信装置5 1516にもっとも近い受信装置は、ラウンドトリップ時間が最短である、受信装置4 1515であることがわかる。
これに基づいて、受信装置5 1516は受信装置4 1515を接続候補とし、受信装置4 1515に対し挿入要求を出す。受信装置4 1515の送信先として受信装置5 1516が接続されることで、図13(a)の矢印の先に示すようなマルチキャストパケットの配送経路が形成される。
次の例として、送信装置1502に、受信装置1 1504、受信装置2 1505、受信装置4 1515、受信装置5 1516がすでに接続されている状態(図13(b))で、新たに受信装置3 1512がこのマルチキャストグループに参加する場合を説明する。
図17の構成では、受信装置3 1512は3番目の受信装置であるが、最後にマルチキャストグループに参加した場合である。最初の例と同様にして、受信装置3 1512には、図14(b)のような探索リストが得られる。
ここでは、もっとも近い受信装置として、受信装置4 1515と受信装置5 1516が同じラウンドトリップタイムとなって並んでいる。
この場合、送信装置から遠い、受信装置5 1516を選ぶ。
これに基づいて、受信装置3 1512は受信装置5 1516を接続候補とし、受信装置5 1516に対し挿入要求を出す。受信装置5 1516の送信先として受信装置3 1512が接続されることで、図13(b)の矢印の先に示すようなマルチキャストパケットの配送経路が形成される。
これは図17の経路には一致しないが、図13(b)の経路を図15に当てはめてみると、同じパス上、すなわち機器と機器を結ぶ線上を同じ方向に向かって2度流れることはないことがわかる。
例えば、送信装置からより遠いものを選ぶというルールに反して同じラウンドトリップタイムの受信装置4 1515を接続候補として選んだ場合には、パケットの流れる経路は、受信装置4 1515、受信装置3 1512、受信装置5 1516となる。この経路を図15に当てはめてみると、イーサネット(R)スイッチ1511とイーサネット(R)スイッチ1514の間のパス上を同じ方向に向けて2度パケットが流れることになり、ネットワークの利用効率が下がることが判る。したがって、ラウンドトリップ時間が同じ場合は、もっとも送信装置から遠い受信装置を選ぶ必要がある。
次の例として、送信装置1502に、受信装置1 1504、受信装置3 1512、受信装置4 1515、受信装置5 1516がすでに接続されている状態(図13(c))で、新たに受信装置2 1505がこのマルチキャストグループに参加する場合を説明する。
この場合、得られる探索リストは図14(c)となり、ここでもラウンドトリップ時間がおなじホスト、すなわち、送信装置1502と、受信装置1 1504が現れる。この場合は、結果的にどちらのホストを接続候補に選んでも、同一パス上を同じ方向にパケットが流れることにはならないが、これは、候補となるホストと、接続しようとする受信装置が同じイーサネット(R)スイッチ1503に直接接続されているからである。
上記の後の2つの例同士を互いに識別することは、新たに参加する受信装置からはできないので、ラウンドトリップ時間が同じ場合は、もっとも送信装置から遠い受信装置を選ぶというルールを常に採用する必要がある。
上記のように、本発明にかかるマルチキャスト受信装置および送信装置においては、ネットワーク上に存在する複数のホストのうち、特定のグループに属するホストにのみ送信データを配信するマルチキャスト機能を、ルータの特殊な機能に依存せずに、マルチキャストグループに属する受信装置間で転送することにより実現できる。
【0022】
【発明の効果】
以上説明したように、本発明にかかるマルチキャスト受信装置および送信装置においては、ネットワーク上に存在する複数のホストのうち、特定のグループに属するホストにのみ送信データを配信するマルチキャスト機能を、ルータの特殊な機能に依存せずに、マルチキャストグループに属する受信装置間で転送することにより実現することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態にかかるマルチキャスト受信装置において、マルチキャストデータの転送機能を実現する部分のブロック図
【図2】本発明の実施の形態にかかるマルチキャスト受信装置において特定のホストまでのネットワーク上での距離を応答時間によって計測する機能を実現する部分のブロック図
【図3】本発明の実施の形態にかかるマルチキャスト送信装置の機能を示す機能ブロック図
【図4】参加要求処理301の処理内容を示すフローチャート
【図5】接続要求処理305の処理内容を示すフローチャート
【図6】挿入・離脱処理307の処理内容を示すフローチャート
【図7】本発明の実施の形態にかかるマルチキャスト受信装置の機能を示す機能ブロック図
【図8】送信装置発見処理701の処理内容を示すフローチャート
【図9】接続点探索処理704の処理内容を示すフローチャート
【図10】挿入・離脱処理706の処理内容を示すフローチャート
【図11】接続情報提供処理709の処理内容を示すフローチャート
【図12】接続情報変更処理710の処理内容を示すフローチャート
【図13】受信装置がマルチキャストグループに参加する過程を説明する模式図
【図14】3つの例における探索リストを示す図
【図15】ある例におけるネットワークの構成図
【図16】従来例におけるマルチキャストを説明するためのネットワーク構成図
【図17】本発明におけるマルチキャストを説明するためのネットワーク構成図
【符号の説明】
101 受信データバッファ
102 誤り検出器
103 転送ゲート
104 受信キュー
105 ROM
106 CPU
107 RAM
108 送信キュー
109 送信マルチプレクサ
110 送信データバッファ
111 転送条件保持メモリ
112 転送先情報保持メモリ
113 比較器
114 データ変換器
115 即時送信メモリ
201 パターン保持メモリ
202 パターン保持メモリ
203 比較器
204 タイマー
205 比較器
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to multicast communication in which data is transmitted only to hosts belonging to a specific group on a network by IP (Internet Protocol).
[0002]
[Prior art]
Multicast that performs data transmission from one transmission source to a plurality of reception destinations on an IP network is currently in strong demand as a form of information propagation similar to broadcasting mainly performed using wireless technology. A communication method called IP multicast has been proposed as a standard method to respond to this (for example, see Patent Document 1).
FIG. 16 is a configuration diagram for explaining conventional multicast. Video information captured by the camera 1501 is packetized by the transmitting device 1502 and is multicast on the network. The multicast packet from the transmitting device 1502 is first duplicated by the router 1508 and sent to the receiving device 1504 and the receiving device 1505. In each receiving device, the multicast packet is decoded into a video signal, and the video captured by the camera 1501 is displayed on the video monitor 1506 and the video monitor 1507.
[0003]
The multicast packet copied by the router 1508 is also sent to the router 1510, where the multicast packet is further copied and sent to the receiving device 1512, the receiving device 1515, and the receiving device 1516. In this way, the video captured by the camera 1501 is also displayed on the video monitor 1513, video monitor 1517, and video monitor 1518.
[0004]
The point here is that the amount of packets flowing on the network can be reduced as compared with the case where the transmitting device 1502 directly transmits to all the receiving devices in order to realize the same. For example, when the transmitting device 1502 sends a packet to five receiving devices, three packets carrying the same information are required between the router 1508 and the router 1510. Packets required by the receiving device on the downstream side are duplicated by the router 1510, so that only one packet to be duplicated is required.
As described above, even when data is transmitted to a large number of receiving hosts, data can be transmitted efficiently by using IP multicast.
[0005]
[Patent Document 1]
JP-A-06-224912
[0006]
[Problems to be solved by the invention]
However, in the conventional configuration, it is necessary to make a copy of the packet in the router. For this reason, in order to perform multicasting, it is necessary that the router has a function of making a copy, and when using it, it is necessary that the router be set in advance so as to appropriately execute the copy function. In addition, since the packet is copied at a location different from the transmitting device, it is difficult for the transmitting device to grasp which receiving device is receiving the multicast.
[0007]
The former is not a problem in large-scale applications where use can be planned in advance and equipment and network preparation and negotiation with the router administrator are not a problem, but it is a major obstacle for sudden and small-scale applications. Become. In addition, the latter may pose a problem in accounting and information leakage management.
[0008]
The present invention solves the above-mentioned conventional problems and is applicable to multicast in a relatively small range such as within the same network segment, and does not require a function of replicating a packet to a router. It is an object of the present invention to provide a multicast function that does not require the setting of the above, and allows the transmitting device to recognize the receiving device receiving the multicast.
[0009]
[Means for Solving the Problems]
A first invention is a multicast receiving apparatus which realizes a multicast function of distributing transmission data only to receiving apparatuses belonging to a specific group among a plurality of hosts existing on a network. Holding means for holding transfer destination information, data conversion means for extracting a packet to be transferred from the received packets, and rewriting the transfer packet based on the transfer destination information held in the transfer destination information holding means; Immediate transmission data holding means for holding the rewritten transfer packet, a transmission packet from a transmission queue for storing a normal transmission packet, and a transfer packet held in the immediate transmission data holding means, and receive data to be transmitted. A transmission system that preferentially sends a transfer packet to a temporarily stored transmission data buffer A multicast receiver including a mux. In the first invention, a packet that matches the condition to be multicast can be transferred immediately, and the delay required for transfer can be reduced.
[0010]
A second invention is characterized in that timer means for starting time measurement at the transmission time of a specific transmission packet recognized by the transmission packet comparison means and stopping time measurement at the reception time of the specific reception packet recognized by the reception packet comparison means; It is a multicast receiving apparatus provided with.
According to the second aspect, the response time of the specific host can be accurately measured, and the distance on the network between the own receiving apparatus and the specific host can be easily estimated.
[0011]
A third invention is a participation request processing means for responding to a search for a transmitting device from a receiving device, and a connection request processing for notifying host information of a host to which the receiving device is to be connected in response to a connection request from the receiving device. The present invention is a multicast transmission device comprising: a unit; a leaving request processing unit that processes a request from the receiving device to leave the multicast group; and an insertion request processing unit that processes an insertion request from the receiving device.
[0012]
According to a fourth aspect of the present invention, there is provided a transmission device discovery unit that searches for a transmission device that is a starting point of multicast data transmission, a connection point search processing unit that creates a search list in order to recognize a connection state of a multicast group, From the search list, an insertion processing unit that selects a transmission source host from which the own receiving device should receive data, and performs settings so that data reception and transmission are performed via the own receiving device; and Connection information providing processing means for notifying the host information of the host to which the receiving device is to be connected in response to the connection request, and setting so that the transmission and reception of the multicast data is not interrupted when leaving the multicast group And a departure processing unit for requesting the transmission device to leave the multicast group, and receiving a packet to be multicast. And when is a receiving apparatus according to claim 1 or 2 and a transmission processing means for immediately transmitting a packet to a single receiver.
In the third and fourth inventions, the transmitting device and the receiving device can be arranged in a configuration in which a plurality of receiving devices are connected in cascade, starting from the multicast data transmitting device. Further, since the transmitting device receives connection requests from all the receiving devices, it can grasp the receiving devices belonging to the multicast group.
[0013]
BEST MODE FOR CARRYING OUT THE INVENTION
First, differences between the multicast function realized by the multicast transmitting apparatus and the receiving apparatus according to the embodiment of the present invention and the above-described conventional multicast function will be described.
[0014]
FIG. 15 shows an Ethernet (R) switch which is omitted in the configuration diagram of FIG. 16 showing a conventional example because it is unnecessary for description, and an original network including a wide area network between the router 1508 and the router 1510 which causes a relatively large transmission delay. FIG. In this configuration, video information captured by the camera 1501 is packetized by the transmitting device 1502, sent to the receiving devices 1504, 1505, 1512, 1515, 1516, and displayed on the video monitors 1506, 1507, 1513, 1517, 1518. Suppose that multicast is performed.
[0015]
In the conventional multicast technology, as described above, multicast data is transmitted along a route indicated by an arrow on the configuration diagram of FIG. On the other hand, in the multicast function realized by the multicast transmitting device and the receiving device according to the embodiment of the present invention, multicast data is transmitted along a route indicated by an arrow on the network configuration diagram in FIG.
[0016]
That is, with the transmission device 1502 as a starting point of the transmission of the multicast data, a path is set in which the reception devices are connected in a one-stroke sequence in the order of the reception device 1504, the reception device 1505, the reception device 1512, the reception device 1515, and the reception device 1516. Each receiving device receives the multicast data, decodes the data into video information, and simultaneously transmits the received multicast data to another receiving device. Thus, the multicast function is realized by sequentially transferring the multicast data between the receiving devices.
[0017]
Hereinafter, a multicast transmitting apparatus and a receiving apparatus according to an embodiment of the present invention that realize the multicast function shown in the network configuration diagram of FIG. 17 will be described with reference to the drawings.
[0018]
FIG. 1 is a block diagram of a part that realizes a multicast data transfer function in a multicast receiving apparatus according to an embodiment of the present invention.
The packet received by the receiving device from the network is first held in the reception data buffer 101. The error check code attached to the received packet is checked by the error detector 102, and the packet determined to have no error is stored in the reception queue 104 via the transfer gate 103. The received packets stored in the reception queue 104 are read out to the RAM 107 by the CPU 106 whose program is stored in the ROM 105.
On the other hand, when transmitting a packet from the receiving apparatus to the network, the CPU 106 stores the packet to be transmitted in the transmission queue 108. The transmission packet stored in the transmission queue passes through the transmission multiplexer 109, is stored in a transmission data buffer, and is transmitted to the network as soon as transmission conditions to the network are satisfied.
To transfer the multicast packet, first, the CPU 106 stores information for identifying the multicast packet and other packets in the transfer condition holding memory 111. As information effective for identification, address information of a transmission source host, packet header information such as a port number when using the UDP / IP method, identification data provided in a user data portion, and the like can be used.
Next, when receiving the packet carrying the multicast data, the CPU 106 stores information for transferring the packet in the transfer destination information holding memory. The information necessary for the transfer is, for example, the address information of the transfer destination host, or the address of a router that mediates the transfer, if any.
Each time the packet is received, the comparator 113 compares the received packet in the received data buffer 101 with the contents of the transfer condition holding memory 111, and identifies whether the packet should be multicast. If the comparator 113 identifies the multicast packet and the error detector 102 determines that the received packet has no error, the data converter 114 takes out the received packet from the received data buffer 101, and Based on the transfer destination information stored in the holding memory, the received packet is converted into a transfer packet so that it can be transferred to the next receiver.
The transfer packet converted by the data converter 114 is stored in the immediate transmission memory 115. Even if transmission packets to be transmitted are accumulated in the transmission queue 108, the transmission multiplexer 109 preferentially sends the transmission packets to the transmission data buffer if a transmission packet exists in the immediate transmission memory 115.
With the above configuration, when a packet to be multicast is received, the received packet can be transferred immediately.
In the case of realizing the multicast along the route shown in FIG. 17, since the multicast packets sequentially follow the receiving device, the processing time when passing through one receiving device is accumulated, , The packet will not reach all receiving devices downstream from the receiving device.
In the multicast receiving apparatus of the present invention, the time required for transfer is reduced because the packet does not pass through the reception queue 104 waiting for processing of another packet and the transmission queue 108 without the intervention of the CPU 106. Can be minimized. Also, when the processing load of the CPU 106 is heavy and the packet cannot be processed, the packet is not lost, so that the multicast packet can be reliably delivered.
[0019]
FIG. 2 is a block diagram of a part that realizes a function of measuring a distance on a network to a specific host by a response time in the multicast receiving device according to the embodiment of the present invention.
First, prior to the measurement of the response time, the CPU 106 causes the pattern holding memory 201 to store identification information for identifying a packet sent from the host. Next, identification information for identifying a packet returned as a response from the host whose response time is to be measured is stored in the pattern holding memory 202.
Generally, on an IP network, a packet is transmitted to another host, and a packet called an ICMP echo request packet is transmitted to see a response from the host. The host that has received the ICMP echo request packet returns a response packet called an ICMP echo request packet to the host that transmitted the ICMP echo request packet. The pattern holding memories 201 and 202 store such packet identification information.
In this state, the CPU 106 places an ICMP echo request packet in the transmission queue 108 for a specific host. When another transmission packet previously placed on the transmission queue 108 is sequentially transmitted and the ICMP echo request packet is placed in the transmission data buffer 110 via the transmission multiplexer 109, the comparator 203 sets the transmission data buffer 110 This is detected by comparing the packet in the table with the identification information of the pattern holding memory 201. The comparator 203 issues a command to the timer 204 to start measuring time.
The ICMP echo request packet on the transmission buffer 110 is transmitted to the network soon, and reaches the destination host via the network.
Since the destination host has received the ICMP echo request packet, it sends back an ICMP echo response packet as a response.
The returned ICMP echo response packet is held in the reception data buffer 101, and the comparator 205 detects that the ICMP echo response packet is returned from comparison with the identification information in the pattern holding memory 202.
The comparator 205 instructs the timer 204 to stop measuring time.
By reading the time measured by the timer 204, the CPU 106 can measure the time from when the packet is transmitted from the host to the return of the response, that is, the round trip time. Since the round trip time is proportional to the distance on the network to a specific host, it is possible to recognize the distance from another host.
However, the round trip time includes the response time of the destination host, that is, the time from when the packet is received to when the packet is recognized as a packet to be responded and the packet is transmitted. Since this time becomes an error, the measurement accuracy can be improved by diverting the transfer function of the multicast receiver of the present invention shown in FIG.
That is, in the configuration of FIG. 1, it has been described that the multicast packet can be transferred immediately. However, for the ICMP echo request packet, the transfer condition holding is performed so that the packet is sent back to the host that sent the ICMP echo request packet. By setting the memory 111 and the transfer destination information holding memory, it is possible to immediately respond to the ICMP echo request packet.
In order to realize the multicast function by connecting the receiving devices in a one-stroke sequence as shown in FIG. 17 and sequentially transferring the packets, the transmitting device, the receiving device, and the receiving device must be short distances from each other. Being connected will increase the efficiency of network use. For this reason, each receiving device needs a means for recognizing the distance from another host so that the receiving devices that send and receive multicast packets are connected at the shortest distance.
In the multicast receiving apparatus of the present invention, the configuration shown in FIGS. 2 and 1 makes it possible to measure the distance between the host and another host on the network, and based on the information obtained therefrom, the order of sending and receiving packets. Is determined, the network use efficiency can be improved.
[0020]
FIG. 3 is a functional block diagram illustrating functions of the multicast transmission device according to the embodiment of the present invention.
The function of the transmitting device is roughly composed of four parts. The participation request processing 301 is a function of processing a request to join a multicast group from a receiving device, and includes a community name holding memory 302 that holds a community name for identifying a multicast group, and a receiving device that does not permit participation in the multicast group. Referring to the rejected host list 303 holding the host information, if the receiving device is permitted to participate in the multicast group, it is registered in the community member list.
The connection request processing 305 is a function of processing a connection request for requesting transmission of a multicast packet from the receiving device, and holds a community member list 304 and host information of the receiving device receiving the multicast packet directly from the transmitting device. In response to the connection request from the receiving device, the receiving device replies the host from which the receiving device should receive the packet, with reference to the highest-order receiving device name holding memory 306.
The insertion / withdrawal request processing 307 is a function for processing a request for changing the destination host of the packet of the transmission device from the reception device or a request for withdrawal from the multicast group. And the contents of the community member list 304 are updated.
The transmission process 308 transmits a multicast packet based on the contents of the highest-level receiving device name holding list 306.
FIG. 4 is a flowchart showing the processing contents of the participation request processing 301.
First, in step 401, the community name holding memory is read. In step 402, the process waits for a connection from the receiving device. When a participation request is received from the receiving device, the process proceeds to step 403, and it is determined whether the multicast group to which the receiving device wants to join and the multicast group to which the transmitting device belongs match.
If they match, the process proceeds to step 404, where it is determined whether or not the host is a rejected host that does not join the multicast group. If participation is allowed, the process proceeds to step 405, where the receiving device is notified of permission to join the multicast group, and in step 406, the host information of the receiving device is added to the community member list 304.
On the other hand, if the community names do not match in step 403, or if participation is not recognized in step 404, the process proceeds to step 407, and the receiving device is notified of refusal to join the multicast group.
After step 406 or step 407, the process returns to step 402 again, and the above-described series of processing is repeated.
FIG. 5 is a flowchart showing the processing contents of the connection request processing 305.
First, in step 501, the community member list 304 and the top receiving device name holding memory 306 are read, and in step 502, a connection request from the receiving device is waited.
If a connection request is received, a determination is made in step 503 based on the number of members in the community member list. If the number of members is 0, that is, if there is no receiving device, the process proceeds to step 504, and the number of members is 1 or more, that is, If there is a receiver, the process proceeds to step 505.
In step 504, the receiving device that has issued the connection request as the highest receiving device name is stored in the highest receiving device name holding memory 306. Next, in step 506, the transmitting device that has issued the connection request is notified of the transmitting device itself as the connection destination.
In step 505, the highest receiving device is notified as the connection destination.
After step 505 or step 506, the process returns to step 502 again to repeat the above-described series of processing.
FIG. 6 is a flowchart showing the processing contents of the insertion / removal processing 307.
First, in step 601, the community member list 304 is read, and in step 602, an insertion request or a removal request from the receiving device is waited.
In step 603, the process branches depending on the processing contents. If the request is an insertion request, the process proceeds to step 604. If the request is a removal request, the process proceeds to step 605.
In the case of an insertion request, in step 604, the highest receiving host name is rewritten to the receiving device which issued the insertion request.
In the case of a withdrawal request, in step 605, the name of the receiving device that has issued the withdrawal request is deleted from the community member list 304 constituting the multicast group.
If the receiving device that has issued the withdrawal request is the highest-level receiving device, the process proceeds to step 604, and the highest-level receiving host name is rewritten to the receiving device specified by the receiving device that has issued the withdrawal request.
After step 604 or in step 606, if the receiving device that issued the withdrawal request is not the highest-order receiving device, the process proceeds to step 607, where the insertion request processing and the withdrawal request processing on the transmitting device side are completed. Is notified to the receiving device.
After step 607, the process returns to step 602 again, and the above-described series of processing is repeated.
[0021]
FIG. 7 is a functional block diagram illustrating functions of the multicast receiving device according to the embodiment of the present invention.
The function of the receiving device is roughly composed of six parts. The transmitting device discovery processing 701 is a function of discovering a transmitting device to join a multicast group. The transmitting device finding process 701 refers to a community name holding memory 702 holding a community name for identifying the multicast group, and serves as a starting point of the multicast. Find a transmitting device that is The host information of the found transmitting device is stored in the transmitting device information holding memory 703.
The connection point search processing 704 is a function for examining the structure of the multicast group. The connection point search processing 704 refers to the transmission device information holding memory 703 and first issues a connection request to the transmission device. A connection request is sequentially issued to the receiving devices belonging to the multicast group one after another, and the host information of all the receiving devices at the time of trying to join the multicast group and the distance to the host are checked and searched by the above-mentioned measuring function. Create the list 705.
The insertion / withdrawal processing 706 is a function of processing joining or leaving a multicast group. When joining a multicast group, a connection candidate list 707 is created from a search list 705 and a receiving device serving as a connection candidate is created. , The destination of the multicast data or the source of the multicast data is changed, and the own receiving apparatus is inserted into the route for transmitting and receiving the multicast data.
Further, the host information of the transmission source receiving apparatus and the transmission destination receiving apparatus is stored in the connection information holding memory 708.
In the case of leaving from the multicast group, the insertion / removal processing 706 causes the transmission source reception device and transmission destination reception device stored in the connection information holding memory 708 to change the transmission destination reception device and the reception source reception device, respectively. . Also, the transmission device is notified of the departure from the multicast group.
In connection information providing processing 709, in response to a connection request from another receiving apparatus, the contents of the connection information holding memory 708 are referred to, and the receiving apparatus returns a transmission destination host as a host to which the receiving apparatus should receive a packet.
The connection information change processing 710 is a function of processing a request to change the transmission destination or transmission source from another receiving device, and changes the content of the connection destination information holding memory 708 according to the request.
The transfer process 711 receives the multicast packet based on the contents of the connection destination information holding memory 708, and performs transfer if there is a destination to be transferred.
FIG. 8 is a flowchart showing the contents of the transmission device discovery processing 701.
At step 801, the community name holding memory 702 is read, and at step 802, a transmission device search packet including this community name is transmitted to the network.
If there is a transmitting device in the same network segment, it may be transmitted as a broadcast packet.
In step 803, the process waits for a response from the transmitting device. If there is a response from the transmitting device to permit participation, the process proceeds to step 805, and the host information of the transmitting device that has responded is stored in the transmitting device information holding memory 703. On the other hand, if rejected, the process ends without doing anything.
FIG. 9 is a flowchart showing the processing contents of the connection point search processing 704.
In step 901, the transmitting device information holding memory 703 is read. In step 902, a connection request packet is sent to the other party. For example, first, a connection request is issued to the transmitting device. In step 903, a response from the partner host is waited.
In step 904, the name of the host that issued the connection request and the response time of the host are recorded in the search list 705.
In step 905, the contents of the response to the connection request are examined, and it is determined whether the host that issued the connection request matches the host to be connected provided as a response. If the above hosts match each other, it is known that the host that has issued the connection request has no destination for further forwarding the multicast packet, that is, it has reached the end of the multicast group. I do.
If they do not match, there is another host belonging to the multicast group beyond the host that issued the connection request, so the process returns to step 902, where the host that issued the connection request returns to the host to be connected provided as a response. Issue a connection request. Thereafter, by repeating the above processing, a list of information on all the hosts belonging to the multicast group, that is, the host names of the transmitting device and the receiving device and the distance to the host is obtained in the search list.
FIG. 10 is a flowchart showing the processing contents of the insertion / removal processing 706.
The insertion / withdrawal processing 706 is started when the connection point search processing 704 is completed or when leaving the multicast group. In step 1001, the process branches depending on the processing contents, into the case of the insertion process and the case of the removal process.
In the case of the insertion processing, the process proceeds to step 1002, where a host closest to the own receiving device and far from the transmitting device is selected from the search list 705 as a candidate, and a connection candidate list 707 is created.
In the case of the withdrawal process, the process proceeds to step 1003, where the connection information holding memory 708 is read.
In step 1004, the transmitting device is notified of the departure from the multicast group. In step 1005, a response is waited.
In step 1006, the host on the upstream side of the connection candidate list 707 or the connection information holding memory 708 is caused to change the destination host to its own receiving device in the case of insertion processing, and to connect to the destination host in the case of disconnection processing. A request is made to change to the downstream host of the information holding memory 708, respectively. In step 1007, the response is waited.
In step 1008, the host on the downstream side of the connection candidate list 707 or the connection information holding memory 708 is caused to change the transmission source host to its own receiving device in the case of insertion processing, and to connect the transmission source host in the case of disconnection processing. A request is issued to change to the host on the upstream side of the information holding memory 708. In step 1009, the response is waited.
In step 1010, the contents of the connection information holding memory 708 are updated so as to reflect the above-mentioned changes.
FIG. 11 is a flowchart showing the processing contents of the connection information providing processing 709.
In step 1101, the host information of the transmission destination in the connection information holding memory 708 is read. At step 1102, it is determined whether there is a connection request from another receiving apparatus. If the connection request is received, the process proceeds to step 1103. If there is no connection request, the process returns to step 1101 again, and the host information of the transmission destination in the connection information holding memory 708 is read again. This is because a process unrelated to the connection information providing process 709 may update the contents of the connection information holding memory 708.
In step 1103, the host information on the downstream side of the connection information holding memory 708 is responded to the connection request. If there is no downstream host, it responds with the host information of its own receiving device.
FIG. 12 is a flowchart showing the processing contents of the connection information change processing 710.
In step 1201, a request for insertion and removal from another receiving apparatus is waited for.
If a request comes, the process branches depending on the contents requested to be changed in step 1202, and if the change of the destination host is requested, the process proceeds to step 1203 to change the information of the destination host in the connection information holding memory 708. If a request to change the transmission source host has been made, the process proceeds to step 1204, and the information of the transmission source host in the connection information holding memory 708 is changed.
When any of the change processes is completed, the process proceeds to step 1205, and the completion of the process is notified to the receiving device that issued the request. Thereafter, the flow returns to step 1201 again, and waits for an insertion / removal request.
Next, in the above-described multicast transmitting apparatus and multicast receiving apparatus of the present invention, for example, when performing the multicasting in the network configuration of FIG. 15, the receiving apparatus as shown in FIG. I do.
First, if no receiving device is connected to the transmitting device 1502 yet, from the above description, the receiving device sends a search packet for discovering the transmitting device 1502, and if the transmitting device responds to this, Only the transmission device 1502 is a connection destination candidate for the reception device, and a configuration in which one reception device is connected to the transmission device 1502 is formed.
Next, a process in which a new receiving device joins the multicast group with some receiving devices already connected to the transmitting device will be described.
FIG. 13 is a schematic diagram showing this state.
As a first example, in a state where the receiving device 1 1504, the receiving device 2 1505, the receiving device 3 1512, and the receiving device 4 1515 are already connected to the transmitting device 1502 (FIG. 13A), the receiving device 5 is newly added. A case in which 1516 joins this multicast group will be described.
Receiving device 5 1516 that wants to join the multicast group sends out a packet for searching for transmitting device 1502. When the packet reaches the transmitting device 1502, the transmitting device issues a permission to join the multicast group to the receiving device 51516. Receiving this, the receiving device 51516 first issues a connection request to the transmitting device 1502. The transmitting device 1502 provides the receiving device 5 1516 with information on the receiving device 1 1504 that is transmitting the multicast packet as the receiving device to be connected.
Receiving device 5 1516 receives the response from transmitting device 1502, and issues a connection request to receiving device 1 1504. Receiving device 1 1504 responds to this connection request
Receiving device 2 sending a multicast packet as a receiving device to be connected
1505 information is provided.
Receiving device 5 1516 receives the response from receiving device 1 1504, and issues a connection request to receiving device 2 1505. In response to the connection request, the receiving device 2 1505 provides information of the receiving device 3 1512 that is transmitting the multicast packet as the receiving device to be connected.
Receiving device 5 1516 receives the response from receiving device 2 1505, and issues a connection request to receiving device 3 1512. In response to the connection request, the receiving device 3 1512 provides information on the receiving device 4 1515 that is transmitting the multicast packet as the receiving device to be connected.
Receiving device 5 1516 receives the response from receiving device 3 1505, and issues a connection request to receiving device 4 1515. Since the receiving device 4 1515 does not have a receiving device that is transmitting the multicast packet, the receiving device 4 1515 provides the information of the receiving device 4 1515 which is itself as the receiving device to be connected to the connection request.
The receiving device 5 1516 recognizes that the end of the multicast group has been reached because the receiving device that has issued the connection request for the first time in the connection request to the receiving device 4 1515 matches the receiving device to be connected.
In the network configuration of FIG. 15, when passing through the Ethernet (R) switch 1503 or the Ethernet (R) switch 1511, the signal passes through the wide area network 1509 and the router 1510 via the router 1508 for 0.5 ms, or Assuming that it takes 5 ms to pass through the reverse route, the receiving device 5 1516 measures the round trip time to each host when issuing a connection request. A search list as shown in FIG.
As is apparent from the table, the receiving device closest to the receiving device 5 1516 is the receiving device 4 1515 having the shortest round trip time.
Based on this, the receiving device 5 1516 sets the receiving device 4 1515 as a connection candidate and issues an insertion request to the receiving device 4 1515. By connecting the receiving device 5 1516 as the transmission destination of the receiving device 4 1515, a delivery route of the multicast packet as shown by the tip of the arrow in FIG. 13A is formed.
As a next example, in a state where the receiving device 1 1504, the receiving device 2 1505, the receiving device 4 1515, and the receiving device 5 1516 are already connected to the transmitting device 1502 (FIG. 13B), the receiving device 3 is newly added. A case in which 1512 joins this multicast group will be described.
In the configuration of FIG. 17, the receiving device 3 1512 is the third receiving device, but this is the case where the receiving device 3 1512 finally joined the multicast group. As in the first example, a search list as shown in FIG. 14B is obtained in the receiving device 3 1512.
Here, as the closest receiving devices, receiving device 4 1515 and receiving device 5 1516 are arranged with the same round trip time.
In this case, the receiving device 51516 which is far from the transmitting device is selected.
Based on this, the receiving device 3 1512 sets the receiving device 5 1516 as a connection candidate, and issues an insertion request to the receiving device 5 1516. By connecting the receiving device 3 1512 as a transmission destination of the receiving device 5 1516, a delivery route of the multicast packet is formed as indicated by the arrow in FIG. 13B.
Although this does not coincide with the route in FIG. 17, if the route in FIG. 13B is applied to FIG. 15, it will not flow twice in the same direction on the same path, that is, on the line connecting the devices. I understand that there is no.
For example, when the receiving device 4 1515 having the same round trip time is selected as a connection candidate contrary to the rule of selecting a device farther from the transmitting device, the path through which the packet flows is the receiving device 4 1515, the receiving device 3 1512, It becomes the receiving device 51516. When this route is applied to FIG. 15, packets flow twice in the same direction on the path between the Ethernet (R) switch 1511 and the Ethernet (R) switch 1514, and the network utilization efficiency decreases. You can see that. Therefore, when the round trip times are the same, it is necessary to select a receiving device farthest from the transmitting device.
As a next example, when the receiving device 1 1504, the receiving device 3 1512, the receiving device 4 1515, and the receiving device 5 1516 are already connected to the transmitting device 1502 (FIG. 13C), the receiving device 2 is newly added. A case will be described where 1505 joins this multicast group.
In this case, the obtained search list is as shown in FIG. 14C, and the hosts having the same round trip time, that is, the transmitting device 1502 and the receiving device 1 1504 appear again. In this case, no matter which host is selected as a connection candidate, packets will not flow in the same direction on the same path, but this is because the candidate host and the receiving device to be connected are the same. This is because it is directly connected to the Ethernet (R) switch 1503.
Since the latter two examples cannot be distinguished from each other by the newly joining receiver, if the round trip time is the same, it is necessary to always adopt the rule of selecting the receiver farthest from the transmitter. There is.
As described above, in the multicast receiving device and the transmitting device according to the present invention, a multicast function of distributing transmission data only to hosts belonging to a specific group among a plurality of hosts existing on a network is performed by a special router. This can be realized by transferring between the receiving devices belonging to the multicast group without depending on the function.
[0022]
【The invention's effect】
As described above, in the multicast receiving device and the transmitting device according to the present invention, a multicast function for distributing transmission data only to a host belonging to a specific group among a plurality of hosts existing on a network is provided by a special router. This can be realized by transferring data between receiving devices belonging to a multicast group without depending on the functions.
[Brief description of the drawings]
FIG. 1 is a block diagram of a part for realizing a multicast data transfer function in a multicast receiving apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram of a part for realizing a function of measuring a distance on a network to a specific host by a response time in the multicast receiver according to the embodiment of the present invention;
FIG. 3 is a functional block diagram showing functions of the multicast transmission device according to the embodiment of the present invention;
FIG. 4 is a flowchart showing processing contents of a participation request processing 301;
FIG. 5 is a flowchart showing processing contents of a connection request processing 305;
FIG. 6 is a flowchart showing processing contents of an insertion / removal processing 307;
FIG. 7 is a functional block diagram showing functions of the multicast receiving device according to the embodiment of the present invention;
FIG. 8 is a flowchart showing processing contents of a transmission device discovery processing 701;
FIG. 9 is a flowchart showing processing contents of a connection point search processing 704;
FIG. 10 is a flowchart showing processing contents of an insertion / removal processing 706;
FIG. 11 is a flowchart showing processing contents of connection information providing processing 709;
FIG. 12 is a flowchart showing processing contents of connection information change processing 710;
FIG. 13 is a schematic diagram illustrating a process in which a receiving device joins a multicast group.
FIG. 14 is a diagram showing search lists in three examples.
FIG. 15 is a configuration diagram of a network in an example
FIG. 16 is a network configuration diagram for explaining multicast in a conventional example.
FIG. 17 is a network configuration diagram for explaining multicast in the present invention.
[Explanation of symbols]
101 Receive data buffer
102 Error detector
103 transfer gate
104 Receive queue
105 ROM
106 CPU
107 RAM
108 send queue
109 Transmit multiplexer
110 Transmission data buffer
111 Transfer condition holding memory
112 Transfer destination information holding memory
113 Comparator
114 Data Converter
115 Immediate transmission memory
201 Pattern holding memory
202 Pattern holding memory
203 comparator
204 timer
205 comparator

Claims (4)

ネットワーク上に存在する複数のホストのうち、特定のグループに属する受信装置にのみ送信データを配信するマルチキャスト機能を実現するマルチキャスト受信装置であって、
受信したパケットを一時的に保持する受信データバッファと、
受信したパケットのうち、転送すべきパケットの識別情報を保持する転送条件保持手段と、
前期受信データバッファに保持されたパケットと、前期転送条件保持手段に保持された識別情報を比較し転送すべきパケットを識別する比較手段と、
パケットの転送先の情報を保持する転送先情報保持手段と、
前記比較手段の識別結果によって、前記受信データバッファに保持された受信パケットのうち、転送すべきパケットを取り出し、前記転送先情報保持手段に保持された転送先情報に基づいて転送パケットに書き換えるデータ変換手段と、
前記データ変換手段によって書き換えられた転送パケットを保持する即時送信データ保持手段と、
通常の送出パケットを蓄える送信キューからの送信パケットと、
前記即時送信データ保持手段に保持された転送パケットとを受け、送信すべきデータを一時的に保持する送信データバッファに優先的に転送パケットを送り込む送信マルチプレクサと
を備えたマルチキャスト受信装置。
Among a plurality of hosts existing on the network, a multicast receiving device that realizes a multicast function of delivering transmission data only to receiving devices belonging to a specific group,
A reception data buffer for temporarily holding received packets,
Transfer condition holding means for holding identification information of a packet to be transferred among received packets;
Comparing means for comparing the packet held in the received data buffer with the identification information held in the transfer condition holding means and identifying a packet to be transferred;
Transfer destination information holding means for holding information of a packet transfer destination;
Data conversion for extracting a packet to be transferred from the received packets held in the received data buffer according to the identification result of the comparing means, and rewriting the received packet with a transfer packet based on the transfer destination information held in the transfer destination information holding means. Means,
An immediate transmission data holding unit for holding a transfer packet rewritten by the data conversion unit,
Transmission packets from a transmission queue that stores normal transmission packets;
A multicast receiving apparatus comprising: a transmission multiplexer that receives the transfer packet held in the immediate transmission data holding unit and preferentially sends the transfer packet to a transmission data buffer that temporarily holds data to be transmitted.
ネットワーク上に存在する複数のホストのうち、特定のグループに属する受信装置にのみ送信データを配信するマルチキャスト機能を実現するマルチキャスト受信装置であって、
送信すべきデータを一時的に保持する送信データバッファと、
特定の送信パケットの識別情報を保持する送信パケット識別情報保持手段と、
前記送信データバッファと、
前記送信パケット識別情報保持手段に保持された送信パケットの識別情報を比較する送信パケット比較手段と、
受信したデータを一時的に保持する受信データバッファと、
特定の受信パケットの識別情報を保持する受信パケット識別情報保持手段と、
前記受信データバッファと、
前記受信パケット識別情報保持手段に保持された受信パケットの識別情報を比較する受信パケット比較手段と、
前記送信パケット比較手段によって認識された特定の送信パケットの送出時刻に計時を開始し、前記受信パケット比較手段によって認識された特定の受信パケットの受信時刻に計時を停止するタイマー手段と
を備えたマルチキャスト受信装置。
Among a plurality of hosts existing on the network, a multicast receiving device that realizes a multicast function of delivering transmission data only to receiving devices belonging to a specific group,
A transmission data buffer for temporarily holding data to be transmitted,
Transmission packet identification information holding means for holding identification information of a specific transmission packet;
The transmission data buffer;
Transmission packet comparing means for comparing the identification information of the transmission packet held in the transmission packet identification information holding means,
A reception data buffer for temporarily holding received data,
Receiving packet identification information holding means for holding identification information of a specific reception packet;
The reception data buffer;
A reception packet comparison unit that compares the identification information of the reception packet held by the reception packet identification information holding unit;
A timer which starts timing at a transmission time of a specific transmission packet recognized by the transmission packet comparing means and stops timing at a reception time of the specific reception packet recognized by the receiving packet comparing means. Receiver.
ネットワーク上に存在する複数のホストのうち、特定のグループに属する受信装置にのみ送信データを配信するマルチキャスト機能を実現するマルチキャスト送信装置であって、
受信装置からの送信装置の探索に対し、マルチキャストグループへの参加許可あるいは拒否を応答するとともに、マルチキャストグループに参加しているホスト情報を保持するメンバーリストを更新する参加要求処理手段と、
単一の送信先ホストのホスト情報を保持する受信装置情報保持手段と、
受信装置からの接続要求に対して、前記受信装置情報保持手段に送信先ホストのホスト情報が保持されている場合には、その送信先ホスト情報を、保持されていない場合には、自送信装置のホスト情報を、通知する接続要求処理手段と、
受信装置からのマルチキャストグループからの離脱の要求に対して、離脱要求を出した受信装置が、前記受信装置情報保持手段に保持される送出先ホストである場合には、前記受信装置情報保持手段に保持される送信先ホストを変更するとともに、マルチキャストグループに参加しているホスト情報を保持するメンバーリストを更新する離脱要求処理手段と、
受信装置からの挿入の要求に対して、前記受信装置情報保持手段に保持される送出先ホスト情報を更新する挿入要求処理手段と、
前記受信装置情報保持手段にそのホスト情報が保持された受信装置にのみマルチキャストすべきデータを送出する送信処理手段と
を備えたマルチキャスト送信装置。
A multicast transmission device that realizes a multicast function of distributing transmission data only to reception devices belonging to a specific group among a plurality of hosts existing on a network,
Participation request processing means for responding to the search for the transmission device from the reception device with permission or rejection of participation in the multicast group and updating a member list holding information on hosts participating in the multicast group;
Receiving device information holding means for holding host information of a single destination host;
In response to a connection request from the receiving device, if the receiving device information holding unit holds the host information of the destination host, the receiving host information is stored. Connection request processing means for notifying the host information of
In response to a request to leave from the multicast group from the receiving device, if the receiving device that issued the leave request is the destination host held in the receiving device information holding means, the receiving device information holding means Leaving request processing means for changing a held destination host and updating a member list holding information on hosts participating in the multicast group;
In response to an insertion request from a receiving device, an insertion request processing unit that updates destination host information held in the receiving device information holding unit,
A transmission processing unit for transmitting data to be multicast only to the receiving device whose host information is held in the receiving device information holding unit.
ネットワーク上に存在する複数のホストのうち、特定のグループに属する受信装置にのみ送信データを配信するマルチキャスト機能を実現するマルチキャスト受信装置であって、
自受信装置が受信したいマルチキャストのデータ送信の起点となっている送信装置を探索する送信装置発見手段と、
マルチキャストグループの接続状態を認識するために、まず前記送信装置発見手段によって発見された送信装置に対して接続要求を出し、その応答として前記送信装置以外のホスト情報を指定された場合には、続いてそのホスト情報が提供されたホストに対し接続要求を出し、接続要求を出したホストと応答によって指定されたデータを受信すべきホストが一致するまでこれを繰り返すとともに、前記すべての接続要求を出したホストの名称と前記接続要求を出したホストからの応答時間を記録する探索リストを作成する接続点探索処理手段と、
自受信装置にデータを送信する一つの送信元ホストのホスト情報と、データを送信する送信先ホストがある場合には、一つの送信先ホストのホスト情報とを保持する接続情報保持手段と、前記探索リストの中から、自受信装置からもっとも近く、かつ、前記送信装置からもっとも離れたホストを選ぶことで、自受信装置がデータを受信すべき送信元ホストを選択し、前記接続情報保持手段に保持させるとともに、前記送信元ホストに対して、データを自受信装置に送信するように、そのデータ送信先を自受信装置に変更する要求を出し、前記送信元ホストがその送信先ホストにデータを送っていた場合には、前記送信元ホストの送信先ホストに対して、自受信装置からデータを受信するように、その送信元ホストを自受信装置に変更する要求を出すとともに自受信装置の送信先ホストとして前記送信元ホストの送信先ホストの情報を前記接続情報保持手段に保持させる挿入処理手段と、
他の受信装置からの接続要求に対して、自受信装置が送信先ホストを持ち、データを送信している場合には、前記接続情報保持手段に保持された送信先ホストのホスト情報を応答し、データを送信していない場合には、自受信装置のホスト情報を応答する接続情報提供処理手段と、
他の受信装置からの送信先ホストあるいは送信元ホストの変更要求に対して、前記接続情報保持手段に保持された、自受信装置の送信先ホストあるいは送信元ホストのホスト情報を変更する接続情報変更処理手段と、
自受信装置が送信先ホストを持ち、データを送信している場合には、自受信装置の送信元ホストに対しては、自受信装置の送信先ホストにデータを送信するように、その送信先ホストを変更する要求を出し、自受信装置の送信先ホストに対しては、自受信装置の送信元ホストからデータを受信するように、その送信元ホストを変更する要求を出し、自受信装置が送信先ホストを持たない場合には、自受信装置の送信元ホストに対して、自受信装置へのデータ送信を停止するように、その送信先ホスト情報を削除する要求を出すとともに送信装置に対してマルチキャストグループからの離脱を要求する離脱処理手段と、
ネットワークからのパケットを受信する受信処理手段と、
自受信装置が送信先ホストを持つ場合には、前記接続情報保持手段に送信元ホストとして保持された、送信装置あるいは受信装置から送信されたマルチキャストすべきパケットを受信した際には、前記接続情報保持手段に送信先ホストとして保持された、単一の受信装置に対してマルチキャストすべきパケットを直ちに送信する送信処理手段と
を備えた請求項1または2に記載の受信装置。
Among a plurality of hosts existing on the network, a multicast receiving device that realizes a multicast function of delivering transmission data only to receiving devices belonging to a specific group,
Transmitting device finding means for searching for a transmitting device that is a starting point of multicast data transmission that the own receiving device wants to receive;
In order to recognize the connection state of the multicast group, first, a connection request is issued to the transmission device discovered by the transmission device discovery means, and when host information other than the transmission device is specified as a response, Issue a connection request to the host to which the host information was provided, repeat this process until the host that issued the connection request matches the host that should receive the data specified by the response, and issued all the connection requests. Connection point search processing means for creating a search list that records the name of the host and the response time from the host that issued the connection request,
Connection information holding means for holding host information of one source host transmitting data to its own receiving device and, if there is a destination host transmitting data, host information of one destination host, From the search list, by selecting the host closest to the own receiving device and farthest from the transmitting device, the own receiving device selects a source host to receive data, and the connection information holding means A request to change the data transmission destination to the self-receiving device is sent to the source host so that the data is transmitted to the self-receiving device, and the source host sends the data to the destination host. If so, a request is sent to the destination host of the source host to change its source host to its own receiving device so as to receive data from its own receiving device. And inserting processing means for holding the source host information of the destination host as the destination host of the local receiving device the connection information holding means with out,
In response to a connection request from another receiving device, if the own receiving device has a destination host and is transmitting data, the host information of the destination host held in the connection information holding means is returned. Connection data providing processing means for responding to the host information of the own receiving device when data is not transmitted;
In response to a request for changing the destination host or the source host from another receiving device, a connection information change that changes the host information of the destination host or the source host of the own receiving device held in the connection information holding means. Processing means;
If the own receiving device has a destination host and is transmitting data, the destination host of the own receiving device is instructed to send the data to the destination host of the own receiving device. A request to change the host is issued, and a request to change the transmission source host is issued to the transmission destination host of the reception device so as to receive data from the transmission source host of the reception device. If it does not have a destination host, it sends a request to the source host of its own receiving device to delete the destination host information so as to stop data transmission to its own receiving device, and sends it to the transmitting device. Withdrawal processing means for requesting withdrawal from the multicast group by
Receiving processing means for receiving a packet from the network;
When the own receiving apparatus has a destination host, when receiving a packet to be multicast transmitted from a transmitting apparatus or a receiving apparatus held as a source host in the connection information holding means, the connection information 3. The receiving device according to claim 1, further comprising: a transmission processing unit that immediately transmits a packet to be multicast to a single receiving device, the transmission processing unit being held as a destination host by the holding unit.
JP2003007969A 2003-01-16 2003-01-16 Multicast receiver and transmitter Expired - Fee Related JP4135507B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003007969A JP4135507B2 (en) 2003-01-16 2003-01-16 Multicast receiver and transmitter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003007969A JP4135507B2 (en) 2003-01-16 2003-01-16 Multicast receiver and transmitter

Publications (2)

Publication Number Publication Date
JP2004222029A true JP2004222029A (en) 2004-08-05
JP4135507B2 JP4135507B2 (en) 2008-08-20

Family

ID=32897908

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003007969A Expired - Fee Related JP4135507B2 (en) 2003-01-16 2003-01-16 Multicast receiver and transmitter

Country Status (1)

Country Link
JP (1) JP4135507B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010050606A (en) * 2008-08-20 2010-03-04 Nec Corp Wireless base station, wireless communication system, path connection method, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010050606A (en) * 2008-08-20 2010-03-04 Nec Corp Wireless base station, wireless communication system, path connection method, and program

Also Published As

Publication number Publication date
JP4135507B2 (en) 2008-08-20

Similar Documents

Publication Publication Date Title
US20080232368A1 (en) Network system
JP2005020327A (en) Multicast distributing method, apparatus, and system thereof
US20100303073A1 (en) Network relay apparatus and inter-network relay method
JP2007195046A (en) Mobile communication system, radio base station, mobile terminal, and distribution method
TWI323101B (en) Communication system and its terminal
KR20130132629A (en) Discovery of conventional network devices and bridges
KR100636273B1 (en) Apparatus and method for transmitting of mpls multicast packet on ethernet
WO2013026336A1 (en) Method for path detection and node
WO2017031947A1 (en) Method and apparatus for sending target data to and acquiring target data from network
WO2019128699A1 (en) Flow table-based data transfer method
WO2013075415A1 (en) Download method and system by way of broadcast in ubiquitous network
WO2013189414A2 (en) Automatic network topology acquisition method and system, and network query and management system
WO2004064335A1 (en) Method for effectively using band in multi-cast communication in ring-type network
JP2006074132A (en) Multicast communication method and gateway device
WO2008040217A1 (en) Methods which avoid cluster in a wireless mesh network and systems and devices thereof
US8135010B2 (en) System and apparatus thereof for Ethernet PON communication
JP2006279937A (en) Wireless base station, wireless terminal, and wireless access network
EP3890242A1 (en) Multicast replication in 5g networks
JP4809855B2 (en) IP multicast communication monitoring method and system
JP4135507B2 (en) Multicast receiver and transmitter
US7120146B2 (en) Method and network for interconnecting separate multicast channels acquired for separate bus systems
JP5078034B2 (en) Communication device, P2P network construction method, program, and recording medium
JP3625156B2 (en) Network configuration method and route determination apparatus
JP5333793B2 (en) Topology specifying method and topology specifying device
TWI662853B (en) Communication system and communication method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060116

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080121

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

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

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees