JP2006333434A

Regulation of data communication by sequence number

Abstract

Problem to be solved.To provide a sequence number for communication between a client and a server for controlling the use of a server resource by the client. A server grants credits to a client, which consumes credits to send each command to the server. Each credit corresponds to one sequence number, and the set of sequence numbers forms a valid command window. For each command received, the server forces that command contains one sequence number in the valid command window and that sequence number is not used by another command. The server can also maintain the maximum window size, which prevents even credited clients from sending commands with sequence numbers above the maximum sequence number. [Selection diagram] Fig. 3

JP2006333434A, drawing sheet 1
Sheet 1 of 27

Term

Term ended

Projected expiry passed 9 December 2025, 0.8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

20 claims: 5 independent, 15 dependent

  1. 1
    クライアント及びサーバを有するネットワークコンピューティング環境において、 前記クライアントに少なくとも1つのクレジットを与えることであって、各クレジットは、前記クライアントが前記サーバへコマンドを送信するために使用できるシーケンス番号に対応し、1つ又は複数のシーケンス番号のセットは有効コマンドウィンドウを形成することと、 受信される各コマンドに、前記コマンドが、前記有効コマンドウィンドウ内にあるシーケンス番号を含むこと、及び前記シーケンス番号が別のコマンドに使用されていないことを強制することを含むことを特徴とする方法。
  2. 2
    最大ウィンドウサイズを保持し、これによって、クレジットを有するクライアントは、前記最大ウィンドウサイズに対応する最大のシーケンス番号を超えるシーケンス番号を有するコマンドを送信できなくなることをさらに含むことを特徴とする請求項1に記載の方法。
  3. 3
    コマンドを受信したことに応答して、前記ウィンドウを調整する未使用のシーケンス番号を前記クライアントに返すことをさらに含むことを特徴とする請求項1に記載の方法。
  4. 4
    前記未使用のシーケンス番号は、前記有効コマンドウィンドウ内の最後の番号から単調に増加した値であることを特徴とする請求項3に記載の方法。
  5. 5
    各シーケンス番号は、32ビット長以上の固定されたサイズの値であることを特徴とする請求項1に記載の方法。
  6. 6
    少なくとも1つのブロッキングオペレーションクレジットを前記クライアントに与えることと、前記クライアントが、使用されるブロッキングオペレーションクレジットの最大数を超えないことを前記サーバにおいて強制することをさらに含むことを特徴とする請求項1に記載の方法。
  7. 7
    ブロッキングオペレーションクレジットに対応するコマンドを受信することと、前記ブロッキングオペレーションが進行中であることを示すデータを、前記ブロッキングオペレーションの完了時に返されることになるそのオペレーション用のIDと共に返すこととをさらに含むことを特徴とする請求項6に記載の方法。
  8. 8
    前記ブロッキングオペレーションコマンドを受信したことに応答して前記ウィンドウを調整する未使用のシーケンス番号を前記クライアントに返すことをさらに含むことを特徴とする請求項7に記載の方法。
  9. 9
    追加のクレジットを求める要求を前記クライアントから受信することと、前記要求を拒否して、前記クライアントにとって利用可能なクレジットの数を減らすことをさらに含むことを特徴とする請求項1に記載の方法。
  10. 10
    予め前記クライアントに与えられていた少なくとも1つのクレジットを取り消すことをさらに含むことを特徴とする請求項1に記載の方法。
  11. 11
    取り消される前に使用しなければ、少なくとも1つのクレジットが取り消されることになる旨を前記クライアントに知らせることをさらに含むことを特徴とする請求項10に記載の方法。
  12. 12
    実行されると、 クライアントに複数のクレジットを与えることであって、各クレジットは、前記クライアントがサーバへコマンドを送信するために使用するシーケンス番号に対応し、前記シーケンス番号は有効コマンドウィンドウを形成することと、 前記クライアントからコマンドを受信した際に、 前記シーケンス番号が前記ウィンドウ内にあり、以前に使用されていないことを確認することと、 前記対応するシーケンス番号を、前記クライアントが使用できるシーケンス番号の中から削除し、クレジットを1つ消費することと、 前記クライアントに少なくとも1つの他のクレジットを与えるかどうかを決定することを実行するコンピュータ実行可能命令を有することを特徴とする少なくとも1つのコンピュータ可読媒体。
  13. 13
    前記サーバは、前記クライアントに少なくとも1つの他のクレジットを与えることを決定し、与えられる各クレジットに基づく対応するシーケンス番号によって前記有効コマンドウィンドウを調整することを特徴とする請求項12に記載のコンピュータ可読媒体。
  14. 14
    前記サーバは、前記クライアントに別のクレジットを与えないことを決定し、それによって、前記クライアントにとって利用可能な前記クレジットを動的に減らすことを特徴とする請求項12に記載のコンピュータ可読媒体。
  15. 15
    前記サーバは、最大ウィンドウサイズを評価することによって、前記クライアントに別のクレジットを与えないことを決定することを特徴とする請求項12に記載のコンピュータ可読媒体。
  16. 16
    予め前記クライアントに与えられていた少なくとも1つのクレジットを取り消すことを含むさらなるコンピュータ実行可能命令を有することを特徴とする請求項12に記載のコンピュータ可読媒体。
  17. 17
    取り消される前に使用しなければ、少なくとも1つのクレジットが取り消されることになる旨を前記クライアントに知らせることを含むさらなるコンピュータ実行可能命令を有することを特徴とする請求項16に記載のコンピュータ可読媒体。
  18. 18
    クライアント及びサーバを有するネットワークコンピューティング環境において、 前記クライアントに与えられるクレジットの数を制御することによってサーバリソースの使用を制限するためのメカニズムを含むサーバ側のシステムであって、前記メカニズムは、 前記クライアントに与えられる各クレジットを表す一意の番号を含む有効オペレーションウィンドウと、 受信したコマンドに関してさらなるサーバオペレーションを認めるために、前記コマンドが、前記有効オペレーションウィンドウ内にある1つのシーケンス番号を含み、前記一意の番号が別のコマンドに使用されていないことを保証する強制メカニズムと、 前記クライアントに与えられるクレジット及び前記有効オペレーションウィンドウ内の前記一意の番号を制御する割り当てメカニズムを含むことを特徴とするシステム。
  19. 19
    サーバリソースの使用を制限するための前記メカニズムは、サーバメッセージブロックプロトコルドライバに関連付けられていることを特徴とする請求項18に記載のシステム。
  20. 20
    前記メカニズムは、予め前記クライアントに与えられていた少なくとも1つのクレジットを取り消すための手段を含むことを特徴とする請求項18に記載のシステム。
Independent claims20