用光纖收發(fā)器可以將Ethernet的傳輸距離延伸到100公里以上,但是在長(zhǎng)距離的傳輸過程中由于誤碼的原因,可能導(dǎo)致以太網(wǎng)交換機(jī)設(shè)備的“死機(jī)”。
在對(duì)光纖收發(fā)器的系統(tǒng)設(shè)計(jì)中,針對(duì)這一問題,根據(jù)我們對(duì)故障原因的分析及理解,提出一套解決方案可以******限度地減少交換機(jī)“死機(jī)”現(xià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í),無論是幀長(zhǎng)度檢測(cè)還是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)行。
二、解決方案:
判斷BUFFER中的數(shù)據(jù)堆積是由于交通捅塞造成的、錯(cuò)誤幀造成的,還是其它原因造成的,因此對(duì)于一個(gè)復(fù)雜系統(tǒng)無法用簡(jiǎn)單的手段處理。但是,對(duì)于光纖收發(fā)器因?yàn)樗挥袃蓚€(gè)端口,如果可以實(shí)現(xiàn)交換機(jī)的上述檢測(cè)功能,又出現(xiàn)了BUFFER堆積的問題時(shí),我們可以簡(jiǎn)單了判斷為光纖收發(fā)器的狀態(tài)不正常,因而可以將它Reset
針對(duì)這一理解,解決方案就是在光纖收發(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)的故障可能。
完成數(shù)據(jù)鏈路層的全部功能,對(duì)數(shù)據(jù)做幀級(jí)的差錯(cuò)校驗(yàn)及處理,同時(shí)其具有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ī)"。
在使用收發(fā)器的系統(tǒng)環(huán)境中,只有當(dāng)段的雙絞線出現(xiàn)大量誤碼時(shí),才可能導(dǎo)致交換機(jī)B的“死機(jī)”現(xiàn)象,而由光路上來的誤碼已由其處理,有效地提高交換機(jī)的端口及整機(jī)交換效率,降低“死機(jī)”的風(fēng)險(xiǎn)。