本文只是一个整理向的随笔,以个人思路来简化的同时进行适当的拓展,如有错误,欢迎指正.

1.输入网址. 

此时得到一个url

2.域名解析

整个过程都是dns系统在发挥作用,它的目的是将域名和ip对应起来.

(1)浏览器DNS缓存:或许很多人不知道,浏览器自身也带有一层DNS缓存,它会先在缓存中查找是否有对应的映射 。

(2)操作系统DNS缓存:操作系统也有自己的DNS缓存,当浏览器DNS缓存的没找到的时候会交给操作系统,而操作系统也会优先去找自己的缓存.

(2)hosts文件:操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析.(到目前为止都是在本地完成的)

(3)当这些都没有的时候,开始向DNS服务器发送请求,最终得到相对应的ip地址.

3.tcp连接,三次握手.

(1)客户端向服务器发送请求,并带上自己的特征,列如a=1,告诉服务器是我在此时发出了请求.

(2)服务器接收到请求后,也随机生成一个代号k,并且将之前客户端的特征进行特定操作,比如a=1+1,表示我不光接收到请求了,还确定是你的请求,同时把这些信息(数据包)发送给客户端,同时自己打开大门准备迎接这次连接.

(3)客户端收到服务端的信息之后,确认a已经被加1过了,说明服务端准备好了,那么客户端会把之前服务端的特征进行特定操作并返回,比如k=1+1.服务端检查一下,k已经被加1了,好.连接通道,进行数据传输.

三次握手的目的:

最主要的目的是客户端和服务端的沟通更及时和准确.比如:第一次请求之后,由于特殊原因,该请求在路上耽搁了不少时间,一段时间后,客户端不想要资源了,而这个时候服务器才收到请求,然后就直接打开大门准备传资源,那它将会一直处于大门敞开的阶段,不光危险还的费神看门.浪费服务端的资源.

4.客户端发送HTTP请求

上面一步只是建立了连接,并没有准确的请求内容.也就是所谓的我虽然进门了,但是我没告诉你我干嘛来了.这一步就是告诉服务端我需要什么.--发送请求头和请求体

5.服务端处理

服务端表示你说的话我听到了,但是我得想想你的话里面包含哪些东西.于是开始解析请求头和请求体,并找到相应的东西在什么位置.----处理请求

6.服务端响应请求

服务端把东西打包好给客户端.-------返回响应头和响应体

7.客户端接收响应数据

客户端下载服务端提供的数据

8.tcp关闭,四次挥手

(1)客户端跟服务器说,我想要的东西拿到了,我想结束这次交流了,所以我"不想说话了"(不想发请求了).----客户端发送一个不再请求的信号给服务端.(闭嘴了)

(2)服务器听到后,"好,那我就不打算听你说话了"(闭耳了).------服务器给客户端一个信息表示我知道你不再发请求了.但是你还能接收数据.

(3)服务器犹豫着要不要再说两句,但是无论说不说最后都得闭嘴了.----------这里是服务器最后发补充数据的时候,也可以不发,但最后都得把我已经不再发数据这一信号发送出去.

(4)客户端知道服务器闭嘴之后自己也就闭耳了.--------客户端得知服务器不再提供数据,自己也就不再接收数据了.

关闭要四次的原因是,客户端虽然不再请求,但是可以继续接收,这两个状态可以分开接受,所以这里必须分成两个步骤.然后服务端也是同理.而握手的时候,客户端直接就发出了请求,少了一步确认的过程.

9.解析文件并渲染

"喂!请问是shyno先生吗?您的外卖已经到了,我已经帮你打开摆放到桌子上了,您放心食用!亲务必给个五星好评哦!"

哈哈!我怎么说的叫外卖去了?不过好像也差不多.额~~~~~~有点饿了!先去吃饭了.

