ECE 642: Design and Analysis of Computer Networks


ECE 528 or equivalent or permission of instructor.


The course covers the foundations of computer communication networks and introduces principles upon which the Internet and other computer networks are designed. It discusses the performance, analytical, and design aspects of packet-switched and forwarding networks, routing, and path computation algorithms. The course starts with a treatment of a single node (e.g., a router or a switch) as a queueing system such as state-dependent queues and imbedded Markov chains. It continues with the modeling of virtual channels through a network of queues. Additional topics covered include admission control algorithms modeling, performance evaluation of local and wide-area computer networks (e.g., LANs, IP/Internet, MPLS Traffic Engineering), and analysis of random-access techniques.

Note 1

This is a graduate-level (MS/PhD) course in performance modeling of contemporary communications networks. In addition to analytical models, students are taught how to develop simulation models for queueing systems as well as other stochastic processes using MATLAB. More specifically, the typical solutions for projects assigned in the class will be made available using MATLAB programming. In addition to weekly homework, there will be five to six weekly or bi-weekly projects to help students learn how to use MATLAB for simulation of single queue, network of queues and applications. These projects complement the analytical modeling technique and have considerable pedagogic value in helping students understand random processes, performance evaluation of a node or a network. Projects also represent real-life examples of network design. Note that while use of MATLAB is encouraged for carrying out the simulation projects, students may use other general-purpose programming languages such as C, C++, JAVA and Pyton.

Note 2

This course is also helpful if you plan to take ECE 741: Wireless Networks in Spring semester.