確保網路上的“交換機冗餘”
我正在努力通過兩條完整的冗餘路徑連接兩台 Windows 7 PC(每台都有一個 2 埠英特爾 NIC)。我想讓它對該系統上的服務透明。我正在考慮在每個系統的兩個 NIC 上創建一個乙太網橋,並用單獨的交換機連接兩個通道。
.-----------. 1 3 .-----------. | [NIC1]-------------[Switch1]-------------[NIC1] | | PC1 |br0 | | br0| PC2 | | [NIC2]-------------[Switch2]-------------[NIC2] | .-----------. 2 4 .-----------.
但我不知道這是否是一種有效的方法。我已經閱讀了帶有 LACP 的鏈路聚合(IEEE 802.3ad/802.1x),但據我了解並不適用,因為這不適用於單獨的交換機。我進一步閱讀並找到了最短路徑橋接(IEEE 802.1aq),但無法弄清楚這是否適用於使 2 台 Windows 7 PC 通信冗餘的規模(它看起來是數據中心的規模)。
我想知道這是否不適用於簡單的乙太網?在上面的這個方案中,如果我拔掉 Switch1 上的電源插頭會發生什麼?這個乙太網設置上的 TCP 連接會解決嗎?或者我必須做些什麼來確保這個帶有冗餘開關的設置確實有效?
保證每一個IP包都到達並不重要,重要的是足夠快地檢測到故障設備並停止使用它,這樣上面的TCP才能存活並可以處理重傳。這可以工作還是最好的方法是什麼?
編輯:我理解的開關不可堆疊。
EDIT2:在 PC1 上可能不止有試圖使用覆蓋 switch1 和 switch2 的冗餘乙太網路徑到達 PC2。
謝謝!
LACP 是當今最流行的方法,因為它允許總頻寬聚合和鏈路冗餘。但是,您正確地指出,您不能使用兩個單獨的交換機來執行此操作,除非它們可以堆疊在一起以形成單個邏輯交換機。
許多英特爾 NIC 在驅動程序/管理應用程序中為連結綁定/冗餘提供了幾個選項。其中之一是典型的主動/被動設置,其中一個連結一直處於活動狀態,直到它失敗,在這種情況下,第二個連結開始工作。如果您無法進行 LACP,這是一個明智的選擇。
所有這些方法都會在設備上創建一個與作業系統介面的虛擬 NIC,因此底層設置對您的應用程序是透明的。