I will be starting a project which requires communication between distributed nodes(the project is in C++). I need a lightweight message passing library to pass very simple messages(basically just strings of text) between nodes. The library must have the following characteristics:
No external setup required. I need to be able to get everything up-and-running in my code - I don't want to require the user to install any packages or edit any configuration files(other than a list of IP addresses and ports to connect to).
The underlying protocol which the library uses must be TCP(or if it is UDP, the library must guarantee the eventual receipt of the message).
The library must be able to send and receive arbitrarily large strings(think up to 3GB+).
The library needn't support any security mechanisms, fault tolerance, or encryption - I just need it to be fast, simple, and easy to use. I've considered MPI, but concluded it would require too much setup on the user's machine for my project.
What library would you recommend for such a project? I would roll my own, but due to time constraints, I don't think that will be feasible.
Take a look at ØMQ, i.e. ZeroMQ.