网页打开过程

应用层 传输层 网络层 数据链路层 物理层 (五层因特网协议栈)
应用层:HTTP
网络层:TCP UDP
传输层:TCP
数据链路层:网络层将数据报下传给链路层,上传给网络层。
物理层:物理传输线路

一个网页打开过程:

1.DNS解析:

把域名转化为IP地址
先搜索本地缓存查找,(Chrome浏览器通过输入:chrome://net-internals/#dns 打开DNS缓存页面)
再搜索hosts文件和操作系统缓存查找
都没有结果则解析

2.发起TCP请求

经过标准的TCP握手流程(三次握手,请求,确认,连接),建立TCP连接。

3发起HTTP请求

按照HTTP协议标准发送一个索要网页的请求

4负载均衡

分摊用户(nginx)

5浏览器渲染

渲染页面,调用js脚本

一个http协议:

Request URL:请求的URL地址
Request Method: 请求方法,get/post/put/……
Status Code:状态码,200 为请求成功
Remote Address:路由地址
     1) Accept:  告诉WEB服务器自己接受什么介质类型,*/* 表示任何类型,type/* 表示该类型下的所有子类型;
     2)Accept-Charset:  浏览器申明自己接收的字符集
     Accept-Encoding:浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什么压缩方法  (gzip,deflate)
     3)Accept-Language:  浏览器申明自己接收的语言。语言跟字符集的区别:中文是语言,中文有多种字符集,比如big5,gb2312,gbk等等。
     4)Authorization:  当客户端接收到来自WEB服务器的 WWW-Authenticate 响应时,该头部来回应自己的身份验证信息给WEB服务器。
     5)Connection:表示是否需要持久连接。close(告诉WEB服务器或者代理服务器,在完成本次请求的响应后,断开连接,
     不要等待本次连接的后续请求了)。keep-alive(告诉WEB服务器或者代理服务器,在完成本次请求的响应后,保持连接,等待本次连接的后续请求)。
     6)Referer:发送请求页面URL。浏览器向 WEB 服务器表明自己是从哪个 网页/URL 获得/点击 当前请求中的网址/URL。
     7)User-Agent: 浏览器表明自己的身份(是哪种浏览器)。
     8)Host: 发送请求页面所在域。
     9)Cache-Control:浏览器应遵循的缓存机制。
            no-cache(不要缓存的实体,要求现在从WEB服务器去取)
            max-age:(只接受 Age 值小于 max-age 值,并且没有过期的对象) 
            max-stale:(可以接受过去的对象,但是过期时间必须小于 max-stale 值)  
            min-fresh:(接受其新鲜生命期大于其当前 Age 跟 min-fresh 值之和的缓存对象)
     10)Pramga:主要使用 Pramga: no-cache,相当于 Cache-Control: no-cache。
     11)Range:浏览器(比如 Flashget 多线程下载时)告诉 WEB 服务器自己想取对象的哪部分。
     12)Form:一种请求头标,给定控制用户代理的人工用户的电子邮件地址。
     13)Cookie:这是最重要的请求头信息之一
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (一)有心报国 无路请缨 公元350年,东晋朝廷以殷浩为中军将军,督五州军事,率兵北伐。只可惜殷浩此人是典型的世家...
    韩雨玄阅读 807评论 0 2
  • 21天习惯初养成,剩下来的是看你能否保持好这个习惯。这21天里,我们要每天完成群里的今日话题,临时话题(不一定),...
    May顾玮玮阅读 263评论 2 0
  • 一颗颗小蝌蚪 在水中游来游去 像小天使一样 手拉着手 那样地欢乐 慢慢地 他们都长大了 变了模样 有的长成了狼 有...
    5bd376ea631b阅读 267评论 0 0
  • 活动中心有一扇大大的窗户,我最喜欢在窗前观看路上走着的人。 早上,大学生们行色匆匆的走着。有的三五成群有说有笑;有...
    文武北洋阅读 367评论 0 0