Ymodem

YModem協定是由XModem協定演變而來的,每包數據可以達到1024位元組,是一個非常高效的檔案傳輸協定。

基本介紹

  • 外文名:Ymodem
  • 前身:XModem協定
  • 類型:檔案傳輸協定
  • 優點:非常高效
(Ymodem) Ymodem 協定。Ymodem是一種錯誤糾正協定。使用較大數據塊的調製解調採用這種協定,以獲得更高的工作效率。採用Ymodem協定的數據機以1024位元組數的塊傳送數據。成功接收的不會被確認。有錯誤的塊被確認(NAK),並重發。Ymodem類似於Xmodem-1K,不同之處是提供批處理模式(batch mode)。在批處理模式下,可以使用一個命令傳送一些檔案。Ymodem使用循環冗餘碼校驗作為錯誤校驗方式。
等同於Xmodem-1K 加批檔案傳送的一種檔案傳送協定 ( 也稱 Ymodem Batch) 。它比標準 Xmodem 要快,而且在傳送數據之前傳送檔案名稱。 Ymodem-G 無需無錯誤通道的認可或當數據機自糾錯時就可傳送,但是一旦出現錯誤傳送就會取消。
YMODEM協定的基本操作流程
Ymodem
數據包開始信號
傳送序號
傳送序號補碼
數據區
CRC高位元組
CRC低位元組
SOH/STX
01
FE



1Byte
1Byte
1Byte
128/1024Byte
1Byte
1Byte
1開啟是由接收方開啟傳輸,接收方傳送一個字元'C',然後進入等待(SOH)狀態,如果沒有回應,就會逾時退出。
2傳送方開始時處於等待過程中,等待字元'C'。傳送方收到'C'後,傳送第一幀數據包,內容如下:
SOH 00 FF Foo.c NUL[123] CRC CRC (Foo.c為檔案名稱,NUL[123]補0)
進入等待(ACK)狀態。
3接收方收到第一幀數據包後,CRC校驗滿足,則傳送ACK。
4傳送方接收到ACK,又進入等待“檔案傳輸開啟”信號,即重新進入等待“C”的狀態。
上面接收方只是收到了一個檔案名稱,現在正式開啟檔案傳輸,Ymodem支持128位元組和1024位元組一個數據包。128位元組以(SOH)開始,1024位元組以(STX)開始。
5接收方又發出一個字元'C',開始準備接收檔案。進入等待“SOH”或者“STX”狀態。
6傳送方收到字元'C'後,開始傳送第二幀,第二幀中的數據存放的是第一包數據。內容如下:
(SOH/STX)(01序號)(FE反碼)(128/1024位元組數據)(CRC校驗),等待接收方“ACK”。
7接收方收到數據後,傳送一個ACK,然後等待下一包數據傳送完畢,繼續ACK應答。直到所有數據傳輸完畢。…
8數據傳輸完畢後,傳送方發EOT,第一次接收方以NAK應答,進行二次確認。傳送方收到NAK後,重發EOT,接收方第二次收到結束符,就以ACK應答。最後接收方再傳送一個字元'C'開啟另一次傳輸,傳送方在沒有第二個檔案要傳輸的情況下,傳送如下數據:SOH 00 FF 00~00(共128個) CRCH CRCL,接收方應答ACK後,正式結束數據傳輸。

相關詞條

熱門詞條

聯絡我們