[Gluster-devel] Replacing loopback with Unix Domain Sockets for I/O

Prasanna Kumar Kalever pkalever at redhat.com
Fri Nov 6 07:08:25 UTC 2015


Hi all,

Currently we use TCP loopback connection for communicating between gluster Client and Server.
Hyper-convergence may also require communication with a server running in the same hyper-visor. 

I was initially wondering if replacing IPC  with Unix Domain sockets will improve the performance?
                                             Or
Is there any theory that proves that Unix Domain socket would give better performance then TCP loopback connection?

Finally I have to Say:

Yes, local IPC by unix domain sockets will be faster than communication by loopback connections because you have less TCP overhead

Postgres core developer Bruce Momjian has blogged @ http://momjian.us/main/blogs/pgblog/2012.html#June_6_2012 about this topic. Momjian states, "Unix-domain socket communication is measurably faster." He measured query network performance showing that the local domain socket was 33% faster than using the TCP/IP stack.

Found a paper @ http://osnet.cs.binghamton.edu/publications/TR-20070820.pdf

Also See,
http://lists.freebsd.org/pipermail/freebsd-performance/2005-February/001143.html
http://bhavin.directi.com/unix-domain-sockets-vs-tcp-sockets/


The whole Idea is to bring IPC through Unix Domain Sockets in gluster instead of localhost loopback!

Any suggestions will be appreciated! 

- Prasanna ​ 




More information about the Gluster-devel mailing list