Title: Applying Generative Programming to Communication Networks Modeling
1Applying Generative Programming to Communication
Networks Modeling
Amogh Kavimandan, Aniruddha Gokhale Department of
EECS Vanderbilt University Nashville TN
37235 amoghk, gokhale_at_dre.vanderbilt.edu
The ComNetML Process. The modeler models topology
using ComNetML, which consists of behavior,
structure and flow descriptions. An interpreter
is used to generate target platform artifacts
that drive the simulation. Simulations suggest
modifications in the initial deployment, hence
the process is iterated till performance meets
the requirements.
Motivation. Modeling tools for evaluating
communication networks are 1. non-intuitive and
2. difficult to manipulate increasing the
(re)deployment time for a network. A higher level
of abstraction is necessary which captures
topological details required for simulation. We
propose to use generative programming for
synthesis of target simulation platform artifacts
through Model Integrated Computing (MIC) to
alleviate these problems. Solution. ComNetML is
developed using GME which provides simple, easy
to use and manipulate user language to model
network topology and interpreters that generate
the end platform artifacts. Conceptually ComNetML
consists of Mapping and Code Generator modules.
The language allows three mappings
- Behavioral mapping describes how the topology
behaves, i.e. various events taking place in the
network. - Structural mapping describes how elements are
connected with each other, capacities of each
elements etc. - flow mapping captures the flow specifications.
The mappings are generated by the user. - Code generator module then generates simulation
artifacts from each of the above mappings.
Note that individual targets may have different
textual semantics for specifying the topology.
Interpreter reads in the topology described in
GME to generate simulation code. GME front-end
does not change for individual target platforms.
A new interpreter needs to be plugged into
ComNetML to support a new target platform.
- The description language is graphical, hence
topology changes are easy to incorporate reducing
the analysis and deployment time.
Overview of GME Generic Modeling Environment
allows one to define a modeling language in terms
of meta-models that capture the abstract syntax
of the language. GME provides the visual modeling
framework, while the underlying interpreters
define the behavior of that language. GME
supports application level evolution where
application evolves iteratively as the feedback
is received from the target platform. Thus at the
end of several iterations the application (in our
case, network topology) is ready for deployment.
ComNetML can be downloaded from
http//www.dre.vanderbilt.edu