-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Description:
Consider the possibility of also allowing AF_UNIX unix-socket connections to a nbd-server also (maybe also rbd-client, if the rbd-protocol also has the same ability)
Since Windows-10 1803 Windows allows for usable AF_UNIX unix-sockets.
AF_UNIX sockets can be used when the processes (storport-wnbd-client and nbd-server) are local.
An emulated socketpair() is also said to be do-able. (but some advanced things like abstract unix-sockets are not do-able)
Advantages include:
- A performance benefit is to be expected as AF_UNIX sockets avoid the network packetization overhead that happens over TCP/IP layers. Peers communicate over unix-socket at the session-layer.
- avoids exposing the nbd-server tcp port over the network
- filesystem permissions safeguard the socket.
- TCP connections need layer-4 ACK-keep-alives going back and forth.
References
- Since 20171219, Insider Build 17063, Microsoft has added AF_UNIX to windows sockets.
https://devblogs.microsoft.com/commandline/af_unix-comes-to-windows/ - Since 20220126, gnome/glib/gio-2.71.1 has AF_UNIX (current version 2.76.0 as of 20230312)
https://gitlab.gnome.org/GNOME/glib/-/issues/2487 - Since 20210607, afunix.h may already be bundled with mingw-w64
https://www.mail-archive.com/mingw-w64-public@lists.sourceforge.net/msg18854.html - some discussion on the feature : make AF_UNIX sockets on Windows work
AF_UNIX abstract on Windows do not work microsoft/WSL#4240
Misc
- similar type bug: opengl over spice/qemu/virt-viewer can also benefit from AF_UNIX. (development, which has been inching along, precedes my filing of the issue)
https://gitlab.freedesktop.org/spice/spice/-/issues/76
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request