天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧网络 >> 正文

网上邻居的工作原理:浏览服务

2010-11-5网管联盟太子

为了帮助用户找到网络资源,微软使用了叫做"浏览服务"的机制完成网络资源查找和定位。
当我们在一个对等网中,当主机的数量多于一定的数量的时候,有时我们打开"网上邻居"的时候,速度会很慢很慢,(尤其在一个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分钟),这就是我们仍能在网络邻居里看到它的原因。


本文来源:网管联盟 作者:太子

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行