(57)【要約】【課題】スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御を可能にする。【解決手段】第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う。【選択図】      図２
2018186465.tif 000002
【特許請求の範囲】
【請求項１】
第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う再送要求部
を備えることを特徴とするデータ受信装置。
【請求項２】
前記再送要求部は、前記第一のデータの前記第二の再送要求を受信したとき、前記第一のデータの前記第二の再送要求を行わない
ことを特徴とする請求項１に記載のデータ受信装置。
【請求項３】
第二のデータの前記第一の再送要求を受信し、かつ、前記第二のデータを自装置が記憶しているとき、前記第二のデータをユニキャストで送信する再送部
をさらに備えることを特徴とする請求項１あるいは請求項２に記載のデータ受信装置。
【請求項４】
前記データ受信装置の各々のネットワーク情報に基づいて前記再送要求先を決定するネットワーク情報送受信部
をさらに備えることを特徴とする請求項１から請求項３のいずれかに記載のデータ受信装置。
【請求項５】
前記ネットワーク情報送受信部は、前記データ受信装置の各々と前記ネットワーク情報を送受信する
ことを特徴とする請求項４に記載のデータ受信装置。
【請求項６】
前記再送要求部は、自装置とデータ送信装置との間のホップ数をＴＴＬに指定して前記第一のデータの前記第二の再送要求を行う
ことを特徴とする請求項１から請求項５のいずれかに記載のデータ受信装置。
【請求項７】
第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する再送部
を備えることを特徴とするデータ送信装置。
【請求項８】
請求項１から請求項６のいずれかに記載のデータ受信装置と、
データ送信装置と
を備え、
前記データ送信装置は、前記第二の再送要求を前記データ受信装置から受信する
ことを特徴とするデータ受信システム。
【請求項９】
第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う
ことを特徴とするデータ受信方法。
【請求項１０】
第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する
ことを特徴とするデータ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチキャストで送信されたデータを受信する、データ受信装置、システム、方法およびプログラムに関する。
【背景技術】
【０００２】
ＩＰ（Internet Protocol）マルチキャストは、１つの送信キャリアを複数の受信者が受信する通信（放送通信）による無線通信と組み合わせることで、受信者の数が増えた場合でも一定のデータ量での全員へのデータ配信を可能とする。そのため、効率的な通信を実現できる。
【０００３】
一方、データの確達性を確保するために、たとえば、ＴＣＰ（Transmission Control Protocol）ではデータの欠損を検知したデータ受信装置がデータ送信装置へ欠損データの再送を要求する。
【０００４】
しかし、ＩＰマルチキャストはＵＤＰ（User Datagram Protocol）をベースに策定されているため、通常、再送制御を行わない。
【０００５】
確達性を確保するために、ＩＰマルチキャストに上述の再送制御を適用すると、受信者の数の増加に応じて再送機会が増加することで、再送処理による送信者の負荷が増加する。そのため、スケーラビリティ（受信者の数が増えても問題なく動作する状態）が確保できない場合がある。
【０００６】
また、受信者の数の増加に応じて再送機会が増加することで、送信者からの配信経路への帯域負荷が増大する。特に無線通信は、有線通信に比べて、周波数帯域や電力などの資源が限られている場合や回線利用コストが高い場合があるため、回線利用効率の悪化が問題となる場合がある。
【０００７】
これに対して、特許文献１に記載の方法では、データの欠損を検知したデータ受信装置が再送要求をマルチキャストで送信し、再送可能な装置からの再送応答に基づいて再送を担当する装置を決定し、決定した装置へユニキャストで再送を依頼する。これにより、送信元以外の装置がデータの再送を行うことが可能になり、送信者の負荷を低減することが可能になる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−０１０５７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献１に記載の方法では、再送可能な装置の各々が再送応答を行うため、帯域負荷の問題は依然として存在する。
【００１０】
本発明の目的は、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御を可能にする、データ受信装置、システム、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上述の問題を解決するために、本発明のデータ受信装置は、第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う再送要求部を備えることを特徴とする。
【００１２】
また、本発明のデータ受信方法は、第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行うことを特徴とする。
【００１３】
また、本発明のデータ受信プログラムは、コンピュータに、第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う再送要求機能を実現させることを特徴とする。
【発明の効果】
【００１４】
本発明のデータ受信装置、システム、方法およびプログラムにより、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第一の実施形態のデータ受信装置の構成例を示す図である。
【図２】本発明の第一の実施形態のデータ受信装置の動作例を示す図である。
【図３】本発明の第二の実施形態のデータ受信システムの構成例を示す図である。
【図４】本発明の第二の実施形態のデータ受信装置の構成例を示す図である。
【図５】本発明の第二の実施形態のデータ送信装置の構成例を示す図である。
【図６】本発明の第二の実施形態のデータ受信装置の動作例を示す図である。
【図７】本発明の第二の実施形態のデータ受信装置の動作例を示す図である。
【図８】本発明の第二の実施形態のデータ送信装置の動作例を示す図である。
【図９】本発明の第二の実施形態の再送制御のデータの流れの例を示す図である。
【図１０】本発明の第三の実施形態のデータ受信装置の構成例を示す図である。
【図１１】本発明の第三の実施形態のデータ受信装置の動作例を示す図である。
【図１２】本発明の第四の実施形態のデータ受信装置の動作例を示す図である。
【図１３】本発明の第四の実施形態のデータ送信装置の動作例を示す図である。
【図１４】本発明の各実施形態のハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１６】
［第一の実施形態］
本発明の第一の実施の形態について説明する。
【００１７】
図１に本実施形態のデータ受信装置１０の構成例を示す。
【００１８】
本実施形態のデータ受信装置１０は、再送要求部１１により構成される。
【００１９】
再送要求部１１は、第一のデータを受信できなかったとき、データ受信装置１０の各々に対して定められた再送要求先のデータ受信装置１０へ第一のデータの第一の再送要求をユニキャストで行う部分である。また、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。
【００２０】
このようにデータ受信装置１０を構成することによって、データ受信装置１０は、第一のデータを受信できなかったとき、データ受信装置１０の各々に対して定められた再送要求先のデータ受信装置へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置１０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００２１】
次に、図２に本実施形態のデータ受信装置１０の動作の例を示す。
【００２２】
再送要求部１１は、第一のデータを受信できなかったとき（ステップＳ１０１でＮＯ）、データ受信装置１０の各々に対して定められた再送要求先のデータ受信装置１０へ第一のデータの第一の再送要求をユニキャストで行う（ステップＳ１０２）。そして、再送要求先から第一のデータを受信できなかったとき（ステップＳ１０３でＮＯ）、第一のデータの第二の再送要求をマルチキャストで行う（ステップＳ１０４）。
【００２３】
このように動作することによって、データ受信装置１０は、第一のデータを受信できなかったとき、データ受信装置１０の各々に対して定められた再送要求先のデータ受信装置１０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００２４】
以上で説明したように、本発明の第一の実施形態では、データ受信装置１０は、第一のデータを受信できなかったとき、データ受信装置１０の各々に対して定められた再送要求先のデータ受信装置１０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置１０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００２５】
［第二の実施形態］
次に、本発明の第二の実施の形態について説明する。本実施形態では、データ受信装置２０についてより具体的に説明する。
【００２６】
図３に本実施形態のデータ受信システムの構成例を示す。本実施形態のデータ受信システムは、データ送信装置５０およびデータ受信装置２０により構成される。
【００２７】
本実施形態では、一台のデータ送信装置５０がマルチキャストでデータを送信し、マルチキャストでデータの再送を行う。データの送信を行う装置とデータの再送を行う装置は、一台の装置であっても良いし、異なる装置であっても良い。また、データ受信装置２０は、データ受信装置２０Ａからデータ受信装置２０Ｉまでの９台存在する。なお、データ受信システム中のデータ送信装置５０およびデータ受信装置２０の数は一台以上で任意である。
【００２８】
データ送信装置５０は、データ受信装置２０Ａおよびデータ受信装置２０Ｂとともにローカルネットワーク６０Ａを構成する。また、データ受信装置２０Ｃからデータ受信装置２０Ｆはローカルネットワーク６０Ｂを、データ受信装置２０Ｇからデータ受信装置２０Ｉはローカルネットワーク６０Ｃを構成する。
【００２９】
本実施形態では、ローカルネットワーク６０Ａは陸上局、ローカルネットワーク６０Ｂおよびローカルネットワーク６０Ｃは艦艇局（移動局）であり、各々のローカルネットワーク６０は衛星回線で接続するものとする。また、ローカルネットワーク６０の内部の通信は低コスト（帯域負荷を気にすることなく利用可能）、衛星回線による通信は高コスト（帯域が貴重でありなるべく通信したくない）であるとする。
【００３０】
次に、図４にデータ受信装置２０の構成例を示す。本実施形態のデータ受信装置２０は、再送要求部１１、再送部２２および要求先記憶部２３により構成される。
【００３１】
再送要求部１１は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う部分である。また、再送要求部１１は、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。
【００３２】
なお、第一のデータは、自装置が受信できなかったデータを示す。また、第一の再送要求は、ユニキャストによる再送要求を、第二の再送要求はマルチキャストによる再送要求を示す。第二の再送要求の送信範囲は、本実施形態では、元の送信データのマルチキャストの範囲と同じであるものとする。
【００３３】
第一のデータを受信できたか否かは、たとえば、データ送信元（データ送信装置５０や他の装置）が送信データにシーケンス番号を付与して送信することにより、把握することが可能である。あるいは、他の方法により第一のデータの受信有無を判断しても良い。また、このシーケンス番号を第一の再送要求および第二の再送要求での再送を要求するデータの指定に使用しても良い。
【００３４】
要求先記憶部２３は、再送要求部１１が第一の再送要求を行う再送要求先のデータ受信装置２０の情報を記憶する部分である。要求先記憶部２３は、一つ以上の再送要求先の情報を、優先順に記憶する。再送要求部１１は、第一のデータを受信できなかったとき、要求先記憶部２３から優先順に再送要求先の情報を取得し、取得した再送要求先へ第一の再送要求を行う。
【００３５】
再送要求先の優先度は、たとえば、自装置からの距離（たとえばホップ数やＲＴＴ（Round Trip Time））が近い順とする。このようにすることで、データ受信装置２０が近くのデータ受信装置２０へ第一の再送要求を行うことにより再送要求先や再送要求経路が分散されるため、第一の再送要求によるスケーラビリティや帯域負荷の悪化を低減することが可能になる。
【００３６】
また、図３のように低コストの経路と高コストの経路があるデータ送受信システムの場合、第一の再送要求の再送要求先を、高コストの経路を通らないデータ受信装置２０とすると良い。このようにすることで、コストの高い経路が再送処理で利用される機会を減少させることが可能となり、回線を効率的に利用することが可能になる。
【００３７】
再送部２２は、第二のデータの第一の再送要求をユニキャストで受信し、かつ、第二のデータを自装置が記憶しているとき、第二のデータをユニキャストで送信する部分である。再送部２２は、他のデータ受信装置２０から第二のデータの第一の再送要求を受信し、自装置が第二のデータを記憶していれば、第一の再送要求の送信元のデータ受信装置２０へ第二のデータを送信する。なお、第二のデータは、他のデータ受信装置２０から受信した第一の再送要求で要求されているデータを示す。
【００３８】
また、各々のデータ受信装置２０の再送要求部１１が欠損データ（第一のデータ）の第二の再送要求（マルチキャスト）を行うと、データ受信装置２０の数が多いとき、帯域負荷やデータ送信装置５０の再送負荷が高くなる。そのため、本実施形態の再送要求部１１は、他のデータ受信装置２０から第一のデータの第二の再送要求を受信したとき、第一のデータの第二の再送要求を行わない。このようにすることで、第二の再送要求による帯域負荷やデータ送信装置５０の再送負荷の悪化を低減することが可能になる。
【００３９】
このようにデータ受信装置２０を構成することによって、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置２０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００４０】
また、本実施形態のデータ受信装置２０は、第一のデータの第二の再送要求を受信したとき、第一のデータの第二の再送要求を行わない。そのため、第二の再送要求による帯域負荷や再送負荷の悪化を低減することが可能になる。
【００４１】
また、本実施形態のデータ受信装置２０は、第一の再送要求の再送要求先を、高コストの経路を通らないデータ受信装置２０とする。そのため、コストの高い経路が再送処理で利用される機会を減少させることが可能となり、回線を効率的に利用することが可能になる。
【００４２】
次に、図５にデータ送信装置５０の構成例を示す。
【００４３】
本実施形態のデータ送信装置５０は、再送部５１により構成される。再送部５１は、第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する部分である。なお、元のデータ送信と再送データの送信は、いずれもデータ送信装置５０が行っても良いし、別々の装置が行っても良い。
【００４４】
次に、図６から図８を用いて本実施形態のデータ受信装置２０およびデータ送信装置５０の動作例について説明する。図６および図７はデータ受信装置２０の、図８はデータ送信装置５０の動作例である。
【００４５】
なお、各々のデータ受信装置２０はあらかじめ要求先記憶部２３に第一の再送要求の再送要求先のデータ受信装置２０のリストを優先順に記憶しているものとする。
【００４６】
まず、再送要求部１１は、第一のデータを受信できなかったとき（図６のステップＳ２０１でＮＯ）、要求先記憶部２３から次の再送要求先を取得する。次に、次の再送要求先があれば（ステップＳ２０２でＹＥＳ）、次の再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う（ステップＳ２０３）。
【００４７】
なお、ステップＳ２０３における第一の再送要求の送信は、再送要求先からの応答がない場合、所定の回数繰り返すものとする。この回数は、どの再送要求先に対しても同じ回数であっても良いし、再送要求先に応じて異なる回数としても良い。たとえば、データ受信装置２０と再送要求先の間のホップ数が大きくなるほど繰り返し回数を増やすことなどが考えられる。
【００４８】
そして、再送要求部１１は、第一の再送要求で第一のデータを受信できなければ（ステップＳ２０４でＮＯ）、ステップＳ２０２に戻り、優先順で次の再送要求先へ第一の再送要求を送信する。
【００４９】
第一の再送要求で第一のデータを受信できた場合には（ステップＳ２０４でＹＥＳ）、ステップＳ２０１に戻り、次の欠損データが発生するまで待機する。
【００５０】
ステップＳ２０２において、次の再送要求先がない場合（ステップＳ２０２でＮＯ）、再送要求部１１は、第一のデータの第二の再送要求をマルチキャストで送信する（ステップＳ２０６）。このとき、再送要求部１１は、他のデータ受信装置２０から第一のデータの第二の再送要求を受信していなければ（ステップＳ２０５でＮＯ）、第一のデータの第二の再送要求を送信する。
【００５１】
また、再送部２２は、第二のデータの第一の再送要求をユニキャストで受信し（図７のステップＳ２０７でＹＥＳ）、かつ、第二のデータを自装置が記憶しているとき（ステップＳ２０８でＹＥＳ）、第二のデータをユニキャストで送信する（ステップＳ２０９）。このとき、再送部２２は、第一の再送要求の送信元のデータ受信装置２０へ第二のデータを送信する。第二のデータを自装置が記憶していないときは（ステップＳ２０８でＮＯ）、再送部２２は第一の再送要求の送信元のデータ受信装置２０へ第二のデータがない旨を通知する（ステップＳ２１０）。
【００５２】
データ送信装置５０は、データ受信装置２０から第二の再送要求をマルチキャストで受信すると（図８のステップＳ３０１でＹＥＳ）、要求されたデータをマルチキャストで送信する（ステップＳ３０２）。
【００５３】
次に、より具体的にデータ受信装置２０の動作例について説明する。
【００５４】
たとえば、データ受信装置２０Ｆが、要求先記憶部２３に、同じローカルネットワーク６０Ｂ内のデータ受信装置２０の情報を、データ受信装置２０Ｄ、データ受信装置２０Ｃ、データ受信装置２０Ｅの順で記憶しているとする。この優先順は、自装置からの距離が近い（たとえばホップ数やＲＴＴが小さい）順であるものとする。
【００５５】
また、データ送信装置５０はデータ１からデータ４を送信し、ローカルネットワーク６０Ｂ内のデータ受信装置２０（２０Ｃ、２０Ｄ、２０Ｅ、２０Ｆ）は、図９のようにデータを受信できたものとする。
【００５６】
このとき、データ受信装置２０Ｆは、データ１を受信できなかったため（図６のステップＳ２０１でＹＥＳ）、要求先記憶部２３から再送要求先としてデータ受信装置２０Ｄの情報を取得する（ステップＳ２０２でＹＥＳ）。そして、データ受信装置２０Ｄへデータ１の第一の再送要求をデータ受信装置２０Ｄへユニキャストで送信する（ステップＳ２０３）。
【００５７】
データ受信装置２０Ｄは、データ受信装置２０Ｆからデータ１の第一の再送要求を受信する（図７のステップＳ２０７でＹＥＳ）。そして、データ１を受信できているため（ステップＳ２０８でＹＥＳ）、データ１をデータ受信装置２０Ｆへユニキャストで送信する（ステップＳ２０９）。
【００５８】
また、データ受信装置２０Ｆは、データ３を受信できなかったため、データ３の第一の再送要求をデータ受信装置２０Ｄへ送信する。そして、データ受信装置２０Ｄは、データ３を受信できていないため（ステップＳ２０８でＮＯ）、データ３がない旨をデータ受信装置２０Ｆへ通知する（ステップＳ２１０）。
【００５９】
データ受信装置２０Ｆは、データ受信装置２０Ｄからデータ３を受信できなかったため、データ３の第一の再送要求を次の再送要求先であるデータ受信装置２０Ｃへ送信する。データ受信装置２０Ｃは、データ３を受信できているため（ステップＳ２０８でＹＥＳ）、データ３をデータ受信装置２０Ｆへユニキャストで送信する（ステップＳ２０９）。
【００６０】
また、データ受信装置２０Ｆは、データ４を受信できなかったため、データ４の第一の再送要求をデータ受信装置２０Ｄへ送信する。データ受信装置２０Ｄは、データ４を受信できていないため、データ４がない旨をデータ受信装置２０Ｆへ通知する。
【００６１】
データ受信装置２０Ｆは、データ受信装置２０Ｄからデータ４を受信できなかったため（図６のステップＳ２０４でＮＯ）、データ４の第一の再送要求を次の再送要求先であるデータ受信装置２０Ｃへユニキャストで送信する（ステップＳ２０３）。そして、データ受信装置２０Ｃは、データ４を受信できていないため、データ４がない旨をデータ受信装置２０Ｆへ通知する。
【００６２】
データ受信装置２０Ｆは、データ受信装置２０Ｃからデータ４を受信できなかったため、データ４の第一の再送要求を次の再送要求先であるデータ受信装置２０Ｅへユニキャストで送信する。しかし、データ受信装置２０Ｆは、データ受信装置２０Ｅからもデータ４を受信できない（ステップＳ２０４でＮＯ）。
【００６３】
データ受信装置２０Ｆは、要求先記憶部２３から次の再送要求先を取得しようとするが、次の再送要求先がないため（ステップＳ２０２でＮＯ）、データ４の第二の再送要求を他のデータ受信装置２０から受信していないか確認する。そして、データ４の第二の再送要求を受信していなければ（ステップＳ２０５でＮＯ）、データ４の第二の再送要求をマルチキャストで送信する（ステップＳ２０６）。
【００６４】
データ受信装置２０Ｃ、データ受信装置２０Ｄおよびデータ受信装置２０Ｅも、データ４をローカルネットワーク６０Ｂ内のデータ受信装置２０から受信できない（ステップＳ２０４でＮＯ、ステップＳ２０２でＮＯ）。しかし、すでにデータ受信装置２０Ｆがデータ４の第二の再送要求をマルチキャストで送信しているため（ステップＳ２０５でＹＥＳ）、データ受信装置２０Ｃ、データ受信装置２０Ｄおよびデータ受信装置２０Ｅはデータ４の第二の再送要求を行わない。
【００６５】
データ送信装置５０は、データ受信装置２０Ｆが送信したデータ４の第二の再送要求を受信し（図８のステップＳ３０１でＹＥＳ）、データ４をマルチキャストで送信する（ステップＳ３０２）。これにより、データ受信装置２０Ｃからデータ受信装置２０Ｆのいずれも、データ４を受信することができる。
【００６６】
このように、本実施形態のデータ受信装置２０は、ローカルネットワーク６０Ｂ内に存在するデータについてはローカルネットワーク６０Ｂ内で再送を行い、６０Ｂ内に存在しないデータについては衛星回線を介してデータ送信装置５０へ再送要求を行う。そのため、衛星回線を介した高コストの通信を減らすことが可能になる。
【００６７】
このように動作することによって、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００６８】
以上で説明したように、本発明の第二の実施形態では、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置２０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００６９】
また、本実施形態のデータ受信装置２０は、第一のデータの第二の再送要求を受信したとき、第一のデータの第二の再送要求を行わない。そのため、第二の再送要求による帯域負荷や再送負荷の悪化を低減することが可能になる。
【００７０】
また、本実施形態のデータ受信装置２０は、第一の再送要求の再送要求先を、高コストの経路を通らないデータ受信装置２０とする。そのため、コストの高い経路が再送処理で利用される機会を減少させることが可能となり、回線を効率的に利用することが可能になる。
【００７１】
［第三の実施形態］
次に、本発明の第三の実施の形態について説明する。本実施形態では、要求先記憶部２３が記憶する再送要求先をデータ受信装置３０が決定する場合について説明する。
【００７２】
まず、図１０に本実施形態のデータ受信装置３０の構成例を示す。データ受信装置３０は、再送要求部１１、再送部２２、要求先記憶部２３およびネットワーク情報送受信部３４により構成される。再送要求部１１、再送部２２および要求先記憶部２３については第二の実施形態と同様のため説明を省略する。
【００７３】
ネットワーク情報送受信部３４は、データ受信システム内のデータ受信装置３０の位置関係や経路のコストなどのネットワーク情報に基づいて再送要求先を決定し、再送要求先の情報を要求先記憶部２３へ記憶させる部分である。
【００７４】
たとえば、ネットワーク情報送受信部３４は、データ受信システム内のデータ受信装置３０の位置関係や経路のコストなどのネットワーク情報を把握するために、他のデータ受信装置２０と広告通信を行う。
【００７５】
ネットワーク情報送受信部３４は、自装置がデータ受信システムに追加されて起動されたときなどの所定のタイミングで広告通信を行い、システム内の他のデータ受信装置３０へ自身がシステム内に存在することを通知する。広告通信の範囲は任意に設定可能とする。第二の実施形態のように、ローカルネットワーク６０内で第一の再送要求を行う場合には、たとえば、広告通信をローカルネットワーク６０内で行う。また、ネットワーク情報送受信部３４は、自装置がシステムから削除される場合にその旨の広告通信を行っても良い。
【００７６】
ネットワーク情報送受信部３４は、メトリックなどシステム内のデータ受信装置３０の位置関係を把握可能な情報を広告通信で送信する。また、ネットワーク情報送受信部３４は、他のデータ受信装置３０から広告通信を受信して、その情報に基づいて第一の再送要求の再送要求先およびその優先順を決定する。
【００７７】
また、たとえば、ネットワーク情報送受信部３４は、ｐｉｎｇコマンドを他のデータ受信装置３０へ送信し、得られたＴＴＬ（time to live）値から他のデータ受信装置３０へのホップ数を知り、ＲＴＴから衛星回線を経由しているかどうかを知ることができる。たとえば、ＲＴＴが所定の値より長いものは衛星回線を経由していると判断し、再送要求先から除くことが可能である。
【００７８】
また、あるいは、ネットワーク情報送受信部３４は、ＯＳＰＦ（Open Shortest Path First）のＬＳＡ（link-state advertisement）と連携することで、経路のコスト積算などを行い、その情報に基づいて再送要求先を決定することも可能である。
【００７９】
このようにデータ受信装置３０を構成することによって、データ受信装置３０は、第一のデータを受信できなかったとき、データ受信装置３０の各々に対して定められた再送要求先のデータ受信装置３０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置３０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００８０】
また、本実施形態のデータ受信装置３０は、データ受信装置３０の各々のネットワーク情報に基づいて第一の再送要求の再送要求先を決定する。これにより、第一の再送要求の再送要求先をデータ受信装置３０が決定することが可能になる。
【００８１】
次に、図１１を用いて本実施形態のデータ受信装置３０の動作例について説明する。図１１は、データ受信装置３０が図６の動作例を実施する前に行う動作の例である。
【００８２】
データ受信装置３０は、広告通信やｐｉｎｇコマンド等を利用して、データ受信システム内のデータ受信装置３０の位置関係や経路のコストなどのネットワーク情報を把握して再送要求先およびその優先順を決定する（ステップＳ４０１）。そして、再送要求先の情報を要求先記憶部２３へ記憶させる（ステップＳ４０２）。
【００８３】
ステップＳ２０１以降の図６の動作例については、第二の実施形態と同様のため、説明を省略する。
【００８４】
このように動作することによって、データ受信装置３０は、第一のデータを受信できなかったとき、データ受信装置３０の各々に対して定められた再送要求先のデータ受信装置３０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００８５】
以上で説明したように、本発明の第三の実施形態では、データ受信装置３０は、第一のデータを受信できなかったとき、データ受信装置３０の各々に対して定められた再送要求先のデータ受信装置３０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置３０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００８６】
また、本実施形態のデータ受信装置３０は、データ受信装置３０の各々のネットワーク情報に基づいて第一の再送要求の再送要求先を決定する。これにより、第一の再送要求の再送要求先をデータ受信装置３０が決定することが可能になる。
【００８７】
［第四の実施形態］
次に、本発明の第四の実施の形態について説明する。本実施形態では、第二の再送要求（マルチキャスト）の範囲を最適化する場合について説明する。
【００８８】
まず、本実施形態のデータ受信装置２０の構成例について説明する。本実施形態のデータ受信装置２０の構成例は、第二の実施形態のデータ受信装置２０（図４）と同様である。なお、本実施形態のデータ受信装置２０の構成例は、第三の実施形態のデータ受信装置３０（図１０）と同様であっても良い。
【００８９】
本実施形態の再送要求部１１は、第二の再送要求の際、自装置とデータ送信装置５０との間のホップ数をＴＴＬに指定して第二の再送要求（マルチキャスト）を行う。この際、他のデータ受信装置２０が送信した第二の再送要求を受信している場合には、他のデータ受信装置２０の第二の再送要求のＴＴＬ値より自装置とデータ送信装置５０の間のホップ数が大きいとき、第二の再送要求を送信する。このようにすると、データ送信装置５０より遠いデータ受信装置２０には第二の再送要求が送信されなくなり、第二の再送要求による帯域負荷の増大を低減することができる。
【００９０】
また、本実施形態のデータ送信装置５０の再送部５１は、第二の再送要求で指定されたＴＴＬ値と同じＴＴＬ値で、第二の再送要求で要求されたデータを送信する。同じデータに対する第二の再送要求を複数受信した場合には、最大のＴＴＬ値でデータを送信する。このようにすると、第二の再送要求を送信したデータ受信装置２０より遠いデータ受信装置２０にはデータが送信されなくなり、データ再送による帯域負荷の増大を低減することができる。
【００９１】
他の部分については、第二の実施形態あるいは第三の実施形態と同様のため、説明を省略する。
【００９２】
このようにデータ受信装置２０を構成することによって、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置２０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【００９３】
また、本実施形態のデータ受信装置２０は、第二の再送要求の際、自装置とデータ送信装置５０との間のホップ数をＴＴＬに指定して第二の再送要求を行う。また、この際、他のデータ受信装置２０が送信した第二の再送要求を受信している場合には、他のデータ受信装置２０の第二の再送要求のＴＴＬ値より自装置とデータ送信装置５０の間のホップ数が大きいとき、第二の再送要求を送信する。そのため、第二の再送要求による帯域負荷の増大を低減することができる。
【００９４】
また、本実施形態のデータ送信装置５０は、第二の再送要求で指定されたＴＴＬ値と同じＴＴＬ値で、第二の再送要求で要求されたデータを送信する。また、同じデータに対する第二の再送要求を複数受信した場合には、最大のＴＴＬ値でデータを送信する。そのため、データ再送による帯域負荷の増大を低減することができる。
【００９５】
次に、図１２および図１３を用いて本実施形態のデータ受信装置２０およびデータ送信装置５０の動作例について説明する。図１２は、図６のデータ受信装置２０の動作例のステップＳ２０５とステップＳ２０６の間で行う動作の例である。また、図１３は、図８のデータ送信装置５０の動作例のステップＳ３０１とステップＳ３０２の間で行う動作の例である。
【００９６】
データ受信装置２０は、他のデータ受信装置２０から第一のデータの第二の再送要求を受信している場合（図６のステップＳ２０５でＹＥＳ）、他のデータ受信装置２０からの第二の再送要求のＴＴＬ値と、自装置とデータ送信装置５０との間のホップ数を比較する。そして、受信した第二の再送要求のＴＴＬ値が、自装置とデータ送信装置５０の間のホップ数より小さい場合（図１２のステップＳ５０１でＹＥＳ）、第一のデータの第二の再送要求を送信する（図６のステップＳ２０６）。この際、第二の再送要求のＴＴＬ値を自装置とデータ送信装置５０の間のホップ数として送信する。
【００９７】
受信した第二の再送要求のＴＴＬ値が、自装置とデータ送信装置５０の間のホップ数以上の場合は（図１２のステップＳ５０１でＮＯ）、当該データの第二の再送要求を行わないでステップＳ２０１（図６）へ戻る。
【００９８】
また、データ送信装置５０は、第二の再送要求を受信したとき（図８のステップＳ３０１でＹＥＳ）、同じデータに対する他の第二の再送要求を受信するか確認する。たとえば、所定の時間、他の第二の再送要求の受信を待つ。そして、同じデータに対する他の第二の再送要求を受信した場合には（図１３のステップＳ５０２でＹＥＳ）、要求されたデータを、当該データに対する第二の再送要求の最大のＴＴＬ値でマルチキャストで送信する（ステップＳ５０３）。
【００９９】
同じデータに対する他の第二の再送要求を受信しなかった場合には（ステップＳ５０２でＮＯ）、要求されたデータを、当該データに対する第二の再送要求のＴＴＬ値でマルチキャストで送信する（図８のステップＳ３０２）。
【０１００】
その他の動作については、第二の実施形態あるいは第三の実施形態と同様のため、説明を省略する。
【０１０１】
このように動作することによって、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【０１０２】
以上で説明したように、本発明の第四の実施形態では、データ受信装置２０は、第一のデータを受信できなかったとき、データ受信装置２０の各々に対して定められた再送要求先のデータ受信装置２０へ第一のデータの第一の再送要求をユニキャストで行う。そして、再送要求先から第一のデータを受信できなかったとき、第一のデータの第二の再送要求をマルチキャストで行う。これにより、データ受信装置２０からの再送要求先が分散されることで、再送処理の負荷が特定のノードに集中せず、スケーラビリティの悪化を低減することができる。また、再送要求経路が分散されることで、帯域負荷を低減することができる。そのため、スケーラビリティおよび帯域負荷の悪化を低減した、マルチキャスト通信における再送制御が可能になる。
【０１０３】
また、本実施形態のデータ受信装置２０は、第二の再送要求の際、自装置とデータ送信装置５０との間のホップ数をＴＴＬに指定して第二の再送要求を行う。また、この際、他のデータ受信装置２０が送信した第二の再送要求を受信している場合には、他のデータ受信装置２０の第二の再送要求のＴＴＬ値より自装置とデータ送信装置５０の間のホップ数が大きいとき、第二の再送要求を送信する。そのため、第二の再送要求による帯域負荷の増大を低減することができる。
【０１０４】
また、本実施形態のデータ送信装置５０は、第二の再送要求で指定されたＴＴＬ値と同じＴＴＬ値で、第二の再送要求で要求されたデータを送信する。また、同じデータに対する第二の再送要求を複数受信した場合には、最大のＴＴＬ値でデータを送信する。そのため、データ再送による帯域負荷の増大を低減することができる。
【０１０５】
［ハードウェア構成例］
上述した本発明の各実施形態におけるデータ受信装置（１０、２０、３０）あるいはデータ送信装置５０（以下データ受信装置等）を、一つの情報処理装置（コンピュータ）を用いて実現するハードウェア資源の構成例について説明する。なお、データ受信装置等は、物理的または機能的に少なくとも二つの情報処理装置を用いて実現してもよい。また、データ受信装置等は、専用の装置として実現してもよい。また、データ受信装置等の一部の機能のみを情報処理装置を用いて実現しても良い。
【０１０６】
図１４は、本発明の各実施形態のデータ受信装置等を実現可能な情報処理装置のハードウェア構成例を概略的に示す図である。情報処理装置９０は、通信インタフェース９１、入出力インタフェース９２、演算装置９３、記憶装置９４、不揮発性記憶装置９５およびドライブ装置９６を備える。
【０１０７】
通信インタフェース９１は、各実施形態のデータ受信装置等が、有線あるいは／および無線で外部装置と通信するための通信手段である。なお、データ受信装置等を、少なくとも二つの情報処理装置を用いて実現する場合、それらの装置の間を通信インタフェース９１経由で相互に通信可能なように接続しても良い。
【０１０８】
入出力インタフェース９２は、入力デバイスの一例であるキーボードや、出力デバイスとしてのディスプレイ等のマンマシンインタフェースである。
【０１０９】
演算装置９３は、汎用のＣＰＵ（Central Processing Unit）やマイクロプロセッサ等の演算処理装置である。演算装置９３は、たとえば、不揮発性記憶装置９５に記憶された各種プログラムを記憶装置９４に読み出し、読み出したプログラムに従って処理を実行することが可能である。
【０１１０】
記憶装置９４は、演算装置９３から参照可能な、ＲＡＭ（Random Access Memory）等のメモリ装置であり、プログラムや各種データ等を記憶する。記憶装置９４は、揮発性のメモリ装置であっても良い。
【０１１１】
不揮発性記憶装置９５は、たとえば、ＲＯＭ（Read Only Memory）、フラッシュメモリ、等の、不揮発性の記憶装置であり、各種プログラムやデータ等を記憶することが可能である。
【０１１２】
ドライブ装置９６は、たとえば、後述する記録媒体９７に対するデータの読み込みや書き込みを処理する装置である。
【０１１３】
記録媒体９７は、たとえば、光ディスク、光磁気ディスク、半導体フラッシュメモリ等、データを記録可能な任意の記録媒体である。
【０１１４】
本発明の各実施形態は、たとえば、図１４に例示した情報処理装置９０によりデータ受信装置等を構成し、このデータ受信装置等に対して、上記各実施形態において説明した機能を実現可能なプログラムを供給することにより実現してもよい。
【０１１５】
この場合、データ受信装置等に対して供給したプログラムを、演算装置９３が実行することによって、実施形態が可能である。また、データ受信装置等のすべてではなく、一部の機能を情報処理装置９０で構成することも可能である。
【０１１６】
さらに、上記プログラムを記録媒体９７に記録しておき、データ受信装置等の出荷段階、あるいは運用段階等において、適宜上記プログラムが不揮発性記憶装置９５に格納されるよう構成してもよい。なお、この場合、上記プログラムの供給方法は、出荷前の製造段階、あるいは運用段階等において、適当な治具を利用してデータ受信装置等内にインストールする方法を採用してもよい。また、上記プログラムの供給方法は、インターネット等の通信回線を介して外部からダウンロードする方法等の一般的な手順を採用してもよい。
【０１１７】
なお、上述する各実施の形態は、本発明の好適な実施の形態であり、本発明の要旨を逸脱しない範囲内において種々変更実施が可能である。
【０１１８】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１１９】
（付記１）
第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う再送要求部
を備えることを特徴とするデータ受信装置。
【０１２０】
（付記２）
前記再送要求部は、前記第一のデータの前記第二の再送要求を受信したとき、前記第一のデータの前記第二の再送要求を行わない
ことを特徴とする付記１に記載のデータ受信装置。
【０１２１】
（付記３）
第二のデータの前記第一の再送要求を受信し、かつ、前記第二のデータを自装置が記憶しているとき、前記第二のデータをユニキャストで送信する再送部
をさらに備えることを特徴とする付記１あるいは付記２に記載のデータ受信装置。
【０１２２】
（付記４）
前記データ受信装置の各々のネットワーク情報に基づいて前記再送要求先を決定するネットワーク情報送受信部
をさらに備えることを特徴とする付記１から付記３のいずれかに記載のデータ受信装置。
【０１２３】
（付記５）
前記ネットワーク情報は、ＴＴＬ（time to live）、ホップ数、ＲＴＴ（Round Trip Time）、メトリック、ＯＳＰＦ（Open Shortest Path First）のＬＳＡ（link-state advertisement）によるコスト積算情報のいずれか一つ以上を含む
ことを特徴とする付記４に記載のデータ受信装置。
【０１２４】
（付記６）
前記ネットワーク情報送受信部は、前記データ受信装置の各々と前記ネットワーク情報を送受信する
ことを特徴とする付記４あるいは付記５に記載のデータ受信装置。
【０１２５】
（付記７）
前記再送要求部は、自装置とデータ送信装置との間のホップ数をＴＴＬに指定して前記第一のデータの前記第二の再送要求を行う
ことを特徴とする付記１から付記６のいずれかに記載のデータ受信装置。
【０１２６】
（付記８）
前記再送要求部は、前記第一のデータの前記第二の再送要求を受信している場合には、受信した前記第二の再送要求の前記ＴＴＬより前記自装置と前記データ送信装置の間の前記ホップ数が大きいとき、前記第一のデータの前記第二の再送要求を送信する
ことを特徴とする付記７に記載のデータ受信装置。
【０１２７】
（付記９）
第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する再送部
を備えることを特徴とするデータ送信装置。
【０１２８】
（付記１０）
前記再送部は、前記第二の再送要求で指定されたＴＴＬと同じ前記ＴＴＬで、要求された前記データを送信する
ことを特徴とする付記９に記載のデータ送信装置。
【０１２９】
（付記１１）
前記再送部は、前記データに対する前記第二の再送要求を複数受信した場合には、最大の前記ＴＴＬで前記データを送信する
ことを特徴とする付記１０に記載のデータ送信装置。
【０１３０】
（付記１２）
付記１から付記８のいずれかに記載のデータ受信装置と、
データ送信装置と
を備え、
前記データ送信装置は、前記第二の再送要求を前記データ受信装置から受信する
ことを特徴とするデータ受信システム。
【０１３１】
（付記１３）
前記データ送信装置は、付記９から付記１１のいずれかに記載のデータ送信装置である
ことを特徴とする付記１２に記載のデータ受信システム。
【０１３２】
（付記１４）
第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う
ことを特徴とするデータ受信方法。
【０１３３】
（付記１５）
前記第一のデータの前記第二の再送要求を受信したとき、前記第一のデータの前記第二の再送要求を行わない
ことを特徴とする付記１４に記載のデータ受信方法。
【０１３４】
（付記１６）
第二のデータの前記第一の再送要求を受信し、かつ、前記第二のデータを自装置が記憶しているとき、前記第二のデータをユニキャストで送信する
ことを特徴とする付記１４あるいは付記１５に記載のデータ受信方法。
【０１３５】
（付記１７）
前記データ受信装置の各々のネットワーク情報に基づいて前記再送要求先を決定する
ことを特徴とする付記１４から付記１６のいずれかに記載のデータ受信方法。
【０１３６】
（付記１８）
前記ネットワーク情報は、ＴＴＬ（time to live）、ホップ数、ＲＴＴ（Round Trip Time）、メトリック、ＯＳＰＦ（Open Shortest Path First）のＬＳＡ（link-state advertisement）によるコスト積算情報のいずれか一つ以上を含む
ことを特徴とする付記１７に記載のデータ受信方法。
【０１３７】
（付記１９）
前記データ受信装置の各々と前記ネットワーク情報を送受信する
ことを特徴とする付記１７あるいは付記１８に記載のデータ受信方法。
【０１３８】
（付記２０）
自装置とデータ送信装置との間のホップ数をＴＴＬに指定して前記第一のデータの前記第二の再送要求を行う
ことを特徴とする付記１４から付記１９のいずれかに記載のデータ受信方法。
【０１３９】
（付記２１）
前記第一のデータの前記第二の再送要求を受信している場合には、受信した前記第二の再送要求の前記ＴＴＬより前記自装置と前記データ送信装置の間の前記ホップ数が大きいとき、前記第一のデータの前記第二の再送要求を送信する
ことを特徴とする付記２０に記載のデータ受信方法。
【０１４０】
（付記２２）
第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する
ことを特徴とするデータ送信方法。
【０１４１】
（付記２３）
前記第二の再送要求で指定されたＴＴＬと同じ前記ＴＴＬで、要求された前記データを送信する
ことを特徴とする付記２２に記載のデータ送信方法。
【０１４２】
（付記２４）
前記データに対する前記第二の再送要求を複数受信した場合には、最大の前記ＴＴＬで前記データを送信する
ことを特徴とする付記２３に記載のデータ送信方法。
【０１４３】
（付記２５）
コンピュータに、
第一のデータを受信できなかったとき、データ受信装置の各々に対して定められた再送要求先の前記データ受信装置へ前記第一のデータの第一の再送要求をユニキャストで行い、前記再送要求先から前記第一のデータを受信できなかったとき、前記第一のデータの第二の再送要求をマルチキャストで行う再送要求機能
を実現させることを特徴とするデータ受信プログラム。
【０１４４】
（付記２６）
前記再送要求機能は、前記第一のデータの前記第二の再送要求を受信したとき、前記第一のデータの前記第二の再送要求を行わない
ことを特徴とする付記２５に記載のデータ受信プログラム。
【０１４５】
（付記２７）
第二のデータの前記第一の再送要求を受信し、かつ、前記第二のデータを自装置が記憶しているとき、前記第二のデータをユニキャストで送信する再送機能
をさらにコンピュータに実現させることを特徴とする付記２５あるいは付記２６に記載のデータ受信プログラム。
【０１４６】
（付記２８）
前記データ受信装置の各々のネットワーク情報に基づいて前記再送要求先を決定するネットワーク情報送受信機能
をさらにコンピュータに実現させることを特徴とする付記２５から付記２７のいずれかに記載のデータ受信プログラム。
【０１４７】
（付記２９）
前記ネットワーク情報は、ＴＴＬ（time to live）、ホップ数、ＲＴＴ（Round Trip Time）、メトリック、ＯＳＰＦ（Open Shortest Path First）のＬＳＡ（link-state advertisement）によるコスト積算情報のいずれか一つ以上を含む
ことを特徴とする付記２８に記載のデータ受信プログラム。
【０１４８】
（付記３０）
前記ネットワーク情報送受信機能は、前記データ受信装置の各々と前記ネットワーク情報を送受信する
ことを特徴とする付記２８あるいは付記２９に記載のデータ受信プログラム。
【０１４９】
（付記３１）
前記再送要求機能は、自装置とデータ送信装置との間のホップ数をＴＴＬに指定して前記第一のデータの前記第二の再送要求を行う
ことを特徴とする付記２５から付記３０のいずれかに記載のデータ受信プログラム。
【０１５０】
（付記３２）
前記再送要求機能は、前記第一のデータの前記第二の再送要求を受信している場合には、受信した前記第二の再送要求の前記ＴＴＬより前記自装置と前記データ送信装置の間の前記ホップ数が大きいとき、前記第一のデータの前記第二の再送要求を送信する
ことを特徴とする付記３１に記載のデータ受信プログラム。
【０１５１】
（付記３３）
コンピュータに、
第二の再送要求をマルチキャストで受信したとき、要求されたデータをマルチキャストで送信する再送機能
を実現させることを特徴とするデータ送信プログラム。
【０１５２】
（付記３４）
前記再送機能は、前記第二の再送要求で指定されたＴＴＬと同じ前記ＴＴＬで、要求された前記データを送信する
ことを特徴とする付記３３に記載のデータ送信プログラム。
【０１５３】
（付記３５）
前記再送機能は、前記データに対する前記第二の再送要求を複数受信した場合には、最大の前記ＴＴＬで前記データを送信する
ことを特徴とする付記３４に記載のデータ送信プログラム。
【符号の説明】
【０１５４】
１０、２０、３０    データ受信装置
１１    再送要求部
２２    再送部
２３    要求先記憶部
３４    ネットワーク情報送受信部
５０    データ送信装置
５１    再送部
６０    ローカルネットワーク
９０    情報処理装置
９１    通信インタフェース
９２    入出力インタフェース
９３    演算装置
９４    記憶装置
９５    不揮発性記憶装置
９６    ドライブ装置
９７    記録媒体
【図１】
2018186465.tif 000003
【図２】
2018186465.tif 000004
【図３】
2018186465.tif 000005
【図４】
2018186465.tif 000006
【図５】
2018186465.tif 000007
【図６】
2018186465.tif 000008
【図７】
2018186465.tif 000009
【図８】
2018186465.tif 000010
【図９】
2018186465.tif 000011
【図１０】
2018186465.tif 000012
【図１１】
2018186465.tif 000013
【図１２】
2018186465.tif 000014
【図１３】
2018186465.tif 000015
【図１４】
2018186465.tif 000016