美文网首页
11-http/https

11-http/https

作者: 01010100 | 来源:发表于2018-06-04 17:38 被阅读9次

1、Http

HTTP 是基于 TCP/IP 协议的应用层协议

HTTP 是一个无状态协议

目前大部分浏览器都使用 HTTP 1.1 协议,在 HTTP 1.1 版本中,默认情况下所有连接都被保持。

HTTP 长连接不可能一直保持,例如 Keep-Alive: timeout=5, max=100,表示这个TCP通道可以保持5秒,max=100,表示这个长连接最多接收100次请求就断开

使用长连接之后,客户端、服务端怎么知道本次传输结束呢?判断传输数据是否达到了Content-Length 指示的大小

http请求过程:1.域名解析 2.建立连接(tcp三次握手)3.发起请求 4.服务器响应,浏览器获得html代码 5.浏览器解析html代码,并渲染页面

2、HTTP 1.1 与 HTTP2.0

HTTP 1.1

支持持久连接(HTTP/1.1的默认模式使用带流水线的持久连接),

在一个TCP连接上可以传送多个HTTP请求和响应,减少了建立和关闭连接的消耗和延迟。

一个包含有许多图像的网页文件的多个请求和应答可以在一个连接中传输,但每个单独的网页文件的请求和应答仍然需要使用各自的连接。

HTTP2.0

性能上大幅度提升

多路复用,首部压缩

3、HTTPS

https://www.wosign.com/info/https_tls_ssl_http.htm

https://blog.csdn.net/sean_cd/article/details/6966130

HTTP Over SSL

TLS/SSL中使用了非对称加密,对称加密以及HASH算法

1)浏览器请求https连接(访问服务端),并将自己支持的加密算法发送给服务端

  服务端选择一套加密算法,将证书和公钥发给浏览器

2)浏览器判断服务端证书是否合法

  浏览器随机生成一个对称秘钥(用于数据加密)

3)用服务端公钥将随机生成的对称秘钥加密

4)发送加密后的对称秘钥给服务端

5)服务端用私钥解密,获取对称秘钥,用于后续通信消息的加解密

其中,非对称加密,用于加密随机生成的秘钥。

对称秘钥用于消息通信的加解密,后续的通信都是用对称秘钥

另外Hash算法,上述步骤并未提及,用于检测消息的一致性(是否被篡改)

4、TCP 三次握手 四次挥手

https://hit-alibaba.github.io/interview/basic/network/TCP.html

https://zhangbinalan.gitbooks.io/protocol/content/tcpbao_wen_ge_shi.html

三次握手简单解释:

建立起一个TCP连接需要经过“三次握手”:

第一次握手:客户端发送syn包(seq=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(seq=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

5、网络七/四层模型

相关文章

  • 11-http/https

    1、Http HTTP 是基于 TCP/IP 协议的应用层协议 HTTP 是一个无状态协议 目前大部分浏览器都使用...

  • 《NodeJS开发教程11-Http与Https使用》

    使用nodejs不仅可以开发http、https服务器,而且还可以开发具有访问网络能力的客户端,下面我贴出具体实现...

  • 11-HTTP长连接

    http请求时在TCP的连接上发送的,TCP的连接分为长链接和短连接。长链接: HTTP请求在发送的时候,要先去创...

  • https VS https

    HTTPS=SSL+HTTPHTTP协议传输的数据是未加密的 ,也就是明文,因此使用HTTP协议传输隐私信息非常不...

  • HTTPS

    什么是HTTPS HTTPS(全称:Hypertext Transfer Protocol over Secure...

  • HTTPS

    HTTP 有以下安全性问题: 使用明文进行通信,内容可能会被窃听;(请求时,需加密) 不验证通信方的身份,通信方的...

  • HTTPS

    站点证书的有效性 SSL 自身不要求用户检查Web服务器证书,但大部分现代浏览器都会对证书进行简单的完整性检查,并...

  • Https

    我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采...

  • HTTPS

    1.为什么要有HTTPS2.HTTPS的工作原理3.密码学4.HTTPS的优缺点5.在iOS中使用HTTPS 为什...

  • HTTPS

    精悍小文:https是如何工作的? - 简书 急速开发系列——打造完善的https使用方案 - 简书

网友评论

      本文标题:11-http/https

      本文链接:https://www.haomeiwen.com/subject/ikmysftx.html