HTTP1.0,1.1,1.2的区别,TCP的三次握手和四次挥手

【http1.0,1.1,2.0,3.0的区别】
HTTP协议是指:超文本传输协议,是用于从万维网服务器传输超文本到本地浏览器的传送协议。
HTTP是一个基于TCP/IP通信协议来传递数据。

http1.0内容简单,浏览器的每次请求都需要与服务器建立一个TCP连接,服务器处理完成后立即断开TCP连接。
http1.1增加了长连接,HOST域,优化了缓存处理,错误通知的管理,更加节约带宽。
http2.0使用了多路复用的技术,新增头部数据压缩和服务器推送
HTTP3,目前还处于草案阶段

HTTP1.0最早在1996年在网页中使用。
TCP协议采用三次握手策略来开始连接,采用四次挥手来终止连接。

在HTTP1.1中,HTTP请求和响应都是由状态行、请求/响应头部、消息主体三部分组成。

多路复用,可以同一个连接并发处理多个请求。

HTTP3目前还处于草案阶段,Google目前再主导一个基于UDP协议的“QUIC”协议,让HTTP跑在QUIC上而不是TCP上。它在HTTP2的基础上实现了质的飞跃。

HTTP1.0和HTTP1.1和HTTP2.0的区别
https://blog.csdn.net/ailunlee/article/details/97831912

Http1.0和1.1及2.0的区别
https://blog.csdn.net/weixin_44489066/article/details/88640088

TCP/IP 教程
https://www.runoob.com/tcpip/tcpip-tutorial.html
【Websoket】
WebSocket是一种在单个TCP连接上进行全双工通信的协议。
WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。

【TCP 协议】
TCP,中文全名是:传输控制协议。是一种面向连接的,可靠的,基于字节流的传输层协议。
TCP的作用是在不可靠的互联网络上提供一个可靠的端到端的字节流服务。

【三次握手】
在TCP/IP协议中,TCP协议采用三次握手来建立一个连接.

第一次握手:建立连接时,客户端发送同步序列编号(简称syn包)syn=j到服务器,并进入SYN_SEND状态,等待服务器确认;
SYN:同步序列编号(Synchronize Sequence Numbers)
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入established状态,完成三次握手.
完成三次握手,客户端与服务器开始传送数据

序列号的作用
TCP将应用层数据和管理数据的每一字节进行顺序编号,序列号用于指出本报文段携带数据的第一个字节的序列号,(SYN,FIN等算作一个字节数据)

确认号的作用
通信双方采用确认号来对收到的数据进行确认,该确认号之前(不包括该确认号)的所有数据均已正确收到,希望下次接收序列号为该确认号的数据。

三次握手是指:A_syn – B_syn – A_ack
1.客户端发送一个同步序列编号syn给服务器
2.服务器收到确认后,也发送另一个同步序列编号syn给客户端
3.客户端收到服务器的同步序列编号syn,就发送确认信号ack给服务器

经过三次握手后,客户端和服务器就开始传送数据。
三次握手主要是为了确认双方的发送与接收是正常的。

【四次挥手】
四次挥手,就是终止TCP连接的过程,是指在断开一个TCP连接时,需要客户端和服务的总共发送4个包以确认连接到断开。

在socket编程中,这一过程由客户端或服务的任意一方执行close来触发。

第一次挥手:Client发送一个FIN,用来关闭CIient到Server的数据传输,Client进入FIN_WAIT_1状态。
第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到,序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传输,Server进入LAST_ACK状态。
第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到,序号+1,Server进入CLOSED状态,完成四次挥手。

四次挥手:A_fin – B_ack – B_fin – A_ack
1.客户端发送一个结束信号fin给服务器,告知结束传输数据。
2.服务器收到结束信号fin后,发送一个确认信号ack给客户端,告知我知道情况。
3.服务器之后再发送一个结束信号fin给客户端,告知我现在也可以结束传输数据了。
4.客户端收到结束信号fin后,发送一个确认信号ack给服务器,确认双方都可以结束传输。

三次握手和四次挥手_TCP-三次握手和四次挥手简单理解
https://blog.csdn.net/weixin_39766258/article/details/110853478

【网络七层应用】
OSI(Open System Interconnect),即开放式系统互联。
OSI参考模型有7层结构,而TCP/IP五层模型有5层,其中OSI参考模型的应用层,表示层,会话层,
7 应用层
6 表示层
5 会话层
4 传输层
3 网络层
2 数据链路层
1 物理层

OSI七层模型与TCP/IP五层模型
https://www.cnblogs.com/qishui/p/5428938.html

【对称加密和非对称加密】
加密和解密使用的密钥相同,叫做对称加密,例如哈希算法,md5,sha算法
加密和解密使用的密钥不相同,叫做非对称加密,例如ssl的公钥和私钥

上一页:
下一页:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注