Updates the examples to use the new build scripts (except Hula). (#74)

* Added Makefile and topology.jsons for all examples.

* use branch

* Updated MRI exercise (#73)

* Updated MRI exercise

* Updated basic_tunnel.p4 for changes to p4 lang

* updated other examples
This commit is contained in:
Robert Soule
2017-11-03 12:20:44 -07:00
committed by GitHub
parent aa4298859f
commit 09dba5c63d
38 changed files with 133 additions and 235 deletions

View File

@@ -0,0 +1 @@
include ../../utils/Makefile

View File

@@ -31,14 +31,14 @@ bring up a network in Mininet to test its behavior.
1. In your shell, run:
```bash
./run.sh
make
```
This will:
* compile `source_routing.p4`, and
* start a Mininet instance with three switches (`s1`, `s2`, `s3`) configured
in a triangle, each connected to one host (`h1`, `h2`, `h3`).
Check the network topology using the `net` command in mininet.
You can also change the topology in p4app.json
You can also change the topology in topology.json
* The hosts are assigned IPs of `10.0.1.1`, `10.0.2.2`, etc
(`10.0.<Switchid>.<hostID>`).
@@ -117,7 +117,7 @@ path, so that source routing would be transparent to end-hosts?
There are several ways that problems might manifest:
1. `source_routing.p4` fails to compile. In this case, `run.sh` will
1. `source_routing.p4` fails to compile. In this case, `make` will
report the error emitted from the compiler and stop.
2. `source_routing.p4` compiles but switches or mininet do not start.
Do you have another instance of mininet running? Did the previous
@@ -133,7 +133,7 @@ There are several ways that problems might manifest:
#### Cleaning up Mininet
In the cases above, `run.sh` may leave a Mininet instance running in
In the cases above, `make` may leave a Mininet instance running in
the background. Use the following command to clean up these
instances:

View File

@@ -1,30 +0,0 @@
{
"program": "source_routing.p4",
"language": "p4-16",
"targets": {
"multiswitch": {
"auto-control-plane": true,
"cli": true,
"pcap_dump": true,
"bmv2_log": true,
"links": [["h1", "s1"], ["s1", "s2"], ["s1", "s3"], ["s3", "s2"], ["s2", "h2"], ["s3", "h3"]],
"hosts": {
"h1": {
},
"h2": {
},
"h3": {
}
},
"switches": {
"s1": {
},
"s2": {
},
"s3": {
}
}
}
}
}

View File

@@ -1,5 +0,0 @@
P4APPRUNNER=../../utils/p4apprunner.py
mkdir -p build
tar -czf build/p4app.tgz * --exclude='build'
#cd build
sudo python $P4APPRUNNER p4app.tgz --build-dir ./build

View File

@@ -0,0 +1,16 @@
{
"hosts": [
"h1",
"h2",
"h3"
],
"switches": {
"s1": { "cli_input" : "s1-commands.txt" },
"s2": { "cli_input" : "s2-commands.txt" },
"s3": { "cli_input" : "s3-commands.txt" }
},
"links": [
["h1", "s1"], ["s1", "s2"], ["s1", "s3"],
["s3", "s2"], ["s2", "h2"], ["s3", "h3"]
]
}