发信人: jiaxu2000(
)
整理人: terryh(2002-12-30 15:42:15), 站内信件
|
网络操作系统
1 Novell NetWare
Novell公司自80年代初期开始开发网络软件。其销售的原始软件产品为网络操作系统,即NOS。今天由Novell开发的主要的网络操作系统称为NetWare。80年代初首先提出的是NetWare86,它已经经过了三个主要的版本。第一个版本是由Intel的80386 CUP的发展而出现的。当第一个版本出现后, Novell发布了其产品的下一个版本,为NetWare 386。从名字上听起来好像没有多大的区别,但是,它确实是基于新的体系结构并与前一个版本有根本的区别。然后,Intel以相当快的速度发布了80486 CPU,就在这之前Novell公司几乎马上要推出新的版本。Intel的发布迫使Novell公司停止使用与Intel芯片相一致的编号命名自己的产品;重新命名其产品的下一个版本为NetWare 3。大约在同时, Novell准备发布NetWare 286的升级版并决定称其为NetWare 2,以便与新的命名约定相一致。NetWare 3的进一步的版本为NetWare 3.1,再下一级的版本为NetWare 3.11。NetWare 3.11已经成为世界上最流行的网络操作系统,已经经历了近15年的历史,在此期间只有唯一一个升级版NetWare 3.12。今天,即第一个版本后的15年,不管Microsoft和Novell发展到什么程度,NetWare 3.1x在市场上如此地强大,使得Novell又发布了另一个新版本NetWare 3.2,它是兼容Y2K(2000年)问题的。Novell没有满足于NetWare 3.1x的成功。90年代的初期,公司发布了一个重要的新版本NetWare 4。该新软件又一次基于新的体系结构。NetWare 4是第一个对每个连接到网络的实体建立逻辑对象的网络操作系统,并用目录树存储所有这些对象。Novell命名该目录系统为Novell目录服务(NDS),对于有上千个对象的大型网络来说,用目录系统管理网络更加容易。对于一些客户来说,NetWare 4.x的根本问题在于步子太大,而忽略了改进。处理NDS所增加的复杂性使许多公司怀疑收益是否与付出相等价。这个问题再加上该软件自身的其他几个问题,使得此新系统不能很好地为市场所接受。Novell立即发布了NetWare 4.1版。这是一个更强壮和稳定的网络操作系统,根除了由其父版本遗留的错误。由于它仍然有NDS所增加的复杂性, Novell建立了方法使该转变的工作量最少并易于同NetWare 4.11版结合。
1.1 Internet
由于Internet和Internet应用为大众所接受, Novell增加了几个与网络相关的应用程序到其目录中。起初,作为单独的产品进行销售,但是,为了赢得市场,公司将Internet应用程序与通用的NetWare 4.11 NOS结合起来,并称该产品为Intra-NetWare。1999年发布的NetWare 4.x系列的最新版本称为NetWare 4.2;它的发布有两个重要的原因,其中之一是Y2K问题。另一个原因我们将立即介绍。
1.2 早期阶段回顾
Novell的下一个重要的版本是NetWare 5。与版本3和4相同, NetWare 5是基于新的体系结构。在了解新版本之前,需要了解NOS的前几个版本。80年代初开始,Novell NetWare的体系结构类似于较早的网络系统XNS的结构,该系统是由Xerox公司的帕洛阿尔托研究中心(PARC)开发的。NetWare NOS是server-centric模型的基础。该模型有工作站,即客户机,它们连接到从一个或多个高档计算机中获得服务(即数据库文件、打印、消息和其他应用)的网络中。这些高档计算机称为服务器,提供网络系统的相应服务。在某些方面,此模型更类似于大型机模型。主要的差别是处理能力是通过网络分布到所有单独的工作站上的。早期的NetWare服务器利用自己的独立的操作系统进行运作,它们不需要DOS、Windows或任何其他的操作系统。使用NetWare 2.x以上的版本,操作系统进行编译并且在安装过程中建立一个冷启动加载器。这种系统要求当服务器硬件发生变化时,新的操作系统必须进行编译。使用NetWare 3.x的版本,一切都发生了变化。NetWare 3.x服务器使用某个版本的DOS来启动和初始化计算机,而不是在产生变化时编译新的系统。然后,NetWare服务器核心程序server.exe作为DOS的可执行文件进行加载。该核心程序读取两个配置文件startup.ncf和autoexec.ncf,并根据这些配置来配置NetWare环境。在加载NetWare核心程序后,DOS从内存中删除,保留NetWare网络操作系统的运行。此方法使称为NetWare Loadable Modules的软件模块得到了开发。这些NLM模块可以在需要时添加到核心程序中;它们可以利用加载命令进行添加或利用卸载命令进行删除。这使网络操作系统不用关闭服务器或妨碍网络用户就可以进行更改。此模块方法一直到NetWare 5的所有版本都在使用。
1.3 客户机
由于工作站被认为是NetWare网络上的另一种实体,因此它们必须有自己的操作系统。尽管NetWare也支持Apple Macintosh、UNIX、DOS和Windows NT的工作站软件,但最常用的工作站操作系统还是Windows。工作站需要一个称为客户机软件的软件驱动程序来与网络进行逻辑连接。经过许多年, Novell的客户机软件已经经历了几次重要的体系结构变化。NetWare早期版本使用一个称为NetWare shell的客户机驱动程序。这是一个终止并驻留(terminate and stay resident,TSR)的程序,称为NetX,它在系统启动时加载到PC中。连同NetX一起加载的还有一个驱动程序,该驱动是由NIC厂商提供的,称为多链路接口驱动程序(MLID),以及一个称为IPXODI的IPX/SPX协议堆栈。这些设备的组合允许PC与网络接口连接并提供在工作站和服务器之间通信所需的协议。这组驱动程序由Apple和Novell开发,称为开放式数据链路接口(ODI)。
1.4 Novell与Windows的对等关系
ODI接口和NetX与NetWare 3的所有版本和运行某种DOS版本的PC工作站能很好地进行工作。当Novell发布NetWare 4以及Microsoft发布Windows 3.1时,必须制作一个网络客户机接口,提供在低层次OSI模型部件之间的良好的对等级之间的通信。Novell提供DOS requestor来实现这一接口。这个客户机接口包括与在较低级提供的最初的NetX相同的ODI接口,但用一系列的标记为虚拟可装载模块(VLM)的驱动程序代替next.exe NetWare shell。ODI接口提供与前面的物理、数据链路和网络层相同的功能,同时VLM提供了在高层中Microsoft Windows所需的增强连接性。这使得在NetWare服务器和Microsoft Windows之间具有良好的接口,并且一直保持这种规范直到Windows 95发行版。当Windows 95出现在软件行业中时,Microsoft正在紧张激烈地与Novell竞争网络市场,Microsoft的一个偶然的看法导致网络和相关的产品相当紧密地连接在一起。当Microsoft发布Windows 95时,提供了一个驱动程序使Windows 95工作站与NetWare服务器进行接口。有趣的是,在Novell NetWare利用不包含NDS的NetWare版本很好地与Microsoft Client for NetWare进行工作的同时,Microsoft Client for NetWare不支持支持NDS的NetWare的版本。这意味着有些用户被无情地扔在了一边。
1.5 客户机驱动程序套的扩充
为了利用Novell目录服务提供的特性, Novell开发和发布了一系列针对Windows 95的驱动程序,即有名的NetWare Client32。Client32将许多NetWare服务器特性用于客户机工作站中,并实现在OSI模型的所有7层中所建立的大部分协议。由于Client32,Novell从ODI接口中退出,在今天,仍使用ODI的唯一领域是NetWare Client for DOS和Windows 3.x。今天,NetWare Client32驱动程序接口对于Microsoft Windows 3,3.1,3.11,95,98和NT、Apple Macintosh、IBM OS2、UNIX、Linux和任何DOS版本都是有效的。
1.6 NetWare的适应能力
将大量不同的平台和操作系统进行内部连接的能力是NetWare的一个特性,也是它能如此流行的原因之一。促进NetWare流行的另一方面是它可以很容易地将网络的有用部件进行组装。很少需要为建立NetWare网络进行网络配置。管理简易性的另一个因素是,在直到NetWare 4.x的所有版本的核心中,都使用了IPX/SPX作为它们的固有协议。请记住我们前面所说的:在IPX/SPX协议中有标识和定位网络系统中单个实体的机制;即,对网络地址进行分配的复杂性比TCP/IP的小。这减少了管理员的工作量。利用IPS/SPX协议,网络管理员只需分配两个编号给网络的每个服务器。第一个编号标识驻留在服务器内的一个虚拟网络,称为IPX内部网络号。该唯一编号标识存在于硬件内部的逻辑服务器。Novell维护一个内部IPX网络号的清单,客户可以用它来存储IPX网络号。这有助于确保世界上的任何两台Novell服务器都没有相同的编号。由于网络中的服务器号与用户编号相比相当地小,则IPX/SPX网络相当易于建立和管理。第二个编号称为网络号,标识服务器中特定的网卡连接处的电缆段。网络号只标识电缆段,而不标识服务器。所有连接到同一电缆段上的服务器都使用相同的网络号。与IBM的NetBEUI协议不同,IPX/SPX协议可同时处理小型和大型网络。因此,IPX/SPX是全路由的、坚固的和可靠的。正如本章前面所介绍的,该协议的一个模型已经被开发,它可以很好地映射到OSI网络模型上。
1.7 所有权的问题
IPX/SPX并非没有缺陷。主要的问题是所有权的问题,长期以来它都被认为是事实上的标准,即不是一个开放的标准。由于这个原因,在Novell之外没有任何中央单元来记录和维护网络号和IPX内部网络号。许多人认为这是问题的一个潜在原因。另一个潜在的问题是缺乏针对IPX/SPX开发的网络管理工具。当你将这些潜在的问题与近几年来TCP/IP的开放式标准受到极大欢迎的现状相联系时,就会明白为什么IPX/SPX已经发展到了终点,为什么TCP/IP不久将成为该领域的领导者。
1.8 重新回到NetWare 5
Novell一直在研究IPX/SPX的潜在的问题,并且在1998年发布了最新版本NetWare 5,对这些问题作出了回答。NetWare 5是将TCP/IP作为固有协议的第一个NetWare版本。这使得该软件做了许多重要的改变,但在体系结构方面的变化则很小。与它的前任版本相同,NetWare 5是一个基于模块的系统并包括Novell目录服务。它用DOS进行系统的初始启动,并拥有两个配置文件startup.ncf和autoexec.ncf。由于NetWare 5支持TCP/IP,网络配置和管理工作量增加。为使这个转变的工作量尽可能地小,Novell开发了大量的工具来管理TCP/IP,尤其是通过目录的使用。这一步需要在该目录树设计中的结构变化,因此Novell进行了这些修改。今天,Novell目录服务可以支持超大型目录树,在一棵单独的树上最多可达十亿个对象。这真是一个壮举。NetWare 5 的另一个新的特性是包含了Java和Java虚拟机(Java Virtual Machine, JVM)。JVM是一台假想计算机,通过在一台真正的机器上用软件模拟它来实现。由于NetWare 5将JVM作为NetWare核心的一个部分,Java程序和Java应用可以快速地在NetWare 5中执行。这使得只占用很少的服务器资源的服务器的图形用户接口(GUI)得到开发。在写这本书时,称为Console One的特定的GUI正处在概念阶段的检查中,其目标是能够从网络任何位置的浏览器中访问到它并使用它来配置服务器。尽管NetWare 5基于TCP/IP,但它并不放弃对IPX/SPX协议的支持。它采用了类似于前一个NetWare的IPX/SPX版本支持TCP/IP的方法,即通过封装或隧道的方法。由于NetWare 5同时支持TCP/IP和IPX/SPX,因此从NetWare的前一个版本转过来也不是什么困难事情。有些公司不愿意放弃像IPX这样的经过考验的协议。笔者曾经提到过Novell发布过一个新的NetWare版本4.2。还曾经提到过发布此版本的两个原因,其中之一是Y2K问题,另一个原因是有些公司想用最新的功能,但又不想放弃IPX;这些公司可以保留NetWare 4.x并作为固有协议运行IPX。NetWare 5自初始版本以来已经被市场很好地接受。它提供了可靠性、健壮性和通用性,是NetWare最好的版本。
2 IBM和OS2
80年代这十年中, PC产业以惊人的速度发展。许多公司和团体应运而生并茁壮成长,或者快速消亡。80年代末,有三家公司被认为占PC产业的优势。这三个巨人在同一个生产线上通力合作,他们是IBM、Intel和Microsoft,他们共有的产品是IBM PC。Windows开发前的情况值得研究,Microsoft公司在IBM-PC上开发了操作系统,即IBM PC DOS。IBM PC在市场上收到如此好的效果,使得PC的兼容产品在全世界范围内泛滥,Microsoft发布了PC DOS的通用版,称为MS DOS。这两个操作系统非常相像,主要是因为它们都是一个家族的。当Intel公布80386 CPU时,IBM做出一个竞争性的决策,即停止进一步发展PC并引入称为微通道技术的新的体系结构。微通道结构的主要操作系统称为OS2。某些内部人员的暗示说明OS2的开发开始于Microsoft,但最终的产品是由IBM的软件工程师提交的。OS2过去是,现在仍然是多任务(意思是它可以一次运行多个应用程序)、多用户(意思是它可以一次支持多个用户),同时也支持网络功能的操作系统。IBM的工程师在PC出现之前一直在开发网络软件。当IBM开始生产个人机时,很自然它的软件产品允许机器之间的网络操作。由这种发展而来的一个产品是支持Intel CPU上网络通信的协议。该协议称为网络基本输入输出系统,简称NetBIOS。为了提供更多的网络功能,IBM增强了它的NetBIOS协议,并称其为NetBIOS扩展用户接口,或简称NetBEUI。我们将详细介绍NetBEUI,但现在让我们先了解一下此时的Microsoft正在做什么。
3 Microsoft和Windows
大约在1984年,即在Intel公司公布80286 CPU之后,Microsoft提出了Windows操作系统的图形用户界面。它对Apple Macintosh GUI做了些模仿,该产品称为Windows 286,它没有被人们很好地接受。由于Intel 80386 CPU的提出,Microsoft的软件工程师有了能提供合理功能的硬件芯片,便立即提出了Windows 3 GUI操作系统。该版本的市场收效略好一些,但当发布下一个版本Windows 3.1时,它立即被市场所认可,终于获得成功。由于Microsoft Windows 3.1 GUI被认为是多任务但不是多用户的,Microsoft又提出了Windows 3.11来解决此问题,或称为Windows for Workgroup。Windows 3.11能支持网络功能,有趣的是Microsoft的软件工程师不开发自己的网络操作协议,相反,由于他们与IBM的密切联系,采用了IBM的网络协议NetBEUI。与Novell NetWare一样,Microsoft合作开发了一个网络连接接口驱动程序。在Microsoft方面,该接口称为网络驱动器接口标准(NDIS)。由于3Com和Microsoft之间合作开发的努力,今天的NDIS仍然保留了使用网络接口卡的Microsoft Windows接口版本的主要的驱动器设置。NDIS接口包含两个部分。第一部分是介质访问控制(MAC)层驱动程序,它使软件与NIC接口。第二部分是协议堆栈,它与高层软件进行接口。该组合有效地保护高层软件免受网络硬件的伤害,并防止软件开发人员涉及网络连接方面的程序设计。IBM的软件工程师预想NetBEUI应是一个小型的高速网络协议,因此一个工作组中可以有2~200台计算机。由于没打算将它用在大型的网络中,因此该协议没有关于不同子网之间的路由选择的考虑。这使得它的产品只能很好地运行在小型网络中。Microsoft在Windows 3.11中将该协议作为一个对等网络系统实现,在该系统中,用户将本地机器的资源与相同网络的其他资源一起共享。在Microsoft发布Windows 95以及后来的Windows 98时,他们选择保留NetBEUI协议作为网络固有协议。但是,NetBEUI不具备在大型全局网络上运行的能力,如在Internet上。因此,Microsoft的软件工程师不久便开发了一个针对Windows的TCP/IP协议组。正如已经讨论的,这个协议组在Windows 3.11升级版中被引入,现在称为Winsock。Winsock已经经历了几个版本,并且是行业的事实上的标准。今天,几乎所有常用的应用层协议都对Windows xx有效。因此,Winsock,即TCP/IP,是利用Microsoft Windows产品建立大型网络的首选协议。
3.1 Microsoft Windows NT
尽管Microsoft Windows xx提供了一些网络能力,但很明显,这些能力从速度和功能性上都不能被主要的公司所承认。Microsoft提出了称为LAN Manager的网络操作系统,但在市场上没有获得成功。为了改善他们的竞争地位, Microsoft又提出一个新的Windows GUI系统的版本,称为Windows NT。与Windows 3.1到Windows 98不同,Windows NT是全32位的操作系统。NT不支持基于Intel平台开发的所有以前的软件。这就是说,能够在Windows NT上成功运行的程序一定是在Windows 9x或Windows NT环境下设计的。这个效果是很明显的。由于Windows NT是32位的系统,因此它不必进行16~32位的转换,反之亦然。它在速度上超过Windows 9x,而速度就等于性能。Windows NT使用新的文件存储结构,极大地改善了磁盘访问时间,又增加了性能。Windows NT的多任务/多用户的能力比Windows 9x的某些版本明显增强,它允许大量用户的更多的会话操作,因此又增加了性能。它还有多其他的好处,正如你所看到的, Windows NT是作为Microsoft针对大型企业开发的网络软件产品被提出的。Windows NT网络系统用户界面类似于Windows 9x,当然结构是完全不同的。Windows NT有两个版本:NT Server和NT Workstation,两个版本都支持工作组规模的网络。只有当网络需求不断增长超过工作组时,即除简单的文件和打印机共享之外的服务需求,NT Server产品才是名副其实的。Microsoft确实促进了以服务器为中心的网络哲学,但是,服务器可作为工作站来运行应用程序。Microsoft认为这是一个特点,并宣扬直接在服务器上运行应用程序的这种能力,而不是通过网络装载到Microsoft NT的工作站上运行。与此同时也存在一些问题。当某人启动了一个3D应用使服务器的使用达到98%时,许多NT网的用户趋于停止状态。
3.2 NT域
在Microsoft NT的网络设计中,具有相同任务的用户组可以放在称为域(domain)的逻辑组织中。每个域可能有一个或多个NT服务器且用户可以在该域中访问每个服务器上的服务。域中的每个服务器都作为主域控制器(PDC)或作为备份域控制器(BDC)进行配置。如果一个域只有一个服务器,则该服务器是PDC。如果域中有一个以上的NT服务器,则只有一个是PDC。PDC存储域中所有用户的信息,允许用户登录到域中并访问在该域中所有服务器的资源,而不用以单独的操作登录到每个服务器上。Microsoft NT允许在相同的域中建立多个BDC。这些是在PDC无效的情况下可以代替PDC的NT服务器。如果服务器安装在带有另一个服务器的域中,并且没有作为PDC或BDC进行配置,则认为是一个单服务器。
3.3 固有的传输协议
对于Microsoft Windows NT,固有的传输协议是NetBEUI。但是,由于NetBEUI的限制,Microsoft Windows NT首选的协议是TCP/IP。当Microsoft Windows NT与TCP/IP协议组相结合时,可以产生超大的、复杂的企业网络系统。这出现了成本问题,由于Windows NT网络的域设计结构,即使用PDC和BDC,则NT网络系统的管理可能变得复杂起来。加上管理TCP/IP网络系统的复杂性,你可以看到管理Microsoft Windows NT不是一件轻松的事情。注意Microsoft打算用Windows 2000中的Active Directory来修正以上的问题。
4 Novell NetWare和Microsoft Windows NT
Microsoft Windows NT已经很好地被人们所接受并与Novell NetWare平等地共享网络市场。与许多人认为的相反,Novell NetWare和Microsoft Windows NT可以同时运行在同一个网络系统中。今天的许多人也许还以为大多数的企业正在决定是使用Novell NetWare还是Microsoft Windows NT呢。实际上,在今天,许多公司正在做的是利用Microsoft NT的应用服务器的能力来补充他们的NetWare网络。由于认识到两个不同系统并合的现实,根据开发和实现NDS的经验, Novell开发了NDS for Windows NT并打入市场。通过使用NDS for NT,网络中的实体成为目录树中的对象,然后可由管理员进行管理。这使NT的管理容易多了。今天,各企业正在将Novell NetWare 4.x或NetWare 5.x 与NDS的功能结合进已有的Microsoft Windows NT网络中,因而可同时使用这两种产品,每个产品在其领域中都是最强的。这意味着企业不再仅仅使用一种网络操作系统。今天,各大公司正打算组合这些产品来最好地满足他们的特殊需求,尤其是在我们即将进行介绍的大型企业的广域网(WAN)中。
参考文献:
[1] China-pub.com. 网络操作系统 [J]. 虚拟专用网的创建与实现, 2000,8:236-42.
这篇文章现在来看已经不是时候了,但希望可以通过它对像我这样的netware文盲,扫扫盲吧
NOVELL…………………………
无语………………………………
----
不以物喜,不以己悲。 |
|