COMP 3234B
Computer and Communication Networks
2nd semester 2020-2021
Course Overview
Prof. C Wu
Department of Computer Science The University of Hong Kong
Course objectives
Provide you with theoretical and practical basics of computer networks
Understand the principles and issues related to communication software and networking hardware
WWW, Email, DNS, TCP, UDP, IP, router, ARP, switch, Ethernet, WiFi, etc.
Computer Networks
Course objectives (cont¡¯d)
Understand the operating mechanisms of services in each layer of the network architecture
reliable data transfer, congestion control, store and forward, routing, switching, media access control, error detection and correction, etc.
Understand various measures of data network performance
throughput, delay, loss
Design and implement network applications/protocols
e.g., socket programming
application
transport
network
link
physical
Computer Networks
Structure of the course
application
transport
network
link
physical
A top-down approach
Start at the top
Network applications: web, email, DNS, … How applications are implemented: protocols, socket programming
What¡¯s underneath applications
Transport protocols (TCP, UDP) IP, routing
What¡¯s further down
Link technologies: Ethernet, WiFi, etc.
Learning outcomes
application
transport
network
link
physical
Outcome 1 [Concepts]: be able to explain the terminologies of computer networks, such as host, links, protocol stack, access/core network, throughput, etc.; be able to describe the services and functions provided by each layer in the Internet protocol stack.
Outcome 2 [Technologies and Protocols] : be able to describe the working principles behind key network technologies, such as circuit/ packet switching, reliable data transfer, flow/congestion control, routing, multiple access, etc., and key protocols used in modern computer networks, such as 802.11 WiFi, Ethernet, ARP, IP, TCP, etc.
Learning outcomes (cont¡¯d)
Outcome 3 [Analysis]: be able to calculate packet delay, throughput, channel efficiency according to different network protocols; be able to carry out reliable data transfer protocols and routing algorithms in given networks.
Outcome 4 [Implementation]: be able to demonstrate knowledge in using Socket Interface to design and implement network protocols, such as designing a network application, implementing a reliable data transfer protocol in given networks.
Outcome 5 [Practicality]: be able to plan for IP networks and properly assign IP addresses to interfaces in given networks.
application
transport
network
link
physical
Course information
Lecturer:
Prof. Chuan Wu (427 Chow Yei Ching Building) Consultation hours (online via Zoom):
Tuesdays/Thursdays 12:30-1pm, Thursdays 3-5pm
Teaching assistants:
Mr. Xiaodong Yi
Consultation hours: Mondays 12-3pm (online via Zoom)
Mr. Xiaoyang Zhao
Consultation hours: Wednesdays 12-3pm (online via Zoom)
Course available on Moodle http://moodle.hku.hk
Discussion forums, Zoom links and contact emails on Moodle
Course information (cont¡¯d)
Lecture/lab hours (all online via Zoom)
Tuesdays 10:30am¡ª12:20pm: lectures
Thursdays 10:30am¡ª12:20pm: lectures or lab sessions
Lab sessions
Mandatory participation: You get the lab score if you finish the lab tasks during the lab session or within 6 days (i.e., by 11:59pm of the following Wednesday)
Tentative schedule
(Refer to the latest schedule in the ¡°Schedule¡± table on Moodle course page)
Week
Date
Lecture Topic
Required Reading
1
Jan. 19
Course overview; Internet, protocol, layering, core/access networks, circuit vs. packet switching, network performance metrics (LO1, 3)
Ch. 1.1¡ª1.5
Jan. 21
Application layer ¡ª basics, socket programming (LO1, 4)
Ch. 2.1, 2.7
2
Jan. 26
Application layer ¡ª Web, email, DNS (LO2)
Ch. 2.2, 2.3, 2.4
Jan. 28
Lab 1: socket programming (LO4)
3
Feb. 2
Transport ¡ª basics, multiplexing/demultiplexing, UDP, reliable data transfer (LO1,2,3)
Ch. 3.1, 3.2, 3.3, 3.4
Feb. 4
Transport ¡ª GBN, selective repeat (LO2,3)
Ch. 3.4
4
Feb. 9
Transport ¡ª TCP RDT, flow control, connection management (LO2,3)
Ch. 3.5
Feb. 11
Lab 2: RDT (LO2,3)
5
Chinese New Year
6
Feb. 23
Transport ¡ª TCP congestion control (LO2,3)
Ch. 3.6, 3.7
Feb. 25
Transport ¡ª TCP throughput, RTT (LO2,3)
Ch. 3.7, 3.5
7
Mar. 2
Network ¡ª routing and forwarding, datagram, router, IP addressing (LO1, 2, 5)
Ch. 4.1, 4.2, 4.3
Mar. 4
Lab 3: TCP (LO2,3)
8
Reading Week
9
Mar. 16
HKU Foundation Day
Mar. 18
Network ¡ªDHCP, NAT, IPv6, ICMP (LO2,5)
Ch. 4.3, 5.6
10
Mar. 23
Midterm exam (to be confirmed)
Mar. 25
Lab 4 IP (LO2)
11
Mar. 30
Network ¡ª routing algorithms (LO2, 3)
Ch. 5.2
Apr. 1
Network ¡ª Internet routing protocols (LO2, 3)
Ch. 5.3, 5.4
12
Apr. 6
Public Holiday
Apr. 8
Lab 5 routing (LO2)
13
Apr. 13
Link ¡ª services, error detection and correction, multiple access (LO1,2,3)
Ch. 6.1, 6.2, 6.3
Apr. 15
Link ¡ª multiple access, link-layer addressing, ARP (LO2,3)
Ch. 6.3, 6.4
14
Apr. 20
Link ¡ªEthernet, switch, MPLS (LO2,3)
Ch. 6.4, 6.5, 6.6
Apr. 22
Lab 6 ARP, Ethernet (LO2,3)
15
Apr. 27
Link ¡ª wireless links, WiFi (LO2,3)
Ch. 7.1, 7.2,7.3,7.4
Apr. 29
Link ¡ª Bluetooth, Zigbee, course wrap-up (LO2)
Ch. 7.3.6
Textbook and References
Main Textbook
Computer Networking: A Top-Down Approach (7th Edition) James F. Kurose & Keith W. Ross
Pearson/Addison Wesley, 2017/2016
Global Edition: US Edition:
Required reading list and other references given at the end of each set of lecture slides
Assessment and grading (tentative)
6 labs
1 mark for each lab (1, 0.5 or 0)
1 programming assignment
6%
Implementing a simple application using socket programming
Using Python
3 written assignments
36%
8% 50%
problem analysis and solving, performance calculation
1 midterm examination
1 final examination
Academic policies
Late policy
10% deduction per day, for a maximum of 3 days
no assignment will be accepted after 3 days beyond the deadline
Write your own programs and assignments
Discussions on course materials and assignment requirements are encouraged, but you should write your own assignment, as an individual creative process
Plagiarism detection for every assignment
All about plagiarism at http://www.hku.hk/plagiarism
Especially, ¡°What constitutes plagiarism¡± at https://tl.hku.hk/plagiarism/
understanding-plagiarism/
The copier and the being copied will get ¡°0¡±