A UNIX socket, AKA Unix Domain Socket, is an inter-process communication mechanism that allows bidirectional data exchange between processes running on the same machine.
IP sockets (especially TCP/IP sockets) are a mechanism allowing communication between processes over the network. In some cases, 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); which makes them faster and lighter than IP sockets. So if you plan to communicate with processes on the same host, this is a better option than IP sockets.
Edit: As per Nils Toedtmann's comment: UNIX domain sockets are subject to file system permissions, while TCP sockets can be controlled only on the packet filter level.
You only have a couple really good options. You are correct about SMB/CIFS over WAN, it is not the most efficient. The main benefit of going with SMB/CIFS, is to avoid a regular client/server architecture. The downside of having a decentralized architecture is inefficiency, which becomes more noticeable the more nodes connected. If you demand a decentralized setup over WAN/LAN, SMB/CIFS would be the only way to go. Also, SMB/CIFS over WAN is not recommended for security concerns.
I would prefer NFS in an all, or mostly, Linux LAN, Especially in a situation that is always connected, like shared home directory. NFS over WAN is nasty in regards to firewalls. It can be done and I have done it, but it is more then just opening a port. NFS really is a great choice when you want a NAS type setup.
If you are OK with a client/server model, I highly recommend WebDAV. You get automatically supported read (regular HTTP web-browser), easy firewalling with just one port (80 and/or 443), and solid performance.
FTP has its advantages, but over WAN you would want FTP with explicit SSL. FTPeS is newer, not all FTP clients supports it. Modern clients will, like a new copy of filezilla. But once again, firewalling is more then just popping a port open.
You really can't get more transparent then HTTP IMO. It's also what I do for my WAN/LAN, I even prefer it for just my regular LAN transfers.
Best Answer
If you already have a VPN in-place, then ftp might be a valid choice.
A latency of
~70ms
is not what I would call high though. SCP and http should perform far better then what you describe on a50mb/s 70ms
link. You may have some other problem. You might want to use iperf or something else that can test the raw capacity of your connection.