現(xiàn)千兆)
簡介IEEE Std 802.3ab-1999 是千兆以太網(wǎng) 1000BASE-T 的正式規(guī)范文檔面向以太網(wǎng) PHY 芯片設(shè)計(jì)、網(wǎng)絡(luò)硬件開發(fā)與協(xié)議調(diào)試人員用于解決四對 Cat 5 平衡銅纜上 1000 Mb/s 物理層實(shí)現(xiàn)所涉及的編碼、傳輸與接口定義問題。壓縮包僅含 1 個 PDF 文件大小約 1.24MB適合作為標(biāo)準(zhǔn)原文隨時檢索與對照。文檔系統(tǒng)給出 1000BASE-T 的 PCS、PMA 與 MDI 子層要求并涵蓋自動協(xié)商機(jī)制、MASTER-SLAVE 同步方式、線纜連接器規(guī)范及信號平衡與阻抗匹配等內(nèi)容可幫助讀者理解千兆以太網(wǎng)物理層參數(shù)、鏈路建立過程與芯片接口行為。已有 301 人學(xué)習(xí)適合需要查閱權(quán)威條款、核對設(shè)計(jì)細(xì)節(jié)或補(bǔ)充協(xié)議基礎(chǔ)的工程師與高年級學(xué)生。1. 四對銅線跑千兆1000BASE-T 到底把復(fù)雜度藏在了哪一層很多人第一次認(rèn)真看千兆網(wǎng)口的原理圖會愣一下Cat 5 雙絞線的標(biāo)稱帶寬只有 100 MHz四對線憑什么跑 1 Gbps直覺答案是把 100BASE-TX 的時鐘加快十倍但真這么做信號在一百米銅纜上早就糊成一團(tuán)接收端連眼圖都張不開。1000BASE-T 走的是完全相反的路它不提高單對線的速率而是把四對線當(dāng)成一個聯(lián)合信道在以太網(wǎng) PHY 芯片里塞進(jìn)一整套數(shù)字信號處理——五電平調(diào)制、格狀編碼、回波消除、串?dāng)_消除、主從時鐘同步。這份 802.3ab 標(biāo)準(zhǔn)真正值得讀的地方不是它定義了哪些寄存器位而是它如何在一條被判了帶寬死刑的銅纜上用編碼和 DSP 把香農(nóng)限榨到極限。你排障時遇到的鏈路能起但吞吐上不去換根線就好了這類玄學(xué)絕大多數(shù)能在這一層的物理量里找到確定答案。2. 頻譜賬本125 MBd 與 PAM-5 是怎么被算出來的2.1 從 1 Gbps 倒推每對線必須扛多少標(biāo)準(zhǔn)給出的約束很硬四對 Cat 5 平衡銅纜每對線的有效載荷 250 Mb/s四對合起來 1 Gbps雙向同時跑也就是全雙工。注意這里的四對不是四條獨(dú)立的高速通道各跑各的而是一個綁定信道后面會看到這個設(shè)計(jì)選擇如何決定了整個接收機(jī)的結(jié)構(gòu)。先從最簡單的方案算起如果沿用 100BASE-TX 的 NRZ兩電平每符號 1 bit每對線要跑到 250 Mb/s符號率就是 250 MBd。按奈奎斯特這要求信道帶寬至少 125 MHz而 Cat 5 的標(biāo)稱帶寬只有 100 MHz再疊加二十幾個 dB 的百米插入損耗這條路直接封死。想降符號率只能提高每符號攜帶的比特?cái)?shù)。于是問題變成一道整數(shù)規(guī)劃每對線每符號帶 k bit符號率就是 250/k MBd要讓它落進(jìn) 100 MHz 的可用帶寬里。k2 給出 125 MBdk3 給出 83 MBd。但 k 越大電平數(shù)越多最小判決距離越小對 SNR 的要求越苛刻。標(biāo)準(zhǔn)的答案是 k2、五電平PAM-5符號率 125 MBd。# 1000BASE-T 的頻譜賬本從目標(biāo)速率倒推符號率與所需信噪比 import math PAIRS 4 # 四對雙絞線 LINE_RATE 1e9 # 目標(biāo)線速率 1 Gbps全雙工每方向 SYMBOL_RATE 125e6 # 標(biāo)準(zhǔn)規(guī)定的符號率 125 MBd bits_per_pair LINE_RATE / PAIRS / SYMBOL_RATE # 每對線每符號承載的比特 print(bits_per_pair) # 2.0 - 正好對應(yīng) PAM-5 里取 2 bit def q(x): return 0.5 * math.erfc(x / math.sqrt(2)) def pam_ser(M, es_n0_db): M 電平 PAM 的符號錯誤率近似最小距離 d 由平均符號能量歸一化得到 es_n0 10 ** (es_n0_db / 10) d math.sqrt(6 * es_n0 / (M ** 2 - 1)) # 歸一化最小歐氏距離 return 2 * (1 - 1 / M) * q(d / 2) for snr in (18, 20, 22, 24): print(fEs/N0{snr} dB - 未編碼 PAM-5 的 SER ≈ {pam_ser(5, snr):.2e})這段代碼的價值在于把為什么必須編碼量化出來。四對線合起來的 4D 符號錯誤率目標(biāo)在 10?1? 量級換算到單對線的 PAM-5 符號錯誤率還要更寬松一些但即便如此未編碼的 PAM-5 需要 Es/N0 落在二十四五個 dB 以上才夠。而 Cat 5 在百米、帶串?dāng)_、帶回波的真實(shí)環(huán)境里留給 PAM-5 判決的 SNR 裕量并沒有這么寬裕中間差的那幾個 dB就是后面格狀編碼要補(bǔ)的窟窿。參數(shù)說明es_n0_db是平均符號能量與噪聲功率譜密度之比不是帶寬內(nèi)的 SNR兩者差一個符號率因子d是歸一化后相鄰電平的最小距離M 越大 d 越小這就是電平數(shù)換帶寬但要付 SNR的數(shù)學(xué)表達(dá)。2.2 為什么是五電平不是四電平也不是八電平PAM-4 同樣能做到每符號 2 bit、125 MBd看起來是最自然的選擇標(biāo)準(zhǔn)卻選了 5 個電平。原因藏在格狀編碼里4D 符號每周期要額外攜帶 1 bit 冗余用于糾錯8 bit 數(shù)據(jù)加 1 bit 冗余等于 9 bit攤到四對線上是每對 2.25 bit。PAM-4 的 2 bit 裝不下這點(diǎn)余量PAM-8 的 3 bit 又太浪費(fèi)且 SNR 代價過高5 個電平log?5 ≈ 2.32 bit剛好卡在中間既能承載 2.25 bit 的等效信息量又不至于把判決距離壓得太狠。PAM-8 的代價可以粗算電平數(shù)從 5 到 8最小距離縮到約二分之一在同樣的誤碼率要求下需要多出六七個 dB 的 SNR。而 Cat 5 上最難纏的不是白噪聲是回波和近端串?dāng)_這些干擾的余量本來就緊張?jiān)倌昧邆€ dB 去換那點(diǎn)符號率賬算不過來。調(diào)制方式每符號比特滿足 250 Mb/s 所需符號率相對 PAM-5 的 SNR 代價結(jié)論P(yáng)AM-2 (NRZ)1.0250 MBd最低超出 100 MHz 帶寬不可行PAM-31.58~158 MBd3 dB 左右仍超出可用帶寬PAM-52.04D 平均 2.25125 MBd基準(zhǔn)標(biāo)準(zhǔn)采用PAM-83.0~83 MBd6~8 dB帶寬有余、裕量不足還有一層考慮容易被忽略PAM-5 的電平集合是 {-2, -1, 0, 1, 2}中間那個 0 電平不只參與數(shù)據(jù)映射它在接收端判決時提供了無能量的參照點(diǎn)對回波消除后的殘余偏移估計(jì)、對 DC 漂移的容忍都更友好。四電平?jīng)]有這個天然的零點(diǎn)。2.3 4D-PAM5把四對線當(dāng)成一個符號這是 1000BASE-T 與所有百兆以太網(wǎng)最本質(zhì)的結(jié)構(gòu)差異。四對線在同一時刻各發(fā)一個 PAM-5 電平這四個電平合起來構(gòu)成一個 4D 符號整個符號空間是 5? 625 個點(diǎn)。標(biāo)準(zhǔn)在這 625 個點(diǎn)里挑出 512 個合法組合對應(yīng) 9 bit8 bit 數(shù)據(jù) 1 bit 冗余剩下的點(diǎn)不是浪費(fèi)是為子集劃分和直流平衡留的余地。import itertools alphabet (-2, -1, 0, 1, 2) space_4d list(itertools.product(alphabet, repeat4)) # 四對線各取一個電平 print(len(space_4d)) # 625完整的 4D 符號空間 print(2 ** 9) # 512標(biāo)準(zhǔn)實(shí)際使用的合法點(diǎn)數(shù)8 bit 數(shù)據(jù) 1 bit 冗余 # 每對線的等效信息量9 bit 攤到 4 對線 print(9 / 4) # 2.25 bit/pair/symbol正好解釋了為什么需要 5 個電平把四對線聯(lián)合起來判決收益不是四倍這么簡單。相鄰線對在同一束纜里串?dāng)_是相關(guān)的聯(lián)合最大似然估計(jì)能利用這種相關(guān)性更關(guān)鍵的是4D 空間里的最小歐氏距離比單對線 1D 判決時的距離更大這部分直接轉(zhuǎn)化為編碼增益。代價也很實(shí)在四個符號必須在時間上嚴(yán)格對齊任何一對線的傳播時延偏差都會讓聯(lián)合判決退化成四個獨(dú)立的糊涂判決所以第 4 章要專門講 deskew。3. PCS 拆解8/9 格狀編碼與兩套加擾多項(xiàng)式的意義3.1 格狀編碼用 1 bit 冗余換 6 dB物理編碼子層PCS干的第一件事不是編碼數(shù)據(jù)是制造冗余。標(biāo)準(zhǔn)采用的是一套 8 狀態(tài)的 4D 格狀編碼Trellis Coded Modulation碼率 8/9每 8 bit 用戶數(shù)據(jù)進(jìn)來其中一位送進(jìn)卷積編碼器、出來兩位與剩下七位拼成 9 bit再去查表映射成四個 PAM-5 符號。為什么要這么繞因?yàn)橹苯釉?PAM-5 上做獨(dú)立符號判決誤碼率曲線是一條陡峭但不挪位置的線加了卷積約束之后接收端不再是逐個符號猜而是在狀態(tài)轉(zhuǎn)移圖里找一條最可能的路徑。合法路徑之間的歐氏距離大于任意符號之間的最小距離等效于把誤碼率曲線整體左移——工程上常引用的量級是 6 dB 左右的編碼增益正好補(bǔ)上 2.1 節(jié)算出來的那個缺口。# 8 狀態(tài)格狀編碼的接收端骨架每個狀態(tài)只保留一條幸存路徑Viterbi 的核心一步 INF float(inf) NUM_STATES 8 def viterbi_step(metrics, branch_metric_fn, rx_4d): metrics: 上一符號各狀態(tài)的累積路徑度量 branch_metric_fn(state, bit, rx_4d): 給定狀態(tài)與輸入位返回該分支的平方歐氏距離 new_metrics [INF] * NUM_STATES survivor [None] * NUM_STATES for state in range(NUM_STATES): if metrics[state] INF: continue for bit in (0, 1): # 每個狀態(tài)只有兩條出邊冗余位取 0 或 1 nxt ((state 1) | bit) 0x7 # 8 狀態(tài)移位寄存器模型 cost metrics[state] branch_metric_fn(state, bit, rx_4d) if cost new_metrics[nxt]: new_metrics[nxt] cost survivor[nxt] (state, bit) # 記錄回溯信息 return new_metrics, survivor這段骨架省略了標(biāo)準(zhǔn)的子集映射表那張表在標(biāo)準(zhǔn)文本里長得像密碼本是 4D 子集劃分的結(jié)果但結(jié)構(gòu)是真實(shí)的每符號 8 個狀態(tài)、每狀態(tài) 2 條分支、每條分支的度量來自四對線聯(lián)合的平方歐氏距離。參數(shù)rx_4d是回波與串?dāng)_消除之后殘留的四維軟判決值metrics是累積路徑度量survivor用于回溯輸出比特。實(shí)際芯片里這一塊是并行的 ACS 陣列因?yàn)?125 MBd 的符號率意味著每 8 ns 就要完成一次全狀態(tài)更新軟件模擬只用于驗(yàn)證。8 個狀態(tài)是刻意的折中。狀態(tài)數(shù)翻倍能再擠出一兩個 dB但 ACS 單元數(shù)量、回溯深度、功耗都跟著漲而 1000BASE-T 的 SNR 缺口只有那么大多出來的增益換不來實(shí)際鏈路長度的提升。這是個典型的夠用就停的工程決策。3.2 加擾器為什么主從兩端要用不同的多項(xiàng)式9 bit 在進(jìn)映射表之前還要過一道加擾。加擾的目的有三個把用戶數(shù)據(jù)的頻譜白化避免長連 0 導(dǎo)致 PAM-5 長期停在中點(diǎn)電平、定時恢復(fù)環(huán)路失去激勵打散數(shù)據(jù)的周期性防止某些圖樣在特定線對上產(chǎn)生窄帶干擾讓發(fā)送序列在統(tǒng)計(jì)上接近隨機(jī)便于接收端把回波當(dāng)作可辨識的確定性分量消掉。有意思的是標(biāo)準(zhǔn)規(guī)定主從兩端用不同的生成多項(xiàng)式def lfsr_scramble(bits, taps, seed0x7FFFFFFFFFF, nbits58): 通用 58 位 LFSR 加擾器主從兩端僅 taps 不同 master: 1 x^39 x^58 - taps (39, 58) slave : 1 x^19 x^58 - taps (19, 58) state seed out [] for b in bits: fb 0 for t in taps: fb ^ (state (t - 1)) 1 out.append(b ^ (state 1)) # 輸出比特與當(dāng)前最低位異或 state ((state 1) | fb) ((1 nbits) - 1) return out master_seq lfsr_scramble([0]*16, taps(39, 58)) slave_seq lfsr_scramble([0]*16, taps(19, 58)) print(master_seq ! slave_seq) # True兩端即使輸入全同線路上的序列也不同參數(shù)說明taps決定反饋抽頭位置seed是初始狀態(tài)實(shí)際由訓(xùn)練階段的同步過程確定nbits是移位寄存器長度。兩個多項(xiàng)式都是本原多項(xiàng)式周期接近 2??足以覆蓋任何實(shí)際數(shù)據(jù)長度。兩端用不同多項(xiàng)式的直接后果是即便主從設(shè)備在同一時刻上電、發(fā)送完全相同的數(shù)據(jù)兩個方向在線路上的符號序列也高度不相關(guān)。這一點(diǎn)對回波消除器至關(guān)重要——回波消除器的參考輸入是本地發(fā)送序列它要估計(jì)的是我發(fā)的東西經(jīng)過混合電路泄漏回來多少如果遠(yuǎn)端發(fā)的東西和自己的序列一模一樣那么從接收信號里區(qū)分這是我自己的回波還是這是對方的數(shù)據(jù)就變成了一道無解的題。用一個多項(xiàng)式區(qū)分兩個方向等于給回波消除器發(fā)了一張身份牌。3.3 從 MDI 到 GMII一條完整的接收鏈把 PCS 和 PMA 串起來看一個 1000BASE-T 接收通道大致是這么幾級混合電路給出初步的收發(fā)隔離可編程增益放大器把信號拉到 ADC 的量程內(nèi)ADC 以符號率或數(shù)倍過采樣采樣采樣值先減回波、再減三個相鄰線對的近端串?dāng)_然后進(jìn)均衡器補(bǔ)償線纜的幅度衰減和群時延最后交給 Viterbi 做序列估計(jì)解擾后還原成 8 bit 數(shù)據(jù)以 125 MHz 的節(jié)奏送進(jìn) GMII。處理級處理對象典型實(shí)現(xiàn)思路失敗時的表征混合電路收發(fā)隔離變壓器 阻抗橋回波余量不足長線掉鏈AGC幅度歸一可變增益放大器短線上飽和、長線上量化噪聲大ADC模擬采樣每對線一個常過采樣有效位數(shù)不夠判決距離縮水回波消除本地發(fā)送泄漏自適應(yīng) FIRLMS/RLS鏈路起來但誤碼隨溫度漂移NEXT 消除鄰對近端串?dāng)_三路自適應(yīng) FIR短纜反而比長纜差均衡碼間干擾FFE DFE長纜距離上不去Viterbi格狀碼譯碼8 狀態(tài) ACS 陣列編碼增益失效誤碼率貼近未編碼曲線GMII 那一側(cè)的時序很容易被忽略8 bit 數(shù)據(jù)寬、125 MHz 時鐘正好 1 Gbps。這意味著 PHY 內(nèi)部的 4D 符號處理、Viterbi 回溯、解擾全部要在 8 ns 的符號周期內(nèi)流水完成所以真實(shí)芯片里這些模塊是深度流水線化的Viterbi 的回溯深度通常要跨好幾個符號周期靠加流水延遲來換時序收斂。4. PMA 與混合電路同一對線上同時收發(fā)靠什么不打架4.1 回波自己發(fā)的信號比對方發(fā)的強(qiáng)得多100BASE-TX 用一對線收、一對線發(fā)收發(fā)天然隔離。1000BASE-T 把四對線全部改成雙向同時收發(fā)隔離問題瞬間變成主要矛盾本地發(fā)送的差分信號幅度通常在伏級經(jīng)過百米 Cat 5 衰減后從對端到達(dá)的遠(yuǎn)端信號可能只剩幾十毫伏而這兩者在同一對線上疊加?;旌想娐穐ybrid靠變壓器和阻抗橋做第一道隔離能壓掉一二十個 dB但 Cat 5 的阻抗一致性、連接器的回波損耗、線纜的駐波都會讓隔離度打折扣殘留下來的泄漏就是回波?;夭ㄏ鞯乃悸肥且约憾热怂帽镜匕l(fā)送的符號序列作為參考輸入過一個自適應(yīng) FIR 濾波器估計(jì)出這條路徑混合電路不平衡 線纜阻抗失配的沖激響應(yīng)然后從接收采樣里把這個估計(jì)值減掉。def lms_echo_cancel(x_ref, d, mu0.01, taps64): 最簡 LMS 回波消除器 x_ref: 本地發(fā)送符號序列已知 d : 混合電路之后的接收采樣含回波 遠(yuǎn)端信號 噪聲 mu : 步長決定收斂速度與穩(wěn)態(tài)失調(diào)的折中 w [0.0] * taps err_hist [] for n in range(taps, len(d)): x x_ref[n - taps 1: n 1][::-1] # 當(dāng)前窗內(nèi)的參考符號 echo_hat sum(wi * xi for wi, xi in zip(w, x)) e d[n] - echo_hat # 殘差里應(yīng)該只剩遠(yuǎn)端信號 噪聲 for i in range(taps): w[i] mu * e * x[i] # LMS 權(quán)重更新 err_hist.append(e) return w, err_hist參數(shù)說明taps是消除器長度要覆蓋混合電路和線纜失配造成的回波拖尾mu是步長太大收斂快但穩(wěn)態(tài)抖動大太小則訓(xùn)練階段收斂不完鏈路建立超時e是殘差也就是真正送給后續(xù)均衡和解碼的信號。這段代碼只演示原理實(shí)際芯片里回波消除器是符號率甚至多倍符號率并行的且訓(xùn)練階段用的是標(biāo)準(zhǔn)的訓(xùn)練序列而不是隨機(jī)數(shù)據(jù)為的是讓自適應(yīng)濾波器在有限時間內(nèi)收斂到穩(wěn)定解。這里有個反直覺的地方回波消除的精度要求比消除干凈更微妙。消除不足殘余回波會直接抬高噪聲底消除過頭自適應(yīng)濾波器會開始擬合遠(yuǎn)端信號和噪聲反而引入新的失真。訓(xùn)練序列的設(shè)計(jì)、步長的調(diào)度、以及訓(xùn)練結(jié)束后的系數(shù)凍結(jié)策略都是各家 PHY 芯片拉開差距的地方。4.2 NEXT 與 FEXT為什么短纜有時比長纜更難跑四對線在同一束護(hù)套里一對線的發(fā)送會通過分布電容耦合到相鄰線對的接收端這就是串?dāng)_。近端串?dāng)_NEXT發(fā)生在發(fā)送端附近耦合路徑短、衰減小強(qiáng)度可能比遠(yuǎn)端來的有用信號還大遠(yuǎn)端串?dāng)_FEXT經(jīng)過整段線纜的雙重衰減通常小得多。標(biāo)準(zhǔn)對兩者的處理態(tài)度不同NEXT 需要顯式的自適應(yīng)消除接收端拿三個相鄰線對的本地發(fā)送序列作為參考輸入各跑一個自適應(yīng)濾波器把耦合分量減掉FEXT 在多數(shù)實(shí)現(xiàn)里不作顯式消除靠格狀編碼的增益和均衡器消化。這個取舍的原因是 FEXT 相對較弱為它再增加三路長濾波器面積和功耗的代價換不回等量的鏈路裕量。這也解釋了一個現(xiàn)場經(jīng)常遇到的現(xiàn)象同一條鏈路短纜比如十幾米反而比長纜更容易出問題。短纜的插入損耗小遠(yuǎn)端信號強(qiáng)但 NEXT 的耦合路徑也更短、耦合更強(qiáng)兩相抵消之后短纜的 SNR 未必更好再疊加連接器處的回波損耗短纜上的回波消除器工作點(diǎn)反而更難看。4.3 MASTER-SLAVE為什么兩端不能都當(dāng)主四對線同時雙向收發(fā)意味著兩端必須共享一個頻率參考——如果兩端各用各的晶振哪怕標(biāo)稱頻率一樣ppm 級偏差也會累積接收端的載波恢復(fù)環(huán)路就得不停地追符號定時會漂。標(biāo)準(zhǔn)的解法是強(qiáng)制一端為 MASTER、一端為 SLAVEMASTER 用本地晶振作為發(fā)送時鐘SLAVE 從接收到的信號里恢復(fù)時鐘再用這個恢復(fù)出來的時鐘驅(qū)動自己的發(fā)送形成環(huán)回定時loop timing。這樣整條鏈路只有一個時鐘源。MASTER-SLAVE 的歸屬由自協(xié)商決定規(guī)則是雙方各自宣告自己的主從偏好沖突時按約定的優(yōu)先級裁決。現(xiàn)場最常見的翻車是一端手動配置成強(qiáng)制 MASTER、另一端也強(qiáng)制 MASTER鏈路直接起不來或者起來了但誤碼率慘不忍睹。還有一層四對線的傳播時延并不相同。Cat 5 的四對線絞距不同信號沿線的傳播速度有差異百米鏈路上的線對間時延偏差可以到幾十納秒量級。125 MBd 的符號周期是 8 ns幾十納秒的偏差意味著四個 PAM-5 符號根本不是同時到達(dá)的4D 聯(lián)合判決的前提被破壞。所以接收端必須做 deskew在訓(xùn)練階段測量每對線的相對延遲用可調(diào)的延遲線或數(shù)字內(nèi)插把四個符號流對齊之后才能交給 Viterbi。這個對齊精度直接決定了 4D 編碼的增益能不能拿到手。5. 排查千兆鏈路能通但慢時該看哪幾個物理量5.1 先分層別一上來就懷疑線千兆鏈路的故障有個穩(wěn)定的分層順序鏈路層起沒起來、協(xié)商結(jié)果對不對、錯誤計(jì)數(shù)漲不漲、吞吐卡在哪。跳過分層直接換線、換模塊是最典型的踩坑方式因?yàn)閾Q完之后好了往往只是運(yùn)氣下一次同樣的問題還會回來。在通用系統(tǒng)上幾組命令就能把前兩層的信息撈出來# 1) 協(xié)商結(jié)果速率、雙工、是否啟用了自協(xié)商 ethtool eth0 | egrep Speed|Duplex|Auto-negotiation|Link detected # 2) 對端宣告了哪些能力看是否有一端只宣告了百兆 ethtool eth0 | sed -n /Advertised link modes/,/Advertised pause/p # 3) 錯誤計(jì)數(shù)CRC/FCS 錯誤、載波錯誤、沖突計(jì)數(shù) ip -s link show eth0判斷邏輯很直接Link detected: yes且速率協(xié)商到 1000 Mb/s 全雙工說明物理層訓(xùn)練完成、4D 符號對齊、Viterbi 已經(jīng)在正常輸出Speed: 100Mb/s說明自協(xié)商降級了問題在協(xié)商或線纜質(zhì)量如果速率是全千兆但ip -s link里的錯誤計(jì)數(shù)持續(xù)增長那才是真正難查的那一類——物理層能維持鏈路但 SNR 裕量被吃掉了。注意Duplex: Half在千兆下是不該出現(xiàn)的狀態(tài)。1000BASE-T 從標(biāo)準(zhǔn)到產(chǎn)品只有全雙工一種形態(tài)看到半雙工基本可以判定是自協(xié)商失敗后落到了并行檢測的兜底邏輯上。5.2 從回波損耗到 TCP 重傳一條完整的因果鏈能 ping 通但傳文件慢這類問題根因鏈條通常是這樣的線纜或連接器的回波損耗超標(biāo) → 混合電路隔離度下降 → 回波消除器殘余增大 → 進(jìn)入 Viterbi 的 SNR 下降 → 譯碼后仍有殘余比特錯誤 → 以太網(wǎng)幀 CRC 校驗(yàn)失敗被丟棄 → 上層協(xié)議重傳 → 有效吞吐掉到標(biāo)稱值的一半甚至更低。這條鏈子上每一環(huán)都可以單獨(dú)驗(yàn)證。回波損耗要用線纜認(rèn)證測試儀測看的是全頻段內(nèi)的回波損耗曲線而不是通斷NEXT 要看最差線對組合因?yàn)樗膶€的絞距不同某些組合的耦合天生更強(qiáng)線對間時延偏差skew如果超限表現(xiàn)是鏈路能起但誤碼率隨溫度或線纜彎折漂移因?yàn)?deskew 的余量被吃掉了。觀測現(xiàn)象最可能的物理層原因驗(yàn)證方式協(xié)商到 100 Mb/s某對線開路/短路或 NEXT 嚴(yán)重超標(biāo)換線直連對比看協(xié)商結(jié)果是否變化千兆但吞吐腰斬回波損耗超標(biāo)導(dǎo)致殘余誤碼查 CRC 錯誤計(jì)數(shù)是否隨流量增長間歇性丟包、隨溫度變化連接器接觸不良或阻抗失配重做端接看誤碼是否消失短纜比長纜更差NEXT 耦合強(qiáng)回波消除器工作點(diǎn)差換長纜對比或換屏蔽線鏈路完全起不來兩端主從配置沖突雙方恢復(fù)自協(xié)商5.3本文還有配套的精品資源點(diǎn)擊獲取