Ice is a modern object-oriented toolkit that enables you to build
distributed applications with minimal effort. Ice allows you to focus
your efforts on your application logic while it takes care of all
interactions with low-level network programming interfaces. With Ice,
there is no need to worry about details such as opening network
connections, serializing and deserializing data for network
transmission, or retrying failed connection attempts (to name but a
few of dozens of such low-level details).