WAN和LAN服务器之间的持久连接

时间:2013-04-17 18:17:08

标签: websocket long-polling lan wan

我们需要在WAN和LAN上的服务器之间建立持久连接。基本上多个LAN服务器必须在Internet上注册服务器并始终保持开放连接,因为我们不能要求拥有LAN服务的客户端设置端口转发,并且因为可能存在防火墙问题。

我有什么选择?我在想,无论是Websockets还是局域网上的服务器都在互联网上长时间轮询我们的服务器。有更好的解决方案吗?

1 个答案:

答案 0 :(得分:1)

您的选择是 - 考虑您希望避免代理和防火墙问题 - 可能:

  • 使用websockets,端口80或443
  • 使用长轮询(如果您需要双向通信,则不是非常持久的!)端口80或443
  • 使用端口80
  • 将任何数据封装到http请求中
  • 将端口443与ssl加密一起使用,并在协议级别执行任何操作。通常,只要你使用带有ssl加密的端口,即使使用一些奇怪的自定义协议也不会有任何问题,因为当防火墙和代理通常(尝试)检查你正在做什么时,当他们感觉到他们认为是https的时候

就我所获得的情况而言,其他所有内容都可能超出了您的范围,但您应该能够使用端口443执行所需的操作,并为持久连接创建一些协议(可以使用websockets,但是您可以快速遇到其他问题(比如缺少ping / pong实现)然后如果你不自定义构建你的代码,这可能会使得首先使用websockets毫无意义)