無(wú)需探究有關(guān)該模型的歷史和使用的太多細(xì)節(jié),讓我們來(lái)看一下你可以如何將OSI模型擴(kuò)展成一個(gè)可用于問(wèn)題隔離的框架。圖4.1顯示了OSI模型的七層結(jié)構(gòu)以及與每一層相關(guān)的一些典型問(wèn)題。讓我們按照從下到上的順序來(lái)討論每一層:
物理層 典型問(wèn)題包括構(gòu)成網(wǎng)絡(luò)的物理連接的斷裂。斷開(kāi)的網(wǎng)絡(luò)連接,電纜和連接器問(wèn)題和由硬件引起的禁止電流在設(shè)備之間的傳送問(wèn)題都是物理層的一些典型問(wèn)題。
數(shù)據(jù)鏈路層 我們暫不討論純粹的電學(xué)問(wèn)題,而將注意力轉(zhuǎn)移到接口本身的配置。數(shù)據(jù)鏈路問(wèn)題常常和地址解析協(xié)議(ARP)問(wèn)題有關(guān),該協(xié)議負(fù)責(zé)將IP地址轉(zhuǎn)換成MAC地址。網(wǎng)絡(luò)設(shè)備之間速率和工作模式的不匹配或者過(guò)多的硬件接口錯(cuò)誤都會(huì)引發(fā)這些問(wèn)題。而設(shè)備操作系統(tǒng)(OS)接口的錯(cuò)誤配置或者無(wú)線連接的干擾同樣會(huì)導(dǎo)致數(shù)據(jù)鏈路層出現(xiàn)問(wèn)題。
網(wǎng)絡(luò)層 我們從網(wǎng)絡(luò)遍歷問(wèn)題開(kāi)始說(shuō)起。網(wǎng)絡(luò)分組無(wú)法在從源地址到目的地址的過(guò)程中進(jìn)行正確選路往往會(huì)造成網(wǎng)絡(luò)層問(wèn)題。這可能和不正確的IP尋址或者網(wǎng)絡(luò)中的IP地址復(fù)制有關(guān)。網(wǎng)絡(luò)中的數(shù)據(jù)或者ICMP分組路由問(wèn)題以及協(xié)議錯(cuò)誤也有可能導(dǎo)致問(wèn)題的發(fā)生。在極端情況下,外部攻擊同樣有可能造成網(wǎng)絡(luò)設(shè)備的錯(cuò)誤從而導(dǎo)致網(wǎng)絡(luò)層出現(xiàn)問(wèn)題。
傳輸層 傳輸層問(wèn)題一般出現(xiàn)在以太網(wǎng)中的TCP或者UDP分組上。這些問(wèn)題可能和過(guò)量重傳錯(cuò)誤或者分組分裂有關(guān)。沒(méi)有單獨(dú)的一種問(wèn)題能夠?qū)е戮W(wǎng)絡(luò)性能完全下降。該層上的問(wèn)題比較難于追蹤,因?yàn)椴幌竦讓映霈F(xiàn)的問(wèn)題,傳輸層問(wèn)題通常不會(huì)導(dǎo)致連接的完全丟失。此外,傳輸層問(wèn)題還經(jīng)常與IP端口的流量擁塞有關(guān)。如果你能夠ping通服務(wù)器,但是不能通過(guò)已知端口進(jìn)行連接,這有可能就是一個(gè)傳輸層問(wèn)題。
會(huì)話層、表示層和應(yīng)用層 這三層經(jīng)常被放到一起討論,因?yàn)樽罱嘘P(guān)OSI的解釋趨向于淡化這三層之間的分隔。這三層的故障檢修過(guò)程包括與應(yīng)用有關(guān)的各種問(wèn)題。
這些應(yīng)用問(wèn)題可能包括DNS、NetBIOS問(wèn)題或者其它一些存在于OS中的解析、應(yīng)用問(wèn)題,又或者是高層協(xié)議失效或者錯(cuò)誤配置問(wèn)題。一些典型的高層協(xié)議有HTTP協(xié)議、SMTP協(xié)議、FTP協(xié)議和其它一些典型的“使用網(wǎng)絡(luò)”而不是“運(yùn)行網(wǎng)絡(luò)”的協(xié)議。另外,一些專門(mén)的外部攻擊(如中間人攻擊)也會(huì)造成這些層次上的問(wèn)題。
網(wǎng)絡(luò)問(wèn)題可能而且確實(shí)發(fā)生在模型的任意一層上。因?yàn)榫W(wǎng)絡(luò)管理員對(duì)該模型非常了解,所以它自然就成了各種網(wǎng)絡(luò)管理員用來(lái)解決問(wèn)題的一種有效的工具。如果你曾經(jīng)和使用如此語(yǔ)言-“這好像是第四層的問(wèn)題”-的網(wǎng)絡(luò)管理員一起工作,你馬上就可以知道問(wèn)題可能發(fā)生的大體區(qū)域(傳輸層)。
你會(huì)聽(tīng)到一些有經(jīng)驗(yàn)的網(wǎng)絡(luò)管理員經(jīng)常使用層次號(hào)來(lái)指代問(wèn)題的位置。例如,當(dāng)你聽(tīng)到“那在第三層”,就表示IP連接問(wèn)題。第四層揭示的是網(wǎng)絡(luò)端口關(guān)閉引起的問(wèn)題。有趣的是,網(wǎng)絡(luò)管理員喜歡把系統(tǒng)而不是網(wǎng)絡(luò)出現(xiàn)的問(wèn)題稱為“第七層”問(wèn)題。
讓我們探討一下在使用OSI模型對(duì)問(wèn)題進(jìn)行隔離的過(guò)程中可以使用的三種不同的方法。
三種不同的方法
使用OSI模型作為故障檢修框架的網(wǎng)絡(luò)管理員一般使用下列三種方法中的一種:自下而上(Bottom-Up)、自上而下(Top-Down)和自中間而兩端(Divide-and-Conquer)。對(duì)某一個(gè)特定問(wèn)題,他們會(huì)依據(jù)問(wèn)題的明顯程度和他們的經(jīng)驗(yàn)來(lái)選擇其中一種方法;趩(wèn)題的類型,每一種方法都有它的用武之地。讓我們一個(gè)個(gè)來(lái)討論。
自下而上(Bottom-Up)
簡(jiǎn)單來(lái)說(shuō),自下而上的方法就是,網(wǎng)絡(luò)管理員從OSI模型的底部開(kāi)始,逐步穿過(guò)各個(gè)層次,直到找到問(wèn)題的根源所在。使用自下而上方法的網(wǎng)絡(luò)管理員一般從檢查物理層問(wèn)題開(kāi)始,首先,確定網(wǎng)絡(luò)連接是否斷裂,其次,查看網(wǎng)絡(luò)接口配置和誤差率,再次,檢查路由、分段和端口阻塞等IP和TCP/UDP錯(cuò)誤,最后,查看各個(gè)應(yīng)用錯(cuò)誤。
這種方法最適合于網(wǎng)絡(luò)完全崩潰或者具有大量底層錯(cuò)誤的情形。當(dāng)問(wèn)題特別復(fù)雜時(shí),這種方法也是最佳選擇。在復(fù)雜的問(wèn)題中,故障檢測(cè)程序往往無(wú)法給網(wǎng)絡(luò)管理員提供足夠的調(diào)試數(shù)據(jù)以便對(duì)問(wèn)題進(jìn)行分析。因此,聚焦于網(wǎng)絡(luò)的方法是最佳的。
自上而下(Top-Down)
自上而下的方法于自下而上的方法正好相反,網(wǎng)絡(luò)管理員首先從OSI模型的頂端開(kāi)始,查看出現(xiàn)故障的程序并設(shè)法跟蹤程序出現(xiàn)故障的原因。這種方法最適合于網(wǎng)絡(luò)狀態(tài)良好,網(wǎng)絡(luò)中新的應(yīng)用或者應(yīng)用配置正在完成的時(shí)候。網(wǎng)絡(luò)管理員可以首先確保應(yīng)用的正確配置,然后往下保證全I(xiàn)P連接和適當(dāng)?shù)亩丝谔幱陂_(kāi)放狀態(tài)以確保程序的正常運(yùn)行。一旦所有的上層問(wèn)題被解決,就可以回頭檢查網(wǎng)絡(luò)功能是否正常。正如先前所述,這種方法一般用于網(wǎng)絡(luò)功能正常,但是正在引入新的網(wǎng)絡(luò)應(yīng)用或者正在對(duì)現(xiàn)存應(yīng)用進(jìn)行重新配置的情況。
自中間而兩端(Divide-and-Conquer)
自中間而兩端的方法是對(duì)“內(nèi)臟感覺(jué)”方法的一種富有想象力的命名。這種方法一般被對(duì)網(wǎng)絡(luò)和可能出現(xiàn)的問(wèn)題有較深理解的有經(jīng)驗(yàn)的網(wǎng)絡(luò)管理員所使用。自中間而兩端的方法需要網(wǎng)絡(luò)管理員具對(duì)問(wèn)題出現(xiàn)的地方有一種直觀的感覺(jué),首先從你認(rèn)為問(wèn)題可能出現(xiàn)的那一層開(kāi)始,然后從該位置逐步擴(kuò)展到模型的兩端。這種方法還可以用于解決以前遇到過(guò)的一些小問(wèn)題。
然而,這種方法經(jīng)常會(huì)因?yàn)闆](méi)有足夠的科學(xué)依據(jù)而無(wú)法正確地診斷比較困難的問(wèn)題而失敗。如果問(wèn)題在本質(zhì)上非常復(fù)雜,那么自中間而兩端的方法可能就無(wú)法有效地追蹤問(wèn)題所在。
圖 據(jù)問(wèn)題的類型,選擇自下而上、自上而下或者自中間而兩端方法中最有效的一種來(lái)隔離問(wèn)題的根源 不管你使用的是那種方法,只有當(dāng)你充分了解了你的網(wǎng)絡(luò)和它的特質(zhì),你才能考慮選擇使用一種結(jié)構(gòu)化的方法作為故障檢修技術(shù)。盡管使用結(jié)構(gòu)化的方法可能會(huì)增加解決問(wèn)題的時(shí)間,但是它將徹底追查問(wèn)題根源所在,而不會(huì)由于遺漏一些關(guān)鍵問(wèn)題而日后對(duì)網(wǎng)絡(luò)“修修補(bǔ)補(bǔ)”。
只有當(dāng)你對(duì)網(wǎng)絡(luò)以及故障檢修技術(shù)有了堅(jiān)實(shí)的基礎(chǔ),才建議你使用自中間而兩端的方法。這種方法常常只能應(yīng)付一些表面的網(wǎng)絡(luò)問(wèn)題而不能解決實(shí)際的根源問(wèn)題。
讓我們暫時(shí)放下故障檢修的一般概念,開(kāi)始談一下我們可以使用的進(jìn)行故障檢修的一些工具。