Skip to main content

Virtual network embedding: ensuring correctness and optimality by construction using model transformation and integer linear programming techniques


Virtualization technology allows service providers to operate data centers in a cost-effective and scalable manner. The data center network (substrate network) and the applications executed in the data center (virtual networks) are often modeled as graphs. The nodes of the graphs represent (physical or virtual) servers and switches, and the edges represent communication links. Nodes and links are annotated with the provided and required resources (e.g., memory and bandwidth). The NP-hard virtual network embedding (VNE) problem deals with the embedding of a set of virtual networks to the substrate network such that (i) all (resource) constraints of the substrate network are fulfilled, and (ii) an objective is optimized (e.g., minimizing the communication costs). The existing two-step highly customizable model-driven virtual network embedding (MdVNE) approach combines model transformation (MT) and integer linear programming (ILP) techniques to solve the VNE problem based on a declarative specification. MdVNE generates element mapping candidates from an MT specification and identifies an optimal and correct embeddings using an ILP solver. In the past, developers created the MT and ILP specifications manually and needed to ensure carefully that both are compatible and respect the problem description. In this article, we present a novel construction methodology for synthesizing the MT and ILP specification from a given declarative model-based VNE problem description. This problem description consists of a metamodel for substrate and virtual networks, additional OCL constraints, and an objective function that assigns costs to a given model. This methodology ensures that the derived embeddings are correct w.r.t. the metamodel and the OCL constraints, and optimal w.r.t. the optimization goal. The novel model-based VNE specification is applicable to different network domains, environments, and constraints. Thus, the construction methodology allows to automate most of the steps to realize a correct and optimal VNE algorithm compared to a hand-crafted VNE implementation. Furthermore, the simulative evaluation confirms that using MT techniques reduces the time for solving the VNE problem considerably in comparison with a purely ILP-based approach.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22


  1. 1.

    Abdeen, H., Varró, D., Sahraoui, H.A., Nagy, A.S., Debreceni, C., Hegedüs, Á., Horváth, Á.: Multi-objective optimization in rule-based design space exploration. In: Crnkovic, I., Chechik, M., Grünbacher, P. (eds.) International Conference on Automated Software Engineering (ASE). ACM, pp. 289–300 (2014)

  2. 2.

    Abrial, J.R., Hallerstede, S.: Refinement, decomposition, and instantiation of discrete models: application to Event-B. Fundam. Inform. 77(1–2), 1–28 (2007)

    MathSciNet  MATH  Google Scholar 

  3. 3.

    Al-Fares, M., Loukissas, A., Vahdat, A.: A scalable, commodity data center network architecture. In: ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 63–74 (2008)

  4. 4.

    Alanen, M., Porres, I., Centre, T., Science, C.: A relation between context-free grammars and meta object facility metamodels. Technical report (2003)

  5. 5.

    Amaldi, E., Coniglio, S., Koster, A.M.C.A., Tieves, M.: On the computational complexity of the virtual network embedding problem. Electron. Notes Discrete Math. 52, 213–220 (2016)

    MathSciNet  Article  Google Scholar 

  6. 6.

    Anjorin, A., Leblebici, E., Kluge, R., Schürr, A., Stevens, P.: A systematic approach and guidelines to developing a triple graph grammar. In: International Workshop on Bidirectional Transformations, CEUR vol. 1396, pp. 81–95 (2015)

  7. 7.

    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: advanced concepts and tools for in-place EMF model transformations. In: International Conference on Model Driven Engineering Languages and Systems (MODELS), vol. 6394. Springer, pp. 121–135 (2010)

  8. 8.

    Ballani, H., Costa, P., Karagiannis, T., Rowstron, A.I.T.: Towards predictable datacenter networks. In: Conference on Applications, pp. 242–253 (2011)

  9. 9.

    Bari, M.F., Boutaba, R., Esteves, R.P., Granville, L.Z., Podlesny, M., Rabbani, M.G., Zhang, Q., Zhani, M.F.: Data center network virtualization: a survey. Commun. Surv. Tutor. 15(2), 909–928 (2013)

    Article  Google Scholar 

  10. 10.

    Bhardwaj, S., Jain, L., Jain, S.: Cloud computing: a study of infrastructure as a service (IaaS). Int. J. Eng. Inf. Technol. 2(1), 60–63 (2010)

    Google Scholar 

  11. 11.

    Bill, R., Fleck, M., Troya, J., Mayerhofer, T., Wimmer, M.: A local and global tour on momot. Softw. Syst. Model. 18(2), 1017–1046 (2019)

    Article  Google Scholar 

  12. 12.

    Böhm, M., Leimeister, S., Riedl, C., Krcmar, H.: Cloud computing–outsourcing 2.0 or a new business model for it provisioning? In: Application Management. Springer, pp. 31–56 (2011)

  13. 13.

    Cplex, I.I.: 12.2 user’s manual. Book 12.2 User’s Manual, Series 12.2 User’s Manual (2010)

  14. 14.

    Deckwerth, F., Varró, G.: Attribute handling for generating preconditions from graph constraints. In: International Conference on Graph Transformation (ICGT), pp. 81–96 (2014)

  15. 15.

    Denil, J., Jukss, M., Verbrugge, C., Vangheluwe, H.: Search-based model optimization using model transformations. In: System Analysis and Modeling: Models and Reusabilit (SAM), pp. 80–95 (2014)

  16. 16.

    Dijkstra, E.W.: A Discipline of Programming, vol. 1. Prentice Hall, Upper Saddle River (1976)

    MATH  Google Scholar 

  17. 17.

    Fischer, A., Botero, J.F., Beck, M.T., de Meer, H., Hesselbach, X.: Virtual network embedding: a survey. Commun. Surv. Tutor. 15(4), 1888–1906 (2013)

    Article  Google Scholar 

  18. 18.

    Fowler, M.: UML Distilled: A Brief Guide to the Standard Object Modeling Language. Addison-Wesley Professional, Boston (2004)

    Google Scholar 

  19. 19.

    Group, O.M.: Object constraint language 2.0. OMG (2003)

  20. 20.

    Guo, C., Lu, G., Wang, H.J., Yang, S., Kong, C., Sun, P., Wu, W., Zhang, Y.: Secondnet: a data center network virtualization architecture with bandwidth guarantees. In: Conference on emerging Networking EXperiments and Technologies (CoNEXT), pp. 15:1–15:12 (2010)

  21. 21.

    Gurobi Optimization, I.: Gurobi optimizer reference manual. (2016). Accessed 17 Jan 2018

  22. 22.

    Habel, A., Pennemann, K.: Correctness of high-level transformation systems relative to nested conditions. Math. Struct. Comput. Sci. 19(2), 245–296 (2009)

    MathSciNet  Article  Google Scholar 

  23. 23.

    Hadjiconstantinou, E.: Transformation of propositional calculus statements into integer and mixed integer programs: an approach towards automatic reformulation. Brunel University, Technical report (1990)

  24. 24.

    Heckel, R., Wagner, A.: Ensuring consistency of conditional graph grammars—a constructive approach. ENTCS 2, 118–126 (1995)

    MATH  Google Scholar 

  25. 25.

    Jackson, D.: Alloy: a lightweight object modelling notation. ACM Trans. Softw. Eng. Methodol. 11(2), 256–290 (2002)

    Article  Google Scholar 

  26. 26.

    Kehrer, T., Taentzer, G., Rindt, M., Kelter, U.: Automatically deriving the specification of model editing operations from meta-models. In: International Conference on Model Transformation (ICMT), pp. 173–188 (2016)

  27. 27.

    Kessentini, M., Sahraoui, H., Boukadoum, M.: Model transformation as an optimization problem. In: International Conference on Model Driven Engineering Languages and Systems (MODELS). Springer, Berlin, pp. 159–173 (2008)

  28. 28.

    Kluge, R., Stein, M., Varró, G., Schürr, A., Hollick, M., Mühlhäuser, M.: A systematic approach to constructing incremental topology control algorithms using graph transformation. JVLC 38, 47–83 (2017)

    Google Scholar 

  29. 29.

    Krieger, M.P., Brucker, A.D.: Extending OCL operation contracts with objective functions. ECEASST 4., (2011)

  30. 30.

    Leblebici, E., Anjorin, A., Schürr, A.: Developing eMoflon with eMoflon. ICMT 8568, 138–145 (2014)

    Google Scholar 

  31. 31.

    Leblebici, E., Anjorin, A., Schürr, A.: Inter-model consistency checking using triple graph grammars and linear optimization techniques. In: Fundamental Approaches to Software Engineering (FASE), pp. 191–207 (2017)

  32. 32.

    Lopes, F.A., Lima, L., Santos, M., Fidalgo, R., Fernandes, S.: High-level modeling and application validation for SDN. In: Network Operations and Management Symposium, pp. 197–205 (2016)

  33. 33.

    Meng, X., Pappas, V., Zhang, L.: Improving the scalability of data center networks with traffic-aware virtual machine placement. In: IEEE International Conference on Computer Communications (INFOCOM), pp. 1154–1162 (2010)

  34. 34.

    Myers, G.J., Sandler, C., Badgett, T.: The Art of Software Testing. Wiley, Hoboken (2011)

    Google Scholar 

  35. 35.

    Nassar, N., Kosiol, J., Arendt, T., Taentzer, G.: OCL2AC: automatic translation of OCL constraints to graph constraints and application conditions for transformation rules. In: International Conference on Graph Transformation (ICGT), pp. 171–177 (2018)

  36. 36.

    Nassar, N., Kosiol, J., Arendt, T., Taentzer, G.: Constructing optimized validity-preserving application conditions for graph transformation rules. In: International Conference on Graph Transformation (ICGT), pp. 177–194 (2019)

  37. 37.

    Pohlmann, U., Hüwe, M.: Model-driven allocation engineering (t). In: International Conference on Automated Software Engineering (ASE), pp. 374–384 (2015)

  38. 38.

    Pohlmann, U., Hüwe, M.: Model-driven allocation engineering: specifying and solving constraints based on the example of automotive systems. Autom. Softw. Eng. 26(2), 315–378 (2019)

    Article  Google Scholar 

  39. 39.

    Rabbani, M.G., Esteves, R.P., Podlesny, M., Simon, G., Granville, L.Z., Boutaba, R.: On tackling virtual data center embedding problem. In: IFIP/IEEE International Symposium on Integrated Network Management, pp. 177–184 (2013)

  40. 40.

    Radke, H.: Weakest liberal preconditions relative to HR* graph conditions. In: International Workshop on Graph Computation Models (GCM), pp. 165–178 (2010)

  41. 41.

    Radke, H., Arendt, T., Becker, J.S., Habel, A., Taentzer, G.: Translating essential OCL invariants to nested graph constraints for generating instances of meta-models. Sci. Comput. Program. 152, 38–62 (2018)

    Article  Google Scholar 

  42. 42.

    Rensink, A., Schmidt, A., Varró, D.: Model checking graph transformations: a comparison of two approaches. In: International Conference on Graph Transformation (ICGT), vol. 3256. Springer, pp. 226–241 (2004)

  43. 43.

    Sahhaf, S., Tavernier, W., Rost, M., Schmid, S., Colle, D., Pickavet, M., Demeester, P.: Network service chaining with optimized network function embedding supporting service decompositions. Comput. Netw. 93, 492–505 (2015)

    Article  Google Scholar 

  44. 44.

    Schnabel, T., Weckesser, M., Kluge, R., Lochau, M., Schürr, A.: Cardygan: tool support for cardinality-based feature models. In: International Workshop on Variability Modelling of Software-Intensive Systems. ACM, pp. 33–40 (2016)

  45. 45.

    Schürr, A.: Specification of graph translators with triple graph grammars. In: Graph–Theoretic Concepts in Computer Science, pp. 151–163 (1994)

  46. 46.

    Shen, S., van Beek, V., Iosup, A.: Statistical characterization of business-critical workloads hosted in cloud datacenters. In: International Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp. 465–474 (2015)

  47. 47.

    Strüber, D.: Generating efficient mutation operators for search-based model-driven engineering. In: International Conference on Model Transformation (ICMT), pp. 121–137 (2017)

  48. 48.

    Tomaszek, S., Leblebici, E., Wang, L., Schürr, A.: Virtual network embedding: reducing the search space by model transformation techniques. In: International Conference on Model Transformation (ICMT), pp. 59–75 (2018)

  49. 49.

    Tomaszek, S., Leblebici, E., Wang, L., Schürr, A.: Model-driven development of virtual network embedding algorithms with model transformation and linear optimization techniques. Modellierung 2018, 39–54 (2018)

    Google Scholar 

  50. 50.

    Varró, D., Bergmann, G., Hegedüs, Á., Horváth, Á., Ráth, I., Ujhelyi, Z.: Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Softw. Syst. Model. 15(3), 609–629 (2016)

    Article  Google Scholar 

  51. 51.

    Varró, G., Varró, D., Schürr, A.: Incremental graph pattern matching: Data structures and initial experiments. ECEASST 4. (2006)

  52. 52.

    Weckesser, M.: Automatisierte analyse integrierter software-produktlinien-spezifikationen. Ph.D. thesis, Darmstadt University of Technology, Germany (2019)

  53. 53.

    Weckesser, M., Lochau, M., Ries, M., Schürr, A.: Towards complete consistency checks of clafer models. In: International Workshop on Feature-Oriented Software Development (SIGPLAN), pp. 11–20 (2017)

  54. 54.

    Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B.: Experimentation in Software Engineering. Springer, Berlin (2012)

    Book  Google Scholar 

  55. 55.

    Yang, Y., Chang, X., Liu, J., Li, L.: Towards robust green virtual cloud data center provisioning. IEEE Trans. Cloud Comput. 5(2), 168–181 (2017)

    Article  Google Scholar 

  56. 56.

    Yang, Z., Guo, Y.: An exact virtual network embedding algorithm based on integer linear programming for virtual network request with location constraint. China Commun. 13(8), 177–183 (2016)

    Article  Google Scholar 

  57. 57.

    Yu, M., Yi, Y., Rexford, J., Chiang, M.: Rethinking virtual network embedding: substrate support for path splitting and migration. SIGCOMM Comput. Commun. Rev. 38(2), 17–29 (2008)

    Article  Google Scholar 

  58. 58.

    Zave, P.: Understanding SIP through Model-Checking. In: Principles, Systems and Applications of IP Telecommunications. Services and Security for Next Generation Networks, vol. 5310. Springer, pp. 256–279 (2008)

  59. 59.

    Zave, P.: Using lightweight modeling to understand chord. SIGCOMM Comput. Commun. Rev. 42(2), 49–57 (2012)

    Article  Google Scholar 

  60. 60.

    Zeng, D., Guo, S., Huang, H., Yu, S., Leung, V.C.: Optimal VM placement in data centers with architectural and resource constraints. Int. J. Autonom. Adapt. Commun. Syst. 8(4), 392–406 (2015)

    Article  Google Scholar 

  61. 61.

    Zschaler, S., Mandow, L.: Towards model-based optimisation: using domain knowledge explicitly. In: Software Technologies: Applications and Foundations (STAF), Collocated Workshops, pp. 317–329 (2016)

Download references


This work was funded by the German Research Foundation (DFG) as part of project A1 within the Collaborative Research Center (CRC) 1053 – MAKI.

Author information



Corresponding author

Correspondence to Stefan Tomaszek.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Communicated by Davide Di Ruscio.



In the appendix we present the restrictions that are not necessary for understanding the work. In Appendix A.1, we present all further restrictions from Sect. 2.1.2. Afterward, we present in Appendix A.2 the constraints and graph constraints from Sect. 3.2.3 (Figs. 21, 22).

VNE problem description

In this section, we present all node and link constraints relating to Sects. 2.1.2 and 2.2.3


Further ILP node constraints


Further ILP link constraints


Construction of MT specification

In this section, we present the additional relaxed and graph constraints related to Sect. 3.2.3.


Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Tomaszek, S., Speith, R. & Schürr, A. Virtual network embedding: ensuring correctness and optimality by construction using model transformation and integer linear programming techniques. Softw Syst Model 20, 1299–1332 (2021).

Download citation


  • Data center
  • Virtual network embedding
  • Model-driven development
  • Integer linear programming
  • Model transformation
  • Graph transformation
  • Triple-graph grammar
  • Object Constraint Language