Master Course Description

No: EE 461


Credits: 4

UW Course Catalog Description

Coordinator: S. Roy (Professor, EE)

Goals: Learn fundamental principles of communication networks. Develop skills in analyzing protocols and verifying properties via programming implementation and simulation.

Learning Objectives:

At the end of this course, students will be able to:

  1. Understand the OSI Networking Model, and associated functions of each layer.
  2. Understand and solve key concepts regarding Data Link, Network Routing and Transport Layer Protocols.
  3. Develop analytical models for protocol performance.
  4. Impelement protocols and conduct performance analysis (alternatively use simulation packages); compare with analytical results

Textbook: A. Tannenbaum, Computer Networks, Prentice Hall, 1996 (3rd ed.)

Reference Texts: J. Kurose and K. W.Ross, Computer Networking, Addison Wesley,2000.

Prerequisites by Topic:

  1. Probability and Statistics at the level of MATH/STAT 390 or IE 315
  2. Continuous and Discrete-time Signals and Systems (EE235, EE341)
  3. In addition, knowledge of communication systems is a plus but is not required.


  1. Network Architecture and ISO model
  2. Elements of Physical Transmission Media
  3. Data Link Layer Functions: Error detection/correction
  4. Data Link Layer Functions: Alternating Bit and Sliding Window Protocols
  5. Medium Access layer Protocols: Aloha, CSMA, Ethernet, Token Ring, Tree
  6. Network layer Protocols: Routing
  7. Transport layer Protocols: TCP/IP Congestion Control

Course Structure: The class meets for 3 hrs. a week. The lectures are devoted to developing a) understanding of network architecture and principles of protocol design and b) models for performance analysis of network protocols; homework assignments and exams are used to assess understanding of this aspect. Details of algorithmic implementation of protocols is reserved for 3 projects (each of 2 weeks duration) that focus on Data Link, Routing and Transport Layer (TCP) protocols.

Computer Resources: The course is dependant on use of departmental UNIX workstations with C compiler and appropriate network simulators.

Laboratory Resources: Computer labs.

Grading: 20% Homework, 30% projects, 20% Mid-Term, 30% Final.

Outcome Coverage:

(a) An ability to apply knowledge of mathematics, science and engineering. Apply analysis, modeling/simulation and knowledge of network architecture. The course uses some of the skills acquired in EE416 for analysis of network performance. Use of modeling/simulation techniques help validate results from theory. (H)

(b) An ability to design and conduct experiments, as well as to analyze and interpret data. Students use discrete-event simulation techniques to assess performance of useful network protocols. (M)

(e) An ability to identify, formulate, and solve engineering problems. Homeworks illustrate choice of the key design parameters in network protocols. (H)

(h) The broad education necessary to understand the impact of engineering solutions in a global, economic, environmental and societal context. The programming/simulation projects provide experience in writing code for protocol implementation and/or use of simulators for testing. Since networking technology is all-pervasive and continues to grow at a phenomenal rate, the importance of this experience is self-evident. (M)

(k) An ability to use the techniques, skills, and modern engineerning tools necessary for engineering practice. C programming and use of network simulators. (H)

Prepared By: Sumit Roy

Last revised: 3/27/13