Networking for the Cloud: Challenges and Trends