(57)【要約】【課題】送信対象データの送信を行っている際に、他のデータをより早急に送信することができるタイミングを設けることができる。【解決手段】第１インタフェース部３１は送信対象データを入力する。データ分割部３５は、開始データと終了データとを生成するとともに送信対象データを分割して分割データを生成する。生成部３２は、開始データと終了データと分割データとのそれぞれに対応するトランスポート層レベルの通信フレームを一つまたは複数生成する。第２インタフェース部３３は、開始データに対応する通信フレームを送信した後に分割データに対応する通信フレームを送信し、分割データに対応する全ての通信フレームを送信した後に終了データに対応する通信フレームを送信する。付与部３４は、分割データに対応する通信フレームのうち最後尾に対応する通信フレーム以外の通信フレームに分割データの送信終了を示すフラグを付与する。【選択図】図４
2012103897.tif 000002
【特許請求の範囲】
【請求項１】
トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの前記送信対象データの送信が完了しない限り他の前記送信対象データの送信が出来ない無線通信プロトコルが実装された送信モジュールであって、
前記上位層の通信プロトコルに従った処理が行われた前記送信対象データを入力する第１インタフェース部と、
前記送信対象データの送信を開始することを示す開始データと、前記送信対象データの送信を終了することを示す終了データとを生成するとともに、前記送信対象データを分割して分割データを生成するデータ分割部と、
前記開始データと、前記終了データと、前記分割データとのそれぞれに対応するトランスポート層レベルの通信フレームを一つまたは複数生成する生成部と、
前記送信対象データを送信する際、前記開始データに対応する通信フレームを送信した後に前記分割データに対応する通信フレームを送信し、前記分割データに対応する全ての通信フレームを送信した後に前記終了データに対応する通信フレームを送信する第２インタフェース部と、
前記分割データに対応する通信フレームのうち最後尾に対応する通信フレーム以外の通信フレームに前記分割データの送信終了を示すフラグを付与する付与部と、
を有することを特徴とする送信モジュール。
【請求項２】
前記付与部は、前記送信対象データに対応する前記分割データのうち、前記送信対象データの最後尾に対応する通信フレームを含む分割データ以外の分割データを対象として、前記対象となる分割データのうち少なくとも１つの分割データの最後尾に対応する通信フレームに前記送信終了を示すフラグを付与する
ことを特徴とする請求項１に記載の送信モジュール。
【請求項３】
前記第１インタフェース部は、上位層の通信プロトコルからイベントを入力し、
前記第２インタフェース部は、前記イベントが入力された場合、前記送信終了を示すフラグが付与された通信フレームを送信した直後に、前記入力されたイベントに対応する通信フレームを送信する
ことを特徴とする請求項１に記載の送信モジュール。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、送信モジュールに関する。
【背景技術】
【０００２】
画像転送プロトコルであるＰｉｃｔｕｒｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ：ＩＳＯ／ＤＩＳ  １５７４０（以下、ＰＴＰと記載する）は、トランスポート層に非依存で適用可能なため、これまでＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）では、ＵＳＢ  Ｓｔｉｌｌ  Ｉｍａｇｅ  Ｃａｐｔｕｒｅ  Ｄｅｖｉｃｅ  Ｃｌａｓｓ（以下、ＳＩＣＤと記載する）が規格化されており、ＩＰ  ｎｅｔｗｏｒｋでは、ＣＩＰＡ  ＤＣ−００５  “Ｐｉｃｔｕｒｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ“  ｏｖｅｒ  ＴＣＰ／ＩＰ  ｎｅｔｗｏｒｋｓ（以下、ＰＴＰ−ＩＰと記載する）が規格化されている。なお、ＵＳＢについての仕様は非特許文献１に開示されている。また、近年、有線無線を問わず様々な通信手段が開発されており、今後ＰＴＰの適用範囲はさらに広くなるものと思われる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｒｅｖｉｓｉｏｎ  ２．０、［ｏｎｌｉｎｅ］、Ａｐｒｉｌ  ２７，  ２０００、［平成２２年１０月２８日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｕｓｂ．ｏｒｇ／ｄｅｖｅｌｏｐｅｒｓ／ｄｏｃｓ／＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＰＴＰを各トランスポート層に適用する場合、各トランスポート層の特性に応じた実装をしなければならず、特にＰＴＰでは、Ｏｐｅｒａｔｉｏｎデータ（Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ／Ｄａｔａ／Ｒｅｓｐｏｎｓｅ）の送受信と、Ｅｖｅｎｔの送受信とを非同期に行えなければならない。トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの送信対象データの送信が完了しない限り他の送信対象データの送信が出来ないトランスポート層の場合、すなわち、あるデータを送信している間には他のデータを送信することができないトランスポート層の場合には、データの送信が完了しなければ他のデータを送信することができるタイミングを設けることができないという問題がある。例えば、Ｏｐｅｒａｔｉｏｎデータを送信している間にＥｖｅｎｔが発生し、発生したＥｖｅｎｔを早急に送信したい場合（例えばバッテリーレベルが低下したことを通知する場合）においても、Ｏｐｅｒａｔｉｏｎデータの送信を完了するまでＥｖｅｎｔを送信することができるタイミングを設けることができないという問題がある。
【０００５】
本発明は、上記事情に鑑みてなされたものであり、トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの送信対象データの送信が完了しない限り他の送信対象データの送信が出来ない無線通信プロトコルを用いた場合においても、送信対象データの送信を行っている際に、他のデータをより早急に送信することができるタイミングを設けることができる送信モジュールを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの前記送信対象データの送信が完了しない限り他の前記送信対象データの送信が出来ない無線通信プロトコルが実装された送信モジュールであって、前記上位層の通信プロトコルに従った処理が行われた前記送信対象データを入力する第１インタフェース部と、前記送信対象データの送信を開始することを示す開始データと、前記送信対象データの送信を終了することを示す終了データとを生成するとともに、前記送信対象データを分割して分割データを生成するデータ分割部と、前記開始データと、前記終了データと、前記分割データとのそれぞれに対応するトランスポート層レベルの通信フレームを一つまたは複数生成する生成部と、前記送信対象データを送信する際、前記開始データに対応する通信フレームを送信した後に前記分割データに対応する通信フレームを送信し、前記分割データに対応する全ての通信フレームを送信した後に前記終了データに対応する通信フレームを送信する第２インタフェース部と、前記分割データに対応する通信フレームのうち最後尾に対応する通信フレーム以外の通信フレームに前記分割データの送信終了を示すフラグを付与する付与部と、を有することを特徴とする送信モジュールである。
【０００７】
また、本発明の送信モジュールにおいて、前記付与部は、前記送信対象データに対応する前記分割データのうち、前記送信対象データの最後尾に対応する通信フレームを含む分割データ以外の分割データを対象として、前記対象となる分割データのうち少なくとも１つの分割データの最後尾に対応する通信フレームに前記送信終了を示すフラグを付与することを特徴とする。
【０００８】
また、本発明の送信モジュールにおいて、前記第１インタフェース部は、上位層の通信プロトコルからイベントを入力し、前記第２インタフェース部は、前記イベントが入力された場合、前記送信終了を示すフラグが付与された通信フレームを送信した直後に、前記入力されたイベントに対応する通信フレームを送信することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、第１インタフェース部は、上位層の通信プロトコルに従った処理が行われた送信対象データを入力する。データ分割部は、送信対象データの送信を開始することを示す開始データと、送信対象データの送信を終了することを示す終了データとを生成するとともに、送信対象データを分割して分割データを生成する。生成部は、開始データと、終了データと、分割データとのそれぞれに対応するトランスポート層レベルの通信フレームを一つまたは複数生成する。第２インタフェース部は、送信対象データを送信する際、開始データに対応する通信フレームを送信した後に分割データに対応する通信フレームを送信し、分割データに対応する全ての通信フレームを送信した後に終了データに対応する通信フレームを送信する。付与部は、分割データに対応する通信フレームのうち最後尾に対応する通信フレーム以外の通信フレームに分割データの送信終了を示すフラグを付与する。
【００１０】
これにより、送信対象データを分割した分割データの送信終了を示すフラグが付与された通信フレームを送信した後に、他のデータを送信することができるタイミングを設けることができるため、トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの送信対象データの送信が完了しない限り他の送信対象データの送信が出来ない無線通信プロトコルを用いた場合においても、送信対象データの送信を行っている際に、他のデータをより早急に送信することができるタイミングを設けることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態における電子カメラの構成を示したブロック図である。
【図２】本発明の第１の実施形態におけるＰＣの構成を示したブロック図である。
【図３】本発明の第１の実施形態における通信制御部が用いる通信プロトコルの階層を示した階層図である。
【図４】本発明の第１の実施形態における通信制御部の構成を示したブロック図である。
【図５】本発明の第１の実施形態におけるデータフレームの構成を示した概略図である。
【図６】本発明の第１の実施形態におけるＡＣＫフレームの構成を示した概略図である。
【図７】本発明の第１の実施形態において、分割部がデータを通信フレームに分割する分割例を示した概略図である。
【図８】本発明の第１の実施形態において、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにデータを分割送信する際のデータの送信順を示したシーケンス図である。
【図９】本発明の第１の実施形態において、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにデータを分割送信する際のデータの送信順を示したシーケンス図である。
【図１０】本発明の第１の実施形態において、Ｒｅｓｐｏｎｄｅｒが上位層からのデータをＩｎｉｔｉａｔｏｒに送信する際のデータの送信順を示したシーケンス図である。
【図１１】本発明の第１の実施形態において、Ｉｎｉｔｉａｔｏｒが上位層からのデータをＲｅｓｐｏｎｄｅｒに送信する際のデータの送信順を示したシーケンス図である。
【図１２】本発明の第１の実施形態において、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からの第２のデータを送信する際のデータの送信順を示したシーケンス図である。
【図１３】本発明の第１の実施形態において、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からの第２のデータを送信する際のデータの送信順を示したシーケンス図である。
【図１４】本発明の第１の実施形態において、上位層からの第１のデータを送信中に、上位層からの第２のデータをより早急に送信することができるタイミングを設ける方法を示した概略図である。
【図１５】本発明の第１の実施形態におけるＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐａｃｋｅｔのデータ構造を示した概略図である。
【図１６】本発明の第１の実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）のデータ構造を示した概略図である。
【図１７】本発明の第１の実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ構造を示した概略図である。
【図１８】本発明の第１の実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）のデータ構造を示した概略図である。
【図１９】本発明の第１の実施形態におけるＲｅｓｐｏｎｓｅ  Ｐａｃｋｅｔのデータ構造を示した概略図である。
【図２０】本発明の第１の実施形態におけるＥｖｅｎｔ  Ｐａｃｋｅｔのデータ構造を示した概略図である。
【図２１】本発明の第１の実施形態におけるＯｐｅｒａｔｉｏｎのＴｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅを示した遷移図である。
【図２２】本発明の第１の実施形態において、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔと、Ｄａｔａと、Ｒｅｓｐｏｎｓｅと、Ｅｖｅｎｔとの送信タイミングを示したシーケンス図である。
【図２３】本発明の第１の実施形態におけるＣａｎｃｅｌ  Ｒｅｑｕｅｓｔのデータ構造を示した概略図である。
【図２４】本発明の第１の実施形態におけるＲｅｓｅｔ  Ｒｅｑｕｅｓｔのデータ構造を示した概略図である。
【図２５】本発明の第１の実施形態において、Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔとＲｅｓｅｔ  Ｒｅｑｕｅｓｔとの送信タイミングを示したシーケンス図である。
【図２６】本発明の第１の実施形態において、データ送信を伴わないオペレーションの手順を示したシーケンス図である。
【図２７】本発明の第１の実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
【図２８】本発明の第１の実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順を示したシーケンス図である。
【図２９】本発明の第１の実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
【図３０】本発明の第１の実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順を示したシーケンス図である。
【図３１】本発明の第２の実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部のデータ構造を示した概略図である。
【図３２】本発明の第２の実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部のデータ構造を示した概略図である。
【図３３】本発明の第２の実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
【図３４】本発明の第２の実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順を示したシーケンス図である。
【図３５】本発明の第２の実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
【図３６】本発明の第２の実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順を示したシーケンス図である。
【発明を実施するための形態】
【００１２】
（第１の実施形態）
以下、本発明の第１の実施形態について図面を参照して説明する。本実施形態は、電子カメラとＰＣ（パーソナルコンピュータ）との間でデータの送受信を行っている際に、他のデータをより早急に送信することができるタイミングを設け、このタイミングに他のデータを送信する例について説明する。
【００１３】
図１は、本実施形態における電子カメラの構成を示したブロック図である。図示する例では、電子カメラ１は、撮像部１１と、記録媒体１２と、ＣＰＵ１３（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央演算処理装置）と、通信制御部１４（送信モジュール）と、操作部１５と、表示部１６と、ＲＡＭ１７（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ランダムアクセスメモリ）と、フラッシュメモリ１８とを備えている。
【００１４】
ＣＰＵ１３は、フラッシュメモリ１８に記録されている制御プログラムを読み出して実行し、ＲＡＭ１７に種々のデータを読み書きすることにより、電子カメラ１が備える各部の動作を統括的に制御する。フラッシュメモリ１８には、制御プログラムの他に、撮影パラメータや通信パラメータ（データ通信プロトコル情報等）等が記録されている。
【００１５】
撮像部１１は、被写体を撮影して撮像信号を生成するとともに、種々の画像処理を行って画像データを作成する。撮像部１１に作成された画像データは、記録媒体１２に記録される。例えば、記録媒体１２として、電子カメラ１に着脱可能なメモリカードや、電子カメラ１に固定されたハードディスクなどが用いられる。
【００１６】
操作部１５は、電子カメラ１の動作に関する指示を入力するための操作スイッチなどを備える。表示部１６は、記録媒体１２から読み出された画像データや、ユーザインタフェース画面等を表示する。通信制御部１４は、ＰＣや、プリンタや、外部記録装置等の外部機器との間で撮影画像等のデータの授受を行う通信インタフェースである。通信インタフェースとは広く情報の送受信に用いられるインタフェースのことで、ＷＬＡＮ（Ｗｉｒｅｌｅｓｓ  ＬＡＮ、無線ＬＡＮ）、Ｂｌｕｔｏｏｔｈ（登録商標）、ＩｒＤＡ（登録商標）、ＴｒａｎｓｆｅｒＪＥＴ（登録商標）、ＷｉＭｅｄｉａ（登録商標）などの無線通信に限らず、有線通信も含まれる。
【００１７】
次に、ＰＣの構成について説明する。図２は、本実施形態におけるＰＣの構成を示したブロック図である。図示する例では、ＰＣ２は、ＣＰＵ２１と、記録媒体２２と、通信制御部２３（送信モジュール）と、操作部２４と、表示部２５と、ＲＡＭ２６とを備えている。
【００１８】
ＣＰＵ２１は、記録媒体２２に記録されている制御プログラムを読み出し実行し、ＲＡＭ２６に種々のデータを読み書きすることにより、ＰＣ２が備える各部の動作を統括的に制御する。例えば、記録媒体２２として、ハードディスクやフラッシュメモリなどが用いられる。記録媒体２２には、制御プログラムの他に、文書データや画像データ等の種々のデータが記録される。
【００１９】
操作部２４は、ＰＣ２の動作に関する指示を入力するためのキーボードやマウスなどを備える。表示部２５は、ユーザインタフェース画面や、記録媒体から読み出された文書データや画像データ等を表示する。通信制御部２３は、電子カメラ１やプリンタ等の機器との間で種々のデータの授受を行う通信インタフェースである。通信インタフェースとは広く情報の送受信に用いられるインタフェースのことで、ＷＬＡＮ、Ｂｌｕｔｏｏｔｈ（登録商標）、ＩｒＤＡ（登録商標）、ＴｒａｎｓｆｅｒＪＥＴ（登録商標）、ＷｉＭｅｄｉａ（登録商標）などの無線通信に限らず、有線通信も含まれる。
【００２０】
次に、電子カメラ１の通信制御部１４と、ＰＣ２の通信制御部２３とが用いる通信プロトコルについて説明する。図３は、本実施形態における電子カメラ１の通信制御部１４と、ＰＣ２の通信制御部２３とが用いる通信プロトコルの階層を示した階層図である。ＰＴＰ機器の役割にはＩｎｉｔｉａｔｏｒ（イニシエータ）とＲｅｓｐｏｎｄｅｒ（レスポンダ）があり、Ｉｎｉｔｉａｔｏｒからのオペレーション要求にＲｅｓｐｏｎｄｅｒが応答することで画像転送や機器制御を行っている。本実施形態では、ＰＣ２がＩｎｉｔｉａｔｏｒの役割で動作し、電子カメラ１がＲｅｓｐｏｎｄｅｒの役割で動作する。
【００２１】
本実施形態の通信プロトコル層は、上位層から順に、ＰＴＰ  Ｌａｙｅｒ、Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ、ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒである。ＰＴＰ  Ｌａｙｅｒは、ＰＴＰを実現するレイヤである。ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＩＳＯ１５７４０に記載のＯｐｅｒａｔｉｏｎ／Ｄａｔａ／Ｒｅｓｐｏｎｓｅ／Ｅｖｅｎｔ等のデータをＰＴＰ  ＬａｙｅｒとＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒとの間で利用できるよう相互に変換するレイヤである。Ｔｒａｎｓｐｏｒｔ  ＬａｙｅｒをＵＳＢとした場合は、ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  ＬａｙｅｒはＳＩＣＤのことを示す。
【００２２】
Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、物理的なデータ転送を行う通信手段（トランスポート層）である。Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＷＬＡＮやＩｒＤＡ（登録商標）、ＴｒａｎｓｆｅｒＪＥＴ（登録商標）等の無線通信に限らず、ＵＳＢやＥｔｈｅｒｎｅｔ（登録商標）のような有線通信も含まれる。
【００２３】
次に、電子カメラ１の通信制御部１４とＰＣ２の通信制御部２３とについて説明する。通信制御部１４の構成と通信制御部２３の構成とは同一の構成である。図４は、本実施形態における電子カメラ１の通信制御部１４とＰＣ２の通信制御部２３との構成を示したブロック図である。
【００２４】
図示する例では、通信制御部１４，２３は、上位層の通信プロトコル（ＰＴＰ  Ｌａｙｅｒ）に従った処理を行う処理部３０と、処理部３０からのデータ送信やデータ送信キャンセル等の要求および送信対象データを入力する第１インタフェース部３１と、送信対象データを分割して分割データを生成するデータ分割部３５と、トランスポート層レベルの通信フレーム（後述する図５、図６などに示す通信フレーム）を生成する生成部３２と、生成部３２が生成した通信フレームを下位層の通信プロトコルに出力する第２インタフェース部３３と、分割データの送信終了を示すフラグを通信フレームに付与する付与部３４とを備える。生成部３２は、分割データや、Ｅｖｅｎｔなどのデータをトランスポート層レベルの情報に変換する変換部３２１と、変換部３２１がトランスポート層レベルの情報に変換した分割データを、トランスポート層レベルの通信フレームの大きさに応じて分割する分割部３２２とを備える。本実施形態では、分割データの送信終了を示すフラグとしてＭＦ（Ｍｏｒｅ  Ｆｒａｇｍｅｎｔ）を用いる。
【００２５】
なお、通信制御部１４，２３が備える処理部３０はＰＴＰ  Ｌａｙｅｒで規定された処理を行い、第１インタフェース部３１はＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒで規定された処理を行い、第２インタフェース部３３はＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで規定された処理を行う。また、通信制御部１４，２３が備えるデータ分割部３５と、生成部３２と、付与部３４とは、ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒと、Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒとのいずれかまたは両方で動作する。例えば、生成部３２が備える変換部３２１はＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒで動作し、分割部３２２はＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで動作するようにしてもよい。
【００２６】
次に、本実施形態におけるデータフレームの構成について説明する。図５は、本実施形態におけるデータフレームの構成を示した概略図である。データフレームは、上位層の通信プロトコルから送信要求された送信対象データを相手機器に送信するために使用される通信フレームである。データフレームは、送信先ＩＤと、送信元ＩＤと、コントロールデータと、ＳＤＵ（Ｓｅｒｖｉｃｅ  Ｄａｔａ  Ｕｎｉｔ）と、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）とを含む。
【００２７】
送信先ＩＤには、メッセージを送信する相手の識別子（ＩＤ）が設定される。但し、接続要求メッセージ時など相手機器が特定されていない場合は、ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ等の特殊な識別子が設定される。送信元ＩＤには自機器の識別子が設定される。コントロールデータにはフレーム種別（本データフレームの場合は‘Ｄａｔａ’）やＭＦ（Ｍｏｒｅ  Ｆｒａｍｅ）フラグ等が設定される。ＭＦフラグはデータを分割送信送するときに使用し、ＭＦ＝１の場合は後続のデータフレームがあることを示し、ＭＦ＝０の場合は後続のデータフレームがないことを示す。ＳＤＵには送信を行う上位層の通信プロトコルから送信要求されたデータが設定される。また、本データフレームをＰＤＵ（Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）とも呼ぶ。ＣＲＣにはデータフレームに設定されている値に誤りがないことを検出するための値が設定される。
【００２８】
次に、本実施形態におけるＡＣＫ（Ａｃｋｎｏｗｌｅｄｇｍｅｎｔ）フレームの構成について説明する。図６は、本実施形態におけるＡＣＫフレームの構成を示した概略図である。ＡＣＫフレームは、相手機器から送信されたフレームを受信したことを通知するために使用される通信フレームである。ＡＣＫフレームは、送信先ＩＤと、送信元ＩＤと、コントロールデータと、ＣＲＣとを含む。送信先ＩＤと、送信元ＩＤと、ＣＲＣとはデータフレームと同様である。ＡＣＫフレームに含まれるコントロールデータのフレーム種別には‘ＡＣＫ’が設定される。
【００２９】
次に、分割部３５が、データを通信フレームに分割する方法について説明する。図７は、本実施形態において、分割部３５がデータを通信フレームに分割する分割例を示した概略図である。Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒから送信要求されたデータのサイズがＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒの最大ＳＤＵサイズよりも大きい場合は、ＭＦフラグを利用してデータを分割して転送する。図示する例では、データをＰＤＵ１〜ＰＤＵ５に分割している。また、ＰＤＵ１〜ＰＤＵ４のコントロールデータのＭＦは１（ＭＦ＝１）であるため後続データフレームが存在することを示しており、ＰＤＵ５のコントロールデータのＭＦは０（ＭＦ＝０）であるためＰＤＵ５は最終データフレームであることを示している。
【００３０】
次に、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにデータを分割送信する際の送信順について説明する。図８は、本実施形態において、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにデータを分割送信する際のデータの送信順を示したシーケンス図である。図示する例は、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒに、データを分割したＰＤＵ＿Ｉ１〜ＰＤＵ＿Ｉ５を送信する例を示している。
【００３１】
Ｉｎｉｔｉａｔｏｒは、ＰＤＵ＿Ｉ１（ＭＦ＝１）をＲｅｓｐｏｎｄｅｒに送信する。ＰＤＵ＿Ｉ１（ＭＦ＝１）を受信したＲｅｓｐｏｎｄｅｒは、ＰＤＵ＿Ｉ１（ＭＦ＝１）を受信したことを通知するＡＣＫをＩｎｉｔｉａｔｏｒに送信する。また、Ｒｅｓｐｏｎｄｅｒは、受信したＰＤＵ＿Ｉ１のＭＦは１であるため、ＰＤＵ＿Ｉ１（ＭＦ＝１）の後続データフレームがＩｎｉｔｉａｔｏｒから送信されるまで待機する。
【００３２】
Ｉｎｉｔｉａｔｏｒは、ＲｅｓｐｏｎｄｅｒからＰＤＵ＿Ｉ１（ＭＦ＝１）に対するＡＣＫを受信すると、ＰＤＵ＿Ｉ１（ＭＦ＝１）の後続データフレームであるＰＤＵ＿Ｉ２（ＭＦ＝１）をＲｅｓｐｏｎｄｅｒに送信する。ＰＤＵ＿Ｉ２（ＭＦ＝１）を受信したＲｅｓｐｏｎｄｅｒは、ＰＤＵ＿Ｉ１（ＭＦ＝１）を受信した際と同様に、ＰＤＵ＿Ｉ２（ＭＦ＝１）を受信したことを通知するＡＣＫをＩｎｉｔｉａｔｏｒに送信し、ＰＤＵ＿Ｉ２（ＭＦ＝１）の後続データフレームがＩｎｉｔｉａｔｏｒから送信されるまで待機する。ＩｎｉｔｉａｔｏｒとＲｅｓｐｏｎｄｅｒとは、ＰＤＵ＿Ｉ３（ＭＦ＝１）とＰＤＵ＿Ｉ４（ＭＦ＝１）についてもＰＤＵ＿Ｉ２（ＭＦ＝１）と同様に送受信する。
【００３３】
Ｉｎｉｔｉａｔｏｒは、ＲｅｓｐｏｎｄｅｒからＰＤＵ＿Ｉ４（ＭＦ＝１）に対するＡＣＫを受信すると、ＰＤＵ＿Ｉ４（ＭＦ＝１）の後続データフレームであるＰＤＵ＿Ｉ５（ＭＦ＝０）をＲｅｓｐｏｎｄｅｒに送信する。ＰＤＵ＿Ｉ５（ＭＦ＝０）を受信したＲｅｓｐｏｎｄｅｒは、ＰＤＵ＿Ｉ５（ＭＦ＝０）を受信したことを通知するＡＣＫをＩｎｉｔｉａｔｏｒに送信する。また、受信したＰＤＵ＿Ｉ５のＭＦは０である、すなわちＰＤＵ＿Ｉ５（ＭＦ＝０）の後続データフレームは無いため、Ｒｅｓｐｏｎｄｅｒは受信処理を終了する。Ｉｎｉｔｉａｔｏｒは、ＲｅｓｐｏｎｄｅｒからＰＤＵ＿Ｉ５（ＭＦ＝０）に対するＡＣＫを受信すると、送信処理を終了する。このように、ＰＤＵを受信するＲｅｓｐｏｎｄｅｒは、ＭＦ＝０のＰＤＵを受信すると受信処理を終了する。
【００３４】
次に、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにデータを分割送信する際の送信順について説明する。図９は、本実施形態において、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにデータを分割送信する際のデータの送信順を示したシーケンス図である。図示する例は、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒに、データを分割したＰＤＵ＿Ｒ１〜ＰＤＵ＿Ｒ５を送信する例を示している。
【００３５】
Ｒｅｓｐｏｎｄｅｒは、ＰＤＵ＿Ｒ１（ＭＦ＝１）をＩｎｉｔｉａｔｏｒに送信する。ＰＤＵ＿Ｒ１（ＭＦ＝１）を受信したＩｎｉｔｉａｔｏｒは、ＰＤＵ＿Ｒ１（ＭＦ＝１）を受信したことを通知するＡＣＫをＲｅｓｐｏｎｄｅｒに送信する。また、Ｉｎｉｔｉａｔｏｒは、受信したＰＤＵ＿Ｒ１のＭＦは１であるため、ＰＤＵ＿Ｒ１（ＭＦ＝１）の後続データフレームがＲｅｓｐｏｎｄｅｒから送信されるまで待機する。
【００３６】
Ｒｅｓｐｏｎｄｅｒは、ＩｎｉｔｉａｔｏｒからＰＤＵ＿Ｒ１（ＭＦ＝１）に対するＡＣＫを受信すると、ＰＤＵ＿Ｒ１（ＭＦ＝１）の後続データフレームであるＰＤＵ＿Ｒ２（ＭＦ＝１）をＩｎｉｔｉａｔｏｒに送信する。ＰＤＵ＿Ｒ２（ＭＦ＝１）を受信したＩｎｉｔｉａｔｏｒは、ＰＤＵ＿Ｒ１（ＭＦ＝１）を受信した際と同様に、ＰＤＵ＿Ｒ２（ＭＦ＝１）を受信したことを通知するＡＣＫをＲｅｓｐｏｎｄｅｒに送信し、ＰＤＵ＿Ｒ２（ＭＦ＝１）の後続データフレームがＲｅｓｐｏｎｄｅｒから送信されるまで待機する。ＲｅｓｐｏｎｄｅｒとＩｎｉｔｉａｔｏｒとは、ＰＤＵ＿Ｒ３（ＭＦ＝１）とＰＤＵ＿Ｒ４（ＭＦ＝１）についてもＰＤＵ＿Ｒ２（ＭＦ＝１）と同様に送受信する。
【００３７】
Ｒｅｓｐｏｎｄｅｒは、ＩｎｉｔｉａｔｏｒからＰＤＵ＿Ｒ４（ＭＦ＝１）に対するＡＣＫを受信すると、ＰＤＵ＿Ｒ４（ＭＦ＝１）の後続データフレームであるＰＤＵ＿Ｒ５（ＭＦ＝０）をＩｎｉｔｉａｔｏｒに送信する。ＰＤＵ＿Ｒ５（ＭＦ＝０）を受信したＩｎｉｔｉａｔｏｒは、ＰＤＵ＿Ｒ５（ＭＦ＝０）を受信したことを通知するＡＣＫをＲｅｓｐｏｎｄｅｒに送信する。また、受信したＰＤＵ＿Ｒ５のＭＦは０である、すなわちＰＤＵ５（ＭＦ＝０）の後続データフレームは無いため、Ｉｎｉｔｉａｔｏｒは受信処理を終了する。Ｒｅｓｐｏｎｄｅｒは、ＩｎｉｔｉａｔｏｒからＰＤＵ＿Ｒ５（ＭＦ＝０）に対するＡＣＫを受信すると、送信処理を終了する。このように、ＰＤＵを受信するＩｎｉｔｉａｔｏｒは、ＭＦ＝０のＰＤＵを受信すると受信処理を終了する。
【００３８】
次に、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からのデータをＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで分割送信中（ＰＤＵ＿Ｉ１〜ＰＤＵ＿Ｉ５を送信中）に、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からのデータを送信（ＰＤＵ＿Ｒ１を送信）する際の送信順について説明する。図１０は、本実施形態において、Ｉｎｉｔｉａｔｏｒが上位層からのデータをＲｅｓｐｏｎｄｅｒに分割送信している間に、Ｒｅｓｐｏｎｄｅｒが上位層からのデータをＩｎｉｔｉａｔｏｒに送信する際のデータの送信順を示したシーケンス図である。図示する例は、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにＰＤＵ＿Ｉ１〜ＰＤＵ＿Ｉ３を送信した後、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにＰＤＵ＿Ｒ１を送信し、その後、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにＰＤＵ＿Ｉ４〜ＰＤＵ＿Ｉ５を送信する例を示している。
【００３９】
図示するように、本実施形態におけるトランスポート層の通信では、Ｉｎｉｔｉａｔｏｒが、上位層からのデータを分割してデータフレームに変換したＰＤＵ＿Ｉ１〜ＰＤＵ＿Ｉ５をＲｅｓｐｏｎｄｅｒに送信している間に、この送信とは逆向きの送信として、Ｒｅｓｐｏｎｄｅｒが、上位層からのデータをデータフレームに変換したＰＤＵ＿Ｒ１をＩｎｉｔｉａｔｏｒに送信することができる。なお、上位層からのデータの送信方法は、図８および図９に示した方法と同様である。
【００４０】
次に、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からのデータをＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで分割送信中（ＰＤＵ＿Ｒ１〜ＰＤＵ＿Ｒ５を送信中）に、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からのデータを送信（ＰＤＵ＿Ｉ１を送信）する際の送信順について説明する。図１１は、本実施形態において、Ｒｅｓｐｏｎｄｅｒが上位層からのデータをＩｎｉｔｉａｔｏｒに分割送信している間に、Ｉｎｉｔｉａｔｏｒが上位層からのデータをＲｅｓｐｏｎｄｅｒに送信する際のデータの送信順を示したシーケンス図である。図示する例は、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにＰＤＵ＿Ｒ１〜ＰＤＵ＿Ｒ３を送信した後、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにＰＤＵ＿Ｌ１を送信し、その後、ＲｅｓｐｏｎｄｅｒがＩｎｉｔｉａｔｏｒにＰＤＵ＿Ｒ４〜ＰＤＵ＿Ｒ５を送信する例を示している。
【００４１】
図示するように、本実施形態におけるトランスポート層の通信では、Ｒｅｓｐｏｎｄｅｒが、上位層からのデータを分割してデータフレームに変換したＰＤＵ＿Ｒ１〜ＰＤＵ＿Ｒ５をＩｎｉｔｉａｔｏｒに送信している間に、この送信とは逆向きの送信として、Ｉｎｉｔｉａｔｏｒが、上位層からのデータをデータフレームに変換したＰＤＵ＿Ｉ１をＲｅｓｐｏｎｄｅｒに送信することができる。なお、ＰＴＰ＿Ｄａｔａの送信方法は、図８および図９に示した方法と同様である。
【００４２】
次に、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からの第１のデータをＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで分割送信中（ＰＤＵ＿Ｉ１＿１〜ＰＤＵ＿Ｉ１＿５を送信中）に、この送信と同じ向きの送信として、上位層からの第２のデータを送信（ＰＤＵ＿Ｉ２＿１を送信）する際の送信順について説明する。図１２は、本実施形態において、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からの第１のデータを分割送信している間に、この送信と同じ向きの送信として、上位層からの第２のデータを送信する際のデータの送信順を示したシーケンス図である。図示する例は、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、ＰＤＵ＿Ｉ１＿１〜ＰＤＵ＿Ｉ１＿３を送信した後、ＰＤＵ＿Ｉ２＿１を送信し、その後、ＰＤＵ＿Ｉ１＿４〜ＰＤＵ＿Ｉ１＿５を送信する例を示している。
【００４３】
図示するように、本実施形態におけるトランスポート層の通信では、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からの第１のデータを分割してデータフレームに変換したＰＤＵ＿Ｉ１＿１〜ＰＤＵ＿Ｉ１＿５を送信している間に、この送信と同じ向きの送信として、上位層からの第２のデータをデータフレームに変換したＰＤＵ＿Ｉ２＿１を送信することができない。これは、本実施形態におけるトランスポート層の通信では、ＭＦフラグが０（ＭＦ＝０）であることを用いて上位層からのデータを分割して変換したデータフレームの区切りを判別しているためである。
【００４４】
図示する例では、Ｉｎｉｔｉａｔｏｒが送信するＰＤＵ＿Ｉ２＿１のＭＦフラグは０である。そのため、Ｒｅｓｐｏｎｄｅｒは、ＰＤＵ＿Ｉ２＿１を受信した時点で、Ｉｎｉｔｉａｔｏｒから送信された上位層からの第１のデータは、ＰＤＵ＿Ｉ１＿１と、ＰＤＵ＿Ｉ１＿２と、ＰＤＵ＿Ｉ１＿３と、ＰＤＵ＿Ｉ２＿１とを合わせたデータであると誤った判断をしてしまう。よって、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒが送信する上位層からの第１のデータ（ＰＤＵ＿Ｉ１＿１〜ＰＤＵ＿Ｉ１＿５を合わせたデータ）を正確に受信することができない。従って、本実施形態におけるトランスポート層の通信では、Ｉｎｉｔｉａｔｏｒが、Ｒｅｓｐｏｎｄｅｒに、上位層からの第１のデータを送信している間に、この送信と同じ向きの送信である、上位層からの第２のデータの送信を行うことができない。すなわち、本実施形態におけるトランスポート層の通信では、トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの送信対象データの送信が完了しない限り他の送信対象データの送信ができない。
【００４５】
次に、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からの第１のデータをＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒで分割送信中（ＰＤＵ＿Ｒ１＿１〜ＰＤＵ＿Ｒ１＿５を送信中）に、この送信と同じ向きの送信として、上位層からの第２のデータを送信（ＰＤＵ＿Ｒ２＿１を送信）する際の送信順について説明する。図１３は、本実施形態において、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からの第１のデータを分割送信している間に、この送信と同じ向きの送信として、上位層からの第２のデータを送信する際のデータの送信順を示したシーケンス図である。図示する例は、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、ＰＤＵ＿Ｒ１＿１〜ＰＤＵ＿Ｒ１＿３を送信した後、ＰＤＵ＿Ｒ２＿１を送信し、その後、ＰＤＵ＿Ｒ１＿４〜ＰＤＵ＿Ｒ１＿５を送信する例を示している。
【００４６】
図示するように、本実施形態におけるトランスポート層の通信では、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からの第１のデータを分割してデータフレームに変換したＰＤＵ＿Ｒ１＿１〜ＰＤＵ＿Ｒ１＿５を送信している間に、この送信と同じ向きの送信として、上位層からの第２のデータをデータフレームに変換したＰＤＵ＿Ｒ２＿１を送信することができない。これは、本実施形態におけるトランスポート層の通信では、ＭＦフラグが０（ＭＦ＝０）であることを用いて上位層からのデータを分割して変換したデータフレームの区切りを判別しているためである。
【００４７】
図示する例では、Ｒｅｓｐｏｎｄｅｒが送信するＰＤＵ＿Ｒ２＿１のＭＦフラグは０である。そのため、Ｉｎｉｔｉａｔｏｒは、ＰＤＵ＿Ｒ２＿１を受信した時点で、Ｒｅｓｐｏｎｄｅｒから送信された上位層からの第１のデータは、ＰＤＵ＿Ｒ１＿１と、ＰＤＵ＿Ｒ１＿２と、ＰＤＵ＿Ｒ１＿３と、ＰＤＵ＿Ｒ２＿１とを合わせたデータであると誤った判断をしてしまう。よって、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒが送信する上位層からの第１のデータ（ＰＤＵ＿Ｒ１＿１〜ＰＤＵ＿Ｒ１＿５を合わせたデータ）を正確に受信することができない。従って、本実施形態におけるトランスポート層の通信では、Ｒｅｓｐｏｎｄｅｒが、Ｉｎｉｔｉａｔｏｒに、上位層からの第１のデータを送信している間に、この送信と同じ向きの送信である、上位層からの第２のデータの送信を行うことができない。すなわち、本実施形態におけるトランスポート層の通信では、トランスポート層より上位層の通信プロトコルにおける送信対象データの送信において、１つの送信対象データの送信が完了しない限り他の送信対象データの送信ができない。
【００４８】
そこで、本実施形態では、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを直接ＰＤＵに分割して送信するのではなく、上位層からの第１のデータを複数の分割データに分割し、分割データ毎にデータフレーム（ＰＤＵ）に分割して送信する。これにより、各分割データの送信が終了した後に他のデータを送信することができるタイミングが設けられるため、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを送信している間に、この送信と同じ向きに、上位層からの第２のデータをより早急に送信することができるタイミングを設けることができる。
【００４９】
また、分割データを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを分割した複数の分割データが、全て受信したか否かを判定することができない。そのため、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、分割データの送信の開始を示すデータ（開始データ）と、分割データの送信の終了を示すデータ（終了データ）とを生成する。そして、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、複数に分割した分割データのうち、１番目の分割データを送信する前に開始データを送信し、最後の分割データを送信した後に終了データを送信する。これにより、分割データを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、開始データを受信した後から終了データを受信するまでに受信した分割データを合成することで、上位層からの第１のデータを生成することができる。
【００５０】
以下、通信制御部１４，２３が、上位層からの第１のデータを送信中に、上位層からの第２のデータをより早急に送信することができるタイミングを設ける方法について説明する。図１４は、本実施形態において、上位層からの第１のデータを送信中に、上位層からの第２のデータをより早急に送信することができるタイミングを設ける方法を示した概略図である。図示する例では、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを３つの分割データ１４０１〜１４０３に分割し、分割データ毎にＰＤＵに分割して送信している。また、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、開始データと終了データとを生成し、分割データ１４０１〜１４０３の送信を開始する前に開始データを送信し、分割データ１４０１〜１４０３の送信を終了する前に終了データを送信している。
【００５１】
具体的には、データ分割部３５は、開始データと終了データとを生成している。また、データ分割部３５は、上位層からの第１のデータ（送信対象データ）を３つの分割データ１４０１〜１４０３に分割している。また、生成部３２の変換部３２１は、開始データと終了データとをそれぞれＰＤＵに変換している。また、生成部３２の分割部３２２は、分割データ１４０１を３つに分割し、変換部３２１は、分割部３２２が３つに分割したデータをＰＤＵ１〜３に変換している。また、生成部３２の分割部３２２は、分割データ１４０２を３つに分割し、変換部３２１は、分割部３２２が３つに分割したデータをＰＤＵ４〜６に変換している。また、生成部３２の分割部３２２は、分割データ１４０３を３つに分割し、変換部３２１は、分割部３２２が３つに分割したデータをＰＤＵ７〜９に変換している。そして、付与部３４は、生成部３２の分割部３２２および変換部３２１が分割および変換したＰＤＵ１〜９のうち、分割データ１４０１の最後尾に対応するＰＤＵ３と、分割データ１４０２の最後尾に対応するＰＤＵ６と、分割データ１４０３の最後尾に対応するＰＤＵ９とに、各分割データ１４０１〜１４０３の送信終了を示すＭＦフラグ０を付与している。また、付与部３４は、ＰＤＵ１，２，４，５，７，８には、ＭＦフラグ１を付与している。そして、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒにて各ＰＤＵを送信する。
【００５２】
上位層からの第１のデータを受信するＩｎｉｔｉａｔｏｒおよびＲｅｓｐｏｎｄｅｒは、ＭＦ＝０のＰＤＵと、ＭＦ＝０のＰＤＵを受信するまでに受信したＰＤＵとを合わせたデータを１つのデータの塊であると判断する。これにより、上位層からの第１のデータを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、ＰＤＵ１〜３を合わせたデータが分割データ１４０１であると判断することができる。また、上位層からの第１のデータを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、ＰＤＵ４〜６を合わせたデータが分割データ１４０２であると判断することができる。また、上位層からの第１のデータを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、ＰＤＵ７〜９を合わせたデータが分割データ１４０３であると判断することができる。
【００５３】
さらに、上位層からの第１のデータを受信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、開始データを受信してから終了データを受信するまでに受信した分割データ１４０１〜１４０３を合成し、上位層からの第１のデータを生成することができる。
【００５４】
上述したように、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを分割データ１４０１〜１４０３に分割し、各分割データ１４０１〜１４０３毎にＰＤＵに変換して送信する。そのため、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、各分割データ１４０１〜１４０３を送信した後、上位層からの第２のデータを送信することができるタイミングを設けることができる。これにより、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第１のデータを送信している間に、上位層からの第２のデータをより早急に送信することができるタイミングを設けることができる。
【００５５】
図示する例では、分割データ１４０１のＰＤＵ３を送信した後のタイミング１４１１と、分割データ１４０２のＰＤＵ６を送信した後のタイミング１４１２とが、上位層からの第１のデータを送信している間に、上位層からの第２のデータをより早急に送信することができるタイミングである。また、上位層からの第１のデータを送信するＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒは、上位層からの第２のデータをより早急に送信することができるタイミングに、上位層からの第２のデータを受信側のＩｎｉｔｉａｔｏｒまたはＲｅｓｐｏｎｄｅｒに送信することができる。
【００５６】
次に、ＰＴＰ  Ｐａｃｋｅｔについて説明する。ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  Ｌａｙｅｒから送信要求されるＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔと、Ｄａｔａと、Ｒｅｓｐｏｎｓｅと、Ｅｖｅｎｔとを各々に対応するパケットに変換し、このパケットをＰＴＰ  ＰａｃｋｅｔとしてＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒにより送受信する。
【００５７】
図１５は、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔを変換したパケットであるＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐａｃｋｅｔのデータ構造を示した概略図である。図示する例では、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐａｃｋｅｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄ（フィールド）を有している。
【００５８】
Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ）を格納する。Ｃｏｄｅは、ＰＴＰに定義されているオペレーションコードを格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄは、オペレーションパラメータを格納する。図示する例では、Ｐａｙｌｏａｄは、Ｐａｒａｍｅｔｅｒ  １〜５の５つのオペレーションパラメータを格納している。
【００５９】
図１６〜図１８は、Ｄａｔａ  Ｐａｃｋｅｔのデータ構造を示した概略図である。図示する例では、Ｄａｔａ  Ｐａｃｋｅｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄを有している。
【００６０】
図１６は、Ｄａｔａ  Ｐａｃｋｅｔのうち、データ転送の開始を知らせるパケット（開始データ）であるＤａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）のデータ構造を示した概略図である。Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｓｔａｒｔ）を格納する。Ｃｏｄｅは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ時にセットされていたＣｏｄｅ（オペレーションコード）を格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄは、上位層から送信要求があったデータのサイズを示す情報を格納する。
【００６１】
図１７は、Ｄａｔａ  Ｐａｃｋｅｔのうち、上位層から送信要求があったデータを分割した分割データを送信するためのパケットであるＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ構造を示した概略図である。Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｄａｔａ）を格納する。Ｃｏｄｅは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ時にセットされていたＣｏｄｅ（オペレーションコード）を格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄは、オペレーション毎に定義されたデータ（分割データ）を格納する。
【００６２】
図１８は、Ｄａｔａ  Ｐａｃｋｅｔのうち、データ転送の終了を知らせるパケット（終了データ）であるＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）のデータ構造を示した概略図である。Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｅｎｄ）を格納する。Ｃｏｄｅは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ時にセットされていたＣｏｄｅ（オペレーションコード）を格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄには格納する情報がないため省略してもよい。
【００６３】
図１９は、Ｒｅｓｐｏｎｓｅを変換したパケットであるＲｅｓｐｏｎｓｅ  Ｐａｃｋｅｔのデータ構造を示した概略図である。図示する例では、Ｒｅｓｐｏｎｓｅ  Ｐａｃｋｅｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄを有している。
【００６４】
Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｒｅｓｐｏｎｓｅ）を格納する。Ｃｏｄｅは、ＰＴＰに定義されているレスポンスコードを格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄは、レスポンスパラメータを格納する。図示する例では、Ｐａｙｌｏａｄは、Ｐａｒａｍｅｔｅｒ  １〜５の５つのレスポンスパラメータを格納している。
【００６５】
図２０は、Ｅｖｅｎｔを変換したパケットであるＥｖｅｎｔ  Ｐａｃｋｅｔのデータ構造を示した概略図である。図示する例では、Ｅｖｅｎｔ  Ｐａｃｋｅｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄを有している。
【００６６】
Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｅｖｅｎｔ）を格納する。Ｃｏｄｅは、ＰＴＰに定義されているイベントコードを格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。Ｐａｙｌｏａｄは、イベントパラメータを格納する。図示する例では、Ｐａｙｌｏａｄは、Ｐａｒａｍｅｔｅｒ  １〜３の３つのイベントパラメータを格納している。
【００６７】
次に、ＯｐｅｒａｔｉｏｎのＴｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅについて説明する。図２１は、本実施形態におけるＯｐｅｒａｔｉｏｎのＴｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅを示した遷移図である。Ｏｐｅｒａｔｉｏｎは、Ｉｄｌｅ  Ｓｔａｔｅ、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐｈａｓｅ、Ｄａｔａ  Ｐｈａｓｅ、Ｒｅｓｐｏｎｓｅ  ＰｈａｓｅのＴｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅの各状態を遷移することにより実行される。
【００６８】
Ｉｄｌｅ  ＳｔａｔｅはＯｐｅｒａｔｉｏｎが実行されておらず、Ｒｅｓｐｏｎｄｅｒは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔを待っている状態である。Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐｈａｓｅは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔを送信するフェーズである。Ｄａｔａ  Ｐｈａｓｅは、Ｏｐｅｒａｔｉｏｎ毎に定義されているデータを送受信するフェーズである。Ｏｐｅｒａｔｉｏｎによっては、データ転送を伴わないものもあるため、Ｄａｔａ  Ｐｈａｓｅが無い場合もある。Ｒｅｓｐｏｎｓｅ  Ｐｈａｓｅは、Ｏｐｅｒａｔｉｏｎの結果を応答するフェーズである。
【００６９】
次に、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔと、Ｄａｔａと、Ｒｅｓｐｏｎｓｅと、Ｅｖｅｎｔとの送信タイミングについて説明する。図２２は、本実施形態において、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔと、Ｄａｔａと、Ｒｅｓｐｏｎｓｅと、Ｅｖｅｎｔとの送信タイミングを示したシーケンス図である。
【００７０】
Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔは、ＩｎｉｔｉａｔｏｒがＲｅｓｐｏｎｄｅｒにオペレーション要求をする際に送信される。Ｄａｔａは要求されたオペレーションに応じたデータが送信され、オペレーションによりＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへ送信される場合とＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒに送信される場合、あるいはＤａｔａ送信が無いものもある。ＥｖｅｎｔはＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒ、またはＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを通知する際に送信され、Ｔｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅに依存せず非同期に送信可能である。
【００７１】
次に、Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔとＲｅｓｅｔ  Ｒｅｑｕｅｓｔとについて説明する。Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔは、ＩｎｉｔｉａｔｏｒによるＯｐｅｒａｔｉｏｎキャンセル時に使用され、Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔを受け取ったＲｅｓｐｏｎｄｅｒは、実行中のＯｐｅｒａｔｉｏｎをキャンセルする。Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔは、ＩｎｉｔｉａｔｏｒによるＤｅｖｉｃｅ  Ｒｅｓｅｔ時に使用され、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを受け取ったＲｅｓｐｏｎｄｅｒは、実行中のＯｐｅｒａｔｉｏｎがあれば、これをキャンセルし、Ｔｒａｎｓａｃｔｉｏｎ  ＳｔａｔｅをＩｄｌｅ  Ｓｔａｔｅに遷移させる。
【００７２】
Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔとＲｅｓｅｔ  ＲｅｑｕｅｓｔとはＰＴＰ仕様に定義されていないトランスポート特有のＣｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔである。Ｃｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔは、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒに発行される。ＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  Ｌａｙｅｒから送信要求されるＣｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔ（Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔ、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔ）をＰＴＰ  ＰａｃｋｅｔとしてＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒにより送受信する。
【００７３】
図２３は、Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔのデータ構造を示した概略図である。図示する例では、Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄを有している。
【００７４】
Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｃｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔ）を格納する。Ｃｏｄｅは、Ｃａｎｃｅｌ  Ｒｅｑｕｅｓｔを格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、キャンセルしたいＯｐｅｒａｔｉｏｎのＴｒａｎｓａｃｔｉｏｎＩＤを格納する。Ｐａｙｌｏａｄには格納する情報がないため省略してもよい。
【００７５】
図２４は、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔのデータ構造を示した概略図である。図示する例では、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔは、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤと、ＰａｙｌｏａｄとのＦｉｅｌｄを有している。
【００７６】
Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｃｏｎｔｒｏｌ  Ｒｅｑｕｅｓｔ）を格納する。Ｃｏｄｅは、Ｒｅｓｅｔ  Ｒｅｑｕｅｓｔを格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、0ｘ００００００００を格納する。Ｐａｙｌｏａｄには格納する情報がないため省略してもよい。
【００７７】
次に、Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔとＲｅｓｅｔ  Ｒｅｑｕｅｓｔとの送信タイミングについて説明する。図２５は、本実施形態において、Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔとＲｅｓｅｔ  Ｒｅｑｕｅｓｔとの送信タイミングを示したシーケンス図である。Ｃａｎｃｅｌ  ＲｅｑｕｅｓｔおよびＲｅｓｅｔ  Ｒｅｑｕｅｓｔは、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒに送信され、Ｔｒａｎｓａｃｔｉｏｎ  Ｓｔａｔｅに依存せず非同期に送信可能である。
【００７８】
次に、データ送信を伴わないオペレーションの手順について説明する。図２６は、本実施形態において、データ送信を伴わないオペレーションの手順を示したシーケンス図である。
【００７９】
（ステップＳ２６０１）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒは、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔの送信要求を行う。
（ステップＳ２６０２）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｏｐｅｒａｔｉｏｎ  ＲｅｑｕｅｓｔをＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐａｃｋｅｔに変換する。
（ステップＳ２６０３）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  ＰａｃｋｅｔをＰＤＵ（ＭＦ＝０）に変換し、Ｒｅｓｐｏｎｄｅｒに送信する。
【００８０】
（ステップＳ２６０４）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｐａｃｋｅｔ）の受信通知を行う。
（ステップＳ２６０５）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔであれば、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒに対して、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔの受信通知を行う。
（ステップＳ２６０６）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒは、Ｏｐｅｒａｔｉｏｎを実行する。
【００８１】
（ステップＳ２６０７）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒは、Ｏｐｅｒａｔｉｏｎを実行したことを通知するために、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対してＲｅｓｐｏｎｓｅの送信要求を行う。
（ステップＳ２６０８）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＲｅｓｐｏｎｓｅをＲｅｓｐｏｎｓｅ  Ｐａｃｋｅｔに変換する。
（ステップＳ２６０９）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｒｅｓｐｏｎｓｅ  ＰａｃｋｅｔをＰＤＵ（ＭＦ＝０）に変換し、Ｉｎｉｔｉａｔｏｒに送信する。
【００８２】
（ステップＳ２６１０）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ Ｐａｃｋｅｔ（Ｒｅｓｐｏｎｓｅ  Ｐａｃｋｅｔ）の受信通知を行う。
（ステップＳ２６１１）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＲｅｓｐｏｎｓｅであれば、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒに対して、Ｒｅｓｐｏｎｓｅの受信通知を行う。
【００８３】
次に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順について説明する。図２７は、本実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
ステップＳ２７０１〜ステップＳ２７０６の処理は、図２６のステップＳ２６０１〜ステップＳ２６０６の処理と同様の処理である。
【００８４】
（ステップＳ２７０７）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒは、Ｄａｔａの送信要求を行う。
（ステップＳ２７０８）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データの送信開始を示すＤａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）を生成する。
（ステップＳ２７０９）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）をＰＤＵ（ＭＦ＝０）に変換し、Ｒｅｓｐｏｎｄｅｒに送信する。
（ステップＳ２７１０）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ））の受信通知を行う。
【００８５】
（ステップＳ２７１１）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを複数の分割データに分割する。また、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、複数の分割データのうち、１番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。
（ステップＳ２７１２）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を複数のＰＤＵに変換し、Ｒｅｓｐｏｎｄｅｒに送信する。なお、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の最後尾に対応するＰＤＵのＭＦフラグを０（ＭＦ＝０）とし、その他のＰＤＵのＭＦフラグを１（ＭＦ＝１）とする。
（ステップＳ２７１３）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵを受信する。また、ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＰＤＵ（ＭＦ＝０）を受信したため、これまで受信したＰＤＵ（ＭＦ＝１）とＰＤＵ（ＭＦ＝０）とを単一のＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ））に変換し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、受信通知を行う。
【００８６】
（ステップＳ２７１４）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを分割した複数の分割データのうち、２番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。
ステップＳ２７１５〜ステップＳ２７１６の処理は、ステップＳ２７１２〜ステップＳ２７１３の処理と同様である。なお、図示する例では、送信対象データを２つの分割データに分割した例を示しているが、３つ以上の分割データに分割した場合には、ステップＳ２７１４〜ステップＳ２７１６の処理と同様の処理を繰り返し実行し、全ての分割データの送受信を行う。
【００８７】
（ステップＳ２７１７）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを分割した全ての分割データの送信終了を示すＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）を生成する。
（ステップＳ２７１８）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）をＰＤＵ（ＭＦ＝０）に変換し、Ｒｅｓｐｏｎｄｅｒに送信する。
（ステップＳ２７１９）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ））の受信通知を行う。
（ステップＳ２７２０）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）であれば、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒに対して、分割受信したＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を単一のＤａｔａに変換し、Ｄａｔａの受信通知を行う。
ステップＳ２７２１〜ステップＳ２７２５の処理は、図２６のステップＳ２６０７〜ステップＳ２６１１の処理と同様の処理である。
【００８８】
上述したとおり、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信した後、すなわち、各分割データの送信を完了した後には、他のデータをＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができる。
【００８９】
図２７に示す例では、Ｉｎｉｔｉａｔｏｒは、１つ目の分割データの送信処理（ステップＳ２７１１〜ステップＳ２７１３）を行った後に、他のデータを送信することができるタイミングを設けている。このように、本実施形態によれば、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信している間に、他のデータをＲｅｓｐｏｎｄｅｒにより早急に送信することができるタイミングを設けることができる。
【００９０】
次に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順について説明する。図２８は、本実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順を示したシーケンス図である。
【００９１】
ステップＳ２８０１〜ステップＳ２８１３の処理は、図２７のステップＳ２７０１〜ステップＳ２７１３の処理と同様の処理である。なお、図示する例では、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒに１つ目の分割データを送信している間にＩｎｉｔｉａｔｏｒでイベントが発生している。そのため、Ｉｎｉｔｉａｔｏｒは、イベントを送信することができるタイミングが設けられた際（ステップＳ２８１３の処理終了後）に、Ｒｅｓｐｏｎｄｅｒにイベントを送信するための処理を開始する。
【００９２】
（ステップＳ２８１４）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒは、発生したイベントをＲｅｓｐｏｎｄｅｒに送信するために、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、Ｅｖｅｎｔの送信要求を行う。
（ステップＳ２８１５）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＥｖｅｎｔをＥｖｅｎｔ  Ｐａｃｋｅｔに変換する。
（ステップＳ２８１６）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｅｖｅｎｔ  ＰａｃｋｅｔをＰＤＵ（ＭＦ＝０）に変換し、Ｒｅｓｐｏｎｄｅｒに送信する。
【００９３】
（ステップＳ２８１７）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｅｖｅｎｔ  Ｐａｃｋｅｔ）の受信通知を行う。
（ステップＳ２８１８）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＥｖｅｎｔであれば、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒに対して、Ｅｖｅｎｔの受信通知を行う。
ステップＳ２８１９〜ステップＳ２８３０の処理は、図２７のステップＳ２７１４〜ステップＳ２７２５の処理と同様の処理である。
【００９４】
上述したとおり、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信した後、すなわち、各分割データの送信を完了した後には、他のデータをＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＲｅｓｐｏｎｄｅｒに送信することができる。
【００９５】
図２８に示す例では、Ｉｎｉｔｉａｔｏｒは、１つ目の分割データの送信処理（ステップＳ２８１１〜ステップＳ２８１３）を行った後に、他のデータを送信することができるタイミングを設けており、このタイミングに他のデータとしてＥｖｅｎｔをＲｅｓｐｏｎｄｅｒに送信している（ステップＳ２８１４〜ステップＳ２８１８）。このように、本実施形態によれば、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信している間に、他のデータをより早急にＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＲｅｓｐｏｎｄｅｒに送信することができる。
【００９６】
次に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順について説明する。図２９は、本実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
ステップＳ２９０１〜ステップＳ２９０６の処理は、図２６のステップＳ２６０１〜ステップＳ２６０６の処理と同様の処理である。
【００９７】
（ステップＳ２９０７）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒは、Ｄａｔａの送信要求を行う。
（ステップＳ２９０８）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データの送信開始を示すＤａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）を生成する。
（ステップＳ２９０９）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ）をＰＤＵ（ＭＦ＝０）に変換し、Ｉｎｉｔｉａｔｏｒに送信する。
（ステップＳ２９１０）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｓｔａｒｔ））の受信通知を行う。
【００９８】
（ステップＳ２９１１）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを複数の分割データに分割する。また、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、複数の分割データのうち、１番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。
（ステップＳ２９１２）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を複数のＰＤＵに変換し、Ｉｎｉｔｉａｔｏｒに送信する。なお、最後尾に対応するＰＤＵのＭＦフラグを０（ＭＦ＝０）とし、その他のＰＤＵのＭＦフラグを１（ＭＦ＝１）とする。
（ステップＳ２９１３）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵを受信する。また、ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＰＤＵ（ＭＦ＝０）を受信したため、これまで受信したＰＤＵ（ＭＦ＝１）とＰＤＵ（ＭＦ＝０）とを単一のＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、受信通知を行う。
【００９９】
（ステップＳ２９１４）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを分割した複数の分割データのうち、２番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。
ステップＳ２９１５〜ステップＳ２９１６の処理は、ステップＳ２９１２〜ステップＳ２９１３の処理と同様である。なお、図示する例では、送信対象データを２つの分割データに分割した例を示しているが、３つ以上の分割データに分割した場合には、ステップＳ２９１４〜ステップＳ２９１６の処理と同様の処理を繰り返し実行し、全ての分割データの送受信を行う。
【０１００】
（ステップＳ２９１７）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを分割した全ての分割データの送信終了を示すＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）を生成する。
（ステップＳ２９１８）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）をＰＤＵ（ＭＦ＝０）に変換し、Ｉｎｉｔｉａｔｏｒに送信する。
（ステップＳ２９１９）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ））の受信通知を行う。
（ステップＳ２９２０）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＤａｔａ  Ｐａｃｋｅｔ（Ｅｎｄ）であれば、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒに対して、分割受信したＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を単一のＤａｔａに変換し、Ｄａｔａの受信通知を行う。
ステップＳ２９２１〜ステップＳ２９２５の処理は、図２６のステップＳ２６０７〜ステップＳ２６１１の処理と同様の処理である。
【０１０１】
上述したとおり、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信した後、すなわち、各分割データの送信を完了した後には、他のデータをＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができる。
【０１０２】
図２９に示す例では、Ｒｅｓｐｏｎｄｅｒは、１つ目の分割データの送信処理（ステップＳ２９１１〜ステップＳ２９１３）を行った後に、他のデータを送信することができるタイミングを設けている。このように、本実施形態によれば、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信している間に、他のデータをより早急にＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができる。
【０１０３】
次に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順について説明する。図３０は、本実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順を示したシーケンス図である。
【０１０４】
ステップＳ３００１〜ステップＳ３０１３の処理は、図２９のステップＳ２９０１〜ステップＳ２９１３の処理と同様の処理である。なお、図示する例では、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒに１つ目の分割データを送信している間にＲｅｓｐｏｎｄｅｒでイベントが発生している。そのため、Ｒｅｓｐｏｎｄｅｒは、イベントを送信することができるタイミングが設けられた際（ステップＳ３０１３の処理終了後）に、Ｉｎｉｔｉａｔｏｒにイベントを送信するための処理を開始する。
【０１０５】
（ステップＳ３０１４）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｌａｙｅｒは、発生したイベントをＩｎｉｔｉａｔｏｒに送信するために、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、Ｅｖｅｎｔの送信要求を行う。
（ステップＳ３０１５）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＥｖｅｎｔをＥｖｅｎｔ  Ｐａｃｋｅｔに変換する。
（ステップＳ３０１６）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｅｖｅｎｔ  ＰａｃｋｅｔをＰＤＵ（ＭＦ＝０）に変換し、Ｉｎｉｔｉａｔｏｒに送信する。
【０１０６】
（ステップＳ３０１７）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｅｖｅｎｔ  Ｐａｃｋｅｔ）の受信通知を行う。
（ステップＳ３０１８）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ＰＴＰ  ＰａｃｋｅｔのＰａｃｋｅｔ  ＴｙｐｅがＥｖｅｎｔであれば、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｌａｙｅｒに対して、Ｅｖｅｎｔの受信通知を行う。
ステップＳ３０１９〜ステップＳ３０３０の処理は、図２９のステップＳ２９１４〜ステップＳ２９２５の処理と同様の処理である。
【０１０７】
上述したとおり、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信した後、すなわち、各分割データを送信した後には、他のデータをＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＩｎｉｔｉａｔｏｒに送信することができる。
【０１０８】
図３０に示す例では、Ｒｅｓｐｏｎｄｅｒは、１つ目の分割データの送信処理（ステップＳ３０１１〜ステップＳ３０１３）を行った後に、他のデータを送信することができるタイミングを設けており、このタイミングに他のデータとしてＥｖｅｎｔをＩｎｉｔｉａｔｏｒに送信している（ステップＳ３０１４〜ステップＳ３０１８）。このように、本実施形態によれば、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信している間に、他のデータをより早急にＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＩｎｉｔｉａｔｏｒに送信することができる。
【０１０９】
上述したとおり、本実施形態では、通信制御部１４，２３の第１インタフェース部３１は、上位層の通信プロトコルに従った処理を行う処理部３０から送信対象データ（上位層からの第１のデータ）を入力する。データ分割部３５は、送信対象データの送信を開始することを示す開始データと、送信対象データの送信を終了することを示す終了データとを生成する。また、データ分割部３５は、送信対象データを複数の分割データに分割して分割データを生成する。また、生成部３２の変換部３２１は、開始データと終了データとをそれぞれＰＤＵに変換することで、開始データと終了データとのそれぞれに対応するトランスポート層レベルの通信フレームを生成する。また、生成部３２の分割部３２２は、分割データを１つまたは複数に分割し、変換部３２１は、分割部３２２が１つまたは複数に分割したデータをＰＤＵに変換することで、分割データに対応するトランスポート層レベルの通信フレームを生成する。また、付与部３４は、生成部３２の分割部３２２および変換部３２１が生成した通信フレームのうち、各分割データの最後尾に対応する通信フレームに、各分割データの送信終了を示すＭＦフラグ０を付与する。また、第２インタフェース部３３は、開始データに対応する通信フレームを送信した後に分割データに対応する通信フレームを送信し、分割データに対応する全ての通信フレームを送信した後に、終了データに対応する通信フレームを送信する。
【０１１０】
これにより、送信対象データを送信する通信制御部１４，２３は、送信対象データを分割した分割データの送信終了を示すフラグが付与された通信フレームを送信した後に、送信対象データとは異なる他のデータ（例えば、イベントなど）を送信することができるタイミングを設けることができる。従って、送信対象データを送信する通信制御部１４，２３は、送信対象データを送信している間に、送信対象データとは異なる他のデータをより早急に送信することができるタイミングを設けることができる。また、送信対象データを送信する通信制御部１４，２３は、送信対象データとは異なる他のデータをより早急に送信することができるタイミングに、送信対象データとは異なる他のデータを送信することができる。
【０１１１】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。本実施形態と第１の実施形態とで異なる点は、本実施形態では、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を冗長部とデータ部とに分割して送信する点である。その他については第１の実施形態と同様である。例えば、本実施形態においても第１の実施形態と同様に、電子カメラとＰＣ（パーソナルコンピュータ）との間でデータの送受信を行っている際に、他のデータを送信する例について説明する。また、本実施形態における電子カメラ１の構成と、ＰＣ２の構成とは第１の実施形態における各装置の構成と同様である。
【０１１２】
次に、本実施形態におけるＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を分割して生成したＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部のデータ構造と、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部のデータ構造とについて説明する。図３１は、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部のデータ構造を示した概略図である。図示する例では、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部は、Ｐａｃｋｅｔ  Ｌｅｎｇｔｈと、Ｐａｃｋｅｔ  Ｔｙｐｅと、Ｃｏｄｅと、ＴｒａｎｓａｃｔｉｏｎＩＤとのＦｉｅｌｄを有している。Ｐａｃｋｅｔ  Ｌｅｎｇｔｈは、Ｐａｃｋｅｔのサイズを格納する。Ｐａｃｋｅｔ  Ｔｙｐｅは、Ｐａｃｋｅｔタイプ（Ｄａｔａ）を格納する。Ｃｏｄｅは、Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ時にセットされていたＣｏｄｅ（オペレーションコード）を格納する。ＴｒａｎｓａｃｔｉｏｎＩＤは、トランザクションを一意に特定する識別子であるＴｒａｎｓａｃｔｉｏｎ  ＩＤを格納する。
【０１１３】
図３２は、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部のデータ構造を示した概略図である。図示する例では、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部は、ＰａｙｌｏａｄのＦｉｅｌｄを有している。Ｐａｙｌｏａｄは、オペレーション毎に定義されたデータを格納する。
【０１１４】
次に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順について説明する。図３３は、本実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
ステップＳ３３０１〜ステップＳ３３１０の処理は、第１の実施形態の図２７のステップＳ２７０１〜ステップＳ２７１０の処理と同様の処理である。
【０１１５】
（ステップＳ３３１１）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを複数の分割データに分割する。また、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、複数の分割データのうち、１番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。そして、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
（ステップＳ３３１２）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＰＤＵ（ＭＦ＝０）に変換し、Ｒｅｓｐｏｎｄｅｒに送信する。
（ステップＳ３３１３）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部）の受信通知を行う。
【０１１６】
（ステップＳ３３１４）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
（ステップＳ３３１５）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部を複数のＰＤＵに変換し、Ｒｅｓｐｏｎｄｅｒに送信する。なお、最後尾に対応するＰＤＵのＭＦフラグを０（ＭＦ＝０）とし、その他のＰＤＵのＭＦフラグを１（ＭＦ＝１）とする。
（ステップＳ３３１６）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵを受信する。また、ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＰＤＵ（ＭＦ＝０）を受信したため、これまで受信したＰＤＵ（ＭＦ＝１）とＰＤＵ（ＭＦ＝０）とを単一のＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部）に変換し、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、受信通知を行う。
【０１１７】
（ステップＳ３３１７）ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ステップＳ３３１１の処理で送信対象データを分割した複数の分割データのうち、２番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。そして、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
ステップＳ３３１８〜ステップＳ３３２２の処理は、ステップＳ３３１２〜ステップＳ３３１６の処理と同様である。なお、図示する例では、送信対象データを２つの分割データに分割した例を示しているが、３つ以上の分割データに分割した場合には、ステップＳ３３１７〜ステップＳ３３２２の処理と同様の処理を繰り返し実行し、全ての分割データの送受信を行う。
【０１１８】
ステップＳ３３２３〜ステップＳ３３３１の処理は、第１の実施形態の図２７のステップＳ２７１７〜ステップＳ２７２５の処理と同様の処理である。
【０１１９】
上述したとおり、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信した後、すなわち、各分割データを送信した後には、他のデータをＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができる。また、Ｉｎｉｔｉａｔｏｒは、ＲｅｓｐｏｎｄｅｒにＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を送信する際に、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を冗長部とデータ部とに分割して送信している。
【０１２０】
図３３に示す例では、Ｉｎｉｔｉａｔｏｒは、１つ目の分割データの送信処理（ステップＳ３３１１〜ステップＳ３３１６）を行った後に、他のデータを送信することができるタイミングを設けている。このように、本実施形態によれば、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信している間に、他のデータをより早急にＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができる。
【０１２１】
次に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順について説明する。図３４は、本実施形態において、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒへのデータ送信を伴うオペレーション時に、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒにイベントを送信する際の手順を示したシーケンス図である。
【０１２２】
ステップＳ３４０１〜ステップＳ３４１６の処理は、図３３のステップＳ３３０１〜ステップＳ３３１６の処理と同様の処理である。なお、図示する例では、ＩｎｉｔｉａｔｏｒからＲｅｓｐｏｎｄｅｒに１つ目の分割データを送信している間にＩｎｉｔｉａｔｏｒでイベントが発生している。そのため、Ｉｎｉｔｉａｔｏｒは、イベントを送信することができるタイミングが設けられた際（ステップＳ３４１６の処理終了後）に、Ｒｅｓｐｏｎｄｅｒにイベントを送信するための処理を開始する。
【０１２３】
ステップＳ３４１７〜ステップＳ３４２１の処理は、第１の実施形態の図２８のステップＳ２８１４〜ステップＳ２８１８の処理と同様である。
ステップＳ３４２２〜ステップＳ３４３６の処理は、図３３のステップＳ３３２３〜ステップＳ３３３１の処理と同様の処理である。
【０１２４】
上述したとおり、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｉｎｉｔｉａｔｏｒは、各分割データを１つまたは複数のＰＤＵに分割してＲｅｓｐｏｎｄｅｒに送信した後、すなわち、各分割データの送信を完了した後には、他のデータをＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＲｅｓｐｏｎｄｅｒに送信することができる。また、Ｉｎｉｔｉａｔｏｒは、ＲｅｓｐｏｎｄｅｒにＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を送信する際に、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を冗長部とデータ部とに分割して送信している。
【０１２５】
図３４に示す例では、Ｉｎｉｔｉａｔｏｒは、１つ目の分割データの送信処理（ステップＳ３４１１〜ステップＳ３４１６）を行った後に、他のデータを送信することができるタイミングを設けており、このタイミングに他のデータとしてＥｖｅｎｔをＲｅｓｐｏｎｄｅｒに送信している（ステップＳ３４１７〜ステップＳ３４２１）。このように、本実施形態によれば、Ｉｎｉｔｉａｔｏｒは、Ｒｅｓｐｏｎｄｅｒに送信対象データを送信している間に、他のデータをより早急にＲｅｓｐｏｎｄｅｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＲｅｓｐｏｎｄｅｒに送信することができる。
【０１２６】
次に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順について説明する。図３５は、本実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーションの手順を示したシーケンス図である。
ステップＳ３５０１〜ステップＳ３５１０の処理は、第１の実施形態の図２９のステップＳ２９０１〜ステップＳ２９１０の処理と同様の処理である。
【０１２７】
（ステップＳ３５１１）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、送信対象データを複数の分割データに分割する。また、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、複数の分割データのうち、１番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。そして、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
（ステップＳ３５１２）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＰＤＵ（ＭＦ＝０）に変換し、Ｉｎｉｔｉａｔｏｒに送信する。
（ステップＳ３５１３）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵ（ＭＦ＝０）を受信し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、ＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部）の受信通知を行う。
【０１２８】
（ステップＳ３５１４）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
（ステップＳ３５１５）ＲｅｓｐｏｎｄｅｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部を複数のＰＤＵに変換し、Ｉｎｉｔｉａｔｏｒに送信する。なお、最後尾に対応するＰＤＵのＭＦフラグを０（ＭＦ＝０）とし、その他のＰＤＵのＭＦフラグを１（ＭＦ＝１）とする。
（ステップＳ３５１６）ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、送信されたＰＤＵを受信する。また、ＩｎｉｔｉａｔｏｒのＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒは、ＰＤＵ（ＭＦ＝０）を受信したため、これまで受信したＰＤＵ（ＭＦ＝１）とＰＤＵ（ＭＦ＝０）とを単一のＰＴＰ  Ｐａｃｋｅｔ（Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）のデータ部）に変換し、ＩｎｉｔｉａｔｏｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒに対して、受信通知を行う。
【０１２９】
（ステップＳ３５１７）ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、ステップＳ３３１１の処理で送信対象データを分割した複数の分割データのうち、２番目の分割データをＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）に変換する。そして、ＲｅｓｐｏｎｄｅｒのＰＴＰ  Ｃｏｎｖｅｒｓｉｏｎ  Ｌａｙｅｒは、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）の冗長部をＴｒａｎｓｐｏｒｔ  Ｌａｙｅｒに入力する。
ステップＳ３５１８〜ステップＳ３５２２の処理は、ステップＳ３５１２〜ステップＳ３５１６の処理と同様である。なお、図示する例では、送信対象データを２つの分割データに分割した例を示しているが、３つ以上の分割データに分割した場合には、ステップＳ３５１７〜ステップＳ３５２２の処理と同様の処理を繰り返し実行し、全ての分割データの送受信を行う。
【０１３０】
ステップＳ３５２３〜ステップＳ３５３１の処理は、第１の実施形態の図２９のステップＳ２９１７〜ステップＳ２９２５の処理と同様の処理である。
【０１３１】
上述したとおり、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信した後、すなわち、各分割データを送信した後には、他のデータをＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができる。また、Ｒｅｓｐｏｎｄｅｒは、ＩｎｉｔｉａｔｏｒにＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を送信する際に、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を冗長部とデータ部とに分割して送信している。
【０１３２】
図３５に示す例では、Ｒｅｓｐｏｎｄｅｒは、１つ目の分割データの送信処理（ステップＳ３５１１〜ステップＳ３５１６）を行った後に、他のデータを送信することができるタイミングを設けている。このように、本実施形態によれば、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信している間に、他のデータをより早急にＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができる。
【０１３３】
次に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順について説明する。図３６は、本実施形態において、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒへのデータ送信を伴うオペレーション時に、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒにイベントを送信する際の手順を示したシーケンス図である。
【０１３４】
ステップＳ３６０１〜ステップＳ３６１６の処理は、図３５のステップＳ３５０１〜ステップＳ３５１６の処理と同様の処理である。なお、図示する例では、ＲｅｓｐｏｎｄｅｒからＩｎｉｔｉａｔｏｒに１つ目の分割データを送信している間にＲｅｓｐｏｎｄｅｒでイベントが発生している。そのため、Ｒｅｓｐｏｎｄｅｒは、イベントを送信することができるタイミングが設けられた際（ステップＳ３６１６の処理終了後）に、Ｉｎｉｔｉａｔｏｒにイベントを送信するための処理を開始する。
【０１３５】
ステップＳ３６１７〜ステップＳ３６２１の処理は、第１の実施形態の図３０のステップＳ３０１４〜ステップＳ３０１８の処理と同様である。
ステップＳ３６２２〜ステップＳ３６３６の処理は、図３５のステップＳ３５２３〜ステップＳ３５３１の処理と同様の処理である。
【０１３６】
上述したとおり、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信する際に、送信対象データを複数の分割データに分割する。そして、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信する際に、最後尾のＰＤＵのＭＦフラグを０（ＭＦ＝０）とする。そのため、Ｒｅｓｐｏｎｄｅｒは、各分割データを１つまたは複数のＰＤＵに分割してＩｎｉｔｉａｔｏｒに送信した後、すなわち、各分割データを送信した後には、他のデータをＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＩｎｉｔｉａｔｏｒに送信することができる。また、Ｒｅｓｐｏｎｄｅｒは、ＩｎｉｔｉａｔｏｒにＤａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を送信する際に、Ｄａｔａ  Ｐａｃｋｅｔ（Ｄａｔａ）を冗長部とデータ部とに分割して送信している。
【０１３７】
図３６に示す例では、Ｒｅｓｐｏｎｄｅｒは、１つ目の分割データの送信処理（ステップＳ３６１１〜ステップＳ３６１６）を行った後に、他のデータを送信することができるタイミングを設けており、このタイミングに他のデータとしてＥｖｅｎｔをＩｎｉｔｉａｔｏｒに送信している（ステップＳ３６１７〜ステップＳ３６２１）。このように、本実施形態によれば、Ｒｅｓｐｏｎｄｅｒは、Ｉｎｉｔｉａｔｏｒに送信対象データを送信している間に、他のデータをより早急にＩｎｉｔｉａｔｏｒに送信することができるタイミングを設けることができ、このタイミングに他のデータをＩｎｉｔｉａｔｏｒに送信することができる。
【０１３８】
以上、この発明の第１の実施形態および第２の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【０１３９】
１・・・電子カメラ、２・・・ＰＣ、１１・・・撮像部、１２・・・記録媒体、１３，２１・・・ＣＰＵ、１４，２３・・・通信制御部、１５，２４・・・操作部、１６，２５・・・表示部、１７，２６・・・ＲＡＭ、１８・・・フラッシュメモリ、２２・・・記録媒体、３０・・・処理部、３１・・・第１インタフェース部、３２・・・生成部、３３・・・第２インタフェース部、３４・・・付与部、３５・・・データ分割部、３２１・・・変換部、３２２・・・分割部
【図１】
2012103897.tif 000003
【図２】
2012103897.tif 000004
【図３】
2012103897.tif 000005
【図４】
2012103897.tif 000006
【図５】
2012103897.tif 000007
【図６】
2012103897.tif 000008
【図７】
2012103897.tif 000009
【図８】
2012103897.tif 000010
【図９】
2012103897.tif 000011
【図１０】
2012103897.tif 000012
【図１１】
2012103897.tif 000013
【図１２】
2012103897.tif 000014
【図１３】
2012103897.tif 000015
【図１４】
2012103897.tif 000016
【図１５】
2012103897.tif 000017
【図１６】
2012103897.tif 000018
【図１７】
2012103897.tif 000019
【図１８】
2012103897.tif 000020
【図１９】
2012103897.tif 000021
【図２０】
2012103897.tif 000022
【図２１】
2012103897.tif 000023
【図２２】
2012103897.tif 000024
【図２３】
2012103897.tif 000025
【図２４】
2012103897.tif 000026
【図２５】
2012103897.tif 000027
【図２６】
2012103897.tif 000028
【図２７】
2012103897.tif 000029
【図２８】
2012103897.tif 000030
【図２９】
2012103897.tif 000031
【図３０】
2012103897.tif 000032
【図３１】
2012103897.tif 000033
【図３２】
2012103897.tif 000034
【図３３】
2012103897.tif 000035
【図３４】
2012103897.tif 000036
【図３５】
2012103897.tif 000037
【図３６】
2012103897.tif 000038