总的来说,无盘工作站是由网卡的启动芯片(Boot ROM,有此网卡的启动程序已嵌入主板的BIOS中,无需启动芯片)以不同的形式向服务器发出启动请求号,服务器收到后,根据不同的机制,向工作站发送启动数据,工作站下载完启动数据后,系统控制权由Boot ROM转到内存中的某些特定区域,并引导操作系统。根据不同的启动机制,目前比较常用无盘工作站可分为RPL、PXE和 虚拟硬盘等启动类型,而Windows 2000终端从其原理来说,并不属于无盘工作站,它也可以用终端卡或硬盘引导系统,进入工作站操作系统后,再连接Windows2000 服务器,而这个连接程序与一般的应用软件并没有什么本质区别,我们把它归结到无盘网络的原因是:目前大多数的终端都是先通过RPL或PXE启动无盘到DOS或Windows3x,再从无盘站中连接,成为终端,总之本文所指无盘网络,泛指工作站中没有软驱和硬盘的网络,无论它是采取何种方式达到这一目的的,目前台湾顺昱公司研发的基于Electronic Disk Communication电子硬盘(eDisk)系统,我们将它称为伪无盘系统,但因它也具备无盘网络的特点,所以也可以把它归结到无盘网络中来。
近年来,无盘技术发展十分迅速,产生了大量的分支,因此根据角度的不同,主要有以下几种分类方式:
1. 按启动类型主要有:RPL、PXE和Bootp。
2. 按工作站的操作系统:DOS无盘系统、Windows 32无盘系统、Windows 95无盘系统、Windows 98无盘系统、纯Windows 2000及 XP 无盘系统、Windows 2000终端及Windows XP远程桌面。
3. 按服务器操作系统:基于Windows 2000的无盘系统、基于Windows NT 4.0的无盘系统、基于Windows XP下的无盘系统、基于Novell NetWare的无盘系统及基于Linux的无盘系统,甚至还有基于Windows 98的无盘系统,也就是说用Windows 98作服务器。
4. 根据系统是否具有移植能力可以分为:PNP(即插即用)系统非PNP系统。
5. 根据所使用工具的不同进行分类: 使用Intel PDK+Litenet的无盘系统、使用国产相关第三方工具的无盘系统、使用Boot-NIC+3COM PXE的无盘系统。
6. 按虚拟磁盘分类:3Com VLD、Boot-NIC、BXP和Edisk等。
以上分类是可以组合有的,例如:基于Windows 2000 Server+3Com Dabs+Litenet15的PXE无盘Windows 98系统,请注意它们间的组合并不是任意的,例如基于Windows NT的RPL 纯无盘Windows 2000就是不存在的。
1. RPL启动工作原理
RPL为Remote Initial Program Load的缩写,启动过程分析如下:
客户机开机后,初始化网卡,网卡BootROM上固化的软件向网络广播一个FIND帧,即引导请求帧,该帧中包含有客户机的网卡ID号。
服务器端的远程启动服务接收到客户机广播的FIND 帧后,根据帧中所带的网卡ID号在远程启动数据库中查找相应的工作站记录,如果不存在这样一个记录,引导过程不能继续;如果此工作站记录已经存在,远程启动服务则发送一个FOUND 帧给客户机的RPLROM,FOUND帧中已包含了服务器的网卡ID。
当网络上有数台服务器在运行远程启动服务时,RPLROM有可能会接收到多个FOUND帧,但RPLROM只对它收到的第一个FOUND帧有反应,它将根据第一个FOUND帧中所带的服务器网卡ID号,返回一个SEND.FILE.REQUEST帧给对应的服务器。SEND.FILE.REQUEST帧是一个要求服务器发送文件的请求。
服务器端的远程启动服务在收到SEND.FILE.REQUEST帧后,将根据远程启动数据库中的工作站记录查找对应的启动块(BootBlock)——在实际配置时我们知道,它位于NETBEUI目录,名为DOSBB.CNF和W95BB.CNF——用FILE.DAT.RESPONSE帧将启动块送回客户机端的RPLROM。
RPLROM在收齐所有的FILE.DAT.RESPONSE帧后,将执行点转向启动块的入口,启动工作站。工作站以Windows 95实模式启动后,将创建一个RAM盘,并将Windows 95实模式文件从远程启动服务器拷贝到RAM盘,加载Windows 95实模式网络设备启动并建立一个到SBS服务器的连接。最后,连接到该客户机的计算机目录(Machine Directory)所在的服务器上,并根据计算机目录中的有关设置及数据完成Windows 95启动过程。
2 PXE启动原理
推出了PXE远程无盘引导技术是由Intel推出的,配合Qualystem公司的LiteNet,最初选用台湾DTK公司的E-Terminal,成功地实现了Windows 98的远程启动和运行,并使可靠性和稳定性都大大提高。Windows 98的各种应用软件只需通过简单的几个步骤即可加到无盘工作站上,并可随时升级和扩充,其简便的安装方式和构架,很快得到了业内人士的认可,并广泛流行起来。
PXE是RPL的升级品,它是Preboot Execution Environment的缩写,意思为预置启动环境。它们的不同之处在于RPL是静态路由,而PXE是动态路由。其通信协议采用TCP/IP,与Internet连接高效而可靠,PXE无盘工作站的启动过程分析如下:
¨ 客户端个人电脑开机后, 在 TCP/IP Bootrom 获得控制权之前先做自我测试。
¨ Bootprom 送出 BOOTP/DHCP 要求以取得 IP。
¨ 如果服务器收到个人电脑所送出的要求, 就会送回 BOOTP/DHCP 回应,内容包括:客户端的 IP 地址,预设网关,及开机影像文件。否则, 服务器会忽略这个要求。
¨ Bootprom 由 TFTP 通讯协议从服务器下载开机影像文件。TFTP协议为Trivial File Transfer Protocol缩写,意为:简单文件传输协议,TFTP可以看成一个简化了的FTP,主要的区别是没有用户权限管理的功能,也就是说TFTP不需要认证客户端的权限,这样远程启动的客户机在启动一个完整的操作系统之前就可以通过TFTP下载启动映象文件,而不需要证明自己是合法的用户。
¨ 客户机通过这个开机影像文件开机,这个开机文件可以只是单纯的开机程序也可以是操作系统。
¨ 开机影像文件将包含 kernel loader 及压缩过的 kernel, 此 kernel 将支持NTFS root系统。