Course pages 2018–19
Computer Networking
Principal lecturer: Dr Andrew Moore
Taken by: Part IB CST 50%, Part IB CST 75%
Past exam questions
No. of lectures: 20
Suggested hours of supervisions: 5
This course is a prerequisite for the Part II course Principles of Communication
Aims
The aim of this course is to introduce key concepts and principles of computer networks. The course will use a top-down approach to study the Internet and its protocol stack. Instances of architecture, protocol, application-examples will include email, web and media-streaming. We will cover communications services (e.g., TCP/IP) required to support such network applications. The implementation and deployment of communications services in practical networks: including wired and wireless LAN environments, will be followed by a discussion of issues of network-management. Throughout the course, the Internet’s architecture and protocols will be used as the primary examples to illustrate the fundamental principles of computer networking.
Lectures
- Introduction.
Overview of networking using the Internet as
an example. LANs and WANs. OSI reference model, Internet TCP/IP
Protocol Stack. Circuit-switching, packet-switching, Internet
structure, networking delays and packet loss. [3 lectures]
- Link layer and local area networks.
Link layer services, error detection and correction, Multiple Access
Protocols, link layer addressing, Ethernet, hubs and switches,
Point-to-Point Protocol. [2 lectures]
- Wireless and mobile networks.
Wireless links and network characteristics, Wi-Fi: IEEE 802.11 wireless
LANs. [1 lecture]
- Network layer addressing.
Network layer services, IP, IP addressing, IPv4, DHCP, NAT, ICMP, IPv6.
[3 lectures]
- Network layer routing.
Routing and forwarding, routing algorithms, routing in the Internet,
multicast. [3 lectures]
- Transport layer.
Service models, multiplexing/demultiplexing, connection-less transport
(UDP), principles of reliable data transfer, connection-oriented
transport (TCP), TCP congestion control, TCP variants.
[6 lectures]
- Application layer.
Client/server paradigm, WWW, HTTP, Domain Name System, P2P. [1.5 lectures]
- Multimedia networking.
Networked multimedia applications, multimedia delivery requirements,
multimedia protocols (SIP), content distribution networks. [0.5 lecture]
Objectives
At the end of the course students should
- be able to analyse a communication system by separating out the
different functions provided by the network;
- understand that there are fundamental limits to any communications
system;
- understand the general principles behind multiplexing, addressing,
routing, reliable transmission and other stateful protocols as well as
specific examples of each;
- understand what FEC is;
- be able to compare communications systems in how they solve
similar problems;
- have an informed view of both the internal workings of the
Internet and of a number of common Internet applications and
protocols.
Recommended reading
* Peterson, L.L. & Davie, B.S. (2011). Computer networks: a systems approach. Morgan Kaufmann (5th ed.). ISBN 9780123850591
Kurose, J.F. & Ross, K.W. (2009). Computer networking: a top-down approach. Addison-Wesley (5th ed.).
Comer, D. & Stevens, D. (2005). Internetworking with TCP-IP, vol. 1 and 2. Prentice Hall (5th ed.).
Stevens, W.R., Fenner, B. & Rudoff, A.M. (2003). UNIX network programming, Vol.I: The sockets networking API. Prentice Hall (3rd ed.).