什麼是自動協商?
802.3標準中的第28條是這樣定義自動協商功能的:它容許一個設備向鏈路遠端的設備通告本身所運行的工做方式,而且偵測遠端通告的相應的運行方式。自動協商的目的是給共享一條鏈路的兩臺設備提供一種
交換信息的方法,並自動配置它們工做在最優能力下。
照字面上來說,自動協商就是一種在兩臺設備間達到可能的最大傳輸速率的方式。它容許設備用一種方式「討論」可能的傳輸速率,而後選擇雙方可接受的最佳速率。它們使用叫作快速鏈路脈衝的FLP
交換各自傳輸能力的通告。FLP可讓對端知道源端的傳輸能力是怎樣的。當交換FLP時,兩個站點根據如下從高到低的優先級偵測雙方共有的最佳方式。
- 1000BASE-T全雙工
- 1000BASE-T
- 100BASE-T2 全雙工
- 100BASE-TX 全雙工
- 100BASE-T2
- 100BASE-T4
- 100BASE-TX
- 10BASE-T 全雙工
- 10BASE-T
例如,A和B正在自動協商,而且A具備10/100/1000全半雙工的能力,可是B只有10/100全半雙工的能力,這樣雙方共有的最高鏈路能力爲100,全雙工。一旦雙方進行自動協商,鏈路就會運行在雙方可以支持的最佳能力下。
自動協商會產生什麼問題?
有關自動協商的大多數問題是因爲有一方沒有工做在自動協商方式。當一個站點工做在自動協商方式而另外一方沒有時,只有一方發送快速鏈路脈衝。另外一方已經設定在特定的速率和雙工方式下,這樣就不會跟對端進行協商。他已經被強行設定,就不會再考慮他鏈接端的工做方式。
因爲強行設定的站點不會告訴正在協商的站點本身的速率和單雙工方式,自動協商的站點就必須本身決定合適的速率和單雙工方式來匹配對端,這叫作平行檢測。協商站點監遵從對端過來的鏈路脈衝可以辨別通訊速率。10,100和1000Mbs以太網使用不一樣的信號方式,因此協商站點能識別對端的工做速率。
然而,全半雙工又是另一回事了。由於強行設定的站點不進行協商,協商站點沒有方法知道強行設定站點工做在哪一種雙工方式下。協商站點爲了不全半雙工不匹配,根據802.3標準,它必需與強行站點使用相同的速率,可是工做在半雙工方式下。無論速率如何(除了10Gig),半雙工是以太網的默認方式。在許多狀況下,這會產生全半雙工不匹配問題。
爲了兩端都達到全雙工方式,要麼兩端都自動協商,要麼兩端都強行設定。
務必不要一端自動協商,另外一端強行設定。這會致使雙工不匹配。建議把兩端設置留在自動協商以減小人爲錯誤。
以太網的自動協商總結:
1.默認狀況下,使用銅線且支持多速率和雙工配置的接口,都支持自動協商,經過自動協商選擇鏈路的最佳速率和雙工方式。
2.也可經過命令配置接口使用特定的速率和雙工,而且在接口上配置了速率和雙工後將禁用接口的自動協商。兩端接口的速率和雙工方式必須一致。若是速率不一致,接口狀態將處於down/down; 若是雙工方式不一致,接口狀態會處於up/up,接口仍能夠工做,可是接口工做效率低,工做性能差,會出現短暫的故障。
3.若是一端接口配置了特定的速率和雙工(禁用自動協商),另外一端沒有配置時,另外一端就沒法經過自動協商肯定速率和雙工。可是它會檢測到對端的速率,而且使用這一速率。對於雙工模式則根據接口速率選擇默認設置(有可能致使雙工不匹配):
若是接口速率是10Mbit/s 或100M/s,默認使用半雙工方式 若是接口速率是1000M/s或1G以上,默認使用全雙工方式