訳: 岡橋 一輝 最終更新日: 1999/7/4 --- Network Working Group G. Malkin Request for Commments: 2349 Bay Networks Updates: 1350 A. Harkin Obsoletes: 1784 Hewlett Packard Co. Category: Standards Track May 1998 TFTP Timeout Interval and Transfer Size Options TFTP タイムアウト間隔及び転送サイズオプション 本書の位置付け(Status of this Memo) 本書は Internet Community のために標準化過程プロトコルについて記して おり、改善に向けての議論や提案を求めるものである。このプロトコルの標準 化の現状については Internet Official Protocol Standards(STD1)の最新 版を参照されたい。本書の配布は無制限に行ってよい。 著作権(Copyright Notice) Copyright (C) The Internet Society (1998). All Rights Reserved. 概要(Abstract) 簡易ファイル転送プロトコルは、クライアントから遠隔ホストのファイルを 読み書き可能にする、簡潔かつ安全だがやや柔軟性に欠けるファイル転送の仕 組みである。 本書では二種類の TFTP オプションについて述べる。ひとつめはクライアン ト、サーバ間でタイムアウト間隔を折衝するためのオプション、ふたつめはフ ァイルを受け取る側があらかじめ最大転送サイズを決めておけるオプションで ある。TFTP オプション拡張機構については [RFC2347] を参照せよ。 タイムアウトオプション仕様(Timeout Interval Option Specification) TFTP 読み出し・書き込み要求を以下の様に修正し、タイムアウトオプショ ンを指定できるようにする: +--------+--------+---+------+---+---------+---+-------+---+ | Opcode |Filename| 0 | Mode | 0 | timeout | 0 | #secs | 0 | +--------+--------+---+------+---+---------+---+-------+---+ Opcode [RFC1350] の定義通り、読み出し要求の場合は 1、書き込み要求の場合 は 2 を入れる。 Filename [RFC1350] の定義通り操作対象のファイル名を入れる。0x00 で文字列 を終端する。 Mode [RFC1350] の定義通りファイル転送モードを入れる。netascii、octet mail のいずれかを用い、0x00 で文字列を終端する。 timeout タイムアウトオプションを表す timeout という文字列を入れる。大文 字と小文字は区別しない。0x00 で文字列を終端する。 #secs 再送までの待ち時間秒数を ASCII 文字列として入れる。正当な値は 1 秒以上 255 秒以下である。0x00 で文字列を終端する。 例を挙げよう: +-------+--------+---+-------+---+---------+---+-------+---+ | 1 | foobar | 0 | octet | 0 | timeout | 0 | 1 | 0 | +-------+--------+---+-------+---+---------+---+-------+---+ これは foobar というファイルの読み出し要求である。転送モードをバイナ リ、タイムアウト間隔を 1 秒にするよう要求している。 オプションを許可する場合、サーバはクライアントに OACK を送信する。応 答値はクライアントの指定値と等しくなければならない。 転送サイズオプション仕様(Transfer Size Option Specification) TFTP 読み出し・書き込み要求を以下の様に修正し、転送サイズオプション を指定できるようにする: +--------+--------+---+--------+---+-------+---+--------+---+ | Opcode |Filename| 0 | Mode | 0 | tsize | 0 | size | 0 | +--------+--------+---+--------+---+-------+---+--------+---+ Opcode [RFC1350] の定義通り、読み出し要求の場合は 1、書き込み要求の場合 は 2 を入れる。 Filename [RFC1350] の定義通り操作対象のファイル名を入れる。0x00 で文字列 を終端する。 Mode [RFC1350] の定義通りファイル転送モードを入れる。netascii、octet mail のいずれかの文字列を用い、0x00 で文字列を終端する。 tsize 転送サイズオプションを表す tsize という文字列を入れる。大文字と 小文字は区別しない。0x00 で文字列を終端する。 size 転送するファイルサイズを入れる。0x00 で文字列を終端する。 例を挙げよう: +-------+--------+---+-------+---+-------+---+--------+---+ | 2 | foobar | 0 | octet | 0 | tsize | 0 | 673312 | 0 | +-------+--------+---+-------+---+-------+---+--------+---+ これは foobar というファイルの書き込み要求である。転送モードがバイナ リ、ファイルサイズが 673312octet であることを知らせている。 読み出し要求の場合、size フィールドにはゼロを入れて要求を送信し、サ ーバは OACK の size フィールドにバイナリでのファイルサイズを入れて応答 する。報告されたサイズが大きすぎてクライントが処理できないと判断した場 合、ERROR パケット(Error Code 3)を返信して転送を終了する。書き込み要 求の場合、操作対象のバイナリでのファイルサイズを size フィールドに入れ て要求を送信し、サーバが許可すれば同じ値の OACK 応答が返ってくる。書き 込むサイズが大きすぎて処理できないと判断した場合、サーバは ERROR パケ ット(Error Code 3)で応答して転送を終了する。 セキュリティに関する考察(Security Considerations) TFTP 自体には何のセキュリティ機構も存在しない。この事実に起因して か、TFTP はファイルのリネームや削除、それに上書きといった悪用され得る 機能を具えていない。今回の拡張によって TFTP がセキュリティ強化されるわ けではないが、逆に危険が増加することもない。 参照資料(References) [RFC1350] Sollins, K., "The TFTP Protocol (Revision 2)", STD 33, RFC 1350, October 92. [RFC2347] Malkin, G., and A. Harkin, "TFTP Option Extension", RFC 2347, May 1998. 著者の連絡先(Authors' Addresses) Gary Scott Malkin Bay Networks 8 Federal Street Billerica, MA 01821 Phone: (978) 916-4237 EMail: gmalkin@baynetworks.com Art Harkin Internet Services Project Information Networks Division 19420 Homestead Road MS 43LN Cupertino, CA 95014 Phone: (408) 447-3755 EMail: ash@cup.hp.com 著作権(Full Copyright Statement) Copyright (C) The Internet Society (1998). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.