The University of Western Australia
Computer Science and Software Engineering
 
 

Department of Computer Science and Software Engineering

CITS3002 Computer Networks

Schedule of topics in 2020

The presentation of each of these topics will commence during each week's Wednesday's 90-minute lecture. Each week's schedule will be accompanied by a link to HTML pages of each lecture. This schedule is almost guaranteed to change. Please refer to this webpage (not a printed copy) when revising material.

The materials presented here do not define the whole unit. Attending lectures and reviewing their material comprises about of the effort required for this unit. The remainder of your time should be spent reading the recommended reading, and undertaking the laboratory tasks and projects.

References to relevant sections in Tanenbaum's 5/e, Comer's 6/e, and Kurose & Ross's 7/e will appear, here, below each lecture's topics.

Week Wednesdays 11am-1pm, Woolnough Lecture Theatre Laboratories
Data Communications
Week 1
Mon 24th Feb
Introduction to Computer Networks (single page)
Administrivia, introduction to computer networks, basic definitions, The need for network protocols, layered models, the 7-layer OSI reference model.
[TAN §1.1-1.4;  KR §1.1,1.2,1.5]
No laboratories this week
Week 2
Mon 2nd Mar
The Physical Layer, Error detection and correction (single page)
The Physical Layer, signal encoding and synchronisation, the nature of transmission errors, error detection and correction techniques, cyclic redundancy checks and polynomial codes.
[TAN §2.1-2.2, 3.1-3.2;  KR §5.1-5.2]
Labsheet 1
and sample solutions and discussion

Public holiday, Mon 2nd March -
NO laboratories
Week 3
Mon 9th Mar
Data Link Layer protocols (single page)
Data Link Layer responsibilities. The use of simulation in network protocol design. Introduction to the cnet network simulator. Unidirectional protocols. The stop-and-wait protocol. Bidirectional protocols, protocol pipelining and piggybacking, sliding-window protocols.
[TAN §3.1-3.4]
Labsheet 2
and sample solutions and discussion
Week 4
Mon 16th Mar
Local Area Networks (LANs) (single page)
Multiaccess communication, time- and frequency-multiplexing, channel allocation. Local Area Networks (LANs), carrier sense networks, encoding of digital signals, collision detection and collision avoidance. The IEEE802.3 (Ethernet) system, addressing mechanisms, binary-exponential backoff, repeaters, hubs, and switches.
[TAN §4.1-4.3.4,4.8;  KR §5.1-5.3.2,5.4]
Labsheet 3
and sample solutions and discussion
Week 5
Mon 23rd Mar
Wireless Networks (WLANs) (single page)
Wireless networking, the hidden and exposed node problems, collision avoidance algorithms, IEEE802.11a/b/g/n standards, access-points and distribution systems. The dangers of wireless networking, wireless DoS attacks, approaches to securing wireless networks. Case study: the Wired Equivalent Privacy (WEP) algorithm.
[TAN §4.4;  KR §6.1-6.3.5]
Labsheet 4
and sample solutions and discussion
Week 6
Mon 30th Mar
The Network Layer (single page)
Connection-based .vs. connectionless services, virtual circuits and datagram exchange, network layer routing algorithms. Congestion and flow-control, end-to-end flow control, load shedding, traffic shaping.
[TAN §5.1-5.4.2;  KR §4.1-4.3]
Labsheet 5
Two non-teaching weeks: Mon 6th - Sun 19th April

 

Internetworking
Week 7
Mon 20th Apr
The TCP/IP protocol suite
The motivation for internetworking, the TCP/IP protocol suite, the relationship to the OSI model, the Internet Protocol (IP) and addressing, IP datagrams, the Internet Control Message Protocol (ICMP), the Address Resolution Protocol (ARP).
Project handed out this week,
due 5pm Fri 22nd May
Week 8
Mon 27th Apr
Transport layer protocols and APIs
The Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). Network Application Programming Interfaces (APIs), Berkeley sockets. TCP/IP support in high-level programming languages.
ANZAC day holiday, Mon 27th April -
NO laboratories
Week 9
Mon 4th May
Client/server design
Connection-based and connectionless processing, different classes of server, internetworking support libraries. Designing client-server applications, partitioning client-server responsibilities, iterative and concurrent servers.
Week 10
Mon 11th May
Architecture independent applications
Automated development of distributed applications, architecture-independent data representation. Remote procedure calls (RPCs), parameter passing mechanisms, Java's Remote Method Invocation (RMI). The Java security model, the class file verifier, verifying Java bytecodes, Java security managers.
 
Week 11
Mon 18th May
Cryptography's role in networking
Basic terminology, hash-functions, message digests, symmetric and asymmetric algorithms, the DES algorithm, ECB and CBC modes, public key cryptography, the MIT/RSA algorithm, digital signatures, digitial certificates, and certificate revocation. End-to-end communication using the secure sockets layer (SSL). Virtual private networks (VPNs).
Project due, 5pm Fri 22nd May
Week 12
Mon 25th May
Security of TCP/IP
IP protocol based attacks, packet sniffing, port scanning, address spoofing, DOS and DDOS attacks. Security at the network boundary, router/firewall packet filtering, network address translation (NAT).
No laboratories this week

This Page

Written by: Chris.McDonald@uwa.edu.au