Abstract :
The data centers used to create cloud services represent a significant investment in capital outlay and ongoing costs. We examine the costs of cloud service data centers today, and discuss challenges in optimizing work completed per dollar invested. To be agile and cost effective, data centers should allow agile resource allocation across large server pools. We discuss a practical network architecture that scales to support huge data centers with uniform high capacity between servers, performance isolation between services, and Ethernet layer-2 semantics. A working prototype, built using commodity switches, approaches in practice the high level of performance that the theory predicts.