国产成人精品三级麻豆,色综合天天综合高清网,亚洲精品夜夜夜,国产成人综合在线女婷五月99播放,色婷婷色综合激情国产日韩

當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > tftp文件傳輸協(xié)議詳解

tftp文件傳輸協(xié)議詳解 時(shí)間:2018-07-30      來源:未知

TFTP是一個(gè)傳輸文件的簡單協(xié)議,它基于UDP協(xié)議而實(shí)現(xiàn),但是我們也不能確定有些TFTP協(xié)議是基于其它傳輸協(xié)議完成的。

此協(xié)議設(shè)計(jì)的時(shí)候是進(jìn)行小文件傳輸?shù)。因此它不具備通常的FTP的許多功能,它只能從文件服務(wù)器上獲得或?qū)懭胛募?/p>

不能列出目錄,不進(jìn)行認(rèn)證,它傳輸8位數(shù)據(jù)。傳輸中有三種模式:netascii,這是8位的ASCII碼形式,另一種是octet,

這是8位源數(shù)據(jù)類型;最后一種mail已經(jīng)不再支持,它將返回的數(shù)據(jù)直接返回給用戶而不是保存為文件。

任何傳輸起自一個(gè)讀取或?qū)懭胛募恼?qǐng)求,這個(gè)請(qǐng)求也是連接請(qǐng)求。如果服務(wù)器批準(zhǔn)此請(qǐng)求,則服務(wù)器打開連接,

數(shù)據(jù)以定長512字節(jié)傳輸。每個(gè)數(shù)據(jù)包包括一塊數(shù)據(jù),服務(wù)器發(fā)出下一個(gè)數(shù)據(jù)包以前必須得到客戶對(duì)上一個(gè)數(shù)據(jù)包的確認(rèn)。

如果一個(gè)數(shù)據(jù)包的大小小于512字節(jié),則表示傳輸結(jié)束。如果數(shù)據(jù)包在傳輸過程中丟失,

發(fā)出方會(huì)在超時(shí)后重新傳輸最后一個(gè)未被確認(rèn)的數(shù)據(jù)包。通信的雙方都是數(shù)據(jù)的發(fā)出者與接收者,一方傳輸數(shù)據(jù)接收應(yīng)答,

另一方發(fā)出應(yīng)答接收數(shù)據(jù)。大部分的錯(cuò)誤會(huì)導(dǎo)致連接中斷,錯(cuò)誤由一個(gè)錯(cuò)誤的數(shù)據(jù)包引起。這個(gè)包不會(huì)被確認(rèn),

也不會(huì)被重新發(fā)送,因此另一方無法接收到。如果錯(cuò)誤包丟失,則使用超時(shí)機(jī)制。錯(cuò)誤主要是由下面三種情況引起的:

不能滿足請(qǐng)求,收到的數(shù)據(jù)包內(nèi)容錯(cuò)誤,而這種錯(cuò)誤不能由延時(shí)或重發(fā)解釋,對(duì)需要資源的訪問丟失(如硬盤滿)。

TFTP只在一種情況下不中斷連接,這種情況是源端口不正確,在這種情況下,指示錯(cuò)誤的包會(huì)被發(fā)送到源機(jī)。

這個(gè)協(xié)議限制很多,這些都是為了實(shí)現(xiàn)起來比較方便而進(jìn)行的。

TFTP是一個(gè)簡單的協(xié)議,適合于只讀存儲(chǔ)器,僅用于無盤系統(tǒng)進(jìn)行系統(tǒng)引導(dǎo),它只使用幾種報(bào)文格式,是一種停止等待協(xié)議

特點(diǎn):

1、簡單

2、占用資源小

3、適合傳遞小文件

4、適合在局域網(wǎng)進(jìn)行傳遞

5、端口號(hào)為69

6、基于UDP實(shí)現(xiàn)

缺陷:

TFTP分組中并不提供用戶名和口令。這是TFTP的一個(gè)特性(即"安全漏洞")。由于TFTP是設(shè)計(jì)用于系統(tǒng)引導(dǎo)進(jìn)程,它不可能提供用戶名和口令。

目前大多數(shù)TFTP服務(wù)器提供了一個(gè)選項(xiàng)來限制只能訪問特定目錄下的文件,這個(gè)目錄中只包含無盤系統(tǒng)進(jìn)行系統(tǒng)引導(dǎo)時(shí)所需的文件

當(dāng)服務(wù)器找到需要現(xiàn)在的文件后,會(huì)立刻打開文件,把文件中的數(shù)據(jù)通過TFTP協(xié)議發(fā)送給客戶端

如果文件的總大小較大(比如3M),那么服務(wù)器分多次發(fā)送,每次會(huì)從文件中讀取512個(gè)字節(jié)的數(shù)據(jù)發(fā)送過來

因?yàn)榘l(fā)送的次數(shù)有可能會(huì)很多,所以為了讓客戶端對(duì)接收到的數(shù)據(jù)進(jìn)行排序,所以在服務(wù)器發(fā)送那512個(gè)字節(jié)數(shù)據(jù)的時(shí)候,會(huì)多發(fā)2個(gè)字節(jié)的數(shù)據(jù),用來存放序號(hào),并且放在512個(gè)字節(jié)數(shù)據(jù)的前面,序號(hào)是從1開始的

因?yàn)樾枰獜姆⻊?wù)器上下載文件時(shí),文件可能不存在,那么此時(shí)服務(wù)器就會(huì)發(fā)送一個(gè)錯(cuò)誤的信息過來,為了區(qū)分服務(wù)發(fā)送的是文件內(nèi)容還是錯(cuò)誤的提示信息,所以又用了2個(gè)字節(jié) 來表示這個(gè)數(shù)據(jù)包的功能(稱為操作碼),并且在序號(hào)的前面。

為了允許多個(gè)客戶端同時(shí)進(jìn)行系統(tǒng)引導(dǎo),TFTP服務(wù)器必須提供一定形式的并發(fā)。因?yàn)閁DP在一個(gè)客戶與一個(gè)服務(wù)器之間并不提供唯一連接,TFTP服務(wù)通過對(duì)每個(gè)客戶提供一個(gè)新的UDP端口來提供并發(fā)。這樣允許不同的客戶輸入數(shù)據(jù)報(bào),然后由服務(wù)器中的UDP模塊根據(jù)目的端口號(hào)進(jìn)行區(qū)分,而不是由服務(wù)器本身來進(jìn)行區(qū)分。

因?yàn)閡dp的數(shù)據(jù)包不安全,即發(fā)送方發(fā)送是否成功不能確定,所以TFTP協(xié)議中規(guī)定,為了讓服務(wù)器知道客戶端已經(jīng)接收到了剛剛發(fā)送的那個(gè)數(shù)據(jù)包,所以當(dāng)客戶端接收到一個(gè)數(shù)據(jù)包的時(shí)候需要向服務(wù)器進(jìn)行發(fā)送確認(rèn)信息,即發(fā)送收到了,這樣的包成為ACK(應(yīng)答包)

為了標(biāo)記數(shù)據(jù)已經(jīng)發(fā)送完畢,所以規(guī)定,當(dāng)客戶端接收到的數(shù)據(jù)小于516(2字節(jié)操作碼+2個(gè)字節(jié)的序號(hào)+512字節(jié)數(shù)據(jù))時(shí),就意味著服務(wù)器發(fā)送完畢了

上一篇:Linux應(yīng)用程序幾種參數(shù)傳遞方式

下一篇:tftp命令使用詳解

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見科技集團(tuán)有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5,京公海網(wǎng)安備11010802025203號(hào)

回到頂部