SMS: Principles of distributed systems