今天有朋友給我來信息咨詢,他們公司用的光纖收發(fā)器經(jīng)常會(huì)出現(xiàn)死機(jī)是什么問題,是光纖收發(fā)器壞了嗎?還是怎么了。本文將就死機(jī)的情況詳細(xì)分析原因;希望能幫助你們判斷故障原因。
用光纖收發(fā)器可以將Ethernet的傳輸距離延伸到100公里以上,但是在長距離的傳輸過程中由于誤碼的原因,可能導(dǎo)致以太網(wǎng)交換機(jī)設(shè)備的“死機(jī)”。
在對(duì)某型號(hào)光纖收發(fā)器的系統(tǒng)設(shè)計(jì)中,針對(duì)這一問題,根據(jù)我們對(duì)故障原因的分析及理解,提出一套解決方案可以最大限度地減少交換機(jī)“死機(jī)”現(xiàn)象。
一、故障原因分析:
數(shù)據(jù)傳輸過程及差錯(cuò)控制點(diǎn)。
A點(diǎn)的有效數(shù)據(jù)發(fā)出后,在路途中的兩個(gè)光纖收發(fā)器中不作差錯(cuò)校驗(yàn),只有數(shù)據(jù)幀到達(dá)B點(diǎn)的交換核心時(shí)才做差錯(cuò)校驗(yàn),將錯(cuò)誤幀丟棄,而正確幀進(jìn)入
BUFFER,等待轉(zhuǎn)發(fā)。但是,所有的差錯(cuò)校驗(yàn)過程都是一個(gè)程序控制過程,當(dāng)某些特定的錯(cuò)誤幀進(jìn)入時(shí),無論是幀長度檢測還是CRC檢驗(yàn)都不能查出錯(cuò)誤,這種幀也被認(rèn)為是正確幀進(jìn)入BUFFER,但這類幀永遠(yuǎn)無法轉(zhuǎn)發(fā)出去,進(jìn)而在BUFFER中造成堆積,當(dāng)BUFFER的占用量大到一定程度時(shí),導(dǎo)致交換機(jī)無法繼續(xù)運(yùn)行。
二、某型號(hào)的解決方案:
判斷BUFFER中的數(shù)據(jù)堆積是由于交通捅塞造成的、錯(cuò)誤幀造成的,還是其它原因造成的,因此對(duì)于一個(gè)復(fù)雜系統(tǒng)無法用簡單的手段處理。但是,對(duì)于光纖收發(fā)器因?yàn)樗挥袃蓚€(gè)端口,如果可以實(shí)現(xiàn)交換機(jī)的上述檢測功能,又出現(xiàn)了BUFFER堆積的問題時(shí),我們可以簡單了判斷為光纖收發(fā)器的狀態(tài)不正常,因而可以將它Reset。
針對(duì)這一理解,解決方案就是在某型號(hào)系列光纖收發(fā)器中內(nèi)置以太網(wǎng)交換核心及一個(gè)大BUFFER,使其具有差錯(cuò)校驗(yàn)功能(當(dāng)然,這樣設(shè)計(jì)還具有其它的功能,在此不多述),同時(shí)在系統(tǒng)的設(shè)計(jì)中加入自動(dòng)Reset功能,當(dāng)系統(tǒng)判定自身進(jìn)入嚴(yán)重故障狀態(tài)時(shí),自動(dòng)進(jìn)行Reset,從而最大限度地避免上位系統(tǒng)的故障可能。
某型號(hào)完成數(shù)據(jù)鏈路層的全部功能,對(duì)數(shù)據(jù)做幀級(jí)的差錯(cuò)校驗(yàn)及處理,同時(shí)某型號(hào)具有2KMAC地址表,只有當(dāng)一個(gè)數(shù)據(jù)幀具有確實(shí)存在的MAC地址,可以正確轉(zhuǎn)發(fā)時(shí),才將該幀發(fā)出,否則只能堆積在自身的BUFFER中,如果收發(fā)器也出現(xiàn)BUFFER大量堆積時(shí),它認(rèn)為自身狀態(tài)嚴(yán)重故障,實(shí)施Reset動(dòng)作,清除所有BUFFER中的數(shù)據(jù),這樣導(dǎo)致的結(jié)果是部分傳輸?shù)臄?shù)據(jù)丟失,但可以避免網(wǎng)絡(luò)設(shè)備“死機(jī)"。
在使用某型號(hào)的系統(tǒng)環(huán)境中,只有當(dāng)段的雙絞線出現(xiàn)大量誤碼時(shí),才可能導(dǎo)致交換機(jī)B的“死機(jī)”現(xiàn)象,而由光路上來的誤碼已由某型號(hào)處理,有效地提高交換機(jī)的端口及整機(jī)交換效率,降低“死機(jī)”的風(fēng)險(xiǎn)。