面经--计算机网络
1.HTTP 与 HTTPS 的区别
- 证书申请方式不同:http免费申请。HTTPS 需要到 CA (Certificate Authority,证书颁发机构)申请证书,一般免费证书较少,因而需要一定费用。
- 传输信息安全性不同:HTTP 是超文本传输协议,是明文传输,HTTPS 是具有安全性的 SSL 加密传输协议。
- 使用端口不同:HTTP是80,HTTPS是443。
- 连接方式不同:HTTP 的连接很简单,是无状态的。HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。(无状态的意思是其数据包的发送、传输和接收都是相互独立的。无连接的意思是指通信双方都不长久的维持对方的任何信息。)
【双向身份的认证:客户端和服务端在传输数据之前,会通过基于X.509证书对双方进行身份认证 。具体过程如下:客户端发起 SSL 握手消息给服务端要求连接。服务端将证书发送给客户端。】
HTTPS 的缺点(对比优点):握手阶段比较费时,连接缓存不如http高效,增加数据开销,HTTPS协议安全是有范围,但在黑客攻击,拒绝服务攻击等时起不了作用。SSL证书通常需要绑定IP,不能在同一 IP 上绑定多个域名,IPv4 资源不可能支撑这个消耗.【IPv4:互联网通信协议第四版,使用32位(4字节)地址】
2.HTTP的交互流程:
步骤一:客户端和服务器端建立连接
步骤二: 客户端发送请求数据到服务器端(HTTP协议)
步骤三: 服务器端接收到请求后,进行处理,然后将处理结果响应客户端(HTTP协议)
步骤四: 关闭客户端和服务器端的连接(HTTP1.1后不会立即关闭)
3.TCP与UDP区别总结:
1)TCP面向连接;UDP是无连接的,即发送数据之前不需要建立连接
2)TCP提供可靠的服务。UDP尽最大努力交付,即不保证可靠交付。
3)UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
4)每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
5)TCP对系统资源要求较多,UDP对系统资源要求较少。
6)TCP是面向报文的,UDP是面向字节流的。
4.从输入网址到获得页面的网络请求的过程
(1)域名解析,其实就是根据用户输入的网址去寻找它对应的IP地址,比如输入www.baidu.com的网址就会经历以下过程:
1.1先从浏览器缓存里找IP,因为浏览器会缓存DNS记录一段时间
1.2.如没找到,再从Hosts文件查找是否有该域名和对应IP
1.3.如没找到,再从路由器缓存找
1.4.如没好到,再从DNS缓存查找
1.5.如果都没找到,浏览器域名服务器向根域名服务器(baidu.com)查找域名对应IP,还没找到就把请求转发到下一级,直到找到IP
(2)建立TCP连接
(3)根据SpringMVC后台业务返回数据,并把数据填充到HTML页面上,然后返回给浏览器
(4)浏览器进行处理
(5)绘制网页