Cloud Computing: Principles and Paradigms