Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consider supporting TCP loopback fast path on Windows #78

Open
merberich-axonvr opened this issue Feb 26, 2019 · 2 comments
Open

Consider supporting TCP loopback fast path on Windows #78

merberich-axonvr opened this issue Feb 26, 2019 · 2 comments

Comments

@merberich-axonvr
Copy link

For applications using socket-based IPC, targeting localhost is a common practice. Windows can enable speeding up transfers through localhost by cutting network hardware out of the loop. plibsys doesn't seem to have a way to enable this feature on Windows currently. Perhaps it should to enable higher-performance local TCP comms?

(API reference for enabling this feature. Note that other libraries like ZMQ and libuv do support this feature.)

@saprykin
Copy link
Owner

@merberich-axonvr,
Thank you for pointing out on this API, looks interesting. Actually, you can setup fast loopback with plibsys: get a native socket descriptor using p_socket_get_fd() and then you can apply IOCTL as described in the link you've provided. That is exactly the same way developers from libuv handle it right now (there is no explicitly implemented support for fast loop in libuv). But ZMQ indeed has an option to tune fast loopback when creating a socket.

But I'm considering to extend the API to add a possibility of passing some socket options during the creation. There we can add things like fast path and connection timeout.

@merberich-axonvr
Copy link
Author

Oh beautiful, I'll try that, thank you :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants