【手続補正書】
【提出日】平成27年6月5日(2015.6.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピューター実行可能命令を格納するコンピューター読み取り可能記憶媒体であって、プロセッサーによって前記命令を実行すると、リモート・ダイレクト・メモリー・アクセス（ＲＤＭＡ）によるデーター動作を使用してデーターを交換する方法を実行し、前記方法が、
サーバーとの接続を作るステップと、
前記サーバーとの接続をネゴシエートするステップであって、前記ネゴシエーションが、前記接続において前記サーバーが受信する最大バイト数を決める、ステップと、
前記サーバーへの接続に関連するデーターを送るパケット数を決定するステップと、
前記データーの断片化を使用するか否か判断するステップと、
前記データーの断片化を使用しないとき、第１プロトコル・パケットを前記データーと共に前記サーバーに送るステップと、
前記データーの断片化を使用するとき、
送信バッファーにおける最初のバイトを、前記第１プロトコル・パケットにおけるデーターとして送るように初期化するステップと、
前記第１プロトコル・パケットにおいてDataLengthフィールドおよびRemainingDataLengthフィールドを設定するステップであって、RemainingDataLengthフィールドは前記受信側が未だ受信していない断片化メッセージのバイト数に等しい、ステップと、
前記第１プロトコル・パケットを前記サーバーに送るステップと、
少なくとも１つの第２プロトコル・パケットに対して、
前記送信バッファー内にあるバイトを、少なくとも第２プロトコル・パケットにおいてデーターとして送るように初期化し、
前記少なくとも１つの第２プロトコル・パケットにおける前記RemainingDataLengthフィールドを設定し、
前記少なくとも１つの第２プロトコル・パケットを前記サーバーに送る、
ことを含む命令を繰り返すステップと、
を含む、コンピューター読み取り可能記憶媒体。
【請求項２】
請求項１記載のコンピューター読み取り可能記憶媒体において、断片化を使用するか否か判断する前記ステップが、前記データーを送るためのパケットの数が１よりも大きいか否か判断するステップを含む、コンピューター読み取り可能記憶媒体。
【請求項３】
請求項２記載のコンピューター読み取り可能記憶媒体において、前記接続に関連するデーターを前記サーバーに送るためのパケット数を決定する前記ステップが、前記サーバーが前記接続において受信する最大バイト数が、送られるデーターのバイト数未満であるか否か判断するステップを含む、コンピューター読み取り可能記憶媒体。
【請求項４】
請求項１記載のコンピューター読み取り可能記憶媒体において、前記サーバーとの接続をネゴシエートするステップが、
受信をプリポストするステップと、
プロトコル・ネゴシエート要求を作るステップと、
前記プロトコル・ネゴシエート要求を前記サーバーに送るステップと、
ネゴシエート満了タイマーを設定するステップと、
前記ネゴシエート満了タイマーが満了する前に、前記プロトコル・ネゴシエート要求に対する応答が受信されたか否か判断するステップと、
前記ネゴシエート満了タイマーが満了する前に 前記プロトコル・ネゴシエート要求に対する応答が受信されない場合、前記プロトコル・ネゴシエート応答を再送するステップと、
前記ネゴシエート満了タイマーが満了する前に前記プロトコル・ネゴシエートに対する応答が受信された場合、プロトコル・ネゴシエート応答を受信するステップと、
前記プロトコル・ネゴシエート応答の有効性を判断するステップと、
前記プロトコル・ネゴシエート応答を処理するステップであって、前記プロトコル・ネゴシエート応答が、前記プロトコル・パケットを送るための少なくとも１つのクレジットを前記送信側に供給する、ステップと、
を含む、コンピューター読み取り可能記憶媒体。
【請求項５】
請求項４記載のコンピューター読み取り可能記憶媒体であって、更に、
前記少なくとも１つの第２プロトコル・パケットを送るための十分なクレジットが存在する場合、前記少なくとも１つの第２プロトコル・パケットを送るステップと、
前記少なくとも１つの第２プロトコル・パケットを送るための十分なクレジットが存在しない場合、少なくとも１つの追加クレジットを前記サーバーに要求するステップと、
十分なクレジットが受信されたか否か判断するステップと、
十分なクレジットが受信されない場合、前記接続を終了するステップと、
十分なクレジットが受信された場合、前記少なくとも１つの第２プロトコル・パケットを送るステップと、
を含む、コンピューター読み取り可能記憶媒体。
【請求項６】
リモート・ダイレクト・メモリー・アクセス（ＲＤＭＡ）によってサーバー・メッセージ・ブロック（ＳＭＢ／ＳＭＢ２）を使用してデーターを交換するように構成されたシステムであって、
ＲＤＭＡメッセージによってデーターを転送するように動作可能なＲＤＭＡネットワーク・インターフェース・カード（ＲＮＩＣ）と、
プロセッサーによって実行可能なコンピューター・プログラム命令を格納するように動作可能なメモリーと、
を含み、前記プロセッサーが、前記ＲＮＩＣおよび前記メモリーと通信して、カーネルを実行するように動作可能であり、前記カーネルが、
第１プロトコル・クライアントを含み、この第１プロトコル・クライアントが、
２つ以上のＲＤＭＡメッセージにおいて断片化ＳＭＢデーターを伝達し、各ＲＤＭＡメッセージがRemainingDataLengthフィールドを含み、RemainingDataLengthフィールドは前記受信側が未だ受信していない断片化メッセージのバイト数に等しく、
クレジットを交換するために受信バッファーを作る、
ように動作可能であり、前記クレジットが、送信側が受信側に送ることができるＲＤＭＡメッセージ数を決定する、システム。
【請求項７】
請求項６記載のシステムであって、更に、前記第１プロトコル・クライアントと通信可能なＲＤＭＡインターフェースを含み、前記ＲＤＭＡインターフェースが、前記ＲＮＩＣを介してＲＤＭＡ接続を開くように動作可能である、システム。
【請求項８】
請求項７記載のシステムであって、更に、
第２プロトコル・クライアントを含み、この第２プロトコル・クライアントが、
ＲＤＭＡダイレクト・データー転送を実行することをサーバーに命令するためにＳＭＢ２リード／ライト要求を作り、
前記ＳＭＢ２リード／ライト要求を前記第１プロトコル・クライアントに送るように動作可能であり、
前記第１プロトコル・クライアントが、更に、
前記ＳＭＢ２リード／ライト要求を第１プロトコル・データー転送パケットにカプセル化し、
前記第１プロトコル・データー転送パケットを前記サーバーに送るように動作可能である、システム。
【請求項９】
請求項８記載のシステムにおいて、前記ＳＭＢ２リード／ライト要求が、ＲＤＭＡチャネル記述子情報を特定するフィールドを含み、前記第１プロトコルが前記ＳＭＢダイレクト・プロトコルである、システム。
【請求項１０】
請求項９記載のシステムにおいて、前記ＲＤＭＡチャネル記述子情報が、誘導情報を含み、前記サーバーが、前記誘導情報を決定し、前記誘導情報によって特定されたメモリー・アドレスに対して、エンコードされていないアプリケーション・データーのＲＤＭＡライトまたはＲＤＭＡリードを実行する、システム。
【請求項１１】
リモート・ダイレクト・メモリー・アクセス（ＲＤＭＡ）によってサーバー・メッセージ・ブロック（ＳＭＢ／ＳＭＢ２）を使用してデーターを交換する接続を作るためのコンピューター実装方法であって、
第１ＳＭＢダイレクト・データー転送パケットを受信するステップであって、前記第１ＳＭＢダイレクト・データー転送パケットが、RemainingDataLengthフィールドおよびＳＭＢ２データーを含み、RemainingDataLengthフィールドは前記受信側が未だ受信していない断片化メッセージのバイト数に等しい、ステップと、
前記RemainingDataLengthフィールドが非ゼロであるか否か判断するステップと、
RemainingDataLengthフィールド前記がゼロであるとき、前記第１ＳＭＢダイレクト・データー転送パケットにおける前記ＳＭＢ２データーを処理するステップと、
前記RemainingDataLengthフィールドが非ゼロであるとき、再組み立てバッファーを前記接続に割り当てるステップと、
前記ＳＭＢ２データーを前記第１ＳＭＢダイレクト・データー転送パケットから前記再組み立てバッファーにコピーするステップと、
少なくとも１つの他のＳＭＢダイレクト・データー転送パケットを受信するステップと、
前記ＳＭＢ２データーを、前記少なくとも１つの他のＳＭＢダイレクト・データー転送パケットから前記再組み立てバッファーにコピーするステップと、
を含む、コンピューター実装方法。
【請求項１２】
請求項１１記載の方法において、前記ＳＭＢダイレクト・データー転送パケットが、CreditsRequested、CreditsGranted、DataOffset、およびDataLengthから成るグループからの１つ以上のフィールドを含む、方法。
【請求項１３】
請求項１２記載の方法において、前記CreditsGrantedフィールドが、前記ＳＭＢダイレクト・データー転送パケットの送信側にどれだけのクレジットが供給されたかを示す、方法。
【請求項１４】
請求項１１記載の方法において、クレジットが、前記送信側によって送ることができるＲＤＭＡメッセージの数に対する値である、方法。
【請求項１５】
請求項１１記載の方法であって、更に、
前記少なくとも１つの他のＳＭＢダイレクト・データー転送パケットが最後のパケットであるか否か判断するステップと、
前記少なくとも１つの他のＳＭＢダイレクト・データー転送パケットが最後のパケットである場合、前記再組み立てバッファーにおける前記ＳＭＢ２データーを処理するステップと、
前記少なくとも１つの他のＳＭＢダイレクト・データー転送パケットが最後のパケットではない場合、少なくとも１つの他のＳＭＢダイレクト・データー転送パケットを受信し、前記少なくとも１つの他のＳＭＢダイレクト・データー転送パケットからの前記ＳＭＢ２データーを、前記再組み立てバッファーにコピーするステップを繰り返すステップと、
を含む、方法。