-TML logo-

T-110.6120 Special Course in Datacommunications Software

Opinnot > T-110.6120 > 2007 > index.html

Spring 2007: Protocol Software Engineering (6 cr)

11.5.2007Final feedback
23.3.2007Telelogic SDL Suite is available in Niksula, the deadline of the SDL part is changed to 10.4.2007
19.3.2007Please contact me, if you submitted your work, but did not get the confirmation.

Course information spring 2007

This is an optional course suitable for undergraduate and postgraduate studies. The course consists of two parts: lectures and laboratory.

The lecture part covers fundamentals of protocol implementation: protocol design, specification, verification and testing as well as implementation issues including packet classification and filtering, retransmissions and efficiency. Linux traffic control, kernel threads and implementation of IP and TCP are examined as practical examples.

The laboratory part consists of 3 projects covering protocol design, protocol specification and verification using SDL, and implementation of a small extension or modification to an existing protocol implementation.


Operating systems, Internet protocols, and Programming in C


Responsible teacher, Prof. Antti Ylä-Jääski
Teacher, Dosent, Prof. Kimmo Raatikainen
Assistant: Oleg Ponomarev


Lectures are received as a video stream from University of Helsinki, Kumpula. The first part will be at 16:15 - 17:45, then 15 min break, and the second part at 18:00 - 19:30. Their planned content is

  1. Introduction (1h)
  2. Internet architecture (3h)
  3. Specification and Description Language (SDL) (4h)
  4. Protocol Testing (4h)
  5. Linux Kernel Programming (4-6h)
  6. Linux TCP/IP Implementation (6-8h)

The lecture notes are available there. We do not check the attendance, the video of the lectures is available for download (details).


There is a laboratory work which is mandatory for passing the course. It is split into three projects with the following schedule:

  1. Topic selection by 12.2.2007, noon: unless you selected your own subject, it is "Reliable datagram delivery service on top of UDP". Your protocol should include at least acknowledgements and flow control (Stop-and-Wait is not enough). This paper may help.
  2. Protocol design by 19.3.2007, noon: RFC-style description of message types, header structure and functionality. 0 - 10 points for this part.
  3. Protocol specification and verification using SDL by 10.4.2007, noon: 0 - 20 points
  4. Final report by 30.4.2007, noon: implement the protocol you designed in C for linux. It may be a kernel module or just a user-space program. Your should describe the implementation, testing and provide your source code. 0 - 30 points

The grading weights for custom topics may differ.


"The Linux Networking Architecture" by Klaus Wehrle et. al was ordered in the library.

Previous courses and their topics

The responsible author of this page is Oleg Ponomarev, <T-110.6120(ät)tml.hut.fi>.
These pages are no longer being updated!!
URL: http://www.tml.tkk.fi/Opinnot/T-110.6120/2007/index.html