User Tools

Site Tools


cl-tutorial:first_b

CONFINE SDK Setup

The VCT environment is provided by a set of shell functions, scripts, bash-environment variables and a CONFINE Controller operating over the virtualized machines. The code is provided as a utility package in confine-dist (in directory utils/vct).

VCT commands

All these scripts are provided as a part of the OpenSource agreement, but are not supposed to be used individually without the controller. Since the March 2013 version most of these scripts have been considered deprecated and can result in undefined behaviour.

Now we are ready to setup our VCT and start playing with it! The setup process takes two independent steps: installation and initialization.

The first step installs all the VCT dependencies left in the container, so it only has to be executed the first time. To start the installation, type the next command on your terminal (hereafter we will assume your working directory is ~/confine-dist/utils/vct).

~$ ./vct_system_install

As a result, VCT downloads the Research Device template and other configuration files on the newly created VCT_VIRT_DIR folder structure. Finally, it downloads the Controller dependencies.

VCT library directory

  • /downloads contains the CONFINE OpenWrt image defined in VCT_TEMPLATE_URL.
  • /keys contains a set of private/public keys used by virtualized nodes to allow SSH access to virtualized nodes and slices.
  • /tinc contains the configuration files to build an internal tinc overlay like the real one.

The next step is the initialization step, whose aim is to configure all virtual networking devices.

~$ ./vct_system_init

As a result, VCT starts the controller and configures the necessary networking bridges, public and private virtual links to emulate a community network.

That's it. VCT is ready to work! You can access the server interface by opening a browser on your host machine. To find out the IP of your VCT-C, you can type the command ip addr

CONFINE Controller UI

vct_ Commands

As you can see, all ./vct_ commands are, in fact, symbolic links to the ./vct.sh bash script to make the usage of its functions more intuitive. They are divided into six (6) different categories. If you do not know how to use a given command, you can execute ./vct_help for a detailed list of options.

  • ./vct_system_ commands configure and clean the VCT system on your current machine.
  • ./vct_node_ commands provide direct interaction with real and virtualized CONFINE nodes (also known as research devices).
  • ./vct_slice_ commands perform informational operations on slices/slivers.
  • ./vct_sliver_ commands perform activity operations on slices/slivers.

Sometimes VCT treats slices, slivers and experiments as a single thing when clearly they are not. The important thing to remember is that a slice is composed by a set of slivers and that an experiment is allocated and deployed on a single sliver.

Click here to go to the next section of this part of the tutorial or click the next link if you rather want to go back to the Tutorials Main Page.

cl-tutorial/first_b.txt · Last modified: 2014/09/17 11:47 by esunly