作者qrtt1 (愚人)
看板LinuxDev
标题Re: [问题] socket的一些问题
时间Fri Jun 29 00:54:39 2007
这不是 socket 的问题
是 ftp 的问题,层次差很多,已经在 TCP/IP 层之上了
※ 引述《batista630 (努力工作!!)》之铭言:
: ※ [本文转录自 C_and_CPP 看板]
: 作者: batista630 (努力工作!!) 看板: C_and_CPP
: 标题: [问题] socket的一些问题
: 时间: Thu Jun 28 23:37:09 2007
: (一)PASV:请问在被动模式中,SERVER给的PORT有任何的依据或是条件吗,
: 还是就是随便RANDON一个数字当作PORT呢?
你用 PORT 指令可以自己指定 port
PASV 你送出他会给你一个 ip+port -> 140,133,31,33,123,134
最後二个是 port, 123 * 256^1 + 134 * 256 ^ 0
: (二)CWD,PWD:如果我下指令然後SERVER端依我的指令在SERVER端执行exec之类的
: 函数,那要怎麽把在SERVER端萤幕上看到的档案PARSE到CLIENT端
: 的那边然後在CLIENT端的萤幕上显示呢?要用到哪些FUNCTION呢?
应该直接查 RFC 954
: (三)上传下载:请问我要如何知道我要下载档案的大小,燃後在档案下载完的时候
: 就停止呢?要用到哪些FUCTION呢?
应该有 SYST 之类的指令
: (四)最後请问传DATA的CHANEL是在什麽时候开起来,什麽时候关掉呢?
当你用到需要传输 DATA 时的指令就要通知他开 (用 PASV 或 PORT)
什麽时候关...呃..没想过 不过用完就关了吧
FTP 的设计并不是一直保持连线的,顶多只有 Data Interpret Channel 会一直连着
: 我找GOOGLE有的说在给PASV指令给SERVER之後,之後所有的指令传输
: 以及档案传输,目录的资讯,都是走DATA CHANEL,我之前的认知是要传档案
: 或是传目录等资讯的时候才打开,哪一个才是对的呢?
你跟他要一个 port 就是要他开 Datat Transfer Process
有了连线再下传资料的指令比较合理
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.232.238.13
※ 编辑: qrtt1 来自: 125.232.238.13 (06/29 00:54)