前端需要知道的计算机网络

HTTP:


1、常见的状态码:
状态码可以按照第一个数字分类,1xx表示继续发送请求;2xx表示请求已成功被服务器接收、理解并接收;3xx表示需要客户端采取进一步的操作才能完成请求,通常用来重定向;4xx表示客户端错误;5xx表示服务器错误;
常见的状态码有:
    101切换协议,
    200已成功
    301永久重定向,
    302临时重定向,
    304未修改,
    400错误请求,服务器不理解请求的语法,
    401未授权,请求要求身份认证,
    403禁止,服务器拒绝执行请求,
    404未找到,服务器找不到请求的网页
                     
2、304表示什么,和302有什么区别
    304表示未修改,自从上次请求后,请求的网页未修改过,服务器返回此响应时不会返回网页内容。
    302:历史移动,服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来继续以后的请求

3、HTTP缓存策略
      强缓存和协商缓存

4、Connection为keep-active表示什么
    HTTP协议采用‘请求-应答’模式,当使用普通模式时,每个请求客户和服务器都要建一个新的连接。keep-active表示浏览器想要优先使用的连接类型:开启持久连接。该功能使客户端到服务器端的连接持续有效。当出现对服务器的后继请求时,该功能避免了建立或者重新建立连接。

DNS:

1、什么是DNS
    域名解析系统。将用户输入的URL解析为IP地址。
2、DNS有关的性能优化
    1.减少DNS查找,避免重定向。浏览器DNS缓存、计算机DNS缓存、服务器DNS缓存、使用Keep-Alive特性来减少DNS查找。
    2.DNS预解析:
            可以通过用meta信息来告知浏览器,要进行DNS预解析
            可以使用link标签来强制对DNS进行预解析

TCP/IP


1、tcp/ip四层模型:
        应用层:用来进行文件传输,提供文件传输协议(ftp、dns、http)
        运输层:提供端对端的接口,提供网络连接中两台计算机之间数据传输所需要的协议(tcp/udp)
        网络层:数据通过怎样的传输路线到达对方计算机传送给对方
        数据链路层:传输有地址的帧

TCP:

1、三次握手
      理解三次握手的过程,并且理解为什么要三次
2、四次挥手
      理解过程,为什么三次挥手不可以

HTTPS:

1、HTTPS的工作原理
    客户端在使用HTTPS方式与Web服务器通信时有以下几个步骤:
    客户使用https url访问服务器,则要求web服务器建立ssl连接
    web服务器接收到客户端的请求之后,将网站的证书(证书中包含公钥),传输给客户端
    客户端和web服务器开始协商ssl连接的安全等级
    客户端浏览器通过双方协商一致的安全等级,建立会话密钥,然后通过网站的公钥来加密会话密钥,并传送给网站
    web服务器通过自己的私钥解密出会话密钥
    web服务器通过会话密钥加密与客户端之间的通信
2、HTTPS和HTTP的区别
    1.HTTPS协议需要到证书颁发机构申请证书,免费的证书很少,需要付费
    2.HTTP运输在tcp之上,明文传输;HTTPS运行在ssl之上,所有的信息加密传输
    3.使用的连接方式不同,端口号也不同,HTTPS协议的端口号是443,HTTP协议的端口号是80
    4.http的连接很简单,是无状态的;https是通过ssl+https协议构建的可进行身份认证,加密传输的协议,比http协议安全

CDN:


1、什么是CDN以及它的应用场景
    CDN是内容分发网络,核心作用是提高网络的访问速度。多应用在那些访问量很大的网站,如大型企业网站,政府网站,电商网站等。
2、CDN的回源是什么
    当CDN缓存服务器没有符合客户端要求的资源的时候,缓存服务器会请求上一级缓存服务器,以此类推,直到获取到。最后如果还是没有,就会到我们自己的服务器获取资源。
    
    

经典且老套的问题:

从输入URL到页面展示,发生了什么?
    dns地址解析 => tcp连接 => 发送http请求报文 => 服务器处理请求并返回http报文 => 浏览器渲染解析界面 => 连接结束  

你可能感兴趣的:(前端,html5)