HRM seems to break Websocket communications to a service when websocket messages exceed +/- 1KB.
- UCP installed on Linux with HRM enabled.
- A Windows worker node behind HyperV.
- A service running on Windows attached to an overlay network router with HRM.
The Windows platform does not handle fragmented VXLAN packets correctly. In an overlay network IP, datagram are encapsulated in VXLAN which require 50 more bytes. On Linux when you create an overlay network it automatically set the mtu to 1450, but in Windows it stays at 1500, which can cause fragmentation.
Because VXLAN add 50 bytes, lower the overlay MTU to make sure it doesn't reach the 1500.
networks: name: driver: overlay driver_opts: com.docker.network.driver.mtu: 1400