没有合适的资源?快使用搜索试试~ 我知道了~
作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里 也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。 本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事
资源推荐
资源详情
资源评论






























从浏览器输入网址到页面打开过程详解
作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里
也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。
本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事~
1.首先嘛,你得在浏览器里输入要网址:
2.浏览器查找域名的IP地址
导航的第一步是通过访问的域名找出其IP地址。DNS查找过程如下:
浏览器缓存–浏览器会缓存DNS记录一段时间。有趣的是,操作系统没有告诉
浏览器储存DNS记录的时间,这样不同浏览器会储存个自固定的一个时间(2分钟到
30分钟不等)。
系统缓存–如果在浏览器缓存里没有找到需要的记录,浏览器会做一个系统调用
(windows里是gethostbyname)。这样便可获得系统缓存中的记录。
路由器缓存–接着,前面的查询请求发向路由器,它一般会有自己的DNS缓
存。
ISPDNS缓存–接下来要check的就是ISP缓存DNS的服务器。在这一般都能找
到相应的缓存记录。
递归搜索–你的ISP的DNS服务器从跟域名服务器开始进行递归搜索,从.com顶
级域名服务器到Facebook的域名服务器。一般DNS服务器的缓存中会有.com域名服
务器中的域名,所以到顶级服务器的匹配过程不是那么必要了。
DNS递归查找如下图所示:

DNS有一点令人担忧,这就是像wikipedia.org或者facebook.com这样的整个域名看上去
只是对应一个单独的IP地址。还好,有几种方法可以消除这个瓶颈:
循环DNS是DNS查找时返回多个IP时的解决方案。举例来说,Facebook.com
实际上就对应了四个IP地址。
负载平衡器是以一个特定IP地址进行侦听并将网络请求转发到集群服务器上的
硬件设备。一些大型的站点一般都会使用这种昂贵的高性能负载平衡器。
地理DNS根据用户所处的地理位置,通过把域名映射到多个不同的IP地址提高
可扩展性。这样不同的服务器不能够更新同步状态,但映射静态内容的话非常好。
Anycast是一个IP地址映射多个物理主机的路由技术。美中不足,Anycast与
TCP协议适应的不是很好,所以很少应用在那些方案中。
大多数DNS服务器使用Anycast来获得高效低延迟的DNS查找。
3.浏览器给web服务器发送一个HTTP请求
因为像Facebook主页这样的动态页面,打开后在浏览器缓存中很快甚至马上就会过期,毫
无疑问他们不能从中读取。
所以,浏览器将把一下请求发送到Facebook所在的服务器:
GEThttp://facebook.com/HTTP/1.1
Accept:application/x-ms-application,image/jpeg,application/xaml+xml,[...]
User-Agent:Mozilla/4.0(compatible;MSIE8.0;WindowsNT6.1;WOW64;[...]
Accept-Encoding:gzip,deflate
Connection:Keep-Alive
Host:facebook.com
Cookie:datr=1265876274-[...];locale=en_US;lsd=WW[...];c_user=2101[...]
GET这个请求定义了要读取的URL:“http://facebook.com/”。浏览器自身定义
(User-Agent头),和它希望接受什么类型的相应(AcceptandAccept-Encoding头).
Connection头要求服务器为了后边的请求不要关闭TCP连接。
剩余7页未读,继续阅读
资源评论


NinjaPanda
- 粉丝: 30
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- (源码)基于C语言RTThread框架的龙芯1C板级支持包.zip
- 中国移动通信公司基于位置业务LBS业务规范.doc
- 用matlab电力系统潮流计算(课程设计).doc
- 基于单片机的超声波测距系统设计.doc
- Proteus电路仿真软件在电路设计方案中的应用.doc
- 校园局域网网络建设规划技术方案.doc
- 机房监控SCADA系统解决方案.doc
- 物联网趋势下的智能家电设计研究.docx
- 云计算中数据中心的虚拟化技术.docx
- 工业互联网安全的现状和应对策略.docx
- PLC控制液压立体车库设计方案.doc
- 全国计算机等级测验二级C语言真题库之选择题(13).doc
- 成都信息工程学院电子商务系.doc
- 计算机操作系统的安全管理策略之浅析.doc
- 物联网体系结构及LTE-A在物联网中系统架构的探讨分析.docx
- 单片机课程设计方案——步进电机控制.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
