Virne: A Simulator for NFV#
Note
Virne is still under development. If you have any questions, please open an new issue on Github or contact me via email: wtfly2018@gmail.com.
Virne is a simulator for resource allocation problems in network virtualization, mainly for virtual network embedding (VNE). It also is adaptable to VNE’s variants, such as service function chain deployment (SFC Deployment), network slicing, etc. Specifically, it provides a unified interface for various VNE algorithms, and provides a variety of network topologies, network attributes, and RL environments.
Its main characteristics are as follows.
Rich Implementations
Provide 20+ solvers, including exact, heuristic, meta-heuristic, and learning-based algorithms.
Extensible Development
Provide a variety of network topologies, network attributes, and RL environments, which can be easily extended.
Light-Weight
Implement concisely with less necessary dependencies, and can be extended easily for specific algorithms.
Supported Features#
Adaptation to VNE Variants
Service Function Chain Deployment (SFC Deployment)
Network Slicing
Diverse Network Topologies
Star Graph: Data Center Network
2D-grid Graph: Grid Network
Waxman Graph: General Network
Path Graph: Chain-style Network
Edge Probabilistic Connection Graph
Customlized Topology
Graph/ Node / Link-level Attributes:
For resources/ constraints/ QoS
Graph Level: e.g. the global requirements of virtual network
Node level: e.g. Node resource, node position
Link level: e.g. Link resource, link latency
Multiple RL Environments
Provide serval RL Environments in gym.Env-style
Various Simulation Scenarios
Admission control: Reject Early some not cost-effective virtual networks
Time window: Developping
Citation#
Please cite our papers if you use Virne in your research.