There are some confusions surrounding the differences between SDN and NFV. Both terms relate to virtualization of network; both are hot topics these days. Sometimes, one concept is mixed with the other.
SDN stands for Software Defined Network. It is based on two pillars.
- Separation of data and control plane and centralization of control plane.
- Programming network with open interfaces.
SDN concepts came into being while researchers were frustrated with changing software in network elements every time they wanted to try something new to study behavior in network. They thought, why not program the network elements and manage them from central place. The language that brings this programmability to network is called “Open flow”.
NFV ( Network Functions Virtualization) on the other hand is about virtualizing network elements by using commodity servers so as to reduce operator’s inventory, power and space requirements and hence reduce CAPEX and OPEX.NFV is driven by operators and the concepts were put forward originally by a group of service providers through a white paper.
So what is the difference between the two?
It is commonly understood that Both SDN and NFV are totally independent from each other. This is partially true. Especially, when SDN concepts are taken, they do draw relevance from NFV. While separating control and forwarding functions and programmability are core concepts in SDN; these cannot be achieved unless network elements become commoditized and their functions virtualized- the core concept of NFV. However it can be said that NFV can exist without depending on SDN; however, even though network elements are commoditized but still network will not be efficient if there is no network programmability as desired in SDN. Therefore SDN and NFV help each other and if implemented together can make the network flexible, virtual and commoditized.