Files
vpp/build-root/vagrant
Ed Warnicke eeee9e2b18 Switched vagrant for ~/git/vpp to /vpp
build-root/vagrant/Vagrantfile

was always mounting the vpp into /vpp
Now rather than cloning it and building,
we just use it as mounted.

In order to let folks know what happened,
a README.moved is copied into the ~/git/vpp
so folks know what happened.

In addition to make it easier for folks
to do commits from withing the vagrant,
we install git-review, and copy in the
users .gitconfig and .gnupg directory.

A couple of notes about this. VMWare goes much
much faster in all cases.  Virtualbox is a
bit slower in the very first run (without ccache).

One of the benefits of using the mounted /vpp though
is that after your first vagrant up, you always
have access to the .ccache, as it lives
outside the vagrant, and so in steady state
everything is faster.

Change-Id: I2cd2c28181b3d7e664240dfe2249b5be3f1b9241
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-02-03 14:49:37 +00:00
..
2015-12-08 15:47:27 -07:00

VPP has now been built, installed, and started.

To give it a spin, we can create a tap interface and try a simple ping
(with trace).

Make sure you have run:

$ vagrant ssh

To get to the vagrant VM:

vagrant@localhost:~$

Confirm that vpp is running with

vagrant@localhost:~$ sudo status vpp
vpp start/running, process 25202

To create the tap:

vagrant@localhost:~$ sudo vppctl tap connect foobar
Created tap-0 for Linux tap 'foobar'
vagrant@localhost:~$ sudo vppctl show int

To assign it an ip address (and 'up' the interface):

vagrant@localhost:~$ sudo vppctl set int ip address tap-0 192.168.1.1/24
vagrant@localhost:~$ sudo vppctl set int state tap-0 up

To turn on packet tracing for the tap interface:
vagrant@localhost:~$ sudo vppctl trace add tapcli-rx 10

Now, to set up and try the other end:
vagrant@localhost:~$ sudo ip addr add 192.168.1.2/24 dev foobar
vagrant@localhost:~$ ping -c 3 192.168.1.1

To look at the trace:
vagrant@localhost:~$ sudo vppctl show trace

And to stop tracing:

vagrant@localhost:~$ sudo vppctl clear trace

Other fun things to look at:

The vlib packet processing graph:
vagrant@localhost:~$ sudo vppctl show vlib graph

which will produce output like:

           Name                      Next                    Previous
ip4-icmp-input                  error-punt [0]               ip4-local
                                ip4-icmp-echo-request [1]
                                vpe-icmp4-oam [2]

To read this, the first column (Name) is the name of the node.
The second column (Next) is the name of the children of that node.
The third column (Previous) is the name of the parents of this node.

To see this README again:
cat /vagrant/README