• 0

HTTP协议系列——网页搜索的全过程

修车员 发表于 2018-9-23 20:29:07 | 显示全部楼层 |阅读模式 来自 湖北
405 1

马上登录,结交更多好友,享用更多功能,让你轻松玩转光谷通

您需要 登录 才可以下载或查看,没有账号?立即注册

x
首先我们谈到HTTP协议时,最多的最常见的是应用到浏览器的访问过程,在《图解HTTP》协议中 更多的只是涉及到HTTP的请求响应过程,再多点就加个代理服务器,那么当你在你的浏览器输入www.baidu.com到底发生了什么呢?

接下来我将从网络基础的角度对这一题目举行说明。
说到这里关于网络通信的东西就更纷繁复杂了,以下是涉及的网络通信的主要协议栈。
F1.协议栈
<hr>HTTP具体过程:你访问百度的全过程解析

第一步:
你输入的URL(www.baidu.com)是百度的域名,而互联网中举行信息传输的是IP封装的 报文或字节流。所以互联网并不熟悉你 的www.baidu.com,这时它就需要DNS(Domain Name System)域名解析系统,支持UDP和TCP的访问,端口号均是53,主要基于UDP,简单点说DNS就是用于TCP/IP的分布式的数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息。这里提到的分布式是指在 I n t e r n e t 上的单个站点不能拥有所有的信息。每个站点(如大学中的系、校园、公司或公司中的部分)保留它自己的信息数据库,并运行一个服务器程序供 I n t e r n e t上的其他系统(客户程序)查询。 D N S提供了允许服务器和客户程序相互通信的协议。好了,当你输完URL,DNS协议已经将你的(www.baidu.com)解析为某个IP(因为百度的访问量实在太大,所以他们使用了服务器集群分流,所以当你和外地的老王在命令窗口Ping完显示的IP不同也不用担心。)
第二步:
当你已经解析到IP地址了,那么根据你的目的IP,你的计算机会通过网络(期间不知道经过多少交换机、路由器,可在个人PC的cmd窗口输入netstat -r 去查看路由表,不知道有多少次的封装报文、解析报文)为你的IP地址找到浏览器客户端到服务器的路径。主要通过传输层TCP的封装成数据包,在客户端的传输层,会将HTTP会话请求分成报文段,添加源和目的端口。TCP会给在这一步里面最重要的就是于WEB服务器建立TCP连接。
第三步:
与应用层 的HTTP举行会话(在应用层就是我们具体学习到的协议相关)此时会HTTP请求,这就需要回顾请求的全过程了,最主要的方法是GET。
重要的首部字段需要了解的比如HEADER里面涉及到的
user-agent:产生请求的浏览器类型
accept :客户端可识别的内容类型列表
host: 请求的主机,允很多个域名同个IP,即虚拟主机
Accept-Language:客户端可接收的自然语言
Accept-Encoding:客户端可接收的编码方式
Accept-Charset :可接收的应答字符集
connection :连接方式(close or keep alive)
Cookie : 存储客户端可扩展字段,向同一域名的服务端发送属于该域的cookie
第四步:
服务器的永久重定向响应(301)
是否带www
响应内容
Location
Connection
第五步:
浏览器跟踪重定向地址
再发一个HTTP get
第六步:
服务器处置惩罚请求
第七步
服务器返回个HTML响应
第八步:
释放TCP连接。connection 模式为close,则服务器主动关闭TCP 连接,客户端被动关闭连接,释放TCP 连接;若connection 模式为keepalive,则该连接会保持一段时间,在该时间内可以继续接收请求;
第九步:
客户端解析HTML内容
HTTP报文解析:
网络智能机顶盒开机认证全过程就是典范的HTTP协议
给大家显现一下具体报文:
(在这里又不得不安利一下,我日常使用的wireshark,网络协议与报文相关的真好用)
F2.WireShark抓取
请求与响应部分:
F3.请求响应报文
不过一般设备商的机顶盒,网关一般是面向运营商的定制版本,所以HTTP过程也是必须符合电信规范要求的,首部字段等部分都是规定死的
更细节的说的话,就是从各个层来说了。在客户端的传输层,会将HTTP会话请求分成报文段,添加源和目的端口。在客户端的网络层,主要任务是通过路由表确定如何到达服务器,客户端的链路层主要是查找IP对应MAC,然后发送ARP请求目的地址。
就像我在上篇所介绍的,网络交流的过程是IP之间的通信沟通。对于通信来说,也可以很简单的理解为发——收。专业一点的说法就是调制解调的过程。

免责声明:如果侵犯了您的权益,请联系光谷社区站长,我们会及时删除侵权内容,谢谢合作!
光谷通·版权声明
1、本帖所有言论和图片纯属会员个人意见,与本网站无关; 2、本站所有主题由该帖子作者发表,该帖子作者与光谷通享有帖子相关版权; 3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和光谷通的同意; 4、帖子作者须承担一切因本文发表而直接或间接导致的法律责任; 5、本帖部分内容转载自其它媒体/平台,但并不代表本站同意其观点和对其真实性负责; 6、如本帖侵犯到您的权益,请立即告知本站,本站将及时予以核实,并作出隐藏、删除等处理; 7、光谷通管理员和版主有权在不事先通知发贴者的情况下删除本文。
回复

使用道具 举报

全部回复(1)
戴大俠 来自 湖北
2018-9-23 21:28:02
您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|小黑屋|关于我们

Copyright © 2012-2024, 微网科技.    Powered by Discuz! X3.5    鄂ICP备12013467号-10|网站地图|Sitemap

GMT+8, 2024-11-10 18:40 , Processed in 0.291659 second(s), 37 queries .