JP3759527B2 - マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体 - Google Patents

マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体 Download PDF

Info

Publication number
JP3759527B2
JP3759527B2 JP2003389314A JP2003389314A JP3759527B2 JP 3759527 B2 JP3759527 B2 JP 3759527B2 JP 2003389314 A JP2003389314 A JP 2003389314A JP 2003389314 A JP2003389314 A JP 2003389314A JP 3759527 B2 JP3759527 B2 JP 3759527B2
Authority
JP
Japan
Prior art keywords
multicast
server
client
side gateway
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003389314A
Other languages
English (en)
Other versions
JP2004254288A (ja
Inventor
誠一郎 谷
敏明 宮崎
真一 湊
武 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003389314A priority Critical patent/JP3759527B2/ja
Publication of JP2004254288A publication Critical patent/JP2004254288A/ja
Application granted granted Critical
Publication of JP3759527B2 publication Critical patent/JP3759527B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

本発明は、1対1通信(ユニキャスト)だけがサポートされている既存のインターネットを介して、1対多通信プロトコル(マルチキャスト)対応の送信ホスト(サーバ)から複数の1対多通信プロトコル対応の受信ホスト(クライアント)に対してデータを同報するマルチキャストデータ通信システム及び方法等に関する。
従来、インターネット上で複数の受信ホストに対してデータを同報するマルチキャスト通信を実現する方法として、予め定められたマルチキャストIP(Internet Protocol)アドレスを用いて行う方法(IPマルチキャスト)がある。この方法は、送信ホスト(サーバ)がマルチキャストIPアドレスを宛先としてデータを送信すると、配送途中、インターネット上に配備されたマルチキャストルータ(中継ノード)が、データを適宜コピーすることにより、全ての受信ホスト(クライアント)まで同一のデータを届けるというものである。
前述したIPマルチキャストを実現するためには、全てのルータがIPマルチキャストに対応している必要がある。しかし、大部分のルータがIPマルチキャストに対応又は有効にしていない現状において、全てのルータをIPマルチキャスト対応又は有効にさせるのは困難である。
一方、送信端末と受信端末がIPマルチキャスト非対応網を跨いで、IPマルチキャスト通信を実現する方法として、MBONE(マルチキャスト backBONE)と呼ばれる仮想マルチキャスト実験網で行われているようなトンネリングがある。これは、IPマルチキャスト対応LAN(Local Area Network)間をユニキャストでカプセル化することにより、前記LAN間に仮想的な通信リンクを構築し、この上でIPマルチキャスト通信を行う方法である。しかしながら、この仮想的なリンクは、ポイント・ツー・ポイント接続であり、また手動で設定されるため、接続するLANの数が多い場合は、最適な配信ツリーを構築するのは極めて困難である。
さて、IPマルチキャストでは、通常、送信ホストから複数の受信ホストまでのデータ配送経路は、送信ホストを根(ルート)とし、受信ホストを葉(リーフ)とするツリーとなる。これをマルチキャストツリーという。IPマルチキャストにおいて、マルチキャストツリーを構築するプロトコルとしては、RFC1075のDVMRP(Distance-Vector マルチキャスト Routing Protocol)や、RFC1584のMOSPR(マルチキャスト Open Shortest Path First)や、RFC2362のPIM−SM(Protocol Independent マルチキャスト-Sparse Mode)などがある。また、各受信ホストがツリーに参加したり、離脱したりする操作を管理するためのプロトコルとして、RFC1112のIGMP(Internet Group Managem
ent Protocol)がある。
しかし、マルチキャストツリー構築プロトコルには、ツリーを構成するルータ数に関してスケーラビリティが無いという欠点がある。そして、DVMRPでは、受信ホストの存在に関わらず、総てのルータを含む配信木が定期的に構築され、データが配信されてしまう。また、MOSPFは各中継ノードがマルチキャストツリー全体のトポロジー情報を保持する必要があり、マルチキャストツリーが大規模な場合に対応できない。また、PIM−SMはマルチキャストツリーに参加するホストがrendezvous point(ランデブーポイント)と呼ぶ特定のノードにアクセスする必要があり、どうしてもrendezvous pointにおいて輻輳が起き易くなる。
さらに、IPマルチキャストでは、マルチキャストIPアドレスがグローバルかつユニーク(唯一)であることを保証する必要があるため、マルチキャストIPアドレスの唯一性を保つための管理コストがかかる。加えて、上記プロトコルではマルチキャストツリーに参加していないホストであっても送信ホストになることが可能であるため、悪意のある者がマルチキャストツリーの参加者に対して無用なトラヒックを送りつけるような攻撃を許してしまう。
これに対してIPマルチキャストの拡張である、非特許文献2は、Source-specific マルチキャスト(SSM)と呼ばれており、送信元アドレスとマルチキャストアドレスの組によってマルチキャストツリーを特定している。これにより、マルチキャストIPアドレスは、各ホスト内でユニークに保てばよく、マルチキャストIPアドレスの管理コストの問題を解消することが出来る。また、各グループで送信できるホストはただ一つに限られているので、悪意のある者がマルチキャストツリーの参加者に対して無用なトラヒックを送りつけるような攻撃を防ぐことが出来る。しかしながら、依然として、総てのルータがIPマルチキャスト対応であることを要求するため、現状において広域展開は困難である。
一方、特許文献2には、IPマルチキャストを使わず、ユニキャストだけを用いたマルチキャストデータ通信方法が開示されている。この方法は、受信ホストから送信された受信開始要求を受け取ったマルチキャストサーバ(中継ノード:中継装置)がその受信ホストを記憶し、以後、その受信ホストから受信終了要求を受け取るまで、マルチキャストデータをその受信ホストに配送するというものである。
しかし、この方法では、受信ホストからの受信終了要求が伝送途中に失われた時や受信ホストがハングアップした時は、上記受信ホストヘのマルチキャストデータの配送が止まらないという問題があった。また、受信開始要求により、一度配送経路が確定すると、ルータの経路情報の変化により、受信ホストに対し最寄りの中継ノードが変わった場合でも、その受信ホストに配送する経路は変わらないという問題があった。
以上述べた特許文献2に類似する技術として、非特許文献3がある。非特許文献3はアプリケーション層におけるマルチキャスト技術であって、一番最初に要求を出した受信ホストヘのforward-path(順方向パス)に基づいてマルチキャストツリーが決定される。その後にこの受信ホストがマルチキャストツリーから離脱すると、別の受信ホストヘのforward-pathに基づくマルチキャストツリーが決定されて、マルチキャストツリーの構成を変えるようになっている。
しかしながら、特許文献2、非特許文献3には次のようなセキュリティ上の問題がある。すなわち、送信ホスト又は受信ホストが、テーブル作成機能を持つパケット(例えば上述した受信要求パケット)を適当な端末アドレスに宛てて送出することで、ホストから宛先に至るパス上に存在する各ノードにテーブルを作成することが可能となる。この性質を利用することにより、悪意のあるユーザが多数のアドレス宛てにテーブル生成パケットを送出すると、無意味なテーブルがネットワーク内のノードに多数生成されてしまう。その結果、ノードの負荷が不必要に重くなってその性能を低下させてしまうという問題がある。
これに対し、非特許文献1では、ユニキャスト通信可能なネットワークを使い1対多通信を実現する方法であって、悪意のあるユーザによる攻撃によって無意味なテーブルがネットワーク内のノードに多数生成されて負荷が重くなるといった問題を生じず、高度なセキュリティを実現できる方法を開示している。また、非特許文献1では、受信ホストに対する最寄りの中継ノードが変化したり、中継ノードの負荷状態が変化した場合でも、1対多通信の通信経路を変更可能である。
特開2001−230774号公報 特開平10−63598号公報 宮崎、谷、高橋,「IP unicast address を用いたマルチキャスト方式の提案」,電子情報通信学会,2001年5月,信学技法IN2001−9 Hugh.W.Holbrook(ヒュー・W・ホールブルック),David R.Cheriton(デビット・R・チェリトン),"IP マルチキャスト Channels: EXPRESS Support for Large-scale Single-source Applications(IPマルチキャストチャネル:大規模シングルソースアプリケーションに対するエクスプレスサポート)",1999, In Proc. of SIGCOMM(シグコム),p.65-78, Ion Stoica(イオン・ストイカ),T.S.Eugene Ng(T.S.ユージン),Hui Zhang(ホイ・チャン),"REUNITE: A Recursive Unicast Approach to マルチキャスト(リユニット:マルチキャストへのリカーシブ・ユニキャスト・アプローチ)",In Proc. of lNFOCOM2000(インフォコム2000),p.1644-1653
現在、多くの市販されている同報配信用動画像送受信ソフトは、IPマルチキャスト対応であり、独自のプロトコルを実装する必要のある非特許文献1の方法を利用することは困難である。すなわち、非特許文献1の方法を用いるためには、新たに対応端末ソフトを開発することが必要であり、コストがかかるという問題があった。
さらには、市販のパーソナルコンピュータにはIPマルチキャスト対応の同報配信用動画像送受信ソフトがインストール済みであることが多いにもかかわらず、これが使用できないために、新たに非特許文献1の方法に対応した新端末ソフトをユーザ自らインストールすることが必要であった。
一方、IPマルチキャスト対応クライアント、及び、IPマルチキャスト対応サーバの各サブネットにゲートウェイを置き、このゲートウェイが上記クライアントからの受信要求をユニキャストとして上記サーバが存在するサブネットのゲートウェイに送り、上記サーバの存在するサブネットのゲートウェイは、上記サーバが送出するマルチキャストパケットをユニキャストパケットに変換して上記クライアントが存在するサブネットのグートウェイに送り、該ゲートウェイは再びマルチキャストパケットに変換してサブネット内に流すことにより上記クライアントがマルチキャストパケットを受信可能にする手法が、特許文献1に開示されている。しかし、この方法は、ユニキャストによる一対一通信でゲートウェイ間を結ぶことを仮定しているため、クライアントの数が多い場合、サーバ側ゲー
トウェイに過大な負荷がかかるという問題がある。また、非特許文献1の方式は、クライアントが受信要求をしている間、配送経路を維持し続けるための制御が必要なため、特許文献1の方式のゲートウェイ間のユニキャスト部分に、非特許文献1の方式をそのまま用いることは出来ない。
本発明の目的は、IPマルチキャスト対応クライアントがマルチキャストパケットの受信を要求している間、IPマルチキャスト対応クライアント及びIPマルチキャスト対応サーバのそれぞれが属するIPマルチキャスト対応ネットワーク上の上記ゲートウェイ間に、非特許文献1の方式によるユニキャストのみを用いたツリー状配信経路を生成・維持することができるマルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体を提供することにある。
この発明は、上記の課題を解決すべくなされたもので、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムであって、前記クライアント側ゲートウェイは、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段とを備え、前記サーバ側ゲートウェイは、前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段を備える、ことを特徴とするマルチキャストデータ通信システムである。
本発明によれば、IPマルチキャスト対応のクライアントがIGMP membership report(IGMPメンバシップレポート)を定期的に発行することにより、IPマルチキャスト対応のクライアントの存在を常に確認し、存在が確認できている期間のみ非特許文献1の方式における受信要求パケットを発行するクライアント側ゲートウェイと、この受信要求パケットを定期的に受信中の期間のみ、マルチキャストパケットをユニキャストに変換して、受信要求パケットの送信元に送るサーバ側ゲートウェイにより、IPマルチキャスト端末が非特許文献1のマルチキャストデータ通信方法を使用することを可能にする。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるマルチキャストデータ通信方法であって、前記クライアント側ゲートウェイが、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信し、前記サーバ側ゲートウェイが、前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出し、前記クライアント側ゲートウェイが、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出する、ことを特徴とするマルチキャストデータ通信方法である。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイであって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段と、を備えることを特徴とするクライアント側ゲートウェイである。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイであって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段、を備えることを特徴とするサーバ側ゲートウェイである。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムであって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムである。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムであって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムである。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、の各処理をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体である。
また本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体である。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムであって、前記クライアント側ゲートウェイは、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段とを備え、前記サーバ側ゲートウェイは、前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段を備えることを特徴とする。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるマルチキャストデータ通信方法であって、前記クライアント側ゲートウェイが、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信し、前記サーバ側ゲートウェイが、前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出し、前記クライアント側ゲートウェイが、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出することを特徴とする。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイであって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段とを備えることを特徴とする。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイであって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段を備えることを特徴とする。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムであって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップとをコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムである。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムであって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムである。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップとの各処理をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体である。
また、本発明は、マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップをコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体である。
以上説明したように、本発明によれば、クライアントが多数ある場合においても、サーバにフローが集中するという問題を解決しながら、マルチキャスト非対応網を経由したマルチキャスト対応ネットワーク間のマルチキャストデータ通信を可能とした。
以下、本発明を実施するための最良の形態について説明する。
1.ネットワーク構成
図1に本発明の一実施の形態によるマルチキャストデータ通信方法を用いてIPマルチキャスト対応端末を接続する場合のネットワーク構成例を示す。
図においては、3つのローカルネットワーク、LAN(A)、LAN(B)、LAN(C)が、IPマルチキャスト非対応のネットワーク700により接続されている。そして、IPマルチキャスト対応のサーバ(以下、「IPマルチキャストサーバ」)またはクライアント(以下、「IPマルチキャストクライアント」)が接続している各LANセグメントには、ゲートウェイを配置する。ここで、ゲートウェイとは、IPマルチキャストクライアントが受信要求をしている間だけ、下記2章に示す従来技術のマルチキャストデータ通信方法によりネットワーク700に配信経路を生成・維持し、かつ、IPマルチキャストサーバが送出するIPマルチキャストをユニキャストに変換して、この配信経路に送出する機能を持つ装置である。図1の例では、各LANは、1セグメントからなるが、複数セグメントからなるLANにおいては、各セグメントにゲートウェイを配置する。IPマルチキャストサーバ側のセグメントとIPマルチキャストクライアント側のセグメントでは、ゲートウェイの機能が異なるが、例えば、個人用計算機を、その時々により、IPマルチキャストサーバにしたり、あるいは、IPマルチキャストクライアントにしたりする場合は、IPマルチキャストサーバ側のゲートウェイ(以下、「サーバ側ゲートウェイ」)とIPマルチキャストクライアント側のゲートウェイ(以下、「クライアント側ゲートウェイ」)の両方を同じセグメントに配置すればよい。また、サーバ側ゲートウェイとクライアント側ゲートウェイが、同じホスト上で動作していても良い。
なお、IPマルチキャスト非対応のネットワーク700には、2章に示す従来技術に示される中継ノード、すなわち、ある送信ホストから複数の受信ホストヘのツリー状のデータ配信経路を構成するための分岐機能を持つ中継ノード600が1つ以上配置されている。
図1において、LAN(A)には、IPマルチキャストサーバ200が配置され、LAN(B)、LAN(C)には、それぞれ、IPマルチキャストクライアント500b、500c(以下、「IPマルチキャストクライアント500」)が配置されている。また、ゲートウェイとして、LAN(A)にはサーバ側ゲートウェイ300が、LAN(B)、LAN(C)には、それぞれ、クライアント側ゲートウェイ400b、400c(以下、「クライアント側ゲートウェイ400」)が配置されている。
2.従来技術のマルチキャストデータ通信方法
ここでは、非特許文献1に記載の技術を用いたマルチキャストデータ通信方法について示す。
2.1 従来技術の実施の形態1
図5は、従来技術のマルチキャスト通信が行われるネットワーク構成の一例について示す。即ち、ここでは1つの中継ノード21に4つの受信ホスト22−1,22−2,22−3,22−4がネットワークを介して接続され、送信ホスト(図示せず)もネットワークを介して中継ノード21に接続されているものとする。なお、受信ホスト22−1、22−2、22−3、22−4のIPアドレスは、それぞれ、「10.10.9.8」、「10.11.10.9」、「10.12.11.10」、「10.13.12.11」である。
各受信ホスト22−1〜22−4は、予め決められた値より小さい時間間隔毎に受信要求パケットを送出する。受信要求パケットが中継ノード21に到着すると、その到着時刻が中継ノード21のテーブル(以下、「配信テーブル」という)に記録される。なお、中継ノード21の配信テーブルに登録された受信ホストを、中継ノード21の子という。子が登録されている中継ノード21自身も、予め決められた値より小さい時間間隔毎に受信要求パケットを送信ホストに向かって送出する。より送信ホストに近い中継ノードにこの受信要求パケットが到着すると、到着時刻が記録される。中継ノード自身が受信要求パケットを送信ホストに向かって送出するタイミングについては後述する。
図6は従来技術の実施の形態1の配信テーブルの一例を示すもので、各子のアドレスと各子からの受信要求パケットが中継ノード21に到着した時刻が子毎に記録されている。
送信ホストからのデータパケットがこの中継ノード21に到着した時、現在時刻と、配信テーブルに記録された各子毎の受信要求パケット到着時刻とを比較し、その間隔がある値以上である子はタイムアウトしたと見なし、その子に対してはデータパケットを送出しない。この時、配信テーブルからこの子を削除する。
例えば、図7は、中継ノード21に送信ホストからのデータパケットが時刻10:23:11に到着した時の様子を示すものである。タイムアウト時間間隔が00:00:10であったとすると、図6より、子3だけがタイムアウトしていることになる。従って、このデータパケットは、図8に示すように、子1及び子2(受信ホスト22−1,22−2)に対してだけ送出される。また、この時、子3は配信テーブルから削除される。子3が削除された後の配信テーブルは、図9に示すようになる。
全ての子がタイムアウトしていた場合には、配信テーブル自体を削除する。配信テーブルに登録された子や配信テーブル自体を削除するための他の方法も考えられる。例えば、受信要求パケットが到着した時に、その受信要求パケットが対応するツリーIDの配信テーブルについて、タイムアウトした子の削除操作を行えば、データパケット転送時の処理量を減らすことが出来る。これは、リアルタイムストリームデータなど、転送レートが重要な場合は有益である。また、タイムアウトした子や配信テーブルが、より確実に削除されるようにするには、中継ノード自体に、タイムアウトした子や配信テーブルを削除するプログラムを定期的に起動する仕組みを作っておく方法もある。
図10はマルチキャスト通信が行われるネットワーク構成の他の例について示す。即ち、ここでは3つの中継ノード31−1,31−2,31−3に7つの受信ホスト32−1,32−2,32−3,32−4,32−5,32−6,32−7及び1つの送信ホスト33(本節では以下、「サーバ」と記述)がネットワークを介して接続されている状態を示している。
図11は図10の構成において、クライアント32−1,32−2,32−4,32−5,32−6がマルチキャストに参加している状態から、さらにクライアント32−7が新たに受信要求パケットを送出してきた状態を示している。ここで、中継ノード31−3は既に高負荷状態になっており、クライアント32−7のためにデータパケットを複製する回数を増やす余裕がないものとする。
この時、中継ノード31−3はクライアント32−7からの受信要求パケットをそのままサーバ33に向かって転送する。中継ノード31−2にクライアント32−7からの受信要求パケットが到着した時、中継ノード31−2が高負荷状態でなければ、当該中継ノード31−2の配信テーブルに子として登録される。この結果、サーバ33からのデータパケットは、中継ノード31−2でクライアント32−7のために複製され、ユニキャストで直接クライアント32−7に送られる。
クライアント32−7からの受信要求パケットは、予め決められた値以下の時間間隔で送出され続けられるので、その度毎に中継ノード31−3で転送され、中継ノード31−2では配信テーブルの受信要求パケット到着時刻が更新される。
次に、図12に示すように、クライアント32−5が離脱パケットもしくはタイムアウトにより中継ノード31−3の配信テーブルから削除され、中継ノード31−3の負荷が下がり、この結果、中継ノード31−3は新たに子を増やすことが可能になったものとする。この時、中継ノード31−3にクライアント32−7の受信要求パケットが到着すると、中継ノード31−3はこの受信要求パケットを中継ノード31−2へ転送せずにクライアント32−7を配信テーブルに登録する。この様子を、図13に示す。
この結果、中継ノード31−3からクライアント32−7へデータパケットが送られることになる。以後、中継ノード31−2にはクライアント32−7からの受信要求パケットが届かなくなるので、中継ノード31−2の配信テーブルでクライアント32−7はタイムアウトし、中継ノード31−2からクライアント32−7へはデータパケットが送られなくなる。
この際、中継ノード31−2でタイムアウトするまでの間、クライアント32−7宛に、中継ノード31−2及び31−3から同じデータパケットが送られることになる。これに関しては予めデータパケットに番号を付けておき、その番号に基づいて中継ノード31−3で重複したパケットを廃棄し、クライアント32−7に対して同じパケットを複数送ることを防げば良い。また、クライアント32−7においても、同じパケットが複数届いた時は廃棄するようにしておけば良い。
データパケットの番号付けに関しては、RFC1889のReal-Time Transport Protocol(RTP)のように、タイムスタンプとシーケンス番号の組で表しても良い。
以上のようにすることで、中継ノードの負荷状態に応じてマルチキャストツリーの構成を自律的に変更することが可能となって負荷分散を図ることができる。
このKeep alive(キープ・アライブ)方式は、クライアントやサーバが移動端末の場合も有用である。例えば、クライアントが移動端末である場合、クライアントが移動することにより、これまで収容されていた中継ノードの収容範囲の外に出た場合、このクライアントは異なる中継ノードに収容されることになる。このような場合でも、クライアントは受信要求パケットを出し続けることによって、新しく収容される中継ノードに登録され、また、これまで収容されていた中継ノードではタイムアウトする。このように、クライアントは収容される中継ノードを意識することなくサーバ33からのデータパケットを受信し続けることが出来る。
逆に、サーバ33が移動体である場合、mobile IP(モバイルIP)等の移動体宛のユニキャストを可能にする仕組みがあれば、サーバ33宛に送出された受信要求パケットは常にサーバ33が実際に存在する位置に送られる。サーバ33が移動することにより、異なる中継ノードに収容されることになった場合、各クライアントからサーバに至る経路上の中継ノードに配信テーブルが存在しない時にのみ、新たに配信テーブルが作られることになる。
例えば、図14に示すように、これまで中継ノード31−2に収容されていたサーバ33が移動し、中継ノード31−4に収容されるようになったものとする。
この時、任意のクライアントからサーバ33へ至るパス上に、サーバ33の移動前及び移動後において共通に存在する中継ノード31−1及び31−3の配信テーブルは変化せず、新たに上記パスに加わった中継ノード31−4に配信テーブルが生成され、中継ノード31−1及び31−3が登録される。そして、中継ノード31−4はサーバ33に対して受信要求パケットを送出する。
各クライアントからサーバ33に至るパスを外れた中継ノード31−2には受信要求パケットが送られなくなるので、タイムアウトする。この結果、最終的に、図15に示すような形態になる。
中継ノード31−2がタイムアウトするまでの間に、中継ノード31−1及び31−3には、中継ノード31−4及び31−2を経由してデータパケットが届く可能性があり、この場合、同じデータパケットが重複して届くことになる。これに対しては、上記と同様に、シーケンス番号をデータパケットに付加しておくことにより、中継ノードまたはクライアントで、同じパケットが複数届いた時は廃棄するようにしておけば良い。
Keep alive(キープ・アライブ)方式において、タイムアウトしていない子を持つ中継ノードは、よりサーバに近い中継ノードの子としてタイムアウトしないようにしなければならない。最も簡単な方法は、タイマーによる割り込みを利用する方法である。中継ノード自身にタイマーをしかけておき、決められた時間間隔毎に配信テーブルの各子がタイムアウトしているかどうかチェックしにいく。その結果、一つでもタイムアウトしていない子があれば、サーバに向かって受信要求パケットを送出する。
しかし、この方法では、データパケットや受信要求パケットの処理の途中で、タイマー割り込みが入る可能性があり、場合によってはそのオーバーヘッドが深刻になることが考えられる。
タイマー割り込みを使わない方法としては、受信要求パケットの到着時の処理の一部として実現する方法である。
例えば、クライアントは、時間間隔D毎に受信要求パケットを送出するものとする。中継ノードは、サーバに向かって最後に受信要求パケットを送出した時刻Tを記録しておく。受信要求パケットが到着した時、送信元がまだ配信テーブルに登録されていなければ登録した上で、現在時刻と前記時刻Tとを比較し、(現在時刻−T)≧Dならば、サーバに向けて受信要求パケットを送出し、時刻Tに現在時刻を設定する。
クライアントから中継ノード(またはサーバ)までのリンクの数の最大値をその中継ノード(またはサーバ)の高さと呼ぶことにすると、中継ノード間またはクライアントと中継ノードとの間の伝送遅延にゆらぎがない場合、上記の方法によれば、高さhの中継ノード(またはサーバ)に受信要求パケットが到着する時間間隔は、高々h×Dである。この理由は次のように、帰納的に示すことが出来る。
ある中継ノードが子から受け取る受信要求パケットの(子毎に測定した場合の)到着間隔が高々D’であると仮定する。この時、上記の方法によれば、この中継ノードから受信要求パケットを送出する間隔が最大になるのは、前に受信要求パケットを送出し、それから時間Dが経過する直前に、ある子からの受信要求パケットが到着し、同じ子から次の受信要求パケットが到着するまで、(離脱やハングアップ等の理由により)他の子からの受信パケットが到着しない場合である。
この場合、結局、前に受信要求パケットを送出してから次に送出するまではD+D’の時間が経過している。また、子が全てクライアントであるような中継ノードはD’がDに等しい。
中継ノード間またはクライアントと中継ノードとの間の伝送遅延にゆらぎがある場合、伝送遅延の増加・減少の量の絶対値(ゆらぎ)をαとすると、子が全てクライアントであるような中継ノードに到着する受信要求パケットの到着時間間隔は、高々D+2αになる。よって、上記と同様な理由により、高さhの中継ノード(またはサーバ)に受信要求パケットが到着する時間間隔は、高々h×(D+2α)ということになる。
高さhの中継ノード(またはサーバ)では、各子について、その子の高さをh−1とすると、前回、その子から受信要求パケットを受信してから、h×(D+2α)を越える時間が経過している場合はタイムアウトしたと判断すれば良い。さらに、中継ノードの処理遅延のゆらぎがある場合は、伝送遅延と処理遅延の揺らぎとの和をαとして考えれば良い。
但し、パケットが伝送途中で失われ得る場合、クライアントが受信要求パケットを送出し続けている場合でも、高さhの中継ノード(またはサーバ)では、h×(D+2α)を越える時間間隔で受信要求パケットが到着する可能性がある。その場合、タイムアウトを判断する時間間隔を適宜延ばす必要がある。以下では、パケットが伝送途中で失われることがないと仮定する。
使用するネットワークから、hの値の上限Hが予めわかっている場合は、全ての中継ノードにおいてH×(D+2α)をタイムアウトを判断するための値として用いれば良い。
hの値の上限Hが予めわからない場合、hを知るためには、例えば受信要求パケットを利用する方法が考えられる。受信要求パケットには、高さを表す変数hを用意しておく。クライアントはh=0として、受信要求パケットを送出する。中継ノードでは、各子から受け取った受信要求パケットに含まれる変数hの最大値に1を足した値をhの値として、受信要求パケットを送出する。このようにすることによって、中継ノードが、ある子から受け取った受信要求パケットのhの値がh*であったとすると、その子は高さh*であることがわかる。このように、タイムアウトすべき時間間隔を、ツリーの形状に従って動的に変化させることが出来る。
受信要求パケット到着時の中継ノードでの処理フローを図16に示す。但し、受信要求パケットに含まれる、ツリーIDとソース(送信元)アドレスをそれぞれN及びSとする。図16中の高負荷時の処理は図17に示す。
また、データパケット到着時の中継ノードでの処理フローを図18に示す。図18中のエントリ削除操作は図19に示す。但し、データパケットには、ツリーIDとソース(送信元)アドレスが含まれており、これをN及びSで表すことにする。また、Xはタイムアウトと判断する時間間隔である。即ち、受信要求パケットが到着してから、現在までの経過時間がXを越える場合はタイムアウトと判断する。図16及び図18では、Xは固定的に与えられる場合を想定している。
上記の方法は、ユーザがサーバを指定する際、予め決められたサーバ群の中から選択する場合は問題ないが、ユーザがキーボード等を用いてサーバのアドレスを入力する場合のように、サーバの指定間違いが起こり得る時は、実際には存在しないサーバのための配信テーブルが各中継ノードに生成される問題が起こる。このような場合は、受信要求パケットを送出する前に、サーバ宛にサーバ確認パケットを送出し、これに対してサーバの存在を示すパケットがサーバから返ってきた時に初めて、受信要求パケットを送出するようにすれば良い。
この従来技術の実施の形態1では、サーバおよび中継ノードは子から受信要求パケットを受信するとともに、子に向けてデータパケットを配信している。また、クライアント及び中継ノードはサーバに向けてデータパケットの配信を要求している。さらに、クライアント及び中継ノードが親ノードからデータパケットを受信したとき、クライアント及び中継ノードにはサーバからデータパケットが送られてくるように見えている。つまりこの従来技術の実施の形態1では、受信要求パケットやデータパケットを送信するにあたって、親ノードあるいは子の先にどれだけのノードが接続されているかを意識する必要がなく、スケーラビリティの点で優れている。
2.2 従来技術の実施の形態2
2.1節に示す従来技術の実施の形態1では、サーバの指定間違いが起こり得る時の対策として、クライアントからサーバ確認パケットと受信要求パケットとの2種類のパケットを送出する方法を示したが、本節に示す従来技術の実施の形態2では、クライアントから送出される受信要求パケットのみであり、かつ、サーバの指定間違いが起こり得る時にも対応できる実施の形態を示す。
クライアントから送出された受信要求パケットは、クライアントに最寄りの中継ノードに配信テーブルがある場合は、2.1節に示す従来技術の実施の形態1の場合と同様に最寄りの中継ノードに登録される。最寄りの中継ノードが高負荷状態にあり、クライアントを子として収容できない場合も従来技術の実施の形態1の場合と同様である。
クライアントに最寄りの中継ノードに配信テーブルがない場合、受信要求パケットはサーバに向けて転送される。但し、転送の途中で通過した中継ノードが受信要求パケットに記録される。
受信要求パケットが、配信テーブルを既に持っている中継ノードまたはサーバに到着した時には、クライアントから上記中継ノードまたはサーバに至る経路情報が受信要求パケットに記述されていることになる。上記中継ノードまたはサーバは、この経路情報を含む配信テーブル生成パケットをクライアントに向かって送出する。
配信テーブル生成パケットは、上記の経路情報を逆に辿ることによりクライアントまで配送され、途中通過する中継ノードにおいて、上記サーバに対応する配信テーブルが既にあれば単に転送され、配信テーブルがなければ上記サーバに対応する配信テーブルを生成する。配信テーブル生成パケット内の経路情報に関して、次のノードを配信テーブル生成と同時に登録する方法も可能であるが以下では配信テーブル生成時には何も登録しない手法について説明する。
このように、配信テーブル生成パケットがクライアントに到着するまでに(正確に言うと配信テーブル生成パケットはクライアントの最寄りの中継ノードで廃棄される)、クライアントからサーバに至る経路上で配信テーブルを持たない中継ノードには、新たに配信テーブルが生成される。クライアントは、従来技術の実施の形態1の場合と同様に、予め決められた値以下の時間間隔で受信要求パケットを送出し続ける。そのため、クライアントからサーバに至る経路上の全ての中継ノードに配信テーブルが存在する状態になった後、従来技術の実施の形態1の場合と同様にクライアントが配信テーブルに登録され、必要であれば、中継ノード自身がサーバ宛に受信要求パケットを送出する。
図20はマルチキャスト通信が行われるネットワーク構成の一例、ここでは4つの中継ノード41−1,41−2,41−3,41−4に5つの受信ホスト(以下、「クライアント」と呼ぶ)42−1,42−2,42−3,42−4,42−5及び1つの送信ホスト43(本節では、以下、「サーバ」と呼ぶ)がネットワークを介して接続されている状態を示している。
図20の構成において、例えば図21に示すように、クライアント42−3から受信要求パケットが送出され、サーバ43に至る経路上に中継ノード41−3及び41−2があったとする。中継ノード41−3及び41−2には配信テーブルがないので、受信要求パケットはサーバ43まで転送される。但し、この時、転送経路として、中継ノード41−3及び41−2が受信要求パケット内に経路情報として書き込まれている。
図22に示すように、サーバ43から、この経路情報を含む配信テーブル生成パケットが送出されると、前記経路を逆に辿ることにより中継ノード41−2及び41−3に配信テーブルが生成される。仮に、サーバ43からクライアント42−3に至る通常の経路が中継ノード41−4を通るものであっても、配信テーブル生成パケットは中継ノード41−2及び41−3を通ることになる。
この後、クライアント42−3から送出される受信要求パケットより、図23に示すように、中継ノード41−3及び41−2の配信テーブルにクライアント42−3及び中継ノード41−3がそれぞれ登録され、中継ノード41−2からサーバ43に受信要求パケットが送出される。
続いて、図24に示すように、クライアント42−2から受信要求パケットが送出された場合は、中継ノード41−1に配信テーブルがないため、サーバ43に向かって転送される。受信要求パケットが中継ノード41−2に到着すると、中継ノード41−2には配信テーブルが存在するので、中継ノード41−2から配信テーブル生成パケットがクライアント42−2に向かって送出される。図25に示すように、配信テーブル生成パケットは中継ノード41−1に配信テーブルを作成し、その後のクライアント42−2からの受信要求パケットにより、図26に示すように、クライアント42−2が中継ノード41−1の配信テーブルに登録され、中継ノード41−1は中継ノード41−2に登録される。
受信要求パケットにより経路情報が蓄えられ、サーバまたは中継ノードからクライアントに送出される配信テーブル生成パケットが、上記経路情報を逆に辿るのは、次の理由による。もし、クライアントからサーバに至る経路とサーバからクライアントに至る経路とが異なる場合、配信テーブル生成パケットが単純にクライアントに向けて送出された場合、配信テーブルはクライアントからサーバに至る経路とは異なる経路に作られることになる。この場合、配信テーブルが作られた中継ノードには、受信要求パケットが到着しないため、すぐにタイムアウトすることになる。また、受信要求パケットは、常に配信テーブル生成パケットを送出した中継ノードまたはサーバまで転送されることになる。このため、データパケットがいつまで経っても到着しないことになる。
従来技術の実施の形態2も従来技術の実施の形態1と同様、クライアントやサーバが移動端末の場合も有用である。クライアントが移動端末である場合、クライアントは受信要求パケットを出し続けることによって新しく収容される中継ノードに登録され、また、これまで収容されていた中継ノードではタイムアウトする。逆にサーバが移動体である場合、mobile IP等の移動体宛のユニキャストを可能にする仕組みがあれば、サーバ宛に送出された受信要求パケットは、常にサーバが実際に存在する位置に送られる。このため、新たに受信要求パケットを受信するようになった中継ノードには配信テーブルが作られ、受信要求パケットが到着しなくなった中継ノードの配信テーブルはタイムアウトする。
具体的な実装例を示す。受信要求パケットは、ツリーID Nと、ソース(送信元)アドレスSと、ソース(送信元)側隣接ノードアドレスPと、ソースから現ノードまでの経路情報Qを持っている。クライアントは、S及びPをクライアントアドレス、Q=Sとして、受信要求パケットをサーバに向かって送出する。受信要求パケットが中継ノードに到着した時、既にツリーID Nに対応する配信テーブルがある場合、S=PならばSを登録し、S≠PならばSに向かってQを含む配信テーブル作成パケットを送出する。
ツリーID Nに対応する配信テーブルがない場合、Pを現中継ノードのアドレスに変え、Qに現中継ノードを加えて受信要求パケットを転送する。サーバまで受信パケットが到着した場合は、上記中継ノードの処理のうち、配信テーブルがある場合と同じ処理を行う。
受信要求パケットが中継ノードに到着した時の処理フローを図27に示す。但し、図27中の時間間隔Dは従来技術の実施の形態1の場合と同様に定義する。また、図27中の高負荷時の処理は図17と同じである。配信テーブル生成パケットが中継ノードに到着した時の処理フローを図28に示す。
従来技術の実施の形態2では、受信要求パケットを送信したホストとデータパケットを送信したホストとを結ぶパス上に存在する中継ノードにのみ配信テーブルが生成されるようになっている。このため、適当なアドレスを宛先アドレスとして配信テーブル生成パケットを送出しても、この宛先アドレスに対応するノードが実際に存在しなければ配信テーブルが生成されることはない。したがって、ネットワーク内ノードのアドレスを隠蔽しておけば、配信テーブル生成パケットのみを用いてノードに無用な配信テーブルを作成させることは困難になる。また、配信テーブル生成パケット以外のパケットは配信テーブルの生成機能を持たないので、当然ながら配信テーブルが中継ノードに生成されることはない。さらに、たとえ、配信テーブル生成パケットを送出するホストと受信要求パケットを送出するホストを用意し、これらホストが互いに協力し合って無用なテーブルを両者の間にあるノードに生成させようとしても効果的な攻撃を行うことは難しい。
2.3 従来技術の実施の形態3
従来技術の実施の形態3では、クライアントから送出されるのが受信要求パケットのみであり、かつ、サーバの指定間違いが起こり得る時にも対応できる他の実施の形態を示す。
この従来技術の実施の形態3では、クライアントが受信要求パケットを送出し、中継ノードに到着した時、配信テーブルがなければ、送信元を現中継ノードに変えてサーバ宛に転送を行い、配信テーブルがあれば、送信元を登録する。サーバから送出されたデータパケットは、中継ノードに到着すると、その中継ノードに配信テーブルがない場合は空の配信テーブルを生成して消滅し、配信テーブルがある場合は2.1節に示す従来技術の実施の形態1の場合と同様にタイムアウトしていない子に対して、必要ならば複製して、データパケットを転送する。
データパケットによって空の配信テーブルが生成された後に到着した受信要求パケットにより、クライアントからこの中継ノードに至るパス上のクライアント側隣接ノードが配信テーブルに登録される。なぜなら、到着した受信要求パケットの送信元アドレスは、上記クライアント側隣接ノードであるからである。この後に到着したデータパケットにより、上記クライアント側隣接ノードにデータパケットが配送され、その結果、上記クライアント側隣接ノードに空の配信テーブルが生成される。
このように、サーバからクライアントに向かって配信テーブルが生成されていき、やがてクライアントにデータパケットが配送されるようになる。
図29はマルチキャスト通信が行われるネットワーク構成の一例、ここでは4つの中継ノード51−1,51−2,51−3,51−4に5つの受信ホスト(以下、本節では、「クライアント」と呼ぶ)52−1,52−2,52−3,52−4,52−5及び1つの送信ホスト53(以下、本節では、「サーバ」と呼ぶ)がネットワークを介して接続されている状態を示している。
図29の構成において、例えば、クライアント52−3から受信要求パケットが送出されると、このパケットは各中継ノードでその送信元アドレスを変更されながらサーバ53まで転送される。サーバ53は到着した受信要求パケットの送信元が中継ノード51−2なので、図30に示すように、中継ノード51−2宛にデータパケットを送出する。データパケットが到着すると、中継ノード51−2には配信テーブルがないので、空の配信テーブルが生成される。
その後、到着する受信要求パケットにより、図31に示すように中継ノード51−2の配信テーブルには、送信元である、中継ノード51−3が登録される。その後、データパケットは、図32に示すように、中継ノード51−2の配信テーブルに基づいて中継ノード51−3へ送出される。
同様に中継ノード51−3でも空の配信テーブルが作られた後、図33に示すように、受信要求パケットによりクライアント52−3が登録され、最後には、データパケットがクライアント52−3に配送される。
クライアントからサーバに向かう経路とサーバからクライアントに向かう経路とが異なる場合、配信テーブルは常にクライアントからサーバへ向かう経路上に作られ、データパケットもその経路上を通過するため、配信テーブルが作られる中継ノードまたはサーバと、受信要求パケットが到着する中継ノードまたはサーバとが異なるようなことは起こらない。
経路情報を持たない配信テーブル生成パケット(この従来技術の実施の形態3ではデータパケットに等しい)を単純にクライアントに向けて送出した場合、宛先アドレスが中継ノードに変更されることはないので、配信テーブルはどの中継ノードにもつくられない。
この従来技術の実施の形態3も従来技術の実施の形態1と同様、クライアントやサーバが移動端末の場合も有用である。クライアントが移動端末である場合、クライアントは受信要求パケットを出し続けることによって新しく収容される中継ノードに登録され、また、これまで収容されていた中継ノードではタイムアウトする。逆にサーバが移動体である場合、mobile IP等の移動体宛のユニキャストを可能にする仕組みがあれば、サーバ宛に送出された受信要求パケットは、常にサーバが実際に存在する位置に送られる。このため、新たに受信要求パケットを受信するようになった中継ノードには配信テーブルが作られ、受信要求パケットが到着しなくなった中継ノードの配信テーブルはタイムアウトする。
受信要求パケット及びデータパケットが中継ノードに到着した場合の処理フローをそれぞれ、図34及び図35に示す。図34における高負荷時の処理は、図17と同じである。図35中のエントリ削除操作は図19と同じである。但し、図35中のXは固定的に与えられる場合を仮定している。
従来技術の実施の形態1と同様に、この従来技術の実施の形態3でも、受信要求パケット,データパケットを転送するにあたり、親ノードあるいは子の先にどれだけのノードが接続されているかを意識する必要がないため、スケーラビリティの点で優れている。
また本節に示す従来技術の実施の形態3では、2.2節に示す従来技術の実施の形態2と同様に、受信要求パケットを送信したホストとデータパケットを送信したホストとを結ぶパス上に存在する中継ノードにのみ配信テーブルが生成されるようになっている。したがって、従来技術の実施の形態2と同様に、ネットワーク内のノードのアドレスを隠蔽しておくことにより、配信テーブル生成パケットを送出するホストと受信要求パケットを送出するホストとが協力しない限り、ノードに無用なテーブルが作られることはない。加えて、この従来技術の実施の形態3によれば、たとえ受信要求パケットをサーバ側で覗き見たとしても、サーバに隣接するノードを知ることができるのみであり、当該隣接ノード以外のネットワーク内のノードのアドレスを知り得ない。このため、従来技術の実施の形態2に比べてさらに安全なセキュリティを提供することができる。
2.4 ノードの構成
図36は従来技術の実施の形態1、2及び3に共通のクライアントの構成を示すもので、図中、61は時計、62はパケット生成手段、63は送信手段、64は受信手段、65は映像復号手段、66は映像表示手段である。
クライアントでは、パケット生成手段62が時計61を用いて定期的に受信要求パケットを生成し、送信手段63によってサーバへ向けて送信する。また、受信手段64によってデータパケットを受け取ると、映像復号手段65によってデータパケットにより運ばれてきた映像データを復号し、映像表示手段66によって映像を表示する。
なお、特に実施の形態1のクライアントの場合、パケット生成手段62を用いてサーバ確認パケットを生成し、送信手段63によってサーバへ向けて送信し、その応答パケットを受信手段64によって受信した場合のみ、前述した受信要求パケットの生成及び送信を行う。
図37は従来技術の実施の形態1、2及び3に共通の中継ノードの構成を示すもので、図中、71は時計、72はノード負荷測定手段、73は配信テーブル、74は配信テーブル管理手段、75はパケット生成手段、76は送信手段、77は受信手段、78はパケット複製手段である。
中継ノードは、受信要求パケットを受信手段77によって受信すると、ノード負荷測定手段72によって測定した負荷状態により、負荷が高くない場合は時計71を参照し、配信テーブル管理手段74により、図16(従来技術の実施の形態1の場合)、図27(従来技術の実施の形態2の場合)、図34(従来技術の実施の形態3の場合)に示したように配信テーブルを更新し、(必要があれば)パケット生成手段75によって新たに受信要求パケットを生成し、送信手段76によってサーバへ向けて送信する。また、データパケットを受信手段77によって受信すると、図18(従来技術の実施の形態1、2の場合)、図35(従来技術の実施の形態3の場合)に示したように該データパケットの属するツリーに対応する配信テーブル73に登録されている子の数だけ、パケット複製手段78によりデータパケットを複製し、送信手段76によって各子へ送信する。
なお、配信テーブル73の生成は、配信テーブル管理手段74により、図16(従来技術の実施の形態1の場合)、図28(従来技術の実施の形態2の場合)、図35(従来技術の実施の形態3の場合)に示したように行われ、また、配信テーブル73及びそのエントリの削除は、配信テーブル管理手段74により、図18(従来技術の施の形態1、2の場合)、図35(従来技術の実施の形態3の場合)に示したように行われる。
図38は従来技術の実施の形態1、2及び3に共通のサーバの構成を示すもので、図中、81は時計、82は配信テーブル、83は配信テーブル管理手段、84はパケット生成手段、85は送信手段、86は受信手段、87はパケット複製手段、88は配信用データ蓄積手段である。
サーバは、中継ノードと同様に、受信要求パケットの送信元及び受信要求パケットの到着時刻を配信テーブル82に記憶する。この配信テーブル82への削除・更新・登録などの管理は、配信テーブル管理手段83が行う。サーバは、配信用データ蓄積手段88に蓄積してある配信用データを、パケット生成手段84を用いてパケット化し、配信テーブル82に登録されているタイムアウトしていない子の数だけ、パケット複製手段87を用いて複製を作り、送信手段85を用いてこれらの子に送信する。
なお、特に実施の形態2のサーバの場合、配信テーブル生成パケットはパケット生成手段84により生成され、送信手段85により送信される。
2.5 パケットフォーマット
次に、上述した従来技術の実施の形態1〜3に係るパケットのフォーマットについて説明し、その前提としてフロー識別についても説明する。
ネットワーク内では様々なパケットが混在して転送されるため、この従来技術の各実施の形態に特有のパケット(受信要求パケット,データパケット,配信テーブル生成パケット,サーバ確認パケット)をクライアント,中継ノード,サーバが識別するためのフロー識別を行う必要がある。フロー識別を実現するには種々の手法が考えられるが、一例としてここでは特定ポート(「well-known port」と呼ぶ)を用いた場合を例に挙げる。同様の手法としては、ポート80を利用したHTTP(Hyper Text Transfer Protocol)が良く知られている。
ここではプロトコルとしてUDP(User Datagram Protocol)を想定する。フロー識別のために予め特定ポートを決めておき、パケットのポート番号を参照してこの特定ポートを宛先とするパケットをこの従来技術の各実施の形態に特有のパケットとして識別する。図39はサーバ101,中継ノード102及び103,クライアント104及び105を含むネットワークにおける特定ポートを用いたフロー識別の様子を示す図である。同図では、受信要求パケットのソースポートとデータパケットの受信ポートが等しい場合について示してある。また、サーバ101のアドレスをS,中継ノード102及び103のアドレスをそれぞれA及びB、クライアント104及び105のアドレスをそれぞれC1及びC2としている。
受信要求パケットは宛先アドレスとしてアドレスS,宛先ポートとして上記特定ポートであるポートPw,ソースアドレスとしてアドレスX(ここではA,B,C1,C2のいずれか),ソースポートとしてポートPx(ここではソースアドレスXに対応してPa,Pb,Pc1,Pc2のいずれか)を持つ。また、データパケットは宛先アドレスとしてアドレスX,宛先ポートとしてポートPx,ソースアドレスとしてアドレスS,ソースポートとしてポートPsを持つ。なお、データパケットのソースアドレスがサーバ101のアドレスとなっているのは、配信テーブルがサーバ毎に生成されるために、中継ノードは各配信テーブルがどのサーバに対応するのかをデータパケットのソースアドレスを見て判断するためである。また、各中継ノード102,103が備える配信テーブル106,107には、受信要求パケットのソースポートと同一の値が格納される受信ポートのフィールドが、受信要求パケットの送信元(図中では「子」)及び到着時刻の各フィールドと組にされて登録される。
各クライアント及び各中継ノードは、受信要求パケットの宛先ポートを上記特定ポートとして、データパケットを受信したいポートから当該受信要求パケットをサーバ101宛てにユニキャストで送出する。例えば、クライアントC1が送出する受信要求パケットのソースアドレスはアドレスC1,ソースポートはポートPc1であり、宛先アドレス及び宛先ポートは上述した通りである。
受信要求パケットが到着した中継ノードでは、受信要求パケットのソースアドレス及びソースポートを配信テーブルに記録する。また、中継ノードは配信テーブルを参照して、タイムアウトしてない各子の受信ポートに宛ててソースアドレス及びソースポートの組を宛先としたデータパケットをユニキャストする。例えば、中継ノード103はクライアント104からの受信要求パケットに基づいてソースアドレスC1,ソースポートPc1,到着時刻10:23:09を組にして配信テーブル107に登録する。また中継ノード103は、宛先アドレス,宛先ポートをそれぞれC1,Pc1とし、ソースアドレス及びソースポートとしてサーバ101側から送られたそのまま値S,Psを持つデータパケットをクライアント104に宛てて送出する。
また、中継ノードが受信要求パケットを親ノードに送出する場合はクライアントの場合と同様である。例えば、中継ノード103が送出する受信要求パケットでは、宛先アドレス及び宛先ポートはそれぞれ常にアドレスS,ポートPwであり、ソースアドレスはアドレスBであり,ソースポートは任意のポート(例えばポートPb)である。これは、受信要求パケットのみが宛先(サーバ)アドレスとは異なるアドレスを持つ中継ノードで処理される必要があるからである。ただし、ソースポートをポートPwにした場合、宛先ポートがポートPwであるデータパケットがネットワーク中を流れることになるが、宛先とは違う中継ノードではデータパケットを処理しないようにする必要がある。
また、受信要求パケットが到着したサーバ101は、ソースアドレス及びソースポートがそれぞれS,Psであり、宛先アドレス及び宛先ポートがそれぞれ中継ノード102からの受信要求パケットのソースアドレスA及びソースポートPaに等しいデータパケットを送出する。
なお、あるホスト上に複数のサーバを立ち上げて複数種類のストリームを同時並行的に配信するような形態を採ることも考えられる。ここで、上述した通りフロー識別に特定ポートであるwell-known portを用いているため、ポートに基づいて同一ホスト上の各サーバを区別することはできない。そこで、チャネルIDと呼ぶ情報を新たに設けて同一ホスト上の複数のサーバを識別する。このチャネルIDは同一ホスト上において一意な値に設定する必要があるが、異なるホスト間では必ずしも一意である必要はない。こうしてサーバドレスとチャネルIDとを組にして用いることでサーバ及びマルチキャストツリーを一意に特定することができる。換言すれば、各中継ノードにはサーバアドレス及びチャネルIDの組毎に配信テーブルがそれぞれ生成されることになる。なお、チャネルIDは例えばパケットのペイロードに載せれば良い。
次に、いま述べたフロー識別を前提としたパケットフォーマットについて説明する。図40は受信要求パケットのフォーマットの一例を示したものであり、宛先(サーバ)アドレス111,宛先(サーバ)ポート112,送信元アドレス113,送信元ポート114,チャネルID115,高さ116の各フィールドから構成される。宛先アドレス111〜チャネルID115は前述した通りである。高さ116は、2.1節の従来技術の実施の形態1で説明したように、中継ノードがマルチキャストツリー状における高さhを知るために用いられる。なお、図39を参照して説明したように、宛先アドレス111,宛先ポート112は常にサーバに宛てたものとなる。
図41はデータパケットのフォーマットの一例を示したものであって、宛先アドレス121,宛先ポート122,送信元(サーバ)アドレス123,送信元(サーバ)ポート124,チャネルID125,データ126の各フィールドから構成される。宛先アドレス121〜チャネルID125は前述した通りである。データ126は配信されるストリーム(コンテンツ)である。なお、図39を参照して説明したように、送信元アドレス123,送信元ポート124は常にサーバのものとなる。
3.マルチキャストデータ通信の動作
次に、図2を用いて図1に示す本発明の一実施の形態によるマルチキャストデータ通信の動作を説明する。
IPマルチキャストサーバ200は、宛先アドレス(マルチキャストアドレス)G、宛先UDPポートpのIPマルチキャストパケットを送出する。次に、IPマルチキャストクライアント500bのユーザは、電子メールやWEBサーバなどを通じて得られた、受信マルチキャストアドレスGと受信UDPポートpを、該IPマルチキャストクライアント500bに設定する。すると、IPマルチキャストクライアント500bからマルチキャストへの参加を要求するIGMP(Internet Group Management Protocol) membership report(IGMPメンバシップレポート)がマルチキャストアドレスG宛に送出される。
クライアント側ゲートウェイ400bは、セグメント内を流れるIGMP membership reportを監視している。そして、新たなマルチキャストアドレスGに対するIGMP membership reportを発見すると、このマルチキャストアドレスGのパケットを送出するIPマルチキャストサーバ200に対応したサーバ側ゲートウェイ300のアドレスを取得し、このマルチキャストアドレスGとサーバ側ゲートウェイ300のアドレスの組をアドレス管理表に記録する。
尚、サーバ側ゲートウェイ300のアドレスの取得の仕方は、種々の方法が想定される。例えば、各IPマルチキャストサーバが使用するマルチキャストアドレスと、このIPマルチキャストサーバに対応するゲートウェイのアドレスの組を記述した表であるアドレス変換表を予め各ゲートウェイが保有しておく方法が考えられる。また、マルチキャストアドレスとそれを使用するIPマルチキャストサーバに対応するゲートウェイのアドレスの組を管理するサーバを用意して、このサーバに問い合わせる方法も考えられる。以下では、アドレス変換表を予めゲートウェイが保持していることを仮定する。
クライアント側ゲートウェイ400bは、2章に示した受信要求パケット(図40)にマルチキャストアドレスGを乗せて、サーバ側ゲートウェイ300宛に送出を開始する。2章に示した従来技術のマルチキャストデータ通信方法によれば、この受信要求パケットは、配信経路維持のために定期的に送出されなければならない。また、受信を希望するIPマルチキャストクライアント500bが消滅したときには、この受信要求パケットの送出を停止する。
2章に示した従来技術のマルチキャストデータ通信方法にあるように、サーバ側ゲートウェイ300とクライアント側ゲートウェイ400b間に中継ノード600を置くことにより、マルチキャストアドレスGを指定するサーバ側ゲートウェイ300宛の受信要求パケットが複数の送信元から来た場合は、それが集約される。サーバ側ゲートウェイ300の隣接中継ノードが一つである場合は、最終的に隣接中継ノードからの受信要求パケットがサーバ側ゲートウェイ300に到着する。結果として、サーバ側ゲートウェイ300を根とするツリー状の配信経路が生成されることになる。
サーバ側ゲートウェイ300は、LAN(A)に流れるマルチキャストアドレスG宛のIPマルチキャストパケットをカプセル化することにより、2章に示した従来技術のマルチキャストデータ通信方法におけるデータパケット(図41)に変換して、受信要求パケットの送信元に送る。中継ノード600を経て、データパケットがクライアント側ゲートウェイ400bに到着すると、このデータパケットを脱カプセル化することにより、IPマルチキャストパケットに再変換してLAN(B)に送出する。この結果、IPマルチキャストクライアント500bは、IPマルチキャストパケットを受信することが出来る。以上が一連の流れである。
上記により、2章に示した従来技術のマルチキャストデータ通信方法における「サーバ」が、ストリームデータを「配信用データ蓄積手段88」から取得する代わりに、LANセグメントに流れるIPマルチキャストパケットとして取得するサーバ側ゲートウェイに、また、2章に示した従来技術のマルチキャストデータ通信方法における「クライアント」が、受信したデータパケットを、ストリームデータを画像や音声として再現する代わりに、IPマルチキャストパケットに変換してLANセグメントヘ流すクライアント側ゲートウェイに置き換えられたと考えることが出来る。
4.各ノードの構成
次に、図1に示す実施の形態による各ノードの構成について説明する。
図3にサーバ側ゲートウェイの構成を示す。
サーバ側ゲートウェイ300は、時計381、配信テーブル382、配信テーブル管理手段383、パケット生成手段384、送信手段385、受信手段386、パケット複製手段387、及び、パケット変換手段388により構成される。点線に囲まれた部分は、2章に示した従来技術のマルチキャストデータ通信方法におけるサーバ(図38)との共通の構成を表している。これは、前述の通り、ストリームデータを「配信用データ蓄積手段88」から取得する代わりに、LANセグメントに流れるIPマルチキャストパケットとして取得する機能と、それを図41に示す従来技術のデータパケットに変換する手段が加わったと考えられるからである。
サーバ側ゲートウェイ300は、受信要求パケットを受信手段386によって受信すると、配信テーブル管理手段383が、時計381を参照してこの受信要求パケットの送信元及び受信要求パケットの到着時刻を配信テーブル382に記憶する。この配信テーブル382への削除・更新・登録などの管理は、配信テーブル管理手段383が行う。
また、受信手段386により受信されたIPマルチキャストパケットは、2章に示した従来技術のマルチキャストデータ通信方法におけるデータパケット(図41)のペイロードに搭載され、パケット生成手段384によりヘッダが付け加えられることにより、データパケットが生成される。そして、パケット複製手段387は、配信テーブル382に登録されているタイムアウトしていない子の数だけ、パケット生成手段384が生成したデータパケットの複製を作り、送信手段385を用いて、これらの子に送信する。
なお、このとき、図41に示すデータパケットのフォーマットのチャネルID125にはマルチキャストアドレスが、データ126にはIPマルチキャストパケットがそのまま搭載される。また、宛先アドレス121には、受信要求パケットの送信元が、宛先ポート122には、受信要求パケットの送信元ポートが設定される。また、送信元アドレス123には、サーバ側ゲートウェイ300のアドレスが設定され、送信元ポート124は、任意に設定される。
例えば、このデータパケットをUDPパケットとして構成した場合、IPマルチキャストパケットを搭載した結果、Ethernet(登録商標)フレームの最大サイズを超えたとしても、通常のIP処理系であれば、そのような場合には、IPフラグメントを行うため、問題なく送信することが出来る。
また、データパケットの送信元ポートをマルチキャストアドレスごとに予め決めておくことにより、この送信元ポートと送信元アドレスの組で、IPマルチキャストアドレスを特定することができる。従って、送信元アドレスとポートの組からマルチキャストアドレスヘの対応関係をクライアント側ゲートウェイに予め与えておくことにより、2章に示した従来技術のマルチキャストデータ通信方法に示されるように、IPヘッダの宛先アドレスを直接書き換える方法も動作可能となる。
図4は、クライアント側ゲートウェイ400の構成を示す図である。
クライアント側ゲートウェイ400は、受信手段401、IGMP制御手段402、IGMP管理表403、アドレス管理表制御手段404、アドレス変換表405、アドレス管理表406、受信要求パケット生成手段407、時計408、送信手段409、及び、パケット変換手段410から構成される。
受信手段401がIPマルチキャストクライアント500からIGMP membership reportを受信すると、IGMP制御手段402は、このIGMP membership reportの宛先となっているマルチキャストアドレスが、既にIGMP管理表403に登録されているか否かのチェックを行う。登録されている場合、IGMP管理表403にこのIGMP membership reportを受信した最終受信時刻等が記録される。登録されていなければ、IGMP管理表403にマルチキャストアドレス(グループアドレス)とIGMP membership reportの受信時刻を登録する。なお、IGMP管理表403とは、IGMP membership reportの受信により、マルチキャストパケットの受信を希望するIPマルチキャストクライアント500の存在が確認されているマルチキャストアドレスを管理する表である。
IGMP管理表403の例を表1に示す。
Figure 0003759527
以後の処理は、タイムアウトを利用して行う。すなわち、IGMP管理表403に登録されているが、一定時間以上、IGMP membership reportを送信してこないマルチキャストアドレスに対しては、このマルチキャストパケットの受信を希望するか否かを問い合わせるIGMP membership query(IGMPメンバシップクエリー)を自身の属するLANセグメント上のIPマルチキャストクライアント500に送信する。そして、少なくとも一つのIGMP membership reportが返送された場合には、IGMP管理表403の最終受信時刻を更新する。また、返送されなければ、IGMP管理表403へのエントリを削除する。なお、IGMP管理表403に対するエントリの削除及び追加は、全てIGMP制御手段402が行う。
IGMP管理表403に新しいエントリが登録されると、アドレス管理表制御手段404は、アドレス変換表405を参照することによって、新たなエントリのマルチキャストアドレス宛のマルチキャストパケットを送信するIPマルチキャストサーバ200に対応したサーバ側ゲートウェイのアドレスを取得し、これらの組をアドレス管理表406に記録する。アドレス変換表405とは、マルチキャストアドレスと、このマルチキャストアドレス宛のマルチキャストパケットを送信するIPマルチキャストサーバ200に対応したサーバ側ゲートウェイ300のアドレスを記述した表であり、予め与えられる。また、アドレス管理表406とは、IGMP管理表403に存在するエントリのマルチキャストアドレス宛のマルチキャストパケットを送信するIPマルチキャストサーバ200に対応したサーバ側ゲートウェイ300のアドレスを示す表である。
アドレス変換表405の例を表2に示す。
Figure 0003759527
また、アドレス管理表406の例を表3に示す。
Figure 0003759527
さらに、受信要求パケット生成手段407は、アドレス管理表406を参照して、受信要求パケット(図40)に上記グループアドレス(マルチキャストアドレス)を載せ、送信手段409によりサーバ側ゲートウェイ300に対して送信する。この受信要求パケットの送信は、時計408を用いてアドレス管理表406に存在する各エントリについて定期的に行う。また、アドレス管理表406のエントリは、IGMP管理表403の対応するエントリと同期させるものとする。すなわち、IGMP管理表403にエントリが追加されれば、同時にアドレス管理表406にも対応するエントリが追加され、IGMP管理表403からエントリが削除されれば、同時にアドレス管理表406の対応するエントリも削除するものとする。
なお、このとき、図40に示す受信要求パケットのフォーマットのチャネルID115には、IGMP membership reportの宛先となっているマルチキャストアドレスが書き込まれる。また、宛先アドレス111には、サーバ側ゲートウェイ300のアドレスが、送信元アドレス113には、クライアント側ゲートウェイ400のアドレス(2章に示した従来技術のマルチキャストデータ通信方法に示されるように中継ノードで書き換えられる可能性がある)が設定される。宛先ポート112には、2章に示す従来技術の通信方式によるパケットであることを示す特定のポートが設定され、送信元ポート114には、任意のポートが設定される。そして、この送信元ポート114に設定されたポートには、サーバ側ゲートウェイ300からのデータパケットが到着することになる。2章に示す従来技術のマルチキャストデータ通信方法に従って、データパケットが到着すると、パケット変換手段410は、このデータパケットをIPマルチキャストパケットに変換してLANセグメントに送出する。
なお、中継ノード600の構成は、3.4節に示す従来技術の実施の形態1、2及び3に共通の中継ノードの構成(図37)と同じである。
5.その他
なお、IPマルチキャストサーバ200とサーバ側ゲートウェイ300が同じ装置上で実現されている場合には、移動端末として動作しうる。
上記により、中間部に従来技術のユニキャストを用いたマルチキャストデータ通信方法を使用し、かつ、従来技術において、ゲートウェイ間がこれらを1対1に結ぶユニキャストであるため、クライアントが多数ある場合、サーバにフローが集中するという問題を解決しながら、マルチキャスト非対応網を経由したマルチキャスト対応ネットワーク間のマルチキャストデータ通信を可能にした。
なお、上述したIPマルチキャスト対応サーバ(IPマルチキャストサーバ200)、IPマルチキャスト対応クライアント(IPマルチキャストクライアント500b、500c),ゲートウェイ(サーバ側ゲートウェイ300、クライアント側ゲートウェイ400b,400c)内の各部が具備している機能は、実際にはいずれもコンピュータによって実現することが可能である。そのためには、本実施の形態の動作をコンピュータにより実行させるためのプログラムをコンピュータにより読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行させることにより、本実施形態の機能を実現にしてもよい。ここでいうコンピュータシステムとは、OS(オペレーティングシステム)に加えて周辺機器等のハードウェアを含むものとする。またWWW(World Wide Web)システムを利用している場合であれば、コンピュータはホームページ提供環境(あるいはその表示環境)を含むものとする。上記プログラムは、前述した機能の一部を実現するものでも良く、さらにコンピュータにすでに記録されているプログラムとの組み合わせでかかる機能を実現するもの(いわゆる差分プログラム)でも良い。コンピュータ読み取り可能な記録媒体は、フレキシブルディスク,光磁気ディスク,ROM(読み出し専用メモリ),CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置を含む。さらに、コンピュータ読み取り可能な記録媒体は、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間だけ動的にプログラムを保持するものや、コンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。そして、以上のことはこれ以後に説明する各実施の形態やその応用例においても全く同様である。
次に図面を参照して本発明の第2の実施形態について説明する。図42は、本実施形態におけるIPマルチキャスト対応端末を接続する場合のネットワーク構成例を示す。
図42に示すように、3つのローカルネットワーク、LAN(A)、LAN(B)、LAN(C)がIPマルチキャスト非対応のネットワークにより接続されている。IPマルチキャスト対応のサーバまたはクライアントが接続している各LANセグメントにゲートウェイを配置する。サーバ側ゲートウェイ300は、そのLANの入り口に設置する。
すなわち、本実施形態のマルチキャストデータ通信システムが第1の実施形態と異なる点は、サーバ側ゲートウェイ300をLAN(A)とネットワーク700との接続点(ネットワークの境)に設ける点である。
ゲートウェイは、IPマルチキャスト対応クライアントが受信要求をしている間だけ上述の2章に示した従来技術の方法による配信経路を生成・維持し、かつ、サーバが送出するIPマルチキャストをユニキャストに変換して上記配信経路に送出する機能を持つ装置である。
図42の例では、各LANは、1セグメントからなるが、複数セグメントからなるLANにおいては、各セグメントにゲートウェイを配置する。ゲートウェイは、サーバ側のセグメントとクライアント側のセグメントでは、機能が異なるが、例えば、個人用計算機を、その時々により、サーバにしたり、クライアントにしたりする場合は、サーバ側ゲートウェイ300とクライアント側ゲートウェイの両方を同じセグメントに配置すればよい。サーバ側ゲートウェイ300とクライアント側ゲートウェイは、同じホスト上で動作していても良い。
図42のLAN(A)、LAN(B)、LAN(C)に配置されたゲートウェイを、それぞれ、ゲートウェイPA、ゲートウェイPBおよびゲートウェイPCと呼ぶことにする。
また、LAN(A)に配置されたIP マルチキャスト対応サーバをSA、LAN(B)およびLAN(C)に配置されたIP マルチキャスト対応クライアントを、それぞれ、CBおよびCCと呼ぶことにする。
次に図43を用いて動作を説明する。SAは、宛先アドレスG、宛先UDPサポートpのIPマルチキャストパケットを送出する。
次に、IPマルチキャスト対応クライアントCBのユーザは、電子メールやWEBサーバなどを通じて得られた、受信マルチキャストアドレスGとIP マルチキャストサーバアドレスSAと受信UDPポートpを、該クライアントに設定すると、IGMP membership reportがG宛に送出される。
このIGMP membership reportには、受信マルチキャストアドレスGとIP マルチキャストサーバアドレスSAが記載されている。クライアント側ゲートウェイPBは、セグメント内を流れるIGMP membership reportを監視しており、新たなマルチキャストアドレスGに対するIGMP membership reportを発見すると、アドレス管理表にGとSAの組を記録する。
クライアント側ゲートウェイPBは、上述の2章に示した従来技術における受信要求パケットにGを乗せて、SA宛に送出を開始する。
上述の2章に示した従来技術によれば、この受信要求パケットは、配信経路維持のために定期的に送出されなければならない。また、受信を希望するクライアントが消滅したときには、この受信要求パケットの送出を停止する。
上述の2章に示した従来技術にあるように、PAとPB間に中継ノードをおくことにより、マルチキャストアドレスGを指定する、SA宛の受信要求パケットが複数の送信元から来た場合は、それが集約される。
PAの隣接中継ノードが一つである場合は、最終的に隣接中継ノードからの受信要求パケットがPAに到着する。ここで、PAは受信要求パケットを受信するがSAには転送しない。結果として、PAを根とするツリー上の配信経路が生成される。
PAは、SAがLAN(A)に送出したG宛のIPマルチキャストパケットをカプセル化することにより上述の2章に示した従来技術におけるデータパケットに変換して、受信要求パケットの送信元に送る。
中継ノードを経て、データパケットがPBに到着すると、脱カプセル化することにより、IPマルチキャストパケットに再変換し、LAN(B)に送出する。この結果、CBは、SAからのIPマルチキャストパケットを受信することができる。以上が一連の流れである。
上記の説明により、上述の2章に示した従来技術における「サーバ」が、ストリームデータを「配信用データ蓄積手段」から取得する代わりに、LANセグメントに流れるIPマルチキャストパケットとして取得する(サーバ側)ゲートウェイに、また、上述の2章に示した従来技術における「クライアント」が、受信したデータパケットを、ストリームデータを画像や音声として再現する代わりに、IPマルチキャストパケットに変換し、LANセグメントへ流す(クライアント側)ゲートウェイに置き換えられたと考えることができる。
次に、各装置の構成について説明する。
図45にサーバ側ゲートウェイ300の構造を示す。網掛けの部分は、図44に示す、上述の2章に示した従来技術におけるサーバの構成図との共通部分を表している。
これは、前述の通り、ストリームデータを「配信用データ蓄積手段」から取得する代わりに、LANセグメントに流れるIPマルチキャストパケットとして取得する機能とそれを上述の2章に示した従来技術におけるデータパケットに変換する手段が加わったと考えられるからである。
すなわち、受信手段386により、受信されたIPマルチキャストパケットは、上述の2章に示した従来技術におけるデータパケットのペイロードに搭載され、パケット生成手段384によりヘッダを付け加えることによりデータパケットが生成される。
図41は、上述の2章に示した従来技術におけるデータパケットのフォーマットであるが、チャンネルIDフィールドにはマルチキャストアドレスを、データフィールドにはIPマルチキャストパケットをそのまま搭載する。宛先アドレスは、受信要求パケットの送信元であり、宛先ポートは、受信要求パケットの送信元ポートである。また、送信元アドレスは、サーバ側ゲートウェイ300アドレスであり、送信元ポートは、任意である。
例えば、上述の2章に示した従来技術におけるデータパケットをUDPパケットとして構成すれば、IPマルチキャストパケットを搭載した結果、Etherフレームの最大サイズを超えたとしても、通常のIP処理系であれば、そのような場合、IPフラグメントを行うので、問題なく送ることができる。
データパケットの送信元ポートについては、マルチキャストアドレスごとに予め決めておくことにより、この送信元ポートと送信元アドレスの組で、IPマルチキャストアドレスを特定することができる。従って、送信元アドレスとポートの組からマルチキャストアドレスへの対応関係をクライアント側ゲートウェイに予め与えておくことにより、特許文献1に示されるように、IPヘッダの宛先アドレスを直接書き換える方法でも動作可能である。
次に、図46をもとにクライアント側ゲートウェイ400の構成について説明する。クライアント500からIGMP membership reportを受信手段401により受信すると、IGMP制御手段402により、宛先となっているマルチキャストアドレスとマルチキャストサーバアドレスが、既にIGMP管理表403に登録されているかチェックを行う。登録されていれば、最終受信時刻等が、IGMP管理テーブルに記録される。登録されていなければ、IGMP管理表403にマルチキャストアドレスとマルチキャストサーバアドレスとIGMP membership reportの受信時刻を登録する。IGMP管理表403とは、IGMP membership reportの受信により、受信を希望するクライアントの存在が確認されているマルチキャストアドレスを管理する表である。
その例を図47に示す。以後の処理は、タイムアウトを利用して行う。つまり、一定時間以上、IGMP membership reportを送ってこないマルチキャストアドレスに対しては、IGMP membership queryを送り、一つのIGMP membership reportも返ってこなければ、IGMP管理表403のエントリを削除する。IGMP管理表に対するエントリの削除及び追加は、全てIGMP制御手段402が行う。
受信要求パケット生成手段407は、IGMP管理表403を参照して、上述の2章に示した従来技術における受信要求パケットにマルチキャストグループアドレスを載せ、マルチキャストサーバに対して、送信する。この受信要求パケットの送信は、IGMP管理表403に存在する各エントリについて定期的に行う。
図19に上述の2章に示した従来技術の方法における受信要求パケットのフォーマットを示す。チャンネルIDフィールドには、IGMP membership reportの宛先となっているマルチキャストアドレスを書き込む。宛先アドレスは、マルチキャストサーバ200のアドレスであり、送信元アドレスは、クライアント側ゲートウェイ400のアドレス(上述の2章に示した従来技術に示されるように中継ノードで書き換えられる可能性がある)であり、宛先ポートは、上述の2章に示した従来技術の方式によるパケットであることを示す特定のポートであり、送信元ポートは、任意のポートである。
送信元ポートに、サーバ側ゲートウェイ300からのデータパケットが到着することになる。上述の2章に示した従来技術の方法に従って、データパケットが到着すると、パケット変換手段409により、IPマルチキャストパケットに変換してLANセグメントに送出する。
以上説明したように、本発明によれば、クライアントが多数ある場合においても、サーバにフローが集中するという問題を解決しながら、マルチキャスト非対応網を経由したマルチキャスト対応ネットワーク間のマルチキャストデータ通信を可能とした。
本発明の一実施の形態によるマルチキャストデータ通信方法を用いてIPマルチキャスト対応端末を接続する場合のネットワーク構成例を示す図である。 同実施の形態によるマルチキャストデータ通信の動作を示す図である。 同実施の形態によるサーバ側ゲートウェイの構成を示す図である。 同実施の形態によるクライアント側ゲートウェイの構成を示す図である。 従来技術の実施の形態1に関わるマルチキャスト通信におけるネットワーク構成の一例を示す説明図である。 中継ノードで生成され更新される従来技術の実施の形態1に関わる配信テーブルの一例を示す説明図である。 従来技術の実施の形態1に関わる中継ノードからデータがユニキャストされる過程の説明図である。 従来技術の実施の形態1に関わる中継ノードからデータがユニキャストされる過程の説明図である。 従来技術の実施の形態1に関わる更新後の配信テーブルの一例を示す図である。 従来技術の実施の形態1に関わるマルチキャスト通信におけるネットワーク構成の他の例を示す図である。 図10のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図10のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図10のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図10のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図10のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 従来技術の実施の形態1に関わる受信要求パケット到着時の処理を示すフローチャートである。 図16中の高負荷時の処理を示すフローチャートである。 従来技術の実施の形態1に関わるデータパケット到着時の処理を示すフローチャートである。 図18中のエントリ削除操作の処理を示すフローチャートである。 従来技術の実施の形態2に関わるマルチキャスト通信におけるネットワーク構成の一例を示す図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図20のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 本発明の実施の形態2に関わる受信要求パケット到着時の処理を示すフローチャートである。 従来技術の実施の形態2に関わる配信テーブル生成パケット到着時の処理を示すフローチャートである。 従来技術の実施の形態3に関わるマルチキャスト通信におけるネットワーク構成の一例を示す図である。 図29のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図29のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図29のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 図29のネットワーク構成におけるマルチキャストツリーの構成過程の説明図である。 従来技術の実施の形態3に関わる受信要求パケット到着時の処理を示すフローチャートである。 従来技術の実施の形態3に関わるデータパケット到着時の処理を示すフローチャートである。 従来技術の実施の形態1乃至3に関わるクライアントの構成例を示すブロック図である。 従来技術の実施の形態1乃至3に関わる中継ノードの構成例を示すブロック図である。 従来技術の実施の形態1乃至3に関わるサーバの構成例を示すブロック図である。 従来技術の実施の形態1乃至3における特定ポートを用いたフロー識別の様子を示す図である。 従来技術の実施の形態1乃至3における受信要求パケットのフォーマットの一例を示した図である。 従来技術の実施の形態1乃至3におけるデータパケットのフォーマットの一例を示した図である。 本発明の第2の実施形態によるマルチキャストデータ通信方法を用いてIPマルチキャスト対応端末を接続する場合のネットワーク構成例を示す図である。 同実施の形態によるマルチキャストデータ通信の動作を示す図である。 特願2002−133286によるサーバの構成を示す図である。 同実施の形態によるサーバ側ゲートウェイ300の構成を示す図である。 同実施の形態によるクライアント側ゲートウェイ400の構成を示す図である。 IGMP管理テーブルのテーブル構成例を示す図である。
符号の説明
21,31−1〜31−4,41−1〜41−4,51−1〜51−4,102,103,600:中継ノード
22−1〜22−4,32−1〜32−7,42−1〜42−5,52−1〜52−5,104,105:受信ホスト(クライアント)
33,43,53,101:送信ホスト(サーバ)
61,71,81,381,408:時計
62,75,84,384:パケット生成手段
63,76,85,385,409:送信手段
64,77,86,386,401:受信手段
65:映像復号手段
66:映像表示手段
72:ノード負荷測定手段
73,82,106,107,382:配信テーブル
74,83,383:配信テーブル管理手段
78,87,387:パケット複製手段
88:配信用データ蓄積手段
111,121:宛先アドレス
112,122:宛先ポート
113,123:送信元アドレス
114,124:送信元ポート
115,125:チャネルID
116:高さ
126:データ
200:IPマルチキャストサーバ
300:サーバ側ゲートウェイ
388:パケット変換手段
400,400b,400c:クライアント側ゲートウェイ
402:IGMP制御手段
403:IGMP管理表
404:アドレス管理表制御手段
405:アドレス変換表
406:アドレス管理表
407:受信要求パケット生成手段
410:パケット変換手段
500b,500c:IPマルチキャストクライアント

Claims (16)

  1. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムであって、
    前記クライアント側ゲートウェイは、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段とを備え、
    前記サーバ側ゲートウェイは、
    前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段を備える、
    ことを特徴とするマルチキャストデータ通信システム。
  2. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるマルチキャストデータ通信方法であって、
    前記クライアント側ゲートウェイが、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信し、
    前記サーバ側ゲートウェイが、
    前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出し、
    前記クライアント側ゲートウェイが、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出する、
    ことを特徴とするマルチキャストデータ通信方法。
  3. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイであって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段と、
    を備えることを特徴とするクライアント側ゲートウェイ。
  4. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイであって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段、
    を備えることを特徴とするサーバ側ゲートウェイ。
  5. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムであって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、
    をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラム。
  6. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムであって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、
    をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラム。
  7. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバが接続されるセグメント上の前記サーバ側ゲートウェイへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、
    の各処理をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体。
  8. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバ及びサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、
    をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体。
  9. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムであって、
    前記クライアント側ゲートウェイは、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、この参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段とを備え、
    前記サーバ側ゲートウェイは、
    前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段を備える、
    ことを特徴とするマルチキャストデータ通信システム。
  10. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるマルチキャストデータ通信方法であって、
    前記クライアント側ゲートウェイが、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信し、
    前記サーバ側ゲートウェイが、
    前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出し、
    前記クライアント側ゲートウェイが、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出する、
    ことを特徴とするマルチキャストデータ通信方法。
  11. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイであって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信する受信要求パケット生成手段と、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するパケット変換手段と、
    を備えることを特徴とするクライアント側ゲートウェイ。
  12. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイであって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出する手段、
    を備えることを特徴とするサーバ側ゲートウェイ。
  13. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムであって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、
    をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラム。
  14. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムであって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、
    をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラム。
  15. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、
    前記マルチキャストクライアントからマルチキャストへの参加要求を受信している間だけ、参加要求が示すマルチキャストアドレス宛のマルチキャストパケットを送信する前記マルチキャストサーバへ、該マルチキャストアドレスを含んだ前記受信要求を定期的に送信するステップと、
    前記サーバ側ゲートウェイからのユニキャストパケットを受信し、このユニキャストパケットをマルチキャストパケットに変換して自身が接続するネットワークセグメントに送出するステップと、
    の各処理をコンピュータに実行させることを特徴とするクライアント側ゲートウェイのコンピュータプログラムを記録した記録媒体。
  16. マルチキャストパケットを受信するマルチキャストクライアント及びクライアント側ゲートウェイが接続されるネットワークセグメントと、
    マルチキャストパケットを送信するマルチキャストサーバが接続されるとともに、入り口にサーバ側ゲートウェイが接続されるネットワークセグメントとを、
    前記クライアント側ゲートウェイから前記サーバ側ゲートウェイ宛の受信要求を受け、該クライアント側ゲートウェイから該サーバ側ゲートウェイヘの配信経路を生成し、該受信要求を受信している間この配信経路を維持する中継ノードを含むユニキャスト通信が可能なネットワークを介して接続してなるマルチキャストデータ通信システムに用いられるサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体であって、
    前記マルチキャストクライアントが接続されるネットワークセグメント上の前記クライアント側ゲートウェイからの前記受信要求を受信している間だけ、該受信要求の送信元のノードに対し、該受信要求が示すマルチキャストアドレス宛に自身が接続するネットワークセグメント上の前記マルチキャストサーバが送出したマルチキャストパケットを、ユニキャストパケットに変換して送出するステップ、
    をコンピュータに実行させることを特徴とするサーバ側ゲートウェイのコンピュータプログラムを記録した記録媒体。
JP2003389314A 2003-01-29 2003-11-19 マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体 Expired - Lifetime JP3759527B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003389314A JP3759527B2 (ja) 2003-01-29 2003-11-19 マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003020607 2003-01-29
JP2003389314A JP3759527B2 (ja) 2003-01-29 2003-11-19 マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2004254288A JP2004254288A (ja) 2004-09-09
JP3759527B2 true JP3759527B2 (ja) 2006-03-29

Family

ID=33032165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003389314A Expired - Lifetime JP3759527B2 (ja) 2003-01-29 2003-11-19 マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3759527B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006095391A1 (ja) * 2005-03-04 2006-09-14 Fujitsu Limited パケット中継装置
JP5471146B2 (ja) * 2009-08-11 2014-04-16 富士ゼロックス株式会社 装置管理システム、管理対象装置、およびプログラム
JP5495175B2 (ja) * 2009-11-04 2014-05-21 横河電機株式会社 情報転送システム
JP5861237B2 (ja) * 2012-03-26 2016-02-16 西日本電信電話株式会社 通信制御装置、通信制御方法及びコンピュータプログラム
TWI648970B (zh) * 2017-07-07 2019-01-21 中華電信股份有限公司 使用OpenFlow協定與UDP埠號位址轉換使群播封包得以穿越非群播網路之系統及方法
AU2018441206B2 (en) * 2018-09-13 2022-10-13 Telefonaktiebolaget Lm Ericsson (Publ) A method of and devices for supporting selective forwarding of messages in a network of communicatively coupled communication devices.
CN115460470B (zh) * 2022-08-19 2024-03-26 烽火通信科技股份有限公司 组播数据转发方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
JP2004254288A (ja) 2004-09-09

Similar Documents

Publication Publication Date Title
JP3872058B2 (ja) 仮想マルチキャストネットワーク方法及びそのシステム
Gossain et al. Multicast: Wired to wireless
JP4077330B2 (ja) データ生成装置
JP4464766B2 (ja) マルチキャスト配信制御装置
EP1334586B1 (en) Subgroup multicasting in a communications network
US9143333B2 (en) System and method for multicast transmission
US7707300B1 (en) Methods and apparatus for transmitting information in a network
JP3759527B2 (ja) マルチキャストデータ通信システム及び方法、クライアント側ゲートウェイ、サーバ側ゲートウェイ、コンピュータプログラム、ならびに、コンピュータプログラムを記録した記録媒体
TWI493946B (zh) 虛擬私有網路通信系統、路由裝置及其方法
JP2006101475A (ja) マルチキャスト制御方法、マルチキャスト制御装置、及びコンテンツ属性情報管理装置、並びにプログラム
JP3962343B2 (ja) マルチキャストデータ通信システム及びその方法
JP3693978B2 (ja) マルチキャストデータ通信方法、マルチキャストデータ通信システム、中継装置、中継方法、中継プログラム、中継プログラムを記録した媒体
JP2017152991A (ja) 情報配信装置、情報配信プログラム、通信端末、通信処理プログラム及び情報配信システム
Cisco IP Multicast Technology Overview
Cisco Multicasting in IP and AppleTalk Networks
JP5553425B2 (ja) マルチキャスト配信システム、配信ルータ、および、マルチキャスト配信方法
JP6690291B2 (ja) 情報配信システム、情報配信装置、情報配信プログラム、及び情報配信方法
JP5574383B2 (ja) 受信状況推定方法、受信側多地点配信装置及びプログラム
EP2192719A1 (en) Method and system for providing source specific multicast service on Ethernet network
Fesehaye et al. SNC: scalable NDN-based conferencing architecture
JP4361446B2 (ja) マルチキャスト制御方法、マルチキャストエリア管理装置、及びマルチキャスト制御装置、並びにプログラム
JP5575714B2 (ja) 多地点配信方法及び多地点配信システム
JP4355004B2 (ja) マルチキャストデータ通信システム及びその方法
Ritvanen Multicast routing and addressing
Zhang et al. Research and Application of Multimedia E-learning System Based on IGMP Snooping Multicast

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051117

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051228

R151 Written notification of patent or utility model registration

Ref document number: 3759527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20090113

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100113

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110113

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120113

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130113

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term