Windows で実行され、CIFS を介して Netapp ファイラーの共有をスキャンするプログラムがあります。スキャナーが W2K3 で実行されて終了するときに、Netapp ファイラーで「cifs sessions -c」を実行すると、セッションがなくなっていることが示されます。同じスキャナーが W2K8 で実行されて終了すると、上記の Netapp コマンドはセッションがまだ有効であることを示します。スキャナ アプリケーションはすでに終了しているため、セッションにトラフィックはもうないはずです。
これまでに行ったこと: 1) cifs.idle_timeout 秒数 (以上) 待機して、セッションが終了するかどうかを確認しました。そうではありません。2) W2K3->Netapp と W2K8->Netapp 間の通信のパケット トレースを分析しました。W2K3 トレースは TREE_CONNECT と TREE_DISCONNECT を示していますが、W2K8 トレースは TREE_CONNECT 要求のみを示しています。これを確認しますが、W2K3 の TREE_DISCONNECT の後に LOGOFF 要求が続くと思います (セッションが終了すると思いますか?)。3) Netapp が表示されていない場合にどのように見えるかを確認するために、W2K8 クライアント マシンから、windows-explorer \\C$ 経由でアクセスしました。これにより、ワイヤ上で TREE_CONNECT 要求が発生します。W2K8クライアントによって生成されたワイヤにTREE_DISCONNECTがなかったにもかかわらず、エクスプローラーウィンドウを閉じると、W2K3サーバーマシンがセッションを閉じました。
つまり、Netapp は W2K8 が送信していないものを期待しているようです。
質問 : スキャナ アプリケーションで i) スキャンが完了したときに明示的な LOGOFF SMB 要求を送信するために使用できる特定の API はありますか? ii) または、新しいスキャンのために W2K8 クライアントと Netapp ファイラーの既存のセッションを再利用しますか? ii) 誰かがこれまたは同様のシナリオに直面していますか?
前もって感謝します。