计算机网络之应用层
应用层
应用层是面向用户的一层
1.DNS详解
DNS(Domain Name System: 域名系统)
使用IP地址+端口的方式对应主机的进程太过繁琐,所以产生了DNS技术,使用域名帮助记忆
域名由点、字母和数字组成
点分割不同的域
域名可以分为顶级域、二级域、三级域
域名通过DNS服务解析为ip,要经过域名服务器逐级完成。
2.DHCP协议详解
DHCP(Dynamic Host Configuration Protocol: 动态主机设置协议)
DHCP是一个局域网协议(在OSI网络模型中不包括网络层)
DHCP是应用UDP协议的应用层协议
目的是为了解决‘即插即用联网’的问题。采用分配临时IP的方法(在租期以内)
◆主机使用UDP协议广播DHCP发现报文 ◆ DHCP服务器监听默认端口:67 ◆ DHCP服务器发出DHCP提供报文 ◆ 主机向DHCP服务器发出DHCP请求报文 ◆ DHCP服务器回应并提供IP地址
3.HTTP协议详解
HTTP(HyperText Transfer Protocol: 超文本传输协议) 80端口
HTTP协议是可靠的数据传输协议(TCP)
WEB服务器处理客户端请求过程。
HTTP的请求方法有很多,列举四种。
请求方式可以通过在地址中请求或者在请求数据中指定。
HTTP请求报文=请求方法+请求地址+HTTP版本+请求头+请求内容
应答报文会返回一个状态码:表示请求的不同状态
4.HTTPS协议
HTTP是明文传输的,HTTPS(Secure)是安全的HTTP协议
加密模型:
对称加密
加密和解密的秘钥一致就是对称加密,反之,加解密秘钥不一致就称为非对称加密,分为公钥和私钥,公钥对大家公开,私钥只对自己公开。公钥和私钥具有一定的数学关系
数字证书:
数字证书是可信任组织颁发给特定对象的认证。包含公钥和对象名称(WEB域名)
SSL:
SSL(Secure Sockets Layer: 安全套接层):◆ 保证数据安全和数据完整 ◆ 对传输层数据进行加密后传输
处于传输层和应用层之间。
HTTPS的完整请求过程:
首先在服务端和客户端建立443端口TCP连接,然后进行SSL安全参数握手,两点发送和返回数据。
ssl安全参数握手的过程:
1.客户端生成随机数1,连同协议版本,加密算法发送给服务端
2.服务端收到之后,生成随机数2,发送数字证书,确定加密算法
3.客户端确认数字证书是否有效,生成随机数3使用服务器的公钥加密随机数3
4.服务端收到随机数3,并用私钥进行解密
4.根据随机数1,2,3和相同的算法生成对称秘钥,用对称秘钥session key进行通信