ア | イ | ウ | エ | オ |
カ | キ | ク | ケ | コ |
サ | シ | ス | セ | ソ |
タ | チ | ツ | テ | ト |
ナ | ニ | ヌ | ネ | ノ |
ハ | ヒ | フ | ヘ | ホ |
マ | ミ | ム | メ | モ |
ヤ | ユ | ヨ | ||
ラ | リ | ル | レ | ロ |
ワ | ヰ | ヴ | ヱ | ヲ |
ン |
A | B | C | D | E |
F | G | H | I | J |
K | L | M | N | O |
P | Q | R | S | T |
U | V | W | X | Y |
Z | 数字 | 記号 |
XMODEMをベースとしたファイル転送プロトコルの一つ。名称は、Xの次だからYなのだと思われる。
XMODEMと比較し、次のような特徴を持つ。
XMODEM 1024/CRCに、ファイル情報の自動転送機能を付けたようなもの、ともいえる。
基本的なプロトコルは、XMODEMとほぼ同じで、両方に対応した実装を作ることも難しくない。
XMODEMの場合、ブロック番号1から始まるが、YMODEMはこれに対し、ブロック番号0としてヘッダー情報を最初に送信する。
ヘッダーは、データ部に格納され、余った部分はNUL(0/0、0x00)で埋める。^Z(1/10、0x1A)ではないので注意。
データ部の最初に、ファイル名をASCIIZで格納する。これは必須である。フルパスでファイル名を格納する場合、MS-DOSやWindowsのパスの区切り\は、/に変換する。
ファイル名、0x00に続いて、最大で次の3情報を格納できる。
サイズは10進文字列で、タイムスタンプはUNIXのThe Epochつまり1970年1月1日00:00:00(UTC)からの経過秒数を10進文字列で、記述する。ファイルモードは100644、のような形式の8進文字列で記述する。
この情報は、間を空白(2/0、0x20)で区切って記述する。
バッチ転送においては、複数をファイルを連続して送るので、ファイルの区切りのシーケンスが存在するのが、XMODEM等に対する特徴と言える。
送信側は、一つのファイルが終わったらEOTを送る所はXMODEM等と同様だが、受信側は一旦故意にNAKを返す。送信側はそれに対しEOTを再送し、受信側がACKを返して一つのファイル送信を終える。
そして、受信側は'C'またはNAKを送信し、次のファイルの送受信をする。
全ファイルが転送されたら、送信側は、送信側からの次のファイル要求に対して、ブロックのデータ内容を全てNUL(0/0、0x00)で埋めたヘッダー情報(ブロック番号0)を送信する。受信側はこれを見て一連の送信が終了した旨を認識し、これにACKを返信して終了する。
コメントなどを投稿するフォームは、日本語対応時のみ表示されます