胡清桂
(內(nèi)江師范學(xué)院現(xiàn)代教育技術(shù)中心,四川內(nèi)江 641112)
隨著計算機(jī)網(wǎng)絡(luò)的發(fā)展,網(wǎng)絡(luò)在各行各業(yè)得到越來越廣泛的應(yīng)用,解決網(wǎng)絡(luò)故障、維護(hù)網(wǎng)絡(luò)正常運(yùn)行顯得日益重要[1]。局域網(wǎng)故障按照其性質(zhì)可分為物理故障和邏輯故障。按照局域網(wǎng)故障的對象可分為線路故障、路由器故障和主機(jī)故障。文中研究了局域網(wǎng)線路故障規(guī)律,得出了大部分網(wǎng)絡(luò)線路故障是由線路接觸不良造成的結(jié)論,為此,提出了一種新的8線制10/100 M自適應(yīng)網(wǎng)卡的設(shè)計思想。分析表明,局域網(wǎng)中一旦采用新設(shè)計的網(wǎng)卡,絕大部分線路故障都將得到解決,這也就說明了新網(wǎng)卡有著巨大的市場前景。
網(wǎng)卡又稱網(wǎng)絡(luò)適配器或網(wǎng)絡(luò)接口卡(NIC)。它是使計算機(jī)聯(lián)網(wǎng)的設(shè)備,平常所說的網(wǎng)卡就是將PC機(jī)和 LAN連接的網(wǎng)絡(luò)適配器。網(wǎng)卡(NIC)插在計算機(jī)主板插槽中,負(fù)責(zé)將用戶要傳遞的數(shù)據(jù)轉(zhuǎn)換為網(wǎng)絡(luò)上其它設(shè)備能夠識別的格式,通過網(wǎng)絡(luò)介質(zhì)傳輸。根據(jù)網(wǎng)絡(luò)技術(shù)以及傳輸介質(zhì)的不同,網(wǎng)卡的分類也有所不同。
目前,使用最為廣泛的是10/100 M自適應(yīng)網(wǎng)卡,它采用PCI總線和RJ-45接口。和這類網(wǎng)卡連接的RJ45型網(wǎng)線插頭又稱水晶頭,共有8芯做成。根據(jù)EIA/TIA規(guī)定,如果看網(wǎng)線插頭,將插頭的末端面對眼睛,而且針腳的接觸點(diǎn)在插頭的下方,那么從最左邊到最右邊8芯序號分別是從1到8[2]。網(wǎng)絡(luò)線中8芯線的作用見表1。
表1 網(wǎng)絡(luò)線中8芯線的作用
這8根針腳中,1號和2號分別用于發(fā)送+和發(fā)送-,3號和6號分別用于接收+和接收-,4,5,7,8號不使用(Not connected)。
事實上,很多10/100 M自適應(yīng)網(wǎng)卡接口中僅有4根金屬連接線,分別對應(yīng)水晶頭1,2,3,6號針腳,對于水晶頭中的4,5,7,8號針腳,在10/100 M自適應(yīng)網(wǎng)卡接口中并沒有相應(yīng)的金屬連接線與之連接。
與10/100 M自適應(yīng)網(wǎng)卡連接的RJ45型網(wǎng)線插頭又稱水晶頭,共有8芯做成。這8根針腳中,1號和2號分別用于發(fā)送+和發(fā)送-,3號和6號分別用于接收+和接收-,4,5,7,8號不使用,它最初是為電話線預(yù)留[3],但實際上目前幾乎沒有任何連接局域網(wǎng)的網(wǎng)線同時用于連接電話,也就是說,目前4,5,7,8號線完全是空閑的。
另一方面,由于網(wǎng)絡(luò)中連接點(diǎn)眾多,一個局域網(wǎng)運(yùn)行一段時間后,由于線路接觸不良造成線路故障的情況頻繁發(fā)生,給網(wǎng)絡(luò)維護(hù)帶來極大負(fù)擔(dān)。鑒于這種情況,文中提出一個新的觀點(diǎn):網(wǎng)線的8芯線中,除1,2,3,6號線分別用于發(fā)送和接收外,4,5,7,8號線同時也用來發(fā)送和接收數(shù)據(jù),它和1,2,3,6號線發(fā)送和接收的數(shù)據(jù)完全一樣,這樣,即使出現(xiàn)1根線甚至幾根線路接觸不良,也有可能不影響數(shù)據(jù)的發(fā)送和接收。
下面以內(nèi)江師范學(xué)院24幢學(xué)生宿舍樓網(wǎng)絡(luò)為例,分析局域網(wǎng)線路故障規(guī)律,分析表明,線路故障大部分情況都是由線路接觸不良造成,而線路接觸不良很多時候都屬于4根針腳中只有1根針腳不連通的情況,2根或者3根甚至4根同時不連通的時候很少。事實上,由于網(wǎng)絡(luò)中連接點(diǎn)眾多,一個局域網(wǎng)運(yùn)行一段時間后,線路接觸不良造成線路故障是不可避免的[4]。
文中之所以僅選擇學(xué)生宿舍樓網(wǎng)絡(luò)進(jìn)行研究,而不包括教師宿舍樓網(wǎng)絡(luò)以及辦公區(qū)網(wǎng)絡(luò),是因為學(xué)生和老師對網(wǎng)絡(luò)的使用狀況區(qū)別較大,不便于比較[3]。比如說,學(xué)生寢室的電腦經(jīng)常搬動,網(wǎng)線經(jīng)常拔掉然后又插上,學(xué)生上網(wǎng)時間也比較多,并且經(jīng)常在線觀看網(wǎng)絡(luò)電視;而老師家庭和辦公室電腦一旦安裝完畢,一般很少搬動,老師上網(wǎng)時間也比學(xué)生少,他們一般不在網(wǎng)上在線觀看網(wǎng)絡(luò)電視。這些因素都會使學(xué)生宿舍網(wǎng)絡(luò)故障比教師宿舍網(wǎng)絡(luò)故障相對多一些。
內(nèi)江師范學(xué)院學(xué)生宿舍樓大部分是6層建筑,每層24個寢室,共144個寢室。這些學(xué)生宿舍樓是2003年統(tǒng)一布線組建校園局域網(wǎng)的,學(xué)生寢室的電腦通過下面的路徑連接上Internet,如圖1所示。
圖1 學(xué)生寢室電腦連接Internet的路徑
1)每一個寢室分布1個網(wǎng)絡(luò)信息模塊IDE RJ45,它與學(xué)生寢室的電腦相連接。
2)每一個寢室的網(wǎng)絡(luò)信息模塊IDE RJ45通過雙絞線即網(wǎng)絡(luò)線經(jīng)過配線架和樓層交換機(jī)連接。
3)樓層交換機(jī)通過跳線和3層交換機(jī)連接。
4)3層交換機(jī)通過跳線和光收發(fā)器DVI連接。
5)光收發(fā)器DVI通過光纖線連接到學(xué)校中心路由器Center Router,最終連接到Internet。
任何一個接觸點(diǎn)出現(xiàn)故障,都會使相應(yīng)的學(xué)生寢室出現(xiàn)網(wǎng)絡(luò)故障(見圖1)。文中對2010年5月1日至2010年6月1日這1個月時間內(nèi)所有學(xué)生寢室出現(xiàn)的網(wǎng)絡(luò)線路故障進(jìn)行了統(tǒng)計。需要說明的是,盡管連接光收發(fā)器的跳線出現(xiàn)故障會使整個一幢樓所有宿舍無法上網(wǎng),但我們還是把它當(dāng)作只出現(xiàn)1次故障來統(tǒng)計。另外,當(dāng)某一宿舍電腦無法上網(wǎng)時,如果是電腦本身故障或者宿舍內(nèi)學(xué)生自己的網(wǎng)絡(luò)線路故障,均不在文中統(tǒng)計范圍內(nèi)。下面是具體的統(tǒng)計結(jié)果。
1)在這1個月時間內(nèi),學(xué)生寢室出現(xiàn)網(wǎng)絡(luò)線路故障的次數(shù)總共是93次。
2)這些線路故障分為2個大類:第一個大類是學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊IDE RJ45中被使用的4根針腳有1根或多根不連通,這種故障情況有71次;第二個大類是學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊IDE RJ45中4根針腳均是連通的,這種故障情況有22次。
學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊中4根針腳是否連通是用網(wǎng)絡(luò)測線儀測試的。如果被使用的4根針腳有1根或者2根不連通,表明這個網(wǎng)絡(luò)信息模塊與交換機(jī)的連接出現(xiàn)了故障。如果4根針腳全是連通的,表明這個網(wǎng)絡(luò)信息模塊與交換機(jī)的連接沒有出現(xiàn)故障,而是該交換機(jī)與3層交換機(jī)的連接出現(xiàn)故障,或者是3層交換機(jī)與光收發(fā)器的連接出現(xiàn)故障,導(dǎo)致相應(yīng)的學(xué)生寢室出現(xiàn)網(wǎng)絡(luò)故障。
3)在第二個大類中,學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊IDE RJ45中4根針腳均是連通的,這表明該網(wǎng)絡(luò)信息模塊與交換機(jī)的連接正常。出現(xiàn)網(wǎng)絡(luò)故障有2種情況:第一種情況是這一樓層交換機(jī)與3層交換機(jī)的連接出現(xiàn)故障,這種故障情況共出現(xiàn)19次;第二種情況是3層交換機(jī)與光收發(fā)器的連接出現(xiàn)故障,這種故障情況出現(xiàn)3次。這段時間內(nèi)光收發(fā)器與學(xué)校中心路由器的連接并沒有出現(xiàn)過故障。
對于學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊IDE RJ45中被使用的4根針腳有1根或多根不連通的情況進(jìn)行了進(jìn)一步的統(tǒng)計,結(jié)果發(fā)現(xiàn)4根針腳中只有1根不通(1 failure stitch)的時候最多,出現(xiàn)了51次,2根或者3根甚至4根同時不通的時候很少,具體結(jié)果見表2。
表2 第一類線路故障中有多少根針腳同時不連通的統(tǒng)計
學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊IDE RJ45中被使用的4根針腳全是連通時,表明學(xué)生寢室內(nèi)網(wǎng)絡(luò)信息模塊與交換機(jī)的連接是正常的,是該交換機(jī)與3層交換機(jī)的連接出現(xiàn)故障,或者是3層交換機(jī)與光收發(fā)器的連接出現(xiàn)故障導(dǎo)致對應(yīng)的學(xué)生寢室出現(xiàn)網(wǎng)絡(luò)故障。需要說明的是,雖然3層交換機(jī)使用的是1 000 M交換機(jī),但樓層交換機(jī)還是100 M交換機(jī),交換機(jī)IDE接口中也是只有4根針腳被使用[5]。對于該交換機(jī)與3層交換機(jī)的連接出現(xiàn)故障的情況作了進(jìn)一步統(tǒng)計,結(jié)果也是4根針腳中只有1根不通(1 failure stitch)的時候最多,出現(xiàn)了11次,2根或者3根甚至4根同時不通的時候很少,具體結(jié)果見表3(交換機(jī)本身的設(shè)備故障沒有統(tǒng)計在內(nèi))。
表3 第二類線路故障中有多少根針腳同時不連通的統(tǒng)計
對于3層交換機(jī)與光收發(fā)器連接出現(xiàn)故障的情況只出現(xiàn)3次。這3次故障都是只有1根針腳不通造成的。每一幢學(xué)生宿舍樓有1個3層交換機(jī)和多個樓層交換機(jī),由于校園網(wǎng)主干帶寬是1 000 M,所以3層交換機(jī)使用的是1 000 M交換機(jī)。它與光收發(fā)器相連的接口8根針腳全被使用,但它與樓層交換機(jī)相連的接口只有4根針腳被使用,因為樓層交換機(jī)是采用的100 M交換機(jī)。
從上面的統(tǒng)計可以看出,出現(xiàn)線路故障很多時候都是4根針腳中只有1根不連通造成的,2根或者3根甚至4根同時不連通的時候很少。事實上,由于網(wǎng)絡(luò)中連接點(diǎn)眾多,一個局域網(wǎng)運(yùn)行一段時間后,線路接觸不良造成線路故障是不可避免的。一般來說,線路接觸不良不會造成線路連接徹底斷開,而是4根針腳中只有1根不通或者時斷時續(xù)。大部分情況下,只要將接觸不良的網(wǎng)線插頭拔出再插入,或者使用壓線鉗將網(wǎng)線插頭壓緊一些后再插入,線路故障就可以解決,網(wǎng)絡(luò)也就可以恢復(fù)正常[3]。
針對網(wǎng)絡(luò)線中只有4根線在使用,4根線空閑的情況,文中提出新的觀點(diǎn):網(wǎng)線的8芯線中,除1,2,3,6號線分別用于發(fā)送和接收外,4,5,7,8號線同時也用來發(fā)送和接收數(shù)據(jù),它和1,2,3,6號線發(fā)送和接收的數(shù)據(jù)完全一樣,這樣,即使出現(xiàn)1根線甚至幾根線路接觸不良,也可以不影響數(shù)據(jù)的發(fā)送和接收。為此,對10/100 M自適應(yīng)網(wǎng)卡進(jìn)行了改進(jìn),改進(jìn)原理如圖2所示。
圖2 新網(wǎng)卡的設(shè)計原理
1)從網(wǎng)卡主控芯片RT L8139D接出的2根信號線發(fā)送+和發(fā)送-,直接并聯(lián)成為4根信號線,接入數(shù)據(jù)汞1,然后連接普通網(wǎng)絡(luò)信息模塊RJ45中的1,2,7,8號線。
從網(wǎng)卡主控芯片接出的信號線發(fā)送+和發(fā)送-是模擬信號,所以可以直接經(jīng)過分流變?yōu)?根信號線后,只是電流強(qiáng)度即信號強(qiáng)度會變小,但考慮到數(shù)據(jù)汞本身具有對信號進(jìn)行增強(qiáng)和放大的作用,所以這種方法是可行的。7,8號線傳輸?shù)男畔⒑?,2號線傳輸?shù)男畔⑹窍嗤?。這樣,網(wǎng)卡主控芯片經(jīng)過1,2號線發(fā)送到網(wǎng)絡(luò)上的信息就經(jīng)過7,8號線重復(fù)發(fā)送。
RJ45型網(wǎng)線插頭從最左邊到最右邊8芯序號分別是從1到8,1號和2號分別用于發(fā)送+和發(fā)送-,3號和6號分別用于接收+和接收-。1號和2號是一對雙絞線,3號和6號是另一對雙絞線,采用雙絞線是為了抵御一部分外界電磁波干擾,同時降低自身信號的對外干擾[6]。由于4號線和3號線在網(wǎng)線插頭中相鄰,所以4號線用來傳輸和3號線相同的信號可以減小相互串?dāng)_,3號用于接收+,所以4號線也應(yīng)當(dāng)用于接收+。又由于4號和5號線是一對雙絞線,這樣5號線就應(yīng)當(dāng)用于接收-。最后,7號和8號線分別用于發(fā)送+和發(fā)送-。
2)3號和6號線是接收+和接收-,4號和5號線也是接收+和接收-,它接收的信息和3號、6號線接收的信息完全相同。這4根信號線從P0.0,P0.1,P0.2,P0.3這4個引腳接入單片機(jī),單片機(jī)接收到信息后,將P0.0和P0.3的信息從P3.1和P3.6端口傳輸?shù)骄W(wǎng)卡主控芯片接收+和接收-引腳。
默認(rèn)情況下,單片機(jī)將P0.0引腳接收到的信息經(jīng)P3.6端口傳輸?shù)骄W(wǎng)卡主控芯片接收+引腳,同時,單片機(jī)也檢測從P0.0這一引腳接收到的信息是否在不斷變化,如果信號確實在不斷變化,說明線路連接是正常的。如果接收端信號并沒有不斷變化,一直處于低電平或高電平狀態(tài),同時,P0.2引腳接收到的信息又在不斷變化,這就說明與P0.0引腳相連接的3號線出現(xiàn)故障,與P0.2引腳相連接的4號線沒有故障,3號線和4號線接收到的信息應(yīng)當(dāng)是相同的,它們都是接收+信號線。在這種情況下,單片機(jī)就會將P0.2引腳接收到的信息經(jīng)P3.6端口傳輸?shù)骄W(wǎng)卡主控芯片接收+引腳。
單片機(jī)將P0.1引腳接收到的信息經(jīng)P3.7端口傳輸?shù)骄W(wǎng)卡主控芯片接收-引腳。同樣,單片機(jī)也檢測從P0.1這一引腳接收到的信息是否在不斷變化,如果信號確實在不斷變化,說明線路連接是正常的。如果接收端信號并沒有不斷變化,而是一直處于低電平或高電平狀態(tài),同時,P0.3引腳接收到的信息又在不斷變化,這就說明與P0.1引腳相連接的6號線出現(xiàn)故障,與P0.3引腳相連接的5號線沒有故障,從6號線和5號線接收到的信息應(yīng)當(dāng)是相同的,它們都是接收-信號線。在這種情況下,單片機(jī)就會將P0.3引腳接收到的信息經(jīng)P3.7端口傳輸?shù)骄W(wǎng)卡主控芯片接收-引腳。
3)AT系列單片機(jī)和MCS51系列單片機(jī)兼容性較好,有32個可編程I/O口,P0一般用作地址數(shù)據(jù)總線,文中使用了P0口從P0.0到P0.3這4個引腳作為數(shù)據(jù)輸入。P3口除了作I/O口外,還具有復(fù)用功能,比如可以作串口,外部中斷等。其中,P3.6,P3.7可以作WR,RD信號,文中使用這2個引腳作為信息輸出端,只要微處理機(jī)一執(zhí)行到MOVX指令,就會有相應(yīng)的信號從P3.6或P3.7送出[4]。
4)數(shù)據(jù)汞是普通PCI網(wǎng)卡上都具備的設(shè)備,數(shù)據(jù)汞也被叫做網(wǎng)絡(luò)變壓器或網(wǎng)絡(luò)隔離變壓器。它在一塊網(wǎng)卡上所起的作用主要有兩個:一是傳輸數(shù)據(jù),它把從主控制芯片送出來的差分信號用差模耦合的線圈耦合濾波以增強(qiáng)信號,并且通過電磁場的轉(zhuǎn)換把信號傳遞到網(wǎng)線的另外一端;二是隔離網(wǎng)線連接的不同網(wǎng)絡(luò)設(shè)備間的不同電平,以防止不同電壓通過網(wǎng)線傳輸損壞設(shè)備。除此以外,數(shù)據(jù)汞還能對設(shè)備起到一定的防雷保護(hù)作用。文中從網(wǎng)卡主控芯片接出的信號線發(fā)送+和發(fā)送-是模擬信號,直接經(jīng)過分流變?yōu)?根信號線后,只是電流強(qiáng)度即信號強(qiáng)度會變小,所以采用了2個數(shù)據(jù)汞以達(dá)到對信號進(jìn)行增強(qiáng)和放大的目的。
5)和普通的10/100 M自適應(yīng)網(wǎng)卡相比,文中只是對網(wǎng)卡主控芯片發(fā)送+和發(fā)送-,以及接收+和接收-這4根引腳進(jìn)行了改變,其中,發(fā)送+和發(fā)送-這2根信號線直接經(jīng)過分流變?yōu)?根信號線再把信息放置到網(wǎng)絡(luò)上。同時,單片機(jī)對接收+和接收-這4根引腳進(jìn)行判斷,選取連接正常的一對線送到網(wǎng)卡主控芯片接收+和接收-引腳。判斷是否連接正常的依據(jù)是檢查接收端信號是否在不斷變化,如果一直處于低電平或高電平狀態(tài),則說明連接不正常,反之,連接是正常的。
AT系列單片機(jī)和MCS51系列單片機(jī)指令集完全兼容[5]。在程序設(shè)計中,默認(rèn)情況下,單片機(jī)將P0.0引腳接收到的信息經(jīng)P3.6端口傳輸?shù)骄W(wǎng)卡主控芯片接收+引腳,將P0.1引腳接收到的信息經(jīng)P3.7端口傳輸?shù)骄W(wǎng)卡主控芯片接收-引腳。只有當(dāng)P0.0引腳一直處于低電平或高電平狀態(tài),同時P0.3引腳接收到的信息又在不斷變化時,程序才跳轉(zhuǎn)將P0.3引腳接收到的信息經(jīng)P3.6端口傳輸?shù)骄W(wǎng)卡主控芯片接收+引腳[5]。同樣,當(dāng)P0.1引腳一直處于低電平或高電平狀態(tài),P0.2引腳接收到的信息又在不斷變化時,程序才跳轉(zhuǎn)將P0.2引腳接收到的信息經(jīng)P3.7端口傳輸?shù)骄W(wǎng)卡主控芯片接收+引腳。
主程序如下:
判斷子程序如下:
1)假設(shè)桌面?zhèn)€人電腦采用了這種新的網(wǎng)卡,那么與之相連的交換機(jī)也需要采用這種新的網(wǎng)卡才能達(dá)到設(shè)計的目的。如果交換機(jī)端口采用的依然是普通的10/100 M自適應(yīng)端口,那么,盡管新網(wǎng)卡通過1,2,3,6號線傳輸數(shù)據(jù)的同時,也向4,5,7,8這4根空閑的線路發(fā)送數(shù)據(jù)。但由于對方根本就沒有使用這4根空閑線路,所以,新網(wǎng)卡無法從這4根線路中接收到任何數(shù)據(jù)。
2)假設(shè)通信雙方都采用了這種新的網(wǎng)卡,如果8根通信線路都沒損壞,那么1,2,3,6號線和4,5,7,8號線這兩組線路傳輸?shù)臄?shù)據(jù)是相同的。如果某1根線損壞,那么對應(yīng)的這一組線路就無法正常傳輸數(shù)據(jù),要么是無法接收,要么就是無法發(fā)送,但另外一組線路是可以正常工作的。
3)當(dāng)網(wǎng)絡(luò)線中8根線都用于傳輸數(shù)據(jù)后,信號之間相互干擾對線路通信質(zhì)量將會造成多大影響還需要進(jìn)一步研究,但可以肯定的是,影響不會太大。曾經(jīng)用網(wǎng)絡(luò)線中的第5號線替換第1號線,因為當(dāng)時本來正在使用的第1號線已損壞,替換后,第5號線和第2號線分別用于發(fā)送+和發(fā)送-,但它們已經(jīng)不是一對雙絞線了,結(jié)果完全能正常通信,電腦離交換機(jī)距離大約為70 m[6]。
文中研究表明,局域網(wǎng)中大部分線路故障由于線路接觸不良造成。一般來說,線路接觸不良不會造成線路連接徹底斷開,而是4根針腳中只有1根不通或者時斷時續(xù)。針對網(wǎng)絡(luò)線中只有4根線在使用,有4根線空閑的情況,提出了讓空閑的4根線也用來發(fā)送和接收數(shù)據(jù)這一新的觀點(diǎn),并介紹了相應(yīng)的新網(wǎng)卡的設(shè)計方案以及工作原理。
[1] Tian Xinguang,Duan Miyi,Li Wenfa,et al.A-nomaly detection of user behavior based on shell commands and homogeneous markov chains[J]. Chinese Journal of Electronics,2008,17(2):231-236.
[2] Clarke D,Elien J E,Ellison C,et al.Certificate chain discovery in SPKI/SDSI[J].Journal of Computer Security,2001,9(4):285-322.
[3] Zanette D H.Dynamics of rumor propagation on small-world networks[J].Physical Review E,2002,65(4):1908-1917.
[4] Chen Bo.Research on credential chain discovery algorithm in grid environment[D]:[Master's Degree Thesis].Dalian:Dalian University of Technology,2007.
[5] Ni Xiaoyong,Wang Dianhong,Zhang Hongjian. Application of neural network data fusion algorithm in measurement circuit[C]//Proceedings of ICIEA 2008 3rd IEEE Conference on Industrial Electronics Applications.Singapore:IEEE,2008:12-17.
[6] 王華,岳麗全,岳志高.MSComm控件在VC++6.0串口通信中的應(yīng)用[J].長春工程學(xué)院學(xué)報:自然科學(xué)版,2009,10(1):72-73.