HTTP相关的一些东西

栏目: 后端 · 前端 · 发布时间: 7年前

内容简介:这几天一直在看关于HTTP和前端性能优化相关的内容,今天先写一篇关于HTTP的文章,如果时间允许的话再接着把前端性能优化的写完。毕竟还要留着时间去看小片嘛:relieved:接下来就是正文啦!就是下图这个啦(这个可是我从某课网偷来的)

这几天一直在看关于HTTP和前端性能优化相关的内容,今天先写一篇关于HTTP的文章,如果时间允许的话再接着把前端性能优化的写完。毕竟还要留着时间去看小片嘛:relieved:

接下来就是正文啦!

浏览器输入URL后HTTP请求返回的完整过程

就是下图这个啦(这个可是我从某课网偷来的) HTTP相关的一些东西

从输入地址到页面渲染

HTTP相关的一些东西

在HTTP的五层分层中:

  • 应用层为应用软件提供了很多服务,构建于TCP协议之上,屏蔽网络传输相关细节

  • 传输层向用户提供可靠的端到端(End-to-End)服务,向高层屏蔽了下层数据通信的细节

  • 网络层为数据在结点之间传输创建逻辑链路

  • 数据链路层在通信的实体间建立数据链路

  • 物理层主要作用是定义物理设备如何传输数据

    HTTP相关的一些东西

统一资源标识符URI

URI用字符串标识某一互联网资源,包括URL和URN。 URL为统一资源定位符,表示资源的地点(互联网上所处的位置); URN为永久统一资源定位符:资源在移动之后还能被找到,目前还没有非常成功的使用方案。

TCP连接中的三次握手与四次挥手

这部分内容是面试中的重点,尤其是SYN、ACK啥的,好乱:dizzy_face: 先放图:smirk:

HTTP相关的一些东西

其中:起初两端的TCP进程都是CLOSED状态。主动打开连接的是客户端,被动打开连接的是服务器

  1. 第一次握手:客户端向服务器发出连接请求保温,这是报文首部中的同部位SYN=1,同时选择一个初始序列号seq=x,此时,TCP客户端进程进入了SYN-SENT(同步已发送状态)。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号。

  2. 第二次握手:服务器收到请求报文后,如果同意连接就发出确认报文。确认报文中ack=1,SYN=1,确认号为ACK=x+1,同时也要为自己初始化一个序号seq=y,此时服务器进入了SYN-RCVD(同步收到)状态。这个报文不能携带数据,但是同样要消耗一个序号。

  3. 第三次握手:客户端收到确认后,还要向服务器给出确认。确认报文的ack=1,ACK=y+1,自己的序列号seq=x+1,此时,TCP连接建立,客户端进入ESTABLISHED(已建立连接)状态。TCP规定,ACK报文段可以携带数据,但是如果不携带数据则不消耗序号。

当服务端收到客户端的确认后也进入ESTABLISHED状态,此后双方就可以开始连通了。

四次挥手:

  • 第一次挥手:客户端向服务器发送一个FIN报文段,将设置seq=x+2和ACK=y+1,;此时,客户端进入 FIN_WAIT_1状态,这表示客户端没有数据要发送服务器了,请求关闭连接;

  • 第二次挥手:服务器收到了客户端发送的FIN报文段,向客户端回一个ACK报文段,ACK=x+3;服务器进入了CLOSE_WAIT状态,客户端收到服务器返回的ACK报文后,进入FIN_WAIT_2状态;

  • 第三次挥手:服务器会观察自己是否还有数据没有发送给客户端,如果有,先把数据发送给客户端,再发送FIN报文;如果没有,那么服务器直接发送FIN报文给客户端。请求关闭连接,同时服务器进入LAST_ACK状态;

  • 第四次挥手:客户端收到服务器发送的FIN报文段,向服务器发送ACK报文段,然后客户端进入TIME_WAIT状态;服务器收到客户端的ACK报文段以后,就关闭连接;此时,客户端等待2MSL后依然没有收到回复,则证明Server端已正常关闭,客户端也可以关闭连接了。

好啦,突然看了看,剩下总结的都可以归为缓存了,那就在下一篇里面再写吧,拜拜了您呐:grin:


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

技术元素

技术元素

[美] 凯文·凯利 / 张行舟、余倩、周峰、管策、金鑫、曾丹阳、李远、袁璐 / 译言·东西文库/电子工业出版社 / 2012-5 / 55.00元

我会将我不成熟的想法、笔记、内心争论、草稿以及对其他文章的回应都写在《技术元素》中,这样我就能知道自己到底在想些什么。——KK “技术元素”(technium)是凯文•凯利专门创造出来的词语。“技术元素不仅仅包括一些具象的技术(例如汽车、雷达和计算机等),它还包括文化、 法律、社会机构和所有的智能创造物。”简而言之,技术元素就是从人的意识中涌现出来的一切。KK把这种科技的延伸面看成一个能产生......一起来看看 《技术元素》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具