理解TCP/IP协议
什么是TCP/IP协议
TCP/IP
并不是单个协议, 而是指一组协议的集合, 所以TCP/IP
也叫TCP/IP
协议族.TCP/IP的作用
起到了应用和硬件的之间承上启下的作用.
手机的APP应用 -> 路由器 -> 光猫 -> 运营商网络 -> 互联网
TCP/IP三次握手
为了建立可靠的TCP
连接, 尽可能地保证数据传输的正确性.
三次握手的过程
- 客户端向服务端发送带有
SYN(同步序列编号)
标识的数据包 --------------------------服务端确认了客户端的发送能力正常 - 服务端向客户端发送了带有
SYN-ACK(确认字符)
标识的数据包-----------------------服务端确认了自己接受能力是正常 - 客户端向服务端返回带有
ACK
标识的数据包-----------------------------------------------服务端确认了自己发送能力, 客户端接受正常
- 客户端向服务端发送带有
第2次握手已经传回了
ACK
, 为什么服务端还要返回SYN
?为了告诉客户端, 接收到的信号确实是其发送的信号, 表明了客户端到服务端的通信是正常的.
TCP/IP四次挥手
四次挥手的过程
我们以客户端作为主动关闭方来描述四次挥手过程
- 客户端向服务端发送了一个
FIN(finish)
数据包-------------------------------------关闭客户端到服务端的连接通道 - 服务端收到
FIN
后, 返回了ACK
数据包----------------------------------------------------服务端已经知道了客户端到服务端的连接通道已关闭 - 服务端发送
FIN
数据包至客户端, 关闭与客户端的连接------------------------------目的是关闭服务端到客户端的连接通道 - 客户端返回
ACK
数据包确认------------------------------------------------------------------通知服务端客户端已经知道了服务端到客户端之间的连接通道已关闭
- 客户端向服务端发送了一个
HTTPS
https加密的过程
- 客户端向服务端发送通信请求
- 服务端返回给客户端证书和密钥
- 客户端通过CA中心验证证书的真实性
客户端完成认证之后, 使用公钥对发送数据进行加密, 发送给服务端.
非对称加密
16 = 2* 8 也可以是 4 * 4 公钥就是拿到了16这个结果 私钥就是某个因数2 通过这样的方式才可以得出唯一解8
- 服务端收到加密后的请求数据后, 使用私钥进行解密.
- 服务器和客户端使用对称加密进行通信
中间人攻击
插入到客户端和服务端之间的通信, 对服务端伪造客户都安, 对客户端伪造服务端, 拦截通信产生的数据.
产生的条件
我们的客户端要主动信任中间人的证书
Comment here is closed