首页
登录 | 注册

HTTPS比HTTP慢的原因

HTTPs链接比不加密的HTTP链接慢很多。

HTTPs链接和HTTP链接都建立在TCP协议之上。HTTP链接比较单纯,使用三个握手数据包建立连接之后,就可以发送内容数据了。

客户端首先发送SYN数据包,然后服务器发送SYN+ACK数据包,最后客户端发送ACK数据包,接下来就可以发送内容了。这三个数据包的发送过程,叫做TCP握手。

再来看HTTPs链接,它也采用TCP协议发送数据,所以它也需要上面的这三步握手过程。而且,在这三步结束以后,它还有一个SSL握手

HTTP耗时 = TCP握手

HTTPs耗时 = TCP握手 + SSL握手

 所以,HTTPs肯定比HTTP耗时,这就叫SSL延迟。

 

命令行工具curl有一个w参数,可以用来测量TCP握手和SSL握手的具体耗时,以访问支付宝为例。

$ curl -w "TCP handshake: %{time_connect}, SSL handshake: %{time_appconnect}\n" -so 
/dev/null https://www.alipay.comTCP handshake: 0.022, SSL handshake: 0.064

 上面命令中的w参数表示指定输出格式,timeconnect变量表示TCP握手的耗时,timeappconnect变量表示SSL握手的耗时,s参数和o参数用来关闭标准输出。

 

从运行结果可以看到,SSL握手的耗时(64毫秒)大概是TCP握手(22毫秒)的三倍。

也就是说,在建立连接的阶段,HTTPs链接比HTTP链接要长3倍的时间,具体数字取决于CPU的快慢。

 

所以,如果是对安全性要求不高的场合,为了提高网页性能,建议不要采用保密强度很高的数字证书。一般场合下,1024位的证书已经足够了,2048位和4096位的证书将进一步延长SSL握手的耗时。

 

转:http://www.codeceo.com/article/ssl-time-https-slower-http.html

 


相关文章

  • 一份还热乎的蚂蚁金服面经(已拿Offer)!附答案!!
    本文来自我的知识星球的球友投稿,他在最近的校招中拿到了蚂蚁金服的实习生Offer,整体思路和面试题目由作者--泽林提供,部分答案由Hollis整理自知识星球<Hollis和他的朋友们>中「直面Java」板块. 经历了漫长一个月的 ...
  • 电厂锅炉,火电厂三大主力设备之一.在电厂生产过程中发挥了极其重要的作用,是火电厂生产所必不可少的重要设备.但是,近些年,因为锅炉安全管控不到位而造成的事故屡有发生,给电厂的财产及人员的生命造成极大威胁.分析电厂锅炉的泄漏原因,制定有针对性的 ...
  • 【前端安全】传输安全
    传输安全 HTTP传输窃听: 过程: 浏览器<->代理服务器<->链路<->服务器 在代理服务器和链路这过程中,可能会造成传输链路窃听篡改.因为HTTP是明文传输的,不会加密. 可以通过 tracert ...
  • CODING 研发管理系统上线全球加速,助力企业跨区域协作
    CODING 研发管理系统现已全面支持全类型代码仓库的 全球加速访问. 随着国内互联网红利的日趋枯竭与全球互联网的加速普及.越来越多的企业开始走出国门,将目光投向全世界,搭建跨国体系.跨出国门的中国企业在选择服务时,首要考虑国内的速度和可靠 ...
  • 文章目录前言数据探查服务的初始点:元数据的同步数据探查服务的分析:索引结构的重新构建数据探查服务的结果:汇聚表DB的存储数据探查服务的额外功能:节点级别的统计数据探查服务的外部展现:用户控制台引用 https://issues.apache ...
  • 本文总结一个目录提纲,只要是给自己看的,记录一下哪些东西已经总结过了. 闲谈IPv6-Loopback网口上的IPv6地址: https://blog.csdn.net/dog250/article/details/89333045 闲谈I ...

2020 jeepshoe.net webmaster#jeepshoe.net
13 q. 0.279 s.
京ICP备10005923号