在浏览器中输入URL后,执行的全部过程。(一次完整的http请求过程)
整个流程如下:
域名解析
为了将消息从你的PC上传到服务器
上.需要用到1P协议、ARP协议和0SPF协议
发起TCP的3次握手
建立TCP连接后发起http请求
服务器响应htp请求
浏览器解析htm代码,并请求html代码中的资源(如js、css、图片等)
断开TCP连接
浏览器对页面进行渲染呈现给用户
一、域名解析的详细内部过程

例如,要查询www.baidu.com的IP地址(DNS解析url):
浏览器搜索自己的DNS缓存(维护一张域名与IP地址的对应表)
若没有,则搜索操作系统中的DNS缓存(维护一张域名与IP地址的对应表)
若没有,则搜索操作系统的hosts文件(Windows环境下,维护一张域名与IP地址的对应表,位置一般在 C:\Windows\System32\drivers\etc\hosts)
若没有,则操作系统将域名发送至 本地域名服务器- -(递归查询方式),本地域名服务器 查询自己的DNS缓存,查找成功则返回结果,否则,(以下是迭代查询方式)
4.1 本地域名服务器 向根域名服务器(其虽然没有每个域名的具体信息,但存储了负责每个域,如com、net、org等的解析的顶级域名服务器的地址)发起请求,此处,根域名服务器返回com域的顶级域名服务器的地址
4.2 本地域名服务器 向com域的顶级域名服务器发起请求,返回baidu.com权限域名服务器(权限域名服务器,用来保存该区中的所有主机域名到IP地址的映射)地址
4.3 本地域名服务器 向baidu.com权限域名服务器发起请求,得到www.baidu.com的IP地址
本地域名服务器 将得到的IP地址返回给操作系统,同时自己也将IP地址缓存起来
操作系统将 IP 地址返回给浏览器,同时自己也将IP地址缓存起来
至此,浏览器已经得到了域名对应的IP地址
二、三次握手
三次握手的情况可以看我的博客https://mp.csdn.net/postedit/80735776
三、建立TCP连接后发起http请求
讲一下HTTP的浏览器缓存机制看我的博客:https://mp.csdn.net/postedit/81188624。使用Post还是Get。
四、服务器收到请求并响应HTTP请求
1.负载均衡
网站可能会有负载均衡设备来平均分配所有用户的请求。即对工作任务进行平衡,分
摊到多个操作单元上执行,如图片服务器,应用服务器等。
2请求处理阅读请求及它的参数和 cookies
五.浏览器解析htm代码,并请求htm代码中的资源(如js、css图片等)
看是否是长连接。来决定是不是断开TCP连接
六.断开TCP连接
四次挥手
七.浏览器对页面进行渲染呈现给用户
原文:https://blog.csdn.net/qq_21993785/article/details/81188253
在浏览器中输入URL后,执行的全部过程。(一次完整的http请求过程)的更多相关文章
- 在浏览器中输入URL后执行的全部过程的个人总结
这个问题经常可以看到,今天我好好总结了下,是从网络模型的角度来分析问题的,主要涉及应用层:DNS,HTTP,传输层:TCP,网络层:IP和路由选择协议:RIP,OSPF(内部网关协议),BGP(外部网 ...
- 在浏览器中输入URL后,执行的全部过程。会用到哪些协议?(一次完整的HTTP请求过程)
在浏览器中输入URL后,执行的全部过程.会用到哪些协议?(一次完整的HTTP请求过程) 整个流程如下: 域名解析 为了将消息从你的PC上传到服务器上,需要用到IP协议.ARP协议和OSPF协议. 发起 ...
- 【转】浏览器中输入url后发生了什么
原文地址:http://www.jianshu.com/p/c1dfc6caa520 在学习前端的过程中经常看到这样一个问题:当你在浏览器中输入url后发生了什么?下面是个人学习过程中的总结,供个人复 ...
- 【面试题】在浏览器中输入URL后,执行的全部过程。会用到哪些协议?(一次完整的HTTP请求过程)
整个流程如下: 域名解析 为了将消息从你的PC上传到服务器上,需要用到IP协议.ARP协议和OSPF协议. 发起TCP的三次握手 建立TCP连接后发起HTTP请求 服务器响应HTTP请求 浏览器解析h ...
- 在浏览器中输入URL并回车后都发生了什么?
1.解析URL ________________________________________________________________________ 关于URL: URL(Universa ...
- 在浏览器中输入url回车之后会发生什么
在浏览器中输入URL之后,浏览器会经历以下5个步骤: 1.解析URL 2.DNS域名解析 3.浏览器与网站建立TCP链接(三次握手) 4.请求和传输数据 5.浏览器渲染页面 一.解析URL 什么是ur ...
- 在浏览器中输入URL按下回车键后发生了什么
在浏览器中输入URL按下回车键后发生了什么 [1]解析URL[2]DNS查询,解析域名,将域名解析为IP地址[3]ARP广播,根据IP地址来解析MAC地址[4]分别从应用层到传输层.网络层和数据链路层 ...
- 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 3
备注: 因为文章太长,所以将它分为三部分,本文是第三部分. 第一部分:深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1 第二部分:深入浅出经典面试题:从浏览器中输入URL ...
- 【ASP.NET Core】EF Core - “影子属性” 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1
[ASP.NET Core]EF Core - “影子属性” 有朋友说老周近来博客更新较慢,确实有些慢,因为有些 bug 要研究,另外就是老周把部分内容转到直播上面,所以写博客的内容减少了一点. ...
随机推荐
- mongodb密码忘了怎么办
自己电脑上mongodb好长时间没上了,密码竟然给忘了,悲剧啊! 修改auth为false,然后重新启动mongodb 这时候可以不用登陆直接进入 db.changeUserPassword('use ...
- https hsts 私密链接
chrome强制转跳https,删除对某个域名的强制转跳即可 hrome的地址栏输入:chrome://net-internals/#hsts 在Delete domain下输入相对应的网址,不带 ...
- Sql优化,面试经验总结
(1)列优先 如图有表A和表B 对其查询时,会有如下语句: select a.*,b.* from a,b where a.id = b.a_id; 注意from 后边的表名, a.如果多表查询是完全 ...
- Unity NetWork
using UnityEngine; using System.Collections; public class NetworkTest : MonoBehaviour { ;//端口号 strin ...
- Linux-Linux基础入门
第一节 Linux系统简介 初步了解了什么是Linux系统,有何优势.与Windows系统有何不同,并了解Linux学习方法. 第二节 基本概念及概念 1.完成实验楼入门基础课程,共两个实验:(1)& ...
- 移动距离——第六届蓝桥杯C语言B组(省赛)第八题
原创 问题描述: 移动距离 X星球居民小区的楼房全是一样的,并且按矩阵样式排列.其楼房的编号为1,2,3...当排满一行时,从下一行相邻的楼往反方向排号.比如:当小区排号宽度为6时,开始情形如下: ...
- C#基础入门 一
C#基础入门 一 基本输入输出函数 简单程序输出helloworld using System;//引入System库 namespace MainClass { class MainClass { ...
- Oracle 表关联性 Update 语句的改写,推荐改写方法1
同事写了一个逻辑稍复杂的Update 语句,觉得在代码可读性上有些转圈,交给我帮忙改下. 以下根据原SQL,使用两种方法进行改写,个人推荐方法1的改写.方法2拆分两个SQL来写,代码可读性最强,但是S ...
- docker中安装Jenkins
1.获取Jenkins镜像(不要直接docker pull jenkin,这样获取的不是最新的版本,后续安装部分插件会不成功) docker pull jenkins/jenkins 创建文件夹 su ...
- 模仿w3c school的示例导航栏
近日学习HTML,恰巧学习过程中看见w3cschool的示例导航栏看上去很不错,适合新手练习,于是模仿着做了一个. 示例导航栏如下图所示 导航栏自然使用li标签来做,a标签控制背景颜色和鼠标放入的特效 ...