【庆余年源码】【影视轮播源码】【dotnet 论坛源码】tftp客户端源码_tftp源码详解

时间:2024-11-23 13:16:58 编辑:max96706驱动源码 来源:mcm mam 源码

1.WinPE上网程序设置
2.每日开源之 tftpserver
3.问个无盘系统的客户问题?

tftp客户端源码_tftp源码详解

WinPE上网程序设置

       网启服务器自动配置程序:

       @echo off

       PUSHD %~dp0

       SET TP=%CD%

       Title HaneWin网启服务端 通用免配程序 for winPE_xp__win7

       rem ==========以下此行为启动引导文件,请自行修改,端源 必须在分区根目录=======

       set bootfile=PXEgrldr.0

       rem ==========================================================

       echo 正在自动搜索启动文件,可能需要一些时间,码t码详请稍等。客户。端源。码t码详庆余年源码

       set BaseDirectory=

       set bootdrver=%~d0

       for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:%bootfile% set bootdrver=%%i:

       if not exist %bootdrver%%bootfile% ECHO 找不到网启文件:%bootfile% pause exit

       set BaseDirectory=%bootdrver%

       rem if exist %bootdrver%%bootfile% set BaseDirectory=%bootdrver%goto copyfile

       rem for /f "usebackq" %%i in (`dir "%bootdrver%%bootfile%" /s/b`) do set BaseDirectory=%%~dpi

       rem if %BaseDirectory%.==. echo 在 %bootdrver%盘上 找不到启动文件:%bootfile% pause

       :copyfile

       copy DHCP*.* %temp% /y nul

       set tp=%temp%

       %TP%dhcp4nt.exe -remove nul

       setlocal

       set/a a=-2

       for /f "usebackq tokens=2 delims=:" %%i in (`ipconfig`) do (

       set b=%%i

       call :getip

       )

       for /f "tokens=1-3,客户4 delims=." %%i in ("%_myip%") do set IP_Pool=%%i.%%j.%%k.

       %TP%DHCPsrv.ini echo.[License]

       %TP%DHCPsrv.ini echo.Key=BBLZUBBCAT9

       %TP%DHCPsrv.ini echo.Name=Free User

       %TP%DHCPsrv.ini echo.[DHCPsrv]

       %TP%DHCPsrv.ini echo.Profile0=本地连接

       %TP%DHCPsrv.ini echo.TFTPDirectory=%BaseDirectory%

       %TP%DHCPsrv.ini echo.Multicast=0

       %TP%DHCPsrv.ini echo.TFTPEnable=1

       %TP%DHCPsrv.ini echo.TFTPPort=

       %TP%DHCPsrv.ini echo.TFTPMode=0

       %TP%DHCPsrv.ini echo.Log=0

       %TP%DHCPsrv.ini echo.TestIP=1

       %TP%DHCPsrv.ini echo.ChangeIP=1

       %TP%DHCPsrv.ini echo.EnableMAC=1

       rem 有多个网卡时,如不能确定那个网卡,端源可以将下面此行去掉

       %TP%DHCPsrv.ini echo.Include=%_myip%

       %TP%DHCPsrv.ini echo.[本地连接]

       %TP%DHCPsrv.ini echo.SubnetMask=%_mask%

       %TP%DHCPsrv.ini echo.BaseIP=%IP_Pool%

       %TP%DHCPsrv.ini echo.Range=

       %TP%DHCPsrv.ini echo.BootFile=%bootfile%

       %TP%DHCPsrv.ini echo.GatewayIP=%_Gateway%大白菜官网

       %TP%DHCPsrv.ini echo.InterfaceIP=%_myip%

       endlocal

       %tp%dhcp4nt.exe -install nul

       start %tp%dhcpsrv.cpl

       if not exist x:*.* goto windows

       PECMD.EXE LINK %%Programs%%网络工具网启服务器HaneWin网启服务端,码t码详%tp%dhcpsrv.cpl,,%tp%dhcp.ico

       PECMD.EXE LINK %%Programs%%网络工具网启服务器开启HaneWin网启服务,%tp%dhcp4nt.exe,-install,shell.dll#

       PECMD.EXE LINK %%Programs%%网络工具网启服务器关闭HaneWin网启服务,%tp%dhcp4nt.exe,-remove,shell.dll#

       PECMD FILE "%%DESKTOP%%开启HaneWin网启服务端.*"

       rem 删除共享名PEroot,建立共享名为PEROOT,共享资源为%BaseDirectory%

       PECMD EXEC CMD /C "net share PEROOT /d"

       PECMD EXEC CMD /C "net share PEROOT=%BaseDirectory% /unlimited"

       rem PECMD FIND EXPLORER.EXE,客户KILL EXPLORER.EXE

       echo.

       echo 已将本机PE系统 [url=file://%Computername%PEROOT]%Computername%PEROOT[/url] 共享给远程客户(主机名:%Computername%,用户名:Guest,端源密码为空)

       :windows

       echo.

       echo.

       echo 远程启动网启服务器.启动成功!可以进行远程网络启动PE!

       echo.

       pause

       EXIT

       :getip

       set /a a=%a%+1

       if %a%==1 set _myip=%b%

       if %a%==2 set _mask=%b%

       if %a%==3 set _Gateway=%b%

       goto :eof

       ===================================================================================

       @ECHO OFF

       Title HaneWin网启服务端_映射远程主机 免配程序 for winPE

       PUSHD %~dp0

       set tp=%cd%

       rem 第一次运行

       pecmd.exe IFEX %%Desktop%%映射远程主机.LNK,!EXEC cmd /c copy "%tp%网启快捷及映射主机.CMD" "%tp%映射远程主机.TMP"

       PECMD.exe LINK %%Desktop%%映射远程主机,%tp%网启快捷及映射主机.CMD,,SHELL.DLL#

       for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:PEToolswin7.ini PECMD.exe file %%Desktop%%映射远程主机.

*

       for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:外置程序winPE.ini PECMD.exe file %%Desktop%%映射远程主机.

*

       pecmd.exe IFEX %%Desktop%%映射远程主机.LNK,!EXEC cmd /c copy "%tp%网启快捷及映射主机.CMD" "%tp%映射远程主机.TMP"

       if exist "%tp%映射远程主机.TMP" goto end

       rem 映射远程主机

       ipconfig /all |find /i "DHCP" |find /i "服务器"%temp%ip.txt

       ipconfig /all |find /i "DHCP" |find /i "Server"%temp%ip.txt

       for /f "usebackq tokens=2 delims=:" %%i in (%temp%ip.txt) do (

       set ip=%%i

       )

       set ip=%ip:~1%

       ECHO.

       ECHO 将远程服务器%ip%的共享名peroot 映射为本地Z:盘,主要是码t码详用于客户端,用户Guest,密码为空)

       ECHO .

       ECHO .

       ECHO 正在连接至远程服务器:%ip%, 请稍等。客户。端源。码t码详。。。

       ECHO.|NET USE z: [url=file://%ip%PEROOT]%ip%PEROOT[/url] /user:guest /persistent:no

       pecmd wait

       if exist z:*.* PECMD.EXE MESS 网络成功连接,并已连接远程服务器为Z:nnn如不能连上InterNet网,请在网络设置中释放-更新络IP,或在服务器上关闭网络启动服端!@提示 #ok

*

       if exist z:PETOOLSWin7.INI PECMD.EXE LINK %%Desktop%%加载远程外置程序1,PECMD.EXE,LOAD z:PETOOLSWin7.INI,Shell.dll#

       if exist z:外置程序winPE.ini PECMD.EXE LINK %%Desktop%%加载远程外置程序2,PECMD.EXE,LOAD z:外置程序winPE.ini,Shell.dll#

       if not exist z:*.* PECMD.EXE MESS 无法连接远程服务器,请检查网络或服务器!!@提示 #ok

*

       :end

       pecmd.exe file "%tp%映射远程主机.TMP"

       pecmd.exe file "%tp%映射远程主机.TMP"

       pecmd.exe IFEX %%Desktop%%映射远程主机.LNK,!LINK %%Programs%%网络工具网启服务器HaneWin网启服务端,%tp%HaneWin网启服务端.CMD,,%tp%DHCP.ICO

       exit

       这段源码可以根据自己的需要进行适当修改。

每日开源之 tftpserver

       我探索了高通Q这款用于制作路由器的芯片,它配合的是存储在NandFlash上的OpenWrt系统。Q烧写系统方式较传统,在Uboot命令行模式下,要通过tftp将系统镜像下载至内存,再将镜像写入NandFlash。

       TFTP简单文件传输协议使用UDP实现,提供高效、简洁的文件传输服务,端口号为。为了完成这次烧写任务,我需要在PC上安装tftp-server。

       考虑到tftp-hpa使用复杂、配置繁琐,我放弃了尝试其原因分析的过程。在Github上,我发现了一个名为tftpserver的出色项目。

       tftpserver是一款轻量级的tftp server,用C语言编写,其源代码仅包含一个包含行代码的.c文件,无任何依赖,易于部署。

       使用方式简洁:指定文件存放目录和端口号(通常为)即可启动服务。在Uboot命令行中,用户可用tftpboot命令从PC下载文件。

       接下来,我们将快速了解tftpserver的核心实现。其源代码由七个函数构成。影视轮播源码主函数main()负责创建一个socket以监听可能到来的TFTP请求。当接收到请求时,会调用fork()函数创建子进程,由子进程处理请求。

       TFTP基于UDP,tftp_recv_message()函数通过调用recvfrom()进行消息接收。TFTP消息定义关键,必须理解其协议设计。

       具体而言,TFTP客户与TFTP服务器之间进行读请求通讯如下:服务器被动打开号端口等待连接;客户主动发起连接,以临时端口作为源端口,号端口作为目标端口,向服务器发送读请求报文;服务器主动响应,使用新的临时端口作为源端口,用收到的临时端口作为目标端口,向客户发送包含块号和字节数据的DATA报文;客户接收到报文后,回传ACK报文确认接收。

       继续理解TFTP协议,很容易通过Wireshark进行抓包分析。以读请求为例,包含读请求操作码及目标文件名。理解TFTP协议后,tftp_message结构更加直观,用于描述TFTP通讯的数据格式。

       核心处理函数tftp_handle_request()实现协议处理,解析请求确定发送或接收操作,然后读取或发送文件。

       总结而言,tftpserver是一款轻量级、高度可移植的tftp server,对于网络编程和学习TFTP协议设计感兴趣的开发者特别适用。它提供简洁、灵活的使用方式,不依赖额外配置,确实是提高工作效率的实用小工具。

问个无盘系统的问题?

       无盘启动工作原理及其分类

       总的来说,无盘工作站都是由网卡的启动芯片(Boot ROM)以不同的形式向服务器发出启动请求号,服务器收到后,根据不同的机制,向工作站发送启动数据,工作站下载完启动数据后,系统控制权由Boot ROM转到内存中的某些特定区域,并引导操作系统。根据不同的启动机制,目录比较常用无盘工作站可分为RPL和PXE,而目前的Windows 终端从其原理来说,并不属于无盘工作站,它也可以用终端卡或硬盘引导系统,进入工作站操作系统后,再连接Windows 服务器,dotnet 论坛源码而这个连接程序与一般的应用软件并没有什么本质区别,我们把它归结到无盘网络的原因是:目前大多数的终端都是先通过RPL或PXE启动无盘到DOS或Windows3x,再从无盘站中连接,成为终端。

       4.1.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和WBB.CNF——用FILE.DAT.RESPONSE帧将启动块送回客户机端的RPLROM。

       RPLROM在收齐所有的FILE.DAT.RESPONSE帧后,将执行点转向启动块的入口,启动工作站。工作站以Windows 实模式启动后,将创建一个RAM盘,并将Windows 实模式文件从远程启动服务器拷贝到RAM盘,加载Windows 实模式网络设备启动并建立一个到SBS服务器的连接。最后,连接到该客户机的计算机目录(Machine Directory)所在的服务器上,并根据计算机目录中的有关设置及数据完成Windows 启动过程。

       4.1.2 PXE启动原理

       PXE是RPL的升级品,它是Preboot Execution Environment的缩写。它们的不同之处在于RPL是静态路由,而PXE是动态路由。其通信协议采用TCP/IP,与Internet连接高效而可靠,PXE无盘工作站的启动过程分析如下:

       ¨ 客户端个人电脑开机后, 在 TCP/IP Bootrom 获得控制权之前先做自我测试。

       ¨ Bootprom 送出 BOOTP/DHCP 要求以取得 IP。

       ¨ 如果服务器收到个人电脑所送出的要求, 就会送回 BOOTP/DHCP 回应,内容包括

       客户端的 IP 地址, 预设网关, 及开机影像文件。否则, 服务器会忽略这个要求。

       ¨ Bootprom 由 TFTP 通讯协议从服务器下载开机影像文件。

       ¨ 个人电脑通过这个开机影像文件开机, 这个开机文件可以只是单纯的开机程式也可

       以是操作系统。

       ¨ 开机影像文件将包含 kernel loader 及压缩过的 kernel, 此 kernel 将支持NTFS root

       系统。

       ¨ 远程客户端根据下载的源码软件app文件启动机器。

       4.1.3 Windows 终端(WBT)的特点及纯软件终端启动原理

       WBT(Windows Based Termintal)是Windows Server/Advanced Server推出的一项标准服务,它允许用户以Windows界面的客户端访问服务器,运行服务器中的应用程序,使用户就像用自己的计算机一样。在WBT的网络中,所有应用软件的安装、配置、运行和存储等均在服务器上进行,客户机(终端)只作为输入输出设备。当终端用户登录到服务器后,就可以像使用本地资源一样使用服务器上的资源,运行服务器上Windows应用程序。多个终端用户可以同时登录到服务器上,互不影响地工作。这样的网络十分容易进行集中管理,很适合学校和中小企业的局域网构建。WBT的这一特点跟早期的UNIX的字符终端类似,但WBT的优势在于它是基于Windows的,具有友好的图形界面和Windows的易用性。另外,在WBT的网络环境下,网络传输的数据主要是键盘和鼠标的输入信息与显示器的输出信息,数据的处理都在服务器上进行,这就大大减少了网络的传输量。

       此方案中将原本要淘汰的、计算机作为终端使用,有利于资源的再利用;同时,安装软件及运算等都在服务器上进行,一般情况只需维护一台服务器就行,对于软件及防病毒的管理也降低了,所以利用该方案大大降低了总体拥有成本,节省了大量的资金。它有以下一些特点:

       ¨ 运算、存储都在服务器内进行,安装软件只需安装在服务器上一份,所有终端就都可以使用;所有终端用户的文件都各自独立地存放在服务器上,即使掉电,也不会造成资料丢失;

       ¨ 机房维护由维护每一台PC,转变为维护一台服务器,维护成本大大降低;总拥有成本(TCO)大大降低;

       ¨ Windows 服务器版本是最新的服务器操作系统,性能非常稳定,整个系统的稳定性得到可靠保障;

       ¨ Windows 终端的界面是标准的 Windows风格界面,使用最新的Windows 的界面,用户非常熟悉,无需特殊培训;

       ¨ 能满足对因特网的需求;应用当今流行软件时单机反映速度快;使用 Windows终端与使用PC完全相同,所以在 Windows终端上的学习经验,可以应用到PC上;

       ¨ 管理和控制性强:终端服务器能够对终端进行管理,设定终端机运行的软件,同时能对终端机进行随时监控。

       纯软件终端的andluaUI界面源码启动原理:它的启动原理前一部分与RPL或PXE无盘启动原理完全相同,这里就不再详述了,后一部分的连接是基于Windows 多用户、多任务的基础上的终端服务,在工作站上安装由微软提供的位的连接程序,或由第三方的提供的位或位在DOS、Windows 3x或Windows 9x无盘站安装连接程序,并设置好连接属性,然后在启动无盘站时将其连接命令加到DOS站的开机批处理,或加到无盘Windows 的启动组,使其自动连接Windows 服务器。在终端安装Windows CE,服务器端安装Windows 专业版,终端启动以后透过RDP协议运行服务器端的应用程序,服务器端进行应用程序运算后同样透过RDP协议将结果在终端显示。

       4.2 无盘网络的历史及发展

       最早使用的无盘网络,应该是UNIX的字符终端,本书所指无盘网络是广义上的定义,也是就是说只客户机上无软硬盘,我们就称为无盘网络。

       从年至年,绝大多数无盘网络基本构架都是采用Novell Netware 3.或Novell Netware 3.作服务器的操作平台,工作站以IPX方式登录。当时我们称它为IPX无盘网络,主要是用于教学网络,应用程序主要以DOS为主。

       从年至年,以RPL方式登录的无盘网络占绝大多数,服务器端可以选择Novell Netware 4.1或Windows NT 4.0 Server,在此期间,由于微软的大力支持,在它的Windows 产品系列中,推出了网络版的Windows 即所谓的完全版,它包含了网络安装命令Netsetup,之后的几年RPL几乎成为了无盘网络的代名词,年微软推出的Windows ,没过多久,又推出了Windows 第二版,其内核较Windows有较大变化,与Internet联系更加紧密,功能也有所增强,遗憾的是Windows不再提供Netsetup命令,也就是说Windows无法安装在无盘站上,尽管众多的爱好者不断的努力,无盘仍然不能,期间,也有人声称成功安装无盘Windows ,其实,只是改头换面的Windows ,其内核仍然是Windows ,我们把它称之为伪Windows 。

       自年至今的一年多来,由于Inter、3COM和QUALSTEM等大公司的界入,使无盘技术得到了飞速的发展,大量高质量的无盘支持软件不断出现,例如Inter PXE PDK、3COM DABS、3COM虚拟硬盘和QUALSTEM的Litenet。与之相对应的无盘方案也层出不穷,令人目不暇接,无盘站不能运行Windows 已成为过去,新的无盘启动机制反过来被用到了RPL中,使得RPL工作站上也可以运行Windows 了。与此同时,微软公司在其划时代的产品Windows中将终端技术收为标准组件,加上第三方软件Mateframe对终端的支持,使其可以在无盘DOS或无盘Windows3x下连接Windows Server而形成所谓的纯软件Windows 终端。目前在无盘技术方面有三个主流即:RPL无盘Windows、PXE 无盘Windows 系统和纯软件的Windows 终端。可以看出在无盘组网方面用户有了更多的选择,而且无盘技术的应用领域更广,几乎所有有盘站能运行的软件在无盘站都能运行。

       4.3 三种主流无盘网络的对比

       面对各种无盘解决方案读者可能无可适从,本节将对PXE、 RPL、Windows 自带的终端(下面称为标准WBT) 与基于MetaFrame的终端(下面称为Meta WBT)之间的区别作一详细的介绍。我们把标准WBT和Meta WBT合称为终端。

       标准WBT名气最大,是软件巨人微软推出,捆绑在Windows 里面。它也是微软针对嵌入式产品推出的重量级产品,微软希望籍此在嵌入式产品市场中抢得垄断地位。

       标准WBT的优点是对终端的硬件要求不高,只须运行Windows CE以及处理一些简单I/O动作。不须对现有终端作更多改造升级或再投资,通常机器即可满足要求,无须硬盘,在网卡的bootrom中增加Windows CE或PCI槽中插一片带Windows CE的DOS即可,终端的其它方面无须改动,保护现有投资。缺点:对服务器硬件要求高,因为所有的终端运行的应用程序都在服务器上运行,CPU及内存资源消耗相当大。同时,由于Windows CE本身受限的缺陷,即“客户机过瘦”,对各种外设的支持不足,相应的驱动程序较难找到,多媒体方面的性能较弱。大型软件的运行速度较慢。由于微软的惯例,客户端只限于Windows CE设备,服务器须是Windows 服务器,从而大大限制了它的应用场合。

       MetaFrame国内较少见,大家较为陌生,是美国Citrix公司开发,支持位,位Windows PC,Windows终端,网络电脑,Windows CE设备,及范围很广的非Windows终端,web 浏览器等。服务器端是MetaFrame Server,其实质是用Windows Server上装有MetaFrame服务端程序。服务器可以采用多个服务器群集的方式,但须指定一个主服务器(Master metal frame Server)由于客户端程序可以跨平台工作,所以在未来ASP中竞争更强。工作方式也与标准WBT极为相似,客户端须自举启动(不一定选择Windows CE,可以用其它OS,包括DOS、UNIX等),然后可以透过ICA协议在服务器执行应用程序,服务器端也通过ICA传输用户界面,包括运行结果。服务器可以置在远端,然后终端通过ISDN,MODEN拨号,局域网,甚至无线传输等方式,以ICA协议与远端的服务器通信。这与标准WBT相比有着很大的优势,意味着ASP供应商可以透过Intenet提供应用服务。MetaFrame还有一个工具很诱人,管理员可以远程操控客户端界面,控制客户端的键盘,鼠标以及输出界面。MetaFrame 的缺点与标准WBT一样,对服务器硬件资源要求较高。 实质上,MetaFrame与 WBT的核心技术是将用户界面程序与逻辑运行程序剥离,逻辑运行程序在服务器端运行,用户界面程序通过ICA或RDP协议传输到客户端,同时ICA或RDP将用户交互响应的信息(如键盘,鼠标操作等)送回至逻辑运行程序处理。但客户端系统的自举还须靠本地原有的OS如Windows CE等完成,故严格而言,并不算是远程启动技术。

       PXE是真正意义上的远程启动技术。PXE是Intel公司开发,虽然推出时间不短,但真正有价值的应用却是今年内才体现。据网站记载,国内DTK公司,长城电脑都已成功在Intel PXE技术上研发Windows 无盘工作站,并在教育系统中大力推广。 工作站具有一个带有Intel PXE bootrom的网卡或集成到BIOS的英特尔PXE代码。当一个终端启动后,服务器的操作系统(OS)将被加载至其内存中。在远程启动软件外接附件的帮助下,服务器操作系统远程启动服务可以支持学生站运行Windows 和Windows 。当终端启动时,PXE代码将从服务器检索启动和配置软件,这一过程就是远程启动。

       与终端技术不同的是,PXE运行应用程序用到的是本地的资源,及内存,只是相当于硬盘由网络代替了,服务器的负荷也大为减少,配置要求相对较低,这是比WBT先进的一大优点。由于工作站上运行的是真正的Windows ,所以支持的应用软件十分丰富。工作站加上硬盘后就变成一个标准的PC机,可以在其它场合应用,从而保护了客户的投资。可惜的是,PXE现在还不支持拨号,ISDN等方式,因而不能透过Internet实现远程启动,因此作为ASP工具不太合适。但如果应用于电子教室,办公室,酒店,网吧,证券等场合则相当具有竞争力。在速度方面,与终端不相上下,但在多媒体方面,PXE占优势。

       综上所述,三者各具优势,用户可根据自身的需求选择适当的技术和产品。一般而言,若ASP,远程教育选择Metal frame最为合适,局域网场合选用PXE较为合适,而PDA,手持设备等则选Windows CE为佳。

       PXE与RPL在运行应用程序所使用的资源除硬盘外,都是本地的资源,从其运行模式来看两者有很多相似之处,但内核是截然不同的,以下从几个方面进行比较:

       ¨ 发展前景

       PXE:Intel新推出的软件,从理论上来讲应该是很先进的,尽管还存在一些问题,但其优越的一面已经在应用中得到了充分的体现,而且Intel公司还将继续提供这方面的支持,并且公开源码,相信以后会更加改进。

       RPL:Microsoft产品,已经很成熟了,而且许多爱好者都比较熟,技术资料到处都是,但Microsoft已经放弃了此产品开发与支持,不会再有更新的升级产品了。

       ¨ 工作站启动速度

       从少量机器来看,PXE与RPL似乎没有太多的区别,但如果机器数量较多,PXE会快一些,其原因主要是RPL采用NETBEUI通信协议,若传送过程中有错误帧,RPL会要求整个数据包重发,而PXE采用基于TCP/IP的MTFTP(多点传送)的通信协议,若在传送过程中有错误帧,PXE并不是将整个数据包重发,只是将某一出错线程的数据重发,这样使整个网络的启动的速度加快。在工作站较多的情况下,出错的概率较高,因此在这种情况下启动速度的差别较大。

       ¨ 安装方面

       PXE安装是基于本地上传的,也就是说,只要在一个工作站上安装好一台有盘工作站,然后通过上传软件,将整个硬盘上传服务器的一个共享目录下,安装步骤比较少,整个过程也很简单,安装成功率很高。传统方式下的RPL Windows 无盘站的安装过程十分繁琐,且很容易出错,安装成功率很低。目前的RPL技术吸取了PXE的本地上传方式,使安装的方法接近PXE的安装,但需掌握RPL和PXE两项技术才能进行安装。当然目前出现的许多RPL的安装工具,给安装无盘RPL Windows 带来方便。

       ¨ 运行速度

       PXE要快一些,特别是在运行一些大的应用软件或上网时更加明显,主要原因是由于PXE的默认协议为TCP/IP。而在低配置无盘网络中,RPL无盘Windows 要快一些。

       ¨ 日后维护方面

       PXE和改良的RPL在日后的维护方面十分方便,软件的维护量极低,所需的维护只是升级应用软件,删除客户机无用文件。若一段时间不用应用程序,且硬盘作好磁盘配额,那么在这段时间内可以作到软件零维护,对机房管理人员来说可以说是一个解放。传统的RPL网络的维护量极大,客户机可以轻意的破坏系统,虽然可以通过各种手段加以限制,但无法从根本上解决,而且由于各种限制的存在使Windows 界面面目全非。

       ¨ 硬件兼容性

       PXE软件可以大多数的网卡和主板,但PXE的启动芯片支持的网卡并不多,对主板的BIOS要求为AWORD的,其它的BIOS版本则有不兼容的现象,这是目前制约PXE发展的重要因素。RPL的硬件兼容性则很好几乎所有的网卡和主板都能支持。

       三种主流无盘网络系统(四种方案)对比如表4.1所示。

       表4.1 四种无盘启动技术的比较表

       PXE

       RPL

       标准WBT

       Mate WBT

       服务器操

       作平台

       Windows NT 4.0 Server

       Windows Server

       Windows Advance Server

       Novell Netware 3xx

       Windows NT 4.0 Server

       Windows Server

       Windows Advance Server

       Windows Server

       Windows advance Server

       显示服务协议

       由本机设备处理

       由本机设备处理

       RDP协议,仅支持在TCP/IP环境下运行的wan,lan或远程访问网络。仅适用宽带企业网

       ICA网络协议,适用于宽带网及窄带网,并支持屏蔽技术,管理员可远程操纵瘦客户端设备

       客户端支持

       无盘DOS工作站

       无盘Windows 工作站

       无盘Windows 工作站

       无盘DOS工作站

       无盘Windows工作站

       无盘Windows工作站

       Windowsce设备,包括Windows终端

       超过个客户终端,支持位,位Windows终端,网络电脑,Windows ce设备,及范围很广的非windows终端,web 浏览器

       服务器的要求

       较低

       最低

       高

       高

       工作站的要求

       最高

       较高

       较低

       低

       应用场合

       新建机房,无盘网吧

       教学网络,游戏网等

       配置较差的无盘网络

       教学网络、游戏网

       Windows9x 网络,企业内部网资源共享 手持设备

       配置很差的、机房改造,主要用于教学网