Ethernet
在 Windows 上執行時,WireShark 可以檢測網路上的乙太網 PAUSE 數據包嗎?
我們有一個連接到處理大量數據的交換機的 Windows 伺服器。我們注意到,當我們在網路適配器上禁用 FlowControl 時,我們似乎獲得了更好的性能。我們偶爾會失去數據包,我們可以接受,但其餘時間我們似乎獲得了更好的吞吐量。
我們想驗證當 FlowControl 啟用時,伺服器確實在發送 PAUSE 消息。我的印像是 WireShark 無法看到這些數據包,因為它們沒有傳遞給作業系統,但是在 Wikipedia 的 FlowControl 條目http://en.wikipedia.org/wiki/Ethernet_flow_control上有一張圖片乙太網“暫停”幀的“WireShark”螢幕截圖。
WireShark 在哪些場景下可以看到 PAUSE 幀?
暫停幀由交換機處理,而不是對話夥伴。所以擷取暫停幀的唯一方法是:
- 物理監聽電腦和交換機之間的鏈路
- 在發送暫停幀的電腦上執行 wireshark(如果 NIC 驅動程序支持)
- 使用將暫停幀轉發到監控埠的交換機
驗證 PAUSE 是否導致問題的其他方法:
- 在打開和關閉流量控制並監控頻寬時觀察交換機上的暫停計數器
- 想不出我頭頂上的任何其他東西。:)