# Lectures: Spring 2016

IC522: Computer Networks (Spring 2016)

Instructor:
Kyung-Joon Park
Office hours: By appointment, E3-513 DGIST

Textbooks:

• Computer Networking: A Top-Down Approach Featuring the Internet, by J. Kurose and K. Ross, Addison-Wesley
• Larry L. Peterson and Bruce S. Davie, Computer Networks: A Systems Approach, Morgan Kaufmann Publisher
• D. Bertsekas and R. Gallager, Data Networks, 2nd Edition, Prentice-Hall, 1992 (freely available at
• Introduction to queueing theory
• The ppt slides for queueing theory lectures are available

Course Description:
We will discuss various issues on computer networking in a top-down manner, by beginning at the application layer and moving towards the physical layer as in the main textbook. We will also cover basic concepts of queueing theory to have an ability to analyze packet networks. In addition, we will read several key research papers to deal with the state-of-the-art research on computer communication and networking areas. If time permits, we will carry out a research project to have a hand-on experience in computer networking systems and to understand how they work in an algorithm level.

30% - Midterm exam
40% - Final exam
30% - Homework

Announcement:

• Assignment 1: Problems 2, 3, 5, 6, 8, 13, 19, 24, 25, 31 in Chapter 1 (due: April 4)
• Assignment 2: M/M/1 queue simulation (due: April 18)
• Carry out M/M/1 queue simulation when the system utilization is 0.1 and 0.9, respectively. Plot the waiting time and the number of customers with respect to simulation time.
(Check this on how to simulate a queue. For the inverse CDF method, see this.)
• Assignment 3: Problems 9, 10, 23, 24, 31 in Chapter 2 (due: April 18)
• Assignment 4: Socket programming (due: April 28)
• Assignment 5: Problems 12, 15, 26, 32, 40, 44, 45, 49, 52, 53 in Chapter 3 (due: May 16)
• Assignment 6: Problems 7, 9, 14, 26, 28, 30 in Chapter 4 (due: June 9)
• Assignment 7: Problems 8, 9, 10, 11, 12 in Chapter 5 (due: June 13)
• Paper reading assignment 1 (There will be related problems in the final exam.)

Lectures:

• [March 3] Class introduction, modeling of engineering systems
• [March 7] Introduction to queueing theory: Definition and basic notation of queues, key components of queues, Little's theorem
• [March 10] Introduction to queueing theory: Poisson process
• [March 14] Introduction to queueing theory: M/M/1 queue
• [March 17] No class (2016 KICS Machine Learning & IoT Workshop)
• [March 21] Introduction to queueing theory: Examples
• [March 24] Introduction to computer networking
• [March 28] Introduction to computer networking (cont'd)
• [March 31] Application layer
• [April 4] Transport layer: UDP, reliable data transfer (regular class + makeup class)
• [April 7] No class (ONK Spring & DevCon 2016)
• [April 11 & 14] No class (CPS Week 2016)
• [April 18] Q&A session before the midterm exam (makeup class)
• [April 21] Midterm exam
• [April 25] Reliable data transfer (cont'd)
• [April 28] TCP
• [May 2] TCP congestion control
• [May 9] TCP congestion control (cont'd) and network layer: Virtual circuit and datagram networks
• [May 12] Network layer: Virtual circuit and datagram networks (cont'd)
• [May 16] Network layer: Inside of a router and routing algorithms
• [May 19] Routing algorithms (cont'd)
• [May 23] Routing in the Internet
• [May 26] No class (한국통신학회 Smart Transportation 워크샵)
• [May 30] Link layer: Introduction, error-detection
• [June 2] Multiple access
• [June 9] Introduction to wireless networks and wrap up
• [June 13] Final exam