  Plug-and-play information technology (IT) infrastructure has been expanding
very rapidly in recent years. With the advent of cloud computing, many
ecosystem and business paradigms are encountering potential changes and may be
able to eliminate their IT infrastructure maintenance processes. Real-time
performance and high availability requirements have induced telecom networks to
adopt the new concepts of the cloud model: software-defined networking (SDN)
and network function virtualization (NFV). NFV introduces and deploys new
network functions in an open and standardized IT environment, while SDN aims to
transform the way networks function. SDN and NFV are complementary
technologies; they do not depend on each other. However, both concepts can be
merged and have the potential to mitigate the challenges of legacy networks. In
this paper, our aim is to describe the benefits of using SDN in a multitude of
environments such as in data centers, data center networks, and Network as
Service offerings. We also present the various challenges facing SDN, from
scalability to reliability and security concerns, and discuss existing
solutions to these challenges.
