JP4445535B2 - データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 - Google Patents
データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 Download PDFInfo
- Publication number
- JP4445535B2 JP4445535B2 JP2007242710A JP2007242710A JP4445535B2 JP 4445535 B2 JP4445535 B2 JP 4445535B2 JP 2007242710 A JP2007242710 A JP 2007242710A JP 2007242710 A JP2007242710 A JP 2007242710A JP 4445535 B2 JP4445535 B2 JP 4445535B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- transfer
- processing request
- processing
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/368—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
- G06F13/378—Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a parallel poll method
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Description
例えば、SAS PHY(Physical layer)のデータ転送速度が1レーンにつき3Gbpsである場合、図5に示すように、4ポートのSAS Wide Portを使用して物理的に4本のバス101−0〜101−3(以下、これらバス101−0〜101−3を区別しない場合には符号101を用いて説明する)を用いてSASイニシエータ110及びSASターゲット120とを接続した、4レーン102−0〜102−3からなるSAS Wide Linkシステム100によれば、12Gbpsのバス性能を発揮する。
また、SASターゲット120は、各レーン102を通じてSASイニシエータ110から受信した転送データを、アービター121が調整しながら受信制御部122に送り、受信制御部122は、受信したデータに応じてメモリコントローラ104に当該データに係るコマンドを出力する。
また、近年の技術進歩により、メモリコントローラ103の処理性能(速度)の向上や、メモリコントローラ103とSASイニシエータ110との間のバス性能の向上により、メモリコントローラ103からのI/O要求等の転送速度が非常に速くなっているため、SASイニシエータ110とSASターゲット120との間(即ち、SASデバイス110,120間)のバス性能が悪いと、システム100全体の性能向上を阻害するおそれがある。
さらに、該送信部が、該処理要求に含まれる転送データの格納元を示すアドレス情報、及び、該転送データ長情報を変更することにより、該処理要求を分割することが好ましい。
また、上記目的を達成するために、本発明の情報処理システムは、複数の情報処理装置と、該複数の情報処理装置を複数のバスを用いてデータ転送可能に接続するSASとをそなえたシステムであって、該データ転送の転送元としての情報処理装置が、データ転送に係る処理要求をキューイングするキューイング部と、該処理要求を受け取ると、当該処理要求に係る転送データを取得し、取得した該転送データを、該複数のバスのうちの一のバスを用いて該転送先に転送する転送部と、該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部と、該送信部による該処理要求の送信毎に、該キューイング部にキューイングされた該処理要求の数を検知する検知部と、該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部とをそなえ、該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じて、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するとともに、該複数の処理要求を該転送部に送信し、該転送部が、該複数の処理要求を受け取ると、当該複数の処理要求に係る複数の転送データを取得し、取得した該複数の転送データを、該複数のバスを用いて該転送先に転送することを特徴としている。
〔1〕本発明の一実施形態について
まず、図1に示すブロック図を参照しながら、本発明の一実施形態としての情報処理システム(以下、本情報処理システムという)1の構成について説明する。この図1に示すように、本情報処理システム1は、複数(ここでは4本)のバス2−0〜2−3(以下、これらバス2−0〜2−3を区別しない場合には符号2を用いて説明する)を用いたSASによってデータの送受信可能に接続されたSASイニシエータ装置(データ転送装置)10及びSASターゲット装置(転送先)20,SASイニシエータ装置10に接続されたメモリコントローラ4,及びSASターゲット装置20に接続されたメモリコントローラ5をそなえて構成されている。
また、SASイニシエータ装置10及びSASターゲット装置20は、4ポートのSAS Wide Portを使用し、SASイニシエータ装置10とSASターゲット装置20とは物理的に4本のバス2−0〜2−3により接続されており、従って、SASは4つのレーン(転送経路)3−0〜3−3(以下、これらレーン3−0〜3−3を区別しない場合には符号3を用いて説明する)を実現している。
ここで、図2を参照しながら、SASのアーキテクチャについて説明する。図2はSASアーキテクチャの一般的な構成を示す図である。この図2に示すように、SASアーキテクチャは、SAS Device30(例えば、本情報処理システムにおけるSASイニシエータ装置10)内に、6つのレイヤ(層)31〜36を構成している。
アプリケーション層31は、例えば、SCSIアプリケーション層(SCSI application layer)31a,ATA(AT Attachment)アプリケーション層(ATA application layer)31b,及び管理アプリケーション層(Management application layer)31cからなる。
リンク層34は、例えば、SSPリンク層(SSP link layer)34a,STPリンク層(STP link layer)34b,SMPリンク層(SMP link layer)34c,及びSASリンク層(SAS link layer)34dからなる。
そして、リンク層34,SAS phy層35,及びSAS物理層36からなるSAS Phy38は、レーン数分そなえられる。例えば、本情報処理システム1では、SAS Phy38は、4つ存在する。
一方、メモリコントローラ5は、SASターゲット装置20がSASイニシエータ装置10から受け取った処理要求を、後段の記憶装置等(図示略)に対して実行するものである。
DMAチャネル12−0〜12−n(以下、これらDMAチャネル12−0〜12−nを区別しない場合には符号12を用いて説明する)のそれぞれは、DMAマネージャ11から処理要求を受け取ると、その処理要求に係る転送データを取得して転送先に向けて出力するものである。なお、転送データは、処理要求に係る転送データのほか、処理要求そのものであってもよい。
ここで、図3に処理要求の一例(ここではSCSI Readコマンド)を示す。DMAマネージャ11がメモリコントローラ4から受信して、DMAチャネル12に渡す処理要求は、例えば、図3のように構成されており、オペレーションコード(図中、“Operation Code(0x08)”と表記)41,LUN(Logical Unit Number)42,LBA(Logical Block Address)43,転送データ長(図中“Transfer length”と表記)44,及び制御情報(図中“Control”と表記)45をそなえている。
レーン選択部13は、DMAチャネル12によって出力される転送データの転送に用いるバス2を、複数のバス2から選択するものであり、DMAチャネル12から転送データ等が出力される際に、空いているバス2(レーン3)を、当該転送データの転送に用いるバスとして選択し、当該DMAチャネル12と当該バス2(レーン3)とを接続するスイッチとして機能する。
そして、図1に示すように、DMAマネージャ11は、キューイング部14,検知部15,判断部16,及び送信部17をそなえている。
検知部15は、キューイング部14にキューイングされた処理要求の数を検知するものであり、カウンタ15aをそなえている。
判断部16は、検知部15によって検知された、キューイング部14にキューイング中の処理要求の数が、SASイニシエータ装置10とSASターゲット装置20とを接続するバス2の数(即ち、SASのレーン3の数である4)よりも少ないか否かを判断するものである。
送信部17は、キューイング部14にキューイング中の処理要求を、後段のDMAチャネル12(即ち、転送部12a)に送信するものであり、判断部16によって処理要求の数がバス2の数よりも少ないと判断されると、キューイング部14にキューイングされた処理要求を、バス2の数とキューイング部14にキューイングされた処理要求の数とに応じた数の処理要求に分割する分割部17aをそなえている。
そして、送信部17は、分割部17aによって処理要求が複数の処理要求に分割されると、分割された処理要求をすべてDMAチャネル12に送信する。
また、分割部17aは、キューイング中の処理要求の数が2である場合、バス2の数が4であるので、それら2つの処理要求のそれぞれを2つの処理要求に分割する。
なお、分割部17aは、キューイング中の処理要求の数が3である場合、キューイング部14の先頭の1つの処理要求を2つの処理要求に分割し、残りの2つの処理要求は分割せずにそのまま出力してもよい。
より具体的には、分割部17aは、処理要求に含まれる転送データの格納元を示すアドレス情報であるLBA43、及び、転送データ長44を変更することにより、処理要求を分割する。
(1)まず、キューイング部14に処理要求がキューイングされていない状態で、メモリコントローラ4から処理要求を受信し、キューイング部14がその処理要求をキューイングすると、カウンタ15aが1つカウントアップされる。
(3)すると、送信部17の分割部17aは、キューイング部14からその1つの処理要求を読み出して4つの処理要求に分割し、送信部17はDMAチャネル12の処理状況に応じて、4つに分割した処理要求をDMAチャネル12に順次送信する。なお、キューイング部14から処理要求が読み出されると、カウンタ15aが1つカウントダウンされる。
(5)その後、送信部17による上記(3)の処理が終了すると、再度上記(2),(3)の処理と同様の処理が実行される。つまり、検知部15によって“2”が検知され、判断部16は検知部15によって検知された“2”とバス数“4”とを比較し、キューイング中の処理要求の数がバス数よりも少ないと判断する。そして、送信部17の分割部17aが、キューイング部14から2つの処理要求を読み出し、2つの処理要求のそれぞれを2つの処理要求に分割して合計4つの処理要求を生成し、送信部17はDMAチャネル12の処理状況に応じて、かかる4つの処理要求をDMAチャネル12に順次送信する。
アービター21は、SASのレーン3を介してSASイニシエータ装置10から受信した処理要求及び転送データを、後段の受信制御部22に順に受け渡すための調整を行なうものである。
そして、メモリコントローラ5によって当該処理要求に係る処理(書込み処理/読出し処理)が、メモリコントローラ5に接続された記憶装置(図示略)に対して実行される。
また、送信部17の分割部17aが、分割後の処理要求の数がバス2の数と同一になるように、キューイング部14にキューイング中の処理要求を複数の処理要求に分割するので、送信部17によって分割されたすべての処理要求が転送部12aに送信されることにより、すべてのバス2を使用した、より効率的なデータ転送をより確実に実現できる。
このとき、送信部17の分割部17aが、当該処理要求に含まれる転送データ長情報44に基づいて、転送データ長を認識するので、分割部17aは、その転送データ長を確実に且つ容易に認識できる。
〔2〕その他
なお、本発明は上述した実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々変形して実施することができる。
さらに、上述した実施形態では、SASイニシエータ装置10に対して、1つのSASターゲット装置20が接続された場合を例にあげて説明したが、本発明はこれに限定されるものではなく、例えば、図4に示す本発明の変形例としての情報処理システム1´のごとく、SASイニシエータ装置(図中、イニシエータと表記)10に対して、SASスイッチ6を介して複数のSASターゲット装置(図中、ターゲット0,1,Nと表記)20−0〜20−N(Nは自然数)が接続されていてもよい。
そのため、SASイニシエータ装置10と、各SASターゲット装置20−0〜20−Nとは、SASによって複数のレーンでデータ転送可能に接続され、SASスイッチ6によってSASイニシエータ装置10の接続相手(SASターゲット装置20−0〜20−N)が切り替えられる。
なお、上述した検知部15,判断部16,及び送信部17(分割部17a)としての機能は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラム(データ転送プログラム)を実行することによって実現されてもよい。
なお、本実施形態としての記録媒体としては、上述したフレキシブルディスク,CD,DVD,磁気ディスク,光ディスク,光磁気ディスクのほか、ICカード,ROMカートリッジ,磁気テープ,パンチカード,コンピュータの内部記憶装置(RAMやROMなどのメモリ),外部記憶装置等や、バーコードなどの符号が印刷された印刷物等の、コンピュータ読取可能な種々の媒体を利用することもできる。
(付記1)
データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続されたデータ転送装置であって、
データ転送に係る処理要求をキューイングするキューイング部と、
該処理要求を受け取ると、当該処理要求に係る転送データを取得し、取得した該転送データを、該複数のバスのうちの一のバスを用いて該転送先に転送する転送部と、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部と、
該キューイング部にキューイングされた該処理要求の数を検知する検知部と、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部とをそなえ、
該送信部が、該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じた数の処理要求に分割することを特徴とする、データ転送装置。
該送信部が、該判断部によって該処理要求の数が該バスの数以上であると判断されると、該キューイング部にキューイングされた該処理要求をそのまま該転送部に送信することを特徴とする、付記1記載のデータ転送装置。
(付記3)
該送信部が、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割することを特徴とする、付記1または付記2記載のデータ転送装置。
該送信部が、該処理要求を分割する際に、当該処理要求に係る転送データ長を認識し、認識したデータ長に基づいて当該処理要求を分割することを特徴とする、付記1〜3のいずれか1項に記載のデータ転送装置。
(付記5)
該送信部が、当該処理要求に含まれる転送データ長情報に基づいて、該転送データ長を認識することを特徴とする、付記4記載のデータ転送装置。
該送信部が、該処理要求に含まれる転送データの格納元を示すアドレス情報、及び、該転送データ長情報を変更することにより、該処理要求を分割することを特徴とする、付記5記載のデータ転送装置。
(付記7)
該転送部が、
該処理要求に係る転送データを取得して該転送先に向けて出力する複数の取得部と、
該取得部によって出力される該転送データの転送に用いるバスを、該複数のバスから選択する選択部とをそなえて構成されていることを特徴とする、付記1〜6のいずれか1項に記載のデータ転送装置。
複数の情報処理装置と、該複数の情報処理装置を複数のバスを用いてデータ転送可能に接続するSAS(Serial Attached SCSI)とをそなえた情報処理システムであって、
該データ転送の転送元としての情報処理装置が、
データ転送に係る処理要求をキューイングするキューイング部と、
該処理要求を受け取ると、当該処理要求に係る転送データを取得し、取得した該転送データを、該複数のバスのうちの一のバスを用いて該転送先に転送する転送部と、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部と、
該キューイング部にキューイングされた該処理要求の数を検知する検知部と、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部とをそなえ、
該送信部が、該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じた数の処理要求に分割することを特徴とする、情報処理システム。
該送信部が、該判断部によって該処理要求の数が該バスの数以上であると判断されると、該キューイング部にキューイングされた該処理要求をそのまま該転送部に送信することを特徴とする、付記8記載の情報処理システム。
(付記10)
該送信部が、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割することを特徴とする、付記8または付記9記載の情報処理システム。
該送信部が、該処理要求を分割する際に、当該処理要求に係る転送データ長を認識し、認識したデータ長に基づいて当該処理要求を分割することを特徴とする、付記8〜10のいずれか1項に記載の情報処理システム。
(付記12)
該分割部が、当該処理要求に含まれる転送データ長情報に基づいて、該転送データ長を認識することを特徴等する、付記11記載の情報処理システム。
該分割部が、該処理要求に含まれる転送データの格納元を示すアドレス情報、及び、該転送データ長情報を変更することにより、該処理要求を分割することを特徴とする、付記12記載の情報処理システム。
(付記14)
該転送部が、
該処理要求に係る転送データを取得して該転送先に向けて出力する複数の取得部と、
該取得部によって出力される該転送データの転送に用いるバスを、該複数のバスから選択する選択部とをそなえて構成されていることを特徴とする、付記8〜13のいずれか1項に記載の情報処理システム。
データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続され、データ転送に係る処理要求をキューイングするキューイング部と、該処理要求を受け取ると当該処理要求に係る転送データを取得し取得した該転送データを該複数のバスのうちの一のバスを用いて該転送先に転送する転送部とを有するデータ転送装置において、該キューイング部にキューイングされた該処理要求を該転送部に送信することにより該処理要求にかかるデータ転送を実行させる機能を、コンピュータに実現させるためのデータ転送プログラムであって、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部、
該キューイング部にキューイングされた該処理要求の数を検知する検知部、及び、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部として、該コンピュータを機能させるとともに、
該送信部が、該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じた数の処理要求に分割するように、該コンピュータを機能させることを特徴とする、データ転送プログラム。
該送信部が、該判断部によって該処理要求の数が該バスの数以上であると判断されると、該キューイング部にキューイングされた該処理要求をそのまま該転送部に送信するように、該コンピュータを機能させることを特徴とする、付記15記載のデータ転送プログラム。
該送信部が、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するように、該コンピュータを機能させることを特徴とする、付記15または付記16記載のデータ転送プログラム。
(付記18)
データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続され、データ転送に係る処理要求をキューイングするキューイング部と、該処理要求を受け取ると当該処理要求に係る転送データを取得し取得した該転送データを該複数のバスのうちの一のバスを用いて該転送先に転送する転送部とを有するデータ転送装置において、該キューイング部にキューイングされた該処理要求を該転送部に送信することにより該処理要求にかかるデータ転送を実行させる機能を、コンピュータに実現させるためのデータ転送プログラムを記録したコンピュータ読取可能な記録媒体であって、
該データ転送プログラムが、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部、
該キューイング部にキューイングされた該処理要求の数を検知する検知部、及び、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部として、該コンピュータを機能させるとともに、
該送信部が、該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じた数の処理要求に分割するように、該コンピュータを機能させることを特徴とする、データ転送プログラムを記録したコンピュータ読取可能な記録媒体。
該送信部が、該判断部によって該処理要求の数が該バスの数以上であると判断されると、該キューイング部にキューイングされた該処理要求をそのまま該転送部に送信するように、該データ転送プログラムが該コンピュータを機能させることを特徴とする、付記18記載のデータ転送プログラムを記録したコンピュータ読取可能な記録媒体。
該送信部が、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するように、該データ転送プログラムが該コンピュータを機能させることを特徴とする、付記18または付記19記載のデータ転送プログラムを記録したコンピュータ読取可能な記録媒体。
2,2−0〜2−3,101,101−0〜101−3,7,8−0〜8−N バス
3,3−0〜3−3,102,102−0〜102−3 レーン
4,5,103,104 メモリコントローラ
6 SAS(Serial attached SCSI(Small Computer System Interface))スイッチ
10 SASイニシエータ装置(データ転送装置)
11 DMA(Direct Memory Access)マネージャ
12,12−0〜12−n DMAチャネル(取得部)
12a 転送部
13 レーン選択部(選択部)
20 SASターゲット装置
21,121 アービター
22,122 受信制御部
30 SAS Device
31 アプリケーション層
31a SCSIアプリケーション層
31b ATA(AT Attachment)アプリケーション層
31c 管理アプリケーション層
32 トランスポート層
32a SSP(Serial SCSI Protocol)トランスポート層
32b STP(SATA Tunneling Protocol)トランスポート層
32c SMP(Serial Management Protocol)トランスポート層
33 SASポート層
34 リンク層
34a SSPリンク層
34b STPリンク層
34c SMPリンク層
34d SASリンク層
35 SAS phy層
36 SAS物理層
37 SASポート
38 SAS Phy(Physical layer)
41 オペレーションコード
42 LUN(Logical Unit Number)
43 LBA(Logical Block Address;アドレス情報)
44 転送データ長(転送データ長情報)
45 制御情報
100 SAS Wide Linkシステム
110 SASイニシエータ
111 DMAマネージャ
112,112−0〜112−n DMAチャネル
120 SASターゲット
Claims (9)
- データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続されたデータ転送装置であって、
データ転送に係る処理要求をキューイングするキューイング部と、
該処理要求を受け取ると、当該処理要求に係る転送データを取得し、取得した該転送データを、該複数のバスのうちの一のバスを用いて該転送先に転送する転送部と、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部と、
該送信部による該処理要求の送信毎に、該キューイング部にキューイングされた該処理要求の数を検知する検知部と、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部とをそなえ、
該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、
該送信部が、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じて、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するとともに、該複数の処理要求を該転送部に送信し、
該転送部が、該複数の処理要求を受け取ると、当該複数の処理要求に係る複数の転送データを取得し、取得した該複数の転送データを、該複数のバスを用いて該転送先に転送することを特徴とする、データ転送装置。 - 該送信部が、該判断部によって該処理要求の数が該バスの数以上であると判断されると、該キューイング部にキューイングされた該処理要求をそのまま該転送部に送信することを特徴とする、請求項1記載のデータ転送装置。
- 該送信部が、該処理要求を分割する際に、当該処理要求に係る転送データ長を認識し、認識したデータ長に基づいて当該処理要求を分割することを特徴とする、請求項1または請求項2記載のデータ転送装置。
- 該送信部が、当該処理要求に含まれる転送データ長情報に基づいて、該転送データ長を認識することを特徴とする、請求項3記載のデータ転送装置。
- 該送信部が、該処理要求に含まれる転送データの格納元を示すアドレス情報、及び、該転送データ長情報を変更することにより、該処理要求を分割することを特徴とする、請求項4記載のデータ転送装置。
- 該転送部が、
該処理要求に係る転送データを取得して該転送先に向けて出力する複数の取得部と、
該取得部によって出力される該転送データの転送に用いるバスを、該複数のバスから選択する選択部とをそなえて構成されていることを特徴とする、請求項1〜5のいずれか1項に記載のデータ転送装置。 - 複数の情報処理装置と、該複数の情報処理装置を複数のバスを用いてデータ転送可能に接続するSAS(Serial Attached SCSI)とをそなえた情報処理システムであって、
該データ転送の転送元としての情報処理装置が、
データ転送に係る処理要求をキューイングするキューイング部と、
該処理要求を受け取ると、当該処理要求に係る転送データを取得し、取得した該転送データを、該複数のバスのうちの一のバスを用いて該転送先に転送する転送部と、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部と、
該送信部による該処理要求の送信毎に、該キューイング部にキューイングされた該処理要求の数を検知する検知部と、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部とをそなえ、
該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、
該送信部が、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じて、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するとともに、該複数の処理要求を該転送部に送信し、
該転送部が、該複数の処理要求を受け取ると、当該複数の処理要求に係る複数の転送データを取得し、取得した該複数の転送データを、該複数のバスを用いて該転送先に転送することを特徴とする、情報処理システム。 - データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続され、データ転送に係る処理要求をキューイングするキューイング部と、該処理要求を受け取ると当該処理要求に係る転送データを取得し取得した該転送データを該複数のバスのうちの一のバスを用いて該転送先に転送する転送部とを有するデータ転送装置において、該キューイング部にキューイングされた該処理要求を該転送部に送信することにより該処理要求にかかるデータ転送を実行させる機能を、コンピュータに実現させるためのデータ転送プログラムであって、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部、
該送信部による該処理要求の送信毎に、該キューイング部にキューイングされた該処理要求の数を検知する検知部、及び、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部として、該コンピュータを機能させるとともに、
該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、
該送信部が、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じて、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するとともに、該複数の処理要求を該転送部に送信し、
該転送部が、該複数の処理要求を受け取ると、当該複数の処理要求に係る複数の転送データを取得し、取得した該複数の転送データを、該複数のバスを用いて該転送先に転送するように、該コンピュータを機能させることを特徴とする、データ転送プログラム。 - データの転送先と、複数のバスを用いたSAS(Serial Attached SCSI)によって接続され、データ転送に係る処理要求をキューイングするキューイング部と、該処理要求を受け取ると当該処理要求に係る転送データを取得し取得した該転送データを該複数のバスのうちの一のバスを用いて該転送先に転送する転送部とを有するデータ転送装置において、該キューイング部にキューイングされた該処理要求を該転送部に送信することにより該処理要求にかかるデータ転送を実行させる機能を、コンピュータに実現させるためのデータ転送プログラムを記録したコンピュータ読取可能な記録媒体であって、
該データ転送プログラムが、
該キューイング部にキューイングされた該処理要求を該転送部に送信する送信部、
該送信部による該処理要求の送信毎に、該キューイング部にキューイングされた該処理要求の数を検知する検知部、及び、
該検知部によって検知された該処理要求の数が、該バスの数よりも少ないか否かを判断する判断部として、該コンピュータを機能させるとともに、
該判断部によって該処理要求の数が該バスの数よりも少ないと判断されると、
該送信部が、該キューイング部にキューイングされた該処理要求を、該バスの数と該キューイング部にキューイングされた該処理要求の数とに応じて、分割後の処理要求の数が該バスの数と同一になるように該キューイング部にキューイング中の処理要求を複数の処理要求に分割するとともに、該複数の処理要求を該転送部に送信し、
該転送部が、該複数の処理要求を受け取ると、当該複数の処理要求に係る複数の転送データを取得し、取得した該複数の転送データを、該複数のバスを用いて該転送先に転送するように、該コンピュータを機能させることを特徴とする、データ転送プログラムを記録したコンピュータ読取可能な記録媒体。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007242710A JP4445535B2 (ja) | 2007-09-19 | 2007-09-19 | データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 |
US12/197,497 US20090077276A1 (en) | 2007-09-19 | 2008-08-25 | Data transfer device, information processing system, and computer-readable recording medium carrying data transfer program |
KR1020080090724A KR101013269B1 (ko) | 2007-09-19 | 2008-09-16 | 데이터 전송 장치, 정보 처리 시스템, 데이터 전송 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
CN2008101491912A CN101393540B (zh) | 2007-09-19 | 2008-09-19 | 数据传送装置和信息处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007242710A JP4445535B2 (ja) | 2007-09-19 | 2007-09-19 | データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009075753A JP2009075753A (ja) | 2009-04-09 |
JP4445535B2 true JP4445535B2 (ja) | 2010-04-07 |
Family
ID=40455792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007242710A Expired - Fee Related JP4445535B2 (ja) | 2007-09-19 | 2007-09-19 | データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20090077276A1 (ja) |
JP (1) | JP4445535B2 (ja) |
KR (1) | KR101013269B1 (ja) |
CN (1) | CN101393540B (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9384160B2 (en) * | 2008-09-04 | 2016-07-05 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Methods and controllers for affiliation managment |
US20100070656A1 (en) * | 2008-09-12 | 2010-03-18 | Atto Technology, Inc. | System and method for enhanced load balancing in a storage system |
US8281054B2 (en) * | 2010-08-25 | 2012-10-02 | Lsi Corporation | Methods and apparatus for improved host/initiator utilization in serial advanced technology attachment communication |
US8621113B2 (en) * | 2011-05-31 | 2013-12-31 | Micron Technology, Inc. | Apparatus including host bus adapter and serial attachment programming compliant device and related methods |
US9336171B2 (en) * | 2012-11-06 | 2016-05-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Connection rate management in wide ports |
WO2015000105A1 (en) * | 2013-07-01 | 2015-01-08 | Empire Technology Development Llc | Data migration in a storage network |
JP6698353B2 (ja) * | 2016-01-05 | 2020-05-27 | Necプラットフォームズ株式会社 | 情報処理装置、dma転送制御方法およびdma転送制御プログラム |
CN117749739B (zh) * | 2024-02-18 | 2024-06-04 | 北京火山引擎科技有限公司 | 数据发送方法、数据接收方法、装置、设备及存储介质 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5718714A (en) * | 1994-10-11 | 1998-02-17 | Circon Corporation | Surgical instrument with removable shaft assembly |
EP0716370A3 (en) * | 1994-12-06 | 2005-02-16 | International Business Machines Corporation | A disk access method for delivering multimedia and video information on demand over wide area networks |
WO2001001262A1 (fr) * | 1999-06-24 | 2001-01-04 | Fujitsu Limited | Controleur de peripherique et systeme d'entree/sortie |
JP2003131815A (ja) * | 2001-10-22 | 2003-05-09 | Fujitsu Media Device Kk | シリアルインタフェースのデータ転送システム |
JP3998532B2 (ja) * | 2002-08-07 | 2007-10-31 | 株式会社ルネサステクノロジ | データ転送装置 |
US7603464B2 (en) * | 2003-06-04 | 2009-10-13 | Sony Computer Entertainment Inc. | Method and system for identifying available resources in a peer-to-peer network |
US7162550B2 (en) * | 2003-07-21 | 2007-01-09 | Intel Corporation | Method, system, and program for managing requests to an Input/Output device |
US7341587B2 (en) * | 2003-11-20 | 2008-03-11 | Warsaw Orthopedic, Inc. | Methods and devices for inserting and engaging vertebral implants in minimally invasive procedures |
US8123757B2 (en) * | 2003-12-31 | 2012-02-28 | Depuy Spine, Inc. | Inserter instrument and implant clip |
US7290066B2 (en) * | 2004-03-18 | 2007-10-30 | Lsi Corporation | Methods and structure for improved transfer rate performance in a SAS wide port environment |
US7334056B2 (en) * | 2004-08-09 | 2008-02-19 | Lsi Logic Corporation | Scalable architecture for context execution |
US7462182B2 (en) * | 2004-08-10 | 2008-12-09 | Warsaw Orthopedic, Inc. | Reducing instrument for spinal surgery |
JP4555029B2 (ja) * | 2004-09-01 | 2010-09-29 | 株式会社日立製作所 | ディスクアレイ装置 |
US20060080671A1 (en) * | 2004-10-13 | 2006-04-13 | Day Brian A | Systems and methods for opportunistic frame queue management in SAS connections |
JP2006164010A (ja) * | 2004-12-09 | 2006-06-22 | Seiko Epson Corp | 印刷システム、ドライバプログラム、及び印刷装置 |
-
2007
- 2007-09-19 JP JP2007242710A patent/JP4445535B2/ja not_active Expired - Fee Related
-
2008
- 2008-08-25 US US12/197,497 patent/US20090077276A1/en not_active Abandoned
- 2008-09-16 KR KR1020080090724A patent/KR101013269B1/ko not_active IP Right Cessation
- 2008-09-19 CN CN2008101491912A patent/CN101393540B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR101013269B1 (ko) | 2011-02-09 |
KR20090030220A (ko) | 2009-03-24 |
CN101393540B (zh) | 2010-07-14 |
CN101393540A (zh) | 2009-03-25 |
US20090077276A1 (en) | 2009-03-19 |
JP2009075753A (ja) | 2009-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4445535B2 (ja) | データ転送装置,情報処理システム,データ転送プログラム及び同プログラムを記録したコンピュータ読取可能な記録媒体 | |
US10725684B2 (en) | Method and apparatus for cost-based load balancing for port selection | |
US8898385B2 (en) | Methods and structure for load balancing of background tasks between storage controllers in a clustered storage environment | |
US6842835B1 (en) | Storage subsystem and its controlling method | |
JP4961481B2 (ja) | シリアルアドバンストテクノロジーアタッチメント(sata)およびシリアルアタッチトスモールコンピュータシステムインターフェース(scsi)(sas)のブリッジング | |
US7913037B2 (en) | Computer system for controlling allocation of physical links and method thereof | |
CN103150275B (zh) | 掉电后重建闪存控制器中使用的元数据的方法及闪存装置 | |
US9400616B2 (en) | Methodology for manipulation of SATA device access cycles | |
US7739432B1 (en) | Command switching for multiple initiator access to a SATA drive | |
JP5546635B2 (ja) | データ転送装置およびその制御方法 | |
US7839788B2 (en) | Systems and methods for load balancing storage system requests in a multi-path environment based on transfer speed of the multiple paths | |
US7464235B2 (en) | Storage system and control method thereof, and computer program product | |
CN102741801B (zh) | 存储控制装置和存储控制装置的控制方法 | |
CN106688217A (zh) | 用于融合联网和存储的方法和系统 | |
JP6955159B2 (ja) | ストレージシステム、ストレージ制御装置およびプログラム | |
US20090112877A1 (en) | System and Method for Communicating Data in a Storage Network | |
US7451285B2 (en) | Computer systems, management computers and storage system management method | |
CN110609659A (zh) | 用于执行读取命令的NVMeoF RAID实现方法 | |
US9268493B2 (en) | Systems and methods for smart storage interconnection in a heterogeneous storage environment | |
US8868806B2 (en) | Methods and structure for hardware management of serial advanced technology attachment (SATA) DMA Non-Zero Offsets in a serial attached SCSI (SAS) expander | |
JP2005267502A (ja) | データ転送用スイッチ | |
US20040205269A1 (en) | Method and apparatus for synchronizing data from asynchronous disk drive data transfers | |
JP2014167818A (ja) | データ転送装置およびデータ転送方法 | |
US7949806B2 (en) | Apparatus and method to provide an operation to an information storage device including protocol conversion and assigning priority levels to the operation | |
JP2009294699A (ja) | ストレージ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090319 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091124 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20091222 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100115 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140122 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |