bhyve VNC server could support multiple connections
The current bhyve VNC server only accepts one connection at a time. It would be nice if it supported multiple shared connections.
Updated by Andy Fiddaman 4 months ago
I tested this part of the VNC server rewrite (see also #14495) by connecting several clients in parallel to the VNC server for a running VM and disconnecting/reconnecting them at various points while testing that multiple clients could simultaneously control the keyboard and mouse at the same time, and that updates were sent to all clients. Most testing was with two clients from two different computers but I also tested connecting 6 clients in parallel from a single computer using a variety of different software. Updates (particularly whole screen refreshes) slowed down in this fairly extreme case but that is to be expected given the fairly crude VNC server implementation that only supports simple rectangle updates.
Part of this work has also added support for clients to request exclusive access to the server, and I tested this in various way by having clients connect with the exclusive flag set, and verifying that other clients were disconnected and could not reconnect while the original client was connected. When that original client closed the connection, others could connect again.
It has been exercised pretty well in OmniOS which has had this change since early February.
Updated by Electric Monk 4 months ago
- Status changed from In Progress to Closed
- % Done changed from 0 to 100
commit 1aa1f41fe10c6220a7fbef328fac1b72a8355a01 Author: Andy Fiddaman <email@example.com> Date: 2022-04-23T11:02:39.000Z 14495 bhyve VNC server should support alternate pixel formats 14494 bhyve VNC server could support multiple connections 14505 libumem's umem_update thread could be named 14506 libidspace does not expose id_allocff() 14640 bhyve VNC authentication fails with openssl3 Reviewed by: Jason King <firstname.lastname@example.org> Reviewed by: Michael Zeller <email@example.com> Approved by: Robert Mustacchi <firstname.lastname@example.org>