Leveraging the traditional virtual network concept, some recent research works have proposed the Virtual Data Center (VDC) as an abstraction to capture both bandwidth and compute/storage resource requirements for an application. However a virtual node in a VDC is limited to a virtual machine (VM), which can only be embedded onto a single physical machine. This condition limits the applicability of the VDC abstraction and the potential of deploying parallel computing. In this paper, we propose a new abstraction based on our Application Centric Network Virtualization (ACNV) approach. Specifically, we model a service application offered by a service provider as a virtual network of service function nodes, which closely matches the service providers view on the architecture of the application. An infrastructure provider that hosts the application decides how to map the virtual network to the substrate network. Different from the VDC abstraction, each virtual node in our proposed abstraction can be split and mapped onto multiple physical machines, which allows the infrastructure provider to provide auto scaling for the application with variable number of physical machines for exploring the full benefits of parallel computing. We also allow multiple virtual nodes to be mapped and colocated in the same physical machine to minimize resource fragmentation and communication overhead. Extensive simulation results show that the proposed ACNV abstraction outperforms existing VDC-like approaches in achieving optimal resource usage.

Additional Metadata
Keywords Architecture, Distributed application, Distributed network, Distributed programming, Modeling technique, Network topology
Persistent URL dx.doi.org/10.1109/TCC.2016.2570750
Journal IEEE Transactions on Cloud Computing
Citation
Huang, C, & Zhu, J. (Jiafeng). (2018). Modeling service applications for optimal parallel embedding. IEEE Transactions on Cloud Computing, 6(4), 1067–1079. doi:10.1109/TCC.2016.2570750