广东彩票官网
  • 互联网
  • 建站经验
  • 网站优化
  • 百度竞价
  • 网站推广
  • 电子商务
  • 网站运营
  • 移动互联
经典案例
最新动态
  • 我是如何寻找seo图标素材
  • 网站关键词选择的四大步
  • 搜索引擎眼中的原创文章
  • 为独立移动网站提供更完
  • 荐2014年春节网站优化安排
  • 浅析快照对排名的影响
  • 网站页的?#31456;?#19982;快照并不
  • 浅析做好电商网站外链需
  • 为什么说电商网站做SEO会
  • 谈谈网站SEO的几个重点
IE79 大型网站HTTPS实践三:基于协议和配置的优化
纵易网络 > 建站知识 > 网站优化 >

大型网站HTTPS实践三:基于协议和配置的优化

发布于:2015-05-14 14:43来源:网络整理 作者: 纵易网络点击:70次

1 前言

上文讲到 。

本文就为大家介绍 HTTPS 在访问速度,计算性能,安全等方面基于协议和配置的优化。

2 HTTPS 访问速度优化

2.1 Tcp fast open

HTTPS 和 HTTP 使用 TCP 协议进行传输,也就意味着必须通过三次握手建立 TCP 连接,但一个 RTT 的时间内只传输一个 syn 包是不是太浪费?能不能在 syn 包发出的同时捎上应用层的数据?#31185;?#23454;是可以的,这也是 tcp fast open 的思路,简称 TFO。具体原理可以参考 rfc7413。

遗憾的是 TFO 需要高版本内核的支持,linux 从 3.7 以后支持 TFO,但是目前的 windows 系统还不支持 TFO,所以只能在公司内部服务器之间发挥作用。

2.2 HSTS

前面提到过将用户 HTTP 请求 302 跳转到 HTTPS,这会有两个影响:

1、不安全,302 跳转不仅暴露了用户的访问站点,也很容易被中间者支持。

2、降低访问速度,302 跳转不仅需要一个 RTT,浏览器执行跳转也需要执行时间。

由于 302 跳转事实上是由浏览器触发的,服务器无法完全控制,这个需求导致了 HSTS 的诞生:

HSTS(HTTP Strict Transport Security)。服务端返回一个 HSTS 的 http header,浏览器获取到 HSTS 头部之后,在一?#38382;?#38388;内,不管用户输入www.baidu.com还是http://www.baidu.com,都会默认将请求内部跳转成https://www.baidu.com。

Chrome, firefox, ie 都支持了 HSTS(http://caniuse.com/#feat=stricttransportsecurity)。

2.3 Session resume

Session resume 顾名?#23478;?#23601;是复用 session,实现简化握手。复用 session 的好处有两个:

1、减少了 CPU 消耗,因为不需要进行非对称密钥交换的计算。

2、提升访问速度,不需要进?#22411;?#20840;握手阶?#21619;?#33410;省了一个 RTT 和计算耗时。

TLS 协议目前提供两种机制实现 session resume,?#30452;?#20171;绍一下。

2.3.1 Session cache

Session cache 的原理是使用 client hello 中的 session id 查询服务端的 session cache, 如果服务端有对应的缓存,则直接使用已有的 session 信息提前完成握手,称为简化握手。

Session cache 有两个缺点:

1、需要消耗服务?#22235;?#23384;?#21019;?#20648; session 内容。

2、目前的开源软件包括 nginx,apache 只支持单机多进程间共享缓存,不支持多机间分布?#20132;?#23384;,对于百度或者其他大型互联网公司而言,单机 session cache 几乎没有作用。

Session cache 也有一个非常大的优点:

session id 是 TLS 协议的标准字段,市面上的浏览器全部都支持 session cache。

百度通过对 TLS 握手协议及服务器端实现的优化,已经支持全局的 session cache,能够明显提升用户的访问速度,节省服务器计算资源。

2.3.2 Session ticket

上节提到了 session cache 的两个缺点,session ticket 能够弥补这些不足。

Session ticket 的原理参考 RFC4507。简述如下:

server 将 session 信息?#29992;?#25104; ticket 发送给浏览器,浏览器后续握手请求时会发送 ticket,server 端如果能成功解密和处理 ticket,就能完成简化握手。

显然,session ticket 的优点是不需要服务端消耗大量资源?#21019;?#20648; session 内容。

Session ticket 的缺点:

1、session ticket 只是 TLS 协议的一个扩展特性,目前的支持率不是很广?#28023;?#21482;有 60% 左右。

2、session ticket 需要维护一个全局的 key 来加解密,需要考虑 KEY 的安全性和部署效?#30465;?/p>

总体来讲,session ticket 的功能特性明显优于 session cache。希望客户端实现优先支持 session ticket。

2.4 Ocsp stapling

Ocsp 全称在线证书状态检查协议 (rfc6960),用来向 CA 站点查询证书状态,?#28909;?#26159;否撤销。通常情况下,浏览器使用 OCSP 协议发起查询请求,CA 返回证书状态内容,然后浏览器接受证书是否可信的状态。

这个过程非常消耗时间,因为 CA 站点有可能在国外,网络不稳定,RTT 也比较大。那有没有办法不直接向 CA 站点请求 OCSP 内容呢?ocsp stapling 就能实现这个功能。

详细介绍参考 RFC6066 第 8 节。简述原理就是浏览器发起 client hello 时会携带一个 certificate status request 的扩展,服务端看到这个扩展后将 OCSP 内容直接返回给浏览器,完成证书状态检查。

由于浏览器不需要直接向 CA 站点查询证书状态,这个功能对访问速度的提升非常明显。

Nginx 目前已经支持这个 ocsp stapling file,只需要配置 ocsp stapling file 的指令就能开启这个功能:

  • ssl_stapling on;ssl_stapling_file ocsp.staple;

2.5 False start

(责任编辑:纵易网络)
tag标签:站长之家(6108)HTTPS协议(3)HTTPS(2)
------分隔线----------------------------
  • 上一篇:大型网站的HTTPS实践四:协议层以外的实践
  • 下一篇:网站更新升级要注意的三大问题
------分隔线----------------------------
[相关文章]
  • Web前端性能优化教程02:使用内容分发网络
  • 新手遇到这些快照难题 该如何解决?
  • 谷歌要向广告商展示视频广告效果
  • 详情页优化那些不得不说的细节
  • 网站上线一个多月依旧不?#31456;?#21407;因何在?
  • 浅析做好电商网站外链需要具备哪些条件
  • 网站优化:如何将内容营销有效植入SEO中?
  • 判读搜索引擎作弊算法
  • 百度分享哪些SEO外链是有效的
  • 关键词排名上不了首页!SEO技术不行?
  • 论顺序在网站优化过程中的重要性
  • 浅谈移动搜索流量增加后SEOER该何去何从
  • 谷歌“企鹅算法3.0”的影响到底有多大?
  • SEO新思维:教你如何利用热点?#24405;?#25630;优化
  • 搜索引擎前三位的网站是如何做优化的?
  • 盘点影响网站?#31456;?#37327;的因素
  • 2014年新站应该如何做SEO优化
  • 企鹅算法or熊猫算法?#26680;?#26159;网站被K元凶?
  • 网站代码优化:让网站打开速度飞起来
  • Web前端性能优化教程03:添加Expires头
Copyright_r"> Copyright © 2002-2015 纵易网络 版权所有 Power by Zynet 版权所有

点击这里给我发消息

点击这里给我发消息

客户服务热线

021-69106465

现在就咨询

在线客服
广东彩票官网