COMP3035 - Networked Systems

Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).

Code
COMP3035 (Also taught as: COMPGZ01)
Year
3
Prerequisites
Succesful completion of years 1 and 2 of the Computer Science programme
Term
1
Taught By
Brad Karp (50%)
Kyle Jamieson (50%)
Aims
To offer a rigorous introduction to the problems that arise when networking computer systems, and algorithms and systems design that solve these problems. The architectural principles and protocols that underlie the internet will be explained in detail. Topics to be taught willl include the physical layer, widely used link layers (wired and wireless), MAC protocols, internetworking, intra-domain routing, reliable transport, congestion control, wide-area (policy) routing, naming, network security, the end-to-end principle, and network applications.
Learning Outcomes
Understanding the nuances interacitons between a network's distributed entities is a vital skill, without which one cannot truly be said to understand networking. To help students develop this skill, 3035/GZ01 incorporates significant programming courseworks in Python and Java, in which students build working implementations of network protocols.

Content:

Week 1 Introduction to Networking; Information, Error Control Coding, and Compression

Week 2 Medium Access Control: CDMA, ALOHA, and Ethernet; Link Layer Addressing and Forwarding; Spanning Trees; MPLS

Week 3 Achieving Reliability; Stop-and-Wait, Go-Back-N

Week 4 Achieving Reliability (cont); Selective Repeat; Intro to Internetworking; Network Address Translation; Inside Internet Routers

Week 5 The Domain Name System; Multi-hop Networks and end-to-end Arguments

reading week

Week 6 Reliable Transport and TCP introduction

Week 7 TCP and Congestion Control; Intra-Domain Routing: Introduction and Distance-Vector

Week 8 Intra-Domain Routing: Link-State; Intra-Domain Routing: BGP

Week 9 Intra-Domain Routing: BGP (cont); Wireless Networks: 802.11 MAC

Week 10 Security: Firewalls, Worms and IDSes; Content Delivery HTTP, Web Caching, and Content Distribution Networks

Method of Instruction:

Lecture presentations, self-learning modules and tutorials

Assessment:

The course has the following assessment components:

  • Coursework Section (4 pieces 40%)
  • Written Examination (2.5 hours, 60%)

To pass this course, students must:

  • Obtain an overall pass mark of 40% for all sections combined

The examination rubric is:
Answer THREE Questions.

Resources:

Required Text: Larry L. Peterson and Bruce S. Davie, Computer Networks: A Systems Approach, Morgan Kaufmann; 5th ed. (20 April 2011, ISBN 978-0123850591) or 4th ed. (16 April 2007, ISBN 978-0123705488).

in UK by Pearson Education, ISBN 978-0-13-136548-7

Optional Text: Jerome Saltzer and M. Frans Kaashoek, 'Principles of Computer Systems Design: An Introduction', Part I (Chapters

1-6), paperback, published in UK by Elsevier, ISBN 978-0-12-374957-4.

Required Text: Jerome Saltzer and M. Frans Kaashoek, 'Principles of Computer Systems Design: An Introduction', Part II (Chapters

7-11), Version 5.0, PDF available free online.

Research Paper: Metcalfe, R., Boggs, D., 'Ethernet: Distributed Packet Switching for Local Computer Networks', Communications

of the ACM 19(7), July 1976.

Research Paper: Degemark, M., Brodnick, A., Carlsson, S., and Pink, S., 'Small Forwarding Tables for Fast Routing Lookups',

in SIGCOMM 1997.

Research Paper: Saltzer, J., Reed, D., and Clark, D.,' End-toEnd Arguments in System Design', in ACM TOCS, 2(4), November

1984.

Research Paper: Jacobson, V. and Karels, M., Congestion Avoidance and Control, revised version of original paper in SIGCOMM

1988.

Module web page