JP2017514210A - オブジェクト・ベース記憶システムにおけるサービス・フロー制御のための方法、コントローラ、およびシステム - Google Patents
オブジェクト・ベース記憶システムにおけるサービス・フロー制御のための方法、コントローラ、およびシステム Download PDFInfo
- Publication number
- JP2017514210A JP2017514210A JP2016558104A JP2016558104A JP2017514210A JP 2017514210 A JP2017514210 A JP 2017514210A JP 2016558104 A JP2016558104 A JP 2016558104A JP 2016558104 A JP2016558104 A JP 2016558104A JP 2017514210 A JP2017514210 A JP 2017514210A
- Authority
- JP
- Japan
- Prior art keywords
- request
- amount
- processing
- controller
- storage device
- 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.)
- Granted
Links
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
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5013—Request control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5022—Workload threshold
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
M=MMin(r1<0.2);
M=M1×r1×0.6(0.2≦r1<0.6);
M=M1×r1×0.8(0.6≦r1<0.8);
M=M1×r1×1.0(0.8≦r1<0.95);
M=M1×r1×1.1(M1<MMax、かつ、r1≧0.95);
M=MMax(M1=MMax、かつ、r1≧0.95)
t=tMaxDelay(r1<0.2);
t=(t1+15)/r1×1.6(0.2≦r1<0.6);
t=(t1+15)/r1×1.4(0.6≦r1<0.8);
t=(t1+15)/r1×1.0(0.8≦r1<0.95);
t=(t1+0)/r1×0.9(t1≧tThreshold、かつ、r1≧0.95);
t=tMinDelay(t1<tThreshold、かつ、r1≧0.95)
t=tMaxDelay(r1<0.2);
t=(t1+10)/r1×1.6(0.2≦r1<0.5);
t=(t1+10)/r1×1.4(0.5≦r1<0.8);
t=(t1+10)/r1×1.0(0.8≦r1<0.95);
t=(t1+0)/r1×0.9(t1≧tThreshold、かつ、r1≧0.95);
t=tMinDelay(t1<tThreshold、かつ、r1≧0.95)
M=MMin(r1<0.2);
M=M1×r1×0.6(0.2≦r1<0.6);
M=M1×r1×0.8(0.6≦r1<0.8);
M=M1×r1×1.0(0.8≦r1<0.95);
M=M1×r1×1.1(M1<MMax、かつ、r1≧0.95);
M=MMax(M1=MMax、かつ、r1≧0.95)
MMin=200、MMax=3000、かつ、r1=(Q1/P1)×100%
t=tMaxDelay(r1<0.2);
t=(t1+15)/r1×1.6(0.2≦r1<0.6);
t=(t1+15)/r1×1.4(0.6≦r1<0.8);
t=(t1+15)/r1×1.0(0.8≦r1<0.95);
t=(t1+0)/r1×0.9(t1≧tThreshold、かつ、r1≧0.95);
t=tMinDelay(t1<tThreshold、かつ、r1≧0.95)
tMinDelay=0、tMaxDelay=200、かつ、r1=(Q1/P1)×100%
M=M1×r1×1.0=2000×0.86×1.0=1720;および
t=(t1+15)/r1×1.0=(100+15)/0.86×1.0=134
である。
103 記憶装置クライアント
104 記憶装置クラスタ
501 コントローラ
502 クライアント
503 IPディスク・クライアント
504 IPディスク・クラスタ
701 格納モジュール
702 処理モジュール
703 受信モジュール
704 送信モジュール
801−1 格納モジュール
801−2 処理モジュール
801−3 受信モジュール
801−4 送信モジュール
901−1 格納モジュール
901−2 処理モジュール
901−3 受信モジュール
901−4 送信モジュール
903 記憶装置クライアント
Claims (40)
- オブジェクト・ベース記憶システムにおけるサービス・フロー制御方法であって、前記オブジェクト・ベース記憶システムはコントローラおよび記憶装置クライアントを備え、前記方法は、
前記コントローラにより、第1のオブジェクトIO要求を受信するステップと、
処理量閾値と処理すべき量を取得するステップであって、前記処理量閾値は前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求の量の閾値であり、前記処理すべき量は前記オブジェクト・ベース記憶システム内の処理すべきオブジェクトIO要求の量である、ステップと、
前記処理すべき量が前記処理量閾値より小さい場合、前記第1のオブジェクトIO要求を前記記憶装置クライアントに送信し、前記処理すべき量を更新するステップと、
前記第1のオブジェクトIO要求に対して前記記憶装置クライアントにより応答された第1の応答メッセージを受信するステップであって、前記第1の応答メッセージは前記第1のオブジェクトIO要求の処理結果を運搬する、ステップと、
事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記処理量閾値を調節するステップと、
を含む、方法。 - 前記コントローラが第2のオブジェクトIO要求を受信したとき、前記処理量閾値の現在値および前記処理すべき量の現在値を取得するステップと、
前記処理すべき量の現在値が前記処理量閾値の現在値以上である場合、拒否応答メッセージまたはビジー応答メッセージで応答するステップと、
をさらに含む、請求項1に記載の方法。 - 前記第1のオブジェクトIO要求を前記記憶装置クライアントに送信した後に休止時間を開始するステップと、
前記コントローラが第3のオブジェクトIO要求を受信したとき、前記処理量閾値の現在値および前記処理すべき量の現在値を取得するステップと、
前記処理すべき量の現在値が前記処理量閾値の現在値より小さい場合、前記休止時間が終了した後に前記第3のオブジェクトIO要求を前記記憶装置クライアントに送信し、前記処理すべき量を更新するステップと、
をさらに含む、請求項1または2に記載の方法。 - 前記第1のオブジェクトIO要求に対して前記記憶装置クライアントにより応答された第1の応答メッセージを受信した後、前記方法は、
送信量を更新するステップであって、前記送信量は前記コントローラにより前記記憶装置クライアントに送信されたオブジェクトIO要求の量である、ステップと、
前記第1の応答メッセージで運搬される処理結果が処理成功を示す場合、処理成功量を更新するステップであって、前記処理成功量は、前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量である、ステップ、または、前記第1の応答メッセージで運搬される処理結果が処理失敗を示す場合、処理成功量を不変に保つステップと、
をさらに含む、請求項1乃至3の何れか1項に記載の方法。 - 前記第1のオブジェクトIO要求を前記記憶装置クライアントに送信するステップは、
分割サイズ閾値を取得するステップであって、前記分割サイズ閾値は、前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求のサイズ閾値である、ステップと、
前記第1のオブジェクトIO要求のサイズが前記分割サイズ閾値より大きいとき、前記コントローラにより、前記第1のオブジェクトIO要求を複数のサブオブジェクトIO要求に分割するステップであって、各サブオブジェクトIO要求のサイズは前記分割サイズ閾値より大きくなく、同じ識別子を運搬する、ステップと、
を含み、
前記第1のオブジェクトIO要求を前記記憶装置クライアントに送信するステップは特に、
前記コントローラにより、第1のサブオブジェクトIO要求を前記記憶装置クライアントに送信するステップと、
前記休止時間が終了した後に、休止時間を開始し、第2のサブオブジェクトIO要求を前記記憶装置クライアントに送信するステップと、
前記複数のサブオブジェクトIO要求が前記記憶装置クライアントに送信されるまで、前記休止時間を開始するステップの実行に戻るステップと、
である、請求項1または2に記載の方法。 - 前記コントローラにより、第1のサブオブジェクトIO要求を前記記憶装置クライアントに送信した後に、
前記第1のサブオブジェクトIO要求に対して前記記憶装置クライアントにより応答された応答メッセージを受信するステップであって、前記応答メッセージは前記第1のサブオブジェクトIO要求の処理結果を運搬するステップと、
送信量を更新するステップであって、前記送信量は前記コントローラにより前記記憶装置クライアントに送信されたオブジェクトIO要求の量であるステップと、
前記処理結果が処理成功を示す場合、処理成功量を更新するステップであって、前記処理成功量は、前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量であるステップ、または、
前記処理結果が最終処理失敗を示す場合、処理成功量を不変に保つステップと、
前記複数のサブオブジェクトIO要求の処理結果が受信されるまで、前記記憶装置クライアントにより応答される応答メッセージを受信するステップの実行に戻るステップと、
をさらに含む、請求項5に記載の方法。 - 前記記憶装置クライアントによるオブジェクトIO要求の受信された処理結果に従って前記処理量閾値を調節するステップは、
前記コントローラにより、事前に設定された期間に従って、前記送信量の現在値および前記処理成功量の現在値を定期的に取得するステップと、
前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算するステップと、
前記処理成功率を第1の調節係数として用いることによって前記処理量閾値を調節するステップと、
を含む、請求項4または6に記載の方法。 - 第2の調節係数に従って、前記第1の調節係数に従って調節を実施した後に取得された量閾値を調節するステップであって、前記第2の調節係数の値は前記第1の調節係数の値に比例するステップをさらに含む、請求項7に記載の方法。
- 前記処理量閾値の上限および下限は前記コントローラで設定され、前記方法は、
前記処理量閾値の上限または下限に従って、調節の後に取得された処理量閾値を修正して、調節の後に取得された前記処理量閾値の値が前記処理量閾値の上限および下限の間にあるようにするステップ
をさらに含む、請求項7または8に記載の方法。 - 前記コントローラにより、事前に設定された期間に従って、前記送信量の現在値および前記処理成功量の現在値を定期的に取得するステップと、
前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算するステップと、
前記処理成功率を第1の調節係数として用いることによって前記休止時間を調節するステップと、
をさらに含む、請求項4または6に記載の方法。 - 第3の調節係数と前記第1の調節係数に従って前記休止時間を調節するステップであって、前記第3の調節係数の値は前記第1の調節係数の値と反比例するステップをさらに含む、請求項10に記載の方法。
- 前記休止時間の上限および下限は前記コントローラで設定され、前記方法は、
前記休止時間の上限または下限に従って、調節後に取得された休止時間を修正して、調節の後に取得された前記休止時間の値が前記休止時間の上限と下限の間にあるようにするステップ
をさらに含む、請求項10または11に記載の方法。 - 前記コントローラにより、オブジェクトIO要求を送信した要求者に応答メッセージで応答するステップであって、前記応答メッセージは前記オブジェクトIO要求の最終処理結果を運搬するステップと、
前記処理すべき量を更新するステップと、
をさらに含む、請求項1乃至12の何れか1項に記載の方法。 - オブジェクト・ベース記憶システムにおけるサービス・フロー制御方法であって、前記オブジェクト・ベース記憶システムはコントローラおよび記憶装置クライアントを備え、前記方法は、
前記コントローラにより、第1のオブジェクトIO要求を受信するステップと、
分割サイズ閾値を取得するステップであって、前記分割サイズ閾値は、前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求のサイズ閾値であるステップと、
前記第1のオブジェクトIO要求のサイズが前記分割サイズ閾値より大きいとき、前記コントローラにより、前記第2のオブジェクトIO要求を複数のサブオブジェクトIO要求に分割するステップであって、各サブオブジェクトIO要求のサイズは前記分割サイズ閾値より大きくなく、同じ識別子を運搬するステップと、
第1のサブオブジェクトIO要求を前記記憶装置クライアントに送信し、休止時間を開始するステップと、
前記第1のサブオブジェクトIO要求に対して前記記憶装置クライアントにより応答された応答メッセージを受信するステップであって、前記応答メッセージは前記第1のサブオブジェクトIO要求の処理結果を運搬するステップと、
事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記休止時間を調節するステップと、
を含む、方法。 - 休止時間を開始した後、
前記休止時間が終了した後、第2のサブオブジェクトIO要求を前記記憶装置クライアントに送信するステップと、
前記複数のサブオブジェクトIO要求が前記記憶装置クライアントに送信されるまで、前記休止時間を開始するステップの実行に戻るステップと、
をさらに含む、請求項14に記載の方法。 - 前記第1のサブオブジェクトIO要求に対する応答メッセージを受信した後、
送信量を更新するステップであって、前記送信量は前記コントローラにより前記記憶装置クライアントに送信されたオブジェクトIO要求の量である、ステップと、
前記第1の応答メッセージで運搬される第1のオブジェクトIO要求の前記処理結果が処理成功を示す場合、処理成功量を更新するステップであって、前記処理成功量は前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量であるステップ、または、前記第1の応答メッセージで運搬される前記第1のオブジェクトIO要求の前記処理結果が最終処理失敗を示す場合、処理成功量を不変に保つステップと、
前記複数のサブオブジェクトIO要求の処理結果が受信されるまで、前記記憶装置クライアントにより応答される応答メッセージを受信するステップの実行に戻るステップと、
をさらに含む、請求項14または15に記載の方法。 - 事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記休止時間を調節するステップは特に、
前記コントローラにより、事前に設定された期間に従って、前記送信量の現在値および前記処理成功量の現在値を定期的に取得するステップと、
前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算するステップと、
前記処理成功率を第1の調節係数として用いることによって前記休止時間を調節するステップと、
である、請求項14乃至16の何れか1項に記載の方法。 - 第3の調節係数に従って、調節が実施された後に取得された休止時間を前記第1の調節係数に従って調節するステップであって、前記第3の調節係数の値は前記第1の調節係数の値と反比例するステップをさらに含む、請求項17に記載の方法。
- 前記休止時間の上限および下限は前記コントローラで設定され、前記方法は、
前記休止時間の上限または下限に従って、調節後に取得された休止時間を修正して、調節の後に取得された前記休止時間の値が前記休止時間の上限と下限の間にあるようにするステップ
をさらに含む、請求項17または18に記載の方法。 - オブジェクト・ベース記憶システムにおけるサービス・フロー制御を実装するためのコントローラであって、前記コントローラは格納モジュール701、処理モジュール702、受信モジュール703、および送信モジュール704を備え、
前記受信モジュール703は、第1のオブジェクトIO要求を受信し、前記第1のオブジェクトIO要求を前記処理モジュール702に送信するように構成され、
前記処理モジュール702は、前記第1のオブジェクトIO要求を受信した後、処理量閾値と処理すべき量を前記格納モジュール701から取得し、前記処理量閾値は前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求の量の閾値であり、前記処理すべき量は前記オブジェクト・ベース記憶システム内の処理すべきオブジェクトIO要求の量であり、
前記処理すべき量が前記処理量閾値より小さい場合、前記処理モジュール702はさらに、前記第1のオブジェクトIO要求を前記送信モジュール704に送信し、前記格納モジュール701内の前記処理すべき量を更新するように構成され、
前記送信モジュール704はさらに、前記第1のオブジェクトIO要求を記憶装置クライアントに送信し、前記第1のオブジェクトIO要求に対して前記記憶装置クライアントにより応答された第1の応答メッセージを受信し、前記第1の応答メッセージを前記処理モジュール702に送信するように構成され、前記第1の応答メッセージは前記第1のオブジェクトIO要求の処理結果を運搬し、
前記処理モジュール702はさらに、事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記格納モジュール701内の前記処理量閾値を調節するように構成される、
コントローラ。 - 前記処理すべき量が前記処理量閾値以上である場合、前記処理モジュール702はさらに、拒否応答メッセージまたはビジー応答メッセージで前記第1のオブジェクトIO要求の要求者に応答するように構成される、請求項20に記載のコントローラ。
- 前記処理モジュール702はさらに、前記第1のオブジェクトIO要求を前記送信モジュール704に送信した後に休止時間を開始し、前記休止時間が終了した後に第2のオブジェクトIO要求を前記送信モジュール704に送信するように構成される、請求項20乃至21に記載のコントローラ。
- 前記処理モジュール702はさらに、
前記第1の応答メッセージを受信した後、前記格納モジュール704内の送信量を更新し、
前記第1の応答メッセージで運搬される処理結果が処理成功を示す場合、前記格納モジュール704内の処理成功量を更新する
ように構成され、
前記送信量は前記コントローラにより前記記憶装置クライアントに送信されたオブジェクトIO要求の量であり、
前記処理成功量は、前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量である、
請求項20乃至22の何れか1項に記載のコントローラ。 - 前記処理モジュール702はさらに、
前記第1のオブジェクトIO要求が分割サイズ閾値より大きいとき、前記第1のオブジェクトIO要求を複数のサブオブジェクトIO要求に分割し、
前記送信モジュール704を用いることによって、分割によって得られた第1のサブオブジェクトIO要求を前記記憶装置クライアントに送信し、
休止時間を開始し、前記休止時間が終了した後に前記送信モジュール704を用いることによって第2のサブオブジェクトIO要求を送信する
ように構成され、
各サブオブジェクトIO要求のサイズは前記分割サイズ閾値より大きくなく、同じ識別子を運搬し、前記分割サイズ閾値は、前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求のサイズ閾値である、
請求項20または21に記載のコントローラ。 - 前記受信モジュール704は、前記第1のサブオブジェクトIO要求に対して前記記憶装置クライアントにより応答された応答メッセージを受信し、前記応答メッセージを前記処理モジュール702に送信し、前記応答メッセージは前記第1のサブオブジェクトIO要求の処理結果を運搬し、
前記処理モジュール702はさらに、前記第1のサブオブジェクトIO要求の前記処理結果を受信し、送信量を更新するように構成され、前記送信量は前記記憶装置クライアントに送信されたオブジェクトIO要求の量であり、
前記処理結果が処理成功を示す場合、前記処理モジュール702はさらに、処理成功量を更新するように構成され、前記処理成功量は、前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量である、
請求項24に記載のコントローラ。 - 前記事前に設定された条件が満たされたとき、前記処理モジュール702が、オブジェクトIO要求の受信された処理結果に従って前記格納モジュール701内の前記処理量閾値を調節することは特に、
前記処理モジュール702は、事前に設定された期間に従って前記送信量の現在値および前記処理成功量の現在値を定期的に取得し、前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算し、前記処理成功率を第1の調節係数として用いることによって前記処理量閾値を調節する
ことである、請求項23または25に記載のコントローラ。 - 前記処理モジュール702はさらに、第2の調節係数に従って、前記第1の調節係数に従って調節を実施した後に取得された量閾値を調節するように構成され、前記第2の調節係数の値は前記第1の調節係数の値に比例する、請求項26に記載のコントローラ。
- 前記格納モジュール701は前記量閾値の上限および下限をさらに格納し、
前記処理モジュール702はさらに、前記処理量閾値の上限または下限に従って、調節の後に取得された処理量閾値を修正して、調節の後に取得された前記処理量閾値の値が前記処理量閾値の上限および下限の間にあるようにするように構成される、
請求項26または27に記載のコントローラ。 - 前記処理モジュール702はさらに、事前に設定された期間に従って前記送信量の現在値および前記処理成功量の現在値を定期的に取得し、前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算し、前記処理成功率を第1の調節係数として用いることによって前記休止時間を調節するように構成される、請求項23または25に記載のコントローラ。
- 前記処理モジュール702はさらに、第3の調節係数と前記第1の調節係数に従って前記休止時間を調節するように構成され、前記第3の調節係数の値は前記第1の調節係数の値と反比例する、請求項29に記載のコントローラ。
- 前記格納モジュール701は前記休止時間の上限および下限をさらに格納し、
前記処理モジュール702はさらに、前記休止時間の上限または下限に従って、調節後に取得された休止時間を修正して、調節の後に取得された前記休止時間の値が前記休止時間の上限と下限の間にあるようにするように構成される、
請求項29または30に記載のコントローラ。 - 前記処理モジュール702はさらに、前記受信モジュール703を用いることによって、オブジェクトIO要求を送信した要求者に応答メッセージで応答し、前記処理すべき量を更新するように構成され、前記応答メッセージは前記オブジェクトIO要求の最終処理結果を運搬する、請求項20乃至31の何れか1項に記載のコントローラ。
- オブジェクト・ベース記憶システムにおけるサービス・フロー制御を実装するためのコントローラであって、前記コントローラは格納モジュール701、処理モジュール702、受信モジュール703、および送信モジュール704を備え、
前記受信モジュール703は、第1のオブジェクトIO要求を受信し、前記第1のオブジェクトIO要求を前記処理モジュール702に送信するように構成され、
前記処理モジュール702は、前記第1のオブジェクトIO要求を受信した後、分割サイズ閾値を前記格納モジュール701から取得するように構成され、前記分割サイズ閾値は、前記オブジェクト・ベース記憶システムにより処理できるオブジェクトIO要求のサイズであり、
前記処理モジュール702はさらに、前記第1のオブジェクトIO要求のサイズが前記分割サイズ閾値より大きいとき、前記第2のオブジェクトIO要求を複数のサブオブジェクトIO要求に分割し、第1のサブオブジェクトIO要求を前記送信モジュール704に送信し、休止時間を開始するように構成され、各サブオブジェクトIO要求のサイズは前記分割サイズ閾値より大きくなく、同じ識別子を運搬し、
前記送信モジュール704は、前記第1のサブオブジェクトIO要求を前記コントローラに接続された記憶装置クライアントに送信し、前記第1のサブオブジェクトIO要求に対して前記記憶装置クライアントにより応答された応答メッセージを受信し、前記第1のサブオブジェクトIO要求に対する前記応答メッセージを前記処理モジュール702に送信するように構成され、前記応答メッセージは前記第1のサブオブジェクトIO要求の処理結果を運搬し、
前記処理モジュール702はさらに、事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記休止時間を調節するように構成される、
コントローラ。 - 前記処理モジュール702はさらに、
前記休止時間が開始された後、前記休止時間が終了した後に前記送信モジュールを用いることによって、第2のサブオブジェクトIO要求を前記記憶装置クライアントに送信し、
前記複数のサブオブジェクトIO要求が前記記憶装置クライアントに送信されるまで、前記休止時間を開始するステップの実行に戻る
ように構成される、請求項33に記載のコントローラ。 - 前記処理モジュール702はさらに、前記第1のサブオブジェクトIO要求に対する前記応答メッセージを受信した後、送信量を更新するように構成され、前記送信量は、前記送信モジュール704を用いることによって前記処理モジュール702により前記記憶装置クライアントに送信されたオブジェクトIO要求の量であり、
前記第1のサブオブジェクトIO要求に対する前記応答メッセージで運搬される前記第1のオブジェクトIO要求の前記処理結果が処理成功を示す場合、前記処理モジュール702はさらに、処理成功量を更新するか、または、前記第1のサブオブジェクトIO要求に対する前記応答メッセージで運搬される前記第1のオブジェクトIO要求の前記処理結果が最終処理失敗を示す場合、処理成功量を不変に保つように構成され、前記処理成功量は、前記記憶装置クライアントにより成功裏に処理された受信されたオブジェクトIO要求の量である、
請求項33または34に記載のコントローラ。 - 前記処理モジュール702はさらに、事前に設定された条件が満たされたとき、オブジェクトIO要求の受信された処理結果に従って前記休止時間を調節するように構成されることは特に、
前記処理モジュール702は、事前に設定された期間に従って前記送信量の現在値および前記処理成功量の現在値を定期的に取得し、前記送信量の現在値および前記処理成功量の現在値に従ってオブジェクトIO要求の処理成功率を計算し、前記処理成功率を第1の調節係数として用いることによって前記休止時間を調節する
ことである、請求項33乃至35の何れか1項に記載のコントローラ。 - 前記処理モジュール702はさらに、第3の調節係数に従って、調節が実施された後に取得された休止時間を前記第1の調節係数に従って調節するように構成され、前記第3の調節係数の値は前記第1の調節係数の値と反比例する、請求項36に記載のコントローラ。
- 前記格納モジュール701は前記休止時間の上限および下限をさらに格納し、
前記処理モジュール702はさらに、前記休止時間の上限または下限に従って、調節後に取得された休止時間を修正して、調節の後に取得された前記休止時間の値が前記休止時間の上限と下限の間にあるようにするように構成される、
請求項36または37に記載のコントローラ。 - 請求項20乃至39の何れか1項に記載のコントローラを備える、オブジェクト・ベース記憶システムにおけるサービス・フロー制御を実装するための装置。
- 請求項20乃至39の何れか1項に記載のコントローラ、記憶装置クライアント、および少なくとも2つの記憶装置を備えた、サービス・フロー制御を実装するためのオブジェクト・ベース記憶システムであって、前記コントローラは前記記憶装置クライアントに接続され、前記記憶装置クライアントは前記少なくとも2つの記憶装置に接続される、オブジェクト・ベース記憶システム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/089180 WO2016061766A1 (zh) | 2014-10-22 | 2014-10-22 | 对象存储系统中的业务流控制方法、控制器和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017514210A true JP2017514210A (ja) | 2017-06-01 |
JP6403140B2 JP6403140B2 (ja) | 2018-10-10 |
Family
ID=55760058
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016558104A Active JP6403140B2 (ja) | 2014-10-22 | 2014-10-22 | オブジェクト・ベース記憶システムにおけるサービス・フロー制御のための方法、コントローラ、およびシステム |
Country Status (5)
Country | Link |
---|---|
US (2) | US9804981B2 (ja) |
EP (1) | EP3128420B1 (ja) |
JP (1) | JP6403140B2 (ja) |
CN (1) | CN105900061B (ja) |
WO (1) | WO2016061766A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180335975A1 (en) * | 2017-05-16 | 2018-11-22 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Translating a host data storage command into multiple disk commands |
US10599340B1 (en) * | 2017-07-13 | 2020-03-24 | EMC IP Holding LLC | Policy driven IO scheduler to improve read IO performance in hybrid storage systems |
US10719245B1 (en) * | 2017-07-13 | 2020-07-21 | EMC IP Holding Company LLC | Transactional IO scheduler for storage systems with multiple storage devices |
CN107465630B (zh) * | 2017-08-30 | 2021-08-31 | 郑州云海信息技术有限公司 | 一种带宽流量监管方法及系统 |
CN107911840A (zh) * | 2017-11-21 | 2018-04-13 | 青岛海信电器股份有限公司 | 流媒体传输的控制方法及装置 |
CN110740099B (zh) * | 2018-07-18 | 2023-03-31 | 阿里巴巴集团控股有限公司 | 一种数据流控方法和装置 |
CN109101194A (zh) * | 2018-07-26 | 2018-12-28 | 郑州云海信息技术有限公司 | 一种刷写性能优化方法和存储系统 |
US11157205B2 (en) * | 2018-11-15 | 2021-10-26 | Western Digital Technologies, Inc. | Object storage system with control entity quota enforcement |
US11204717B2 (en) | 2018-11-15 | 2021-12-21 | Western Digital Technologies, Inc. | Object storage system with access control quota status check |
US11580082B2 (en) | 2018-11-15 | 2023-02-14 | Western Digital Technologies, Inc. | Object storage system with control entity quota usage mapping |
CN110096379B (zh) * | 2019-04-30 | 2022-09-09 | 武汉斗鱼鱼乐网络科技有限公司 | 基于通用协议的消息分发方法、装置、设备及存储介质 |
EP3942749A4 (en) | 2019-05-23 | 2023-06-07 | Hewlett Packard Enterprise Development LP | OPTIMIZED ADAPTIVE ROUTING TO REDUCE THE NUMBER OF JUMPS |
CN110333770B (zh) * | 2019-07-10 | 2023-05-09 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
CN110377536B (zh) * | 2019-07-12 | 2023-05-12 | 深信服科技股份有限公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN110650206B (zh) * | 2019-09-29 | 2022-03-11 | 北京天融信网络安全技术有限公司 | 分布式存储系统中io流量控制方法、装置和存储介质 |
CN111190709B (zh) * | 2019-11-19 | 2024-04-12 | 泰康保险集团股份有限公司 | 处理请求的方法、装置、电子设备及可读存储介质 |
CN111291104B (zh) * | 2020-01-20 | 2023-07-28 | 中国银联股份有限公司 | 一种基于异步应答的传输数据的方法及系统 |
CN113849129B (zh) * | 2021-09-18 | 2023-08-25 | 苏州浪潮智能科技有限公司 | 一种存储控制器间的io请求转发方法、装置及设备 |
CN113741991B (zh) * | 2021-11-04 | 2022-02-18 | 苏州浪潮智能科技有限公司 | 提升ssd服务质量方法、装置、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108841A (ja) * | 2000-10-03 | 2002-04-12 | Shimadzu Corp | 分散型制御システム |
JP2004310652A (ja) * | 2003-04-10 | 2004-11-04 | Just Syst Corp | 情報配信装置および情報配信装置に利用可能なアクセス管理方法 |
CN100466625C (zh) * | 2006-09-07 | 2009-03-04 | 华为技术有限公司 | 一种实现业务流量控制的方法及系统 |
US20110153724A1 (en) * | 2009-12-23 | 2011-06-23 | Murali Raja | Systems and methods for object rate limiting in multi-core system |
US20120239376A1 (en) * | 2011-03-14 | 2012-09-20 | Sap Ag | Predicting performance of a consolidated virtualized computing environment |
US20140047000A1 (en) * | 2012-08-07 | 2014-02-13 | Ca, Inc. | Systems and methods for throttling polling |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7065767B2 (en) | 2001-06-29 | 2006-06-20 | Intel Corporation | Managed hosting server auditing and change tracking |
US7765555B2 (en) * | 2005-06-17 | 2010-07-27 | Oracle America, Inc. | Facilitating bulk lock-unbiasing in an object-based system |
WO2007002799A1 (en) | 2005-06-29 | 2007-01-04 | Lightspeed Logic, Inc. | Methods and systems for placement |
US8151082B2 (en) * | 2007-12-06 | 2012-04-03 | Fusion-Io, Inc. | Apparatus, system, and method for converting a storage request into an append data storage command |
US9104599B2 (en) * | 2007-12-06 | 2015-08-11 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for destaging cached data |
CN100476742C (zh) * | 2007-02-09 | 2009-04-08 | 华中科技大学 | 基于对象存储设备的负载平衡方法 |
US7877556B2 (en) * | 2007-03-30 | 2011-01-25 | Hitachi, Ltd. | Method and apparatus for a unified storage system |
CN101776946B (zh) * | 2010-01-20 | 2011-06-15 | 中国人民解放军国防科学技术大学 | 一种基于对象存储系统的功耗控制方法 |
US8984216B2 (en) * | 2010-09-09 | 2015-03-17 | Fusion-Io, Llc | Apparatus, system, and method for managing lifetime of a storage device |
CN101957729B (zh) * | 2010-09-27 | 2014-07-02 | 中兴通讯股份有限公司 | 逻辑块变换方法及基于该方法兼容用户读写的方法和装置 |
US9589029B2 (en) * | 2010-12-28 | 2017-03-07 | Citrix Systems, Inc. | Systems and methods for database proxy request switching |
CN103036956B (zh) * | 2012-11-30 | 2016-03-30 | 航天恒星科技有限公司 | 一种分布式组态化海量数据归档系统及实现方法 |
US20140153577A1 (en) * | 2012-12-03 | 2014-06-05 | Aruba Networks, Inc. | Session-based forwarding |
CN103150225B (zh) * | 2013-03-25 | 2014-04-09 | 中国人民解放军国防科学技术大学 | 基于应用级代理的对象并行存储系统磁盘满异常容错方法 |
US9652514B2 (en) * | 2014-05-20 | 2017-05-16 | Citrix Systems, Inc. | Systems and methods for redirect handling |
US9639854B2 (en) * | 2014-06-26 | 2017-05-02 | Nuance Communications, Inc. | Voice-controlled information exchange platform, such as for providing information to supplement advertising |
US20160062832A1 (en) * | 2014-09-02 | 2016-03-03 | Netapp. Inc. | Wide spreading data storage architecture |
JP6443170B2 (ja) * | 2015-03-26 | 2018-12-26 | 富士通株式会社 | 階層ストレージ装置,階層ストレージ制御装置,階層ストレージ制御プログラム及び階層ストレージ制御方法 |
US9787772B2 (en) * | 2015-05-19 | 2017-10-10 | Netapp, Inc. | Policy based alerts for networked storage systems |
-
2014
- 2014-10-22 EP EP14904442.2A patent/EP3128420B1/en active Active
- 2014-10-22 CN CN201480064791.2A patent/CN105900061B/zh active Active
- 2014-10-22 JP JP2016558104A patent/JP6403140B2/ja active Active
- 2014-10-22 WO PCT/CN2014/089180 patent/WO2016061766A1/zh active Application Filing
-
2017
- 2017-04-18 US US15/490,118 patent/US9804981B2/en active Active
- 2017-09-26 US US15/716,163 patent/US9984013B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108841A (ja) * | 2000-10-03 | 2002-04-12 | Shimadzu Corp | 分散型制御システム |
JP2004310652A (ja) * | 2003-04-10 | 2004-11-04 | Just Syst Corp | 情報配信装置および情報配信装置に利用可能なアクセス管理方法 |
CN100466625C (zh) * | 2006-09-07 | 2009-03-04 | 华为技术有限公司 | 一种实现业务流量控制的方法及系统 |
US20110153724A1 (en) * | 2009-12-23 | 2011-06-23 | Murali Raja | Systems and methods for object rate limiting in multi-core system |
US20120239376A1 (en) * | 2011-03-14 | 2012-09-20 | Sap Ag | Predicting performance of a consolidated virtualized computing environment |
US20140047000A1 (en) * | 2012-08-07 | 2014-02-13 | Ca, Inc. | Systems and methods for throttling polling |
Also Published As
Publication number | Publication date |
---|---|
US20170220500A1 (en) | 2017-08-03 |
EP3128420A1 (en) | 2017-02-08 |
JP6403140B2 (ja) | 2018-10-10 |
WO2016061766A1 (zh) | 2016-04-28 |
EP3128420A4 (en) | 2017-08-23 |
CN105900061A (zh) | 2016-08-24 |
US9984013B2 (en) | 2018-05-29 |
CN105900061B (zh) | 2018-01-16 |
US20180018293A1 (en) | 2018-01-18 |
EP3128420B1 (en) | 2019-08-28 |
US9804981B2 (en) | 2017-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6403140B2 (ja) | オブジェクト・ベース記憶システムにおけるサービス・フロー制御のための方法、コントローラ、およびシステム | |
US11157324B2 (en) | Partitioning for delayed queues in a distributed network | |
US20170031622A1 (en) | Methods for allocating storage cluster hardware resources and devices thereof | |
WO2023050901A1 (zh) | 一种负载均衡方法、装置、设备、计算机存储介质和程序 | |
US10944683B1 (en) | Hybrid queue system for request throttling | |
WO2019184096A1 (zh) | 一种下载数据资源的方法和系统 | |
US11461150B1 (en) | Autoscaling and throttling in an elastic cloud service | |
EP2913981B1 (en) | Image forming system, relay server, communication controlling method and non-transitory computer readable recording medium | |
US9152639B2 (en) | Method and apparatus to transfer file data to a cloud environment | |
CN109815204A (zh) | 一种基于拥塞感知的元数据请求分发方法及设备 | |
CN113268329A (zh) | 一种请求调度方法、装置及存储介质 | |
EP3886396A1 (en) | Methods for dynamically controlling transmission control protocol push functionality and devices thereof | |
US10182057B1 (en) | Highly scalable fine grained rate limiting | |
EP3707610B1 (en) | Redundant data storage using different compression processes | |
CN107483637B (zh) | 一种基于nfs的客户端链接管理方法及装置 | |
JP2004046372A (ja) | 分散処理システム、リソース割当方法およびプログラムならびにリソース割当プログラムが記録された記録媒体 | |
US10091068B1 (en) | System for modeling distributed systems | |
JP6280237B2 (ja) | 計算機システム及びデータ処理方法 | |
JP2019526860A (ja) | スケーラブルなリアルタイムメッセージングシステム | |
CN116028196A (zh) | 数据处理方法、装置及存储介质 | |
JP2015094976A (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
CN112751895A (zh) | 通信连接保活方法及其系统 | |
WO2016070364A1 (zh) | 一种数据分发方法,装载机及存储系统 | |
JP5690287B2 (ja) | 負荷分散プログラムおよび負荷分散装置 | |
WO2021036989A1 (zh) | 一种数据访问的方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170920 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180116 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180803 |
|
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: 20180814 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180904 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6403140 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |