5G promises to deliver enhanced mobile broadband (eMBB), massive machine type communication (mMTC), and ultra reliable low latency communication (URLLC). To support mMTC and URLLC, 5G needs to carry out computations closer to subscribers at the “edge” instead of the cloud. This turns 5G into an infrastructure for both communication and computing. Just like cloud computing, edge computing should also be virtualized. On the other hand, communication is also being virtualized with software defined networking (SDN) and network function virtualization (NFV) which virtualize control plane and data plane, respectively.