Course Code | COMP3331/9331 |
Course Title | Computer Networks and Applications |
Units of Credit | 6 |
Lecture | Salil Kanhere |
Admin | Ayda Valinezhad Orang |
Classes |
Lectures: Tue 11:00-13:00 Hrs, Fri 16:00 -18:00 Hrs, On-line: Teams Live Event (links on Lectures page)
Timetable for all classes. |
Consultations |
Wednesday: 16:00 - 17:30
Venue: on-line ( Teams Consultations ) |
Course Website |
Course Website
|
Course Contact Email | cs3331@cse.unsw.edu.au |
Handbook Entry | Handbook Entry |
This course is an introductory course on computer networks, aimed at students with a background in computer science / electrical engineering. We will focus on common paradigms and protocols used in present data communication. Through lectures, in-class activities, labs and assignments, you will learn the theory and application of:
(1) Medium access control, congestion control, flow control, and reliable transmission,
(2) Addressing and naming,
(3) Routing and switching,
(4) Widely used protocols such as Ethernet, IP, TCP, UDP, HTTP, etc.
(5) Security threats and common defensive techniques, and
(6) Special purpose networks such as content delivery networks, peer-to-peer networks and wireless networks.
This is a combined undergraduate and postgraduate course.
There will be 4 hours of lectures every week:
(i) 2-hour lecture on Tuesday 11:00 - 13:00 and
(ii) 2-hour lecture on Friday 16:00 - 18:00
We plan to broadcast lectures using Teams live events with the opportunity to ask questions via chat. Recording of all lectures will be made available. Links for the Teams event for each lecture will be posted on the Lectures page.
There will be 2-hour labs during 8 weeks (starting in Week 2). The detailed lab schedule will be posted on The detailed course timetable is available
here
After completing this course, students will:
This course contributes to the development of the following graduate capabilities:
Graduate Capability |
Acquired in |
Scholarship: of their discipline in its interdisciplinary context |
Lectures, labs, assignment |
Scholarship: Capable of independent and collaborative |
Labs, assignment |
Scholarship: rigorous in their analysis, critique, and reflection |
Lectures, labs, exams, sample problems |
Scholarship: able to apply their knowledge and skills to solving problems |
Labs, assignment, exams, sample problems |
Scholarship: capable of effective communication |
Labs, assignment, lectures, exams |
Scholarship: digitally literate |
All aspects of the course |
Scholarship: information literate |
All aspects of the course |
Leadership: collaborative team workers |
Labs, assignment |
Professionalism: capable of independent, self-directed practice |
All aspects of the course |
Professionalism: capable of lifelong learning |
All aspects of the course |
Professionalism: capable of operating within an agreed Code of Practice |
Labs, assignment |
Global citizens: culturally aware and capable of respecting diversity and acting in socially /responsible ways |
Labs, course forums |
Before commencing this course, students should:
This course takes a top-down approach to teaching computer networks. The rationale behind this is that most students have first-hand experience using applications running over the Internet. This allows them to relate to each layer of stack as we travel down the layers. Once they are committed, they participate in appropriate cognitive aspects such as learning the details with a focus to understand them. Students get mentally prepared to answer questions very often there is no single answer or the answers can be unexpected. This results in deep learning and gives students a sense of accomplishment and confidence.
Learning will be largely facilitated through the delivery of lectures. The hands-on laboratories will provide an opportunity to gain deeper understanding of the concepts discussed in the lectures. The sample problems, homework problem set and tutorials will help in the development of problem-solving skills and in preparing for the exams. The programming assignments are mainly geared to allow students to gain familiarity with basic network programming and designing network protocols.
There will be four assessment components as listed below:
Component | Weight |
---|---|
Lab Exercises | 20% |
Programming Assignment | 20% |
Mid-term Test | 20% |
Final Exam | 40% |
To pass the course a student MUST receive at least 40% marks in the final exam. The following formula outlines precisely how the final mark will be computed:
lab = marks for lab exercises (scaled to 20) assign = marks for the programming assignment (out of 20 marks) midTerm = mark for the mid-term exam (out of 20 marks) finalExamScaled = scaled mark for the final exam (out of 40 marks) mark = lab + assign + midTerm + finalExamScaled grade = HD|DN|CR|PS if mark >= 50 && finalExamScaled >= 16 = FL if mark < 50 = UF finalExamScaled < 16
Plagiarism is defined as using the words or ideas of others and presenting them as your own UNSW and CSE treat plagiarism as academic misconduct, which means that it carries penalties as severe as being excluded from further study at UNSW. There are several sources to help you understand what plagiarism is and how it is dealt with at UNSW:
Make sure that you read and understand these. Ignorance is not accepted as an excuse for plagiarism. In particular, you are responsible for the of your assignment files such that they are not accessible by anyone but you by setting proper permissions on your CSE home directory and/or on online code repositories. Note also that plagiarism includes paying or asking another person to do a piece of work for you and then submitting it as your own work.
The following table lists the tentative weekly schedule. Students will be informed of any changes during the lecture and by announcements on the notices page.
Week | Lecture Dates | Lecture Topics | Labs | Assessment Tasks |
---|---|---|---|---|
1 |
15 & 18 Sep
2020 |
Course Logistics
Introduction:
|
Self-Study of Lab
resources and tools (no submission and no marks) |
|
2 |
22 & 25 Sep
2020 |
Application Layer:
|
Lab 1 |
Lab 1 submission deadline: 11:00 am
Tue 29 Sep 2020 |
3 | 29 Sep & 02 Oct 2020 |
Application Layer:
Transport Layer:
|
Lab 2 |
Lab 2 submission deadline: 11:00 am
Tue 06 Oct 2020 Assignment Specs Released (Expected) |
4 | 06 & 09 Oct 2020 |
Transport Layer:
|
Lab 3
|
Lab 3 submission deadline: 11:00 am
Tue 13 Oct 2020 |
5 |
13 & 16 Oct 2020
|
Transport Layer:
|
Tutorial 1
|
|
6 | No lecture |
No lecture
|
No Lab |
No Lab
|
7 | 27 & 30 Oct 2020 |
Network Layer, Data Plane:
|
Lab 4
|
Mid-term Test on 27th October during lecture hours
Lab 4 submission deadline: 11:00 am Tue 03 Nov 2020 |
8
|
03 & 06 Nov 2020
|
Network Layer, Data Plane:
|
Lab 5
|
Lab 5 submission deadline: 11:00am
Tue 10 Nov 2020 |
9 | 10 & 13 Nov 2020 |
Network Layer, Control Plane:
|
Lab 6
|
Lab 6 submission deadline: 11:00 am
Tue 17 Nov 2020 |
10 |
17 & 20 Nov
2020 |
Link Layer:
Network Security (self study)
|
Tutorial 2
|
Assignment Due |
Exam Period |
27 Nov- 10 Dec 2020
|
Exam Period |
|
Final Exam |
Course Textbook:
Reference Texts:
Links to additional reading material will be available on the lecture notes page.
Software:
For the labs, we will be using several Unix-based network utility programs. The purpose of these programs and information on how to use them will be provided in the lab handouts. We will also use a packet sniffing tool called Wireshark which has been widely deployed on CSE machines. In addition, we will also use Ns-2 a widely used network simulator for a few labs. Ns-2 is installed on the CSE lab machines. The simulator is written in C++. However, it uses OTcl as its command and configuration interface. In the lab exercises, we will use scripts written in OTcl. We will provide some of the scripts for the lab exercises. You will be expected to run the scripts, make some changes in the scripts, and certain performance metrics. You will not be required to write C++ code. Detailed resources for all tools used will be made available on the lab page.
Programming assignment is expected to be developed in C, Java or Python. Students are assumed to have sufficient expertise in one of these programming languages. Links to network programming in C, Java and Python will be available under the assignment link the course Sample code demonstrating a simple client/server application will be supplied as a starting point for students..
Student feedback on this course, and on the effectiveness of lectures in this course, is obtained via electronic survey () at the end of each term. Student feedback is taken seriously, and continual improvements are made to the course based in part on this feedback. Students are strongly encouraged to let the lecturer in charge know of any problems as soon as they arise. Suggestions and criticisms will be listened to openly, and every action will be taken to correct any issue or improve the students’ learning experience.
You can view the Special Consideration policy at the link here
UNSW handles special centrally (in the Student Lifecycle division), so all special must be submitted via the UNSW Special Consideration website. If your work in this course is affected by unforeseen adverse circumstances, you should apply for Special Consideration. Special must be accompanied by documentation on how you have been affected, which will be verified by Student Lifecycle. Do not email the course directly about special consideration. If your request is reasonable and your work has clearly been impacted, then
Note the use of the word "may". None of the above is guaranteed. It depends on you making a convincing case that the circumstances have clearly impacted your ability to work. Note that UNSW expects you to be available to sit Supplementary Exams, if required. If you are awarded a supplementary exam and do not attend, then your exam mark will be zero.
If you are registered with Disability Services, please forward your documentation to your Lecturer within the first two weeks of term.
Contacting LiC and Course Admin: No personal emails please.
9 months ago , last modified 8 months ago .
Resource created Friday 04 September 2020, 10:33:14 AM, last modified Wednesday 23 September 2020, 04:10:24 PM.