这是一个有趣的问题,我必须深入潜水;)
但是,您还应该考虑以下几点:MTU是一种局部现象,也可能只涉及本地网络的一部分.您认为的是路径MTU,是完整传输路径上的最小MTU. http://en.wikipedia.org/wiki/Path_MTU_Discovery
所以,你必须知道每个相关组件的每个MTU.这可能是一个问题,例如,如果您使用巨型帧和不是交换机,交换机必须拆分帧.我已经有一个问题,一个交换机不明白巨型帧和丢弃帧.
现在最有趣的问题是:最优的块化.很多python函数采用像blockize或chunksize这样的参数.但是它们并没有解决基础传输协议的阻塞. blocksize定义一个读取缓冲区,它将包含要发送/读取的数据. ftplib的标准尺寸为8K(8192字节).所以调整块大小不应该真正影响传输的速度.
控制底层传输协议的MTU是由操作系统及其内核处理的.
最后一些关于ftp的话. ftp是一种易于设置和使用的老恐龙,但并不总是传输文件的最佳方法.特别是如果你传输了很多小文件.我不知道你的用例,所以考虑其他传输协议的选择,如rsync或bbcp可能是有道理的.后来似乎大大提高了复印速度.你真的应该看看http://moo.nac.uci.edu/~hjm/HOWTO_move_data.html
只是我的两美分…