Skip to main content

Appendix I (附录I)

Order of Headers (头部顺序)

                                          2 bytes
----------------------------------------------------------
| Local Medium | Internet | Datagram | TFTP Opcode |
----------------------------------------------------------

TFTP Formats (TFTP格式)

Type Op # Format without header

      2 bytes    string   1 byte     string   1 byte
-----------------------------------------------
RRQ/ | 01/02 | Filename | 0 | Mode | 0 |
WRQ -----------------------------------------------

2 bytes 2 bytes n bytes
---------------------------------
DATA | 03 | Block # | Data |
---------------------------------

2 bytes 2 bytes
-------------------
ACK | 04 | Block # |
--------------------

2 bytes 2 bytes string 1 byte
----------------------------------------
ERROR | 05 | ErrorCode | ErrMsg | 0 |
----------------------------------------

Initial Connection Protocol for reading a file (读取文件的初始连接协议)

  1. 主机A向主机B发送"RRQ",源= A的TID,目标= 69.
  2. 主机B向主机A发送"DATA" (块编号= 1),源= B的TID,目标= A的TID.

Error Codes (错误码)

值 (Value)含义 (Meaning)
0未定义,参见错误消息 (如果有).
1文件未找到.
2访问违规.
3磁盘已满或分配超出.
4非法的TFTP操作.
5未知的传输ID.
6文件已存在.
7无此类用户.

Internet User Datagram Header [2] (互联网用户数据报头部)

(这仅为方便而包含.TFTP不必在互联网用户数据报协议之上实现.)

Format (格式)

 0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source Port | Destination Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Length | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Values of Fields (字段值)

  • Source Port (源端口): 由数据包的发起者选择.
  • Dest. Port (目标端口): 由目标机器选择 (RRQ或WRQ为69).
  • Length (长度): UDP数据包中的字节数,包括UDP头部.
  • Checksum (校验和): 参考文献2描述了计算校验和的规则.(实现者应确保这里使用了正确的算法.) 如果未使用,该字段包含零.

注意: TFTP将传输标识符 (TID's)传递给互联网用户数据报协议,以用作源端口和目标端口.