網上鄰居工作原理

瀏覽服務
  爲了幫助用戶找到網絡資源,微軟使用了叫做"瀏覽服務"的機制完成網絡資源查找和定位。 當我們在一個對等網中,當主機的數量多於一定的數量的時候,有時我們打開"網上鄰居"的時候,速度會很慢很慢,(尤其在一個2000和98的混合環境中更爲嚴重)他不是故障,"網上鄰居"的工作機理就決定了這個事實,當我們的機器啓動的時候,首先會尋找網絡中的一臺機器――主瀏覽器,然後報告他自己存在於這個網絡中,主瀏覽器通過維護一個"瀏覽表"來實現這個功能。
  主瀏覽表中維護一個可用的基於NETBLOS的資源列表,他其中會有NETBLOS名稱到IP地址的映射,也就包含有我們所有的機器的信息。普通客戶機在主瀏覽器的主瀏覽表中加入自己,告訴他:"我來到了這個網絡"我的NETBILOS名字是COMPUTER1,IP是192.168.0.1,當你打開網上鄰居的時候,首先通過廣播來查找到"主瀏覽器"。 如果沒有"主瀏覽器"或者主瀏覽器關機,則在網絡中就會通過"選舉"來推選出一個"主瀏覽器",選舉考慮的原則包括
  1 操作系統
  2 措做系統版本
  3 計算機角色
  (注意:這個過程可能會很慢!!尤其在一個2000 98 混合環境中)找到主瀏覽器後,在從主瀏覽器中得到一個備份瀏覽器的列表,然後再從備份瀏覽器得到所有的列表(備份瀏覽器時主瀏覽器的備份,存儲有瀏覽表的副本),這時,網上鄰居中就出現了所有的計算機!
  客戶的瀏覽過程如下:
  1。通過向主瀏覽器發佈公告將服務器增加到瀏覽列表。
  2。主瀏覽器與備份瀏覽器共享服務器(域)列表。
  3。客戶機從主瀏覽器檢索備份瀏覽器的計算機列表。
  4。客戶機和備份瀏覽器聯繫以檢索服務器列表。
  5。客戶機和服務器聯繫以檢索服務器上的共享資源列表。
  而在網絡上,爲了有效地定位網絡資源,Microsoft Windows網絡的瀏覽服務必須有特定的"瀏覽服務器"參與並提供。
  瀏覽服務器的角色分爲"(域)主瀏覽服務器","備份瀏覽服務器","潛在瀏覽服務器"幾種。
  瀏覽服務器一般由最先啓動的計算機擔任,然後可以通過選舉來自動變更或者交接。
  每隔15分鐘,每個子網的主瀏覽器向本子網上的其他主瀏覽器宣示自己。
  每隔12分鐘,每個域主瀏覽器與WINS聯繫以取得所有domainname<1B>域的列表。
  每隔12分鐘,每個主瀏覽器(子網)與域主瀏覽器聯繫以更新瀏覽表。
  每隔12分鐘,每個備份瀏覽器和它的局部主瀏覽器聯繫以檢索和更新瀏覽表。
  所有有服務器組件(也就是說,具有共享網絡資源的能力)的計算機向它們局部域中的主瀏覽器宣示自己。
  當本地子網找不到主瀏覽器或初始化域控制器時都會發生瀏覽器選舉。選舉按照操作系統版本號和身份來決定勝負。
  而且此過程中的大部分流量都是廣播流量。這就是爲什麼在多子網環境下需要Wins才能正常使用"網絡鄰居"。也是爲什麼竭力建議在企業網絡裏面儘量少的使用"網絡鄰居"。它的工作過程決定了在比較大和動態變化的網絡裏面,註定是不可靠和存在衆多問題,並帶來混亂的。
  一些常見問題:
   1 有時候,明明計算機已經關了,但網上鄰居上卻仍然存在 ——瀏覽表沒有更新
  2 所有的網上鄰居中的機器不可訪問 ——主瀏覽器死機,還沒有選舉出新的瀏覽器
  3 某些網上鄰居的機器不可用 ——是瀏覽表中的內容沒有更新
  瀏覽服務沒有直接的控制選項,除了對於Win9x可以在"網絡屬性-文件和打印共享服務屬性"中控制計算機是否成爲瀏覽服務器,必須通過修改註冊表來進行。以下是一些註冊表控制參數。
  在網絡鄰居中隱藏特定的計算機: \SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
  建立或者修改:
   "Hidden"=dword:1/0
  1爲隱藏。(隱藏之後還是能通過UNC路徑名來訪問的)
  控制是否成爲"瀏覽服務器":
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Browser\Parameters
  "MaintainServerList"=REG_SZ:YES/NO/AUTO
  "YES"爲作爲瀏覽服務器,"NO"不作爲,"AUTO"自動。
  win9x計算機,控制面版-網絡-文件和打印共享服務屬性:
  主控瀏覽服務器:無效/有效/自動
  (建議設置win9x計算機爲無效,經常重啓或者從網絡斷開的計算機設置爲無效,來改善網絡鄰居的工作並提高網絡效率)
  1.什麼是瀏覽列表(Browsing List) 在微軟網絡中,用戶可以在瀏覽列表裏看到整個網絡(何指?子網還是廣播域?大家可以考慮考慮)上所有的計算機。當你通過網上鄰居窗口打開整個網絡時,你將看到一個工作組列表,再打開某個工作組,你將看到裏面的計算機列表(也可在 DOS方式下用net view /domain:workgroupname命令得到),這就是我們所說的 Browsing List。工作組從本質上說就是共享一個瀏覽列表的一組計算機,所有的工作組之間都是對等的,沒有規定不可以讓所有的計算機同處於一個工作組中。
  2.瀏覽列表在哪裏 曾在木棉上看到過一場爭論,有人說:網上鄰居里的計算機列表是廣播查詢得來的。可有人舉反例說:我的同學都關機了,可我還是能在網上鄰居里看到它,應該是從HUB或交換機之類較爲固定的設備的緩存中取得的。 其實他們都只說對了一個方面,把他們二人的說法結合起來就是正確答案了—— 瀏覽列表是通過廣播查詢瀏覽主控服務器,由瀏覽主控服務器提供的。
  3.瀏覽主控服務器又是什麼 瀏覽主控服務器是工作組中的一臺最爲重要的計算機,它負責維護本工作組中的瀏覽列表及指定其他工作組的主控服務器列表,爲本工作組的其他計算機和其他來訪本工作組的計算機提供瀏覽服務,每個工作組都爲會每個傳輸協議選擇一個瀏覽主控服務器,而我們經常遇到的無法瀏覽網絡的錯誤大多是因爲你所處的工作組沒有瀏覽主控服務器而造成的。你可以在一個工作組中用NBTSTAT -a computername 命令找出使用NBT協議的瀏覽主控服務器,它的標識是含有\\_MSBROWSE_名字段。
  4.瀏覽主控服務器是如何指定的 缺省情況下,win98工作組中的瀏覽主控服務器是該工作組中第一臺啓用文件及打印機共享功能的計算機,也允許手工將一臺win98計算機配置爲瀏覽主控服務器(方法會在後面講述網絡配置時具體介紹,但由於瀏覽主控服務器需要維護動態瀏覽列表,性能會受影響),如果一個工作組中有多臺計算機配置了這個選項,或是當前的瀏覽主控服務器關閉了系統,又沒有其他計算機啓用主控設置時,就要進行主控瀏覽器的選舉。
  5.如何通過瀏覽器選舉產生瀏覽主控服務器 關於瀏覽器的選舉報文,不太好抓包,我就只好按書上的東西來講述了.其實過程很簡單,首先由一臺計算機發送一個選舉臨界報文,該報文包含了來自發送計算機的信息(操作系統,版本及NETBIOS名等),選舉報文向網絡中廣播,工作組中的每一臺計算機都會用自身信息與選舉報文進行優先級比較,主要是操作系統起主要作用,記得好像是NT Server>NT Workstation>Win98>WFWG,反正到最後是那個自身條件最好的成爲新的瀏覽主控服務器. 6.整個網絡瀏覽的過程是怎樣的 當一臺win98進入網絡時,如果它帶有服務器服務(啓用了文件及打印機共享)會向網絡廣播宣告自己的存在,而瀏覽主控服務器會取得這個宣告並將它放入自己維護的瀏覽列表中;而沒有在相應協議上綁定文件及打印機共享的計算機則不會宣告,因而也就不會出現在網絡鄰居里了。當客戶計算機想獲得需要的網絡資源列表時,首先會廣播發出瀏覽請求,瀏覽主控服務器收到請求後,如果請求的是本組的瀏覽列表,則直接將客戶所需的資源列表發回;如果請求的是其它工作組的瀏覽列表,瀏覽主控服務器會根據本身Browsing List中的記錄找到相應工作組的主控瀏覽器返回給用戶,用戶可從那裏得到它想要的瀏覽列表。
  7.在我的網上鄰居里爲什麼有些機子訪問不了 如果微軟的網上鄰居真能做到所見即所得,相信抱怨它的人不會象現在這麼多,可通過前面對瀏覽服務的介紹,大家已經知道這是不可能的,因爲瀏覽列表的獲得不是通過訪問其中每一臺機子得到的,很多時候網絡中的計算機並不能正確更新瀏覽列表。當一臺計算機正常關機時,它會向網絡發出廣播宣告,使瀏覽主控服務器及時將它從瀏覽列表中刪除;而非正常關機後,瀏覽列表裏仍會把該條目保持很長一段時間(NT下是45分鐘),這就是我們仍能在網絡鄰居里看到它的原因
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章