我們最近遇到一個小問題在網路中,多個伺服器會間歇性地失去網路連接,這是一種相當痛苦的解決方式(需要硬重啟)。這種情況已經持續了大約兩週,似乎是隨機的,在不同的伺服器上。我們無法辨別出任何特定的模式。
經過一番深入研究後,我們發現交換器回報問題連接埠的速度為 100 Mbps:
這聽起來與 Joel Spolsky 文章中發生的情況非常相似五個為什麼
Michael 花了一些時間進行事後分析,發現問題是交換器上的簡單設定問題。交換器可以使用多種可能的速度進行通訊(10、100 或 1000 兆位元/秒)。您可以手動設定速度,也可以讓交換器自動協商雙方可以使用的最高速度。發生故障的交換器已設定為自動協商。這通常有效,但並非總是有效,1 月 10 日早上,它不起作用。
我們現在有停用自動協商在我們的網路硬體上並將其設定為 1000 Mbps(千兆位元)的固定速率。
我向那些擁有更多伺服器硬體網路專業知識的人提出的問題:
- 現代網路硬體的自動協商問題有多常見?
- 在設定網路時停用自動協商並設定固定速度是否被認為是良好的標準網路實踐?
答案1
我還沒有看到網路速度自動協商問題不是由以下任一原因引起的:(a)連結一端的手動與另一端的自動不匹配或(b)連結的故障組件(電纜、連接埠等)。
這取決於管理員,但我的經驗告訴我,如果您手動指定連結速度和雙工設置,那麼您必然會遇到速度不匹配的情況。為什麼?因為幾乎不可能記錄交換器和伺服器之間的各種連接,然後在進行更改時遵循該文件。我見過的大多數失敗都是由於 1(a) 引起的,只有當您開始手動設定速度/雙工設定時才會遇到這種情況。
正如在思科文檔:
如果停用自動協商,則會隱藏連結遺失和其他實體層問題。僅停用終端設備的自動協商,例如不支援千兆位元自動協商的舊式千兆位元網路卡。除非絕對必要,否則請勿停用交換器之間的自動協商,因為物理層問題可能無法偵測並導致生成樹迴路。
除非您準備好為需要驗證速度/雙工(並且不要忘記流量控制)的網路變更設定變更管理系統,或者願意處理因在所有網路裝置上手動指定這些設定而偶爾出現的不匹配情況,然後堅持使用auto /auto 的預設配置。
將來,請考慮使用以下命令監控交換器連接埠上的錯誤MRTG這樣您就可以在出現問題之前發現這些問題。
編輯:我確實看到很多人提到舊設備上的談判失敗。是的,這是很久以前的一個問題,當時正在創建標準,但並非所有設備都遵循這些標準。您的 NIC 和交換器的使用期限是否還不到 10 年?如果是這樣,那麼這將不是問題。
答案2
很常見,多年來我在使用各種類型的硬體時遇到了許多問題。
在我看來,如果設定是靜態的(即伺服器機架)並且您認為不會發生變化,那麼手動設定速度和雙工是一個好主意。只要有充分的記錄,就可以避免未來的問題。
編輯:
澄清一下,我並不提倡在整個網路上使用手動速度,我想說 95% 的情況下,自動/自動是可行的方法。我只是說我在雙工/速度方面遇到了問題,並且我的網路的一小部分(即我們的伺服器機架之一)主要是手動設定。我們運行一個非常嚴格控制的 LAN,未使用的連接埠被關閉,並且大多數連接埠上都有 MAC 過濾器,因此追蹤速度並不是很困難。
答案3
我相信,如果自動協商每天或每月工作一個小時,然後由於某種原因“發生了一些事情”,將鏈接設置為固定速度“修復了它”,那麼就會有一個問題沒有得到解決,而是被規避了。我想我將鏈接設置為“固定”作為臨時解決方案,直到真正的問題得到糾正。
答案4
我(和其他幾個人)負責的網路由約40 台伺服器、1000 多個工作站(分佈在一個相當大的園區內)和約1000 個WAP 組成,這些WAP 也分佈在一個大區域內,類型和年齡各不相同的網路設備。
正如 dimitri.p 所說,當某些事情突然無法停止自動協商時,通常表示存在另一個問題。手動設定端口就像在腸道被刺傷的人身上貼上創可貼——它可能會止血,但下面肯定會受到傷害。
我常用的清單:
- 機器上有什麼變化嗎?司機?作業系統或 BIOS 等級的設定?也許 autoneg 在作業系統中被禁用了?
- 你更換了跳線嗎?已驗證電纜運行(如果它是比一個機架更長的運行?)
- 您是否測試過交換器連接埠是否損壞或故障?
- 網路卡會壞掉嗎?
我們,作為一項規則,絕不在伺服器(或資料中心中的其他任何設備)上停用autoneg,除非所有其他可能的原因都已消除,我們移動了交換機端口,更換了電纜,測試了NIC等,並且沒有其他選擇。在這種情況下,它就會被記錄到死亡。這種情況很少發生,通常是在我們無法檢查 BIOS 和作業系統設定的裝置上。
另一方面,工作站和接入點則是另一回事。自動協商失敗是電纜運作不良的典型標誌,很多時候我們必須手動設定速度和雙工,直到夏季新電纜入牆運行季節到來。