启动协议下载

协议下载  时间:2021-04-18  阅读:()
Vol.
14,No.
32003JournalofSoftware软件学报1000-9825/2003/14(03)0538一种用于网络计算的可定制启动协议周悦芝+,张尧学,王勇(清华大学计算机科学与技术系,北京100084)ACustomizableBootProtocolforNetworkComputingZHOUYue-Zhi+,ZHANGYao-Xue,WANGYong(DepartmentofComputerScienceandTechnology,TsinghuaUniversity,Beijing100084,China)+Correspondingauthor:Phn:86-10-62788076,Fax:86-10-62782118,E-mail:zyz00@mails.
tsinghua.
edu.
cnhttp://www.
cs.
tsinghua.
edu.
cnReceived2002-01-23;Accepted2002-04-11ZhouYZ,ZhangYX,WangY.
Acustomizablebootprotocolfornetworkcomputing.
JournalofSoftware,2003,14(3):538~546.
Abstract:Withthedevelopmentofcomputerandnetworktechnologiesandemergingofdiversetypesofterminal,theabilityofnetworkcomputingtotailorapplicationstothecapabilitiesofheterogeneousclientdeviceswillrealizeitsfullpotentialatlast.
MostoftheexistingterminalsfirststartOSlocallyandthenloadnetwork-computingsoftware.
However,thisbootingwaycan'tsatisfythediversityofterminalsandtheincreasingofcomplexityofnetwork-computingsoftware.
Areliable,secure,effectiveandcustomizableremotebootprotocolnamedasNCBP(network-basedclientbootprotocol)ispresentedinthispaper,whichishopedtoincreasetheflexibilityofexistingnetworkcomputingterminals'bootingprocessandthusincreasetheflexibilityandavailabilityofnetworkcomputing.
NCBPusesextendedDHCP(dynamichostconfigurationprotocol)toacquirelocalidentifier,thenloadsabatchscriptlanguageenvironmentofMBatch(MenuBatch)byusingsecureAPTP(activeprogramtransferprotocol).
WhenexecutingtheloadedMBatchscript,NCBPallowsuserstoselectwhichOStobeloadedandthenloadthecorrespondingOSimageinacustomizableway.
NCBPcanbeusedforremotebootofnetworkcomputers,PCs,anddigitalappliances.
Keywords:networkcomputing;remoteboot;digitalappliance;networkcomputer摘要:随着计算机网络技术的发展和各种终端设备的出现,网络计算技术能够根据终端类型定制应用程序的特点将全面实现其潜力.
然而,现有的终端设备先从本地启动操作系统,再启动网络计算软件的单一的启动方式已不能满足终端设备的多样性和不断复杂的网络计算软件的需求.
为了提高终端设备启动方式的灵活性和可用性,提出了一种可靠、安全、高效并可定制的远程启动协议NCBP(network-basedclientbootprotocol).
NCBP通过扩展DHCP(dynamichostconfigurationprotocol)协议获得本机标识,再利用安全的APTP(activeprogramSupportedbytheNationalHighTechnologyDevelopment863ProgramofChinaunderGrantNo.
863-306-ZD05-01(国家863高科技发展计划);theNationalGrandFundamentalResearch973ProgramofChinaunderGrantNo.
G1998030409(国家重点基础研究发展规划(973))第一作者简介:周悦芝(1975-),男,湖南衡阳人,博士生,主要研究领域为网络计算,家庭网络.
周悦芝等:一种用于网络计算的可定制启动协议539transferprotocol)协议加载MBatch(MenuBatch)脚本执行环境.
通过对MBatch脚本的解释执行,并根据用户的选择从服务器上加载相应的操作系统内核,从而实现终端设备的可定制远程启动.
NCBP可用于网络环境下的网络计算机、PC机以及数字家电设备的远程启动.
关键词:网络计算;远程启动;数字家电;网络计算机中图法分类号:TP393文献标识码:A计算技术在过去的40多年里得到了很大的发展,经历了从大型主机(mainframe)到客户/服务器(client/server),再到B/S(browser/server)这3层结构网络计算的演变[1].
在网络计算中,造价低的客户终端按需从集中服务器上下载并执行程序,如网络计算机;或客户终端请求在服务器上执行应用程序并得到结果,如Windows终端.
与传统的计算模式相比,网络计算具有简单、安全、支持移动计算、总体造价低、可用于电子商务等特点,并且能够根据终端的不同种类提供可定制的计算服务[2].
随着计算能力的不断增强以及可嵌入在芯片中微处理器的出现,瘦计算机(thincomputer)将得到极大的发展和应用.
目前,大部分网络终端设备是在加电后从本地启动操作系统,然后再启动网络计算软件,如JVM、中间件、GUI、WWW浏览器等[3~5].
虽然这种方式在一定程度上满足了终端设备发展多样性的需求,并在服务级别上可根据终端类型对应用程序进行剪裁,但它的灵活性不能适应终端设备数量增多以及网络计算软件复杂度增加及其不断升级的要求.
基于网络的远程启动协议为提高终端设备的灵活性和可用性提供了一种新思路.
然而,现有的远程启动协议(比如RPL和PXE)都是专门为PC设计的.
它们在实用性、可靠性和可定制性方面都难以满足目前各种网络终端设备启动的需要.
本文针对这一问题,提出了一种可靠、安全、高效并可定制的新型远程启动协议:NCBP(network-basedclientbootprotocol).
NCBP首先利用扩展的DHCP(dynamichostconfigurationprotocol)协议获得本机的标识.
此后利用安全的APTP(activeprogramtransferprotocol)协议下载并执行PreOS镜像.
在PreOS环境下,NCBP通过解释执行MBatch(MenuBatch)脚本,按需从服务器上下载并执行操作系统内核镜像,从而可为用户提供可定制的启动服务.
因此,NCBP克服了目前网络终端启动方式在灵活性方面的不足.
尤其在家庭网络[6]环境下,NCBP为解决各种数字家电设备的启动和应用程序的按需加载问题提供了一条有效的解决途径.
本文第1介绍NCBP协议过程及其与之相关的技术问题.
第2节给出NCBP的一个原型系统,并对其性能进行了分析.
在第3节中,我们把NCBP与目前用于PC远程启动的方法进行了比较.
最后是本文的结论.
1NCBP启动协议NCBP是基于客户/服务器模型的,分为客户端和服务器两部分.
客户端是指需要进行远程启动的网络设备,而服务器是指提供远程启动服务的计算机.
启动过程主要就是客户端根据协议与服务器进行交互,按需下载并执行程序的过程.
在服务器端,NCBP提供由扩展DHCP服务和APTP服务组成的启动服务.
启动服务协议的控制流程由DHCP服务和APTP服务及其相关的代码(主要是MBatch脚本)共同实现.
在客户端,由驻留在ROM中的ICode(initialcode)代码提供NCBP协议客户端的功能.
ICode代码主要由4部分组成:网卡驱动以及相关协议;扩展的DHCP客户端代码;APTP客户端代码;PreOS加载器.
ICode代码在机器加电后获得机器的控制权,并按照NCBP协议过程下载并执行程序.
NCBP客户端利用DHCP协议来获得本机的网络标识.
为了防止网络上多个DHCP服务器对NCBP的影响,NCBP对DHCP进行了扩展,增加了防止干扰的鉴别选项.
同时,也增加了对多播(multicast)支持的扩展选项.
在局域网的环境下,使用多播技术能够提高系统的并发能力和负载能力.
为了保证安全性,NCBP采用较安全和可靠的APTP协议来传输代码文件,而不是采取传统的基于TFTP的方法[7].
与扩展DHCP相适应,APTP也支持多播.
与普通的远程启动过程不同,NCBP还增加了一个脚本执行环境PreOS来与用户进行交互,从而实现对多操作系统定制加载的支持.
540JournalofSoftware软件学报2003,14(3)1.
1NCBP协议过程计算机加电启动后,将执行POST过程.
在POST过程的最后一步,操作系统启动中断将找出已存储在CMOS中的IPL(initialprogramload)设备,并执行IPL设备提供的加载代码以加载操作系统代码[8,9].
在远程启动过程中,一般使用PnP可选ROM作为IPL设备.
在原型系统中,NCBP也是使用在系统中增加一个可选ROM的办法.
在机器加电自检结束后,系统控制权将交给可选ROM中的ICode代码.
ICode代码启动以后,就开始执行NCBP协议,该协议过程如图1所示,各步的含义说明如下:NCBPClientICodeInitializationBroadcastDHCPDISCOVERpacketNCBPServerAckreplyofDHCPOFFERpacketSendDHCPREQUESTpacketAckreplyofDHCPACKpacketSendAPTPrequestofPreOSimageServicetoAPTPrequestm,transferPreOSimageReceivePreOSiamgeandinitializePreOSenvironmentInterpretandexecuteMbatchscriptSendAPTPrequesttodownloadOSimageServicetoAPTPrequest,transferOSimageDownloadandexecuteOSkernel⑴⑵⑷⑹⑻⑼⑽⑿⑶⑸⑺⑾Fig.
1TheprotocolprocessofNCBP图1NCBP协议过程(1)客户端本地初始化,该过程包括检查ICode代码的合法性和完整性;初始化本地运行环境和网络环境等;(2)客户端驱动网卡工作,并广播DHCPDISCOVER消息分组,请求本机的IP地址、网关地址、启动服务器地址、PreOS镜像等标识;(3)服务器接收到DHCPDISCOVER消息分组后,检查是否是DHCP扩展协议的消息分组(关于NCBP对DHCP的扩展将在第1.
2节详细讨论),如果是,则向客户端发送应答的DHCPOFFER消息分组;(4)客户端收到DHCPOFFER消息分组后,验证该消息分组是否是DHCP扩展协议的消息分组,如果该消息分组是DHCP扩展协议的消息分组,则记录有关DHCP协议参数、服务器地址、PreOS镜像等内容,同时向服务器发送DHCPREQUEST消息分组,并等待服务器的同意应答;(5)服务器收到DHCPREQUEST消息分组后,向客户端发送DHCPACK消息分组作为应答;(6)客户端收到DHCPACK消息分组后,记录相关的内容;同时根据返回的内容向服务器发出请求下载PreOS镜像的传输请求;(7)服务器接收到客户端程序传输服务的请求后,利用APTP协议(APTP协议参见第1.
3节)的单播或多播方式向客户端传送PreOS镜像(PreOS镜像及下面提及的操作系统镜像格式参见第1.
5节);(8)客户端接收完PreOS镜像,同时启动执行PreOS镜像,初始化PreOS环境;(9)客户端PreOS环境解释执行MBatch脚本,在此阶段,用户可使用输入设备选择需要加载的操作系统;(10)客户端根据用户选择的操作系统内核镜像的程序名称、路径或摘要,向服务器发出请求下载操作系统内核镜像的程序传输请求;周悦芝等:一种用于网络计算的可定制启动协议541(11)服务器接收到客户端发出的程序传输服务请求之后,利用APTP协议的单播或多播方式向客户端传送操作系统的内核镜像;(12)客户端接收操作系统内核镜像并将其存储在本地存储器中,客户端再加载执行相应的操作系统内核镜像,至此,操作系统加载完毕.
1.
2NCBP对DHCP的扩展定义NCBP协议利用IETFRFC2131DHCP[10]协议为客户端提供网络标识.
为了提供对多播的支持并保证NCBP协议的可靠性,NCBP对DHCP的扩展选项[11]进行了扩充和修订.
DHCP消息分组的格式如图2所示.
op(1)htype(1)hlen(1)hops(1)secs(2)xid(4)flags(2)ciaddr(4)yiaddr(4)siaddr(4)giaddr(4)chaddr(16)sname(64)file(128)options(variable)Fig.
2TheformatofDHCPmessage图2DHCP消息分组DHCP主要有两种类型的消息,它是由op域来标志的,一种是BOOTREQUEST请求消息分组,一种是BOOTREPLY应答消息分组.
对其他域的解释,因篇幅限制,不再加以说明.
NCBP方法利用DHCP协议来配置客户端的主机参数,并利用file域传递需要下载的PreOS镜像.
当网络上存在多个DHCP服务器的时候,根据DHCP协议的规定,客户端将随机选择一个DHCP服务器为之服务.
在NCBP中,这种情况将会引起混乱.
为此,NCBP对DHCP的可选参数域扩展了一些定义.
通过识别60号和43号标签的值,NCBP可避免同一网络上存在多个DHCP服务时引起混乱的情况,并有效防止从另外的DHCP服务器上下载代码的行为,增强了健壮性和安全性.
同时,为了支持APTP协议的多播要求,NCBP也扩展定义了其他一些选项.
NCBP对DHCP的扩展定义见表1.
Table1TheextendeddefinitionofDHCPoptionsinNCBP表1NCBP对DHCP选项的扩展定义TagnameTag#LengthDescriptionVendorclassidentifier6018ThisoptionindicatesthattheDHCPpacketisanextendedDHCPpacket.
Itmustbe"NCBP-EDHCPSEClient".
Vendorspecificinformation438Vendorinformation,definedwith"03:05:08:00:00:00:ff:ff".
Withtag60and43itcanmakeNCBPonlyreplytoanextendedDHCPpacket.
Messagetype531Packettype,1=DHCPDISCOVER,2=DHCPOFFER,3=DHCPREQUEST,4=DHCPDECLINE,5=DHCPACK,6=DHCPNAK,7=DHCPRELEASE,8=DHCPINFORMPreOSparameters165IndefiniteParametersshouldbepassedtothePreOSenvironment.
APTPmulticastaddress1384ThemulticastIPaddresswhenAPTPservertransfersfiles.
APTPclientport1392TheUDPportthatshouldbelistenedbyAPTPclientswhenusingmulticastmethod.
APTPserverport1402TheUDPportthatshouldbelistenedbyAPTPserverswhenusingmulticastmethod.
APTPwaitingtime1412NumberofsecondsanAPTPclientmustwaitbeforerestartinganAPTPrequest.
APTPlisteningdelay1422NumberofsecondsdelayedwhenanAPTPserverreceivesanAPTPrequest.
Filedigest143IndefiniteThenextfilenameofdigestofprogramneededtotransfer.
ThedigestisproducedbyMD5.
Thiscanguaranteethecorrecttransferoffileandprotecttheprogramsfrommaliciouslytampering.
542JournalofSoftware软件学报2003,14(3)1.
3APTP协议NCBP协议利用APTP协议从服务器上下载代码.
APTP协议是一个简单、安全的程序传输协议.
APTP协议简单,便于实现,它能完全放置在一个ROM中.
APTP不提供像FTP协议那样的目录和程序浏览服务.
APTP采用基于MD5[12]单向哈希函数作摘要的方法来命名程序,能够保证程序被正确地传送到客户端,并能防止程序在传输过程中被恶意篡改.
APTP协议不支持写操作,避免对服务器实施写操作而产生的安全问题.
APTP在UDP协议的上层运行,采用超时重传技术来保证可靠的数据传输.
APTP没有连接的建立过程,是一个无状态协议.
APTP支持多播方式,能够以多播方式传送数据,从而大大减少并发启动时对网络带宽的冲击.
APTP采用固定大小的数据块进行传输.
目前采用的数据块大小是512字节.
APTP协议的报文格式如图3所示.
Opc=1(2)Type(1)Programname/MD5Digest(string)0(1)opt10(1)val10(1)…Readrequest(Unicast)packetOpc=2(2)Type(1)Programname/MD5Digest(string)0(1)MUL0(1)…Readrequest(Multicast)packet0(1)Opc=3(2)Type(1)Block#(2)DataACKpacketData(n)Opc=4(2)Type(1)ErrMsg(string)0(1)ERRORpacketErrCode(2)0(1)Fig.
3TheformatofAPTPpackets图3APTP协议报文格式APTP共有3种协议报文,分别为"读请求"(readrequest,简称RRQ)、"数据应答"(DATAacknowledgement,简称DATAACK)、"错误"(error,简称ERROR).
分别说明如下:"读请求"报文:Opc表示报文的种类.
为了方便起见,读请求报文的Opc代码有两个:1和2.
它们分别表示普通读和多播读.
图3中括号中的数字为该域的长度(以字节为单位).
Type为0时,表示使用程序名称来标识需要传送的程序,为1时表示使用MD5摘要来标识需要传输的程序.
opt1和val1分别表示第1个选项及其取值,依次类推.
当选项为'MUL'时,表示请求多播传送数据报文.
"数据应答"报文:其中块号从1开始连续编号.
每块的大小为512KB.
"错误"报文:当传输过程发生错误时,服务器将向客户端发送错误报文.
客户端收到错误报文之后,立即终止传输过程,并向用户报告.
在NCBP协议中,如果在DHCPOFFER和DHCPACK消息分组的选项中包含了多播参数,并且客户端也愿意使用多播方式来接收数据报文,则客户端可以接收多播的APTP数据报文.
APTP客户端以多播方式来接收数据报文的过程分为3个阶段:多播监听、多播打开和多播关闭.
监听过程中,客户端通过监听APTP多播端口来收集有效的APTP数据报文.
如果能收集到所有需要的数据报文,则不进入打开阶段.
当在监听阶段没有收集到数据报文时,则进入打开阶段,使用单播(unicast)方式从服务器请求数据.
如果又收到多播数据,则又可转入监听阶段.
1.
4MBatch语言MBatch是一个脚本解释执行语言.
NCBP通过对脚本的解释,可以和用户进行交互,从而利用APTP协议下载执行不同的操作系统镜像.
MBatch是基于命令行的.
命令后面是命令的参数,其格式为Commandparameter1,parameter2,…MBatch语言的特点是:命令以行为单位进行解析,行与行之间用换行或回车隔离;行的最大长度为255个字符;周悦芝等:一种用于网络计算的可定制启动协议543关键字或变量大小写不敏感;双引号(")为字符串的分隔符;$开始的字符串表示变量;转义符的使用:\b后退;\n换行;\r回车;\tTab;\nnn用值为八进制数nnn的ASCII码代替;\X表示不在上述的字符中的字符X.
在MBatch语言中,主要的表达式就是字符串表达式和数值表达式.
其中数值表达式只能做整数的+,,*,/等运算.
而且各个运算符之间没有优先级的区别,用括号来表示运算的顺序,例如:((4*6)+8).
在MBatch语言中,最主要的命令有延迟命令、监控命令、控制命令、输入输出命令等等.
其中最主要的命令就是内核镜像加载命令:LoadImage"kernelimagenameordigest".
其中内核镜像的命名规则如下:文件名为字符串.
它们必须用双引号引起来,文件名是大小写敏感的,可用转义符来表示特殊的字符.
如果文件名不是以/开始,则默认为从/aptpboot目录下寻找.
如果文件名中出现冒号,则冒号前的部分将被解释为计算机名.
如果用摘要命名镜像,则必须以//开始.
后面的摘要部分使用Base64编码[13]来进行传输.
服务器根据摘要决定传输哪个镜像程序.
1.
5NCBP对内核镜像格式的规定为了加载不同操作系统的内核镜像,必须对内核镜像的格式加以规定.
使用统一的内核镜像的格式,加载器就能透明地加载各种操作系统的内核.
NCBP中的内核镜像格式如图4所示,有关的含义说明如下:ImageIdentification:内核镜像格式的标识,目前的取值为05h,0ah,0ah,05h,作为内核镜像的标识.
LocationAddress:内核镜像在内存中的装载地址.
ExecuteAddress:该地址是内核镜像的首次执行的地址,当内核镜像加载程序成功地装载到LocationAddress之后,跳转到ExecuteAddress处执行,从而释放系统的控制权.
ImageLength:内核镜像的长度,该长度是指内核镜像解压前的长度.
MemoryLength:内核镜像解压后所占用的内存长度.
DataSegment:镜像执行后的真正数据区.
op(1)htype(1)hlen(1)hops(1)secs(2)xid(4)flags(2)ciaddr(4)yiaddr(4)siaddr(4)giaddr(4)chaddr(16)sname(64)file(128)options(variable)Fig.
4Theformatofkernelimage图4内核镜像格式2实现2.
1原型系统NCBP原型系统以X86体系结构作为原型系统的硬件平台,以Windows98,Windows2000和Linux作为实施的对象.
NCBP原型系统已经在清华大学研制开发的网络终端——SOPCA中得到了实现和应用.
图5是实现NCBP原型系统的示意图.
网络终端首先与启动服务器交互进行远程启动,然后再从应用服务器上下载应用程544JournalofSoftware软件学报2003,14(3)序,并在本地执行.
.
.
.
ICodeROMOSAppTerminalTerminalApplicationRepositoryLinux7.
0DHCPService&APTPSeviceLinux7.
0ApplicationServerBootServerRequestapplicationsDownloadapplicationsRequestServicesDownloadprogramimagesICodeROMOSAppFig.
5TheprototypeofNCBP图5NCBP原型系统示意图其中SOPCA网络终端是基于X86体系结构的,其配置为CyrixMediaGX,64MRAM,AMDAM79C901A1M/10MEthernetPHY网卡.
在每个SOPCA终端的主板上都安装了一个ROM.
该ROM中烧制了ICode代码.
启动服务器的配置为PentiumⅢ-866,128MRAM,100M以太网卡.
应用服务器的配置为PentiumⅢ-866,256MRAM,100M以太网卡.
整个系统由D-LinkDES-1024交换机连接成局域网.
启动服务器上面启动了DHCP服务和APTP服务.
DHCP服务的配置文件示例如下(为节省篇幅,该示例将几行用分号隔开写在一行):{#NCBP-specificoptionsoptiondhcp-class-identifier"NCBP-EDHCPSEClient";optionvendor-encapsulated-options03:05:08:00:00:00:ff:ff;#globaloptionsoptionsubnet-mask255.
255.
255.
0;default-lease-time1;#NCBPAPTPepecificoptionsoption138255.
255.
255.
0;option1391005;option1401006;option1418;#subnetspecificoptionssubnet192.
168.
0.
0netmask255.
255.
255.
0{optionrouters192.
168.
0.
2;optiondynamic-bootp192.
168.
0.
100192.
168.
0.
180;filename"aptpboot/Preos.
image";}}其中#号后面的部分是注释.
Preos.
image是PreOS镜像名称,它被执行后形成MBatch的脚本解释环境.
在PreOS镜像中还包括一个MBatch脚本.
下面是一个用上下箭头选择的菜单脚本,两个菜单分别启动Windows98和Linux系统(为节省篇幅,该脚本将几行用分号隔开写在一行).
SetMenuNum=2;SetMenuItem={"StartingWindows98","StartingLinux"};SetCurrentItem=1;:menu;Setexitemenu="";Print"Bootselection";Seti=1;:loop;Setj=($i1);Print"$MenuItem"{$j};Print"\r\n";SetI=($I+1);If$I1SetCurrent=($CurrentItem1);#UpkeyIf"$key"=="DnKey"if$CurrentItem<$MenuNumSetCurrent=($CurrentItem+1);#Downkeyif"$key"=="\r"SetExitMenu="OK";#Enterkey;if"$ExitMenu"!
="OK"gotomenu;if$CurrentItem===1gotoa1;if$CurrentItem===2gotoa2;:a1;LoadImage"192.
168.
0.
72:/tftpboot/WIN$SOP.
SYS";:a2;LoadImage"192.
168.
0.
72:/tftpboot/LInux.
image";2.
2性能测试由于网络终端启动的过程很复杂,难于进行程序模拟或仿真.
因此为了测试NCBP的并发和时间性能,必须进行实际的实验.
为此,我们搭建了由50台SOPCA终端、一台应用服务器、一台启动服务器和交换机组成的实验环境(实验环境的配置情况参见第2.
1节).
我们测试了NCBP在单播和多播两种方式之下的启动时间.
为了对比,我们还测试了单机本地启动以及基于RPL方法的启动时间.
所测得的结果如图6所示.
图6中的值为10次测试的平均值.
从图6可以看出,使用网络启动比单机的本地启动要慢一些.
这是显然的,因为网络启动需要进行网络的协议交互过程.
与RPL方法比较,NCBP方法速度稍慢.
一方面是由于安全方面的开销,另一方面是由于NCBP对脚本的执行需要一定的时间.
从图6中还可以看出,在数量较多的情况下,使用多播方式具有较好的效果.
Delay(s)NumberofnetworkterminalsFig.
6TheperformancetestingofNCBP图6NCBP性能测试要进一步提高NCBP的性能,就必须优化安全算法以及脚本执行的环境和速度.
3相关工作Novell公司是较早提出远程启动技术的公司之一.
它提出了一种用于远程启动的RPL(remoteprogramload)协议[14].
RPL只能用于Novell网络环境.
而Novell网络的建立和维护命令非常多,很复杂.
因此,RPL在取得良好的时间性能的同时,在通用性和可靠性方面还存在着不足.
同时,RPL只提供对单一操作系统的支持,因此当操作系统升级后,RPL芯片也需要升级,难于满足用户定制启动过程的要求.
为了解决这些问题,Intel公司在1998年提出了一种称为PXE(prebootexecutionenvironment)的远程启动技术[15].
PXE规范提出了一种新的基于TCP/IP协议簇的远程启动方法.
PXE建立在业已成为工业标准的Internet技术规范之上,因此它的稳定性比较好.
但PXE对多操作系统的启动支持也很弱,它没有提出多操作系统启动的方法.
在安全性上,它采用TFTP来传输文件,安全性较差.
上面两种方法都是针对PC的启动提出来的,不太适用于网络计算的环境.
而本文提出的网络环境下终端设备远程启动的新方法,安全、可靠,速度较快,并且能支持对多操作系统的启动,是一种较好的远程启动方法.
表2总结了NCBP与传统的RPL以及PXE远程启动方法的比较情况.
546JournalofSoftware软件学报2003,14(3)Table2ThecomparisonofNCBP,RPLandPXE表2NCBP,RPL和PXE的比较MethodsTermsRPLPXENCBPSecurityLowLowHighReliabilityLowHighVeryhighGeneralityLowHighHighResponsetimeShortShortShortMulticastsupportNoYesYesComplexityDifficultSimplySimplyUserinterfaceComplexEasyEasyEfficiencyHighHighHighBoottimeShortShortAlittlelongTCP/IPsupportNoYesYesCustomizationsupportNoNoYes4结论本文针对目前网络终端在启动方法上灵活性和可用性的不足,提出了一种可靠、安全、高效并可定制的远程启动协议NCBP.
NCBP通过对DHCP进行扩展定义,并利用APTP下载程序,保证了可靠性和安全性.
APTP协议的简单性和无状态性,保证了网络终端在启动过程中可自动恢复,保证了该协议方法的健壮性.
通过对MBatch脚本的解释执行,实现了对多操作系统定制加载的支持.
该方法可用于网络环境下的网络计算机、PC机以及数字家电设备的启动.
NCBP方法已经在清华大学研制开发的网络终端SOPCA中得以实现和应用.
目前我们正在做进一步提高其性能的工作.
References:[1]NoguchiS.
Networkcomputingtechnologyandinformationsocietytoward21stcentury.
In:MakotoT,ed.
Proceedingsofthe7thInternationalConferenceonParallelandDistributedSystems.
LosAlamitos,CA:InstituteofElectricalandElectronicEngineers,Inc.
,2000.
3~9.
[2]RevettM,BoydI,StephensC.
Networkcomputing:atutorialreview.
IEEElectronics&CommunicationEngineeringJournal,2001,13(1):5~15.
[3]RedfordJ,TauntonM.
Acorn'stechnologyfornetworkcomputing.
In:BobW,ed.
ProceedingsoftheIEEECOMPCON'97.
LosAlamitos,CA:IEEEComputerSocietyPress,1997.
124~129.
[4]RichardsonT,Stafford-FraserQ,WoodKR,HopperA.
Virtualnetworkcomputing.
IEEEInternetComputing,1998,2(1):33~38.
[5]HasedawaA,NakajimaT.
Auserinterfacesystemforhomeappliancewithvirtualnetworkcomputing.
In:MakotoT,ed.
Proceedingsofthe21stInternationalConferenceonDistributedComputingSystemsWorkshop.
LosAlamitos,CA:InstituteofElectricalandElectronicEngineers,Inc.
,2001.
229~234.
[6]HomeWirelessNetworks,Inc.
Homenetworking.
http://www.
iec.
org/online/tutorials/.
[7]SollinsK.
TheTFTPprotocol(Revision2).
RFC1350,1992.
[8]CompaqComputerCorporation,PhoenixTechnologiesLtd.
,IntelCorporation.
BIOSbootspecification.
Version1.
01,1996.
http://www.
phoenix.
com/techs/specs.
html.
[9]CompaqComputerCorporation,PhoenixTechnologiesLtd.
,IntelCorporation.
PlugandplayBIOSspecification.
Version1.
0A,1994.
http://www.
phoenix.
com/techs/specs.
html.
[10]DromsR.
Dynamichostconfigurationprotocol.
RFC2131,1997.
[11]AlexanderS,DromsR.
DHCPoptionsandBOOTPvendorextensions.
RFC2132,1997.
[12]RivestR.
TheMD5message-digestalgorithm.
RFC1321,1992.
[13]BorensteinN,FreedN.
MIME(multipurposeinternetmailextensions)partone:mechanismsforspecifyinganddescribingtheformatofInternetmessagebodies.
RFC1521,1993.
[14]NovellInc.
NetWare4featureguide.
1998.
http://www.
novell.
com/documentation/lg/nw42/pdfdoc/newftenu.
pdf,December.
[15]PrebootExecutionEnvironment(PXE)Specification.
Version2.
2,1998.
http://developer.
intel.
com/ial/wfm/wfmspecs.
htm.

Friendhosting全场VDS主机45折,虚拟主机4折,老用户续费9折

Friendhosting发布了今年黑色星期五促销活动,针对全场VDS主机提供45折优惠码,虚拟主机4折,老用户续费可获9折加送1个月使用时长,优惠后VDS最低仅€14.53/年起,商家支持PayPal、信用卡、支付宝等付款方式。这是一家成立于2009年的老牌保加利亚主机商,提供的产品包括虚拟主机、VPS/VDS和独立服务器租用等,数据中心可选美国、保加利亚、乌克兰、荷兰、拉脱维亚、捷克、瑞士和波...

BlueHost主机商年中618活动全场低至五折

BlueHost 主机商在以前做外贸网站的时候还是经常会用到的,想必那时候有做外贸网站或者是选择海外主机的时候还是较多会用BlueHost主机商的。只不过这些年云服务器流行且性价比较高,于是大家可选择商家变多,但是BlueHost在外贸主机用户群中可选的还是比较多的。这次年中618活动大促来袭,毕竟BLUEHOST商家目前中文公司设立在上海,等后面有机会也过去看看。他们也会根据我们的国内年中促销发...

Raksmart VPS主机如何设置取消自动续费

今天有看到Raksmart账户中有一台VPS主机即将到期,这台机器之前是用来测试评测使用的。这里有不打算续费,这不面对万一导致被自动续费忘记,所以我还是取消自动续费设置。如果我们也有类似的问题,这里就演示截图设置Raksmart取消自动续费。这里我们可以看到上图,在对应VPS主机的【其余操作】中可以看到默认已经是不自动续费,所以我们也不要担心被自动续费的。当然,如果有被自动续费,我们确实不想续费的...

协议下载为你推荐
波音737起飞爆胎为什么很少见到飞机轮胎爆胎?重庆400年老树穿楼生长重庆轻轨穿过居民楼在哪里,从解放碑怎么去邮件eset闪拍网闪拍网之类的网站怎么回事?佛山海虹海虹蒸多长时间佛山海虹广东海虹药通电子商务有限公司怎么样?免费代理加盟免费加盟代销怎么回事,能具体介绍下么申请400电话400电话如何办理?网站后台密码破解网站后台管理密码忘记了怎么破解啊高手进来.网站后台密码破解如何破解网站后台密码
域名拍卖 中文域名查询 免费动态域名解析 科迈动态域名 cn域名个人注册 php探针 华为网络硬盘 云全民 qq数据库下载 促正网秒杀 柚子舍官网 怎么测试下载速度 789电视 空间合租 傲盾官网 免费私人服务器 宏讯 网购分享 湖南idc 百度云空间 更多