T C P / I P和I n t e r n e t
简介
Windows 2000对T C P / P的实现为Microsoft Wi n d o w s网络与U n i x的互连提供了重要的点对点链接方式。为了彻底理解包含在Windows 2000注册表中的网络参数(以及这些参数的正确取值),充分了解基本的网络结构是必要的。对网络背景知识的深入讨论超出了本书的范围,但是本章提供的某些重要内容可以增强Windows 2000 系统管理员的工作效率。我将介绍M i c r o s o f t的网络协议, T C P / I P体系结构和D H C P,这样在学习后面的直接解决方案时,你就能够有一个上下文环境了。
MS Windows网络协议Microsoft Wi n d o w s网络可以使用多种网络协议,包括T C P / I P、N e t B E U I、A p p l e Ta l k、I P X / S P X、P P P、S M B和D E C N E T。某个服务器使用协议通信的能力取决于系统上安装了哪种协议。实际上,在Windows 2000计算机和其他服务器之间存在特殊的协议处理,它可以实时将一种协议转换成另一种协议。重要的一点是:记住,网络协议是分层的。T C P / I P就是网络协议怎样分层的最佳示例。
1. TCP/IP
I P ( I n t e r n e t协议,即Internet Protocol)是一种负责寻址和从网络上的一台计算机发送数据报到另一台计算机的协议。名为传输控制协议( Transmission Control Protocol,TCP)的独立技术位于I P的上层,它提供了基于连接的通信,支持可靠、顺序的数据流。这两种协议相结合用来与I n t e r n e t通信,通常写成T C P / I P。
假设一名驾驶员驾驶一辆汽车。引擎( I P )提供汽车在道路上行驶的力量,但是驾驶员( T C P )使用汽车的控制系统(油门、刹车和方向盘)从A点连接到B点,并与网络道路(网络电缆)、红绿灯和道路信号(路由器)交互。没有引擎,驾驶员无法行动,没有驾驶员,引擎也就毫无意义。因此,这就是T C P和I P之间的关系。
2. Windows Socket
Windows Socket是M i c r o s o f t实现的、受到广泛认可的网络系统,它最初是为与U n i x连接而开发的。在大多数情况下, Windows Sockets与U n i x兼容,而且是Microsoft Wi n d o w s网络与U n i x网络之间通信的一种形式。Windows Socket位于几种协议的上层,就像T C P位于I P的上层一样。Windows Socket可以使用T C P / I P协议,也可以使用其它几种协议中的一种,包括I P X / S P X和A p p l e Ta l k。
3. NetBEUIN e t B E U I通常是一种不可路由的协议。N e t B E U I是I B M于1 9 8 5年开发的,后来与其它几种平台(包括Microsoft Wi n d o w s )交换了使用专利。Windows 2000支持N e t B E U I的目的是为其它系统和计算机,例如LAN Manager,提供向后兼容。如果Windows 2000系统运行在令牌环网上,而且令牌环网的路由功能启动以便用于广域网,那么N e t B E U I是可路由。
4. 有名管道
有名管道(Named Pi p e )位于几种协议,包括S o c k e t、N e t B E U I、T C P / I P和I P X / S P X的上层。管道是内存中预留用来处理信息的区域,通常以自动处理的方式进行。创建管道的进程称为管道服务器(pipe server)。访问已创建管道的进程称为管道客户(pipe client)。有名管道是具有唯一名称的管道。根据用来创建管道的一种或多种协议,管道的名称可以由多个元素(与协议相关)组成。
TCP/IP路由
T C P / I P是一种用来将信息从一台计算机传递到另一台计算机的协议。它通过数据包( p a c k e t )来实现信息传递,数据包是包含实际要传输的信息和路由信息的数据组。路由信息用来指导包从源计算机传递到目标计算机。数据包要到达目标计算机,下面的事件肯定会按照如下顺序发生:
1) 客户是通过D N S或W I N S服务器将主机名解析为I P地址来建立与某台计算机之间的连接的。
2) DNS或W I N S服务器查询多个信息源,将文本形式的主机名转换成二进制的I P地址。
3) DNS或W I N S服务器将二进制I P地址发送回客户计算机,该地址通常是Wi n s o c k函数调用中的一个值。
4) 客户计算机使用第3步获得的I P地址并根据网络拓扑结构的不同,将数据包发送给网络上的下一台计算机,或者其网关或另一台对等的机器。
5) 网络上的下一台计算机确定数据包的I P地址是否是它自己的。如果是,它就保留数据包并发出确认回答。否则,数据包被发送到下一台计算机,直到到达目的地为止。上述的事件顺序称为路由。当I P地址被转换成数值地址后,就可以路由了。路由可以使用网关计算机或专门的路由器,以及一组路由表来实现。
DHCP
D H C P代表动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)。D H C P允许临时连接在网络上的计算机共享专用的I P地址。当网络拓扑结构重组时,它还可以通过减少手工重新设置固定I P地址的工作量来帮助网络管理员。D H C P的功能类似一种特殊的D N S (参见前一节),它只能应用于非常有限的领域(通常是小型局域网或I n t r a n e t );D H C P服务器像D N S服务器一样接受主机名,并在其内部的数据库中查找,然后返回二进制的I P地址。D H C P的有用之处在于:它对重新排列主机名和二进制地址之间的映射进行了优化,而标准的D N S和W I N S则没有。许多其它的网络话题也需要你清楚地了解怎样使用注册表来调整Windows 2000计算机。在试图按照直接解决方案中介绍的方法调整计算机之前,你应该彻底掌握Windows NT/2000
的网络基础知识。关于Windows NT网络基础知识的书籍很多,其中有些书籍可能会证明你按照直接解决方案中的方法进行实践是有用的。
强迫对TCP/IP路由数据包进行SNAP编码
S N A P编码是一种减少在以太网上传输的数据包尺寸的方法。要确保T C P / I P网络使用这种功能,可按照下面的步骤修改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ Tcpip\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值A r p U s e E t h e r S N A P的条目。使用D Wo r d编辑器将值改为1,强迫使用S N A P编码。提示如果值A r p U s e E t h e r S N A P不存在,那么可以使用“编辑” |“添加值”菜单项添加它。
设置TCP/IP数据库文件的路径
T C P / I P系统需要一组特殊的文件辅助跟踪系统的各个部分(基于为S o c k e t开发的U n i x文本文件系统)。文本文件的位置保存在注册表的P a r a m e t e r s子项中。你可以按照下面的步骤访问P a r a m e t e r s子项:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ Tcpip\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D a t a b a s e P a t h的条目。设置其R E G _ S Z类型的字符串值为保存着主机、远程主机、网络和协议文件的目录路径名。
为TCP/IP服务器设置DHCP服务器地址
D H C P允许动态地给T C P / I P网络上的节点分配I P地址池中的I P地址。不过,有时候需要修改注册表中的值,以便让T C P / I P路由系统使用指定的D H C P服务器。你可以按照下面的步骤实现这一点:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ Tcpip\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D h c p N a m e S e r v e r的条目。设置其R E G _ S Z类型的字符串值为想要在网络中负责路由选择的D H C P服务器的I P地址。
启用TCP/IP服务器的失效网关检测功能
如果你的网络有多个网关,那么使用Windows 2000的功能,你可以迅速地从一台失效的网关自动切换到另一个网关。要做到这一点,需首先在控制面板小程序对话框中输入所有可用网关,接着按照下面的步骤修改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows 2000
的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ Tcpip\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值E n a b l e D e a d G W D e t e c t的条目。使用D W O R D编辑器把E n a b l e D e a d G W D e t e c t的值改为1,启用失效网关检测;设置E n a b l e D e a d G W D e t e c t的值为0,禁止检测。启用失效网关检测将导致在几次传输失败后循环搜索所有列出的网关,直到找到一个接受数据包的网关为止。
增加缓冲区内存以便提高TCP/IP路由性能
T C P / I P路由系统必须分配内存来保存所有由它存储的数据包。这个值设置得过高将会浪费内存,设置得过低则会降低性能。当你使用系统管理员提供的“魔法”找到最佳的取值后,就可以按照如下步骤修改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows 2000
的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ Tcpip\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值F o r w a r d B u ff e r M e m o r y的条目。使用D Wo r d编辑器将其值更改为1 4 8 0的倍数,且应能四舍五入成可被2 5 6整除的数。1 4 8 0的倍数是缓冲区可同时容纳的5 0个数据包块的个数。
检查TCP/IP服务器缺省的DHCP网关地址
D H C P试图将所有的数据包发送到已知的I P地址。在某些情况下, D H C P可能无法识别某个I P地址,因此需要将地址转发给另一个网关,尝试另一条路由。你可以使用下面的步骤访问保存着所有网关服务器( D H C P服务器将给它们发送无法识别的数据包)主机名的注册表条目:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Windows 2000
的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\ [A D A P T E R N A M E]\ P a r a m e t e r s \ Tc p i p子项,其中[A D A P T E R N A M E]是本节点连接D H C P的网卡。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D h c p D e f a u l t G a t e w a y条目。D h c p D e f a u l t G a t e w a y包含所有在D H C P服务器无法找到客户机时数据包路由所用网关的多个字符串。如果子网丢失了数据包,那么很有可能是因为这个条目被删除了。
警告不要在注册表编辑器中修改D h c p D e f a u l t G a t e w a y的值!你必须使用D H C P客户的配置工具来更改该信息。
检测TCP/IP客户的DHCP租用续订的值
D H C P使用租用系统来分配其I P地址池中的地址。一个活动的节点必须在使用I P地址一段时间后续租,否则,该节点必须重新申请租用并重设所有内部值(除非服务器处于离线状态,否则会对性能造成巨大的损害)。要防止在节点活动时丢失其I P地址,按照下面的步骤检查注册表中该节点的续租超时条目:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\ [A D A P T E R N A M E]\ P a r a m e t e r s \ Tc p i p子项,其中[A D A P T E R N A M E]是本节点连接D H C P的网卡。单击该子项选取它,在右窗口中显示其值。
4) 定位到值T 1的条目。T 1的值表示初次分配I P地址之后,经过多少毫秒系统试图向
D H C P服务器续租其I P地址。警告不要在注册表中更改T 1的值!你必须使用D H C P客户的配置工具来更改该信息。
设置作为DHCP的TCP/IP服务器的API协议
D H C P支持三种协议:T C P / I P、有名管道和本地过程调用(Local Procedure Call,LPC)。如果你向网络添加了一个使用不同路由协议的客户,但是该客户仍然需要使用已有的D H C P服务器,那么必须按照下面的步骤编辑注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ D h c p S e r v e r \P a r a m e t e r s子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值A P I P r o t o c o l S u p p o r t的条目。根据需要支持的协议,使用D Wo r d编辑器把A P I P r o t o c o l S u p p o r t的值更改为表5 - 1中的值。
表5-1 设置D H C P服务器的A P I协议时使用的值
值可识别的A P I协议
1 T C P / I P
2 有名管道
4 L P C
5 T C P / I P和L P C
7 T C P / I P、L P C和有名管道
设置TCP/IP服务器备份DHCP数据的路径
D H C P系统可以记录所有检测到的动态网络配置的变化。接着,这些变化会在D H C P更新其主控信息之前写入备份数据库,以防服务器崩溃。要更改数据库文件的位置可按照下面的步骤进行:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便
于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ D h c p S e r v e r \P a r a m e t e r s子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值B a c k u p D a t a b a s e P a t h的条目。使用字符串编辑器将B a c k u p D a t a b a s e P a t h的值改为新的目录。
启用TCP/IP服务器的DHCP日志功能以便崩溃恢复
D H C P系统可以将检测到的有关动态网络配置的变化记录到日志文件中。如果服务器在创建备份数据库之前崩溃了,则可以使用这个日志文件。缺省情况下,这种特性在是打开的,但是它会对性能造成影响。如果你需要关闭该特性,可像下面这样修改注册表:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ S e r v i c e s \ D h c p S e r v e r \P a r a m e t e r s子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D a t a b a s e L o g g i n g F l a g的条目。使用D Wo r d编辑器将这个值改为0禁止记录日志文件,改为1允许记录。
设置TCP/IP服务器NetBEUI的NameServerPort值
Microsoft WINS 监听端口0 x 8 9,这是N e t B E U I使用的缺省设置。如果你使用的是非Microsoft WINS服务器,那么可能需要修改注册表来更改这个值:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\Netbt\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值N a m e S e r v e r P o r t的条目。使用D Wo r d编辑器将这个值改为提供定制W I N S实现的端口号。
为TCP/IP服务器设置NetBEUI的节点类型
N e t B E U I可以使用几种方法来识别其系统中的名称。你可以按照下面的步骤修改注册表,配置所使用的方法:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\Netbt\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值N o d e Ty p e的条目。根据你的网络所使用的名称服务器的类型,用D Wo r d编辑器将这个值改为表5 - 2中所示的值之一。
表5-2 设置用于TCP/IP NetBEUI名称识别的名称服务器类型的值
值节点类型识别
1 B - N o d e 广播
2 P - N o d e W I N S点对点
3 M - N o d e 广播,然后W I N S
4 H - N o d e W I N S,然后广播
5.2.13 设置NetBEUI会话的Keep-Alive值
N e t B E U I会话所使用的K e e p - A l i v e值可以确定一个指定的节点是否已停止工作。你可以减
少检测关键任务网络的时间间隔,甚至完全禁止检测。要通过注册表更改K e e p - A l i v e值,可以按照下面的步骤进行:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\Netbt\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值S e s s i o n K e e p A l i v e的条目。使用D Wo r d编辑器将这个值设为两次K e e p - A l i v e之间的时间,以毫秒计。将该值设为十六进制值0 x F F F F F F F F可以禁止所有的K e e p - A l i v e检测。
缺省值为3 600 000(1小时)。
在使用NetBEUI 的TCP/IP服务器上更改WINS名称服务器试图解析地址的超时时间
N e t B I O S / N e t B E U I可以使用W I N S名称服务器,但是它可能会在一个负载很重的网络上遇到请求超时问题。如下所示修改注册表可以克服这个问题:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\Netbt\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值Wi n s D o w n Ti m e o u t的条目。使用D Wo r d编辑器将Wi n s D o w n Ti m e o u t的值改为大于15 000(15秒),以防止不恰当的超时时间。
更改TCP/IP服务器IP地址名称服务器解析地址的顺序
四个注册表条目控制着四类主要的名称服务服务器(name service server)试图从名称字符串中获取I P地址的顺序。下面介绍怎样设置注册表以便确定I P地址名称服务器识别地址的顺序:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services\Netbt\ Parameters子项。单击该子项选取它,在右窗口中显示其值。
4) 要更改本地名称服务器(local name server)的优先级,设置D Wo r d类型的L o c a l P r i o r i t y值为一个新值。设置它为一个较小的值可以使本地名称服务器在识别地址时具有较高的优先级;设置它为一个较大的值将降低本地名称服务器的优先级。
5) 要更改主机名称服务器(hosts name server)的优先级,设置D Wo r d类型的H o s t s P r i o r i t y值为一个新值。设置它为一个较小的值可以使主机名称服务器在识别地址时具有较高的优先级;设置它为一个较大的值将降低主机名称服务器的优先级。
6) 要更改D N S名称服务器(DNS name server)的优先级,设置D Wo r d类型的D n s P r i o r i t y值为一个新值。设置它为一个较小的值可以使D N S名称服务器在识别地址时具有较高的优先级;设置它为一个较大的值将降低D N S名称服务器的优先级。
7) 要更改N e t B T名称服务器(NetBT name server) 的优先级,设置D Wo r d类型的
N e t b t P r i o r i t y值为一个新值。设置它为一个较小的值可以使N e t B T名称服务器在识别地址时具60使用Windows 2000注册表管理有较高的优先级;设置它为一个较大的值将降低N e t B T名称服务器的优先级。
警告不要将这个用于远程网络的N e t B T名称服务器条目设置为一个小于1 0 0 0的数
值,否则网络将会被名称服务器的请求阻塞。
更改TCP/IP服务器被排除的名称服务器提供者
大部分T C P / I P网络不会使用所有的名称服务器来满足其名称识别的需求。如果网络中出现了一种新型的名称服务器,一种老式服务器从系统中被删除,那么你需要按照下面的步骤
修改注册表来反映这种变化:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services Provider\Order子
项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值E x c l u d e P r o v i d e r s的条目。使用多重字符串编辑器输入并(或)删除表5 - 3中的条目(只使用数字,不要使用名称)。数字之间应用空格分隔。
警告记住,值E x c l u d e d P r o v i d e r中的条目被从名称服务器识别活动中排除了。
表5 - 3 用来排除TCP/IP Socket中名称服务器类型的服务号
服务号服务服务号服务
1 N S _ S A P 2 0 N S _ N B P
2 N S _ N D S 3 0 N S _ M S
1 0 N S _ T C P I P _ L O C A L 3 1 N S _ S T D A
11 N S _ T C P I P _ H O S T S 3 2 N S _ C A R I O
1 2 N S _ D N S 4 0 N S _ X 5 0 0
1 3 N S _ N E T B T 4 1 N S _ N I S
1 4 N S _ W I N S
更改TCP/IP服务器流量控制活动中Socket数据的阈值
S o c k e t系统使用两个值来允许直接数据流而不会影响流控制算法。你可以像下面这样更改
这些值,以便满足唯一的局域网条件:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口
中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便
于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services Provider\Order子
项。单击该子项选取它,在右窗口中显示其值。
4) 定位到值D e f a u l t R e c e i v e Wi n d o w和D e f a u l t S e n d Wi n d o w的条目。使用D Wo r d编辑器将这
两个值改为都大于8 1 9 2可以允许更多的数据流控制;若小于8 1 9 2则允许较少的数据流控制,
因为本地线路的噪音。
更改TCP/IP服务器Socket缓冲区分配以提高性能
Windows Socket分配用于内部使用的内存缓冲区。你可以按照下面的步骤更改注册表,
增加所分配的内存量并提高Wi n s o c k的性能:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口
中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便
于使用。
3) 使用左窗口的树型控件定位到SYSTEM\CurrentControlSet\Services Provider\Order子
项。单击该子项选取它,在右窗口中显示其值。
4) 根据机器的内存容量,你会定位到值I n i t i a l S m a l l B u ff e r C o u n t、I n i t i a l M e d i u m B u ff e r
C o u n t和I n i t i a l L a rg e B u ff e r C o u n t的条目。使用D Wo r d编辑器将大缓冲区的值改为0到1 0,将中
缓冲区的值改为0到3 0,将小缓冲区的值改为0到5 0。
提示小内存机器的内存容量小于2 0 M B。中内存机器的内存容量为2 0 M B到1 2 5 M B。
大内存机器的内存容量为1 2 5 M B以上。
设置TCP/IP服务器WINS所使用的线程数目
W I N S服务会产生大量的工作线程以便帮助其完成任务。设置最大的线程数目是一门在很
大程度上取决于本地条件和资源的“艺术”。线程的最大数目只能通过修改注册表来设置:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口
中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便
于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ Wi n s \ P a r a m e t e r s子项。单击
该子项选取它,在右窗口中显示其值。
4) 定位到值N o O f Wr k T h d s的条目。使用D Wo r d编辑器将值改为0到4 0之间的数值。
注意N o O f Wr k T h d s的缺省值是服务器计算机上的处理器数目。
更改TCP/IP服务器WINS的进程优先级
W I N S也是一个与其它进程一样的进程。更改其进程优先级有时候会对网络性能有帮助。
下面介绍怎样更改W I N S缺省的进程优先级:
1) 打开“开始”菜单并选择“运行”。单击“浏览”按钮开始浏览直到找到Wi n d o w s
2 0 0 0的根目录(通常是W I N N T )为止。进入S y s t e m目录并找到R e g e d t 3 2 . e x e,将其选入对话框
并单击“确定”按钮。注册表编辑器启动,将所有的配置单元分别显示在不同的层叠子窗口
中。
2) 选择“窗口”菜单项H K E Y _ L O C A L _ M A C H I N E,其子窗口显示。最大化该窗口以便
于使用。
3) 使用左窗口的树型控件定位到S Y S T E M \ C u r r e n t C o n t r o l S e t \ Wi n s \ P a r a m e t e r s子项。单击
该子项选取它,在右窗口中显示其值。
4) 定位到值P r i o r i t y C l a s s H i g h的条目。使用D Wo r d编辑器将值改为1,确保W I N S进程不会
被其它不重要的进程(例如电子邮件例程)抢占。