VERKKOKE PROJECT

Scope of the VERKKOKE project

At Helsinki University of Technology, in Telecommunications Software and Multimedia Laboratory we give a course titled “Computer Networks”. One of the learning objectives of the course is network programming and routing. Our philosophy of teaching is “learning by doing”, which means in practice that one of the requirements for passing the course is a programming assignment. The programming assignment introduces the student to socket programming and gives the student the possibility to practice implementing simplified routing protocols. The answers to programming assignments have previously been demonstrated to assistants and the reports were submitted as paper printouts and all students have done the same assignment. The students have complained that the submission method is out-of-date and inappropriate for a computer networks course since the course curriculum includes many examples of applications that could be used to submit the assignments over the Internet. To answer the above requirements and to reduce the work load of the course personnel without hindering the students learning process, we are in the progress of implementing an online learning environment for the Computer Networks course.

This system creates and sends individual assignments for students, accepts solution submissions via the Internet, and, finally, checks them automatically. The system also notifies the students of possible mistakes in their solutions. This way, the students can learn from their mistakes and fix them and resubmit the corrected solutions. The goal of the implementation is that the teacher only needs to start the system when the course begins and verify the results when students have finished their work.

Purpose for the VERKKOKE project

We can achieve multiple learning objectives simultaneously with this online learning system. The students learn how to implement simple user authentication, how to implement real working network programs for the Internet with different application programming interfaces (APIs), and learn how to apply the routing theory into practice. The submission using Internet frees students from time and place since course assignments can be solved when and where students want to do them. Automatic correction gives fast feedback and allows students to learn from their own mistakes because they can still remember what was done.

The proposed solution

The course provides a server and students implement corresponding client software to contact the server. In this phase of the assignment, students rehearse their knowledge of concurrent network programming. The server emulates a network that has several routers. The student's client represents one router whose routing table is calculated on the basis of the information sent by the server. The server can send routing data that is based on simplified routing protocols of different algorithms: both distance vector and link state routing algorithms can be in use. In other words, the second phase of the assignment is for learning routing in an internet network.

Process

Step 1: The student logs in and out of the Learning Management System to read assignment instructions, to commence assignment and retrieve assignment results.

Step 2: Externally, the student makes the client program, then logs back into the LMS to start the assignment.

Step 3: The system generates a random topology for the student.

Step 4: The student has the client program contact the simulation server. The simulation server sends routing messages to the client, based on the topology generated for the student.

Step 5: The client builds its routing table based on the routing messages and sends that routing table to the server. The simulation server checks whether the routing table is correct and stores the result in the LMS.

Step 6: The student sees the result in the LMS and logs out. If the routing table is not correct, there is the option of allowing multiple attempts for the student to resubmit.

Conclusion

We believe that our system will have strong positive impact on learning results. Routing is one of the most difficult concepts related to computer networks. Theoretical studying does not alone help to understand the real practical problems. In addition, our system allows combining theory and practicalities since theory presented in the course lectures can be immediately applied in students' own work in a very concrete way.


© TML. Design by Sara Vuori.