Cloud computing materializes the vision of utility computing. Tenants can benefit from on-demand provisioning of compute, storage, and networking resources according to a pay-per-use business model. Tenants have only limited visibility and control over network resources. The owners of cloud computing facilities are also facing challenges in various aspects of providing and efficiently managing IaaS facilities. In this work we present the networking issues in IaaS and federation challenges that are currently addressed with existing technologies. We also present innovative software-defined networking proposals, which are applied to some of the challenges and could be used in future deployments as efficient solutions.