base: share WebSocket framing across tunnel transports (#331706)