aboutsummaryrefslogtreecommitdiff
path: root/examples
Commit message (Collapse)AuthorAgeFilesLines
* rumba: Add visualisation toolDimitri Staessens2022-11-191-46/+48
| | | | | | | The draw_experiment(exp) function will draw a 3D representation of the network. Depends on igraph and plotly packages. Signed-off-by: Dimitri Staessens <dimitri@ouroboros.rocks>
* examples: Add scripts used in IEEE Network paperSander Vrijders2018-08-312-0/+429
| | | | This adds the scripts used in the IEEE Network paper.
* testbeds: Set default project to rumbaSander Vrijders2018-07-271-1/+1
| | | | | This will set the default project name to rumba for most testbeds, since a dedicated group for rumba experiments has been setup.
* prototypes: Switch register and bind operationSander Vrijders2018-06-061-2/+1
| | | | | This switches the register and bind operations in the ouroboros prototype, to avoid a race condition when starting a server very fast.
* examples: Make scalingtime.py more genericSander Vrijders2018-04-251-12/+125
| | | | | | | This makes scalingtime.py more generic by allowing the user to pass command-line arguments to select the prototype, testbed, ... Fixes #50
* examples: fix several small issues (import log and sb.generate)Marco Capitani2018-04-053-0/+4
|
* examples: Import log in snake exampleDimitri Staessens2018-04-051-0/+1
| | | | The logger was used but not imported
* model: make link quality changes scriptableMarco Capitani2018-03-281-0/+4
| | | | | | | | Added method accepting only ints and floats to allow scripting link quality changes (see example-script additions) Also added general purpose `sb.schedule_action` method
* model: make DIFs scriptableMarco Capitani2018-03-261-1/+3
| | | | | | | DIFs instances can now be referenced inside .rsb files. Also changed Node.set_link_state function to accept a DIF as opposed to an IPCP, since IPCPs are not given a name nor mentioned is user scripts.
* storyboard: add callback parameter to run_client(_of) methodMarco Capitani2018-03-261-0/+11
|
* storyboard: make Script class privateMarco Capitani2018-03-261-1/+5
| | | | | | | | | The Script class has been made private as the script field of the Storyboard class. All script-related functions are now accessible as methods of the storyboard class. In other news: Made the script path in script-example.py pwd resilient.
* examples: Simplify scalingtime.pySander Vrijders2018-03-201-3/+3
| | | | | | This simplifies scalingtime.py to have the end nodes in the public internet layer directly on top of the ethernet layer. There is no need for them to be a part of the metro layer.
* testbeds: Add docker testbedNick Aerts2018-03-207-8/+73
| | | | | | | | | | | | This adds support for a testbed based on Docker containers running on the local host. Bridging the containers can be done using built-in Linux bridging or using OpenVSwitch bridges. A new resource 'executor' has been added to abstract away command execution on nodes on the testbed. Executors have been created for local command execution, docker exec based command execution and SSH-based command execution. This has also been changed in the prototypes to execute using the correct executor.
* storyboard: add replayabilityMarco Capitani2018-03-163-1/+143
| | | | implements #27
* utils & storyboard: add syslog retrieval functionalityMarco Capitani2018-02-272-4/+4
| | | | | Implements #39. Also updated examples.
* examples: Add Rumba paper demonstrationSander Vrijders2018-02-151-0/+133
| | | | This adds the demo as described in the Rumba paper.
* examples: Fix Converged Operator exampleDimitri Staessens2018-02-121-20/+19
| | | | | There were some bad registrations in the core. Some rearrangements in other registrations for consistency.
* examples: Fix converged operator exampleDimitri Staessens2018-01-201-24/+21
| | | | The converged operator example contained some bugs and didn't work anymore with the new checks.
* storyboard: re-add run_command methodMarco Capitani2018-01-113-3/+3
| | | | | | | | | Also: logging fix in ssh_support, Enabling changes: storyboard: refactor 'start' method, it was getting big some more minor storyboard refactoring for decoupling update examples to new syntax
* examples: Add import for storyboardSander Vrijders2017-11-212-0/+2
| | | | | This adds a missing import of the storyboard for the two layers and the converged operator example.
* storyboard: add logging and log retrievalMarco Capitani2017-11-172-71/+42
|
* storyboard: make Client shutdown an argumentMarco Capitani2017-11-171-0/+58
| | | | | Before the shutdown call for the Client/ClientProcess was fixed to kill <pid>. Now it's passed as an argument to the Client constructor.
* storyboard: decouple from experimentMarco Capitani2017-11-171-4/+4
| | | | | | | | + Node no longer has "client" attribute + Client has a "nodes" attribute instead + servers, server nodes and the experiment can be added to a storyboard after instantiation to allow reuse of a SB + moved storyboard machinery to a separate module rumba.storyboard
* examples: fix rinaperf invocationVincenzo Maffione2017-11-151-3/+4
| | | | | In order to get infinite duration for the rinaperf test, the "-c 0" can be used.
* examples: add example for converged operator networkVincenzo Maffione2017-11-141-0/+201
|
* utils, examples: Add ExperimentManager CMMarco Capitani2017-11-136-20/+17
| | | | | | | | Adds an ExperimentManager context manager for scripts: - No more ugly stack traces after execution if something goes wrong - No more ugly and easy to forget try-finally blocks
* prototypes: rlite: align to the new rlite releaseVincenzo Maffione2017-10-051-1/+1
|
* examples: Add snake exampleSander Vrijders2017-09-201-0/+69
| | | | | This adds the snake as an example. It forms a single DIF connected node by node. The number of nodes can be passed as parameter.
* build: Add continuous integrationSander Vrijders2017-09-132-6/+66
| | | | This adds CI to Rumba.
* ssh & model-storyboard: changed ssh API, added node.execute* methodsMarco Capitani2017-06-301-1/+1
|
* IRATI: added per-node policy support, and revamped policy data model.Marco Capitani2017-06-131-2/+4
| | | | | | additional: + fixed small bug rlated to vhost checking in qemu. + example scripts now correctly use policies.
* Merge branch 'master' into policiesMarco Capitani2017-06-134-17/+172
|\
| * examples: Add mouse exampleSander Vrijders2017-06-071-0/+105
| | | | | | | | This adds the infamous mouse to the examples directory.
| * qemu plugin: automatic download of buildroot imagesVincenzo Maffione2017-06-011-4/+2
| |
| * model: remove registration and bindingsVincenzo Maffione2017-06-011-3/+1
| | | | | | | | Fixes #7
| * examples: jfed-rlite: use try-finallyVincenzo Maffione2017-05-311-3/+6
| |
| * Storyboard missing end_user->client changeMarco Capitani2017-05-111-1/+1
| |
| * Storyboard: small fixes to APIMarco Capitani2017-05-111-1/+1
| |
| * Storyboard: added modifications to API to example.pyMarco Capitani2017-05-111-2/+2
| |
| * rumba: model: Add StoryBoard for automated testingSander Vrijders2017-05-091-10/+10
| | | | | | | | | | This adds an initial draft of the API to automate tests on a RINA network.
| * examples: add example to run rlite on jFedVincenzo Maffione2017-04-291-0/+51
| |
* | model: added policy class + policy-oriented API fixesMarco Capitani2017-04-281-4/+5
|/ | | | | | | | + Added policy class + Adapted NormalDIF class to use new policy class + NormalDIF constructor argument policy has changed format (parameters dict is now mandatory, added empty dicts where it was not passed) + Added Node.policies field (type: dict[DIF -> Policy])
* Logging: added set and reset logging level method, small logging modifications.Marco Capitani2017-04-242-0/+11
|
* model: Split experiment run()Sander Vrijders2017-04-212-2/+10
| | | | | This splits experiment.run() into 4 different operations: swap_in, install_prototype, bootstrap_prototype and swap_out.
* examples: minor changes to use "root" user and passwordVincenzo Maffione2017-04-122-2/+4
|
* testbeds: qemu: modify constructor argumentsVincenzo Maffione2017-04-082-7/+9
| | | | vm_img_folder --> bzimage, initramfs
* examples: fix qemu testbed constructionVincenzo Maffione2017-03-201-3/+1
|
* testbeds: placeholder for QEMU testbedVincenzo Maffione2017-03-192-5/+8
|
* examples: add two layers example (from demonstrator)Vincenzo Maffione2017-03-181-0/+52
|
* testbeds, prototypes: Omit dir name from class nameSander Vrijders2017-02-131-6/+5
| | | | | The directory name was always prepended to the class name, but since they are in distinct namespaces this could be easily removed.