BoxBroker: A Policy-Driven Framework for Optimizing Storage Service Federation