VMware SD-WAN 使用 WebSocket 支持与 VMware SD-WAN Edge 之间的双向通信。WebSocket 是单个 TCP 连接上的全双工通信协议。Websocket 可以轻松在 Web 浏览器(或其他客户端应用程序)和 Web 服务器之间进行通信,开销比 HTTP 轮询少得多。远程诊断使用双向 WebSocket 连接而不是实时模式检测信号机制,以提高 VMware SD-WAN Orchestrator 中的远程诊断响应速度。
WebSocket 通信涉及以下两种 WebSocket 连接,以将 WebSocket 消息从 Web 浏览器传送到 VMware SD-WAN Edge,反之亦然:
- Web 浏览器(Orchestrator UI 门户)和 Orchestrator 之间的 WebSocket 连接。该连接负责与 Web 浏览器之间的所有通信,以及设置建立 WebSocket 连接所需的系统属性。
- Orchestrator 和 Edge 之间的另一个 WebSocket 连接。该连接是持久性的,并在激活 Edge 时设置以处理来自 Edge 的检测信号以及将响应发回到 Orchestrator。
在 Web 浏览器和 Edge 之间建立 WebSocket 连接时,为了确保 Web 安全以防范分布式拒绝服务 (Distributed Denial-of-Service, DDoS) 和跨站点请求伪造 (Cross Site Request Forgery, CSRF) 攻击,将针对入站请求验证用于访问 Orchestrator UI 的浏览器源地址。
在大多数 Orchestrator 中,浏览器源地址/DNS 主机名与
network.public.address
系统属性值相同。为了支持用于从浏览器中访问 Orchestrator UI 的地址与
network.public.address
系统属性值不同的场景,为 WebSocket 连接新添加了以下系统属性:
network.portal.websocket.address
- 允许设置备用地址/DNS 主机名,以便在浏览器地址与network.public.address
系统属性值不同时从浏览器中访问 UI。默认情况下,不会设置network.portal.websocket.address
系统属性。session.options.websocket.portal.idle.timeout
- 允许设置浏览器 WebSocket 连接处于空闲状态的总时间(以秒为单位)。默认情况下,浏览器 WebSocket 连接在空闲状态下保持 300 秒。
要在 Edge 上运行远程诊断测试,请执行以下步骤。