README.md 2.95 KB
Newer Older
thomahol's avatar
thomahol committed
1
# Advanced Topics in Communication Networks 2020
thomahol's avatar
thomahol committed
2

thomahol's avatar
thomahol committed
3
Welcome to the Advanced Topics in Communication Networks Repository!
thomahol's avatar
thomahol committed
4
Here you will find the weekly exercises along with the instructions on how to run them in a virtual environement.
thomahol's avatar
thomahol committed
5
6
7

## How to start?

thomahol's avatar
thomahol committed
8
To make your life simpler, we give to each of you access to one VM where all the necessary tools and software are pre-installed. 
thomahol's avatar
thomahol committed
9
10
11

### Access your own VM

thomahol's avatar
thomahol committed
12
13
14
15
16
17
18
19
To access your VM, you willl SSH. SSH is a UNIX based command interface and protocol for securely getting access
to a remote computer. It is widely used by system administrators to control network devices
and servers remotely. An SSH client is available by default on any Linux and MAC installation
through the Terminal application. For Windows user, a good and free SSH client is [PuTTY](https://www.chiark.greenend.org.uk/~sgtatham/putty/).
Once you have installed a SSH client, use the following command to connect yourself to your
VM:

```
thomahol's avatar
thomahol committed
20
ssh -p X p4@samichlaus.ethz.ch
thomahol's avatar
thomahol committed
21
22
23
24
25
26
```

where X = 2000 + your student number for this lecture that we have sent you by email.
For instance if you are the student 7, use the following command

```
thomahol's avatar
thomahol committed
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
ssh -p 2007 p4@samichlaus.ethz.ch
```

If you cannot connect to your VM,
please report it immediately during the exercise session or in moodle. If you want to simplify
the access to your VM (optional), please use SSH key authentication, but do not change your
password. If you want to download an entire directory (e.g. the configs directory) from your
VM to the current directory of your own machine, you can use scp:

```
> scp -r -P X p4@samichlaus.ethz.ch:~/path to the directory .
```

where X = 2000 + group number. On Windows, you can use WinSCP7 to do that. Note the
dot at the end of the command and the capitalized P.

#### VM Credentials

During the lecture, we will two types of exercises. First, we will have p4-based exercises. Then we will have exercises based on the mini-Internet (that you should know from the Communication Networks lecture).
We will use two different users for the two types of exercises. For the p4-based exercises please use the login `p4`, and for the mini-Internet-based exercises please use the login `mini_internet`. 
We have sent you your password by email. It is the same for both logins. If you have not received your password please let us know immediately.

### Getting the exercises

We use this repository to provide you with all the files that you will need to solve the exercises. Use the following commands to get a local clone of the repository in your VM. For simplicity, please clone it both times; one in the `p4` user home directory and one in the `mini_internet` user home directory. 
We now show how to do that for the `p4` user.

```
cd /home/p4/
git clone git@gitlab.ethz.ch:nsg/public/adv-net-2020.git
```

Update local repository to get new tasks and solutions
Remember to pull this repository before every exercise session:

```
cd /home/p4/adv-net-2020
git pull git@gitlab.ethz.ch:nsg/public/adv-net-2020.git
thomahol's avatar
thomahol committed
65
```