ELA-RCP: An energy-efficient and load balanced algorithm for reliable controller placement in software-defined networks