From what i understand, both focus on replacing the traditionally implemented proprietary hardware services such as firewalls , NAT ,etc and try to implement it in software. So how do the two differ from each other


They are quite different. What I'm about to write is in high level terms: Google and ETSI can help you with details.

  • NFV takes traditional appliances like packet inspection devices, session border controllers and so on and virtualizes them. The earliest NFV implementations did just that- slap the unit on a VM and be done.

But: that's not much of a gain. The real promise of NFV is that you can spin up a function on demand, scale it up and down according to need, and generally be much more cloudy than traditional service providers have been.

Now imagine that you have got to that state, so that you can, say spin up a call control core, or a application server, or a firewall in minutes not months. Now you can do service chaining

In service chaining, you create new products by stringing together functions delivered by NFV. There are some subtleties here best explained by an example. Lets say you (as a service provider) want to sell some new phone product to the government? Ok, you'll need some call control, and a telephony app server. And a firewall or packet inspection engine. With function chaining you string the firewall and the call control/app server together so that the product is defined as the chain of all those things.

The subtlety is that SFC can happen at the IP layer ("send traffic to the firewall, then the call control"). Or it can be a logical construct used by a product designer. Or it can be inherent to the elements being strung together (eg an IMS core using filter criteria to send calls to app servers).

  • Ok, so nfv is creating virtual appliances while chaining is to link those appliances as per need ?
    – john
    Dec 8 '16 at 3:29
  • Broadly speaking, yes. Dec 8 '16 at 7:10

NFV simply describes virtualizing a networking device. Installng a firewall on a VM inside a host, for example. That's NFV.

Service Chaining describes distributing networking device features/services out across several devices (whether physical or virtual) vs having them all centralized in a single box (whether physical or virtual).


NFV aims at decoupling NFs from specialized hardware elements while SDN focuses on separating the handling of packets and connections from overall network control.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.