CSCI 336T(S) Computer Networks

Less than 20 years ago, computer networks were of interest to researchers in the discipline but rarely used for practical systems. Now, many computers are so dependent on networking that they would be unable to function if disconnected from the network to which they belong. The merger between the technology for computing and communication that this change represents may have as significant an effect on our society as the emergence of the computer itself. In this course, we will study the principles underlying the design of computer networks. We will examine techniques for transmitting information efficiently and reliably over a variety of communication media. We will look at the addressing and routing problems that must be solved to ensure that transmitted data gets to the desired destination. We will come to understand the impact that the distributed nature of all network problems has on their difficulty. We will examine the ways in which these issues are addressed by current networking protocols such as TCP/IP, Ethernet and Appletalk. This course will be taught in the tutorial format. Students will meet weekly with the instructor in pairs to present solutions to problem sets and reports evaluating the technical merit of current solutions to various networking problems. In addition, students will be asked to complete programming assignments involving the implementation of simple communication protocols. Evaluation will be based primarily on problem sets, programming assignments, and exams. Prerequisites: Computer Science 136 and Computer Science 237.

Hour: MURTAGH