Cloud computing has attracted a great deal of attention in both academia and industry. We envision the provision of differentiated services as being one of the key components to the success of cloud computing. Unfortunately, this issue has not been addressed fully in the past. By observing that different users might have different requirements with regards to availability, reliability, durability, response time and so on, we conjecture that providing flexible replication mechanism is the right approach to service differentiation. In this paper, we propose Differentiated Replication (DiR), which allows users to choose different replication strategies by considering both the user requirements and system capability. We implemented a system that offers four differentiated storage services with DiR. The experimental results show that this service actually provides different availabilities and execution times for different service types with the same request traces, failure traces, and work...