计算机网络

1.CDN原理

内容分发网络。CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问对象集中的地区或网络中,在用户访问网时,利用全局负载技术将用户的访问指向距离最近的工作正常缓存服务器上,有由缓存服务器直接响应。

 

2. 请求方法head特性

Head之请求页面的首部,head请求方法和个体相同,只不过服务器响应时不会返回消息体,一个head请求的响应中http头部包含的元素信息以一个个体请求的响应信息相同,这种方法可以用来获取请求中隐含的原信息,而不用传输尸体本身,这个也经常永泰测试超链接的有效性和可用性。

Head请求有以下特点:只请求资源的首部,检查超链接的有效性,检查网页是否被修改,用于自动搜索机器人获取网页的标志信息,获取rss种子信息,或者传递安全认证信息等。

 

3. HTTP缓存机制

http缓存时浏览器第一次向一个服务器发起HTTP请求后,服务器会返回请求的资源,并在响应头中添加一些有关缓存的字段,之后浏览器在想该服务器请求资源就可以时情况使用强缓存或协商缓存。

强缓存:浏览器直接从本地缓存中获取数据,不与服务器进行交互。

协商缓存:浏览器发送请求到服务器,服务器判断是否可以使用本地缓存。

 

4. TCP/IP的网络模型

TCP/IP模型时一系列网络协议的总称,这些协议的目的时使得计算机之间可以进行信息交换。TCP/IP模型分为四层:链路层,网络层,传输层,应用层

链路层:建立电路连接,使整个网络的物理基础,典型协议包括以太网,ADSL等。

网络层:分配地址和传送而二进制数据,主要协议是IP协议。

传输层:负责传送文本数据,主要协议是TCP。

应用层:负责传送各种最终形态的数据,时直接与用户信息打交道的层,主要协议是http。ftp等。

 

5.从url到页面呈现

输入url---找缓存,如果没有----查询DNS服务器得到服务器的IP----建立TCP连接----发送HTTP请求------服务器解析请求,返回HTTP报文-----浏览器渲染页面

 

5.1  DNS域名解析具体原理

1.浏览器缓存:浏览器会按照一定的频率缓存DNS记录。

2. 操作系统缓存:如果浏览器缓存中找不到需要的DNS记录,那就去操作系统中找。

3. 路由缓存:路由器也有DNS缓存。

4. ISP的DNS服务器:ISP是互联网服务提供商(Internet Service Provider)的简称,ISP有专门的DNS服务器应对DNS查询请求。

5. 根服务器:ISP的DNS服务器还找不到的话,它就会向根服务器发出请求,进行递归查询(DNS服务器先问根域名服务器.,然后再问顶级域名服务器,之后是权威域名服务器,二级域名服务器,直到查询到IP地址,浏览器接收到IP地址后将其存入缓存以便下次使用)。

 

5.2   TCP三次握手

首先客户端发起会话请求,SYN=1,ACK=0,seq=J;

服务端收到请求后,确认建立会话,将SYN=1,ACK=1,ack=J+1,seq=K并将自己所能接受的最大字节传送给客户端;

客户端收到后,检查ACK标志位(确认位)是否为1,以及ack(确认序号)是否正确,正确后设置自己的最大传输字节,然后向服务端发送数据确认,此时ACK=1,ack=K+1,服务端收到后检验seq以及ack的值,正确则成功建立会话,后面继续通信。

 

5.3   浏览器渲染

HTML是个树形结构,浏览器根据这个html来构建DOM树,再构建DOM树过程中间如果有遇到js脚本和外部JS连接,会停止构建DOM树来执行和下载相应的js代码,因此JS代码推荐写在HTML代码后面。之后根据样式构建CSSOM树,构建完之后与DOM合并为渲染树,之后进行布局,布局主要是确定各个元素的位置和尺寸,之后是渲染页面。(因为html文件中会含有图片,视频,音频等资源,在解析DOM的过程中,遇到这些都会进行并行下载,浏览器对每个域的并行下载数量有一定的限制,一般是4-6个,当然在这些所有的请求中我们还需要关注的就是缓存)

posted @ 2020-03-18 09:58  mle123  阅读(177)  评论(0编辑  收藏  举报