Adaptive placement & chaining of virtual network functions with NFV-PEAR