从输入url到页面展示出来经历了哪些过程的更多相关文章

  1. 前端回答从输入URL到页面展示都经历了些什么

    浏览器和服务器涉及大量网络通信内容,此处做了弱化介绍,作为前端主要关注第四部分.一. 网络环境保障我们先假定我们访问的URL为www.abc.com并且地址不在局域网内:首先我们所处的局域网的总路由应 ...

  2. 从输入 URL 到页面展示,这中间发生了什么?

    当面试官问到,请你说说看"从输入 URL 到页面展示,这中间发生了什么?" 以前的我是这样回答的: 用户输入URL后,向服务器端发起请求.如果顺利,得到网络响应之后,浏览器对资源进 ...

  3. 【原】老生常谈-从输入url到页面展示到底发生了什么

    刚开始写这篇文章还是挺纠结的,因为网上搜索“从输入url到页面展示到底发生了什么”,你可以搜到一大堆的资料.而且面试这道题基本是必考题,二月份面试的时候,虽然知道这个过程发生了什么,不过当面试官一步步 ...

  4. 【转】老生常谈-从输入url到页面展示到底发生了什么

    今天看到了一篇很详细地解释了从输入url到页面展示过程的文章,好文章不能错过,所以转到自己这里来了. 原文地址:老生常谈-从输入url到页面展示到底发生了什么 以下为原文: 刚开始写这篇文章还是挺纠结 ...

  5. (转)老生常谈-从输入url到页面展示到底发生了什么

    刚开始写这篇文章还是挺纠结的,因为网上搜索"从输入url到页面展示到底发生了什么",你可以搜到一大堆的资料.而且面试这道题基本是必考题,二月份面试的时候,虽然知道这个过程发生了什么 ...

  6. 转载--从输入URL到页面展示到底发生了什么

    最近我也在看http协议, tcp相关知识, 在吃饭时无意看到来一篇文章讲解“从输入URL到页面展示到底发生了什么”, 细细看完, 很值得回味, 所以转载, 以供日后在温习. (PS, 作者这篇文章发 ...

  7. 《浏览器工作原理与实践》<04>从输入URL到页面展示,这中间发生了什么?

    “在浏览器里,从输入 URL 到页面展示,这中间发生了什么? ”这是一道经典的面试题,能比较全面地考察应聘者知识的掌握程度,其中涉及到了网络.操作系统.Web 等一系列的知识. 在面试应聘者时也必问这 ...

  8. 从输入 URL 到页面展示,到底发生了什么

    从输入 URL 到页面展示,到底发生了什么 1.输入URL 当我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等地方,找到已经输入的字符串可能对应 ...

  9. 从输入URL到页面展示,这中间都发生了什么?

    前言 在浏览器里,从用户输入URL到页面展示,这中间都发生了什么?这是一道非常经典的面试题.这里边涉及很多知识点,比如:网络协议.页面渲染.操作系统等.所以这是很好很全面的考察一个前端的知识.下面我将 ...

随机推荐

  1. 请问spfa+stack 和spfa+queue 是什么原理

    一个是bfs加迭代 一个是dfs加迭代 请问迭代是什么 就是不断地做,做到没有更优的解为止 或者是不断得做,做到逼近答案为止.. 栈比队列更快更节省空间

  2. volley基本使用方法

    用volley訪问server数据,不用自己额外开线程.以下样例为訪问JSONObject类型的数据,详细使用方法看代码: 首先得有volley的jar包,假设自己没有.去github上下载,然后自己 ...

  3. rsync + inotify 打造多server间文件实时同步

    在上篇文章ssh无password登陆server的基础之上.能够利用rsync + Inotify 在多server间实现文件自己主动同步. 例如以下測试机基于三台server做的.内网IP分别例如 ...

  4. jenkins下载插件失败解决办法

  5. Android面试常问的技术问题

    面试时技术经理会问你一些工作中遇到的Android方面的问题.谈谈你所做的项目,和在项目中所扮演的角色. 很多其它内容请參考我的博客:点击打开链接 1.怎样优化ListView? ①Item布局,层级 ...

  6. luogu3084 Photo 单调队列优化DP

    题目大意 农夫约翰决定给站在一条线上的N(1 <= N <= 200,000)头奶牛制作一张全家福照片,N头奶牛编号1到N.于是约翰拍摄了M(1 <= M <= 100,000 ...

  7. 浅谈EL与JSTL

    讲道理,自己在博大精深的Java世界里还只是一个很小很小的菜鸟.处于成长与学习之中,但学习一个漫长的过程.尤其对于那些知识点我觉得总结是尤为重要的.反正在我看来这段时间里虽然过了很多知识但却是一脸懵逼 ...

  8. hdu1533 费用流模板

    Going Home Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  9. P2932 [USACO09JAN]地震造成的破坏Earthquake Damage 爆搜

    这题怎么这么水~~~本来以为挺难的一道题,结果随便一写就过了...本来还不知道损坏的牛棚算不算,结果不明不白就过了... 题干: 农夫John的农场遭受了一场地震.有一些牛棚遭到了损坏,但幸运地,所有 ...

  10. NSURLSession 和 NSURLConnection 的比较

    一.NSURLConnection 1.iOS2.0出现,iOS9.0后废弃的网络请求发送方式 2.可以在初始化时确定发送同步还是异步的请求,并且可以选择执行队列. +(void)sendAsynch ...