如何於 Windows 環境最佳化您的 iSCSI 服務
更新日期:2021年1月25日
如何於 Windows 環境最佳化您的 iSCSI 服務
目的
本篇文章將解釋如何透過修改 Windows 系統登錄檔 (Windows Registry),來最佳化 Windows iSCSI 啟動器對於 Synology NAS 在高負載環境或 SHA (Synology High Availability) 配置下的容錯能力,並提供 I/O 作業逾時相關異常問題的可能解決方案。
解決方法
若要設定 Windows 系統登錄檔:
- 以系統管理員身分,在工作列的搜尋方塊中輸入「regedit」。
- 點選開啟「登錄編輯程式」。
- 前往目標參數路徑,並在欲修改的參數上點選右鍵選擇修改。
- 設定數值資料後點選確定。
- 重啟系統使設定生效。
以下將介紹與 Windows iSCSI 啟動器有關且較常見的系統登錄檔參數,以及 Synology 建議的設定值。
[SCSI Miniport Driver Timers]
- 機碼:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk
- 數值名稱:TimeOutValue
- 預設數值資料:60
- 建議設定:60 (hex:3C)
- 說明:磁碟 I/O 要求的作業逾時時間。在磁碟高負載的情況下,修改此參數可提高 Windows 系統對磁碟 I/O 的延遲容忍度。此參數值屬 SCSI 層設定,將直接影響所有的磁碟 I/O (包括實體硬碟),因此若僅需要針對 iSCSI 啟動器調整,建議使用 SrbTimeoutDelta 參數。
[iSCSI Initiator Driver Timers]
- 機碼:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e97b-e325-11ce-bfc1-08002be10318}\Instance Number\Parameters
- 數值名稱:SrbTimeoutDelta
- 預設數值資料:15
- 建議設定:300 (hex:12C)
- 說明:統磁碟驅動程式的 I/O 作業逾時設定並未將網路延遲列入考量,因此可透過此參數提供網路延遲的時間的參考值。此參數值加上 TimeOutValue 參數值將會是 iSCSI 磁碟 I/O 要求的作業逾時時間。例如當 TimeOutValue 為 60 秒,SrbTimeoutDelta 為 15 秒時,iSCSI 磁碟的 I/O 作業逾時時間將為 75 秒。在 iSCSI 高負載的情況下,修改此參數可提高 Windows 系統對 iSCSI 延遲的容忍度。
- 機碼:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e97b-e325-11ce-bfc1-08002be10318}\Instance Number\Parameters
- 數值名稱:LinkDownTime
- 預設數值資料:60
- 建議設定:300 (hex:12C)
- 說明:當 iSCSI I/O 要求送出後,超過此時間未回應則會判定為裝置已斷線,並嘗試重新連接。當 iSCSI LUN 建立於 SHA(Synology High Availability) 環境時,提高此設定值將有助於提高系統穩定性。