tum/ cs/ network architectures and services/ ilab
[] Sun, 28 May 2023 18:26:30 +0200 | en

Hello M. Guest, welcome to the iLab 2016ss!

The main focus of this practical exercise is you...
We spent a lot of time in the past 10 years to create an exciting learning experience. You will learn a lot of practically relevant stuff during the upcoming weeks.

To make you benefit most from the exercise I want to give you a short introduction on how we do things, why we do so, and how you can profit most from the things we offer you.

This element's history...
2012-04-18 00:15:51: Marc-Oliver Pahl
2012-04-18 00:15:37: Marc-Oliver Pahl
2012-04-18 00:15:32: Marc-Oliver Pahl
2012-04-18 00:14:10: Marc-Oliver Pahl - created -

Short introduction to the didactical concept with some historical remarks

Marc-Oliver Pahl
What is a magician but a practicing theorist?
-- Obi-Wan Kenobi, 'Return of the Jedi'

In winter term 2003/2004 I attended a practical course at a new professor's chair in Tübingen. This professor was Prof. Dr.-Ing. Georg Carle and his chair was the chair for "Rechnernetze und Internet". The course was called "Internetpraktikum" and it was held by my friend Uwe Bilger by then. The course was based on a very nice book called "Mastering Networks: An Internet Lab Manual" by Jörg Liebeherr and Magda El Zarki. I enjoyed the course a lot.

During the semester I told Uwe several times about how the exercise could be improved and so I was hired to work on improvement together with him for the upcoming summer term ;) We started designing entirely new exercises based on our experience from the first run. Over the years the exercises went through several steps of improvements by various people of whom besides Uwe Bilger especially Joachim Schiele, Andreas Korsten, and Stephan Günther are to be named as they did major improvements on the exercises or the hardware and software of the lab rooms. The result are the exercises Internetpraktikum in Tübingen, since 2008 iLab and since 2010 iLab2 in Munich.

Until 2013 more than 1000 students have attended one of the named exercises. So you are in a good tradition and as the feedback was very positive I think you will like the exercise ;)

Enough history, let's get back to the didactical concept that evolved with the contents over the years.

When designing this course concept we thought about "Which is the best way we know to transport our knowledge to our students?". The quote on top expresses something very interesting: we can only do magic -and I consider computer science as magic- if we have a solid theoretical background. In other words: we can only understand the outcome of a practical experiment if we know what we should see and why things could be the way they are. Many questions in the exercises will be around this. You will find the answers to the practical questions in the theory.

As you can see, I consider the theory very important. What I do not like is boring theory with no application. As we will do a practical exercise together we will do hands-on, so it will be fun.

The result of several years of my practical experimentation with students is that we need theory to master the practical part. We need incentives to work with the theory and some kind of redundancy will help remembering the facts. The outcome is the course structure I will explain to you next.

In the exercise we have three parts:

  1. lecture (~1h)
  2. individual preparation of the theoretical background (~4-6h)
  3. practical exercise as a team (6-8h)

The three parts have a different focus each:

The lecture is meant to give you an overview and a refresh about the topic of the next exercise. It is planned as an event where all participants come together in a room and listen to a talk. Additionally this weekly appointment is meant to give you a forum to raise questions and discuss topics! If you already know about some things in the lecture: even better. You can use the lecture for asking more about the topics. The small group of participants is optimal for discussion!

The individual preparation of the theoretical background is done inside this system as so-called prelab - individually by each participant. The reason for doing this part alone and not in a group is that you can select the speed and depth of going through each of the topics by yourself this way. You can learn wherever and wherever you want as long as you have Internet there since everything is linked online in this system. The topics covered by the prelab give you more in-depth information about the topics already covered in the lecture. You get prepared for the practical part. The content of the prelab is highly correlated to the exercises in the lab later. It gives you the necessary knowledge to be the magician.

In the prelab you find multiple choice questions. They are meant to support you in your learning process. Use them to control yourself if you got the important points from the texts. The prelab is a good indicator for you to know if you are well prepared for the practical part.

The practical part, the lab is the hands-on part finally. You do it in your team in the laboratory room. Here you do the magic by playing around with the technical equipment, going step-by-step towards a cool result.

This part is done as a team as you can learn a lot from each other. Exchange your thoughts and ask each other about why things are the way they are or how you can do this and that. Asking questions and explaining things to each other will teach you hard- and soft-skills.

