  Network function virtualization (NFV) is a promising technology to make 5G
networks flexible and agile. NFV decreases operators' OPEX and CAPEX by
decoupling the physical hardware from the functions they perform. In NFV,
users' service request can be viewed as a service function chain (SFC)
consisting of several virtual network functions (VNFs) which are connected
through virtual links. Resource allocation in NFV is done through a centralized
authority called NFV Orchestrator (NFVO). This centralized authority suffers
from some drawbacks such as single point of failure and security. Blockchain
(BC) technology is able to address these problems by decentralizing resource
allocation. The drawbacks of NFVO in NFV architecture and the exceptional BC
characteristics to address these problems motivate us to focus on NFV resource
allocation to users' SFCs without the need for an NFVO based on BC technology.
To this end, we assume there are two types of users: users who send SFC
requests (SFC requesting users) and users who perform mining process (miner
users). For SFC requesting users, we formulate NFV resource allocation (NFV-RA)
problem as a multi-objective problem to minimize the energy consumption and
utilized resource cost, simultaneously.
