(57)【要約】【課題】分岐数が１の場合にデータの中継処理を回避し、分岐装置の負荷軽減によるパフォーマンスの向上をはかる。【解決手段】分岐装置２は、クライアント３、４から、サーバ１に対し発行される受信要求のうち、１台目からの受信要求は捕獲せずに、２台目からの受信要求が到着した際に、両者を配信先として登録し分岐点とする。このとき、サーバ１に対し１台目を既に登録している場合には分岐装置２に変更するように通知を行う。また、受信者が離脱し、分岐装置２に登録されている配信先の数が１となった場合には、その分岐装置２は登録を解除して分岐処理を停止する。このとき、サーバ１に対し、分岐装置２が登録されている場合には、分岐装置２に最後に登録されていた配信先に変更するように通知を行う。【選択図】      図１
2005175609.tif 000002
【特許請求の範囲】
【請求項１】
１台以上のサーバと２台以上のクライアントが、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表を保持する分岐装置を介して接続され、前記サーバがクライアントに対してデータを同報通信するマルチキャストデータ通信システムであって、
前記分岐装置は、
各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、
自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段と、
自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段と、
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段と、
を備え、
前記サーバは、
前記分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表の該交換要求の宛先であるサーバの行の該分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段、
を備えたことを特徴とするマルチキャストデータ通信システム。
【請求項２】
１台以上のサーバと２台以上のクライアントが、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表を保持する分岐装置を介して接続され、前記サーバがクライアントに対してデータを同報通信するマルチキャストデータ通信システムであって、
前記分岐装置は、
各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、
自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段と、
自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段と、
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段と、
を備え、
前記サーバは、
前記分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を該分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段、
を備えたことを特徴とするマルチキャストデータ通信システム。
【請求項３】
１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であって、
各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と、
各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、
自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段と、
自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段と、
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段と、
を備えたことを特徴とする分岐装置。
【請求項４】
１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であって、
各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と、
各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、
自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段と、
自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段と、
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段と、
を備えたことを特徴とする分岐装置。
【請求項５】
１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であるコンピュータを、
各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表とを記憶する記憶手段、
自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段、
自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段、及び
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段、
として機能させることを特徴とするプログラム。
【請求項６】
１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であるコンピュータを、
各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表とを記憶する記憶手段、
自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段、
自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段、及び
他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバが送出したデータを分岐装置が複製することで、複数のクライアントへ配信するマルチキャストデータ通信システム、及び各クライアントがサーバ宛に送信した受信要求を捕獲して配信径路を構築する分岐装置並びにプログラムに関する。
【背景技術】
【０００２】
複数のクライアントに対してデータを同報するマルチキャスト通信を実現する方法として、クライアントからの受信要求を分岐装置が捕獲し、分岐点となることで、木状（ツリー状）の配信経路を構築するマルチキャストデータ通信システムが知られている。
例えば、クライアントはリクエストパケットと呼ばれる受信要求を繰り返しサーバ宛に送信し、クライアントからサーバヘの経路上に設置された分岐装置が受信要求を捕獲し、その送信元を登録表に記録することで分岐点となる（例えば、特許文献１参照。）。
【０００３】
ここで、図１８〜図２５を用いて従来方式について説明する。図１８は、従来のマルチキャストデータ通信システムの構成例を示すブロック図である。
図１８〜図２５において、サーバ１とクライアント３、４は、分岐装置２’によって接続されている。サーバ１と分岐装置２’は、それぞれ登録表５、登録表６を管理する。それぞれの登録表５、６の各行には、サーバ名と、そのサーバからのデータを受信する子（データを送信すべき相手）が記録される。例えば、分岐装置２’の登録表６に、「サーバ１：クライアント３、クライアント４」という行が記載されていれば、分岐装置２’は、サーバ１から受信したデータを、クライアント３とクライアント４に中継することを意味する。
【０００４】
ここでは、まず、クライアント３、４の順にサーバ１に対して受信要求を行い、最後にクライアント４が受信を停止する状況を考える。
図１９では、クライアント３がサーバ１宛に受信要求１０を送信している。分岐装置２’は、自身を通過しようとする受信要求１０を捕獲し、その送信元であるクライアント３を登録表６のサーバ１の行に記録する（「サーバ１：クライアント３」）。
そして、図２０に示すように、分岐装置２’は、クライアント３に代わってサーバ１宛に受信要求１１を送信する。受信要求１１を受信したサーバ１は、送信元である分岐装置２’を登録表５のサーバ１の行に記録する（「サーバ１：分岐装置２’」）。
【０００５】
次に、図２１を用いてデータ送信について説明する。サーバ１は、登録表５のサーバ１の行に記録されている分岐装置２’宛にデータ１２を送信する。分岐装置２’は、サーバ１からデータ１２を受信すると、登録表６のサーバ１の行に記録されているクライアント３宛にデータ１３を中継する。
しかしながら、このように受信装置が一台しかいない場合、分岐装置２’は中継処理を行う必要はないが、分岐装置２’は、受信したデータパケットの送信元を検査し、登録表６を検索し、宛先を書き換え送出するという中継処理を行っている。
図２２では、クライアント４がサーバ１宛に受信要求１４を送信している。分岐装置２’は、クライアント４がサーバ１宛に送信した受信要求１４を捕獲すると、登録表６のサーバ１の行に送信元であるクライアント４を追加する（「サーバ１：クライアント３、クライアント４」）。分岐装置２’は、既にサーバ１に受信要求１１を送信しているため、再度送る必要はない。このとき、データは図２３のように送信される。
【０００６】
図２３において、まず、サーバ１は登録表５のサーバ１の行に記録されている分岐装置２’にデータ１５を送信する。続いて、分岐装置２’は、登録表６のサーバ１の行を探し、配信先が複数であるためデータを複製し、宛先の書き換えなどしたデータ１６とデータ１７をそれぞれクライアント３とクライアント４に中継する。
【０００７】
最後に、クライアント４が受信を停止する。図２４では、クライアント４がサーバ１宛に停止要求１８を送信している。分岐装置２’は自身を通過しようとする停止要求１８を捕獲し、その送信元であるクライアント４を登録表６のサーバ１の行から削除する（「サーバ１：クライアント３」）。このときデータは図２５に示すように送信される。
図２５において、サーバ１は、登録表５のサーバ１の行に記録されている分岐装置２’宛にデータ１９を送信する。分岐装置２’は、サーバ１からデータ１９を受信すると、登録表６のサーバ１の行に記録されているクライアント３宛にデータ２０を中継する。図２１と同様に、分岐が不要な状況でありながら、分岐装置２’は、送信元の検査、登録表の検索、宛先書き換えといった処理を行っている。
【０００８】
一方、マルチキキャストツリーを構築するプロトコルの一つであるＰＩＭ−ＳＭ（Personal Independent Multicast-Sparse Mode）は、直接のデータ供給者であるサーバや直接のデータ享受者であるクライアントではなく、サーバやクライアントと同一サブネット上に設置されたルータ、あるいはランデブーポイントと呼ばれる仮想サーバが受信要求の送受信を行う。
すなわち、クライアントと同一サブネットに設置されたルータは、joinと呼ばれる受信要求をランデブーポイントあるいはサーバと同一サブネットに設置されたルータ宛に送信する。Joinパケットの経路上に設置された分岐装置（通常はマルチキャストルータと呼ばれる）は、このjoinを捕獲し、その送信元を登録表に記録することで分岐点となる。また、クライアントと同一サブネットに設置されたルータは、データの受信を停止する際にpruneと呼ばれる停止要求をランデブーポイントあるいはサーバと同一サブネットに設置されたルータ宛に送信する。Pruneパケットの経路上に設置されたマルチキャストルータは、このpruneを捕獲し、その送信元を登録表から削除する。
この場合も、分岐が不要な状況にある分岐装置は、送信元の検査、登録表の検索、宛先書き換えといった処理を行う。
【特許文献１】特開２００３−３２３００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上記した特許文献１に開示されたマルチキャストデータ通信システムやＰＩＭ−ＳＭ準拠の分岐装置は、１台のクライアントあるいは下流の分岐装置からしか受信要求を受けていない場合であっても、つまり分岐数が１であっても、データの中継処理を行う。データの中継処理には、受信したデータの送信元の検査、登録表の検索、クライアントあるいは下流の分岐装置へのデータ送信といった処理が含まれる。
また、特許文献１に開示されたマルチキャストデータ通信システムでは、データパケットの宛先を変更することも求められる。本来、分岐数が１である場合、このような中継処理は不要であり、分岐装置の負荷軽減のためにはこの中継処理を回避することが望ましい。
【００１０】
本発明は上記事情に鑑みてなされたものであり、分岐数が１の場合にデータの中継処理を回避し、分岐装置の負荷軽減によるパフォーマンスの向上をはかった、マルチキャストデータ通信システム及び分岐装置並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記した課題を解決するために本発明は、１台以上のサーバと２台以上のクライアントが、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表を保持する分岐装置を介して接続され、前記サーバがクライアントに対してデータを同報通信するマルチキャストデータ通信システムであって、前記分岐装置は、各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段と、自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段と、他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段と、を備え、前記サーバは、前記分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表の該交換要求の宛先であるサーバの行の該分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段、を備えたことを特徴とする。
【００１２】
また、本発明は、１台以上のサーバと２台以上のクライアントが、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表を保持する分岐装置を介して接続され、前記サーバがクライアントに対してデータを同報通信するマルチキャストデータ通信システムであって、前記分岐装置は、各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段と、自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段と、他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段と、を備え、前記サーバは、前記分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を該分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段、を備えたことを特徴とする。
【００１３】
本発明は、１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であって、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と、各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段と、自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段と、他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段と、を備えたことを特徴とする。
【００１４】
また、本発明は、１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であって、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と、各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表と、自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段と、自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段と、他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段と、を備えたことを特徴とする。
【００１５】
本発明は、１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であるコンピュータを、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表とを記憶する記憶手段、自身の前記登録表と自身の前記仮登録表の何れにも記録されていないサーバを宛先とする受信要求が到着すると、自身の前記仮登録表に該受信要求の宛先であるサーバの行を作成し、この行に該受信要求の送信元であるクライアント或いは分岐装置を記録し、該受信要求を該サーバ宛に送信する手段、自身の前記仮登録表に記録されているサーバを宛先とするものであって、送信元が前記仮登録表の該サーバの行に記録されていないクライアント或いは分岐装置である受信要求が到着すると、前記仮登録表から該受信要求の宛先であるサーバの行を削除し、自身の前記登録表に該宛先であるサーバの行を作成し、この行に該仮登録表から削除した該宛先であるサーバの行に記録されていたクライアント或いは分岐装置と該受信要求の送信元であるクライアント或いは分岐装置とを記録し、該仮登録表から削除したクライアント或いは分岐装置と自身との交換を指示する交換要求を該サーバ宛に送信する手段、及び他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の前記他の分岐装置の仮登録表から削除されたクライアント或いは分岐装置を交換要求の送信元である分岐装置に変更する手段、として機能させることを特徴とする。
【００１６】
また、本発明は、１台以上のサーバが２台以上のクライアントに対してデータを同報通信するマルチキャストデータ通信システムにおいて、前記各クライアントが前記サーバ宛て送信した受信要求を捕獲して配信径路を構築する分岐装置であるコンピュータを、各行に一つのサーバと複数のクライアント及び分岐装置とを記録可能な登録表と各行に一つのサーバと一つのクライアント或いは分岐装置とを記録可能な仮登録表とを記憶する記憶手段、自身の前記仮登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記仮登録表から該停止要求の宛先であるサーバの行を削除する手段、自身の前記登録表に記録されているサーバを宛先とする停止要求が到着すると、自身の前記登録表の該停止要求の宛先であるサーバの行から該停止要求の送信元であるクライアント或いは分岐装置を削除し、削除後、該停止要求の宛先であるサーバの行に記録されているクライアント及び分岐装置の双方を含めた残りが一つのみの場合には、自身の前記登録表から該停止要求の宛先であるサーバの行を削除し、自身の前記仮登録表に該停止要求の宛先であるサーバの行を作成し、この行に自身の前記登録表の該停止要求の宛先であるサーバの行に残っていたクライアント或いは分岐装置を記録し、自身と該仮登録表に記録したクライアント或いは分岐装置との交換を指示する交換要求を該サーバ宛に送信する手段、及び他の分岐装置から交換要求が到着すると、交換要求に従い、自身の前記登録表或いは自身の前記仮登録表の該交換要求の宛先であるサーバの行の交換要求の送信元である分岐装置を前記他の分岐装置の仮登録表に記録されたクライアント或いは分岐装置に変更する手段、として機能させることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、クライアントからの受信要求を分岐装置が捕獲することで配信経路を構築するマルチキャストデータ通信システムにおいて、分岐数が１の場合のように分岐を不要とする分岐装置がデータパケットの中継処理実行を回避することができ、このことにより、分岐装置の負荷軽減によるパフォーマンスの向上がはかれる。
【発明を実施するための最良の形態】
【００１８】
以下、図１〜図１７を用いて本発明の実施の形態について詳細に説明する。
図１は、本発明のマルチキャストデータ通信システムの構成例を示すブロック図である。図１において、本発明のマルチキャストデータ通信システムは、１台以上のサーバ１と、２台以上のクライアント３、４が、分岐装置２を介して接続されている。サーバ１は、記録装置に、各行に１つのサーバと複数のクライアント及び分岐装置とが記録可能な登録表を管理する。分岐装置２は、記録装置に、各行に１つのサーバと複数のクライアント及び分岐装置とが記録可能な登録表６に加え、各行に１つのサーバと一つのクライアント或いは分岐装置とが記録可能な仮登録表７を管理する。仮登録表７には、サーバ毎に、分岐装置２を最初に通過した受信要求の送信元、或いは最後に残った受信元が記載される。仮登録表７の表記は登録表６と同じである。
ここでは、最初にクライアント３、４の順にサーバ１に対して受信要求を行い、最後にクライアント４が受信を停止する状況を考える。
【００１９】
図２〜図１０は、図１に示す本発明の実施の形態によるデータ配信の様子を示す図であり、図１１、図１２は、そのときの本発明におけるマルチキャストデータ通信システムの動作シーケンスを示すシーケンス図である。ここでは、サーバ１、分岐装置２、クライアント３、４間の動作の流れが示されている。以下、図２〜図１２を参照しながら本発明の実施の形態の動作について詳細に説明する。
【００２０】
図２では、クライアント３がサーバ１宛に受信要求５０を送信している（図１１のステップＳ１０１）。そして、分岐装置２は、サーバ１宛の最初の受信要求５０が自身を通過する際に、その送信元を仮登録表７のサーバ１の行に記録する（「サーバ１：クライアント３」）（ステップＳ１０２）。但し、分岐装置２は受信要求５０を捕獲せずにそのままサーバ１に転送する。サーバ１は、受信要求５０が到着すると、受信要求５０の送信元であるクライアント３を登録表５のサーバ１の行に記録する（「サーバ１：クライアント３」）（ステップＳ１０３）。
【００２１】
このとき、データの配信は、図３に示すように行われる。すなわち、サーバ１は、登録表５のサーバ１の行に記録されているクライアント３宛にデータ５１を送信する（ステップＳ１０４）。このため、分岐装置２は、従来と異なり、送信元の検査、登録表の検索、宛先の書き換えといった処理を行う必要がない。
【００２２】
次に、図４に示すように、クライアント４が受信要求５２をサーバ１宛に送信する（ステップＳ１０５）。そして、分岐装置２は、仮登録表７のサーバ１の行が存在すると、自身を通過しようとする受信要求５２を捕獲し、仮登録表７からサーバ１の行を削除し、クライアント３と受信要求５２の送信元であるクライアント４を登録表６のサーバ１の行に記録する（「サーバ１：クライアント３、クライアント４」）（ステップＳ１０６）。
続いて、図５に示すように、分岐装置２は、仮登録表７のサーバ１の行に記録されていたクライアント３と分岐装置２の交換を指示する交換要求５３をサーバ１宛に送信する（ステップＳ１０７）。サーバ１にこの交換要求５３が到着すると、サーバ１は登録表５のクライアント３を分岐装置２に変更する（「サーバ１：分岐装置２」）（ステップＳ１０８）。
【００２３】
このとき、データの配信は、図６に示すように行われる。すなわち、サーバ１は、登録表５のサーバ１の行に記録されている分岐装置２にデータ５４を送信する（ステップＳ１０９）。続いて、分岐装置２は、登録表６の送信元であるサーバ１の行を探し、配信先が複数であるためデータを複製し、宛先の書き換えなどを行って、データ５５とデータ５６をそれぞれクライアント３とクライアント４に送信する（ステップＳ１１０、ステップＳ１１１）。
【００２４】
図７では、クライアント４が受信停止を要求する。クライアント４はサーバ１宛に停止要求５７を送信する（図１２、ステップＳ２０１）。分岐装置２は、自身を通過しようとする停止要求５７を捕獲し、その送信元であるクライアント４を登録表６の宛先であるサーバ１の行から削除する（「サーバ１：クライアント３」）（ステップＳ２０２）。このとき、登録表６のサーバ１の行に記録されている配信先の数が１となったため、分岐装置２は分岐処理を行う必要がなくなったことになる。
このことにより、図８に示されるように、分岐装置２は登録表６のサーバ１の行を削除し、削除した内容を仮登録表７に記録する（「サーバ１：クライアント３」）（ステップＳ２０３）。
【００２５】
そして、図９に示されるように、分岐装置２と最後の配信先であるクライアント３との交換を指示する交換要求５８をサーバ１宛に送信する（ステップＳ２０４）。サーバ１にこの交換要求５８が到着すると、サーバ１は、登録表５のサーバ１の行に記録されている分岐装置２をクライアント３に変更する（「サーバ１：クライアント３」）（ステップＳ２０５）。
【００２６】
このとき、データの配信は、図１０に示すように行われる。すなわち、サーバ１は登録表５のサーバ１の行に記録されているクライアント３宛にデータ５９を送信する（Ｓ２０６）。分岐装置２は、従来と異なり、送信元の検査、登録表の検索、宛先の書き換えといった処理を行う必要はない。
【００２７】
図１３〜図１５を用いて分岐装置の動作を説明する。図１３は、本発明の分岐装置を構成する要素のうち、受信要求処理と停止要求処理に関係する部分のみ抽出して示したブロック図であり、図１４、図１５には、受信要求あるいは停止要求が分岐装置２を通過しようとした際の動作が示されている。図１４、図１５には、一部本発明のプログラムの処理手順も示されている。
最初に、受信要求が分岐装置を通過しようとした際の動作について説明する。
分岐装置２は、パケット受信部２００からパケットを受信すると（ステップＳ３０１）、パケット種別判別部２０２でパケットの種類を判別する（ステップＳ３０２）。ここでは、受信要求であったとする（Ｓ３０２：受信要求）。この受信要求の宛先であるサーバをサーバ１１０、送信元（クライアント或いは分岐装置）を１１１とする。次に、登録状況判別部２０３は、登録表２０７と仮登録表２０８の登録状況を検査する（ステップＳ３０３）。
ここでは、登録表２０７にサーバ１１０の行が存在する場合を説明する。この場合（Ｓ３０３：登録表２０７にサーバ１１０の行が存在）、登録操作部２０５が、送信元１１１を登録表２０７のサーバ１１０の行に記録し（ステップＳ３０８）、処理は終了する。
【００２８】
次に、仮登録表２０８のサーバ１１０の行に、送信元１１１以外のノードが記録されている場合を説明する。このノードをノード１１２とする。
この場合（Ｓ３０３：仮登録表２０８のサーバ１１０の行に送信元１１１以外のノードが記載）、まず、仮登録操作部２０４が、仮登録表２０８のサーバ１１０の行を削除する（ステップＳ３０４）。続いて、登録操作部２０５が、登録表２０７にサーバ１１０の行を作成し、送信元１１１とノード１１２を、登録表２０７のサーバ１１０の行に記録する（ステップＳ３０５）。交換要求生成部２０６は、ノード１１２（交換元のノード）から分岐装置２（交換先のノード）への交換を指示する交換要求を生成し（ステップＳ３０６）、パケット送信部２０１が、その交換要求をサーバ１１０宛に送信し（ステップＳ３０７）、処理は終了する。
【００２９】
最後に、上記のいずれにも当てはまらない場合（例えば、登録表２０７及び仮登録表２０８の何れにもサーバ１１０の行が存在しない場合）について説明する。
この場合（Ｓ３０３：その他）、仮登録操作部２０４は、仮登録表２０８にサーバ１１０の行を作成し、サーバ１１０の行に送信元１１１を記録する（ステップＳ３０９）。パケット送信部２０１は、受信した受信要求をそのまま再送信し（ステップＳ３１０）、処理は終了する。
【００３０】
続いて、停止要求が分岐装置２を通過しようとした際の動作について説明する。停止要求の宛先サーバをサーバ１２０、送信元を送信元１２１とする。
ステップＳ３０１、ステップＳ３０２の処理が行われ、ここでは停止要求であったとする（Ｓ３０２：停止要求）。登録状況判別部２０３が、送信元１２１が登録表２０７或いは仮登録表２０８のサーバ１２０の行に記録されていないかを検査する（ステップＳ３１１）。登録表２０７のサーバ１２０の行に記録されている場合（Ｓ３１１：登録表２０７のサーバ１２０の行に存在）、登録操作部２０５は、登録表２０７のサーバ１２０の行から送信元１２１を削除する（ステップＳ３１３）。仮登録表２０８のサーバ１２０の行に記録されている場合（Ｓ３１１：仮登録表２０８のサーバ１２０の行に存在）、仮登録操作部２０４は仮登録表２０８のサーバ１２０の行を削除する（ステップＳ３１２）。
【００３１】
上記何れでもない場合（Ｓ３１１：その他）、ステップＳ３１２の処理の後、或いは、ステップＳ３１３の処理の後、登録状況判別部２０３が、登録表２０７のサーバ１２０の行に登録されているノード数を検査する（ステップＳ３１４）。このノード数にサーバ１２０自身は含まれない。
ノード数が１であった場合を考える。このノードをノード１２２とする。この場合（Ｓ３１４：１）、登録操作部２０５は、登録表２０７のサーバ１２０の行を削除する（ステップＳ３１５）。仮登録操作部２０４は、仮登録表２０８にサーバ１２０の行を作成し、そのサーバ１２０の行にノード１２２を記録する（ステップＳ３１６）。交換要求生成部２０６は、分岐装置２（交換元のノード）からノード１２２（交換先のノード）への交換を指示する交換要求を生成し（ステップＳ３１７）、パケット送信部２０１がその交換要求をサーバ１２０宛に送信して（ステップＳ３１８）、処理は終了する。
ノード数が１以外であった場合（Ｓ３１４：その他）、処理は終了である。なお、受信したパケットが交換要求であった場合の処理は、サーバ１と同じであるため、後述する。
【００３２】
図１６、図１７を用いて、サーバ１および分岐装置２の動作を説明する。図１６は、サーバ１および分岐装置２の構成要素のうち、交換要求処理に関係する部分のみ抽出して示したブロック図である。図１７は、交換要求が分岐装置２を通過しようとした際、および、交換要求がサーバ１に到着した際の動作フローを示すフローチャートである。ここでは、サーバ１或いは分岐装置２を指す場合であっても、単にサーバ１と称し説明する。
【００３３】
サーバ１は、パケット受信部１５０からパケットを受信すると（ステップＳ４０１）、パケット種別判別部１５１でパケットの種類を判別する（ステップＳ４０２）。ここで、パケットが交換要求である場合を考える。交換要求の宛先であるサーバをサーバ１６０、交換先のノードをノード１６１、交換元のノードをノード１６２とする。
この場合（Ｓ４０２：交換要求）、登録状況判別部１５２は、登録表１５４のサーバ１６０の行にノード１６２が記録されているか検査する（ステップＳ４０３）。ここで、検査を行うのが分岐装置である場合には、仮登録表のサーバ１６０の行も合わせて検査する。もし、記録されていれば、登録操作部１５３は、登録表１５４のサーバ１６０の行に記録されているノード１６２をノード１６１に変更し（ステップＳ４０４）、処理を終了する。分岐装置である場合、登録表に記録されていた場合には登録表において交換元のノードを交換先のノードに変更し、仮登録表に記録されていた場合には仮登録表において交換元のノードを交換先のノードに変更する。
【００３４】
以上説明のように本発明は、クライアントからの受信要求を分岐装置が捕獲することで配信経路を構築するマルチキャストデータ通信システムにおいて、分岐数が１の場合にデータの中継処理（受信したデータの送信元検査、登録表の検索、クライアントあるいは下流の分岐装置へのデータ送信など）を省略し、分岐装置２の負荷軽減によるパフォーマンスの向上をはかったものである。
【００３５】
このために、分岐装置２は、クライアント３、４からサーバ１に対し行われる受信要求のうち、１台目からの受信要求は捕獲せずに、２台目からの受信要求が到着した際に、両者を配信先として登録し分岐点とする。このとき、サーバ１に対し１台目を既に登録している場合には分岐装置２に変更するように通知を行う。また、受信装置が離脱し、分岐装置２に登録されている配信先の数が１となった場合には、その分岐装置２は登録を解除して分岐処理を停止する。このとき、サーバ１に対し、分岐装置２が登録されている場合には、分岐装置２に最後に登録されていた配信先に変更するように通知を行う。
このことにより、クライアント３、４からの受信要求を分岐装置２が捕獲することで配信経路を構築するマルチキャストデータ通信システムにおいて、分岐が不要である分岐装置２がデータパケット中継処理を行うことを回避できる。
【００３６】
なお、図１３に示すパケット受信部２００、パケット送信部２０１、パケット種別判別部２０２、登録状況判別部２０３、仮登録操作部２０４、登録操作部２０５、交換要求生成部２０６、登録表２０７及び仮登録表２０８を記録する記録装置、そして、図１６に示す、パケット受信部１５０、パケット種別判別部１５１、登録状況判別部１５２、登録操作部１５３、登録表１５４を記録する記録装置のそれぞれで実行される手順をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって本発明のマルチキャストデータ通信システム、および分岐装置２を実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺機器等のハードウェアを含む。
【００３７】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００３８】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施の形態の構成例を示すブロック図。
【図２】本発明の実施の形態の動作を説明するために引用した図。
【図３】本発明の実施の形態の動作を説明するために引用した図。
【図４】本発明の実施の形態の動作を説明するために引用した図。
【図５】本発明の実施の形態の動作を説明するために引用した図。
【図６】本発明の実施の形態の動作を説明するために引用した図。
【図７】本発明の実施の形態の動作を説明するために引用した図。
【図８】本発明の実施の形態の動作を説明するために引用した図。
【図９】本発明の実施の形態の動作を説明するために引用した図。
【図１０】本発明の実施の形態の動作を説明するために引用した図。
【図１１】本発明の実施の形態の動作を説明するために引用した動作シーケンス図。
【図１２】本発明の実施の形態の動作を説明するために引用した動作シーケンス図。
【図１３】図１〜図１０に示す分岐装置の内部構成を機能展開して示したブロック図。
【図１４】図１３に示す分岐装置の動作を説明するために引用したフローチャート。
【図１５】図１３に示す分岐装置の動作を説明するために引用したフローチャート。
【図１６】図１〜図１０に示すサーバの内部構成を機能展開して示したブロック図。
【図１７】図１６に示すサーバの動作を説明するために引用したフローチャート。
【図１８】従来のマルチキャストデータ通信システムの構成を示すブロック図。
【図１９】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【図２０】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【図２１】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【図２２】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図である。
【図２３】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【図２４】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【図２５】図１８に示すマルチキャストデータ通信システムの動作を説明するために引用した図。
【符号の説明】
【００４０】
１…サーバ、２…分岐装置、３、４…クライアント、５、６、１５４、２０７…登録表、７、２０８…仮登録表、１５０…パケット受信部、１５１…パケット種別判別部、１５２…登録状況判別部、１５３…登録操作部、２００…パケット受信部、２０１…パケット送信部、２０２…パケット種別判別部、２０３…登録状況判別部、２０４…仮登録操作部、２０５…登録操作部、２０６…交換要求生成部
【図１】
2005175609.tif 000003
【図２】
2005175609.tif 000004
【図３】
2005175609.tif 000005
【図４】
2005175609.tif 000006
【図５】
2005175609.tif 000007
【図６】
2005175609.tif 000008
【図７】
2005175609.tif 000009
【図８】
2005175609.tif 000010
【図９】
2005175609.tif 000011
【図１０】
2005175609.tif 000012
【図１１】
2005175609.tif 000013
【図１２】
2005175609.tif 000014
【図１３】
2005175609.tif 000015
【図１４】
2005175609.tif 000016
【図１５】
2005175609.tif 000017
【図１６】
2005175609.tif 000018
【図１７】
2005175609.tif 000019
【図１８】
2005175609.tif 000020
【図１９】
2005175609.tif 000021
【図２０】
2005175609.tif 000022
【図２１】
2005175609.tif 000023
【図２２】
2005175609.tif 000024
【図２３】
2005175609.tif 000025
【図２４】
2005175609.tif 000026
【図２５】
2005175609.tif 000027