应用层
应用层是计算机体系结构中的最顶层,是直接为应用进程提供服务的。其作用是在实现多个系统应用进程相互通信的同时,完成一系列业务处理所需的服务.
1. C(客户端)/S(服务器)和P(Peer)2P(Peer)
C/S
客户端和服务器进行的架构
- 缺点
一台服务器会出现请求过多无法处理的情况,为此可以使用计算机群集,构建一个性能更好的虚拟服务器
P2P
没有固定的服务提供者和请求者,Peer之间直接通信
是服务分散型的,系统性能不会因规模的增大而降低
2. 动态主机配置协议(DHCP)
自动为网络中的主机配置信息
- DHCP的工作过程
3. 域名系统DNS
使用域名代替原本的IP地址
3.1 域名
-
采用层次树状结构的域名结构
- 每一级域名都由英文字母和数字组成,不超过63个字符,不区分大小写
- 级别最低的域名写左边,顶级域名写右边
-
顶级域名
3.2 DNS
使用分布在各地的域名服务器来实现域名到IP的对应
-
域名服务器的分类
- 根域名服务器
- 顶级域名服务器
- 权限域名服务器
- 本地域名服务器
-
域名解析的过程
- 递归查询
- 迭代查询
为了提高查询效率,域名服务器中使用了**高速缓存(存放近期查询过的域名)**机制
4. 文件传送协议FTP
FTP屏蔽了计算机系统的细节,适用于在任意计算机之间传送文件
例如XFTP
- 基本工作原理
控制连接:21号端口
数据连接:20号端口
5. 电子邮件
-
组成部分
- 用户代理:用户与电子邮件系统的接口
- 邮件服务器:发送和接收邮件(QQ邮箱…)
- 协议:发送协议(SMTP)、读取协议(POP3、IMAP)
发送协议
- SMPT基本原理
- 电子邮件的信息格式
由RFC 5322定义,一个电子邮件有信封和内容构成,内容又分为首部和主体
读取协议
- 邮局协议POP:用户只能以下载并删除、下载并保留的方式进行操作
- IMAP:用户可以在自己的计算机上操作服务器中的邮件
现在通常只用通过浏览器对邮件服务器进行管理
- 当邮件服务器相同时
- 当邮件服务器不同时
6. 万维网(WWW)
是一个大规模的、联机式的信息存储所,是运行在因特网上的一个分布式应用
万维网利用网页之间的超链接,将不同网站链接成一个信息网
- URL的一般形式由以下四个部分组成
网页搭建:
HTTP协议
-
HTTP/1.0采用非持续连接,每请求一个文件就要与服务器
- 请求一个文档就要有两倍的RTT开销,所以请求每个都需要花费2RTT的时间
- 为了减小延迟,浏览器通常会建立多个并行的TCP连接。但是会占用大量服务器资源
-
HTTP/1.1采用持续连接方式,可以一直传送后续的HTTP请求报文和响应报文
- 可以使用**流水线(Pipelining)**方式工作,可以大幅度节约时间
HTTP报文格式
- request请求
例:
Connection : close (非持续连接)
持续连接:keep-alive
- response请求
例:
HTTP被设计成一种无状态协议(stateless)
因为早期万维网操作简单,无状态(stateless)协议可以简化服务器设计
现在可以使用Cookie记录用户信息,是一种对无状态的HTTP进行状态化的技术
Web缓存(Cache)与代理(Proxy)服务器
可以通过缓存机制提高万维网效率(Web缓存把最近的一些请求和响应暂存在本地磁盘需要时直接获取)
可位于客户机,也可位于中间系统上,位于中间系统上的Web Cahe称为代理服务器
至此,计算机网络5层结构已经全部介绍完毕,这几篇文章记录了我的学习过程,内容真的很多,涵盖了许多学科,需要好好理解与吸收,如果任何地方有什么问题在底下留言联系。