Transmisja modemowa Xmodem, Ymodem, Zmodem
Definicje - znaki kontrolne <soh> 01H <stx> 02H <eot> 04H <ack> 06H <nak> 15H <can> 18H <C> 43H
Xmodem Protokół dzieli dane na bloki, z których każdy zawiera: nr sekwencyjny bloku, 128 bajtowe dane i 4 bajtową sumę kontrolną, która jest wyliczana z bloku danych. Synchronizacja jest zachowana poprzez sprawdzenie numeru sekwencyj- nego aktualnie przesłanego bloku oraz wyliczenie sumy kontrolnej danych i porównanie jej z przesłaną sumą kontrolną. W przypadku błędu wysyłane jest żądanie o ponowne wysłanie bloku. SOH blk # 255- blk # SK 128 bajtów danych
Xmodem - transmisja
Ymodem Każdy blok zawiera 1024 bajty, suma kontrolna 4 bajty. Jest szybszy niż Xmodem, a poza tym istnieje możliwość przesyłania kilku plików, wraz z informacją o ich nazwie i rozmiarze. To pomaga odbiorcy określić czas pozostały do zakończenia transferu. Istnieje kilka specyfikacji Ymodem: Xmodem/CRC Xmodem-1K Ymodem-batch protocol
Xmodem/CRC CRC tworzone na podstawie wielomianu: x16+x12+x5+1 SOH blk # 255- blk # CRC hi CRC lo 128 bajtów danych CRC tworzone na podstawie wielomianu: x16+x12+x5+1 poprzez bity komunikatu dzielone mod 2. Reszta z dzielenia - CRC Problemy ustawiania CRC: <C> stracone - zniekształcone <soh> zniekształcony <C> zmienia się w <nak> <nak> z O zmienia się z <C>
Nie wspiera CRC
Wspiera CRC
Xmodem-1k W celu powiadomienia odbiorcy o tym, że przesyłane są bloki 1024 bajtowe, <stx> zastępuje <soh>. Odbiorca powinien być w stanie akceptować mieszankę bloków 128 bajtowych i 1024 bajtowych.
Xmodem-1k mixed
Ymodem batch file protocol Ścieżka Długość Data modyfikacji Tryb Numer seryjny
Zmodem Wielkość bloku waha się od 16 do 1024 bajtów. Protokół dynamicznie ustawia optymalną wielkość bloku w zależności od stanu linii telefonicznej. Zaczyna od 1024 bajtów. W przypadku znacznych szumów na linii redukuje tą wartość, aby potem zwiększyć, gdy szumy się zmniejszą.