(57)【要約】【課題】ユーザの手間を軽減することが可能なデータ中継装置を提供すること。【解決手段】データ中継装置１０００は、処理装置と入出力装置との間のデータの伝送を中継する。データ中継装置は、接続されている入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得するリソース情報取得部１００１と、接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付けるリソース要求受付部１００２と、取得されたリソース情報に基づいて、リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した処理装置に対して割り当てるリソース割当部１００３と、処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継するデータ中継部１００４と、を備える。【選択図】図１０
2013008169.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置であって、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得するリソース情報取得手段と、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付けるリソース要求受付手段と、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当てるリソース割当手段と、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継するデータ中継手段と、
を備えるデータ中継装置。
【請求項２】
請求項１に記載のデータ中継装置であって、
前記リソース量情報は、複数のリソースを表す情報であり、
前記処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行するように構成され、
前記データ中継手段は、前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送し、且つ、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継装置。
【請求項３】
請求項２に記載のデータ中継装置であって、
前記データ中継手段は、前記処理装置に対して割り当てられた複数のリソースの一部である第１のリソース群を第１の入出力装置が有し、且つ、当該複数のリソースの他部である第２のリソース群を第２の入出力装置が有している場合、当該第１のリソース群のうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、当該第２のリソース群のうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送するように構成されたデータ中継装置。
【請求項４】
請求項２又は請求項３に記載のデータ中継装置であって、
前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースと、当該処理装置と、を対応付けた第１の割当情報を記憶する第１の割当情報記憶手段を備え、
前記データ中継手段は、前記記憶されている第１の割当情報に基づいて、前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送するように構成されたデータ中継装置。
【請求項５】
請求項２乃至請求項４のいずれかに記載のデータ中継装置であって、
前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースと、当該処理装置と、を対応付けた第２の割当情報を記憶する第２の割当情報記憶手段を備え、
前記データ中継手段は、前記記憶されている第２の割当情報に基づいて、前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継装置。
【請求項６】
請求項１乃至請求項５のいずれかに記載のデータ中継装置であって、
前記入出力装置は、ネットワークプロセッサであり、
前記リソースは、マイクロエンジンであるデータ中継装置。
【請求項７】
請求項１乃至請求項６のいずれかに記載のデータ中継装置であって、
ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）エクスプレス・スイッチであるデータ中継装置。
【請求項８】
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に適用され、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当て、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する、データ中継方法。
【請求項９】
請求項８に記載のデータ中継方法であって、
前記リソース量情報は、複数のリソースを表す情報であり、
前記処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行するように構成され、
前記データ中継方法は、
前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送し、且つ、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継方法。
【請求項１０】
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当て、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する、処理を実行させるためのデータ中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置と入出力装置との間のデータの伝送を中継するデータ中継装置に関する。
【背景技術】
【０００２】
処理装置と入出力装置との間のデータの伝送を中継するデータ中継装置が知られている。例えば、データ中継装置として、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）エクスプレス・スイッチが知られている。
【０００３】
この種のデータ中継装置の一つとして、特許文献１に記載のデータ中継装置は、処理装置に対して割り当てるリソースを特定する情報としてユーザによって入力された情報を受け付ける。データ中継装置は、受け付けた情報により特定されるリソースを処理装置に対して割り当てる。データ中継装置は、処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３１７０２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、上記データ中継装置は、ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力しなければ、当該リソースを当該処理装置に割り当てることができない。従って、ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力する手間が煩雑であるという問題があった。
【０００６】
このため、本発明の目的は、上述した課題である「ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力する手間が煩雑であること」を解決することが可能なデータ中継装置を提供することにある。
【課題を解決するための手段】
【０００７】
かかる目的を達成するため本発明の一形態であるデータ中継装置は、
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継する装置である。
【０００８】
更に、このデータ中継装置は、
上記データ中継装置に接続されている上記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得するリソース情報取得手段と、
上記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付けるリソース要求受付手段と、
上記リソース要求が受け付けられた場合、上記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した上記処理装置に対して割り当てるリソース割当手段と、
上記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継するデータ中継手段と、
を備える。
【０００９】
また、本発明の他の形態であるデータ中継方法は、
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に適用され、
上記データ中継装置に接続されている上記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
上記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
上記リソース要求が受け付けられた場合、上記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した上記処理装置に対して割り当て、
上記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する方法である。
【００１０】
また、本発明の他の形態であるデータ中継プログラムは、
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に、
上記データ中継装置に接続されている上記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
上記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
上記リソース要求が受け付けられた場合、上記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した上記処理装置に対して割り当て、
上記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する、処理を実行させるためのプログラムである。
【発明の効果】
【００１１】
本発明は、以上のように構成されることにより、ユーザの手間を軽減することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態に係るデータ処理システムの構成を表す図である。
【図２】本発明の第１実施形態に係るデータ中継装置の構成を表すブロック図である。
【図３】本発明の第１実施形態に係る第１の入出力装置の構成を表すブロック図である。
【図４】本発明の第１実施形態に係る第２の入出力装置の構成を表すブロック図である。
【図５】本発明の第１実施形態に係るデータ中継装置が記憶する第１の割当情報を示したテーブルである。
【図６】本発明の第１実施形態に係るデータ中継装置が記憶する、第２の割当情報及び第３の割当情報を示したテーブルである。
【図７】本発明の第１実施形態に係るデータ処理システムの作動のうちの、リソースを割り当てる際の作動を示したシーケンス図である。
【図８】本発明の第１実施形態に係るデータ処理システムの作動のうちの、第１の処理装置からの入力データに基づく処理を実行する際の作動を示したシーケンス図である。
【図９】本発明の第１実施形態に係るデータ処理システムの作動のうちの、第２の処理装置からの入力データに基づく処理を実行する際の作動を示したシーケンス図である。
【図１０】本発明の第２実施形態に係るデータ中継装置の構成を表すブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明に係る、データ中継装置、データ中継方法、及び、データ中継プログラム、の各実施形態について図１〜図１０を参照しながら説明する。
【００１４】
＜第１実施形態＞
（構成）
図１に示したように、第１実施形態に係るデータ処理システム１は、第１の処理装置（ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）＃１）１０１と、第１の入出力制御部（ＲＣ（Ｒｏｏｔ  Ｃｏｍｐｌｅｘ）＃１）１０２と、第１のメモリ（ＭＥＭ＃１）１０３と、第２の処理装置（ＣＰＵ＃２）２０１と、第２の入出力制御部（ＲＣ＃２）２０２と、第２のメモリ（ＭＥＭ＃２）２０３と、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）エクスプレス・スイッチ（ＰＣＩｅＳＷ）３００と、第１の入出力装置（ＥＰ（Ｅｎｄ  Ｐｏｉｎｔ）＃１）４００と、第２の入出力装置（ＥＰ＃２）５００と、を備える。
【００１５】
ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１及び第２の処理装置２０１のそれぞれと、第１の入出力装置４００及び第２の入出力装置５００のそれぞれと、の間のデータの伝送を中継する。ＰＣＩエクスプレス・スイッチ３００は、データ中継装置を構成している。
【００１６】
ＰＣＩエクスプレス・スイッチ３００は、第１のポート（ポート＃１）３０１と、第２のポート（ポート＃２）３０２と、第３のポート（ポート＃３）３０３と、第４のポート（ポート＃４）３０４と、を備える。
【００１７】
第１の処理装置１０１は、第１の入出力制御部１０２を介して、第１のメモリ１０３と接続されている。第１の処理装置１０１は、第１の入出力制御部１０２、及び、第１のポート３０１を介して、ＰＣＩエクスプレス・スイッチ３００と接続されている。
【００１８】
第１の処理装置１０１は、第１のメモリ１０３を用いることにより、予め定められた第１のメイン処理を実行する。更に、第１の処理装置１０１は、後述するように、第１の入出力装置４００、及び／又は、第２の入出力装置５００が有するリソースに、第１のサブ処理（全体処理）を実行させる。その後、第１の処理装置１０１は、当該リソースから第１のサブ処理の実行結果を受け取り（受け付け）、受け取った実行結果に基づいて上記第１のメイン処理を実行する。
【００１９】
第２の処理装置２０１は、第２の入出力制御部２０２を介して、第２のメモリ２０３と接続されている。第２の処理装置２０１は、第２の入出力制御部２０２、及び、第２のポート３０２を介して、ＰＣＩエクスプレス・スイッチ３００と接続されている。
【００２０】
第２の処理装置２０１は、第２のメモリ２０３を用いることにより、予め定められた第２のメイン処理を実行する。更に、第２の処理装置２０１は、後述するように、第１の入出力装置４００、及び／又は、第２の入出力装置５００が有するリソースに、第２のサブ処理（全体処理）を実行させる。その後、第２の処理装置２０１は、当該リソースから第２のサブ処理の実行結果を受け取り、受け取った実行結果に基づいて上記第２のメイン処理を実行する。
【００２１】
第１の入出力装置４００は、ポート４０１を備える。本例では、第１の入出力装置４００は、通信されるパケットに対する処理（例えば、パケットを転送するための処理）を実行するネットワークプロセッサである。第１の入出力装置４００は、ポート４０１、及び、第３のポート３０３を介して、ＰＣＩエクスプレス・スイッチ３００と接続されている。
【００２２】
第１の入出力装置４００は、第１の処理装置１０１、及び／又は、第２の処理装置２０１からの要求に応じて、第１のサブ処理を実行する。第１の入出力装置４００は、第１のサブ処理の実行結果を、第１の処理装置１０１、及び／又は、第２の処理装置２０１へ出力する。
【００２３】
第２の入出力装置５００は、ポート５０１を備える。本例では、第２の入出力装置５００は、第１の入出力装置４００と同様に、ネットワークプロセッサである。第２の入出力装置５００は、ポート５０１、及び、第４のポート３０４を介して、ＰＣＩエクスプレス・スイッチ３００と接続されている。
【００２４】
第２の入出力装置５００は、第１の処理装置１０１、及び／又は、第２の処理装置２０１からの要求に応じて、第２のサブ処理を実行する。第２の入出力装置５００は、第２のサブ処理の実行結果を、第１の処理装置１０１、及び／又は、第２の処理装置２０１へ出力する。
【００２５】
更に、ＰＣＩエクスプレス・スイッチ３００は、図２に示したように、中継制御部３１０と、リソース情報記憶部３２０と、ＲＴＯ（Ｒｏｕｔｉｎｇ  Ｔｏ  Ｏｕｔｓｉｄｅ）部３３０と、ＲＴＩ（Ｒｏｕｔｉｎｇ  Ｔｏ  Ｉｎｓｉｄｅ）部３４０と、を備える。中継制御部３１０は、リソース情報取得手段、リソース要求受付手段、及び、リソース割当手段を構成している。また、ＲＴＯ部３３０、及び、ＲＴＩ部３４０は、データ中継手段を構成している。
【００２６】
ＲＴＯ部３３０は、中継テーブル記憶部（第１の割当情報記憶手段）３３１と、受信部３３２と、データ記憶部３３３と、送信部３３４と、を備える。
ＲＴＩ部３４０は、中継テーブル記憶部（第２の割当情報記憶手段）３４１と、受信部３４２と、データ記憶部３４３と、送信部３４４と、を備える。
【００２７】
また、第１の入出力装置４００は、図３に示したように、指示部４１０と、複数（本例では、８個）のリソース４２１〜４２８（リソース＃１１〜リソース＃１８）と、を備える。本例では、各リソース４２１〜４２８は、マイクロエンジンである。
【００２８】
同様に、第２の入出力装置５００は、図４に示したように、指示部５１０と、複数（本例では、８個）のリソース５２１〜５２８（リソース＃２１〜リソース＃２８）と、を備える。本例では、各リソース５２１〜５２８は、マイクロエンジンである。
【００２９】
中継制御部３１０は、ＰＣＩエクスプレス・スイッチ３００に接続されている入出力装置（本例では、第１の入出力装置４００及び第２の入出力装置５００）のそれぞれに対して、リソース情報を取得する。リソース情報は、入出力装置が有するリソースを表す情報である。
【００３０】
本例では、リソース情報は、入出力装置が有するリソースの数を表す情報である。なお、リソース情報は、リソースの処理能力を表す情報であってもよい。また、リソース情報は、リソースが記憶装置である場合には、記憶容量を表す情報であってもよい。
中継制御部３１０は、取得されたリソース情報をリソース情報記憶部３２０に記憶させる。
【００３１】
中継制御部３１０は、ＰＣＩエクスプレス・スイッチ３００に接続されている処理装置（本例では、第１の処理装置１０１、又は、第２の処理装置２０１）により出力されたリソース要求を受け付ける。リソース要求は、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表す情報である。
【００３２】
本例では、リソース量情報は、リソースの数を表す情報である。なお、リソース量情報は、リソースの処理能力を表す情報であってもよい。また、リソース量情報は、リソースが記憶装置である場合には、記憶容量を表す情報であってもよい。
【００３３】
中継制御部３１０は、リソース要求が受け付けられた場合、リソース情報記憶部３２０に記憶されているリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した処理装置に対して割り当てる。
【００３４】
具体的には、中継制御部３１０は、上記処理装置に対して割り当てたリソースに順位を付与する。中継制御部３１０は、図５に示したように、上記処理装置を特定するための情報である送信元特定情報と、付与された順位が最上位であるリソースを特定するための情報である転送先特定情報と、を対応付けた第１の割当情報を中継テーブル記憶部３３１に記憶させる。
【００３５】
ここでは、送信元特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている処理装置を特定するための情報である。本例では、送信元特定情報は、処理装置のアドレスを表す情報である。なお、送信元特定情報は、処理装置のＢＤＦ（Ｂｕｓ／Ｄｅｖｉｃｅ／Ｆｕｎｃｔｉｏｎ）を表す情報であってもよい。
【００３６】
ここでは、転送先特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている入出力装置を特定するための情報と、リソースを特定するための情報と、を含む。本例では、転送先特定情報は、入出力装置のアドレスを表す情報と、リソースを識別するための情報（例えば、リソースに固有の番号等）と、を含む。なお、転送先特定情報は、入出力装置のＢＤＦ（Ｂｕｓ／Ｄｅｖｉｃｅ／Ｆｕｎｃｔｉｏｎ）を表す情報を含んでいてもよい。
【００３７】
更に、中継制御部３１０は、図６に示したように、付与された順位が最下位であるリソースを特定するための情報である送信元特定情報と、上記処理装置を特定するための情報である転送先特定情報と、を対応付けた第２の割当情報を中継テーブル記憶部３４１に記憶させる。
【００３８】
ここでは、送信元特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている入出力装置を特定するための情報と、リソースを特定するための情報と、を含む。更に、転送先特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている処理装置を特定するための情報である。
【００３９】
加えて、中継制御部３１０は、図６に示したように、１つの処理装置に対して割り当てたリソースの数が、２以上である場合において、割り当てた複数のリソースを有する入出力装置の数が、２以上である（即ち、複数の入出力装置が、割り当てたリソースを有している）場合、第３の割当情報を中継テーブル記憶部３４１に記憶させる。
【００４０】
ここでは、上記処理装置に対して割り当てられた複数のリソースの一部である第１のリソース群を第１の入出力装置４００が有し、且つ、当該複数のリソースの他部である第２のリソース群を第２の入出力装置５００が有している場合を想定する。
【００４１】
この場合、第３の割当情報は、第１のリソース群（第１の入出力装置４００が有するリソース）のうちの、付与された順位が最下位であるリソースを特定するための情報である送信元特定情報と、第２のリソース群（第２の入出力装置５００が有するリソース）のうちの、付与された順位が最上位であるリソースを特定するための情報である引継先特定情報と、を対応付けた情報である。
【００４２】
ここでは、送信元特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている入出力装置を特定するための情報と、リソースを特定するための情報と、を含む。更に、引継先特定情報は、ＰＣＩエクスプレス・スイッチ３００に接続されている入出力装置を特定するための情報と、リソースを特定するための情報と、を含む。
【００４３】
第１の処理装置１０１は、第１のサブ処理を実行させるための第１のプログラムをＰＣＩエクスプレス・スイッチ３００へ送信する。ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１から第１のプログラムを受け付ける。第１のプログラムは、全体処理としての第１のサブ処理を、割り当てられたリソースの数に分割した分割処理のそれぞれを指示する、複数のサブプログラムを含む。
【００４４】
ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１に対して割り当てたリソースに、サブプログラムを１つずつ送信する。本例では、ＰＣＩエクスプレス・スイッチ３００は、付与された順位が上位であるリソースほど、全体処理における先頭側の分割処理を実行するように、サブプログラムを送信する。
【００４５】
このサブプログラムは、分割処理の実行結果（引継データ）を、後続する分割処理を実行するリソースへ引き継ぐための処理を含む処理を指示する。
【００４６】
このようにして、処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行する。
【００４７】
ＲＴＯ部３３０の受信部３３２は、処理装置（本例では、第１の処理装置１０１、又は、第２の処理装置２０１）から、入力データを受信する（受け付ける）。受信部３３２は、受信された入力データと、当該入力データを送信してきた処理装置を特定するための処理装置特定情報と、を対応付けてデータ記憶部３３３に記憶させる。
【００４８】
送信部３３４は、データ記憶部３３３に記憶されている入力データと、当該入力データと対応付けて記憶されている処理装置特定情報と、を取得する（読み出す）。送信部３３４は、取得された処理装置特定情報により特定される処理装置と同一の処理装置を特定する送信元特定情報と対応付けて中継テーブル記憶部３３１に記憶されている転送先特定情報を取得する。送信部３３４は、取得された転送先特定情報により特定されるリソースへ、上記入力データを送信（転送）する。
【００４９】
ＲＴＩ部３４０の受信部３４２は、リソースから、出力データを受信する。受信部３４２は、受信された出力データと、当該出力データを送信してきたリソースを特定するためのリソース特定情報と、を対応付けてデータ記憶部３４３に記憶させる。
【００５０】
送信部３４４は、データ記憶部３４３に記憶されている出力データと、当該出力データと対応付けて記憶されているリソース特定情報と、を取得する。送信部３４４は、取得されたリソース特定情報により特定されるリソースと同一のリソースを特定する送信元特定情報と対応付けて中継テーブル記憶部３４１に記憶されている転送先特定情報を取得する。送信部３４４は、取得された転送先特定情報により特定される処理装置へ、上記出力データを送信する。
【００５１】
更に、ＲＴＩ部３４０の受信部３４２は、リソースから、引継データを受信する。受信部３４２は、受信された引継データと、当該引継データを送信してきたリソースを特定するためのリソース特定情報と、を対応付けてデータ記憶部３４３に記憶させる。
【００５２】
送信部３４４は、データ記憶部３４３に記憶されている引継データと、当該引継データと対応付けて記憶されているリソース特定情報と、を取得する。送信部３４４は、取得されたリソース特定情報により特定されるリソースと同一のリソースを特定する送信元特定情報と対応付けて中継テーブル記憶部３４１に記憶されている引継先特定情報を取得する。送信部３４４は、取得された引継先特定情報により特定されるリソースへ、上記引継データを送信する。
【００５３】
このような構成により、ＲＴＯ部３３０は、処理装置から受け付けた入力データを、当該処理装置に対して割り当てられた複数のリソースのうちの、全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送する。更に、ＲＴＩ部３４０は、処理装置に対して割り当てられた複数のリソースのうちの、全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送する。
【００５４】
更に、ＲＴＩ部３４０は、複数の入出力装置（本例では、第１の入出力装置４００及び第２の入出力装置５００）が、１つの処理装置に対して割り当てたリソースを有している場合、第１のリソース群のうちの、全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、第２のリソース群のうちの、全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送する。
【００５５】
（作動）
次に、上述したデータ処理システム１の作動について図７〜図９を参照しながら説明する。
先ず、図７に示したように、ＰＣＩエクスプレス・スイッチ３００は、リソース情報の送信を要求するリソース情報要求を、ＰＣＩエクスプレス・スイッチ３００に接続されている、第１の入出力装置４００、及び、第２の入出力装置５００のそれぞれへ送信する（ステップＳ１０１）。
【００５６】
第１の入出力装置４００は、リソース情報要求を受信すると、第１の入出力装置４００が有するリソースを表すリソース情報をＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１０２）。更に、第２の入出力装置５００は、リソース情報要求を受信すると、第２の入出力装置５００が有するリソースを表すリソース情報をＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１０３）。
【００５７】
ＰＣＩエクスプレス・スイッチ３００は、第１の入出力装置４００、及び、第２の入出力装置５００のそれぞれからリソース情報を受信すると、受信したリソース情報を記憶する（ステップＳ１０４）。
【００５８】
その後、第１の処理装置１０１は、リソース要求をＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１０５）。本例では、このリソース要求は、６つのリソースを表すリソース量情報を含む情報である。
【００５９】
ＰＣＩエクスプレス・スイッチ３００は、リソース要求を受信すると、記憶されているリソース情報に基づいて、リソースを第１の処理装置１０１に対して割り当てる（ステップＳ１０６）。本例では、ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１に対して、第１の入出力装置４００が有する、リソース＃１１〜リソース＃１６を割り当てる。
【００６０】
また、ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１に対して割り当てたリソース＃１１〜リソース＃１６に、この順に従って順位が下がるように順位を付与する。
【００６１】
従って、ＰＣＩエクスプレス・スイッチ３００は、図５に示したように、第１の処理装置１０１を特定するための送信元特定情報と、付与された順位が最上位であるリソース＃１１を特定するための転送先特定情報と、を対応付けた第１の割当情報を記憶する。
【００６２】
加えて、ＰＣＩエクスプレス・スイッチ３００は、図６に示したように、付与された順位が最下位であるリソース＃１６を特定するための送信元特定情報と、第１の処理装置１０１を特定するための転送先特定情報と、を対応付けた第２の割当情報を記憶する。
【００６３】
その後、第２の処理装置２０１は、リソース要求をＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１０７）。本例では、このリソース要求は、４つのリソースを表すリソース量情報を含む情報である。
【００６４】
ＰＣＩエクスプレス・スイッチ３００は、リソース要求を受信すると、記憶されているリソース情報に基づいて、リソースを第１の処理装置１０１に対して割り当てる（ステップＳ１０８）。本例では、ＰＣＩエクスプレス・スイッチ３００は、第２の処理装置２０１に対して、第１の入出力装置４００が有する、リソース＃１７〜リソース＃１８、及び、第２の入出力装置５００が有する、リソース＃２１〜リソース＃２２を割り当てる。
【００６５】
また、ＰＣＩエクスプレス・スイッチ３００は、第２の処理装置２０１に対して割り当てたリソース＃１７〜リソース＃１８（第１のリソース群），リソース＃２１〜リソース＃２２（第２のリソース群）に、この順に従って順位が下がるように順位を付与する。
【００６６】
従って、ＰＣＩエクスプレス・スイッチ３００は、図５に示したように、第２の処理装置２０１を特定するための送信元特定情報と、付与された順位が最上位であるリソース＃１７を特定するための転送先特定情報と、を対応付けた第１の割当情報を記憶する。
【００６７】
更に、ＰＣＩエクスプレス・スイッチ３００は、図６に示したように、付与された順位が最下位であるリソース＃２２を特定するための送信元特定情報と、第２の処理装置２０１を特定するための転送先特定情報と、を対応付けた第２の割当情報を記憶する。
【００６８】
加えて、ＰＣＩエクスプレス・スイッチ３００は、図６に示したように、第１のリソース群（リソース＃１７〜リソース＃１８）のうちの、付与された順位が最下位であるリソース＃１８を特定するための送信元特定情報と、第２のリソース群（リソース＃２１〜リソース＃２２）のうちの、付与された順位が最上位であるリソース＃２１を特定するための引継先特定情報と、を対応付けた第３の割当情報を記憶する。
【００６９】
その後、第１の処理装置１０１は、第１のプログラムをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１０９）。ＰＣＩエクスプレス・スイッチ３００は、第１のプログラムを受信すると、第１の処理装置１０１に対して割り当てたリソース（リソース＃１１〜リソース＃１６）に、サブプログラムを１つずつ送信する（ステップＳ１１０）。
【００７０】
また、第２の処理装置２０１は、第２のプログラムをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ１１１）。ＰＣＩエクスプレス・スイッチ３００は、第２のプログラムを受信すると、第２の処理装置２０１に対して割り当てたリソース（リソース＃１７〜リソース＃１８，リソース＃２１〜リソース＃２２）に、サブプログラムを１つずつ送信する（ステップＳ１１２）。
【００７１】
その後、図８に示したように、第１の処理装置１０１は、第１のメイン処理を実行することにより、入力データを生成し、生成された入力データをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ２０１）。
【００７２】
ＰＣＩエクスプレス・スイッチ３００は、第１の処理装置１０１から入力データを受信すると、記憶されている第１の割当情報に基づいて、受信した入力データをリソース＃１１へ転送する（ステップＳ２０２）。リソース＃１１は、ＰＣＩエクスプレス・スイッチ３００から入力データを受信すると、受信した入力データに基づいて分割処理を実行し、実行結果としての引継データをリソース＃１２へ出力する。
【００７３】
そして、リソース＃１２は、リソース＃１１からの引継データに基づいて分割処理を実行し、実行結果としての引継データをリソース＃１３へ出力する。リソース＃１３〜リソース＃１５も、同様に作動する。そして、リソース＃１６は、リソース＃１５からの引継データに基づいて分割処理を実行する。
【００７４】
このようにして、リソース＃１１〜リソース＃１６は、それぞれが分割処理を実行することにより、パイプライン方式に従って、全体処理としての第１のサブ処理を実行する（ステップＳ２０３）。
【００７５】
そして、リソース＃１６は、分割処理の実行結果としての出力データをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ２０４）。ＰＣＩエクスプレス・スイッチ３００は、リソース＃１６から出力データを受信すると、記憶されている第２の割当情報に基づいて、受信した出力データを第１の処理装置１０１へ転送する（ステップＳ２０５）。
【００７６】
その後、図９に示したように、第２の処理装置２０１は、第２のメイン処理を実行することにより、入力データを生成し、生成された入力データをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ３０１）。
【００７７】
ＰＣＩエクスプレス・スイッチ３００は、第２の処理装置２０１から入力データを受信すると、記憶されている第１の割当情報に基づいて、受信した入力データをリソース＃１７へ転送する（ステップＳ３０２）。リソース＃１７は、ＰＣＩエクスプレス・スイッチ３００から入力データを受信すると、受信した入力データに基づいて分割処理を実行し、実行結果としての引継データをリソース＃１８へ出力する。
【００７８】
そして、リソース＃１８は、リソース＃１７からの引継データに基づいて分割処理を実行する。このようにして、リソース＃１７〜リソース＃１８は、それぞれが分割処理を実行することにより、パイプライン方式に従って、全体処理としての第２のサブ処理の一部を実行する（ステップＳ３０３）。そして、リソース＃１８は、分割処理の実行結果としての引継データをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ３０４）。
【００７９】
ＰＣＩエクスプレス・スイッチ３００は、リソース＃１８から引継データを受信すると、記憶されている第３の割当情報に基づいて、受信した引継データをリソース＃２１へ転送する（ステップＳ３０５）。
【００８０】
リソース＃２１は、ＰＣＩエクスプレス・スイッチ３００から引継データを受信すると、受信した引継データに基づいて分割処理を実行し、実行結果としての引継データをリソース＃２２へ出力する。そして、リソース＃２２は、リソース＃２１からの引継データに基づいて分割処理を実行する。
【００８１】
このようにして、リソース＃２１〜リソース＃２２は、それぞれが分割処理を実行することにより、パイプライン方式に従って、全体処理としての第２のサブ処理の残余の部分を実行する（ステップＳ３０６）。これにより、リソース＃１７〜リソース＃１８、及び、リソース＃２１〜リソース＃２２は、それぞれが分割処理を実行することにより、パイプライン方式に従って、全体処理としての第２のサブ処理を実行する。
【００８２】
そして、リソース＃２２は、分割処理の実行結果としての出力データをＰＣＩエクスプレス・スイッチ３００へ送信する（ステップＳ３０７）。ＰＣＩエクスプレス・スイッチ３００は、リソース＃２２から出力データを受信すると、記憶されている第２の割当情報に基づいて、受信した出力データを第２の処理装置２０１へ転送する（ステップＳ３０８）。
【００８３】
以上、説明したように、本発明の第１実施形態に係るデータ中継装置３００によれば、処理装置（本例では、第１の処理装置１０１、及び、第２の処理装置２０１）により出力されたリソース要求に含まれるリソース量情報に基づいて、当該処理装置に対してリソースが割り当てられる。従って、ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力することなく、必要とされる量のリソースを当該処理装置に割り当てることができる。
このように、データ中継装置３００によれば、ユーザの手間を軽減することができる。
【００８４】
更に、本発明の第１実施形態に係るデータ中継装置３００は、処理装置に対して割り当てられた第１のリソース群を第１の入出力装置４００が有し、且つ、第２のリソース群を第２の入出力装置５００が有している場合、第１のリソース群のうちの、全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、第２のリソース群のうちの、全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送する。
【００８５】
これによれば、複数の入出力装置（本例では、第１の入出力装置４００、及び、第２の入出力装置５００）が有する複数のリソースを、１つの処理装置に割り当てた場合であっても、当該複数のリソースに、適切に全体処理を実行させることができる。従って、入出力装置が有するリソースを無駄なく処理装置に割り当てることができる。更に、１つの入出力装置が有するリソースの数が、ある処理装置によって必要とされるリソースの数よりも少ない場合においては、当該処理装置に、必要とされる数のリソースを割り当てることもできる。
【００８６】
なお、第１実施形態の変形例に係るデータ処理システムは、互いに通信可能に接続された、第１のＰＣＩエクスプレス・スイッチ、及び、第２のＰＣＩエクスプレス・スイッチを含む複数のＰＣＩエクスプレス・スイッチを備えていてもよい。この場合、複数のＰＣＩエクスプレス・スイッチは、第１のＰＣＩエクスプレス・スイッチに接続されている処理装置と、第２のＰＣＩエクスプレス・スイッチに接続されている入出力装置と、の間のデータの伝送を中継するように構成されていることが好適である。
【００８７】
＜第２実施形態＞
次に、本発明の第２実施形態に係るデータ中継装置について図１０を参照しながら説明する。
第２実施形態に係るデータ中継装置１０００は、
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継する装置である。
【００８８】
更に、このデータ中継装置１０００は、
上記データ中継装置に接続されている上記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得するリソース情報取得部（リソース情報取得手段）１００１と、
上記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付けるリソース要求受付部（リソース要求受付手段）１００２と、
上記リソース要求が受け付けられた場合、上記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した上記処理装置に対して割り当てるリソース割当部（リソース割当手段）１００３と、
上記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継するデータ中継部（データ中継手段）１００４と、
を備える。
【００８９】
これによれば、処理装置により出力されたリソース要求に含まれるリソース量情報に基づいて、当該処理装置に対してリソースが割り当てられる。従って、ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力することなく、必要とされる量のリソースを当該処理装置に割り当てることができる。
このように、上記データ中継装置によれば、ユーザの手間を軽減することができる。
【００９０】
以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
【００９１】
なお、上記各実施形態においてデータ中継装置の各機能は、回路等のハードウェアにより実現されていた。ところで、データ中継装置は、処理装置と、プログラム（ソフトウェア）を記憶する記憶装置と、を備えるとともに、処理装置がそのプログラムを実行することにより、各機能を実現するように構成されていてもよい。この場合、プログラムは、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【００９２】
また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
【００９３】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限られない。
【００９４】
（付記１）
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置であって、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得するリソース情報取得手段と、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付けるリソース要求受付手段と、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当てるリソース割当手段と、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継するデータ中継手段と、
を備えるデータ中継装置。
【００９５】
これによれば、処理装置により出力されたリソース要求に含まれるリソース量情報に基づいて、当該処理装置に対してリソースが割り当てられる。従って、ユーザが、処理装置に対して割り当てるリソースを特定する情報を入力することなく、必要とされる量のリソースを当該処理装置に割り当てることができる。
このように、上記データ中継装置によれば、ユーザの手間を軽減することができる。
【００９６】
（付記２）
付記１に記載のデータ中継装置であって、
前記リソース量情報は、複数のリソースを表す情報であり、
前記処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行するように構成され、
前記データ中継手段は、前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送し、且つ、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継装置。
【００９７】
（付記３）
付記２に記載のデータ中継装置であって、
前記データ中継手段は、前記処理装置に対して割り当てられた複数のリソースの一部である第１のリソース群を第１の入出力装置が有し、且つ、当該複数のリソースの他部である第２のリソース群を第２の入出力装置が有している場合、当該第１のリソース群のうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、当該第２のリソース群のうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送するように構成されたデータ中継装置。
【００９８】
これによれば、複数の入出力装置が有する複数のリソースを、１つの処理装置に割り当てた場合であっても、当該複数のリソースに、適切に全体処理を実行させることができる。従って、入出力装置が有するリソースを無駄なく処理装置に割り当てることができる。更に、１つの入出力装置が有するリソースの数が、ある処理装置によって必要とされるリソースの数よりも少ない場合においては、当該処理装置に、必要とされる数のリソースを割り当てることもできる。
【００９９】
（付記４）
付記２又は付記３に記載のデータ中継装置であって、
前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースと、当該処理装置と、を対応付けた第１の割当情報を記憶する第１の割当情報記憶手段を備え、
前記データ中継手段は、前記記憶されている第１の割当情報に基づいて、前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送するように構成されたデータ中継装置。
【０１００】
（付記５）
付記２乃至付記４のいずれかに記載のデータ中継装置であって、
前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースと、当該処理装置と、を対応付けた第２の割当情報を記憶する第２の割当情報記憶手段を備え、
前記データ中継手段は、前記記憶されている第２の割当情報に基づいて、前記処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継装置。
【０１０１】
（付記６）
付記１乃至付記５のいずれかに記載のデータ中継装置であって、
前記入出力装置は、ネットワークプロセッサであり、
前記リソースは、マイクロエンジンであるデータ中継装置。
【０１０２】
（付記７）
付記１乃至付記６のいずれかに記載のデータ中継装置であって、
ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）エクスプレス・スイッチであるデータ中継装置。
【０１０３】
（付記８）
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に適用され、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当て、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する、データ中継方法。
【０１０４】
（付記９）
付記８に記載のデータ中継方法であって、
前記リソース量情報は、複数のリソースを表す情報であり、
前記処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行するように構成され、
前記データ中継方法は、
前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送し、且つ、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送するように構成されたデータ中継方法。
【０１０５】
（付記１０）
付記９に記載のデータ中継方法であって、
前記処理装置に対して割り当てられた複数のリソースの一部である第１のリソース群を第１の入出力装置が有し、且つ、当該複数のリソースの他部である第２のリソース群を第２の入出力装置が有している場合、当該第１のリソース群のうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、当該第２のリソース群のうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送するように構成されたデータ中継方法。
【０１０６】
（付記１１）
少なくとも１つの処理装置と、少なくとも１つの入出力装置と、の間のデータの伝送を中継するデータ中継装置に、
前記データ中継装置に接続されている前記入出力装置のそれぞれに対して、当該入出力装置が有するリソースを表すリソース情報を取得し、
前記データ中継装置に接続されている処理装置により出力され、且つ、リソースの量を表すリソース量情報を含み且つ当該量のリソースを要求する旨を表すリソース要求を受け付け、
前記リソース要求が受け付けられた場合、前記取得されたリソース情報に基づいて、当該リソース要求に含まれるリソース量情報が表す量のリソースを、当該リソース要求を出力した前記処理装置に対して割り当て、
前記処理装置と、当該処理装置に対して割り当てられたリソースと、の間のデータの伝送を中継する、処理を実行させるためのデータ中継プログラム。
【０１０７】
（付記１２）
付記１１に記載のデータ中継プログラムであって、
前記リソース量情報は、複数のリソースを表す情報であり、
前記処理装置に対して割り当てられた複数のリソースは、当該複数のリソースのそれぞれが当該リソースに対して割り当てられた分割処理を実行することにより、パイプライン方式に従って、当該複数のリソースに対して割り当てられた分割処理からなる全体処理を実行するように構成され、
前記データ中継プログラムは、前記データ中継装置に、
前記処理装置から受け付けたデータを、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送し、且つ、当該処理装置に対して割り当てられた複数のリソースのうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを当該処理装置へ転送する、処理を実行させるように構成されたデータ中継プログラム。
【０１０８】
（付記１３）
付記１２に記載のデータ中継プログラムであって、
前記データ中継装置に、
前記処理装置に対して割り当てられた複数のリソースの一部である第１のリソース群を第１の入出力装置が有し、且つ、当該複数のリソースの他部である第２のリソース群を第２の入出力装置が有している場合、当該第１のリソース群のうちの、前記全体処理における最後の処理としての分割処理が割り当てられたリソースから受け付けたデータを、当該第２のリソース群のうちの、前記全体処理における最初の処理としての分割処理が割り当てられたリソースへ転送する、処理を実行させるように構成されたデータ中継プログラム。
【産業上の利用可能性】
【０１０９】
本発明は、処理装置と入出力装置との間のデータの伝送を中継するデータ中継装置、及び、ＰＣＩエクスプレス・スイッチ等に適用可能である。
【符号の説明】
【０１１０】
１      データ処理システム
１０１  第１の処理装置
１０２  第１の入出力制御部
１０３  第１のメモリ
２０１  第２の処理装置
２０２  第２の入出力制御部
２０３  第２のメモリ
３００  ＰＣＩエクスプレス・スイッチ
３０１  第１のポート
３０２  第２のポート
３０３  第３のポート
３０４  第４のポート
３１０  中継制御部
３２０  リソース情報記憶部
３３０  ＲＴＯ部
３３１  中継テーブル記憶部
３３２  受信部
３３３  データ記憶部
３３４  送信部
３４０  ＲＴＩ部
３４１  中継テーブル記憶部
３４２  受信部
３４３  データ記憶部
３４４  送信部
４００  第１の入出力装置
４０１  ポート
４１０  指示部
４２１〜４２８  リソース
５００  第２の入出力装置
５０１  ポート
５１０  指示部
５２１〜５２８  リソース
１０００  データ中継装置
１００１  リソース情報取得部
１００２  リソース要求受付部
１００３  リソース割当部
１００４  データ中継部
【図１】
2013008169.tif 000003
【図２】
2013008169.tif 000004
【図３】
2013008169.tif 000005
【図４】
2013008169.tif 000006
【図５】
2013008169.tif 000007
【図６】
2013008169.tif 000008
【図７】
2013008169.tif 000009
【図８】
2013008169.tif 000010
【図９】
2013008169.tif 000011
【図１０】
2013008169.tif 000012