Distributed systems : principles and paradigms /: principles and paradigms. (2013)