(57)【特許請求の範囲】
【請求項１】
各々が相互に異なるネットワークスイッチに接続されている複数の送信側ネットワークインタフェース装置を有する送信装置から送信されたデータパケットを受信する受信装置であって、
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有することを特徴とする受信装置。
【請求項２】
前記複数の受信側ネットワークインタフェース装置の各々は、
送信側ネットワークインタフェース装置から送信された、前記送信装置マルチキャストアドレスが含まれるデータパケットを受信し、
前記応答パケット作成部は、
いずれかの受信側ネットワークインタフェース装置が受信したデータパケットに含まれる前記送信装置マルチキャストアドレスを用いて前記応答パケットを作成することを特徴とする請求項１に記載の受信装置。
【請求項３】
前記複数の受信側ネットワークインタフェース装置の各々は、
送信側ネットワークインタフェース装置から送信された、シーケンス番号が示されるデータパケットを受信し、
前記応答パケット作成部は、
同一のシーケンス番号が示される複数のデータパケットが前記複数の受信側ネットワークインタフェース装置により受信された場合でも、前記複数のデータパケットに対して一つの応答パケットを作成することを特徴とする請求項１又は２に記載の受信装置。
【請求項４】
前記複数の受信側ネットワークインタフェース装置の各々は、
送信側ネットワークインタフェース装置から再送された、シーケンス番号と再送回数が示される再送データパケットを受信し、
前記応答パケット作成部は、
同一のシーケンス番号と同一の再送回数が示される複数の再送データパケットが前記複数の受信側ネットワークインタフェース装置により受信された場合でも、前記複数の再送データパケットに対して一つの応答パケットを作成することを特徴とする請求項１〜３のいずれかに記載の受信装置。
【請求項５】
各々が、相互に異なるネットワークスイッチに接続されている複数の送信側ネットワークインタフェース装置と、
前記複数の送信側ネットワークインタフェース装置の各々からデータパケットを送信するデータパケット送信部とを有する送信装置と、
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有する受信装置とを備えることを特徴とする通信システム。
【請求項６】
前記通信システムは、
各々が複数の受信側ネットワークインタフェース装置を有し、２つ以上の受信グループに分類される複数の受信装置を備え、
前記送信装置において、
前記複数の送信側ネットワークインタフェース装置の各々は、
相互に異なるネットワークスイッチを介していずれかの受信装置のいずれかの受信側ネットワークインタフェース装置に接続されており、
前記送信装置は、更に、
送信側ネットワークインタフェース装置ごとに、ネットワークスイッチを介して接続されている受信側ネットワークインタフェース装置が含まれている受信装置が属する受信グループが示される接続先情報を記憶する接続先情報記憶部と、
特定の受信グループに対してデータパケットを送信する場合に、前記接続先情報に基づき、前記特定の受信グループに属する受信装置の受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置を抽出する送信側ネットワークインタフェース装置抽出部とを有し、
前記データパケット送信部は、
前記送信側ネットワークインタフェース装置抽出部により抽出された送信側ネットワークインタフェース装置から前記特定の受信グループに対するデータパケットを送信することを特徴とする請求項５に記載の通信システム。
【請求項７】
前記送信装置は、更に
前記データパケット送信部により特定の受信グループに属する受信装置にデータパケットが送信された後、前記特定の受信グループに属する受信装置から応答パケットを受信するとともに、前記特定の受信グループに属する全ての受信装置から応答パケットを受信したか否かを確認し、応答パケットを受信しなかった受信装置が２台以上である場合に、前記特定の受信グループに属する全ての受信装置の複数の受信側ネットワークインタフェース装置の全てが宛先となる受信グループマルチキャストアドレスを設定して再送データパケットを作成し、応答パケットを受信しなかった受信装置が１台である場合に、応答パケットを受信しなかった前記１台の受信装置の複数の受信側ネットワークインタフェース装置の全てが宛先となる単一マルチキャストアドレスを設定して再送データパケットを作成する再送処理部を有することを特徴とする請求項６に記載の通信システム。
【請求項８】
前記通信システムは、
各々が複数の送信側ネットワークインタフェース装置を有する複数の送信装置を備え、
前記受信装置において、
前記複数の受信側ネットワークインタフェース装置の各々は、
相互に異なるネットワークスイッチを介していずれかの送信装置のいずれかの送信側ネットワークインタフェース装置に接続されており、
前記受信装置は、更に、
受信側ネットワークインタフェース装置ごとに、ネットワークスイッチを介して接続されている送信側ネットワークインタフェース装置が含まれている送信装置が示される接続先情報を記憶する接続先情報記憶部と、
いずれかの送信装置から受信したデータパケットに対する応答パケットを送信する場合に、前記接続先情報に基づき、応答パケットの送信先の送信装置の送信側ネットワークインタフェース装置に接続されている受信側ネットワークインタフェース装置を抽出する受信側ネットワークインタフェース装置抽出部とを有し、
前記応答パケット送信部は、
前記受信側ネットワークインタフェース装置抽出部により抽出された受信側ネットワークインタフェース装置から応答パケットを送信することを特徴とする請求項５〜７のいずれかに記載の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データパケット及びデータパケットに対する応答パケットを送受信する通信システムに関する。
【背景技術】
【０００２】
ＵＤＰ／ＩＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）によるマルチキャストは複数の装置に同報通信を行うことができるが、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）によるユニキャスト通信と違い、データが確実に届くようにする仕組みは備えていない。
そこで、従来のグループ通信方式では、ＵＤＰ／ＩＰによるマルチキャスト送信で複数の装置に同報通信を行い、送信元の装置にＴＣＰ／ＩＰのユニキャスト通信でデータを受信した事（ＡＣＫ（ＡＣＫｎｏｗｌｅｄｇｅ：受信応答））あるいは、受信していない事（ＮＡＣＫ（Ｎｅｇａｔｉｖｅ  ＡＣＫｎｏｗｌｅｄｇｅ：受信否定応答））を報告し、前記報告によって再送制御を行う方法が提案されている（例えば、特許文献１）。
また、前記のようにＴＣＰ／ＩＰのユニキャスト通信でＡＣＫ／ＮＡＣＫを送信する方式では、データの送信に用いるＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）に障害が発生し使用不可になった時に通信を継続できないため、装置に複数のＮＩＣを装備し、あるＮＩＣが障害を検出した場合に、同一ネットワークに接続している別のＮＩＣが、使用不可になったＮＩＣのアドレスを引き継ぎ、使用不可になったＮＩＣの機能を代行する方法が提案されている（例えば、特許文献２）。
そして、これらを組み合わせることにより、複数のＮＩＣを同一ネットワークに接続している環境であれば、ＮＩＣにおける障害が発生しても高信頼にデータを同報通信する通信方式を実現することができる。
【特許文献１】特開２０００−２１６８２５号公報  第２頁
【特許文献２】特開２０００−１８３９５号公報  第３頁
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来技術の組み合わせでは、ＮＩＣを同一ネットワークに接続しなければならず、ネットワークスイッチに障害が発生して一部のネットワークが不通になった場合に、一部の装置にマルチキャストパケットが到達しない事や、ＡＣＫ／ＮＡＣＫパケットを送信装置に届けることができず、高信頼なグループ通信を実施することはできない。
また、ＮＩＣが障害を検出したときに別のＮＩＣが機能を代行する仕組みであるため、ＮＩＣが障害を検出できない場所に障害が発生した場合は前記の代行処理を実施する事ができない。例えばネットワークスイッチと別の装置（通信相手の装置）の間に障害が発生した場合、障害を検出する事はできないため、現在使用中のＮＩＣの機能を別のＮＩＣに代行させる事はできない。
また、各ＮＩＣを異なるスイッチに接続することでネットワークを冗長化したとしても、ＴＣＰ／ＩＰのユニキャストによるＡＣＫ／ＮＡＣＫの送信では、装置におけるルーティングの設定でＡＣＫ／ＮＡＣＫを送信するＮＩＣが自動的に設定されてしまうため、受信装置はＡＣＫ／ＮＡＣＫを、障害の発生しているＮＩＣと同じネットワークスイッチに繋がっているＮＩＣから送信してしまい、ＡＣＫ／ＮＡＣＫを送信装置に届けることができない。従来技術ではＡＣＫ／ＮＡＣＫが送信装置に届かなければ何度も同一パケットをネットワークに送信する事になる。
【０００４】
この発明は上記のような課題を解決することを主な目的の一つとしており、ネットワークスイッチの障害やネットワークケーブルの障害が生じた場合でも、データの確実な配送が可能な通信システムを実現することを目的とする。
【課題を解決するための手段】
【０００５】
本発明に係る受信装置は、
各々が相互に異なるネットワークスイッチに接続されている複数の送信側ネットワークインタフェース装置を有する送信装置から送信されたデータパケットを受信する受信装置であって、
各々が、相互に異なるネットワークスイッチを介して異なる送信側ネットワークインタフェース装置に接続され、送信側ネットワークインタフェース装置から送信されたデータパケットを受信する複数の受信側ネットワークインタフェース装置と、
受信したデータパケットに対する応答として、前記複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成する応答パケット作成部と、
前記応答パケット作成部により作成された応答パケットを各受信側ネットワークインタフェース装置から各受信側ネットワークインタフェース装置に接続されている送信側ネットワークインタフェース装置に向けて送信する応答パケット送信部とを有することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、複数の送信側ネットワークインタフェース装置の全てが宛先となる送信装置マルチキャストアドレスが含まれる応答パケットを作成し、当該応答パケットを複数の受信側ネットワークインタフェース装置の各々から送信装置の各送信側ネットワークインタフェース装置に向けて送信するため、ネットワークスイッチの障害やネットワークケーブルの障害が生じた場合でも、応答パケットの確実な配送が可能である。
【発明を実施するための最良の形態】
【０００７】
実施の形態１．
本実施の形態に係る通信システムは、ネットワークスイッチの障害やネットワークケーブルの障害に備えて、複数のネットワークスイッチで装置間を冗長に接続した環境において、パケットを冗長に送受信する事でデータの確実な配送を可能とすることを目的とする。
【０００８】
図１は、本実施の形態に係る通信システムのシステム構成図である。
以下、図１の構成要素を以下に説明する。
【０００９】
送信装置１０１は、少なくとも２枚以上のネットワークインタフェース装置１１４（以下、ＮＩＣ１１４ともいう）を有する。図１の例では、ＮＩＣ１１４−１とＮＩＣ１１４−２の２枚のＮＩＣとしている。各ＮＩＣ１１４は、異なるネットワークスイッチ３００に接続されている。なお、各ＮＩＣ１１４は、送信側ネットワークインタフェース装置の例である。
また、データパケット作成部１１１は、送信するデータに対し、本実施の形態の通信方式に必要な通信ヘッダを付け、データパケットを作成する。
データパケット送信部１１２は、各ＮＩＣ１１４からデータパケットを送信する。
再送部１１３は、データパケットに対する応答であるＡＣＫパケットをＮＩＣ１１４を介して受信し、ＡＣＫパケットが未到着の受信装置がある場合にデータパケットを再送する。
【００１０】
受信装置２０１、２０２は、少なくとも２枚以上のネットワークインタフェース装置２１４（以下、ＮＩＣ２１４ともいう）を有する。図１の例では、ＮＩＣ２１４−１とＮＩＣ２１４−２の２枚のＮＩＣとしている。各ＮＩＣ２１４は、異なるネットワークスイッチ３００に接続されている。なお、各ＮＩＣ２１４は、受信側ネットワークインタフェース装置の例である。なお、以下、特に注記しない限り、受信装置２０１についての説明は、受信装置２０２にもあてはまるものとする。
順序管理部２１３は、ＮＩＣ２１４を介して送信装置１０１からのデータパケットを受信し、受信したデータパケットの整列を行う。
ＡＣＫパケット作成部２１１は、データパケットに対する応答パケットであるＡＣＫパケットを作成する。ＡＣＫパケット作成部２１１は、応答パケット作成部の例である。なお、本実施の形態及び以降の実施の形態では、ＡＣＫパケットを送信する例を主に説明するが、ＮＡＣＫパケットを送信する場合も同様の手順となる。ＮＡＣＫパケットも応答パケットの例である。
ＡＣＫパケット送信部２１２は、ＮＩＣ２１４からＡＣＫパケットを送信する。ＡＣＫパケット送信部２１２は、応答パケット送信部の例である。
なお、図１では、受信装置２０１として、受信装置２０１及び受信装置２０２が配置されている。
【００１１】
また、送信装置１０１及び受信装置２０１の間には少なくとも２つ以上のネットワークスイッチ３００を設置し、送信装置１０１及び受信装置２０１の各ＮＩＣをそれぞれ異なるネットワークスイッチ３００に接続することで、装置間に複数の通信路を構築している。
図１では、ネットワークスイッチ３００−１及びネットワークスイッチ３００−２を配置している。
【００１２】
図２は、本実施の形態で用いられるネットワークアドレスの例を示す。
図２の構成を以下に説明する。
【００１３】
送信装置１０１は送信装置マルチキャストアドレスＡ１０１を持つ。
従来技術では、送信装置はＡＣＫパケットをＮＩＣのユニキャストアドレスＡ１１４−１等で受信するが、本実施の形態では送信装置１０１はＡＣＫパケットをマルチキャストアドレスＡ１０１で受信する。
送信装置マルチキャストアドレスＡ１０１は、送信装置１０１に含まれる複数のＮＩＣ１１４の全てを包含するアドレスであり、後述するように、受信装置２０１においてＡＣＫパケットに送信装置マルチキャストアドレスＡ１０１を含ませると送信装置１０１に含まれる複数のＮＩＣ１１４の全てをＡＣＫパケットの宛先とすることができる。
【００１４】
送信装置１０１から同一データパケットを受信する受信装置２０１と受信装置２０２は受信グループ２００を構成する。
受信グループ２００は、受信グループのマルチキャストアドレスＡ２００を持つ。
また送信装置１０１と同様に、受信装置２０１はマルチキャストアドレスＡ２０１を持ち、受信装置２０２はマルチキャストアドレスＡ２０２を持つ。
マルチキャストアドレスＡ２０１は受信装置２０１に含まれる全てのＮＩＣ２１４を包含するアドレスであり、マルチキャストアドレスＡ２０２は受信装置２０２に含まれる全てのＮＩＣ２１４を包含するアドレスである。
本実施の形態の通信方式では、受信グループが１台の受信装置２０１だけで構成される場合、前記受信グループのマルチキャストアドレスＡ２００は受信装置２０１のマルチキャストアドレスＡ２０１と同じ値であっても良い。
【００１５】
図３、図４は本実施の形態における通信パケットのヘッダ構成例である。
図３は送信装置１０１が送るデータパケットＰ５０１の構成例を示し、図４は受信装置２０１が送るＡＣＫパケットＰ５０２の構成例を示す。
パケットは次に述べる各値をパケットのヘッダに持つ。
当該パケットの送信元の装置を示すパケット送信元アドレス４０１、パケットがデータパケットであるかＡＣＫパケットであるか示すパケットタイプ４０２、データパケット送信元の装置を示すデータ送信元アドレス４０３、データパケットの宛先を示すデータ宛先グループ４０４、データの順序を示すシーケンス番号４０５である。
パケットのヘッダにはその他のヘッダ４０６としてデータのサイズ等が存在していてもよい。
パケットは送信元アドレス４０１により、どの装置から送信されたかを特定できる。
また、データ送信元アドレス４０３、データ宛先グループ４０４、シーケンス番号４０５の組み合わせにより、データを送信した装置、宛先、データの順序が特定できるため、データの内容やＡＣＫがどのデータパケットに対するＡＣＫであるかを一意に特定できる。
つまり、ＡＣＫパケットＰ５０２の場合、データ送信元アドレス４０３にはＡＣＫパケットＰ５０２の応答の対象となるデータパケットの送信元のアドレスが示されており、データ送信元アドレス４０３によりＡＣＫパケットＰ５０２の宛先を特定することが可能である。
【００１６】
図３において、パケット送信元アドレス４０１には、データパケットの送信元である送信装置１０１の送信装置マルチキャストアドレスＡ１０１が示され、図４において、パケット送信元アドレス４０１には、ＡＣＫパケットの送信元である受信装置２０１の受信装置マルチキャストアドレスＡ２０１、Ａ２０２が示される。
また、図３及び図４において、データ送信元アドレス４０３には、データパケットの送信元である送信装置１０１の送信装置マルチキャストアドレスＡ１０１が示される。
また、図３及び図４において、データ宛先グループ４０４には、データパケットの宛先グループである受信グループ２００の受信グループマルチキャストアドレスＡ２００が示される。
また、ＡＣＫパケットＰ５０２は、受信装置２０１が受信したデータパケットＰ５０１のヘッダにおけるパケット送信元アドレス４０１とパケットタイプを変更したものである。つまり、データ送信元アドレス４０３、データ宛先グループ４０４、シーケンス番号４０５、その他のヘッダ４０６はデータパケットのものと変わらない。
受信装置２０１では、ＡＣＫパケット作成部２１１が、図３に示すデータパケットＰ５０１のヘッダをコピーし、パケット送信元アドレス４０１とパケットタイプを変更して、ＡＣＫパケットＰ５０２のヘッダを作成することができる。
また、後述するように、データ伝送にＩＰ（Ｉｎｔｅｒｎｅｔ）プロトコルを用いる場合は、データパケットに付加されたＩＰヘッダに含まれる送信装置マルチキャストアドレスＡ１０１又は図３に示すデータパケットＰ５０１のデータ送信元アドレス４０３に示される送信装置マルチキャストアドレスＡ１０１をＩＰヘッダに設定して、ＡＣＫパケットＰ５０２を作成する。
【００１７】
図５、図６は、本実施の形態に係る通信の流れを示したものである。
【００１８】
図５のように各装置が２枚のＮＩＣを持つシステムにおいて、送信装置１０１はデータパケット５０１を、受信グループ２００のマルチキャストアドレスＡ２００宛てに、ＮＩＣ１１４−１及びＮＩＣ１１４−２の両方から同時にマルチキャスト送信する。
なお、データパケット５０１−１に含まれる通信アドレス等の内容を６０１に、データパケット５０１−２に含まれる通信アドレス等の内容を６０２に示す。
６０１、６０２は同一の内容であり、パケット送信元アドレス（Ｐａｃｋｅｔ  ｆｒｏｍ）及びデータ送信元アドレス（Ｄａｔａ  ｆｒｏｍ）が送信装置マルチキャストアドレスＡ１０１であり、データ宛先グループ（Ｄａｔａ  ｔｏ）が受信グループマルチキャストアドレスＡ２００であり、シーケンス番号（Ｓｅｑ）が１０００である。
【００１９】
各ＮＩＣ１１４から送信されたデータパケット５０１−１及び５０１−２はそれぞれネットワークスイッチ３００−１、３００−２で複製され、受信装置２０１及び受信装置２０２に到着する。
図６は、受信装置２０１がＡＣＫパケットを送信装置１０１に送信する際の状態を表したものである。
受信装置２０１はデータパケット５０１に対する応答として、ＡＣＫパケット５０２を作成する。受信装置２０１はＡＣＫパケット５０２を、送信装置１０１のマルチキャストアドレスＡ１０１宛てに、受信装置２０１の持つＮＩＣ２１４−１及びＮＩＣ２１４−２から同時に送信する。送信されたＡＣＫパケットはそれぞれネットワークスイッチ３００−１、３００−２を経由して送信装置１０１に到着する。ＡＣＫパケット５０２−１に含まれる通信アドレス等の内容を７０１に、ＡＣＫパケット５０２−２に含まれる通信アドレス等の内容を７０２に示すが、両者は同じ内容である。
データ伝送にＩＰプロトコルが用いられる場合は、受信装置２０１のＡＣＫパケット作成部２１１は、図４に示すヘッダに加え、宛先アドレスとして送信装置マルチキャストアドレスＡ１０１が示されるＩＰヘッダを含むＡＣＫパケットを作成する。
また、利用する通信プロトコルによっては、ＡＣＫパケット作成部２１１は図４に示すヘッダのみが含まれるＡＣＫパケットを作成するようにしてもよい。
いずれの通信プロトコルの場合も、ＡＣＫパケット作成部２１１は、受信したデータパケットに対する応答として、複数の送信側のＮＩＣ１１４の全てが宛先となる送信装置マルチキャストアドレスＡ１０１が含まれるＡＣＫパケットを作成し、複数のネットワークスイッチ３００を介して複数の送信側のＮＩＣ１１４の全てにＡＣＫパケットが到達するようにする。
各ネットワークスイッチ３００では、ＡＣＫパケットに含まれる送信装置マルチキャストアドレスＡ１０１により各々に接続されている送信側のＮＩＣ１１４にＡＣＫパケットを送信する。
【００２０】
次に、動作について説明する。
図７は本実施の形態における送信装置１０１の処理フローの例を示す。送信装置１０１は次のステップで動作する。
ステップＳ１１０において、データパケット作成部１１１でデータパケットを作成する。この際、受信グループ２００のマルチキャストアドレスである受信グループマルチキャストアドレスＡ２００をデータパケットに含ませる。
次に、ステップＳ１２０において、データパケット送信部１１２でデータパケットをマルチキャスト送信する。具体的には、複数のＮＩＣ１１４の各々から各ネットワークスイッチに向けてデータパケットを送信する。
次に、ステップＳ１３０において、再送部１１３でＡＣＫ受信の完了を判定し、完了しない場合はステップＳ１２０に戻る。
【００２１】
図８はデータパケット送信部１１２の処理フローの例を示す。データパケット送信部１１２は次のステップを、装置の持つＮＩＣの数だけ繰り返す。
ステップＳ１２１において、データパケット送信部１１２は送信に用いるＮＩＣを選択する。
次に、ステップＳ１２２において、データパケット送信部１１２はデータパケットをステップＳ１２１で選択したＮＩＣからマルチキャスト送信する。
【００２２】
図９は再送部１１３の処理フロー例を示す。再送部１１３は送信装置１０１のマルチキャストアドレスＡ１０１宛てパケットを待ち受け、再送の要否を判定する。
ステップＳ１３１において、再送部１１３はＡＣＫパケットを待ち受ける。パケットを受信するか、受信タイムアウトが発生したら次のステップＳ１３２に進む。
次に、ステップＳ１３２において、再送部１１３は全ての受信装置からＡＣＫが到着しているか否か判定を行う。到着していればデータパケットの送信の成功とする。到着していない装置があればステップＳ１３３に進む。
次に、ステップＳ１３３において、データパケット送信（ステップＳ１２２実行）から一定時間以内であればステップＳ１３１に戻る。一定時間を超過していたらステップＳ１３４に進む。
次に、ステップＳ１３４において、再送部１１３は再送を一定回数以上行っていた場合はデータパケットの送信に失敗とする。再送が一定回数以内であればステップＳ１２０に戻る。
【００２３】
図１０は受信装置２０１の処理フロー例を示す。受信装置２０１は次のステップで動作する。
ステップＳ２１０において、順序管理部２１３が、受信したデータパケットを整列し、データを送信された順に重複無く結合または加工する。
次に、ステップＳ２２０において、ＡＣＫパケット作成部２１１が、受信したデータパケットに対するＡＣＫパケットを作成する。前述したように、ＡＣＫパケットには、図４に示すように送信装置マルチキャストアドレスＡ１０１が含まれ、データ伝送にＩＰプロトコルを用いる場合は、ＩＰヘッダの宛先アドレスにも送信装置マルチキャストアドレスＡ１０１が含まれる。
次に、ステップＳ２３０において、ＡＣＫパケット送信部２１２が、ＡＣＫパケットをマルチキャスト送信する。具体的には、複数のＮＩＣ２１４の各々から各ネットワークスイッチに向けてＡＣＫパケットを送信する。
また、受信装置２０１はデータパケットを受信する都度ＡＣＫパケットを送信する。
【００２４】
図１１は順序管理部２１３の処理フローである。
ステップＳ２１１において、順序管理部２１３は、受信グループのアドレスＡ２００宛てのデータパケットＰ５０１を受信する。
次に、ステップＳ２１２において、受信したデータパケットＰ５０１のシーケンス番号が処理済であるか判定する。未処理のデータであればＳ２１３を実行する。
ステップＳ２１３において、順序管理部２１３は、システムの用途に応じて受信した一連のデータを保存する処理や、データを加工する処理を行う。
【００２５】
図１２はＡＣＫパケット送信部２１２の処理フローである。ＡＣＫパケット送信部２１２は次のステップを、装置の持つＮＩＣ２１４の数だけ繰り返す。
ステップＳ２３１において、ＡＣＫパケット送信部２１２は、送信に用いるＮＩＣを選択する。
ステップＳ２３２において、ＡＣＫパケット送信部２１２は、ＡＣＫパケットをステップＳ２３１で選択したＮＩＣからマルチキャスト送信する。
【００２６】
以下に、この実施の形態に係る通信システムの効果を説明する。
本実施の形態では、装置全てが複数のＮＩＣを持ち、装置全てにマルチキャストアドレスを割り当て、ＮＩＣの持つユニキャストアドレスではなくマルチキャストアドレスにマルチキャスト送信を行う。このときパケットを装置の持つ複数のＮＩＣから同時に送信することと、１台の装置宛であっても複数の装置から成るグループ宛であっても全ての通信をマルチキャストで送信することを主な特徴としている。
そのため、特徴の一つである複数のＮＩＣから同時に送信することにより、装置間のネットワークに障害が発生しても、装置間の通信路の内一つでも正常に機能していれば、データの配信が確実に実施できるという効果を得ることができる。
さらに、特徴の一つである全ての通信をマルチキャスト送信することにより、発明が解決しようとする課題の欄で述べたようなユニキャスト通信のルーティング情報に影響されること無くＡＣＫパケットを確実に送信元に届けることができ、一対多のグループ通信を高信頼に実現するという効果を得ることができる。
【００２７】
例えば、図１３の構成において、Ｆ６００の位置にあるネットワークケーブルに障害が発生していた場合、従来技術では送信装置１０１はＮＩＣ１１４−１の機能をＮＩＣ１１４−２に代行させるように設定できないため、受信装置２０２はデータを受信することができない。しかし、本実施の形態によると、このようなケースでも送信装置はＮＩＣ１１４−２からパケットを送信できるので確実にデータを配信することができる。
また、図１４の構成においてＦ６０１の位置に障害が発生した場合、従来技術ではＮＩＣ１１４−２がＮＩＣ１１４−１の機能を代行しパケットの送信を行うが、各受信装置はＮＩＣ１１４−１のユニキャストアドレスＡ１１４−１にＡＣＫを送信するため、ネットワークスイッチ３００−１側にパケットを送信してしまい、ＡＣＫが送信装置１０１に届かない。しかし、本実施の形態によると、このような場合でも各受信装置はネットワークスイッチ３００−２側のＮＩＣから送信装置１０１のマルチキャストアドレスにマルチキャスト送信するため、ＡＣＫを送信装置に届けることができる。
【００２８】
以上、本実施の形態では、複数のネットワークインタフェース装置（ＮＩＣ）を備えた装置を、ネットワークスイッチで結合してローカルエリアネットワーク（ＬＡＮ）を構築した分散システムで、装置間に複数のネットワークスイッチを設置し、装置の各ＮＩＣをそれぞれ異なるネットワークスイッチに接続することで冗長化した環境において、装置の組み合わせをグループとしてグループに対する同報通信をマルチキャスト通信で行う仕組みであって、以下の特徴を持つ事で、任意のネットワークスイッチ、ネットワークケーブル、ＮＩＣに障害が発生しても、グループの全装置に確実にデータが届くようにした冗長化高信頼グループ通信方式について説明した。
１）全てのグループにマルチキャストアドレスを割り当てる。
２）全ての装置にマルチキャストアドレスを割り当てる。
３）データを送信する側の装置（送信装置）は、データ送信時に、データの送信順序を示すシーケンス番号と、送信装置のマルチキャストアドレスを付加したデータパケットを作成するデータパケット作成部を備える。
４）送信装置は前記データパケットを送信する手段として、グループのマルチキャストアドレスに向けて、複数のＮＩＣから同時にデータパケットの送信を行い、装置間の複数の通信経路を冗長に用いる事を特徴としたデータパケット送信部を備える。
５）データを受信する側の装置（受信装置）は、受信したデータパケットのシーケンス番号を記憶し、データを送信された順に重複が無いように整列する順序管理部を備える。
６）受信装置はデータパケットに対する応答として、シーケンス番号と受信装置のマルチキャストアドレスを付加したＡＣＫ（ＡＣＫｎｏｗｌｅｄｇｅ：受信肯定応答）パケットを作成するＡＣＫパケット作成部を備える。
７）受信装置は前記ＡＣＫパケットを送信する手段として、データパケットに記載された送信装置のマルチキャストアドレスに向けて、複数のＮＩＣから同時にＡＣＫパケットの送信を行う事で、複数の通信経路を冗長に用いる事を特徴としたＡＣＫパケット送信部を備える。
８）送信装置は受信装置からのＡＣＫパケット到着の有無を記憶し、ＡＣＫが到着していない受信装置がある場合に同一データパケットを再度送信する事でデータパケットの到達可能性を高める再送部を備える。
【００２９】
実施の形態２．
以上の実施の形態１では、受信装置２０１はデータパケットＰ５０１を受信する都度ＡＣＫパケットＰ５０２を送信するものであった。
次に、ＡＣＫパケット送信処理の処理回数を削減する実施の形態について述べる。
【００３０】
図１５は、本実施の形態のシステム構成図である。
本実施の形態では、実施の形態１の構成に対して、送信装置１０１に再送回数計測部１１５を加え、受信装置２０１に後着判定部２１５を加える。
再送回数計測部１１５は、送信装置１０１において同一データの再送回数を数える。
後着判定部２１５は、受信装置２０１において、受信したパケットに応答が必要か判定する。
【００３１】
図１６、図１７は本実施の形態におけるパケットフォーマットの例である。
本実施の形態では実施の形態１のパケットフォーマット（図３、図４）に、前記再送回数計測部１１５で計測した再送回数を記載する再送回数フィールド４０７を付け加える。
【００３２】
次に本実施の形態の動作について述べる。
送信装置１０１は前述のように、データパケットに実施の形態１のヘッダに再送回数４０７を加えたデータパケットＰ５１１を作成し、実施の形態１と同じくデータパケット送信部１１２で複数のＮＩＣ１１４からデータパケットＰ５１１を同時にマルチキャスト送信する。
図１８は本実施の形態で各受信装置の後着判定部２１５が行う、データパケットの分類を示したものである。
送信装置１０１が複数のＮＩＣから同時に送信したデータパケットＰ５１１には同じ値のシーケンス番号４０５と再送回数４０７が記載されている。後着判定部２１５はこの２つの値により、受信したデータパケットＰ５１１を次のように分類する。
（１）シーケンス番号が過去に受信していない値であればデータパケット５１１を新規パケット５１１−１に分類する。
（２）シーケンス番号が過去に受信した値であり、再送回数も過去に受信した値かそれ以下であれば、データパケット５１１を後着パケット５１１−２に分類する。
（３）シーケンス番号が過去に受信した値であり、再送回数が過去に受信した値よりも大きい場合は、データパケット５１１を再送パケット５１１−３に分類する。
【００３３】
次に上記のデータパケット分類処理後の動作について述べる。
（１）新規パケット５１１−１の場合は、受信したデータの処理とＡＣＫパケット送信を行う。
つまり、ＡＣＫパケット作成部２１１が、送信装置マルチキャストアドレスＡ１０１を含むＡＣＫパケットを生成し、ＡＣＫパケット送信部２１２が各ＮＩＣ２１４からＡＣＫパケットを送信する。ＡＣＫパケットの作成、ＡＣＫパケットの送信手順は、実施の形態１で示したものと同様である。
（２）後着パケット５１１−２の場合は、受信装置２０１は、何もしない。
（３）再送パケット５１１−３の場合は、ＡＣＫパケットの送信を行う。
つまり、ＡＣＫパケット作成部２１１が、送信装置マルチキャストアドレスＡ１０１を含むＡＣＫパケットを生成し、ＡＣＫパケット送信部２１２が各ＮＩＣ２１４からＡＣＫパケットを送信する。ＡＣＫパケットの作成、ＡＣＫパケットの送信手順は、実施の形態１で示したものと同様である。
【００３４】
以上のように、本実施の形態によれば、シーケンス番号４０５及び再送回数４０７によって受信したパケットを分類し、データパケットが後着パケット５１１−２である場合にＡＣＫパケットの送信を行わない事により、ＡＣＫパケットの送信回数を削減する効果を得ることができる。
この効果は装置のＮＩＣが増加するほど大きく現れる。
【００３５】
本実施の形態では装置間の複数の通信経路を同時に用いてパケットの送信を行うため、同時に送信されたパケットが受信装置に到着する。同時に送信されたパケットに対して１回だけＡＣＫパケットの送信処理を行う事が本実施の形態の特徴の一つである。
また、ＡＣＫパケットが送信装置に到着しなかった場合は、送信装置が再送を行うため、再送されたパケットに対するＡＣＫパケットの送信は必要である。再送されたことにより重複して受信したデータパケットと、多重経路により重複して受信したデータパケットを区別することで、ＡＣＫパケット送信回数を削除すると同時に、ＡＣＫパケット送信が必要なときに送信するようにすることも本実施の形態の特徴の一つである。
このように、本実施の形態は、ＡＣＫパケット送信処理回数の削減という効果を得ることができる。
【００３６】
以上、本実施の形態では、以下の各部を備える事で、受信装置におけるＡＣＫパケット作成処理及びＡＣＫパケット送信処理の処理回数を削減する冗長化高信頼グループ通信方式について説明した。
１）送信装置に、同一データの再送回数を記録する再送回数計測部を備える。
２）送信装置のデータパケット作成部がデータパケットを作成する際に、前記再送回数計測部で記録した再送回数をデータパケットに記載するステップを持つ。
３）受信装置に、データパケットに記載されている再送回数を記憶するステップと、データパケットに記載されている再送回数が記憶している再送回数以下の場合にだけＡＣＫの送信を行うようにするステップを持った後着判定部を備える。
【００３７】
実施の形態３．
以上の実施の形態は各装置が全てのＮＩＣからパケットを送信するようにしたものであるが、次に、パケットを送信するときに使用するＮＩＣの数を限定し、マルチキャスト送信処理の処理回数を削減する実施の形態について述べる。
【００３８】
図１９は、本実施の形態のシステム構成図である。
本実施の形態では実施の形態１または実施の形態２の構成に、各装置に経路管理部１１６（２１６）と経路切り替え部１１７（２１７）を追加している。
経路管理部１１６（２１６）は、各装置において、他の各装置とそれぞれどのＮＩＣを用いて通信できるか管理する。
経路切り替え部１１７（２１７）は、パケット送信時に使用するＮＩＣを、パケットを受信する装置に応じて切り替える。
なお、後述するように、経路管理部１１６（２１６）は接続先情報記憶部の例であり、経路切り替え部１１７は送信側ネットワークインタフェース装置抽出部の例であり、経路切り替え部２１７は受信側ネットワークインタフェース装置抽出部の例である。
【００３９】
本実施の形態に係る通信システムでは、複数の受信装置２０１が存在し、各々の受信装置２０１は複数のＮＩＣ２１４を備え、各ＮＩＣ２１４は異なるネットワークスイッチ３００を介して送信装置１０１の異なるＮＩＣ１１４に接続され、複数の受信装置２０１は、２つ以上の受信グループに分類される。
また、送信装置１０１では、各ＮＩＣ１１４は、相互に異なるネットワークスイッチ３００を介していずれかの受信装置２０１のいずれかのＮＩＣ２１４に接続されている。
つまり、本実施の形態では、送信装置１０１の各ＮＩＣ１１４がネットワークスイッチ３００を介して接続されている受信側のＮＩＣ２１４は共通の受信装置２０１のものとは限らない。
例えば、送信装置１０１の複数の送信側ＮＩＣ１１４のうち、あるＮＩＣ１１４は受信グループ１に属する受信装置２０１の受信側ＮＩＣ２１４に接続され、別の送信側ＮＩＣ１１４は受信グループ２に属する受信装置２０１の受信側ＮＩＣ２１４に接続される場合がある。
【００４０】
また、本実施の形態では、送信装置１０１が複数存在する場合も想定している。
そして、受信装置２０１の各ＮＩＣ２１４は、相互に異なるネットワークスイッチ３００を介していずれかの送信装置１０１のいずれかの送信側ＮＩＣ１１４ネットワークインタフェース装置に接続されている。
つまり、本実施の形態では、受信装置２０１の各ＮＩＣ２１４がネットワークスイッチ３００を介して接続されている送信側のＮＩＣ１１４は共通の送信装置１０１のものとは限らない。
例えば、受信装置２０１の複数の受信側ＮＩＣ２１４のうち、あるＮＩＣ２１４はある送信装置１０１の送信側ＮＩＣ１１４に接続され、別の受信側ＮＩＣ２１４は別の送信装置１０１の送信側ＮＩＣ１１４に接続される場合がある。
【００４１】
そして、本実施の形態では、各装置の経路管理部１１６（１１７）で、装置の持つＮＩＣと他の装置への到達可能性を示す到達可能性情報を記憶する。
到達可能性情報は、接続先情報の例である。
送信装置１０１の経路管理部１１６で記憶されている到達可能性情報には、送信側のＮＩＣ１１４ごとに、ネットワークスイッチ３００を介して接続されている受信側のＮＩＣ２１４が含まれている受信装置２０１が属する受信グループが示される。
また、受信装置２０１の経路管理部２１６で記憶されている到達可能性情報には、受信側のＮＩＣ２１４ごとに、ネットワークスイッチ３００を介して接続されている送信側のＮＩＣ１１４が含まれている送信装置１０１が示される。
【００４２】
そして、送信装置２１４の経路切り替え部１１７はデータパケットを送信する際に、グループを構成する各受信装置をどのＮＩＣ１１４を用いて通信できるか経路管理部１１６に問い合わせ、マルチキャスト送信を行う際に、前記で問い合わせたＮＩＣ１１４だけを用いてパケットの送信を行うようにデータパケット送信部１１２の動作を変更する。
つまり、経路切り替え部１１７は、特定の受信グループに対してデータパケットを送信する場合に、経路管理部１１６の到達可能性情報に基づき、特定の受信グループに属する受信装置２０１の受信側ＮＩＣ２１４に接続されている送信側ＮＩＣ１１４を抽出し、データパケット送信部１１２は経路切り替え部１１７により抽出された送信側ＮＩＣ１１４から特定の受信グループに対するデータパケットを送信する。
【００４３】
また、受信装置２０１も同様に、送信装置１０１にＡＣＫパケットを送信する際に使用するＮＩＣ２１４の問い合わせを行い、必要最低限のＮＩＣ２１４だけを用いてＡＣＫパケットの送信を行う。
つまり、経路切り替え部２１７は、いずれかの送信装置１０１から受信したデータパケットに対するＡＣＫパケットを送信する場合に、経路管理部２１６の到達可能性情報に基づき、ＡＣＫパケットの送信先の送信装置１０１の送信側ＮＩＣ１１４に接続されている受信側ＮＩＣ２１４を抽出し、ＡＣＫパケット送信部２１２は、経路切り替え部２１７により抽出された受信側ＮＩＣ２１４から応答パケットを送信する。
【００４４】
以上のように、パケット送信の際に使用するＮＩＣを限定することで、パケットを受信する装置の存在しないネットワークにマルチキャストパケットを送信しないようにし、パケット送信処理回数の削減とネットワーク負荷の軽減を行うことができる。
【００４５】
以上、本実施の形態では、以下の手段を備えることで、データパケットまたはＡＣＫパケットを送信する際に使用するＮＩＣを削減し、パケット送信の処理回数を削減する冗長化高信頼グループ通信方式について説明した。
１）送信装置及び受信装置に、各ＮＩＣがどの装置と通信可能か記録する経路管理部を備える。
２）送信装置がデータパケットを送信する際に、グループを構成する装置と通信可能なＮＩＣのみを使用するように選択する経路選択部を備える。
３）受信装置はＡＣＫパケットを送信する際に、送信装置と通信可能なＮＩＣのみを使用するように選択する経路選択部を備える。
【００４６】
実施の形態４．
以上の実施の形態では、送信装置１０１は再送が必要な場合に受信グループ２００のマルチキャストアドレスＡ２００に向けてマルチキャスト送信を行うものであった。
次に、ＡＣＫが戻らないため再送が必要と認識した受信装置が１台だけである場合に、該当する１台のみに再送を行う事で、既にデータパケットが到着した受信装置が受信処理を行わなくて良いようにする形態について述べる。
【００４７】
図２０は本実施の形態の構成図である。
本実施の形態では実施の形態１から実施の形態３のいずれかの送信装置１０１の構成に、再送先変更部１１８を追加している。
本実施の形態では、再送部１１３及び再送先変更部１１８が再送処理部の例に相当する。
【００４８】
次に、本実施の形態の動作について述べる。
本実施の形態では、再送部１１３におけるＡＣＫ完了判定で再送を決定する際に、ＡＣＫが未到着の受信装置が１台である事を認識したときに再送先変更部１１８が動作する。
再送先変更部１１８は、再送の時にパケットを送るマルチキャストアドレスを、前記ＡＣＫが未到着の受信装置に割り当てられたマルチキャストアドレスに変更する。
つまり、本実施の形態では、再送部１１３は、データパケット送信部１１２により特定の受信グループに属する受信装置にデータパケットが送信された後、特定の受信グループに属する受信装置からＡＣＫパケットを受信するとともに、特定の受信グループに属する全ての受信装置から応答パケットを受信したか否かを確認する。
そして、応答パケットを受信しなかった受信装置が２台以上である場合は、再送部１１３は、特定の受信グループに属する全ての受信装置の複数の受信側ＮＩＣ２１４の全てが宛先となる受信グループマルチキャストアドレスＡ２００（図２参照）を設定して再送データパケットを作成する。
一方、ＡＣＫパケットを受信しなかった受信装置が１台である場合に、再送先変更部１１８が、ＡＣＫパケットを受信しなかった１台の受信装置の複数の受信側ＮＩＣ２１４の全てが宛先となる受信装置マルチキャストアドレスＡ２０１等（単一マルチキャストアドレス）（図２参照）を設定して再送データパケットを作成する。
その後、再送データパケットが、データパケット送信部１１２により各送信側ＮＩＣ１１４から送信される。
【００４９】
これにより、再送されたデータパケットは前記ＡＣＫが未到着の受信装置にのみ配送されるようになり、既にデータを受信してＡＣＫが送信装置に届いている他の受信装置はパケットの受信や応答を行わなくて良いという効果を得ることができる。
【００５０】
以上、本実施の形態では、送信装置に以下の手段を備えることで、再送が必要な受信装置が１台だけの場合に、その他の受信装置にデータパケットが届かないようにし、受信処理や応答処理を削減する冗長化グループ通信方式について説明した。
１）ＡＣＫが未到着の受信装置が１台だけであるか判定するステップと、１台だけである場合にデータパケットを再送する際のパケットの送り先を、前記ＡＣＫが未到着の受信装置のマルチキャストアドレスに書き換えるステップを持つ再送先変更部を備える。
【００５１】
最後に、実施の形態１〜４に示した送信装置１０１及び受信装置２０１のハードウェア構成例について説明する。
図２１は、実施の形態１〜４に示す送信装置１０１及び受信装置２０１のハードウェア資源の一例を示す図である。
なお、図２１の構成は、あくまでも送信装置１０１及び受信装置２０１のハードウェア構成の一例を示すものであり、送信装置１０１及び受信装置２０１のハードウェア構成は図２１に記載の構成に限らず、他の構成であってもよい。
【００５２】
図２１において、送信装置１０１及び受信装置２０１は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００５３】
通信ボード９１５は、図１に示すように、ネットワークスイッチを介して相手方の装置（送信装置１０１又は受信装置２０１、２０２）に接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。
【００５４】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００５５】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００５６】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
送信装置１０１及び受信装置２０１の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００５７】
上記プログラム群９２３には、実施の形態１〜４の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００５８】
ファイル群９２４には、実施の形態１〜４の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１〜４で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００５９】
また、実施の形態１〜４の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１〜４の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜４の「〜部」の手順や方法をコンピュータに実行させるものである。
【００６０】
このように、実施の形態１〜４に示す送信装置１０１及び受信装置２０１は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【００６１】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係るアドレス構成例を示す図。
【図３】実施の形態１に係るデータパケットのフォーマット例を示す図。
【図４】実施の形態１に係るＡＣＫパケットのフォーマット例を示す図。
【図５】実施の形態１に係るデータパケットの送信フロー例を示す図。
【図６】実施の形態１に係るＡＣＫパケットの送信フロー例を示す図。
【図７】実施の形態１に係る送信装置の処理フロー例を示すフローチャート図。
【図８】実施の形態１に係るデータパケット送信部の処理フロー例を示すフローチャート図。
【図９】実施の形態１に係る再送部の処理フロー例を示すフローチャート図。
【図１０】実施の形態１に係る受信装置の処理フロー例を示すフローチャート図。
【図１１】実施の形態１に係る順序管理部の処理フロー例を示すフローチャート図。
【図１２】実施の形態１に係るＡＣＫパケット送信部の処理フロー例を示すフローチャート図。
【図１３】実施の形態１に係る従来技術では解決できない障害の例を示す図。
【図１４】実施の形態１に係る従来技術では解決できない障害の例を示す図。
【図１５】実施の形態２に係るシステム構成例を示す図。
【図１６】実施の形態２に係るデータパケットのフォーマット例を示す図。
【図１７】実施の形態２に係るＡＣＫパケットのフォーマット例を示す図。
【図１８】実施の形態２に係るデータパケットの分類処理を説明する図。
【図１９】実施の形態３に係るシステム構成例を示す図。
【図２０】実施の形態４に係るシステム構成例を示す図。
【図２１】実施の形態１〜４に係る送信装置及び受信装置のハードウェア構成例を示す図。
【符号の説明】
【００６２】
１０１  送信装置、１１１  データパケット作成部、１１２  データパケット送信部、１１３  再送部、１１４  ネットワークインタフェース装置、１１５  再送回数計測部、１１６  経路管理部、１１７  経路切り替え部、１１８  再送先変更部、２０１  受信装置、２０２  受信装置、２１１  ＡＣＫパケット作成部、２１２  ＡＣＫパケット送信部、２１３  順序管理部、２１４  ネットワークインタフェース装置、２１５  後着判定部、２１６  経路管理部、２１７  経路切り替え部、３００  ネットワークスイッチ。
【図１】
0004969421.tif 000002
【図２】
0004969421.tif 000003
【図３】
0004969421.tif 000004
【図４】
0004969421.tif 000005
【図５】
0004969421.tif 000006
【図６】
0004969421.tif 000007
【図７】
0004969421.tif 000008
【図８】
0004969421.tif 000009
【図９】
0004969421.tif 000010
【図１０】
0004969421.tif 000011
【図１１】
0004969421.tif 000012
【図１２】
0004969421.tif 000013
【図１３】
0004969421.tif 000014
【図１４】
0004969421.tif 000015
【図１５】
0004969421.tif 000016
【図１６】
0004969421.tif 000017
【図１７】
0004969421.tif 000018
【図１８】
0004969421.tif 000019
【図１９】
0004969421.tif 000020
【図２０】
0004969421.tif 000021
【図２１】
0004969421.tif 000022