![wiznet深圳辦7月份培訓(xùn)tftp參考第十一章_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/5/36d30754-3e27-4fea-9e9f-79512dd32339/36d30754-3e27-4fea-9e9f-79512dd323391.gif)
![wiznet深圳辦7月份培訓(xùn)tftp參考第十一章_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/5/36d30754-3e27-4fea-9e9f-79512dd32339/36d30754-3e27-4fea-9e9f-79512dd323392.gif)
![wiznet深圳辦7月份培訓(xùn)tftp參考第十一章_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/5/36d30754-3e27-4fea-9e9f-79512dd32339/36d30754-3e27-4fea-9e9f-79512dd323393.gif)
![wiznet深圳辦7月份培訓(xùn)tftp參考第十一章_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/5/36d30754-3e27-4fea-9e9f-79512dd32339/36d30754-3e27-4fea-9e9f-79512dd323394.gif)
![wiznet深圳辦7月份培訓(xùn)tftp參考第十一章_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-4/5/36d30754-3e27-4fea-9e9f-79512dd32339/36d30754-3e27-4fea-9e9f-79512dd323395.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第十一章 TFTPTFTPTFTP簡(jiǎn)介簡(jiǎn)介TFTPTFTP(Trivial File Transfer Protocol,Trivial File Transfer Protocol,簡(jiǎn)單文件傳輸協(xié)簡(jiǎn)單文件傳輸協(xié)議)是議)是TCP/IPTCP/IP協(xié)議族中的一個(gè)用來在客戶機(jī)與服務(wù)器之間進(jìn)協(xié)議族中的一個(gè)用來在客戶機(jī)與服務(wù)器之間進(jìn)行簡(jiǎn)單文件傳輸?shù)膮f(xié)議,提供不復(fù)雜、開銷不大的文件傳輸行簡(jiǎn)單文件傳輸?shù)膮f(xié)議,提供不復(fù)雜、開銷不大的文件傳輸服務(wù)。服務(wù)。TFTPTFTP承載在承載在UDPUDP上,提供不可靠的數(shù)據(jù)流傳輸服務(wù),上,提供不可靠的數(shù)據(jù)流傳輸服務(wù),不提供存取授權(quán)與認(rèn)證機(jī)制,使用超時(shí)重傳方式來保證數(shù)據(jù)
2、不提供存取授權(quán)與認(rèn)證機(jī)制,使用超時(shí)重傳方式來保證數(shù)據(jù)的到達(dá)。與的到達(dá)。與FTPFTP相比,相比,TFTPTFTP的大小要小的多?,F(xiàn)在最普遍使的大小要小的多?,F(xiàn)在最普遍使用的是第二版用的是第二版TFTPTFTP(TFTP Version 2,RFC1350TFTP Version 2,RFC1350)。)。使用使用UDP 69UDP 69端口端口簡(jiǎn)單文件傳送協(xié)議簡(jiǎn)單文件傳送協(xié)議TFTPTFTP特點(diǎn)特點(diǎn) 簡(jiǎn)單文件傳送協(xié)議簡(jiǎn)單文件傳送協(xié)議TFTP(Trivial File Transfer TFTP(Trivial File Transfer Protocol)Protocol)是網(wǎng)絡(luò)應(yīng)用程序,它比
3、是網(wǎng)絡(luò)應(yīng)用程序,它比FTPFTP簡(jiǎn)單也比簡(jiǎn)單也比FTPFTP功能功能少。少。TFTPTFTP客戶與服務(wù)器之間的傳輸層通信使用的是客戶與服務(wù)器之間的傳輸層通信使用的是UDPUDP。 TFTPTFTP服務(wù)器必須提供一定形式的并發(fā)。服務(wù)器必須提供一定形式的并發(fā)。TFTPTFTP服務(wù)器通服務(wù)器通過為每個(gè)客戶提供一個(gè)新的過為每個(gè)客戶提供一個(gè)新的UDPUDP端口來提供并發(fā)。端口來提供并發(fā)。 TFTPTFTP協(xié)議沒有提供安全特性協(xié)議沒有提供安全特性, ,很多安全特性都必需由很多安全特性都必需由TFTPTFTP服務(wù)器系統(tǒng)管理員來限制客戶訪問所指定的文件。服務(wù)器系統(tǒng)管理員來限制客戶訪問所指定的文件。 此協(xié)議設(shè)計(jì)
4、的時(shí)候是進(jìn)行小文件傳輸?shù)?。因此它不此協(xié)議設(shè)計(jì)的時(shí)候是進(jìn)行小文件傳輸?shù)?。因此它不具備通常的具備通常的FTPFTP的許多功能,它只能從文件服務(wù)器上的許多功能,它只能從文件服務(wù)器上獲得或?qū)懭胛募?,不能列出目錄,不進(jìn)行認(rèn)證,它獲得或?qū)懭胛募?,不能列出目錄,不進(jìn)行認(rèn)證,它傳輸傳輸8 8位數(shù)據(jù)。傳輸中有三種模式:位數(shù)據(jù)。傳輸中有三種模式:netasciinetascii,這,這是是8 8位的位的ASCIIASCII碼形式,另一種是碼形式,另一種是octetoctet,這是,這是8 8位源數(shù)位源數(shù)據(jù)類型;最后一種據(jù)類型;最后一種mailmail已經(jīng)不再支持。已經(jīng)不再支持。TFTPTFTP的用途的用途簡(jiǎn)單文件
5、傳送協(xié)議的應(yīng)用包括:簡(jiǎn)單文件傳送協(xié)議的應(yīng)用包括: 1 1)為無盤工作站下載引導(dǎo)文件,下載初始化代碼)為無盤工作站下載引導(dǎo)文件,下載初始化代碼到打印機(jī)、集線器和路由器。例如存在這樣的設(shè)備,它到打印機(jī)、集線器和路由器。例如存在這樣的設(shè)備,它擁有一個(gè)網(wǎng)絡(luò)連接和小容量的固化了擁有一個(gè)網(wǎng)絡(luò)連接和小容量的固化了TFTPTFTP、UDPUDP和和IPIP的只的只讀存儲(chǔ)器(讀存儲(chǔ)器(Read-Only MemoryRead-Only Memory,ROMROM)。加電后,設(shè)備執(zhí))。加電后,設(shè)備執(zhí)行行ROMROM中的代碼,在網(wǎng)絡(luò)上廣播一個(gè)中的代碼,在網(wǎng)絡(luò)上廣播一個(gè)TFTPTFTP請(qǐng)求。網(wǎng)絡(luò)上的請(qǐng)求。網(wǎng)絡(luò)上的TF
6、TPTFTP服務(wù)器響應(yīng)請(qǐng)求包含可執(zhí)行二進(jìn)制程序的文件,設(shè)服務(wù)器響應(yīng)請(qǐng)求包含可執(zhí)行二進(jìn)制程序的文件,設(shè)備收到文件后,將它載入內(nèi)存,然后開始運(yùn)行程序。備收到文件后,將它載入內(nèi)存,然后開始運(yùn)行程序。2 2)路由器的信息設(shè)置)路由器的信息設(shè)置路由器可以在指定的路由器可以在指定的TFTPTFTP服務(wù)器上存儲(chǔ)設(shè)置服務(wù)器上存儲(chǔ)設(shè)置參數(shù),如果這個(gè)路由器癱瘓了,正確的設(shè)置參數(shù),如果這個(gè)路由器癱瘓了,正確的設(shè)置信息可以從信息可以從TFTPTFTP服務(wù)器上下載到一個(gè)修復(fù)的服務(wù)器上下載到一個(gè)修復(fù)的路由器或者一個(gè)替代的路由器,這便為路由路由器或者一個(gè)替代的路由器,這便為路由器提供了器提供了種容錯(cuò)能力。(備份)種容錯(cuò)能力
7、。(備份)TFTPTFTP報(bào)文報(bào)文 TFTPTFTP傳輸?shù)臄?shù)據(jù)使用固定長度(傳輸?shù)臄?shù)據(jù)使用固定長度( 512512個(gè)字節(jié))的分組報(bào)個(gè)字節(jié))的分組報(bào)文。如果一個(gè)分組報(bào)文少于文。如果一個(gè)分組報(bào)文少于512512字節(jié),表明這是數(shù)據(jù)傳輸?shù)淖止?jié),表明這是數(shù)據(jù)傳輸?shù)淖詈笠粋€(gè)分組報(bào)文。最后一個(gè)分組報(bào)文。 當(dāng)一個(gè)數(shù)據(jù)的分組報(bào)文被發(fā)送到目標(biāo)主機(jī)之后,數(shù)據(jù)將當(dāng)一個(gè)數(shù)據(jù)的分組報(bào)文被發(fā)送到目標(biāo)主機(jī)之后,數(shù)據(jù)將在一個(gè)緩沖區(qū)域內(nèi)保存直到接收到一個(gè)確認(rèn)信號(hào),它表明數(shù)在一個(gè)緩沖區(qū)域內(nèi)保存直到接收到一個(gè)確認(rèn)信號(hào),它表明數(shù)據(jù)已經(jīng)被成功地接收了。據(jù)已經(jīng)被成功地接收了。 如果在再發(fā)送時(shí)間失效之前,發(fā)送主機(jī)沒有接收到確認(rèn)如果在再發(fā)送時(shí)
8、間失效之前,發(fā)送主機(jī)沒有接收到確認(rèn)信號(hào),則數(shù)據(jù)分組報(bào)文將被重新發(fā)送。信號(hào),則數(shù)據(jù)分組報(bào)文將被重新發(fā)送。TFTPTFTP報(bào)文的頭兩個(gè)字節(jié)表示操作碼。報(bào)文的頭兩個(gè)字節(jié)表示操作碼。 文件名指明從文件名指明從TFTPTFTP服務(wù)器上正在上傳或下載的文件的名服務(wù)器上正在上傳或下載的文件的名字,它使用一個(gè)可變長的段,字,它使用一個(gè)可變長的段,0 0指明文件名結(jié)束。指明文件名結(jié)束。 模式字段是一個(gè)模式字段是一個(gè)ASCIIASCII碼串碼串netasciinetascii或或octetoctet,同樣以,同樣以0 0字字節(jié)結(jié)束。節(jié)結(jié)束。netasciinetascii表示數(shù)據(jù)是以成行的表示數(shù)據(jù)是以成行的ASC
9、IIASCII碼字符組成,以兩碼字符組成,以兩個(gè)字節(jié)個(gè)字節(jié)回車字符后跟換行字符(稱為回車字符后跟換行字符(稱為CR/LFCR/LF)作為行)作為行結(jié)束符。結(jié)束符。octetoctet則將數(shù)據(jù)看作則將數(shù)據(jù)看作8bit8bit一組的字節(jié)流而不作任何解釋。一組的字節(jié)流而不作任何解釋。 TFTPTFTP協(xié)議的五種消息格式分別是:讀請(qǐng)求協(xié)議的五種消息格式分別是:讀請(qǐng)求(RRQ)(RRQ)、寫請(qǐng)求、寫請(qǐng)求(WRQ)(WRQ)、數(shù)據(jù)、數(shù)據(jù)(DATA)(DATA)、確認(rèn)、確認(rèn)(ACK)(ACK)、出錯(cuò)、出錯(cuò)(ERR)(ERR)。1 1)讀請(qǐng)求)讀請(qǐng)求(RRQ)(RRQ)和寫請(qǐng)求和寫請(qǐng)求(WRQ)(WRQ)讀請(qǐng)
10、求讀請(qǐng)求(RRQ)(RRQ)和寫請(qǐng)求和寫請(qǐng)求(WRQ)(WRQ)都使用相同的格式。操作碼:都使用相同的格式。操作碼:1 1為讀請(qǐng)求;為讀請(qǐng)求;2 2為寫請(qǐng)求。為寫請(qǐng)求。2 2)數(shù)據(jù))數(shù)據(jù)(DATA)(DATA) TFTP TFTP傳輸實(shí)際數(shù)據(jù)時(shí),使用傳輸實(shí)際數(shù)據(jù)時(shí),使用DATADATA消息格式。操作碼被設(shè)消息格式。操作碼被設(shè)置成置成3 3,表明數(shù)據(jù)在以,表明數(shù)據(jù)在以TFTPTFTP消息傳輸。消息傳輸。 初始?jí)K號(hào)被設(shè)置成初始?jí)K號(hào)被設(shè)置成1 1,為初始的,為初始的DATADATA分組報(bào)文。每一個(gè)附分組報(bào)文。每一個(gè)附加的分組報(bào)文將增加加的分組報(bào)文將增加1 1,直到整個(gè)文件傳輸結(jié)束。,直到整個(gè)文件傳輸
11、結(jié)束。 數(shù)據(jù)段可有數(shù)據(jù)段可有512512字節(jié)長。如果數(shù)據(jù)段少于字節(jié)長。如果數(shù)據(jù)段少于512512字節(jié)字節(jié)(0(0511)511),則表明來自文件的最后一個(gè)數(shù)據(jù)塊。如果正好是,則表明來自文件的最后一個(gè)數(shù)據(jù)塊。如果正好是512512字節(jié)長,則說明要完成文件的傳輸必須傳送額外的字節(jié)長,則說明要完成文件的傳輸必須傳送額外的0 0長度數(shù)長度數(shù)據(jù)塊。據(jù)塊。3 3)確認(rèn))確認(rèn)(ACK)(ACK)ACKACK確認(rèn)確認(rèn)(ACK)(ACK)分組報(bào)文的操作碼值為分組報(bào)文的操作碼值為4 4。塊號(hào)段包。塊號(hào)段包含正在被確認(rèn)的含正在被確認(rèn)的DATADATA分組報(bào)文的塊號(hào)。分組報(bào)文的塊號(hào)。如果此確認(rèn)信號(hào)是回答一個(gè)寫請(qǐng)求的,
12、則這個(gè)塊如果此確認(rèn)信號(hào)是回答一個(gè)寫請(qǐng)求的,則這個(gè)塊號(hào)將被設(shè)置成號(hào)將被設(shè)置成0 0,從而表明數(shù)據(jù)的傳輸可以開始。,從而表明數(shù)據(jù)的傳輸可以開始。4 4)出錯(cuò))出錯(cuò)(ERR)(ERR)出錯(cuò)出錯(cuò)(ERR)(ERR)操作碼設(shè)置為操作碼設(shè)置為5 5。出錯(cuò)代碼給出出錯(cuò)類。出錯(cuò)代碼給出出錯(cuò)類型值。出錯(cuò)消息以型值。出錯(cuò)消息以NETASCIINETASCII格式儲(chǔ)存,并且加上格式儲(chǔ)存,并且加上一個(gè)文本描述從而幫助調(diào)試一個(gè)文本描述從而幫助調(diào)試TFTPTFTP的出錯(cuò)消息。出的出錯(cuò)消息。出錯(cuò)消息段是可變長的,所以出錯(cuò)消息總是以一個(gè)錯(cuò)消息段是可變長的,所以出錯(cuò)消息總是以一個(gè)“0”0”來作為結(jié)尾標(biāo)志。來作為結(jié)尾標(biāo)志。出錯(cuò)代
13、碼描述:出錯(cuò)代碼描述: 代碼代碼 描述描述 0 0 沒有定義的錯(cuò)誤,出錯(cuò)信息將提供其他附加信息沒有定義的錯(cuò)誤,出錯(cuò)信息將提供其他附加信息 1 1 文件沒有找到。所給的文件名有誤文件沒有找到。所給的文件名有誤 2 2 訪問非法。安全權(quán)限不足訪問非法。安全權(quán)限不足 3 3 磁盤已滿或者分區(qū)表溢出磁盤已滿或者分區(qū)表溢出 4 4 非法的非法的 TFTPTFTP 操作操作 5 5 未知未知的傳輸?shù)膫鬏?ID(ID(端口號(hào)端口號(hào)) ) 6 6 文件已經(jīng)存在文件已經(jīng)存在 7 7 沒有這個(gè)用戶沒有這個(gè)用戶 初始連接時(shí)候需要發(fā)出初始連接時(shí)候需要發(fā)出WRQWRQ(請(qǐng)求寫入遠(yuǎn)程系統(tǒng))或(請(qǐng)求寫入遠(yuǎn)程系統(tǒng))或RRQR
14、RQ(請(qǐng)求讀取遠(yuǎn)(請(qǐng)求讀取遠(yuǎn)程系統(tǒng)),收到一個(gè)確定應(yīng)答,一個(gè)確定可以寫出的包或應(yīng)該讀取的第程系統(tǒng)),收到一個(gè)確定應(yīng)答,一個(gè)確定可以寫出的包或應(yīng)該讀取的第一塊數(shù)據(jù)。通常確認(rèn)包包括要確認(rèn)的包的包號(hào),每個(gè)數(shù)據(jù)包都與一個(gè)塊一塊數(shù)據(jù)。通常確認(rèn)包包括要確認(rèn)的包的包號(hào),每個(gè)數(shù)據(jù)包都與一個(gè)塊號(hào)相對(duì)應(yīng),塊號(hào)從號(hào)相對(duì)應(yīng),塊號(hào)從1 1開始而且是連續(xù)的。因此對(duì)于寫入請(qǐng)求的確定是一開始而且是連續(xù)的。因此對(duì)于寫入請(qǐng)求的確定是一個(gè)比較特殊的情況,因此它的包的包號(hào)是個(gè)比較特殊的情況,因此它的包的包號(hào)是0 0。如果收到的包是一個(gè)錯(cuò)誤。如果收到的包是一個(gè)錯(cuò)誤的包,則這個(gè)請(qǐng)求被拒絕。創(chuàng)建連接時(shí),通信雙方隨機(jī)選擇一個(gè)的包,則這個(gè)請(qǐng)求
15、被拒絕。創(chuàng)建連接時(shí),通信雙方隨機(jī)選擇一個(gè)TIDTID,因此是隨機(jī)選擇的,因此兩次選擇同一個(gè)因此是隨機(jī)選擇的,因此兩次選擇同一個(gè)IDID的可能性就很小了。每個(gè)包的可能性就很小了。每個(gè)包包括兩個(gè)包括兩個(gè)TIDTID,發(fā)送者,發(fā)送者IDID和接收者和接收者IDID。這些。這些IDID用于在用于在UDPUDP通信時(shí)選擇端通信時(shí)選擇端口,在第一次請(qǐng)求的時(shí)候它會(huì)將請(qǐng)求發(fā)到口,在第一次請(qǐng)求的時(shí)候它會(huì)將請(qǐng)求發(fā)到TID 69TID 69,也就是服務(wù)器的,也就是服務(wù)器的6969端端口上。應(yīng)答時(shí),服務(wù)器使用一個(gè)選擇好的口上。應(yīng)答時(shí),服務(wù)器使用一個(gè)選擇好的TIDTID作為源作為源TIDTID,并用上一個(gè)包,并用上一個(gè)
16、包中的中的TIDTID作為目的作為目的IDID進(jìn)行發(fā)送。這兩個(gè)被選擇的進(jìn)行發(fā)送。這兩個(gè)被選擇的IDID在隨后的通信中會(huì)被在隨后的通信中會(huì)被一直使用。一直使用。下例是一個(gè)寫入的例子,其中下例是一個(gè)寫入的例子,其中WRQWRQ,ACKACK和和DATADATA代表寫入請(qǐng)代表寫入請(qǐng)求,確認(rèn)和數(shù)據(jù)。求,確認(rèn)和數(shù)據(jù)。1. 1. 主機(jī)主機(jī)A A向主機(jī)向主機(jī)B B發(fā)出發(fā)出WRQWRQ,其中端口為,其中端口為69692. B2. B機(jī)向機(jī)向A A機(jī)發(fā)出機(jī)發(fā)出ACKACK,塊號(hào)為,塊號(hào)為0 0,包括,包括B B和和A A的的TIDTID此時(shí)連接建立,第一個(gè)數(shù)據(jù)包以序列號(hào)此時(shí)連接建立,第一個(gè)數(shù)據(jù)包以序列號(hào)1 1從
17、主機(jī)開始發(fā)出。從主機(jī)開始發(fā)出。以后兩臺(tái)主機(jī)要保證以開始時(shí)確定的以后兩臺(tái)主機(jī)要保證以開始時(shí)確定的TIDTID進(jìn)行通信。如果源進(jìn)行通信。如果源IDID與原來確定的與原來確定的IDID不一樣,這個(gè)包會(huì)被認(rèn)識(shí)為發(fā)送到了錯(cuò)誤不一樣,這個(gè)包會(huì)被認(rèn)識(shí)為發(fā)送到了錯(cuò)誤的地址而被拋棄。設(shè)想發(fā)送方發(fā)出一個(gè)請(qǐng)求,這個(gè)請(qǐng)求在網(wǎng)的地址而被拋棄。設(shè)想發(fā)送方發(fā)出一個(gè)請(qǐng)求,這個(gè)請(qǐng)求在網(wǎng)絡(luò)的那個(gè)設(shè)備中被復(fù)制成兩個(gè)包,接收方先后接收到兩個(gè)絡(luò)的那個(gè)設(shè)備中被復(fù)制成兩個(gè)包,接收方先后接收到兩個(gè)包。接收方會(huì)認(rèn)為為這是兩個(gè)獨(dú)立的請(qǐng)求,會(huì)返回兩個(gè)應(yīng)包。接收方會(huì)認(rèn)為為這是兩個(gè)獨(dú)立的請(qǐng)求,會(huì)返回兩個(gè)應(yīng)答。當(dāng)這兩個(gè)應(yīng)答其中之一被接收到時(shí),連接已經(jīng)建
18、立。第答。當(dāng)這兩個(gè)應(yīng)答其中之一被接收到時(shí),連接已經(jīng)建立。第二個(gè)應(yīng)答再到達(dá)時(shí),這個(gè)包會(huì)被拋棄,而不會(huì)因?yàn)榻邮盏降诙€(gè)應(yīng)答再到達(dá)時(shí),這個(gè)包會(huì)被拋棄,而不會(huì)因?yàn)榻邮盏降诙€(gè)應(yīng)答包而導(dǎo)致第一個(gè)建立的連接失敗。二個(gè)應(yīng)答包而導(dǎo)致第一個(gè)建立的連接失敗。每個(gè)數(shù)據(jù)分組包含一個(gè)塊編號(hào)字段,它以后要在確認(rèn)分組中每個(gè)數(shù)據(jù)分組包含一個(gè)塊編號(hào)字段,它以后要在確認(rèn)分組中使用。以讀一個(gè)文件作為例子,使用。以讀一個(gè)文件作為例子,TFTPTFTP客戶需要發(fā)送一個(gè)讀請(qǐng)客戶需要發(fā)送一個(gè)讀請(qǐng)求說明要讀的文件名和文件模式求說明要讀的文件名和文件模式(mode)(mode)。如果這個(gè)文件能被。如果這個(gè)文件能被這個(gè)客戶讀取,這個(gè)客戶讀取,T
19、FTPTFTP服務(wù)器就返回一個(gè)塊編號(hào)為服務(wù)器就返回一個(gè)塊編號(hào)為1 1的數(shù)據(jù)分的數(shù)據(jù)分組。組。TFTPTFTP客戶又發(fā)送一個(gè)塊編號(hào)為客戶又發(fā)送一個(gè)塊編號(hào)為1 1的的ACKACK。TFTPTFTP服務(wù)器隨后服務(wù)器隨后發(fā)送塊編號(hào)為發(fā)送塊編號(hào)為2 2的數(shù)據(jù)。的數(shù)據(jù)。TFTPTFTP客戶發(fā)回塊編號(hào)為客戶發(fā)回塊編號(hào)為2 2的的ACKACK。重。重復(fù)這個(gè)過程直到這個(gè)文件傳送完。除了最后一個(gè)數(shù)據(jù)分組可復(fù)這個(gè)過程直到這個(gè)文件傳送完。除了最后一個(gè)數(shù)據(jù)分組可含有不足含有不足512512字節(jié)的數(shù)據(jù),其他每個(gè)數(shù)據(jù)分組均含有字節(jié)的數(shù)據(jù),其他每個(gè)數(shù)據(jù)分組均含有512512字節(jié)字節(jié)的數(shù)據(jù)。當(dāng)?shù)臄?shù)據(jù)。當(dāng)TFTPTFTP客戶收到
20、一個(gè)不足客戶收到一個(gè)不足512512字節(jié)的數(shù)據(jù)分組,就字節(jié)的數(shù)據(jù)分組,就知道它收到最后一個(gè)數(shù)據(jù)分組。知道它收到最后一個(gè)數(shù)據(jù)分組。在寫請(qǐng)求的情況下,在寫請(qǐng)求的情況下,TFTPTFTP客戶發(fā)送客戶發(fā)送WRQWRQ指明文件名和模指明文件名和模式。如果該文件能被該客戶寫,式。如果該文件能被該客戶寫,TFTPTFTP服務(wù)器就返回塊編號(hào)為服務(wù)器就返回塊編號(hào)為0 0的的ACKACK包。該客戶就將文件的頭包。該客戶就將文件的頭512512字節(jié)以塊編號(hào)為字節(jié)以塊編號(hào)為1 1發(fā)出。發(fā)出。服務(wù)器則返回塊編號(hào)為服務(wù)器則返回塊編號(hào)為1 1的的ACKACK。TFTPTFTP與文件傳輸協(xié)議與文件傳輸協(xié)議FTPFTP的比較的
21、比較1 1TFTPTFTP協(xié)議的優(yōu)勢(shì)協(xié)議的優(yōu)勢(shì)盡管盡管TFTPTFTP比比FTPFTP的功能要弱得多,但是的功能要弱得多,但是TFTPTFTP具有兩具有兩個(gè)優(yōu)點(diǎn):個(gè)優(yōu)點(diǎn):TFTPTFTP能夠用于那些有能夠用于那些有UDPUDP而無而無TCPTCP的環(huán)境。的環(huán)境。TFTPTFTP代碼所占的內(nèi)存要比代碼所占的內(nèi)存要比FTPFTP小。小。2 2TFTPTFTP協(xié)議與協(xié)議與FTPFTP協(xié)議的共同點(diǎn)協(xié)議的共同點(diǎn)兩個(gè)協(xié)議的作用大致相同,都是用于文件的傳輸,兩個(gè)協(xié)議的作用大致相同,都是用于文件的傳輸,可以實(shí)現(xiàn)網(wǎng)絡(luò)中兩臺(tái)計(jì)算機(jī)之間的文件上傳與下可以實(shí)現(xiàn)網(wǎng)絡(luò)中兩臺(tái)計(jì)算機(jī)之間的文件上傳與下載??梢詫⑤d??梢詫F
22、TPTFTP協(xié)議看做是協(xié)議看做是FTPFTP協(xié)議的簡(jiǎn)化版本。協(xié)議的簡(jiǎn)化版本。3 3TFTPTFTP協(xié)議與協(xié)議與FTPFTP協(xié)議的不同點(diǎn)協(xié)議的不同點(diǎn) 1)TFTP1)TFTP協(xié)議不需要認(rèn)證客戶端的權(quán)限,協(xié)議不需要認(rèn)證客戶端的權(quán)限,F(xiàn)TPFTP需要進(jìn)需要進(jìn)行客戶端認(rèn)證;行客戶端認(rèn)證; 2)TFTP2)TFTP協(xié)議一般多用于局域網(wǎng)以及遠(yuǎn)程協(xié)議一般多用于局域網(wǎng)以及遠(yuǎn)程UNIXUNIX計(jì)算計(jì)算機(jī)中,而常見的機(jī)中,而常見的FTPFTP協(xié)議則多用于互聯(lián)網(wǎng)中。協(xié)議則多用于互聯(lián)網(wǎng)中。 3)TFTP3)TFTP客戶與服務(wù)器之間的通信使用的是客戶與服務(wù)器之間的通信使用的是UDPUDP而非而非TCPTCP。 4)TF
23、TP4)TFTP只支持文件傳輸。也就是說,只支持文件傳輸。也就是說,TFTPTFTP不支持不支持交互,而且沒有一個(gè)龐大的命令集。最為重要的交互,而且沒有一個(gè)龐大的命令集。最為重要的是,是,TFTPTFTP不允許用戶列出目錄內(nèi)容或者與服務(wù)器不允許用戶列出目錄內(nèi)容或者與服務(wù)器協(xié)商來決定那些可得到的文件名。協(xié)商來決定那些可得到的文件名。引導(dǎo)協(xié)議引導(dǎo)協(xié)議BOOTPBOOTP(BOOTstrap ProtocolBOOTstrap Protocol)是)是TCP/IPTCP/IP協(xié)議族的應(yīng)用層協(xié)議,它的主要作用是使無協(xié)議族的應(yīng)用層協(xié)議,它的主要作用是使無盤站點(diǎn)從服務(wù)器上獲得引導(dǎo)信息。盤站點(diǎn)從服務(wù)器上獲得
24、引導(dǎo)信息。 動(dòng)態(tài)主機(jī)配置協(xié)議動(dòng)態(tài)主機(jī)配置協(xié)議DHCPDHCP(Dynamic Host Dynamic Host Configuration ProtocolConfiguration Protocol)是在)是在BOOTPBOOTP協(xié)議基礎(chǔ)上協(xié)議基礎(chǔ)上發(fā)展起來的協(xié)議,它使客戶機(jī)能夠在發(fā)展起來的協(xié)議,它使客戶機(jī)能夠在TCP/IPTCP/IP網(wǎng)絡(luò)獲網(wǎng)絡(luò)獲得相關(guān)的配置信息。得相關(guān)的配置信息。BOOTPBOOTP原理原理引導(dǎo)協(xié)議引導(dǎo)協(xié)議BOOTPBOOTP是針對(duì)網(wǎng)絡(luò)上無盤節(jié)點(diǎn)而設(shè)是針對(duì)網(wǎng)絡(luò)上無盤節(jié)點(diǎn)而設(shè)計(jì)的啟動(dòng)協(xié)議,無盤節(jié)點(diǎn)啟動(dòng)時(shí)它需要從網(wǎng)計(jì)的啟動(dòng)協(xié)議,無盤節(jié)點(diǎn)啟動(dòng)時(shí)它需要從網(wǎng)上獲得三種信息:上獲得
25、三種信息:自己的自己的IPIP地址地址文件服務(wù)器的文件服務(wù)器的IPIP地址地址可運(yùn)行的初始內(nèi)存印象(啟動(dòng)映象文件名)可運(yùn)行的初始內(nèi)存印象(啟動(dòng)映象文件名)利用利用RARPRARP只能獲得自己的只能獲得自己的IPIP地址。地址。 BOOTPBOOTP協(xié)議工作過程:協(xié)議工作過程: 1 1)由)由ROMROM芯片中的芯片中的BOOTPBOOTP啟動(dòng)代碼啟動(dòng)客戶機(jī),此時(shí)客啟動(dòng)代碼啟動(dòng)客戶機(jī),此時(shí)客戶機(jī)還沒有戶機(jī)還沒有IPIP地址,它便用有限廣播形式以地址,它便用有限廣播形式以的源的源IPIP地址向網(wǎng)絡(luò)中發(fā)出地址向網(wǎng)絡(luò)中發(fā)出BOOTPBOOTP請(qǐng)求,這個(gè)請(qǐng)求中包含了客戶請(qǐng)求,
26、這個(gè)請(qǐng)求中包含了客戶機(jī)網(wǎng)卡的機(jī)網(wǎng)卡的MACMAC地址。地址。 2 2)網(wǎng)絡(luò)中運(yùn)行)網(wǎng)絡(luò)中運(yùn)行BOOTPBOOTP服務(wù)的服務(wù)器接收到這個(gè)請(qǐng)求,服務(wù)的服務(wù)器接收到這個(gè)請(qǐng)求,根據(jù)請(qǐng)求中的根據(jù)請(qǐng)求中的MACMAC地址在地址在BOOTPBOOTP數(shù)據(jù)庫中查找這個(gè)數(shù)據(jù)庫中查找這個(gè)MACMAC的記的記錄,如果沒有此錄,如果沒有此MACMAC的記錄則不響應(yīng)這個(gè)請(qǐng)求,如果有就的記錄則不響應(yīng)這個(gè)請(qǐng)求,如果有就將有關(guān)信息發(fā)送回客戶機(jī)。返回的響應(yīng)中包含的主要信息將有關(guān)信息發(fā)送回客戶機(jī)。返回的響應(yīng)中包含的主要信息有客戶機(jī)的有客戶機(jī)的IPIP地址、服務(wù)器的地址、服務(wù)器的IPIP地址和啟動(dòng)映象文件名等地址和啟動(dòng)映象文件名等
27、信息。信息。 3 3)客戶機(jī)根據(jù)返回信息通過)客戶機(jī)根據(jù)返回信息通過TFTPTFTP服務(wù)器下載啟動(dòng)映象服務(wù)器下載啟動(dòng)映象文件,并啟動(dòng)該文件。文件,并啟動(dòng)該文件。客戶客戶68客戶客戶68服務(wù)器服務(wù)器67服務(wù)器服務(wù)器67請(qǐng)求請(qǐng)求應(yīng)答應(yīng)答UDPUDPUDPUDP如果服務(wù)器的應(yīng)答是通過廣播傳送的,同時(shí)客戶又選擇未用如果服務(wù)器的應(yīng)答是通過廣播傳送的,同時(shí)客戶又選擇未用的臨時(shí)端口,那么這些廣播也能被其他的主機(jī)中碰巧使用相的臨時(shí)端口,那么這些廣播也能被其他的主機(jī)中碰巧使用相同臨時(shí)端口的應(yīng)用進(jìn)程接收到。因此,采用隨機(jī)端口(即臨同臨時(shí)端口的應(yīng)用進(jìn)程接收到。因此,采用隨機(jī)端口(即臨時(shí)端口)對(duì)廣播來說是一個(gè)不好的選
28、擇。時(shí)端口)對(duì)廣播來說是一個(gè)不好的選擇。如果客戶也使用服務(wù)器的知名端口(如果客戶也使用服務(wù)器的知名端口( 6767)作為它的端口,)作為它的端口,那么網(wǎng)絡(luò)內(nèi)的所有服務(wù)器會(huì)被喚醒來查看每個(gè)廣播應(yīng)答(如那么網(wǎng)絡(luò)內(nèi)的所有服務(wù)器會(huì)被喚醒來查看每個(gè)廣播應(yīng)答(如果所有的服務(wù)器都被喚醒,它們將檢查操作碼,如果是一個(gè)果所有的服務(wù)器都被喚醒,它們將檢查操作碼,如果是一個(gè)應(yīng)答而不是請(qǐng)求,就不作處理)應(yīng)答而不是請(qǐng)求,就不作處理). .因此可以讓所有的客戶因此可以讓所有的客戶使用與服務(wù)器知名端口不同的同一知名端口。使用與服務(wù)器知名端口不同的同一知名端口。BOOTPBOOTP協(xié)議的實(shí)現(xiàn)要點(diǎn)如下:協(xié)議的實(shí)現(xiàn)要點(diǎn)如下: 1
29、 1)使用一個(gè)單獨(dú)的包交換信息;)使用一個(gè)單獨(dú)的包交換信息;使用超時(shí)重發(fā)機(jī)制,直到發(fā)送方收到應(yīng)答信息為止。使用超時(shí)重發(fā)機(jī)制,直到發(fā)送方收到應(yīng)答信息為止。 請(qǐng)求和應(yīng)答使用相同的包字段結(jié)構(gòu)格式;請(qǐng)求和應(yīng)答使用相同的包字段結(jié)構(gòu)格式;使用(最大可能長度的)固定長度的字段,以簡(jiǎn)化結(jié)使用(最大可能長度的)固定長度的字段,以簡(jiǎn)化結(jié)構(gòu)定義和分析的需要。構(gòu)定義和分析的需要。 2 2)客戶端廣播引導(dǎo)請(qǐng)求)客戶端廣播引導(dǎo)請(qǐng)求(boot request)(boot request)包,其包含客戶包,其包含客戶端的硬件地址,如果知道的話,還包含它的端的硬件地址,如果知道的話,還包含它的IPIP地址。地址。 3 3)請(qǐng)求
30、可以包含客戶端指定的響應(yīng)服務(wù)器的名稱。這樣)請(qǐng)求可以包含客戶端指定的響應(yīng)服務(wù)器的名稱。這樣客戶端可以強(qiáng)制一個(gè)指定的主機(jī)引導(dǎo)。如果一個(gè)相同的引客戶端可以強(qiáng)制一個(gè)指定的主機(jī)引導(dǎo)。如果一個(gè)相同的引導(dǎo)文件存在多種版本或服務(wù)器屬于一個(gè)遠(yuǎn)距離的網(wǎng)絡(luò)導(dǎo)文件存在多種版本或服務(wù)器屬于一個(gè)遠(yuǎn)距離的網(wǎng)絡(luò)/ /域,域,客戶端不必處理名稱客戶端不必處理名稱/ /域服務(wù),而是由域服務(wù),而是由BOOTPBOOTP服務(wù)器實(shí)現(xiàn)這服務(wù)器實(shí)現(xiàn)這種情況下的相應(yīng)功能。種情況下的相應(yīng)功能。 4 4) 請(qǐng)求可以包含通用請(qǐng)求可以包含通用(generic)(generic)引導(dǎo)文件名。例如引導(dǎo)文件名。例如unixunix。服務(wù)器發(fā)送引導(dǎo)應(yīng)答時(shí)
31、,它使用對(duì)應(yīng)的引導(dǎo)文。服務(wù)器發(fā)送引導(dǎo)應(yīng)答時(shí),它使用對(duì)應(yīng)的引導(dǎo)文件的確切路徑名稱來取代這個(gè)字段。件的確切路徑名稱來取代這個(gè)字段。 5 5) 服務(wù)器必須有一個(gè)硬件地址和服務(wù)器必須有一個(gè)硬件地址和IPIP地址對(duì)應(yīng)的數(shù)據(jù)庫。地址對(duì)應(yīng)的數(shù)據(jù)庫。此類客戶端此類客戶端IPIP地址被放在引導(dǎo)應(yīng)答的對(duì)應(yīng)字段中。地址被放在引導(dǎo)應(yīng)答的對(duì)應(yīng)字段中。 6 6) 某些網(wǎng)絡(luò)拓?fù)淇赡茉谝粋€(gè)物理網(wǎng)上沒有一個(gè)直接可某些網(wǎng)絡(luò)拓?fù)淇赡茉谝粋€(gè)物理網(wǎng)上沒有一個(gè)直接可以訪問的以訪問的TFTPTFTP服務(wù)器,服務(wù)器,BOOTPBOOTP允許客戶端通過使用相鄰的允許客戶端通過使用相鄰的網(wǎng)關(guān)從幾跳外的服務(wù)器上引導(dǎo)。網(wǎng)關(guān)從幾跳外的服務(wù)器上引導(dǎo)。
32、引導(dǎo)協(xié)議引導(dǎo)協(xié)議BOOTPBOOTP的特點(diǎn):的特點(diǎn): 1 1)BOOTPBOOTP協(xié)議基于協(xié)議基于UDPUDP,不和硬件直接打交道,易于,不和硬件直接打交道,易于 實(shí)現(xiàn)且移植性好;實(shí)現(xiàn)且移植性好; 2 2)協(xié)議交換的信息量較大,可以充分利用硬件的能)協(xié)議交換的信息量較大,可以充分利用硬件的能力。力。BOOTPBOOTP與與RARPRARP的比較:的比較:兩者工作模式相同,均采用請(qǐng)求兩者工作模式相同,均采用請(qǐng)求/ /應(yīng)答的客戶應(yīng)答的客戶-服務(wù)器服務(wù)器方式,從而具有很大的靈活性。方式,從而具有很大的靈活性。兩者不同之處:兩者不同之處:BOOTPBOOTP服務(wù)器是作為一個(gè)應(yīng)用程序而存服務(wù)器是作為一個(gè)
33、應(yīng)用程序而存在的,請(qǐng)求在的,請(qǐng)求/ /應(yīng)答報(bào)文在同一個(gè)應(yīng)答報(bào)文在同一個(gè)IPIP網(wǎng)絡(luò)內(nèi)實(shí)現(xiàn),易于修網(wǎng)絡(luò)內(nèi)實(shí)現(xiàn),易于修改和移植。而改和移植。而RARPRARP服務(wù)器存在于內(nèi)核中,請(qǐng)求服務(wù)器存在于內(nèi)核中,請(qǐng)求/ /應(yīng)答報(bào)應(yīng)答報(bào)文在同一個(gè)物理網(wǎng)絡(luò)內(nèi)實(shí)現(xiàn),修改和移植都很困難。文在同一個(gè)物理網(wǎng)絡(luò)內(nèi)實(shí)現(xiàn),修改和移植都很困難。10.2 BOOTP 報(bào)文報(bào)文BOOTP BOOTP 報(bào)文格式報(bào)文格式 BOOTPBOOTP協(xié)議有請(qǐng)求和應(yīng)答兩種報(bào)文協(xié)議有請(qǐng)求和應(yīng)答兩種報(bào)文, ,被封裝在被封裝在UDPUDP數(shù)據(jù)報(bào)中,如圖所示。數(shù)據(jù)報(bào)中,如圖所示。 該圖顯示了長度為該圖顯示了長度為300300字節(jié)的字節(jié)的BOOTPBOO
34、TP請(qǐng)求請(qǐng)求和應(yīng)答的格式。和應(yīng)答的格式。0 8 16 24 31 操作碼字段為操作碼字段為1 1表示請(qǐng)求,為表示請(qǐng)求,為2 2表示應(yīng)答。硬件類型字段為表示應(yīng)答。硬件類型字段為1 1表示表示10 Mb/s10 Mb/s的以太網(wǎng),這和的以太網(wǎng),這和ARPARP請(qǐng)求或應(yīng)答中同名字段表示的請(qǐng)求或應(yīng)答中同名字段表示的含義相同。類似地,對(duì)于以太網(wǎng),硬件地址長度字段為含義相同。類似地,對(duì)于以太網(wǎng),硬件地址長度字段為6 6字節(jié)。字節(jié)。 跳數(shù)字段由客戶設(shè)置為跳數(shù)字段由客戶設(shè)置為0 0 事務(wù)標(biāo)識(shí)字段是一個(gè)由客戶設(shè)置并由服務(wù)器返回的事務(wù)標(biāo)識(shí)字段是一個(gè)由客戶設(shè)置并由服務(wù)器返回的 32 bit32 bit整數(shù)??蛻粲盟?/p>
35、對(duì)請(qǐng)求和應(yīng)答進(jìn)行匹配。對(duì)每個(gè)請(qǐng)求,客戶應(yīng)整數(shù)??蛻粲盟鼘?duì)請(qǐng)求和應(yīng)答進(jìn)行匹配。對(duì)每個(gè)請(qǐng)求,客戶應(yīng)該將該字段設(shè)置為一個(gè)隨機(jī)數(shù)該將該字段設(shè)置為一個(gè)隨機(jī)數(shù) 客戶開始進(jìn)行引導(dǎo)時(shí),將客戶開始進(jìn)行引導(dǎo)時(shí),將“秒數(shù)秒數(shù)”字段設(shè)置為一個(gè)時(shí)間值。字段設(shè)置為一個(gè)時(shí)間值。服務(wù)器能夠看到這個(gè)時(shí)間值,備用服務(wù)器在等待時(shí)間超過這個(gè)服務(wù)器能夠看到這個(gè)時(shí)間值,備用服務(wù)器在等待時(shí)間超過這個(gè)時(shí)間值后才會(huì)響應(yīng)客戶的請(qǐng)求,這意味著主服務(wù)器沒有啟動(dòng)時(shí)間值后才會(huì)響應(yīng)客戶的請(qǐng)求,這意味著主服務(wù)器沒有啟動(dòng)如果該客戶已經(jīng)知道自身的如果該客戶已經(jīng)知道自身的IPIP地址,它將寫入地址,它將寫入“客戶客戶IPIP地址地址”字字段。否則,它將該字段設(shè)置
36、為段。否則,它將該字段設(shè)置為0 0。對(duì)于后面這種情況,服務(wù)器用。對(duì)于后面這種情況,服務(wù)器用該客戶的該客戶的IPIP地址寫入地址寫入“你的你的IPIP地址地址”字段。字段。 “ “服務(wù)器服務(wù)器IPIP地址地址”字段則由服務(wù)器填寫。字段則由服務(wù)器填寫。服務(wù)器主機(jī)名字段是一個(gè)空值終止串,由服務(wù)器填寫。服務(wù)器還服務(wù)器主機(jī)名字段是一個(gè)空值終止串,由服務(wù)器填寫。服務(wù)器還將在將在“引導(dǎo)文件名字段引導(dǎo)文件名字段”填入包括用于系統(tǒng)引導(dǎo)的文件名及其所填入包括用于系統(tǒng)引導(dǎo)的文件名及其所在位置的路徑全名。在位置的路徑全名。特定廠商區(qū)域字段用于對(duì)特定廠商區(qū)域字段用于對(duì)BOOTPBOOTP進(jìn)行不同的擴(kuò)展。進(jìn)行不同的擴(kuò)展。
37、特定廠商區(qū)域特定廠商區(qū)域如果有信息要提供,這個(gè)區(qū)域的前如果有信息要提供,這個(gè)區(qū)域的前4 4個(gè)字節(jié)被設(shè)置為個(gè)字節(jié)被設(shè)置為IPIP地址地址99。BOOTPBOOTP報(bào)文通過無連接報(bào)文通過無連接UDPUDP傳輸,其可靠性由應(yīng)用程序完成。主傳輸,其可靠性由應(yīng)用程序完成。主要處理步驟:要處理步驟:1 1客戶端傳送引導(dǎo)請(qǐng)求客戶端傳送引導(dǎo)請(qǐng)求客戶在第一次建立數(shù)據(jù)包前,把整個(gè)包的緩沖區(qū)清零;這將所客戶在第一次建立數(shù)據(jù)包前,把整個(gè)包的緩沖區(qū)清零;這將所有的字段設(shè)置成默認(rèn)狀態(tài)。有的字段設(shè)置成默認(rèn)狀態(tài)。IPIP目的地址被設(shè)置成目的地址被設(shè)置成55
38、55(廣播地址)或服務(wù)器(廣播地址)或服務(wù)器的的IPIP地址。地址。IPIP源地址設(shè)置成客戶端源地址設(shè)置成客戶端IPIP地址,如果此時(shí)客戶端地址,如果此時(shí)客戶端IPIP地址未知,地址未知,則置為則置為0 0。UDPUDP頭使用適當(dāng)?shù)拈L度設(shè)置,源端口設(shè)置為頭使用適當(dāng)?shù)拈L度設(shè)置,源端口設(shè)置為BOOTPBOOTP客戶端端口客戶端端口6868,目標(biāo)端口設(shè)置為,目標(biāo)端口設(shè)置為BOOTPBOOTP服務(wù)器端口服務(wù)器端口6767。 操作碼字段設(shè)置成操作碼字段設(shè)置成1 1,表示引導(dǎo)請(qǐng)求。,表示引導(dǎo)請(qǐng)求。 硬件類型字段設(shè)置成所在物理網(wǎng)絡(luò)硬件地址類型。硬件類型字段設(shè)置成所在物理網(wǎng)絡(luò)硬件地址
39、類型。 硬件地址長度設(shè)置成硬件地址長度,例如,以太網(wǎng)是硬件地址長度設(shè)置成硬件地址長度,例如,以太網(wǎng)是66。事務(wù)標(biāo)識(shí)字段設(shè)置成一個(gè)。事務(wù)標(biāo)識(shí)字段設(shè)置成一個(gè) 隨機(jī)隨機(jī) 事務(wù)事務(wù)IDID。 秒數(shù)字段設(shè)置成客戶端引導(dǎo)開始后過去的秒數(shù)。設(shè)置這秒數(shù)字段設(shè)置成客戶端引導(dǎo)開始后過去的秒數(shù)。設(shè)置這個(gè)數(shù)值是為了讓服務(wù)器知道客戶端已經(jīng)嘗試的時(shí)間多少。個(gè)數(shù)值是為了讓服務(wù)器知道客戶端已經(jīng)嘗試的時(shí)間多少。 客戶客戶IPIP地址字段和地址字段和IPIP源地址值相同。源地址值相同。 客戶硬件地址字段根據(jù)客戶端硬件地址填寫??蛻粲布刂纷侄胃鶕?jù)客戶端硬件地址填寫。 如果客戶端希望限制從一個(gè)特定服務(wù)器引導(dǎo),就可以在如果客戶端希望
40、限制從一個(gè)特定服務(wù)器引導(dǎo),就可以在服務(wù)器服務(wù)器IPIP地址字段和服務(wù)器主機(jī)名字段中填寫相應(yīng)內(nèi)容。地址字段和服務(wù)器主機(jī)名字段中填寫相應(yīng)內(nèi)容。 客戶端在填寫引導(dǎo)文件名字段時(shí)有以下幾種選擇:客戶端在填寫引導(dǎo)文件名字段時(shí)有以下幾種選擇: 1 1)設(shè)置成空,即使用默認(rèn)的文件來引導(dǎo)。)設(shè)置成空,即使用默認(rèn)的文件來引導(dǎo)。 2 2)這個(gè)字段也可以是一般常用的名字,例如)這個(gè)字段也可以是一般常用的名字,例如unixunix。 3 3)這個(gè)字段還可以是具體的目錄路徑名字)這個(gè)字段還可以是具體的目錄路徑名字2 2客戶端重傳客戶端重傳BOOTPBOOTP報(bào)文通過重傳策略實(shí)現(xiàn)可靠性,主要依靠重傳技術(shù)。報(bào)文通過重傳策略實(shí)
41、現(xiàn)可靠性,主要依靠重傳技術(shù)。在一長段時(shí)間內(nèi)沒有收到應(yīng)答,客戶端應(yīng)該重傳請(qǐng)求。在一長段時(shí)間內(nèi)沒有收到應(yīng)答,客戶端應(yīng)該重傳請(qǐng)求。時(shí)間間隔必須仔細(xì)選擇不要引起網(wǎng)絡(luò)擁塞。時(shí)間間隔必須仔細(xì)選擇不要引起網(wǎng)絡(luò)擁塞。BOOTPBOOTP推薦延遲推薦延遲一個(gè)隨機(jī)時(shí)間一個(gè)隨機(jī)時(shí)間(0-4(0-4秒秒) )。每次重傳前,客戶端應(yīng)該修改秒數(shù)字段。每次重傳前,客戶端應(yīng)該修改秒數(shù)字段。3 3服務(wù)器接收引導(dǎo)請(qǐng)求服務(wù)器接收引導(dǎo)請(qǐng)求如果如果UDPUDP目的端口不匹配目的端口不匹配BOOTPBOOTP服務(wù)器端口,則丟棄數(shù)據(jù)包。服務(wù)器端口,則丟棄數(shù)據(jù)包。如果服務(wù)器名字字段是空(沒有指定特定的服務(wù)器),或者如果服務(wù)器名字字段是空(沒
42、有指定特定的服務(wù)器),或者該字段是指定的并且匹配服務(wù)器名字或別名,繼續(xù)包的處該字段是指定的并且匹配服務(wù)器名字或別名,繼續(xù)包的處理。理。如果服務(wù)器名字字段是指定的,但不匹配本服務(wù)器,則有多如果服務(wù)器名字字段是指定的,但不匹配本服務(wù)器,則有多種選擇:種選擇: 1 1)可以選擇簡(jiǎn)單丟棄這個(gè)包。)可以選擇簡(jiǎn)單丟棄這個(gè)包。 2 2)如果通過查詢服務(wù)器名字字段名稱,顯示其在某網(wǎng)絡(luò))如果通過查詢服務(wù)器名字字段名稱,顯示其在某網(wǎng)絡(luò)中,可以丟棄這個(gè)包,你也可以選擇轉(zhuǎn)發(fā)這個(gè)包到那個(gè)地中,可以丟棄這個(gè)包,你也可以選擇轉(zhuǎn)發(fā)這個(gè)包到那個(gè)地址。址。轉(zhuǎn)發(fā):檢查網(wǎng)關(guān)地址字段。如果其值為轉(zhuǎn)發(fā):檢查網(wǎng)關(guān)地址字段。如果其值為0 0
43、,填入本服務(wù),填入本服務(wù)器地址或可以用來到達(dá)那個(gè)網(wǎng)絡(luò)的網(wǎng)關(guān)的地址。然后器地址或可以用來到達(dá)那個(gè)網(wǎng)絡(luò)的網(wǎng)關(guān)的地址。然后轉(zhuǎn)發(fā)這個(gè)包。轉(zhuǎn)發(fā)這個(gè)包。如果客戶端如果客戶端IPIP地址是地址是0 0,那么客戶端不知道自己的,那么客戶端不知道自己的IPIP地址,地址,此時(shí),在本服務(wù)器的數(shù)據(jù)庫中查找客戶端的硬件地址。如果此時(shí),在本服務(wù)器的數(shù)據(jù)庫中查找客戶端的硬件地址。如果找到該客戶端找到該客戶端IPIP地址,便填入你的地址,便填入你的IPIP地址字段。如果沒有匹地址字段。如果沒有匹配,則丟棄數(shù)據(jù)包。配,則丟棄數(shù)據(jù)包。接著檢查引導(dǎo)文件名字段。接著檢查引導(dǎo)文件名字段。1 1)如果客戶端不關(guān)注文件名或想要默認(rèn)引導(dǎo)文
44、件,則這個(gè))如果客戶端不關(guān)注文件名或想要默認(rèn)引導(dǎo)文件,則這個(gè)字段是空。字段是空。2 2)當(dāng)這個(gè)字段非空,可以將它和客戶端的)當(dāng)這個(gè)字段非空,可以將它和客戶端的IPIP地址做為數(shù)據(jù)地址做為數(shù)據(jù)庫的查詢關(guān)鍵字。庫的查詢關(guān)鍵字。如果有默認(rèn)的文件或通用文件或一個(gè)匹配的指定的路徑名如果有默認(rèn)的文件或通用文件或一個(gè)匹配的指定的路徑名稱,就在引導(dǎo)文件名字段中填入選擇的引導(dǎo)文件的指定的稱,就在引導(dǎo)文件名字段中填入選擇的引導(dǎo)文件的指定的路徑名稱。路徑名稱。如果引導(dǎo)文件名字段是非空并且沒有匹配,那么客戶端要如果引導(dǎo)文件名字段是非空并且沒有匹配,那么客戶端要一個(gè)本服務(wù)器沒有的文件,丟棄這個(gè)包。一個(gè)本服務(wù)器沒有的文件
45、,丟棄這個(gè)包。4.4.客戶端接收應(yīng)答客戶端接收應(yīng)答客戶端丟棄以下的包:客戶端丟棄以下的包:UDPUDP相關(guān)的端口不是引導(dǎo)定位端口相關(guān)的端口不是引導(dǎo)定位端口不是不是BOOTPBOOTP引導(dǎo)應(yīng)答引導(dǎo)應(yīng)答不匹配客戶端自己不匹配客戶端自己IPIP地址或硬件地址地址或硬件地址不匹配客戶端自己發(fā)出的事務(wù)標(biāo)識(shí)不匹配客戶端自己發(fā)出的事務(wù)標(biāo)識(shí)IDID除這些以外,客戶端便收到一個(gè)成功的應(yīng)答。除這些以外,客戶端便收到一個(gè)成功的應(yīng)答。如果客戶端以前不知道自己如果客戶端以前不知道自己IPIP地址,查詢相關(guān)地址,查詢相關(guān)IPIP地址字段便地址字段便知道自己的知道自己的IPIP地址。地址。5 5通過網(wǎng)關(guān)引導(dǎo)通過網(wǎng)關(guān)引導(dǎo)偵聽
46、偵聽BOOTPBOOTP引導(dǎo)請(qǐng)求廣播的網(wǎng)關(guān)可能確定轉(zhuǎn)發(fā)這些請(qǐng)求。引導(dǎo)請(qǐng)求廣播的網(wǎng)關(guān)可能確定轉(zhuǎn)發(fā)這些請(qǐng)求。轉(zhuǎn)發(fā)立即開始轉(zhuǎn)發(fā)立即開始等客戶端確定的秒數(shù)字段超過某個(gè)閥值。等客戶端確定的秒數(shù)字段超過某個(gè)閥值。當(dāng)一個(gè)網(wǎng)關(guān)確定轉(zhuǎn)發(fā)請(qǐng)求時(shí),網(wǎng)關(guān)當(dāng)一個(gè)網(wǎng)關(guān)確定轉(zhuǎn)發(fā)請(qǐng)求時(shí),網(wǎng)關(guān)IPIP地址字段如果是地址字段如果是0 0,它,它就在這個(gè)字段中加入自己的就在這個(gè)字段中加入自己的IPIP地址。也可以使用跳數(shù)字段來地址。也可以使用跳數(shù)字段來可控制包可以轉(zhuǎn)發(fā)多遠(yuǎn),每次轉(zhuǎn)發(fā)應(yīng)該增加跳數(shù),以便決定可控制包可以轉(zhuǎn)發(fā)多遠(yuǎn),每次轉(zhuǎn)發(fā)應(yīng)該增加跳數(shù),以便決定何時(shí)終止轉(zhuǎn)發(fā)。何時(shí)終止轉(zhuǎn)發(fā)。啟動(dòng)配置文件啟動(dòng)配置文件IPIP地址是地址是IPI
47、P網(wǎng)絡(luò)上唯一標(biāo)識(shí)一個(gè)接入終端最原始和最有效的網(wǎng)絡(luò)上唯一標(biāo)識(shí)一個(gè)接入終端最原始和最有效的標(biāo)識(shí)符。標(biāo)識(shí)符。分配分配IPIP地址的方法:地址的方法:自協(xié)商方式自協(xié)商方式用戶自己靜態(tài)配置用戶自己靜態(tài)配置管理員統(tǒng)一分配配置等方式管理員統(tǒng)一分配配置等方式 更重要的是:很多終端啟動(dòng)時(shí)不僅需要更重要的是:很多終端啟動(dòng)時(shí)不僅需要IPIP地址,而且還需要地址,而且還需要?jiǎng)討B(tài)地獲取更多的啟動(dòng)配置信息。動(dòng)態(tài)地獲取更多的啟動(dòng)配置信息。以協(xié)議機(jī)制工作的配置方式以協(xié)議機(jī)制工作的配置方式BOOTPBOOTP是最早的主機(jī)配置協(xié)議。是最早的主機(jī)配置協(xié)議。BOOTPBOOTP服務(wù)器上有一個(gè)關(guān)服務(wù)器上有一個(gè)關(guān)于本網(wǎng)絡(luò)上各無盤結(jié)點(diǎn)的啟
48、動(dòng)配置文件。于本網(wǎng)絡(luò)上各無盤結(jié)點(diǎn)的啟動(dòng)配置文件。BOOTPBOOTP請(qǐng)求的引導(dǎo)文件名字段中填入請(qǐng)求的引導(dǎo)文件名字段中填入“UNIX”UNIX”等通用名稱,等通用名稱,服務(wù)器收到請(qǐng)求后,從啟動(dòng)配置文件中查找,當(dāng)找出適合于服務(wù)器收到請(qǐng)求后,從啟動(dòng)配置文件中查找,當(dāng)找出適合于該客戶硬件體系結(jié)構(gòu)的啟動(dòng)文件名,便填入該客戶硬件體系結(jié)構(gòu)的啟動(dòng)文件名,便填入BOOTPBOOTP響應(yīng)中響應(yīng)中同一域,返回客戶機(jī)。同一域,返回客戶機(jī)。采用啟動(dòng)配置文件有兩大優(yōu)點(diǎn):采用啟動(dòng)配置文件有兩大優(yōu)點(diǎn): 1 1)管理員可以對(duì)客戶機(jī)的引導(dǎo)文件進(jìn)行配置。)管理員可以對(duì)客戶機(jī)的引導(dǎo)文件進(jìn)行配置。 2 2)方便客戶機(jī)用戶,使他們不必記
49、住確切的引導(dǎo)文件名,)方便客戶機(jī)用戶,使他們不必記住確切的引導(dǎo)文件名,也不必記住客戶機(jī)的硬件結(jié)構(gòu)。也不必記住客戶機(jī)的硬件結(jié)構(gòu)。 BOOTPBOOTP用于相對(duì)靜態(tài)環(huán)境,每個(gè)主機(jī)都有一個(gè)永久的網(wǎng)絡(luò)連用于相對(duì)靜態(tài)環(huán)境,每個(gè)主機(jī)都有一個(gè)永久的網(wǎng)絡(luò)連接,管理人員創(chuàng)建一個(gè)接,管理人員創(chuàng)建一個(gè)BOOTPBOOTP配置文件來定義每個(gè)主機(jī)的配置文件來定義每個(gè)主機(jī)的BOOTPBOOTP參數(shù)。在計(jì)算機(jī)經(jīng)常移動(dòng)和實(shí)際計(jì)算機(jī)數(shù)目超過了可獲得的參數(shù)。在計(jì)算機(jī)經(jīng)常移動(dòng)和實(shí)際計(jì)算機(jī)數(shù)目超過了可獲得的IPIP地址時(shí),這種靜態(tài)映射就不適用了。地址時(shí),這種靜態(tài)映射就不適用了。 為此,發(fā)展了為此,發(fā)展了DHCPDHCP協(xié)議,協(xié)議,D
50、HCPDHCP協(xié)議兼容協(xié)議兼容BOOTPBOOTP協(xié)議。協(xié)議。DHCPDHCP從兩個(gè)方式上擴(kuò)充了從兩個(gè)方式上擴(kuò)充了BOOTPBOOTP: 1 1)DHCPDHCP可使計(jì)算機(jī)獲取它所需要的所有配置信息。可使計(jì)算機(jī)獲取它所需要的所有配置信息。2 2)DHCPDHCP允許計(jì)算機(jī)快速動(dòng)態(tài)的獲取允許計(jì)算機(jī)快速動(dòng)態(tài)的獲取IPIP地址。地址。DHCPDHCP支持三種類型的地址分配:支持三種類型的地址分配: 1 1)自動(dòng)分配:)自動(dòng)分配:DHCPDHCP給主機(jī)指定一個(gè)永久的給主機(jī)指定一個(gè)永久的IPIP地址;地址; 2 2)動(dòng)態(tài)分配:主機(jī))動(dòng)態(tài)分配:主機(jī)IPIP地址的動(dòng)態(tài)性表現(xiàn)在,被分地址的動(dòng)態(tài)性表現(xiàn)在,被分配
51、的配的IPIP地址有時(shí)間限制或自己可以明確表示放棄地址有時(shí)間限制或自己可以明確表示放棄本地址。本地址。 3 3)手工分配:網(wǎng)絡(luò)管理員按照)手工分配:網(wǎng)絡(luò)管理員按照DHCPDHCP規(guī)則,將指定規(guī)則,將指定IPIP地址分配給主機(jī)。地址分配給主機(jī)。動(dòng)態(tài)分配:自動(dòng)重用地址的機(jī)制。這種方法適合于動(dòng)態(tài)分配:自動(dòng)重用地址的機(jī)制。這種方法適合于臨時(shí)上網(wǎng)用戶,而且在網(wǎng)絡(luò)的臨時(shí)上網(wǎng)用戶,而且在網(wǎng)絡(luò)的IPIP地址資源不是很多地址資源不是很多的時(shí)候特別有用。的時(shí)候特別有用。DHCP基本概念基本概念動(dòng)態(tài)主機(jī)配置協(xié)議動(dòng)態(tài)主機(jī)配置協(xié)議DHCPDHCP是在是在TCP/IPTCP/IP網(wǎng)絡(luò)上使客戶機(jī)獲網(wǎng)絡(luò)上使客戶機(jī)獲得配置信息
52、的協(xié)議。得配置信息的協(xié)議。下圖表示典型下圖表示典型DHCPDHCP網(wǎng)絡(luò)。網(wǎng)絡(luò)。 DHCP 服務(wù)器服務(wù)器 本地網(wǎng)絡(luò)本地網(wǎng)絡(luò) DHCP 客戶機(jī)客戶機(jī) B DHCP 客戶機(jī)客戶機(jī) C DHCP 客戶機(jī)客戶機(jī) A IP 地址數(shù)據(jù)庫地址數(shù)據(jù)庫 DHCP DHCP信息包的格式是基于信息包的格式是基于BOOTPBOOTP包格式的。不同:標(biāo)志位(包格式的。不同:標(biāo)志位(1 1強(qiáng)迫服務(wù)器以廣播應(yīng)答)強(qiáng)迫服務(wù)器以廣播應(yīng)答)選項(xiàng)變長選項(xiàng)變長 操操作作碼碼 硬硬件件類類型型 硬硬件件長長度度 跳跳數(shù)數(shù) 交交易易I ID D 秒秒數(shù)數(shù) 標(biāo)標(biāo)志志位位 未未用用 客客戶戶I IP P地地址址 你你的的I IP P地地址址
53、服服務(wù)務(wù)器器I IP P地地址址 網(wǎng)網(wǎng)關(guān)關(guān)I IP P地地址址 客客戶戶硬硬件件地地址址( (1 16 6字字節(jié)節(jié)) ) 服服務(wù)務(wù)器器名名( (6 64 4字字節(jié)節(jié)) ) 啟啟動(dòng)動(dòng)文文件件名名( (1 12 28 8字字節(jié)節(jié)) ) 選選項(xiàng)項(xiàng)( (變變長長) ) 額外的額外的DHCP選項(xiàng):選項(xiàng): 1 DHCPDISCOVER 1 DHCPDISCOVER客戶客戶服務(wù)器服務(wù)器2 DHCPOFFER2 DHCPOFFER服務(wù)器服務(wù)器客戶客戶 3 DHCPREQUEST 3 DHCPREQUEST 客戶客戶服務(wù)器服務(wù)器 4 DHCPDECLINE 4 DHCPDECLINE客戶客戶服務(wù)器服務(wù)器5 DH
54、CPACK5 DHCPACK服務(wù)器服務(wù)器客戶客戶 6 DHCPNAK 6 DHCPNAK服務(wù)器服務(wù)器客戶客戶 7 DHCPRELEASE 7 DHCPRELEASE客戶客戶服務(wù)器服務(wù)器 8 DHCPINFORM 8 DHCPINFORM客戶客戶服務(wù)器服務(wù)器使用使用DHCPDHCP的好處:的好處: 1 1安全而可靠的設(shè)置安全而可靠的設(shè)置 DHCPDHCP避免了因手工設(shè)置避免了因手工設(shè)置IPIP地址及子網(wǎng)掩碼所產(chǎn)生的錯(cuò)誤,地址及子網(wǎng)掩碼所產(chǎn)生的錯(cuò)誤,同時(shí)也避免了把一個(gè)同時(shí)也避免了把一個(gè)IPIP地址分配給多臺(tái)工作站所造成的地地址分配給多臺(tái)工作站所造成的地址沖突。址沖突。 2 2降低了管理降低了管理I
55、PIP地址設(shè)置的負(fù)擔(dān)地址設(shè)置的負(fù)擔(dān) 使用使用DHCPDHCP服務(wù)器大大縮短了配置或重新配置網(wǎng)絡(luò)中工作服務(wù)器大大縮短了配置或重新配置網(wǎng)絡(luò)中工作站所花費(fèi)的時(shí)間,通過對(duì)站所花費(fèi)的時(shí)間,通過對(duì)DHCPDHCP服務(wù)器的設(shè)置可靈活的設(shè)置服務(wù)器的設(shè)置可靈活的設(shè)置地址的租期。地址的租期。DHCPDHCP地址租約的更新過程將有助于確定哪個(gè)客戶的設(shè)置需地址租約的更新過程將有助于確定哪個(gè)客戶的設(shè)置需要經(jīng)常更新,且這些變更由客戶機(jī)與要經(jīng)常更新,且這些變更由客戶機(jī)與DHCPDHCP服務(wù)器自動(dòng)完成,服務(wù)器自動(dòng)完成,無需網(wǎng)絡(luò)管理員人工干預(yù)。無需網(wǎng)絡(luò)管理員人工干預(yù)。 節(jié)約節(jié)約IPIP地址資源地址資源 DHCPDHCP服務(wù)器運(yùn)
56、行機(jī)制服務(wù)器運(yùn)行機(jī)制DHCP DHCP 服務(wù)器行為由服務(wù)器行為由DHCPDHCP客戶端來驅(qū)動(dòng),根據(jù)客戶端來驅(qū)動(dòng),根據(jù)DHCPDHCP客戶機(jī)請(qǐng)客戶機(jī)請(qǐng)求報(bào)文發(fā)出響應(yīng)報(bào)文:求報(bào)文發(fā)出響應(yīng)報(bào)文: 1 1)如果收到)如果收到DHCPDISCOVERDHCPDISCOVER報(bào)文,則從地址池中分配一個(gè)空?qǐng)?bào)文,則從地址池中分配一個(gè)空閑閑IPIP,結(jié)合客戶機(jī)請(qǐng)求參數(shù),構(gòu)造,結(jié)合客戶機(jī)請(qǐng)求參數(shù),構(gòu)造DHCPOFFERDHCPOFFER響應(yīng)報(bào)文。響應(yīng)報(bào)文。 2 2)如果收到)如果收到DHCPREQUESTDHCPREQUEST報(bào)文,就會(huì)根據(jù)客戶機(jī)的硬件地報(bào)文,就會(huì)根據(jù)客戶機(jī)的硬件地址,查找其地址分配表,如若找到則響應(yīng)址,查找其地
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 生態(tài)經(jīng)濟(jì)在農(nóng)業(yè)現(xiàn)代化的作用
- 現(xiàn)代文閱讀教學(xué)策略研究進(jìn)展匯報(bào)-探索教育新紀(jì)元
- 生產(chǎn)現(xiàn)場(chǎng)的人性化管理與實(shí)踐
- 現(xiàn)代辦公環(huán)境下的金融服務(wù)優(yōu)化
- 公路交通安全設(shè)施施工方案
- 2023三年級(jí)數(shù)學(xué)下冊(cè) 六 認(rèn)識(shí)分?jǐn)?shù)第4課時(shí) 分一分(二)(2)說課稿 北師大版
- 2024年九年級(jí)語文下冊(cè) 第三單元 第11課 送東陽馬生序說課稿 新人教版001
- 2023四年級(jí)數(shù)學(xué)上冊(cè) 一 認(rèn)識(shí)更大的數(shù)第4課時(shí) 國土面積說課稿 北師大版001
- Unit 2 Lesson 4 Againplease(說課稿)-2024-2025學(xué)年魯科版(五四學(xué)制)(三起)英語五年級(jí)上冊(cè)001
- 《2 叢林之美-電子相冊(cè)制作》說課稿-2023-2024學(xué)年清華版(2012)信息技術(shù)六年級(jí)上冊(cè)
- 最終稿(教學(xué)評(píng)一致)課件
- 每個(gè)孩子都能像花兒一樣開放
- 2023年廣東省深圳市八年級(jí)下學(xué)期物理期中考試試卷
- 《詩詞寫作常識(shí) 詩詞中國普及讀物 》讀書筆記思維導(dǎo)圖
- YS/T 34.1-2011高純砷化學(xué)分析方法電感耦合等離子體質(zhì)譜法(ICP-MS)測(cè)定高純砷中雜質(zhì)含量
- LY/T 2016-2012陸生野生動(dòng)物廊道設(shè)計(jì)技術(shù)規(guī)程
- 單縣煙草專賣局QC課題多維度降低行政處罰文書出錯(cuò)率
- 健康養(yǎng)生課件
- 混雜控制系統(tǒng)課件
- 運(yùn)動(dòng)技能學(xué)習(xí)原理課件
- 《QHSE體系培訓(xùn)》課件
評(píng)論
0/150
提交評(píng)論