Update Readme to remove stray bash
in commands (#248)
This commit is contained in:
parent
6160867acb
commit
e736e69c97
@ -86,30 +86,50 @@ to hosts. For this step you will need to add your forwarding rules to the
|
|||||||
|
|
||||||
## Step 2: Run your solution
|
## Step 2: Run your solution
|
||||||
|
|
||||||
1. In your shell, run: ```bash make run ``` This will:
|
1. In your shell, run:
|
||||||
|
```bash
|
||||||
|
make run
|
||||||
|
```
|
||||||
|
This will:
|
||||||
* compile `basic_tunnel.p4`, and
|
* compile `basic_tunnel.p4`, and
|
||||||
* start a Mininet instance with three switches (`s1`, `s2`, `s3`) configured
|
* start a Mininet instance with three switches (`s1`, `s2`, `s3`) configured
|
||||||
in a triangle, each connected to one host (`h1`, `h2`, and `h3`).
|
in a triangle, each connected to one host (`h1`, `h2`, and `h3`).
|
||||||
* The hosts are assigned IPs of `10.0.1.1`, `10.0.2.2`, and `10.0.3.3`.
|
* The hosts are assigned IPs of `10.0.1.1`, `10.0.2.2`, and `10.0.3.3`.
|
||||||
|
|
||||||
2. You should now see a Mininet command prompt. Open two terminals for `h1` and
|
2. You should now see a Mininet command prompt. Open two terminals for `h1` and
|
||||||
`h2`, respectively: ```bash mininet> xterm h1 h2 ```
|
`h2`, respectively:
|
||||||
|
```bash
|
||||||
|
mininet> xterm h1 h2
|
||||||
|
```
|
||||||
3. Each host includes a small Python-based messaging client and server. In
|
3. Each host includes a small Python-based messaging client and server. In
|
||||||
`h2`'s xterm, start the server: ```bash ./receive.py ```
|
`h2`'s xterm, start the server:
|
||||||
|
```bash
|
||||||
|
./receive.py
|
||||||
|
```
|
||||||
4. First we will test without tunneling. In `h1`'s xterm, send a message to
|
4. First we will test without tunneling. In `h1`'s xterm, send a message to
|
||||||
`h2`: ```bash ./send.py 10.0.2.2 "P4 is cool" ``` The packet should be received
|
`h2`:
|
||||||
at `h2`. If you examine the received packet you should see that is consists of
|
```bash
|
||||||
an Ethernet header, an IP header, a TCP header, and the message. If you change
|
./send.py 10.0.2.2 "P4 is cool"
|
||||||
the destination IP address (e.g. try to send to `10.0.3.3`) then the message
|
```
|
||||||
should not be received by h2, and will instead be received by h3.
|
The packet should be received at `h2`. If you examine the received packet
|
||||||
5. Now we test with tunneling. In `h1`'s xterm, send a message to `h2`: ```bash
|
you should see that is consists of an Ethernet header, an IP header, a TCP
|
||||||
./send.py 10.0.2.2 "P4 is cool" --dst_id 2``` The packet should be received at
|
header, and the message. If you change the destination IP address (e.g. try
|
||||||
`h2`. If you examine the received packet you should see that is consists of an
|
to send to `10.0.3.3`) then the message should not be received by `h2`, and
|
||||||
Ethernet header, a tunnel header, an IP header, a TCP header, and the message.
|
will instead be received by `h3`.
|
||||||
6. In `h1`'s xterm, send a message: ```bash ./send.py 10.0.3.3 "P4 is cool"
|
5. Now we test with tunneling. In `h1`'s xterm, send a message to `h2`:
|
||||||
--dst_id 2``` The packet should be received at `h2`, even though that ip
|
```bash
|
||||||
address is the address of `h3`. This is because the switch is no longer using
|
./send.py 10.0.2.2 "P4 is cool" --dst_id 2
|
||||||
the IP header for routing when the `MyTunnel` header is in the packet.
|
```
|
||||||
|
The packet should be received at `h2`. If you examine the received packet you
|
||||||
|
should see that is consists of an Ethernet header, a tunnel header, an IP header,
|
||||||
|
a TCP header, and the message.
|
||||||
|
6. In `h1`'s xterm, send a message:
|
||||||
|
```bash
|
||||||
|
./send.py 10.0.3.3 "P4 is cool" --dst_id 2
|
||||||
|
```
|
||||||
|
The packet should be received at `h2`, even though that IP address is the address
|
||||||
|
of `h3`. This is because the switch is no longer using the IP header for routing
|
||||||
|
when the `MyTunnel` header is in the packet.
|
||||||
7. Type `exit` or `Ctrl-D` to leave each xterm and the Mininet command line.
|
7. Type `exit` or `Ctrl-D` to leave each xterm and the Mininet command line.
|
||||||
|
|
||||||
|
|
||||||
@ -158,7 +178,9 @@ logic errors in your implementation.
|
|||||||
In the latter two cases above, `make` may leave a Mininet instance running in
|
In the latter two cases above, `make` may leave a Mininet instance running in
|
||||||
the background. Use the following command to clean up these instances:
|
the background. Use the following command to clean up these instances:
|
||||||
|
|
||||||
```bash make stop ```
|
```bash
|
||||||
|
make stop
|
||||||
|
```
|
||||||
|
|
||||||
## Next Steps
|
## Next Steps
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user