发表于: 2017-06-17 22:51:53

1 920


今天完成的任务:

看了网站性能优化的方法,详细了解了网络传输的过程。


互联网协议分层,上层依靠下层的支持。

互联网协议可分为5层,从上到下依次为:

1,应用层,包括http,DNS

2,传输层,包括tcp

3,网络层,包括ip

4,链接层,包括以太网MAC

5,物理层


数据包分为包头和包体两部分。


我理解的网页传输过程:

1,在浏览器地址栏输入URL地址,客户端会查找本地hosts,查看URL中的域名对应的ip是否在其中。

2,没有在hosts中找到,则会访问最近的本地DNS服务器,若还是没找到ip地址,则继续向上一级DNS查找。

3,对应的DNS服务器查找到了ip地址,解析成功,将ip地址返回给客户端。

4,客户端http协议根据ip生成请求报文,发起HTTP请求,请求向下层传输,然后作为数据包传输到传输层。

5,tcp发起三次握手,tcp在握手时tcp数据包只包含包头信息。

6,三次握手后,http数据包作为数据包体嵌入到tcp数据包中。开始进行tcp传输。

7,tcp向下层传输,tcp数据包继续传输到网络层,作为数据包体嵌入到ip数据包中。ip协议通过ip搜索对方的地址,再向下传输。

8,再往下进行一层层封包,每层都会加一个包头,由于以太网数据包有固定的大小,故若之前的数据包超过大小后会被分成多个包,即http包会被分成多个。以太网会在局域网内进行地址查找。

9,找到了服务器的位置后,服务器再一层层解包。

10,解包到了传输层,tcp会根据分包的顺序对http请求报文重组。

11,再往上到了应用层,http请求报文被提取出来,http协议根据请求对所请求的文件进行处理,并生成响应报文,然后服务器准备返回http数据包。

12,http数据包向下层传输,期间被分包然后封包,返回到了客户端再从下层到上层以此解包,最终提取出我们需要的文件。

13,文件加载完成,一次http请求结束。

14,如果我们需要接着向服务器请求文件,会重复以上步骤,由于http1.1添加了保持连接keep-alive模式,因此我们不需要再进行tcp的3次握手了,此步略过。


明天计划的事情:

讲网站性能优化小课堂

学习数据结构


遇到的问题:

暂无


收获:

如上。






返回列表 返回列表
评论

    分享到