主进程的工作步骤如下 打开熟知端口(端口号为21),使客户进程 能够连接上 等待客户进程发出连接请求。 启动从属进程来处理客户进程发来的请求。从 属进程对客户进程的请求处理完毕后即终止, 但从属进程在运行期间根据需要还可能创建其 他一些子进程。 回到等待状态,继续接受其他客户进程发来的 请求。主进程与从属进程的处理是并发地进行。 课件制作人:谢希仁
课件制作人:谢希仁 主进程的工作步骤如下 ◼ 打开熟知端口(端口号为 21),使客户进程 能够连接上。 ◼ 等待客户进程发出连接请求。 ◼ 启动从属进程来处理客户进程发来的请求。从 属进程对客户进程的请求处理完毕后即终止, 但从属进程在运行期间根据需要还可能创建其 他一些子进程。 ◼ 回到等待状态,继续接受其他客户进程发来的 请求。主进程与从属进程的处理是并发地进行
两个连接 ■控制连接在整个会话期间一直保持打开,FTP客 户发出的传送请求通过控制连接发送给服务器端 的控制进程,但控制连接不用来传送文件 实际用于传输文件的是“数据连接”。服务器端 的控制进程在接收到FTP客户发送来的文件传 输请求后就创建“数据传送进程”和“数据连 接”,用来连接客户端和服务器端的数据传送进 程 ■数据传送进程实际完成文件的传送,在传送完毕 后关闭“数据传送连接”并结束运行。 课件制作人:谢希仁
课件制作人:谢希仁 两个连接 ◼ 控制连接在整个会话期间一直保持打开,FTP 客 户发出的传送请求通过控制连接发送给服务器端 的控制进程,但控制连接不用来传送文件。 ◼ 实际用于传输文件的是“数据连接” 。服务器端 的控制进程在接收到 FTP 客户发送来的文件传 输请求后就创建“数据传送进程”和“数据连 接” ,用来连接客户端和服务器端的数据传送进 程。 ◼ 数据传送进程实际完成文件的传送,在传送完毕 后关闭“数据传送连接”并结束运行
FTP使用的两个TCP连接 用户界面 控制连接 控制进程 控制进程 因特网 数据传送 数据传送 进程 进程 客户端 数据连接 服务器端 课件制作人:谢希仁
课件制作人:谢希仁 FTP 使用的两个 TCP 连接 控制进程 数据传送 进程 用户界面 控制进程 数据传送 进程 客户端 服务器端 因特网 控制连接 数据连接
两个不同的端口号 当客户进程向服务器进程发岀建立连接请求时, 要寻找连接服务器进程的熟知端口(21),同时还要 告诉服务器进程自己的另一个端口号码,用于建立 数据传送连接。 接着,服务器进程用自己传送数据的熟知端口(20) 与客户进程所提供的端口号码建立数据传送连接。 ■由于FTP使用了两个不同的端口号,所以数据连接 与控制连接不会发生混乱。 课件制作人:谢希仁
课件制作人:谢希仁 ◼ 当客户进程向服务器进程发出建立连接请求时, 要寻找连接服务器进程的熟知端口(21),同时还要 告诉服务器进程自己的另一个端口号码,用于建立 数据传送连接。 ◼ 接着,服务器进程用自己传送数据的熟知端口(20) 与客户进程所提供的端口号码建立数据传送连接。 ◼ 由于FTP使用了两个不同的端口号,所以数据连接 与控制连接不会发生混乱。 两个不同的端口号
使用两个不同的端口号 ■使用两个独立的连接的主要好处是 使协议更加简单和更容易实现。 ■在传输文件时还可以利用控制连接(例如,客户 发送请求终止传输)。 课件制作人:谢希仁
课件制作人:谢希仁 ◼ 使用两个独立的连接的主要好处是 ◼ 使协议更加简单和更容易实现。 ◼ 在传输文件时还可以利用控制连接(例如,客户 发送请求终止传输)。 使用两个不同的端口号