Fundamentals of Computer Networks
Catalog Data: 

Graduate Course Information


ECE 478/578 - Fundamentals of Computer Networks

Credits:            3

Course Website: and the D2L website (hw submission and grades).


Course Description:

This course provides an introduction to the fundamental principles of computer networks and data communications. Emphasis is given on current technologies and architectures for establishing direct link and packet-switched networks, sharing access to a common communication medium, internetworking and routing, end-to-end flow control, congestion control and recourse allocation, and network security.

Course Assignments and Exams:

There will be weekly homework assignments on the topics covered in class, with an approximate 8 homework assignments. There will also be one midterm exam, three projects and a final exam.


The grading distribution for the course assignments and exams is as follows:


Homework Assignments:           20%

Midterm:                                   20% 

Projects:                                   30% 

Final Exam:                               30%

Total                                         100%


Grading Scheme:


Letter Grade

90% – 100%


80% – 89%


70% – 79%


60% – 69%




ECE175 – Computer Programming for Engineering Applications (C programming)

Computer Networks, A Systems Approach, 5th edition,

                        Larry L. Peterson and Bruce S. Davie, Morgan Kaufmann, 2011.


References:      Data Networks, 2nd edition,

D. Bertsekas, and R. Gallager, Prentice Hall, 1992.

Computer Networks, 5th edition,

A.    S. Tanenbaum, and D. Wetherall, Prentice Hall, 2011.

Computer Networking, A Top-down Approach, 5th edition,

J. Kurose and K. Ross, Addison Welsey, 2009.

Course Learning Outcomes: 

Upon the completion of this course, students should have achieved the following objectives:


  • Have a fundamental understanding of the network design principles and network performance metrics
  • Become familiar with the mechanisms and protocols for reliable networking in a variety of network architectures
  • Be able to analyze and evaluate the performance of different network architectures and protocols.

Course Topics: 

Introduction to Computer Networks

  • Applications of computer networks
  • Basic network architectures
  • The OSI layering model 
  • Network performance metrics


Direct Link Networks

  • Hardware building blocks
  • Types of network links
  • Bit encoding
  • Framing
  • Error detection
  • Retransmission mechanisms


Medium Access

  • The channel allocation problem
  • Multiple access protocols
  • Ethernet, Wireless LAN, Bluetooth, WiFi, and WiMax protocol standards



  • Internetworking and addressing
  • Routing algorithms
  • Internet routing, Autonomous systems
  • Multicast routing


End-to-End Protocols

  • Elementary transport protocols
  • Reliable transport services (TCP)
  • Flow control mechanisms


Congestion Control and Resource Allocation

  • The resource allocation problem
  • Classification of resource allocation methods and evaluation metrics
  • TCP congestion control
  • Congestion avoidance mechanisms



  • Electronic mail
  • The World Wide Web
  • The Domain Name System
  • Web services


Network Security

  • Cryptography – Simple cryptosystems
  • Symmetric key cryptography
  • Hash functions
  • Public key cryptography
  • Authentication protocols
  • Transport layer and IP security

Prepared by: 
Loukas Lazos
Prepared Date: 
April 2013

University of Arizona College of Engineering