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.
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.
The project will be divided into several small projects to ensure students to have enough time to get used with the framework and to match the pace of lecture progress. There may be one or two more programming assignments that use different resources other than KENS (e.g., WireShark).
Each project will be out on Tuesday and due on Friday at the following week.
Please check the relevant chapters in the main textbook.
|Week 1||Introduction, Protocol|
|Week 2||Performance model|
Layering, Security, History
|Week 3||Applications, HTTP|
|Ch. 2||Problem set #1|
|Week 4||SMTP, DNS|
|Week 5||Transport layer, UDP|
|Ch. 3||Wireshark #1|
Congestion control, TCP variants
|Week 7||Virtual circuit vs. Datagram|
Router, IP, ICMP
|Ch. 4||Problem set #2|
|Week 8||(Mid-term exam)|
|Week 8||Routing Algorithm|
RIP vs. OSPF, BGP
|Week 10||Broadcast, Multicast|
Data link layer, Error control
|Week 11||Multiple access, ARP|
VLAN, MPLS, DCN
|Week 12||Wireless link, WiFi|
Cellular networks, Sensor networks
|Ch. 6||Wireshark #2|
|Week 13||Mobility management, Mobile IP|
Multimedia networking, VoIP
|Problem set #3|
|Week 14||RTR, SIP, Multimedia networking|
|Week 15||Secure e-mail, SSL, WEP|
Network management, Future direction, SDN, IoT
|Week 16||(Final exam)|