传播文化有限公司网站建设,网站营销的分类有哪些,网站后缀是nl是哪个国家,html免费的模板网站有哪些目录 前言 一、解析URL 二、解析域名(DNS) 三、TCP三次握手建立连接 1.seq、syn、ack含义 2.三次握手 四、发送http/https请求 五、服务器响应请求 六、浏览器解析渲染页面 七、TCP四次挥手断开连接 总结 前言
看各种面经发现这个问题是一个高频出现的面试问题#xff0c;但… 目录 前言 一、解析URL 二、解析域名(DNS) 三、TCP三次握手建立连接 1.seq、syn、ack含义 2.三次握手 四、发送http/https请求 五、服务器响应请求 六、浏览器解析渲染页面 七、TCP四次挥手断开连接 总结 前言
看各种面经发现这个问题是一个高频出现的面试问题但我自己对于浏览器知识点的了解相对薄弱通过这篇文章来简单了解下浏览器相关知识点。
一、解析URL 输入URL按下回车后浏览器会提取输入的协议、域名、路径等信息检测输入的URL是不是一个合法的链接或者搜索词。 二、解析域名(DNS)
域名的构成如www.baidu.com.
最后的.为根域名常忽略不写
.com:一级域名也叫顶级域名 com一般为营利组织 还有.net网络提供商 .org非营利组织
baidu:二级域名
www:主机名 获取输入域名中的ip地址会通过多层域名解析服务器解析域名获得ip地址。 1.会在本地缓存中查找是否缓存过域名所指的ip地址 2.会检查host文件 3.浏览器发送一个请求到本地DNS服务器本地DNS服务器进行解析 4.如果本地DNS服务器没有则本地DNS服务器向根DNS服务器发送请求进行解析 5.如果根域名解析服务器没有则本地DNS服务器去向顶级域DNS服务器进行解析 6.本地DNS服务器向权威DNS服务器发送请求 三、TCP三次握手建立连接
1.seq、syn、ack含义 seq序列号 用于标识TCP报文段的顺序 ack确认号 用于确认已接收到的报文字段的序列号 SYN用于建立连接等于1时表示这是一个连接请求或连接接受报文 ACK确认序号有效 为1时生效为0时无效 2.三次握手
1.第一次握手 客户端发送SYN包seqx到服务器等待服务器确认
2.第二次握手 服务器接收客户端的SYN包确认客户的SYN(ackx1),同时自己也发送一个SYNseqy包,即ACKSYN包
3.第三次握手 客户端接收服务器传过来的ACKSYN包向服务器发送确认包ACK(acky1)
三次握手完成客户端和服务器正式开始传递数据
如图所示 四、发送http/https请求
TCP连接建立好后浏览器会向服务器发送http/https请求 完整的请求包含三个部分请求行请求头部请求体 五、服务器响应请求 六、浏览器解析渲染页面
在这条博客详细写了浏览器渲染的流程
浏览器的渲染流程-CSDN博客
七、TCP四次挥手断开连接 FIN请求释放连接 第一次挥手客户端发送FIN(sequ)数据包到服务器用来关闭客户端到服务器的数据连接
第二次挥手服务器接收FIN包向客户端发送ACK包seqv,acku1将序列号1作为本次确认号
第三次挥手服务器发送一个FIN(seqw)包到客户端请求客户端关闭连接
第四次挥手客户端收到服务器发送的FIN包向服务器端发送ACK包ackw1将序列号1作为本次确认号sequ1将确认号作为序列号发送)服务器收到ACK包后关闭连接客户端等待一段时间后未收到服务器端消息证明其关闭后则关闭连接。
如图所示 总结
以上就是在浏览器中输入URL到回车会发生的全部过程