Having to formulate your answers in English will give you good skills here as well. Try to be accurate and correct and not to wordy when answering... Usually a short clear answer is enough.

Finally debugging or solving problems without external help is something to mention for the hands-on. Of course you will encounter problems. It is a real-life hands-on. You will do everything from cabling to setting things up to running experiments - a lot of error prone tasks. Even if you make everything right, side-effects might tamper your experiments. How to deal with such situations in a structured way is something you will often need during and after your studies. This exercise will help you to improve this skill. You will notice at the end that a lot of the problems you had at the beginning could have been solved easily with the knowledge you have at the end. If you encounter problems try to solve them for at least half an hour in your team first. Only then ask the tutors. This will help you improving your debugging skills a lot!

the basic workflow

the online workflow after the lecture

The following table gives you a short overview of the parts and their goals:

Each exercise consists of the three parts: event (audience) [expected time horizon]
  • Lecture (whole group) [~1h]
    • Get the background to the upcoming exercise.
    • Exchange feedback to the past exercise.
  • PreLab (individual, in the web system) [~4-6h]
    • Work on the background to the upcoming exercise.
    • Prepare theoretically (and if necessary practically) to be able to do the upcoming exercise without getting into trouble.
    • Should make you able to understand problems that might occur during the lab.
    • The credits from this part are not part of your lab mark. Feel free to make errors and learn from them!
  • Lab (team, in the web system) [~6-8h]
    • Use your gained theoretical knowledge from the previous parts in the practical exercise.
    • Deepen your knowledge.
    • Learn to identify problems and remove errors by yourself as a team.

Why do I bother you with such details? I think it is good when you know why we did the things this way. Having that in mind you can benefit much more from the exercise!

This element's history...
2013-11-05 15:01:23: Marc-Oliver Pahl
2012-04-18 00:03:59: Marc-Oliver Pahl
2011-11-03 17:56:30: Marc-Oliver Pahl
2011-11-03 17:55:36: Marc-Oliver Pahl
2011-11-03 17:54:37: Marc-Oliver Pahl
2011-11-03 17:54:05: Marc-Oliver Pahl
2011-11-03 17:53:46: Marc-Oliver Pahl
2011-11-03 17:53:21: Marc-Oliver Pahl
2011-11-03 17:53:07: Marc-Oliver Pahl
2011-11-03 17:52:39: Marc-Oliver Pahl
2011-11-03 17:51:54: Marc-Oliver Pahl
2011-11-03 17:50:47: Marc-Oliver Pahl
2011-11-03 17:49:17: Marc-Oliver Pahl
2011-11-03 17:48:30: Marc-Oliver Pahl
2011-11-03 17:21:26: Marc-Oliver Pahl
2011-11-03 17:19:37: Marc-Oliver Pahl
2011-10-18 19:25:45: Marc-Oliver Pahl
2011-10-18 18:41:47: Marc-Oliver Pahl
2011-10-18 18:41:09: Marc-Oliver Pahl
2011-10-18 18:38:53: Marc-Oliver Pahl
2011-10-18 18:36:43: Marc-Oliver Pahl
2011-10-18 18:36:03: Marc-Oliver Pahl
2011-10-18 18:34:53: Marc-Oliver Pahl
2011-10-18 18:34:21: Marc-Oliver Pahl
2011-10-18 18:33:42: Marc-Oliver Pahl
2011-10-18 18:31:59: Marc-Oliver Pahl
2011-10-18 18:30:50: Marc-Oliver Pahl
2011-10-18 18:29:35: Marc-Oliver Pahl
2011-10-18 18:29:08: Marc-Oliver Pahl
2011-10-18 18:21:41: Marc-Oliver Pahl
2011-10-18 18:19:05: Marc-Oliver Pahl
2011-10-18 18:18:35: Marc-Oliver Pahl
2011-10-18 18:16:13: Marc-Oliver Pahl
2011-10-18 18:15:41: Marc-Oliver Pahl
2011-10-18 18:15:07: Marc-Oliver Pahl
2011-10-18 18:14:46: Marc-Oliver Pahl
2011-10-18 18:14:27: Marc-Oliver Pahl
2011-10-18 17:06:24: Marc-Oliver Pahl
2011-10-18 16:48:38: Marc-Oliver Pahl
2011-10-18 16:13:39: Marc-Oliver Pahl
2011-10-18 16:12:02: Marc-Oliver Pahl
2011-10-18 16:10:46: Marc-Oliver Pahl
2011-10-18 16:07:35: Marc-Oliver Pahl
2011-10-18 16:00:40: Marc-Oliver Pahl
2011-10-18 15:59:26: Marc-Oliver Pahl
2011-10-18 15:57:36: Marc-Oliver Pahl
2011-10-18 15:11:24: Marc-Oliver Pahl - created -

