1K Xmodem文件傳輸協議

一.超級終端1K Xmodem文件傳輸協議

超級終端的1K Xmodem文件傳輸協議爲基於點對點連接的服務與客戶端間的通信,提供了一種固定包長度的簡單的連續文件傳輸協議。每一個包都包含1024字節的文件數據,並且都單獨的被接收客戶端響應。每次只能傳輸一個文件,並且失敗後只能從新開始傳輸。

超級終端的1K Xmodem 文件傳輸協議是超級終端Xmodem文件傳輸協議的擴展,包大小由Xmodem中的128字節增加到1024字節。該協議通過使用一個交替的開始字符(包頭SOH<0x02>)來標識1K Xmodem包的開始。

二.1K Xmodem協議傳輸流程

超級終端1K Xmodem文件傳輸協議並不需要向接收客戶端發送待發送文件的名稱 ,該文件將會被接收方授予一個局部有效的文件名。

要開始文件傳輸的過程,首先接收方向發送方發送一個輪詢字符,來提示發送方客戶端已經準備好了。如果接收方支持check-sum (CRC)校驗,則輪詢字符可以用0x43 (ASCII 字母 C);如果接收方只支持舊的checksum (求總和)校驗,則輪詢字符可以用0x15 (NACK線控制字符)。

發送方響應接收方的啓動字符,開始發送文件數據包,每個包都是1024字節的固定長度。如果最後一個文件數據包不足1024字節,則利用NACK(0x1A)填充到1024字節。接收方通過ACK(正常接收)或者NACK(非正接收)來響應每一個包。

如果發送方收到ACK,則發送下一個包知道文件傳輸完成;乳溝發送方收到NACK,則重新發送上一個包。

當發送方發送完成後,發送EOT通知接收方文件傳輸結束;接收方發送ACK來響應;發送方收到ACK後則文件傳輸完成。

文件數據包的結構:

<SOH><包序號><包序號反碼><文件數據(1024字節)><校驗位>

文件傳輸流程:

 

三.控制字符

字符(16進制)

含義

0x01

SOH: 包頭

0x04

EOT: 結束文件傳輸

0x06

ACK: 正常響應,如:數據包正確接收

0x15

NACK: 非正常響應

0x18

CAN: 取消文件傳輸

0x43

C: ASCII字符C

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章