(57)【要約】【課題】  マルチキャスト方式において、他アプリケーションのパケットを受信要求パケットと誤認して破棄することによって第三者の通信を妨害する混信状態を回避する。【解決手段】  分岐装置１において、マルチキャストパケットを示す宛先ポート番号が記載されたパケットをパケット受信部２００が受信する。受信したパケットの内容をパケット種判別部２０２が検査して、マルチキャストパケットとしての条件を備えているか判別する。この検査は、バージョンやフラグ、チャネル、タイプのフィールドを照合することにより行う。条件を備えていない場合、パケット送信部２０１がそのパケットをそのまま送信する。【選択図】    図１
2005341377.tif 000002
【特許請求の範囲】
【請求項１】
１以上のサーバと、２以上のクライアント、１以上の分岐装置が設置され、相互に通信可能であるネットワークであり、分岐装置は、各行に１つのチャネルと複数のクライアントあるいは分岐装置が記録可能である配送表を保持しており、クライアントがサーバ宛に送信した受信要求を、経路上に設置された分岐装置が捕獲し、その分岐装置は自身の配送表の要求チャネルの行に受信要求元を記録し、さらにその分岐装置はそのサーバ宛の新たな受信要求を生成して送信し、この一連の動作を受信要求がそのサーバに到達するまで繰り返すことでそのサーバを根とした木状の配信経路を構築し、そのサーバは自身の配送表の要求チャネルの行に記録されている配信先にデータを送信し、データを受信した分岐装置も同様にして自身の配送表の要求チャネルの行に記録されている配信先にデータを送信し、この一連の動作をデータが全クライアントに到達するまで繰り返すマルチキャスト方式において、分岐装置は、受信した受信要求に対し、マルチキャスト受信要求パケットとしての適合性を検査し、適合と判断した場合には通常のマルチキャスト受信要求処理を継続し、不適合と判断した場合には受信要求の宛先アドレスへと送信することを特徴とするマルチキャストにおける制御パケット混信回避方式。
【請求項２】
データ送信先アドレスを含む受信要求パケットをクライアントからサーバ宛に送信し、この受信要求パケットを分岐装置が捕獲してデータ送信先アドレスを取り込むと共に当該分岐装置のアドレスをデータ送信先アドレスとして書き込む改変を行ってサーバ側に送信していくマルチキャスト通信方式において、前記分岐装置は、受信要求パケットとして捕獲したパケットを検査して受信要求パケットとしての適合性を判別し、捕獲したパケットが不適合と判別されたときには前記改変を行わずに当該パケットを送信することを特徴とするマルチキャスト通信におけるパケット誤認回避方法。
【請求項３】
受信要求パケットとしての適合性を判別するにあたって、受信要求パケットであれば固定的なデータが記載されているフィールドを照合する手法をとることを特徴とする請求項２記載のマルチキャスト通信におけるパケット誤認回避方法
【請求項４】
受信要求パケットの可変的なデータが記載されるフィールドを含む範囲を演算対象範囲として指定すると共に、演算結果記載用の演算結果フィールドを制御パケットの当該演算対象範囲外に設定し、予め定められた演算式を用いて演算対象範囲内のデータから演算結果を求め、この演算結果を前記演算結果フィールドに記載しておくこととし、受信要求パケットとしての適合性を判別するにあたって、前記演算結果フィールドに記載された演算結果を検算する手法をとることを特徴とする請求項２または３記載のマルチキャスト通信におけるパケット誤認回避方法
【請求項５】
演算式として検査合計式を用いることを特徴とする請求項４記載のマルチキャスト通信におけるパケット誤認回避方法。
【請求項６】
データ送信先アドレスを含みクライアントからサーバ宛に送信された受信要求パケットを受信捕獲する受信要求捕獲手段と、捕獲した受信要求パケットのデータ送信先アドレスを取り込むアドレス取り込み手段と、捕獲した受信要求パケットに当該分岐装置のアドレスをデータ送信先アドレスとして書き込んでサーバ側に送信するパケット改変送信手段とを有するマルチキャスト通信方式における分岐装置において、捕獲したパケットを検査して受信要求パケットとしての適合性を判別する適合性判別手段と、捕獲したパケットを当該パケットの宛先アドレスに送信する捕獲パケット送信手段と、捕獲したパケットが適合と判別されたときに前記パケット改変送信手段を選択して動作させ且つ捕獲したパケットが不適合と判別されたときに前記捕獲パケット送信手段を選択して動作させる選択手段とを有することを特徴とするマルチキャスト通信方式における分岐装置。
【請求項７】
適合性判別手段は、受信要求パケットに固定的に記載されるデータを照合データとして保持する照合データ保持手段と、捕獲したパケットの前記データに相当する部分を照合データと突き合わせて適合性を判別する照合手段を有することを特徴とする請求項６記載のマルチキャスト通信方式における分岐装置。
【請求項８】
受信要求パケットの可変的なデータが記載されるフィールドを含む範囲が演算対象範囲として指定されると共に、演算結果記載用の演算結果フィールドが受信要求パケットの当該演算対象範囲外に設定され、予め定められた演算式を用いて演算対象範囲内のデータから求められる演算結果が前記演算結果フィールドに記載されていることを前提とし、適合性判別手段は、捕獲したパケットの演算対象範囲に相当する部分から前記演算式を用いて演算結果を求める演算手段と、捕獲したパケットに記載されている演算結果を前記演算手段の演算結果と突き合わせて適合性を判別する照合手段とを有することを特徴とする請求項６または７記載のマルチキャスト通信方式における分岐装置。
【請求項９】
演算式として検査合計式が採用されていることを特徴とする請求項８記載のマルチキャスト通信方式における分岐装置。
【請求項１０】
データ送信先アドレスを含みマルチキャストクライアントからマルチキャストサーバ宛に送信された受信要求パケットを受信捕獲する受信要求捕獲ステップと、捕獲した受信要求パケットのデータ送信先アドレスを取り込むアドレス取り込みステップと、捕獲した受信要求パケットに当該分岐装置のアドレスをデータ送信先アドレスとして書き込んでサーバ側に送信するパケット改変送信ステップと、捕獲したパケットを検査して受信要求パケットとしての適合性を判別する適合性判別ステップと、捕獲したパケットを当該パケットの宛先アドレスに送信する捕獲パケット送信ステップと、捕獲したパケットが適合と判別されたときに前記パケット改変送信ステップを選択実行し且つ捕獲したパケットが不適合と判別されたときに前記捕獲パケット送信ステップを選択実行する選択ステップとをコンピュータに実行させるための情報出力プログラム。
【請求項１１】
捕獲したパケットの前記データに相当する部分を照合データと突き合わせて適合性を判別する照合ステップを前記適合性判別ステップに含み、受信要求パケットに固定的に記載されるデータを照合データとして保持する照合データ保持ステップをコンピュータに実行させるための請求項１０記載の情報出力プログラム。
【請求項１２】
受信要求パケットの可変的なデータが記載されるフィールドを含む範囲が演算対象範囲として指定されると共に、演算結果記載用の演算結果フィールドが受信要求パケットの当該演算対象範囲外に設定され、予め定められた演算式を用いて演算対象範囲内のデータから求められる演算結果が前記演算結果フィールドに記載されていることを前提とし、捕獲したパケットの演算対象範囲に相当する部分から前記演算式を用いて演算結果を求める演算ステップと、捕獲したパケットに記載されている演算結果を前記演算手段の演算結果と突き合わせて適合性を判別する照合ステップとを前記適合性判別ステップに含むことを特徴とする請求項１０または１１記載の情報出力プログラム。
【請求項１３】
演算式として検査合計式が採用されていることを特徴とする請求項１２記載の情報出力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバが送出したデータを、分岐装置が複製することで複数のクライアントに配信するマルチキャストサービスに関し、特に制御パケットの混信を回避する技術に関する。
【背景技術】
【０００２】
従来、複数のクライアントに対してデータを同報するマルチキャスト通信を実現するものとして、クライアントからの受信要求を分岐装置が捕獲し、その分岐装置が分岐点となることで、木状の配信経路を構築するマルチキャスト方式がある。
【０００３】
この種の方式では、たとえば特許文献１に記載されているように、クライアントはリクエストパケットと呼ばれる受信要求を繰り返しサーバ宛に送信し、クライアントからサーバへの経路上に設置された分岐装置が受信要求を捕獲し、その送信元を登録に記録することで分岐点となる。
【０００４】
図２を参照して説明すると、分岐装置１を介してマルチキャストサーバ２１はマルチキャストクライアント２２，２３と接続される。分岐装置１とマルチキャストサーバ２１は配送表１１，３１を有する。ＩＰネットワーク上には他アプリケーションサーバ２４と他アプリケーションクライアント２５が存在している。
【０００５】
また、マルチキャストに限らずパケット通信の分野では、パケットを検査してパケットの正当性を検査することは一般的に行われている。たとえば非特許文献１の３ページには、チェックサムを用いてパケットの正当性を検査する旨が述べられている。検査の結果、パケットが不正であると判断された場合、そのパケットは破棄される。
【特許文献１】特開２００３−３２３００号公報
【非特許文献１】「ＩＮＴＥＲＮＥＴ ＰＲＯＴＯＣＯＬ 」Ｄｅｆｅｎｓｅ Ａｄｖａｎｃｅｄ Ｒｅｓｅａｒｃｈ Ｐｒｏｊｅｃｔｓ Ａｇｅｎｃｙ Ｉｎｆｏｒｍａｔｉｏｎ Ｐｒｏｃｅｓｓｉｎｇ Ｔｅｃｈｎｉｑｕｅｓ Ｏｆｆｉｃｅ 提供
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ここで、同一ポート番号を用いる他のアプリケーションが存在し、他アプリケーションクライアント２５がパケットを他アプリケーションサーバ２４宛に送信したケースを想定する。このパケットはマルチキャスト方式における受信要求と同様にＵＤＰパケットであり、その宛先ポート番号が偶然マルチキャストアプリケーションと同一であったとする。
【０００７】
すると図９に示すように、このパケット１０９は、分岐装置１によって受信要求であると誤認され、受信要求として処理される。分岐装置１は、所定のアルゴリズムによりパケット１０９の内容をチェックするが、パケット１０９は不正であると判定され、処理を継続できないため、他アプリケーションクライアント２５に本来は送信されるべきパケット１０９を破棄してしまう。このようにして、第三者の通信を妨害してしまう、いわゆる混信に似た現象が生じる可能性を否定できない。
【０００８】
本発明は、かかる問題点に鑑み、マルチキャスト方式において第三者が送信したパケットを制御パケットと誤認して破棄することによって第三者の通信を妨害する混信状態を回避することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、請求項１記載の発明は、１以上のサーバと、２以上のクライアント、１以上の分岐装置が設置され、相互に通信可能であるネットワークであり、分岐装置は、各行に１つのチャネルと複数のクライアントあるいは分岐装置が記録可能である配送表を保持しており、クライアントがサーバ宛に送信した受信要求を、経路上に設置された分岐装置が捕獲し、その分岐装置は自身の配送表の要求チャネルの行に受信要求元を記録し、さらにその分岐装置はそのサーバ宛の新たな受信要求を生成して送信し、この一連の動作を受信要求がそのサーバに到達するまで繰り返すことでそのサーバを根とした木状の配信経路を構築し、そのサーバは自身の配送表の要求チャネルの行に記録されている配信先にデータを送信し、データを受信した分岐装置も同様にして自身の配送表の要求チャネルの行に記録されている配信先にデータを送信し、この一連の動作をデータが全クライアントに到達するまで繰り返すマルチキャスト方式において、分岐装置は、受信した受信要求に対し、マルチキャスト受信要求パケットとしての適合性を検査し、適合と判断した場合には通常のマルチキャスト受信要求処理を継続し、不適合と判断した場合には受信要求の宛先アドレスへと送信することとしたものである。
【００１０】
ここで分岐装置には、複数の分岐装置を分散装置に接続し受信要求を適宜振り分けて転送する分岐機能体が含まれる。この場合、分岐機能体における受信要求の経路のいずれかにおいて受信した受信要求の適合性を検査し、不適合の場合に宛先アドレスへの送信処理を行えば良く、例えば分散装置にてかかる処理を行えば、各分岐装置にそのような機能を持たせなくて済み、分岐機能体内部にて無意味な不適合受信要求を伝送させなくて済むなど好適である。以下の請求項においても同様である。
【００１１】
また請求項２記載の発明は、データ送信先アドレスを含む受信要求パケットをクライアントからサーバ宛に送信し、この受信要求パケットを分岐装置が捕獲してデータ送信先アドレスを取り込むと共に当該分岐装置のアドレスをデータ送信先アドレスとして書き込む改変を行ってサーバ側に送信していくマルチキャスト通信方式において、前記分岐装置は、受信要求パケットとして捕獲したパケットを検査して受信要求パケットとしての適合性を判別し、捕獲したパケットが不適合と判別されたときには前記改変を行わずに当該パケットを送信することを特徴とするマルチキャスト通信におけるパケット誤認回避方法を提供するものである。
【００１２】
また請求項３記載の発明は、請求項２記載の発明において、受信要求パケットとしての適合性を判別するにあたって、受信要求パケットであれば固定的なデータが記載されているフィールドを照合する手法をとるものである。
【００１３】
また請求項４記載の発明は、請求項２または３記載の発明において、受信要求パケットの可変的なデータが記載されるフィールドを含む範囲を演算対象範囲として指定すると共に、演算結果記載用の演算結果フィールドを制御パケットの当該演算対象範囲外に設定し、予め定められた演算式を用いて演算対象範囲内のデータから演算結果を求め、この演算結果を前記演算結果フィールドに記載しておくこととし、受信要求パケットとしての適合性を判別するにあたって、前記演算結果フィールドに記載された演算結果を検算する手法をとるものである。
【００１４】
また請求項５記載の発明は、請求項４記載の発明において、演算式として検査合計式を用いるものである。
【００１５】
また請求項６記載の発明は、データ送信先アドレスを含みクライアントからサーバ宛に送信された受信要求パケットを受信捕獲する受信要求捕獲手段と、捕獲した受信要求パケットのデータ送信先アドレスを取り込むアドレス取り込み手段と、捕獲した受信要求パケットに当該分岐装置のアドレスをデータ送信先アドレスとして書き込んでサーバ側に送信するパケット改変送信手段とを有するマルチキャスト通信方式における分岐装置において、捕獲したパケットを検査して受信要求パケットとしての適合性を判別する適合性判別手段と、捕獲したパケットを当該パケットの宛先アドレスに送信する捕獲パケット送信手段と、捕獲したパケットが適合と判別されたときに前記パケット改変送信手段を選択して動作させ且つ捕獲したパケットが不適合と判別されたときに前記捕獲パケット送信手段を選択して動作させる選択手段とを有することを特徴とするマルチキャスト通信方式における分岐装置を提供するものである。
【００１６】
また請求項７記載の発明は、請求項６記載の発明において、適合性判別手段は、受信要求パケットに固定的に記載されるデータを照合データとして保持する照合データ保持手段と、捕獲したパケットの前記データに相当する部分を照合データと突き合わせて適合性を判別する照合手段を有することとしたものである。
【００１７】
また請求項８記載の発明は、請求項６または７記載の発明において、受信要求パケットの可変的なデータが記載されるフィールドを含む範囲が演算対象範囲として指定されると共に、演算結果記載用の演算結果フィールドが受信要求パケットの当該演算対象範囲外に設定され、予め定められた演算式を用いて演算対象範囲内のデータから求められる演算結果が前記演算結果フィールドに記載されていることを前提とし、適合性判別手段は、捕獲したパケットの演算対象範囲に相当する部分から前記演算式を用いて演算結果を求める演算手段と、捕獲したパケットに記載されている演算結果を前記演算手段の演算結果と突き合わせて適合性を判別する照合手段とを有することとしたものである。
【００１８】
また請求項９記載の発明は、請求項８記載の発明において、演算式として検査合計式が採用されているものである。
【００１９】
また請求項１０記載の発明は、データ送信先アドレスを含みマルチキャストクライアントからマルチキャストサーバ宛に送信された受信要求パケットを受信捕獲する受信要求捕獲ステップと、捕獲した受信要求パケットのデータ送信先アドレスを取り込むアドレス取り込みステップと、捕獲した受信要求パケットに当該分岐装置のアドレスをデータ送信先アドレスとして書き込んでサーバ側に送信するパケット改変送信ステップと、捕獲したパケットを検査して受信要求パケットとしての適合性を判別する適合性判別ステップと、捕獲したパケットを当該パケットの宛先アドレスに送信する捕獲パケット送信ステップと、捕獲したパケットが適合と判別されたときに前記パケット改変送信ステップを選択実行し且つ捕獲したパケットが不適合と判別されたときに前記捕獲パケット送信ステップを選択実行する選択ステップとをコンピュータに実行させるための情報出力プログラムを提供するものである。
【００２０】
また請求項１１記載の発明は、請求項１０記載の発明において、捕獲したパケットの前記データに相当する部分を照合データと突き合わせて適合性を判別する照合ステップを前記適合性判別ステップに含み、受信要求パケットに固定的に記載されるデータを照合データとして保持する照合データ保持ステップをコンピュータに実行させるようにしたものである。
【００２１】
また請求項１２記載の発明は、請求項１０または１１記載の発明において、受信要求パケットの可変的なデータが記載されるフィールドを含む範囲が演算対象範囲として指定されると共に、演算結果記載用の演算結果フィールドが受信要求パケットの当該演算対象範囲外に設定され、予め定められた演算式を用いて演算対象範囲内のデータから求められる演算結果が前記演算結果フィールドに記載されていることを前提とし、捕獲したパケットの演算対象範囲に相当する部分から前記演算式を用いて演算結果を求める演算ステップと、捕獲したパケットに記載されている演算結果を前記演算手段の演算結果と突き合わせて適合性を判別する照合ステップとを前記適合性判別ステップに含むものである。
【００２２】
また請求項１３記載の発明は、請求項１２の発明において、演算式として検査合計式が採用されているものである。
【発明の効果】
【００２３】
以上説明したように、この発明によれば、制御パケットの混信現象により第三者の通信にかかるパケットを捕獲した場合であっても、当該パケットをその宛先アドレスに送信するため、第三者の通信を妨害する事態を回避できる。
【００２４】
また、制御パケットを判別するにあたって、バージョンやタイプなど制御パケットに固定的に記載されるデータを照合することにより、既存のパケットフォーマットを変更することなく適用できるので、小さな仕様変更だけで実施できる効果もある。
【００２５】
また、制御パケットを判別するにあたって、検査合計あるいはこれに類する検査手法を応用してパケットの可変的な部分を対象に含むことにより、パケット内の固定的なデータが偶然一致しているレアなケースであっても、効果的に混線を回避できる利点がある。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照しつつ本発明の実施形態にかかるマルチキャスト方式を説明する。この実施形態は、データ流を分岐中継する分岐装置と、データ流の配送元になるマルチキャストサーバと、配送先になるマルチキャストクライアントとがそれぞれ複数存在するＩＰ（インターネットプロトコル）ネットワークを前提とする。ここでは便宜上、分岐装置とマルチキャストサーバがそれぞれ１つの組み合わせによる最も単純な木状の配信経路を示して説明するが、もっと枝葉の多い木状であってもこの実施形態により当然に処理することが可能である。
【００２７】
図２は、この実施形態が前提とするネットワークの接続概念図である。分岐装置１を介してマルチキャストサーバ２１はマルチキャストクライアント２２，２３と接続される。分岐装置１とマルチキャストサーバ２１はそれぞれデータ流の配送先を格納した配送表１１，３１を有する。またＩＰネットワーク上には、他アプリケーションサーバ２４と他アプリケーションクライアント２５が存在している。
【００２８】
図３は、図２のネットワークを構築してデータ配送を行うにあたっての制御フローを示す。まずマルチキャストクライアント２２がマルチキャストサーバ２１宛に受信要求１０１を送信する。この受信要求はＵＤＰ（ユーザデータグラムプロトコル）パケットの形式をとる。このパケットの宛先ポート番号は、受信要求であることを示す特定の番号になっている。なお、図中に示してあるチャネルとは、番組名やマルチキャストアドレスのようにデータ流を識別するために用いられるＩＤ（識別子）のことである。ここでは、チャネル４１を要求しているものとする。
【００２９】
受信要求１０１が分岐装置１に到着すると、分岐装置１は宛先ポート番号からマルチキャスト受信要求であると判断する。そして、送信元であるマルチキャストクライアント２２を配送表１１のチャネル４１の行に登録する。さらに、分岐装置１を送信元とする受信要求１０２を生成し、マルチキャストサーバ２１宛に送信する。
【００３０】
マルチキャストサーバ２１は受信要求１０２を受信すると、その送信元である分岐装置１を配送表３１のチャネル４１の行に登録する。
【００３１】
次にデータ転送について説明する。マルチキャストサーバ２１は、配送表３１を参照し、データ１０３を分岐装置１に送信する。分岐装置１は、データ１０３を受信すると、このデータ１０３を複写してデータ１０４を生成し、マルチキャストクライアント２２に転送する。
【００３２】
このようにしてマルチキャストサーバ２１からのデータ流がマルチキャストクライアント２２に転送されているときに、続いてマルチキャストクライアント２３もチャネル４１の受信を開始したとする。
【００３３】
マルチキャストクライアント２３はマルチキャストサーバ２１宛に受信要求１０５を送信する。分岐装置１は、さきほどと同様に受信要求であることを判断し、その送信元であるマルチキャスト２３を配送表１１のチャネル４１の行に追加する。
【００３４】
次に、分岐装置１は、マルチキャストサーバ２１からデータ１０６を受信すると配送表１１を参照し、データ１０６を複写してマルチキャストクライアント２２宛のデータ１０７とマルチキャストクライアント２３宛のデータ１０８を生成し、それぞれを宛先に転送する。
【００３５】
このようにして、下流のマルチキャストクライアントや分岐装置から送信された受信要求を捕獲することで、分岐装置はデータ配信時の分岐点となる。データはマルチキャストサーバを根とする木状の配信経路を伝い、木の節（つまり分岐装置）で複製されながら各マルチキャストクライアントまで届けられる。ネットワーク中で必要に応じてデータの複製が行われるため、ネットワーク全体でのトラフィックを抑制できる。
【００３６】
ここで、同一ポート番号を用いる他のアプリケーションが存在するケースを考える。図４は、かかるケースにおける本実施形態による制御フローを示す。同図を用いて本実施形態による制御の概略を説明すると、まず他アプリケーションクライアント２５はパケット１０９を他アプリケーションサーバ２４宛に送信する。パケット１０９はマルチキャスト方式における受信要求と同様にＵＤＰパケットであり、その宛先ポート番号が偶然マルチキャストアプリケーションと同一であったとする。この場合、分岐装置１は宛先ポート番号を参照してパケットを受信するため、パケット１０９も受信して処理を進めることになる。
【００３７】
分岐装置１は、所定のアルゴリズムによってパケット１０９の内容をチェックする。このアルゴリズムでは、後で詳細に説明するが、たとえばバージョンフィールドやタイプフィールドが正常範囲であるかをチェックする手法をとる。パケット１０９の内容がマルチキャストの受信要求として不正であった場合、分岐装置１は処理を継続できないため、パケット１０９を元の宛先である他アプリケーションサーバ２４に送信する。
【００３８】
このようにして未知のパケットについては元の宛先に送信することで、他アプリケーションの通信を妨害することなく共存することができる。
【００３９】
ここで図１，５〜８を参照しつつ分岐装置の動作を詳細に説明する。図１は分岐装置１の概略を示す機能ブロック図である。分岐装置１において、パケット受信部２００は宛先ポート番号を参照してパケットを受信する。パケット種判別部２０２は、所定のアルゴリズムに従ってパケットの内容をチェックし、受信要求かデータか未知のパケットかを判別する。
【００４０】
この結果、パケットが受信要求であると判別された場合、処理が配送表操作部２０３に移る。配送表操作部２０３は、配送表格納部２０５に格納される配送表に要求チャネルの行を作成し、受信要求の送信元を追加する。そして分岐装置自身を送信元とする受信要求を生成して送信する。
【００４１】
また、パケットがデータであると判別された場合、処理がデータ転送部２０４に移る。データ転送部２０４は配送表の当該チャネルの行を参照し、記載されているマルチキャストクライアント（あるいは他の分岐装置）にデータを転送する。さらに、パケットが未知のものであると判別された場合、パケット送信部２０１がそのパケットをそのまま送信する。
【００４２】
ここで、パケット種判別部２０２におけるアルゴリズムを説明する。図５は受信要求パケットフォーマットを示す。同図に示すように受信要求パケットはパケットＩＤ３００や送信元アドレス３０１、宛先アドレス３０２、宛先ポート番号３０３、送信元ポート番号３０４、長さ３０５、チェックサム３０６、バージョン３０７、タイプ３０８、フラグ３０９、チャネル３１０を含む。
【００４３】
図６は、パケット種判別のためのアルゴリズムの概略を示す。このアルゴリズムでは、まずバージョンフィールドを検査し（ステップＳ１）、正常範囲であれば次に進む（Ｓ１：ｙｅｓ）。異常であれば未知のパケット（すなわち他アプリケーションのパケットである可能性がある）であると判断する（Ｓ１：ｎｏ）。たとえばバージョン「１」のみがサポートされているとすれば、「１」である場合のみ次に進むことになる。
【００４４】
次にフラグフィールドも同様に検査する（Ｓ２）。正常範囲であれば次に進む（Ｓ２：ｙｅｓ）。異常であれば他アプリケーションであると判断する（Ｓ２：ｎｏ）。
【００４５】
さらにチャネルフィールドも同様に検査する（Ｓ３）。正常範囲であれば次に進む（Ｓ３：ｙｅｓ）。異常であれば他アプリケーションであると判断する（Ｓ３：ｎｏ）。
【００４６】
さらにタイプフィールドを検査する。このタイプフィールドはマルチキャストパケットの種類を判断するためのフィールドである。タイプフィールドが受信要求であるか検査し（Ｓ４）、受信要求であれば配送表操作部の選択に進む（Ｓ４：ｙｅｓ）。受信要求でない場合（Ｓ４：ｎｏ）、さらにパケットがデータであるかを検査し（Ｓ５）、データであればデータ転送分の選択に進む（Ｓ５：ｙｅｓ）。いずれでもなければ他アプリケーションと判断する（Ｓ５：ｎｏ）。いずれのステップにおいても他アプリケーションと判断された場合、パケット送信部の選択に進む。
【００４７】
ここで、パケット種判別のためのアルゴリズムの別の例を示す。図７は、このアルゴリズムを導入するにあたり前提となる受信要求パケットフォーマットを示す。同図に示すように、受信要求パケットフォーマットにチェックサム３１１のフィールドが付加されている。他は図５に示すフォーマットと同様である。図７に示すパケットのうちチェックサム３１１を除くすべてのフィールドの和をとり、その下３２桁分（すなわち和を２の３２乗で除算した剰余）がチェックサム３１１に記載される。
【００４８】
図８は、このアルゴリズムの概略を示す。同図に示すように、チェックサムフィールドを検査してパケットを判別するステップＳ３−１が付加されている。その他は図６と同様である。ステップＳ３−１では、チェックサム３１１を除くすべてのフィールドのチェックサムを計算し、チェックサム３１１に記載された値と突き合わせて正常値であるかを検査する。正常値であれば次に進む（Ｓ３−１：ｙｅｓ）。異常であれば他アプリケーションであると判断する（Ｓ３−１：ｎｏ）。
【００４９】
ここで他アプリケーションのパケットがバージョンやフラグ、チャネル、タイプのすべてのフィールドにおいて偶然、受信要求のパケットと一致しているレアなケースを想定する。この場合、図６に示すアルゴリズムではそのパケットを常に受信要求パケットとして処理して破棄してしまうことになる。このため他アプリケーションクライアントがパケットを再送してみても、そのパケットが分岐装置に捕獲され続け、他アプリケーションの通信がいつまでたっても開始できない事態も起こりうる。
【００５０】
この場合、図８に示すアルゴリズムによれば、ステップ３−１の検査結果によりパケットを受信要求と誤認せずに済む。つまり仮に他アプリケーションのパケットのチェックサム３１１（図７参照）の部分も偶然一致していた場合、そのパケットについては受信要求として誤認してしまうこともあり得るが、パケットＩＤ３００のようにパケット毎に変化する値を用いてチェックサムを計算するため、再送されてくる他アプリケーションのパケットについてもかかる偶然が連続し続ける可能性はほとんどなく、したがって上記の事態を回避できる。
【００５１】
また、図１の各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより分岐装置の構築を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００５２】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【図面の簡単な説明】
【００５３】
【図１】本発明の実施形態における分岐装置の機能ブロック図である。
【図２】本発明の実施形態が前提とするネットワークの接続概念図である。
【図３】図２のネットワークを構築してデータ配送を行うにあたっての制御フロー図である。
【図４】同一ポート番号を用いる他のアプリケーションが存在するケースにおける本実施形態による制御フロー図である。
【図５】受信要求パケットフォーマットを示す説明図である。
【図６】パケット種判別のためのアルゴリズムの概略を示す流れ図である。
【図７】他の実施形態における受信要求パケットフォーマットを示す説明図である。
【図８】他の実施形態におけるパケット種判別のためのアルゴリズムの概略を示す流れ図である。
【図９】同一ポート番号を用いる他のアプリケーションが存在するケースにおける従来の制御フロー図である。
【符号の説明】
【００５４】
１  分岐装置
１１  分岐装置の配送表
２１  マルチキャストサーバ
２２，２３  マルチキャストクライアント
２４  他アプリケーションサーバ
２５  他アプリケーションクライアント
３１  マルチキャストサーバの配送表
１０１  マルチキャスト２２が送信する受信要求
１０２  分岐装置が送信する受信要求
１０３  マルチキャストサーバが送信するデータ
１０４  分岐装置が送信するデータ
１０５  マルチキャストクライアント２３が送信する受信要求
１０６  マルチキャストサーバが送信するデータ
１０７  分岐装置がマルチキャストクライアント２２に送信するデータ
１０８  分岐装置がマルチキャストクライアント２３に送信するデータ
１０９  他アプリケーションのパケット
２００  パケット受信部
２０１  パケット送信部
２０２  パケット種判別部
２０３  配送表操作部
２０４  データ転送部
２０５  配送表格納部
３００  パケットＩＤ
３０１  送信元アドレス
３０２  宛先アドレス
３０３  宛先ポート番号
３０４  送信元ポート番号
３０５  長さ
３０６  チェックサム
３０７  バージョン
３０８  タイプ
３０９  フラグ
３１０  チャネル
３１１  受信要求判別用のチェックサム
Ｓ１  バージョンフィールドを検査するステップ
Ｓ２  フラグフィールドを検査するステップ
Ｓ３  チャネルフィールドを検査するステップ
Ｓ３−１  チェックサムフィールドを検査するステップ
Ｓ４  タイプフィールドからパケット種を判別するステップ
Ｓ５  タイプフィールドからパケット種を判別するステップ
【図１】
2005341377.tif 000003
【図２】
2005341377.tif 000004
【図３】
2005341377.tif 000005
【図４】
2005341377.tif 000006
【図５】
2005341377.tif 000007
【図６】
2005341377.tif 000008
【図７】
2005341377.tif 000009
【図８】
2005341377.tif 000010
【図９】
2005341377.tif 000011