!ndiskd.netreport 延伸模組會產生整個網路堆疊的視覺化報表。 !ndiskd.netreport 產生的報告是 HTML 檔案,它會提供您指向其位置的連結。 HTML 檔案包含網路堆疊的詳細資訊,因此如果您需要共用它進行分析,您可以透過電子郵件傳送它,而不必傳送大型損毀傾印檔案。
!ndiskd.netreport [-outputpath <str>] [-jsononly]
參數
-輸出路徑
指定要寫入報告檔案的位置。
-jsononly
只寫入原始數據,不寫 HTML。
DLL
Ndiskd.dll
範例
執行 !ndiskd.netreport 延伸模組,以繪製網路堆疊的方塊圖。
1: kd> !ndiskd.netreport
NETWORK STACK REPORT
Want more stuff? Rerun with the -verbose flag
Report was saved to C:\Users\******\AppData\Local\Temp\NKDFE9F.html
View the report Send in email
點擊底部的「查看報告」連結以查看產生的報告。 下圖顯示從損毀傾印檔案產生的網路報告。 每個垂直堆疊都是一個網路介面卡,分為顯示堆疊元件的層。 每個方塊的顏色是透過雜湊元件的名稱來產生的,這表示每次執行報表時,相同的元件都會以相同的顏色呈現。 這意味著如果您正在調試特定的驅動程序或適配器,您可以輕鬆地挑選出它的問題。
作為比較,下圖顯示從作用中系統產生的網路報告,而不是損毀傾印檔案。 請注意,HTML 頁面底部還有兩個選項,分別是「顯示資料流」和「模擬封包」,而報告頂端還有第四個索引標籤,用於「資料流」。這些選項出現是因為偵錯對象計算機已啟用 NBL 追蹤,這可讓 !ndiskd.netreport 剖解析 NBL 追蹤記錄檔,以視覺化方式顯示資訊。 如果未開啟 NBL 追蹤,則不會顯示這些選項。 如需 NBL 追蹤和 NBL 記錄的詳細資訊,請參閱 !ndiskd.nbllog。
透過勾選「顯示資料流」框,您可以看到資料流的路徑。 通過選中“模擬數據包”框,您可以看到動畫圓圈在數據流路徑上上下移動。 每個圓圈代表一個網路封包。
作用中系統的第二個範例也顯示與第一個範例的另一個差異,第一個範例使用損毀傾印檔案。 第二個範例中的目標偵錯者電腦已佈建為透過網路進行核心偵錯,因此您可以看到堆疊上具有資料流程的網路介面卡是 Microsoft 核心偵錯網路介面卡。 除非已在受偵錯機器上啟用核心偵錯,否則此配接器通常會隱藏。 實際上,核心偵錯網路介面卡已保留機器的乙太網路介面卡以供偵錯會話使用,因此流量會透過乙太網路流動。
視覺化網路堆疊並查看流量流向的能力可讓您快速識別問題可能出在哪裡。 這對於虛擬交換器或伺服器特別有用,因為它們的網路圖比前面的範例更複雜。 例如,在使用 NIC 整併的 Windows Server 上,您可以查看多個網路堆疊是否相互交叉,以平衡流量負載,並識別一個堆疊底部是否有影響另一個堆疊的問題。 若要檢視顯示此情況的網路偵錯報告範例,請參閱 偵錯網路堆疊。 如需 NIC 整併的詳細資訊,請參閱 使用 NIC 整併來執行網路子系統效能。
!ndiskd.netreport 在頁面頂端也有其他索引標籤,用於 [系統]、[摘要] 和 [資料流程] (如果適用)。 這些索引標籤包含有關網路堆疊狀態的更多實用資訊。 下圖顯示摘要索引標籤下的網路介面索引標籤。此索引標籤中的表格可讓您查看有關系統中網路介面名稱和識別碼的詳細資訊。
如果在目標系統上啟用了 NBL 追蹤,則會出現資料流索引標籤,該索引標籤會顯示流量事件的表格以及每個事件的詳細資訊。 下圖顯示先前所述第二個範例偵錯報告中作用中系統的 [資料流程] 索引標籤。