TCP 和 IP 协议
IP(Internet Protocol 网际协议)
- 是计算机用来相互识别的通信的一种机制,每台计算机都有一个 ip 来识别在 internet 上的位置
- ip 协议仅仅是允许计算机相互发消息,但是它并不检查消息是否以发送的次序到达而且没有损坏
- 为了提供消息校验功能,直接在 IP 协议上设置 TCP
TCP(Transmission Control Protocol 传输控制协议)
- 保证数据包以正确序列到达,并且尝试确认数据包的内容没有改变
- tcp 在 ip 地址之上引端口,允许计算机通过网络提供各种服务
- 用于从应用程序到网络的数据传输控制,而 ip 负责计算机间的通信
HTTP 工作过程
一次 HTTP 操作称作一个事务
- 地址解析
- 从地址分解出协议名,主机名,端口
- 需要 DNS 解析域名,得到主机的 ip 地址
- 封装 HTTP 请求数据包
- 封装成 TCP 包,建立 TCP 连接(三次握手)
- 在 http 工作之前,首先要通过网络与服务器建立连接,该连接通过 tcp 完成
- http 是比 tcp 更高层次的应用层协议,更具规则,只有低层次协议建立之后,才能进行更高层协议的连接
- 发送 http 请求
- 服务器响应
- 服务器关闭 TCP 连接
- 如果加入了长连接(keep-alive),tcp 连接仍然保持打开状态,减少建立新连接所需的时间,还节约了带宽
HTTPS 的 TLS/SSL
TLS 全称是 transport layer security(安全传输层协议)
主要作用
- 对数据进行加密,并建立一个信息安全通道,来保证传输过程中的数据安全
- 对网站服务器进行真实身份认证
依赖的基本算法
主要是三类
- 散列函数验证信息的完整性
- 对称加密算法采用协商好的秘钥对数据加密
- 非对称加密实现身份认证和密钥协商