Skip to content

OpenSimMPLS is an MPLS network simulator, multiplatform and mutilanguage. It is easy-to-use and is intended for teaching activities. It can be used as well to test new protocols, techniques and methods related to MPLS and/or GoS.

License

Notifications You must be signed in to change notification settings

manolodd/opensimmpls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PROJECT STATUS (needs Java 9 or later)

Master branch

Build Status Sonarcloud Status

Develop branch

Build Status Sonarcloud Status

THE PROJECT

OpenSimMPLS is an MPLS network simulator, multiplatform and mutilanguage. It is easy-to-use and is intended for teaching activities. It can be used as well to test new protocols, techniques and methods related to MPLS and/or GoS. OpenSimMPLS is a mature project used in universities and companies in more tan 130 different countries to teach, research and design MPLS networks. It was first developed in 2004 as part of a research project at the University of Extremadura. It was hosted since then in SourceForge.net as a CVS project and since 2014 it was updated as a GIT repository and hosted in GitHub forge.

It supports standard MPLS operation as well as GoS/MPLS operation. See "Guarantee of Service (GoS) Support Over MPLS using Active Techniques" proposal at http://opensimmpls.manolodominguez.com/content/common/pdf/documentation/gossobrempls.pdf

OpenSimMPLS logo

LICENSE

Latest snapshot version being developed:

  • OpenSimMPLS 2.4-SNAPSHOT (develop branch) - Apache-2.0.

Binary releases:

  • OpenSimMPLS 2.3 (current, master branch) - Apache-2.0.
  • OpenSimMPLS 2.0 - 2.2 - Apache-2.0.
  • OpenSimMPLS 1.1 - GPLv3.0-or-later.
  • OpenSimMPLS 1.0 - GPLv2.0-or-later.

PEOPLE BEHIND OPENSIMMPLS

Author:

Other collaborators (only for release 1.0):

Please, refer always to the project home page at:

COMPILING FROM SOURCES

The best option is to download latest compiled stable releases from the releases section of this repository. However, if you want to test new features (please, do it and give feedback), you will need to compile the project from sources. Follow these steps:

  • Clone the OpenSimMPLS repo:
git clone https://github.com/manolodd/opensimmpls.git
  • Compile the code and obtain a binary jar including all you need (you will need to install Maven before):
cd opensimmpls
mvn package
  • The jar file will be located in "target" directory.
cd target
  • Now, run the simulator:
java -jar openSimMPLS-{YourVersion}-with-dependencies.jar
  • Need some scenarios to try? There is not problem!! You'll find them at the examples folder (root of your cloned repository). You can also download these examples, for your OpenSimMPLS version, in the Releases section of this repository.

How to use OpenSimMPLS

You can open a quick start guide directly from the simulator GUI. However, you can find the same guide in some languages at https://github.com/manolodd/opensimmpls/tree/master/src/main/resources/com/manolodominguez/opensimmpls/resources/guides

THIRD-PARTY COMPONENTS

OpenSimMPLS uses third-party components each one of them having its own OSS license. License compatibility has been taken into account to allow OpenSimMPLS be released under its current OSS licence. They are:

Thanks folks!

HOW TO CONTRIBUTE

OpenSimMPLS is opensource software. I encourage you to modify it as much as possible; but I would like you to send this modifications back and, hence, became an OpenSimMPLS contributor. In this way, all the people will benefit from them as you are doing downloading and using OpenSimMPLS now.

If you want to contribute to OpenSimMPLS project, follow these instructions:

  • Log in to your GitHub account.
  • Look for OpenSimMPLS project.
  • Select the development branch of OpenSimMPLS and create a fork in your own GitHub repository.
  • Clone your OpenSimMPLS repository to your PC or laptop.
  • Do all modifications in local, file additions or deletions, modifications, commits...
  • Push your modifications to your remote github OpenSimMPLS repository.
  • Go again to yout GitHub account, choose your OpenSimMPLS repository and click on the tab "Pull requests".
  • Then, click on the green button at the right "New pull request". This will guide you to make a pull request (send your modifications on your own OpenSimMPLS repository to OpenSimMPLS main repository from where you did your fork at the beginning).
  • Choose the development branch of manolodd/OpenSimMPLS as base branch to merge to. Then "Create pull request" (give a title and a description, please).
  • That's all; I will have your contribution and I will try to merge it into the development branch of OpenSimMPLS. Please, comment your contribution as much as possible; I have to be able to understand your contribution.

REMEMBER!!!! all your contributions have to be compatible with Apache Software License 2.0 and you have to own all rights on them. And no source code contributions has to be compatible to Creative Commons - By.

WHAT CAN YOU CONTRIBUTE?

Lot of things. Most people doesn't have the possibility to contribute code. But there are lots of other thigs that are very important too:

  • Source code.
  • Translations.
  • Scenarios already designed.
  • Teaching units. Lots of OpenSimMPLS users are university techers. They use OpenSimMPLS to teach network subjects. If this is your case, share with everybody your teaching units: things you ask your students, exams, exercises based on OpenSimMPLS, and so on.
  • Documentation. Independently of your native language, there is an OpenSimMPLS user that also have the same native language. I've not the possibility of documenting everything, but if you do that, share it!
  • Presentations.
  • New icons and graphics art.
  • Ideas.

Thanks for contributing.

About

OpenSimMPLS is an MPLS network simulator, multiplatform and mutilanguage. It is easy-to-use and is intended for teaching activities. It can be used as well to test new protocols, techniques and methods related to MPLS and/or GoS.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages