The goal of this course is to provide students with sound understanding of fundamental concepts and problems in networking and hands-on experiences in network programming. Resources for programming assignments will include Berkeley socket programming and TCP protocol implementation on KENS.
There will be 5 programming projects: 1 on socket programming (KENS), 2 on TCP (KENS), 1 on routing (KENS), and 1 on network security. We will post details according to the published schedule. For each project we will hold a tutorial session during the lab time slot.
For 4 KENS programming projects, students have to build up their own TCP implementation on top of KENS (KAIST Educational Network Simulator) framework. We provide a minimal user-level function interface that interacts with user applications and an emulated IP layer which performs static routing. The underlying emulator can simulate both reliable and unreliable link states with configurable and reproducible packet losses and reordering. Your task is to implement the TCP stack API.
For the first and last projects, students will work individually. For the three KENS projects, students will work in a team of two.
Go to KLMS KENS Docs Old KENS website Introduction Slide
Weeks | Topics | Chapters | Homework | Projects(Tentative) | |
---|---|---|---|---|---|
Week 1 | (8/31) Course Overview | (9/02) Chapter 1.1~1.4 | Ch. 1 | Whenever each chapter finish | |
Week 2 | (9/07) 1.5~1.7 | (9/09) Chapter 2.1~2.3 | Ch. 2 | Problem set #1 on Chapters 1 and 2 | Socket Programming (Sep 9 ~ Sep 23) |
Week 3 | (9/14) 2.4~2.5 | (9/16) 2.6 | Ch. 3 | ||
Week 4 | (9/21) Holiday | (9/23) Chapter 3.1~3.3 | Ch. 3 | KENS #1 (Sep 23 ~ Oct 7) |
|
Week 5 | (9/28) 3.4 | (9/30) 3.5 | Ch. 3 | Problem set #2 on Chapter 3 | |
Week 6 | (10/05) 3.6~3.7 | (10/07) Chapter 4.1~4.2 | Ch. 4 | ||
Week 7 | (10/12) 4.3~4.4 | (10/14) Chapter 5.1~5.2 | Ch. 4 | Problem set #3 on Chapter 4 | KENS #2 (Oct 14 ~ Nov 4) |
Week 8 | (10/21) 9:00 am ~ 12:00 pm Midterm exam | ||||
Week 9 | (10/26) 5.3 | (10/28) 5.4 | Ch. 5 | ||
Week 10 | (11/02) 5.5~5.7 | (11/04) Chapter 6.1~6.2 | Ch. 5 | Problem set #4 | |
Week 11 | (11/09) 6.3~6.4 | (11/11) 6.5~6.6 | Ch. 5 | Routing (Nov 11 ~ Nov 18) |
|
Week 12 | (11/16) 6.7 | (11/18) Chapter 7.1~7.2 | Ch. 6 | Problem set #5 | |
Week 13 | (11/23) 7.3 | (11/25) 7.4~7.5, 7.8 | Ch. 6
Ch. 7 |
Security Report (Nov 25 ~ Dec 2) |
|
Week 14 | (11/30) Chapter 8.1~8.3 | (12/02) 8.4, 8.6 | Ch. 7
Ch. 8 |
Problem set #6 | |
Week 15 | (12/07) 8.7~8.9 | (12/09) Wrap-up | Ch. 8
Ch. 9 |
||
Week 16 | (12/16) 9:00 am ~ 12:00 pm Final exam |