浏览器输入url浏览器与服务器如何交互

1.输入网址

当我们在浏览器中输入网址的时候,浏览器会从历史记录上匹配之前已经输入的url,chrome浏览器会从缓存中把网页展示出来

2.浏览器查找域名的IP

1.浏览器解析域名,浏览器先查看本地硬盘hosts文件,如果有与这个IP相匹配的规则,则使用host文件里面的IP;
2.如果本地hosts文件没有找到对应的IP地址,浏览器会发出一个DNS请求到本地的服务器,本地的DNS服务器指的是中国联通或者中国移动;
3.先读取本地的DN解析器缓存,如果没有缓存向跟本地的DNS服务器查询,然后迭代查询;

3.TCP连接 「SYN 表示建立联机 ACK表示确认」

第一次握手:建立连接 客户端发送syn包 到服务器 并进入SYN_SENT状态,等待服务器确认
第二次握手:服务器收到syn包,服务器确认完后 向客户端发送一个syn包 也就是 syn+ack,服务器进入SYN_RECV状态
第三次握手:客户端收到SYN+ACK包,客户端向服务器发送ACK 服务器和客户端进去ESTABLISHED状态

举个栗子帮助理解TCP的三次握手:
A : 你好我是A,你能听得到我说话吗?(第一次握手 客户端向服务器发送建立连接请求)

B : 听到了,我是B,你能听到我说话吗?(第二次握手 服务器向客户端发送接到连接请求)

A : 可以,听到了 (第三次,客户端对服务器的接受状态回应)

好建立连接,开始聊天!

举个栗子帮助理解TCP四次挥手
A:“喂,我不说了。”A->FIN_WAIT1

B:“我知道了。等下,上一句还没说完。Balabala…..”B->CLOSE_WAIT | A->FIN_WAIT2

B:”好了,说完了,我也不说了。”B->LAST_ACK

A:”我知道了。”A->TIME_WAIT | B->CLOSED

A等待2MSL,保证B收到了消息,否则重说一次”我知道了”,A->CLOSED

4.浏览器向服务器发送http请求

完整的请求包含起始行 请求头 请求体

5.浏览器接受服务器的响应

6.页面渲染

解析dom css 页面rander

7.发送异步请求

ajax

8.关闭TCP连接或者保持连接

websocket 会保持连接;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值