none
關於iSCSI運作的一些疑問? RRS feed

  • 問題

  • 大家好,最近在測試2012的iSCSI Target,安裝兩台主機,接在100M的Switch上,設定好之後直接測試傳輸一個約4GB的檔案,結果速度是200MB/s,看到這邊大家應該都知道哪裡有問題吧?100M的Switch竟然可以跑到200MB/s??結果去工作管理員一看才知道背景還有持續在偷偷傳輸資料,請問這樣是正常的嗎?總覺得這種運作方式好像怪怪的。
    2012年10月23日 上午 08:34

解答

  • Hi

    這是正常的,這是DMA的原理,而Microsoft iSCSI因為是軟體式的iSCSI,所以使用的Buffer Cache就是RAM

    你應該可以發現在傳輸的過程中,RAM會快速上升,因為檔案從File System讀取放到RAM裡進行

    這個過程會使用msiscsi.sys這個驅動進行storage stack到network stack的工作,你可以參考下圖

    圖片來源:SNIA  Japan Forum


    Best Regards, Daniel Liang


    • 已編輯 Daniel-Liang 2012年10月23日 下午 01:36
    • 已標示為解答 Bess233 2012年10月23日 下午 01:49
    2012年10月23日 下午 01:34

所有回覆

  • Dear Bess233

    單位表示你可能看錯了!它的單位是200Mbps是MagaBits不是MagaBytes!


    Jason的電腦健身房 沒有永遠的安全 沒有永遠的弱點 有牌的神經病

    2012年10月23日 上午 10:53
  • Hi

    這是正常的,這是DMA的原理,而Microsoft iSCSI因為是軟體式的iSCSI,所以使用的Buffer Cache就是RAM

    你應該可以發現在傳輸的過程中,RAM會快速上升,因為檔案從File System讀取放到RAM裡進行

    這個過程會使用msiscsi.sys這個驅動進行storage stack到network stack的工作,你可以參考下圖

    圖片來源:SNIA  Japan Forum


    Best Regards, Daniel Liang


    • 已編輯 Daniel-Liang 2012年10月23日 下午 01:36
    • 已標示為解答 Bess233 2012年10月23日 下午 01:49
    2012年10月23日 下午 01:34
  • Hi

    這是正常的,這是DMA的原理,而Microsoft iSCSI因為是軟體式的iSCSI,所以使用的Buffer Cache就是RAM

    你應該可以發現在傳輸的過程中,RAM會快速上升,因為檔案從File System讀取放到RAM裡進行

    這個過程會使用msiscsi.sys這個驅動進行storage stack到network stack的工作,你可以參考下圖

    圖片來源:SNIA  Japan Forum


    Best Regards, Daniel Liang


    謝謝你,這就是我要的答案。另外想再請教一下,

    1.若我傳輸4GB的檔案,就會先佔用4GB的記憶體,然後檔案傳輸完畢之後記憶體才會釋放沒錯吧?

    2.若主機記憶體不足的話是否也會嚴重影響iSCSI的效能呢?

    • 已編輯 Bess233 2012年10月23日 下午 01:55
    2012年10月23日 下午 01:50
  • Hi

    1.檔案其實在邊傳輸就會慢慢的釋放記憶體,因為它是Buffer Cache,你觀察後就知道了

    2.如果這種情況下再進行對iSCSI傳輸檔案的話,這答案是肯定的(沒Buffer Cache)

    如果你傳送的檔案大小超過你RAM的時候(就是Buffer Cache沒了),你就會看到真實的傳送速度


    Best Regards, Daniel Liang

    2012年10月23日 下午 04:30
  • 謝謝你的回應,我了解了。
    2012年10月24日 上午 12:57
  • 看你用那種方法抄檔案, 其實抄單個大檔案的話微軟建議不用記憶體做Cache buffer噢, 因為這會令傳輸速度下降,

    但經我測試後, 在100 Mbps的網絡是感覺不出來的, 反正瓶頸是在網絡上, 不過知道一下還是好

    查看xcopy的參數頁: http://technet.microsoft.com/en-us/library/cc771254(v=ws.10).aspx

    其中 /j 參數就是不用memory buffer cache的方式抄送, 但只在Windows Server 2008 R2以上才適用 (以下的話要借用Exchange 2003的eseutil.exe)

    /j

    Copies files without buffering. Recommended for very large files. This parameter was added introduced in Windows Server® 2008 R2.

    如果你想知道更多這方面的知識, 可以閱讀以下文章:

    http://blogs.technet.com/b/askperf/archive/2007/05/08/slow-large-file-copy-issues.aspx


    邊幫助, 邊鍛鍊

    2012年10月24日 上午 03:54