如何优化SSL会话,以便稍后(如果需要)可以重用它以提高Client Server性能

goo*_*ate 1 c# sockets performance ssl wcf-security

我在Windows Azure上运行的服务器带有一个大密钥(链接用于演示SSL证书中的大密钥).基于此Security.SE对话,从CPU角度来看,设置和拆卸更大的密钥将更加昂贵.

假设我使用的是.NET客户端和.NET服务器; 我应该做出哪些更改(如果有的话)以减少连接/断开SSL透视图的开销.

出于对话的目的,让我们包括这些场景(如果你能想到它们,可以添加更多场景)

  • Web浏览器到IIS
  • WCF客户端到WCF服务器(IIS)
  • WCF客户端到WCF TCP
  • 基于套接字的客户端到基于套接字的服务器

Jum*_*ram 5

初始握手的成本基本上是固定的(给定某些参数).恢复握手的成本大约为零.

提高性能的方法是增加恢复会话的会话数量,而不是初始会话.这可以在恢复的握手中分摊初始握手的成本,从而降低平均握手成本.

提高恢复的握手率的最简单方法是使用更大的会话缓存大小/超时.当然,拥有大型会话缓存可能会产生自己的性能问题.人们需要在这两者之间找到一个很好的平衡点,最好的方法就是测试.