计算机网络总结( 六 )


11. http1.0和1.1 有什么区别
长连接 : 在HTTP/1.0中 , 默认使用的是短连接 , 也就是说每次请求都要重新建立一次连接 。HTTP 是基于TCP/IP协议的,每一次建立或者断开连接都需要三次握手四次挥手的开销 , 如果每次请求都要这样的话 , 开销会比较大 。因此最好能维持一个长连接 , 可以用个长连接来发多个请求 。HTTP 1.1起 , 默认使用长连接 ,默认开启Connection: keep-alive 。HTTP/1.1的持续连接有非流水线方式和流水线方式。流水线方式是客户在收到HTTP的响应报文之前就能接着发送新的请求报文 。与之相对应的非流水线方式是客户在收到前一个响应后才能发送下一个请求 。
错误状态响应码 :在HTTP1.1中新增了24个错误状态响应码 , 如409(Conflict)表示请求的资源与资源的当前状态发生冲突;410(Gone)表示服务器上的某个资源被永久性的删除 。
缓存处理 :在HTTP1.0中主要使用header里的If-Modified-Since,Expires来做为缓存判断的标准 , HTTP1.1则引入了更多的缓存控制策略例如Entity tag , If-Unmodified-Since, If-Match, If-None-Match等更多可供选择的缓存头来控制缓存策略 。
带宽优化及网络连接的使用 :HTTP1.0中 , 存在一些浪费带宽的现象 , 例如客户端只是需要某个对象的一部分 , 而服务器却将整个对象送过来了 , 并且不支持断点续传功能 , HTTP1.1则在请求头引入了range头域 , 它允许只请求资源的某个部分 , 即返回码是206(Partial Content) , 这样就方便了开发者自由的选择以便于充分利用带宽和连接 。
12. URI和URL
URI(Uniform Resource Identifier) 是统一资源标志符 , 可以唯一标识一个资源 。
URL(Uniform Resource Location) 是统一资源定位符 , 可以提供该资源的路径 。它是一种具体的 URI , 即 URL 可以用来标识一个资源 , 而且还指明了如何 locate 这个资源 。
URI的作用像身份证号一样 , URL的作用更像家庭住址一样 。URL是一种具体的URI , 它不仅唯一标识资源 , 而且还提供了定位该资源的信息 。
13. HTTP和HTTPS
端口 :HTTP的URL由“http://”起始且默认使用端口80 , 而HTTPS的URL由“https://”起始且默认使用端口443 。
安全性和资源消耗: HTTP协议运行在TCP之上 , 所有传输的内容都是明文 , 客户端和服务器端都无法验证对方的身份 。HTTPS是运行在SSL/TLS之上的HTTP协议 , SSL/TLS 运行在TCP之上 。所有传输的内容都经过加密 , 加密采用对称加密 , 但对称加密的密钥用服务器方的证书进行了非对称加密 。所以说 , HTTP 安全性没有 HTTPS高 , 但是 HTTPS 比HTTP耗费更多服务器资源 。
对称加密:密钥只有一个 , 加密解密为同一个密码 , 且加解密速度快 , 典型的对称加密算法有DES、AES等;
小知识点:
对称加密:密钥只有一个 , 加密的解密都是用的同一个密钥 , 加密解密的速度快 , 典型的对称加密有AES 。
非对称加密:密钥成对出现 , 一般加密用是私钥 , 解密用的是公钥 , 通过私钥是无法推算出公钥的 , 公钥也无法推算出私钥 , 加解密的速度相对对称加密来说慢 , 典型的非对称有RSA 。




推荐阅读