2020-01-24
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
TCP
滑动窗口
此时窗口已满,无法读进包,只能等待Ack。如果真的是丢包,始终无法收到Ack,此时超时重传机制会从第一个未收到Ack的包开始重新发送。(注意,这里的Ack是按照顺序发送的!)
控制流
让发送端根据接收端的实际接收能力控制发送的数据量。这就是“控制流”。
TCP首部中专门有一个字段用来通知窗口大小。接收端将自己可接收的缓冲区大小放入字段中并通知发送端。此值越大代表网络的吞吐量越高。
拥塞控制
- 慢启动,在慢启动时将其设为1个数据段(IMSS)发送数据,之后每收到一次确认应答(ACK),拥塞窗口的值就加1
- 拥塞避免算法,超过一个值以后减慢增长速度,避免增长过快导致网络拥塞,慢慢的增加调整到网络的最佳值
- 拥塞状态时的算法,RTO超时后,sshthresh会变成cwnd的一半
- 快速恢复算法,收到3个Duplicated ACKs,重传指定包,收到新的ack后再恢复窗口
区别
TCP
面向字节流
一对一
面向有链接的通信服务
提供可靠的通信传输
保证数据包顺序
有流量控制,拥塞控制
数据无边界
报头至少20字节
UDP
面向报文,一次发送一整个报文
可以一对一,一对多
面向无连接的通信服务
不可靠,会丢包
不保证
没有
数据有边界
报头8字节
网友评论