[摘要]本文探討了網上鄰居的工作原理,然后通過對計算機局域網中網絡鄰居訪問響應慢的問題進行分析,找出引起網絡鄰居訪問響應慢問題可能存在的原因及其解決的辦法。局域網中“幔”的問題主要出在硬件和軟件兩個方面。
[關鍵詞]網上鄰居 瀏覽列表 瀏覽器 瀏覽服務
[中圖分類號]TP [文獻標識碼]A [文章編號]1009-5489(2007)04-0096-02
當我們通過網上鄰居訪問其他計算機,有時要刷新好多次才能連接得上。到底是什么原因導致這種現象產生呢?“局域網中“慢”的問題主要出在硬件和軟件兩個方面。決定網絡速度的硬件無非是網卡、集線器和網線,本文在此不再多加討論,下面主要從軟件方面加以剖析。
一、網上鄰居的工作原理
網上鄰居用的是NetBIOS協議。NetBIOS(網絡基本輸A/輸出系統)最初由IBM,sytek作為API開發,使用戶軟件能使用局域網的資源。它提供給網絡程序一套方法,相互通訊及傳輸數據。我們如何看到網上鄰居中的內容的呢?這就是網絡瀏覽和域的功能,它的作用是解決如何在網絡上瀏覽NetBIOS資源這個問題。該功能需要計算機瀏覽器服務提供查看網絡資源的能力。
1 瀏覽列表
當你瀏覽網上鄰居時,應該可以看到本機所在的工作組中的機器列表,工作組其實就是共享瀏覽列表的一組計算機,同一個網段中的計算機,其默認都是屬于同一工作組。在微軟網絡中,用戶可以在瀏覽列表里看到整個網絡上所有的計算機。當你通過網上鄰居窗口打開整個網絡時,你將看到一個工作組列表,再打開某個工作組,你將看到里面的計算機列表,這就是我們所說的Browsing List。工作組從本質上說就是共享一個瀏覽列表的一組計算機,所有的工作組之間都是對等的,沒有規定不可以讓所有的計算機同處于一個工作組中。瀏覽列表是通過廣播查詢瀏覽主控服務器,由瀏覽主控服務器提供的。
2 瀏覽器
網絡上的每臺計算機都可以作為瀏覽服務器提供瀏覽列表。瀏覽器的角色分類如下:
(1)主瀏覽器:主瀏覽器收集它所在NT域、工作組或其他域的可用服務器上的主列表,并將該瀏覽列表送給備份瀏覽器。
(2)備份瀏覽器:接收來自主瀏覽器的瀏覽列表的拷貝,再把瀏覽列表送給提出查詢請求的瀏覽客戶機。
(3)域主瀏覽器:NT域的環境中,它除了作為本域的主瀏覽器外,還有一個作用,如果遠程網上有其他服務于本域的多個主瀏覽器,那么域主瀏覽器可以同步更新本域內所有的主瀏覽器的瀏覽列表。
(4)潛在瀏覽器:當主瀏覽器不能工作時,瀏覽服務進行瀏覽器選舉過程,潛在瀏覽器可以成為一個候選對象。只有作為主域控制器的Server才能作為域主瀏覽器,而其他Server、Workstation、Win95、Windows for Workgroup計算機可作為主瀏覽器或備份瀏覽器。
瀏覽列表其實是從工作組中的某一臺計算機中得來(這臺計算機一般就叫主瀏覽器),在一個工作組中只有一臺計算機充當主瀏覽器的角色,有一到兩臺計算機充當備份瀏覽器的角色。如果不指定,主瀏覽器、備份瀏覽器身份都是由網絡中的計算機隨機得到,如果網絡中的機器都是Win98系統,則由第一臺打開并啟用文件及打印共享的計算機充當主瀏覽器,如果主瀏覽器關機,那么就要選舉主瀏覽器了。當一臺計算機進入網絡時它會通過網絡廣播宣告自己的存在,主瀏覽器收到廣播后就將該計算機的信息保存到自己已有的列表中。主瀏覽器除了保存所在工作組的計算機列表之外,還保存了同一個網段中其他工作組的主瀏覽器列表,以便本工作組的計算機瀏覽其他工作組的計算機列表。
3 瀏覽服務
當我們的機器啟動的時候,首先會尋找網絡中的一臺機器一主瀏覽器,然后報告他自己存在于這個網絡中,主瀏覽器通過維護一個“瀏覽表”來實現這個功能,主瀏覽表中維護一個可用的基于NetBIOS的資源列表,他其中會有Net-BIOS名稱到IP地址的映射,也就包含有我們所有的機器的信息。普通客戶機在主瀏覽器的主瀏覽表中加入自己,告訴他:“我來到了這個網絡”,我的NetBIOS名字是coropl,IP是‘192.168.10.1’。當你打開網上鄰居的時候,首先通過廣播來查找到“主瀏覽器”。如果沒有“主瀏覽器”或者主瀏覽器關機,則在網絡中就會通過“選舉”來推選出一個“主瀏覽器”。計算機角色找到主瀏覽器后,再從主瀏覽器中得到一個備份瀏覽器的列表,然后再從備份瀏覽器得到所有的列表,這時,網上鄰居中就出現了所有的計算機。
客戶機的瀏覽過程如下:通過向主瀏覽器發布公告將服務器增加到瀏覽列表;主瀏覽器與備份瀏覽器共享服務器(域)列表;客戶機從主瀏覽器檢索備份瀏覽器的計算機列表;客戶機和備份瀏覽器聯系以檢索服務器列表;客戶機和服務器聯系以檢索服務器上的共享資源列表。
在網絡上,為了有效地定位網絡資源,Microsoft Win-dows網絡的瀏覽服務必須有特定的“瀏覽服務器”參與并提供。瀏覽服務器一般由最先啟動的計算機擔任,然后可以通過選舉來自動變更或者交接:每隔15mia,每個子網的瀏覽器向本子網上的其他主瀏覽器宣示自己。每隔12min,每個域主瀏覽器與WINS聯系以取得所有domain nalne<1B>域的列表,這一點是通過發出MSRPCR_Wins Get BrowserNames請求實現的。
每隔12min,每個主瀏覽器(子網)與域主瀏覽器聯系以更新瀏覽表,獲取此列表的方法是先發出一個標志為OxFFFFFFFF的Net Server Enum請求。這個請求會檢索域中服務器的完整列表。然后,主瀏覽器會發出標志為Ox8000000的相同請求,以請求所有域名和工作組名稱。每隔12min,每個備份瀏覽器和它的局部主瀏覽器聯系以檢索和更新瀏覽表,網段上的每個備份瀏覽器會每隔12min發出一個標志為OxFFFFFFFF和xS0000000的Net Server Enuro請求,以獲取服務器、域和工作組名稱的完整列表。
所有服務器組件(也就是說,具有共享網絡資源的能力)的計算機向它們局部域中的主瀏覽器宣示自己。當本地子網找不到主瀏覽器或初始化域控制器時都會發生瀏覽器選舉。選舉按照操作系統版本號和身份來決定勝負。而且此過程中的大部分流量都是廣播流量。這就是為什么在多子網環境下需要Wins才能正常使用“網絡鄰居”。它的工作過程決定了在比較大和動態變化的網絡里面,注定是不可靠和存在眾多問題的。
二、引起網絡鄰居訪問響應慢的原因殛解決方法
引起網絡鄰居訪問響應慢的原因有很多。Master Browser是關鍵,有的Master Browser系統資源差不多要耗盡,也有的Master Browser被使用了防火墻的用戶霸占,這時我們就需要先找到它,然后再采取相應方式解決。WinNT/2000 Re-source kit中一個Bq Browstat,exe的小工具可以幫我們找到Master Browser,安裝后執行net eonfig rdr,然后記下NetBT-Tepip_{…},假如是NetBT_Tepip_{612E…},然后執行Brow stat GE TMA STER NetBT Tcpip_{612E…}XXX。如果訪問一個工作組時被告知該工作組列表拒絕訪問,這種情況一般都是該工作組的Master Browser采用了防火墻,找到該機器,關閉防火墻就可以解決問題。為什么我瀏覽網上鄰居的時候很慢?怎樣解決?因為通過網上鄰居瀏覽其他計算機的時候,會先搜索自己的共享目錄和可作為網絡共享的打印機以及計劃任務中和網絡相關的計劃任務,所以導致速度慢。啟動注冊表編輯器找到HKEY_LOCAL_MACHINE/sofeware/Microsoft/Windows/Curr-entVersion/Ex-plore/RerooteCompumr/NameSpaee,刪除{2227A280-3AEA-1069-A2DE08002830309D},再次打開的時候就會發現速度比以前提高很多了。
網上鄰居提速兩原則:(1)使用單一網絡通信協議。Windows允許是用多種通信協議,如NetBEUI和IPX/SPX等雖然方便,但也制造了更多的網絡廣播垃圾,同時也減緩了存取網絡資源的速度,只用一種通信協議當然最理想不過,因此若沒有必要,將多余的協議刪掉;(2)使用WINS服務器配合使用TCP/IP,WinNT/2000 Server提供WINS服務器功能,在局域網中安裝一臺WINS服務器,則網絡上所有電腦都成為WINS客戶端,這樣客戶端只需要向WINS服務器發出請求而不必進行廣播查詢,對于中大型網絡是個不錯的選擇。
另外,當一臺計算機正常關機時,它會向網絡發出廣播宣告,使瀏覽主控服務器及時將它從瀏覽列表中刪除;而非正常關機后,瀏覽列表里仍會把該條目保持很長一段時間(NT下是45分鐘),我們仍能在網絡鄰居里看到它,訪問它時等很長時間,最后才通知訪問不了。
三、結束語
網絡鄰居訪問響應慢的問題對廣大網絡用戶使用來說經常發生。本文只是敘述了經常出現的問題和解決方案。在實際的應用過程中可以說是很好的解決方案。這篇文章旨在拋磚引玉,希望能解決使用者的一些實際問題。
[參考文獻]
[1]熊桂喜,王小虎譯:《計算機網絡》(第3版),清華大學出版社2000年版。
[2][美]KeithE,strassberg,RichnardJ,Gondek,GaryRollie,李昂、劉芳萍、楊旭、程鵬等譯:《防火墻技術大全》,機械工業出版社2004年版。
[3][美]JamesF,KuroseKeithW,Ross,中震杰、王全倫、杜漢譯:《計算機網絡》,清華大學出版社2003年版。
[4](美]ShaneStiglerMarkA,Linsenbardt,李超、昊志濱、李志剛、陳靚等譯:《WindowsNT系統管理技術內幕》,中國水利水電出版社1999年版。
[5][美]winiamStalllngs,王海、張娟、蔣慧等譯:《數據與計算機通信》,電子工業出版社2002年版。