Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

3 Answers 3

unix sockets are inter-process-communication mechanism that allows bidirectional data exchange between process running on the same machine.

while ip sockets [in special case tcp/ip] are mechanism allowing to communicate between processes over the network. in special case you can use tcp-ip sockets to talk with processes running on the same computer [ by using the loopback interface ].

UNIX domain sockets know that they’re executing on the same system. So they can avoid some checks and operations (like routing) and this makes them faster and lighter than IP sockets. So if you plan to communicate with processes on same host this is a better option than IP sockets.

share|improve this answer
    
Bronze this answer since it may have been the one to get you 10k. =) –  Wesley May 15 '10 at 22:09

you can list your own machine local unix sockets with

netstat -a -p --unix

have fun!

share|improve this answer
    
Is there a similar command for windows? –  apache Mar 20 '10 at 14:28
    
Unix sockets don't exist on Windows. netstat does however work on Windows. –  Mark Tomlin Jul 17 '12 at 14:29
    
@apache, similar thing in Windows called "Named pipes". –  ruslan Nov 1 '12 at 6:34

A unix socket can be used for both 'interprocess' and for tcp/ip (remote) connections.

http://www.gnu.org/software/libc/manual/html_node/Sockets.html#Sockets

share|improve this answer
    
I'm not sure if "by definition" your statement is correct! A unix socket can not be used for tcp/ip (remote) communication, only an inet socket can do that. How would you expect a unix socket to route it to another PC? –  Jeach Sep 4 at 23:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.