Learning goals of the lab

The lab has multiple learning goals. Some of them are:
  • Become a network master: You will learn a lot of interesting things around computer networks, Linux, hardware, software, etc.
  • Become a debug pro: Not only in code but also in configurations can be bugs. Configurations can be even trickier sometimes because they are part of a system with many possible side effects. At the beginning you may encounter a configuration problem, “it does not work as it should”, and you may not know where the edges and wrinkles are bugs hide in. Later in the lab you will be familiar with wireshark and you will know the nuts and bolts to tweak your system at when certain (not so much unexpected anymore) behaviour occurs. Then you have become a system bug master ;)
    (As hint: if nothing helps it may sometimes be faster to reboot. Do the same you thought you did before and suddenly it works…)
  • Work in a team: You and your teammate will spend some time together in the upcoming weeks. You will not only get to know each other much better but also you will learn a lot from each other. Discuss and ask each other. The most you can learn is by the questions of the other and by explaining things to each other. You will learn there is a big difference between knowing something and being able to explain it in an understandable way…
    At the end of the lab your explanation skills will probably have improved even for the ones that are already very well in explaining ;)
  • Read, write, and speak English: You will read a lot of English texts for the lab. You will formulate a lot of sentences in English in the lab. Both will improve your language skills and give you much more security in the written and also spoken language. As everything is in English you may even try out speaking English with each other during one or another session in the lab room when you are both German ;) It will be a good skill for later…
  • Focus on a specific topic and master it: You will get to know many different networking topics. In both ilabs you will find out “what is on the wires“. In the ilab1 you mainly configure components to sometimes complex setups. In the ilab2 you will also program code for realizing functionality.
This element's history...
2012-04-18 00:24:12: Marc-Oliver Pahl
2012-04-18 00:22:49: Marc-Oliver Pahl
2012-04-18 00:21:36: Marc-Oliver Pahl
2012-04-18 00:18:47: Marc-Oliver Pahl
2012-04-12 22:17:17: Marc-Oliver Pahl
2012-04-12 21:56:11: Marc-Oliver Pahl - created -

How to write good answers?

This learning goal is so important that it gets its own section. Also you get credits for your answers so you should carefully keep in mind the following hints.

One of the things you will learn in the lab is to formulate good answers in English. This is not a trivial task so do not underestimate it. From our experience from the past years we want to give you some hints how to write good answers:

  • Read the question carefully and address all points asked in an exact and structured way. Sometimes we read answers that wrote about Adam and Eve and the solution is hidden somewhere in between the lines. This is neither good nor will you get full credits for such an answer. To do so:
    • Address every point asked.
    • Structure your answer in a clear(ly visible) way.
    • Try to write short precise answers.
    • Answer in your own words. Never copy&paste from the Internet. Your own words are much nicer and you will learn much more when reading something on the web, discussing it with your teammate, and then formulating it together. Try it out and you will see how difficult this is at the beginning and how easy it will be for you at the end of the lab. Expressing yourself about a technical issue in your own words in English is one of the learning goals. It will always pay off.
    • If you want to cite something from the Internet for good reasons like wanting to prove something is stated as you write it in a manual for instance, you can of course do so. But: cite correctly by marking the citation and adding the reference, e.g. the URL of your source. A citation can not replace your answer it can only be an add-on.

May the force be with you in becoming a master in answering ;)

This element's history...
2012-04-18 00:26:54: Marc-Oliver Pahl
2012-04-12 22:17:57: Marc-Oliver Pahl
2012-04-12 21:57:56: Marc-Oliver Pahl
2012-04-12 21:57:40: Marc-Oliver Pahl - created -

Let's get started!

Enough said - I wont keep you longer from starting with an exciting experience :)

Have fun with the exercise and give feedback!
Best regards, Marc-Oliver Pahl

*:0.0928sec | © Chair of Network Architectures and Services | labsystem mop