应用层主要是为用户软件提供接口,使应用程序能够使用一些网络服务。常见的应用层协议主要有FTP(文件传输协议)、HTTP(超文本传输协议)、telnet(远程登录协议)、SMTP(简单邮件传输协议)四种。有一点需要注意的是,应用层协议并非在应用层独立作用,他们都有对应使用的端口以及传输层协议。
首先是FTP协议,它的主要功能是进行简单的文件传输服务(因为要保证文件传输的完整性,不一定要快但是要稳当,所以采用的是TCP可靠传输服务)采用的是服务器与客户机两者的交互模式(双方都有权力限制干涉对方的一些行为)那也就是说客户机有权指定要传输的文件类型,而服务器也可以设置权限,来控制用户是否能够进行访问。
FTP服务器基本原理
1.两大部分进程:一个主进程和若干个从属进程,主进程是用于接受新的请求;若干个从属进程则是用于处理多种请求。(可以视为市场交易中,老板和客户建立联系,洽谈好了工作后,老板再安排底下的员工来做事)
2.两个端口:21作为控制端口,用于建立服务器与客户机的连接;20是数据传送端口,用于与客户端传送文件。
3.工作原理:首先,主进程需要打开21端口,等待客户端发送连接请求;在接受到客户端的连接请求后