硬件负载均衡器可以将SSLstream量与SNI路由吗?

我们有一个目前拥有2个应用程序的networking服务器场 – 两个应用程序都在所有服务器上运行。 我们想分割这个,所以我们有一个专用的服务器场为每个应用程序(我们有很好的理由)。

我们希望在所有的服务器前都有一个负载均衡器,这个负载均衡器会根据主机名将stream量路由到正确的服务器场,但是我们希望维护到服务器的SSL。

看来我们提供的路由器不这样做。 我很欣赏,如果没有SNI,这是不可能的,但我们预计几乎所有的stream量的SNI指标。

现在我是程序员,而不是networking人员,但是当新的SSL连接请求进入时,路由器不能检查SNI头,并且路由到正确的场。 假设传入的SSL连接由{source IP:source port}标识,那么对于后续传入的数据包(如果SNI仅存在于第一个数据包中),它不能记住这一点吗?

据我可以告诉Haproxy这样做,但似乎硬件负载平衡器不。 这是有什么理由的,还是我们应该推动的?

(对于最后一名在XP上使用不包含SNI的IE,我们希望将stream量发送到旧的农场,并在必要时pipe理代理到新的农场。

根据他们的网站,F5负载均衡器已经支持SNI:

https://devcentral.f5.com/articles/ssl-profiles-part-7-server-name-indication

你甚至可以制作基于SNI的iRules。

声明:

  • 我还没有validation他们在网站上声称的内容
  • 我不为F5工作,而且我还没有使用任何3年以上的生产。

路由器不能检查SNI头,

路由器通常只在OSI第3层工作,即不检查数据包的内容,而只检查目标IP。 对于基于SNI的路由,对TCP和TLS的理解将是必要的,这对于更复杂和更昂贵(关于性能)而言仅基于IP地址进行路由。 这通常也不会被称为路由。

Haproxy这样做,硬件负载平衡器不。

您正在混合路由器(第3层),硬件负载平衡器(第4层或更高)和Haproxy(软件负载平衡器)。 硬件负载平衡器只不过是一个装有一些软件负载均衡器的设备,也可能是某些特定操作的硬件加速。 基于硬件负载平衡器上不可能的SNI信息,本质上没有什么能够平衡(不是路由),而另一个答案则表明存在支持这一点的产品。 但是,当然这需要实施,而且会降低性能 – 他们越深入地观察stream量越慢。