NWEN302 (2021) - Computer Network Design


This course addresses the principles, architectures and protocols that have shaped the development of the Internet and modern networked applications. It examines network design principles, underlying protocols, technologies and architectures of the TCP/IP protocol stack. Topics include the design of transport protocols, routing protocols, logical link control, medium access control and physical media.

Course learning objectives

Students who pass this course will be able to:

  1. Explain the process in which packets are delivered from source to destination in the Internet (GA 3(b))
  2. Explain key routing algorithms, the process of how routing protocols communicate/exchange topology information and set up routing tables (GA 3(a), 3(b), 3(d), 3(e ))
  3. Explain the operation of the TCP flow and congestion control algorithms (GA 3(a), 3(b), 3(c), 3(d), 3(e))
  4. Explain the role of medium access control and implications of different types of physical layers (GA 3(a), 3(b), 3(c), 3(d), 3(e))
  5. Setup and interconnect networks with an emulation tool (GA 3(b), 3(d ), 3(f))
  6. Implement simple networking algorithms and protocols using TCP/IP primitives (GA 3(b), 3(d), 3(f))
  7. Setup and configure a simple network of SDN-enabled devices and demonstrate the usage, comparing it with the traditional Internet model (GA 3(b), 3(d), 3(f)).

Course content

The course is primarily offered in-person, but there will also be a remote option and there will be online alternatives for all the components of the course for students who cannot attend in-person.
Students taking this course remotely must have access to a computer with camera and microphone and a reliable high speed internet connection that will support real-time video plus audio connections and screen sharing.  Students must be able to use Zoom. A mobile phone connection only is not considered sufficient.  The computer must be adequate to support the programming required by the course: almost any modern Windows, Macintosh, or Unix laptop or desktop computer will be sufficient, but an Android or IOS tablet will not.
If the assessment of the course includes tests, the tests will generally be run in-person on the Kelburn campus. There will be a remote option for students who cannot attend in-person and who have a strong justification (for example, being enrolled from overseas).
The remote test option will use Zoom for online supervision of the tests and you must be able to use Zoom with a camera, microphone, and screen-sharing. Students who will need to use the remote test option must contact the course coordinator in the first two weeks of the trimester to get permission and make arrangements.

Required Academic Background

Students must have basic networking protocols knowledge (cf: NWEN 243) and be able to program in C and Python (cf: NWEN 241).

Withdrawal from Course

Withdrawal dates and process:


Dr Alvin Valera (Coordinator)

Prof Winston Seah

Teaching Format

This course will be offered in-person and online.  For students in Wellington, there will be a combination of in-person components and web/internet based resources. It will also be possible to take the course entirely online for those who cannot attend on campus, with all the components provided in-person also made available online.
During the trimester there will be two in-person lectures per week. Students are encouraged to approach the lecturers if they have questions; students can also discuss with tutors if they have questions on the assignments/labs.

Student feedback

A summary of the course feedback provided by students previously for this course is available from: http://www.cad.vuw.ac.nz/feedback/feedback_display.php

Dates (trimester, teaching & break dates)

  • Teaching: 05 July 2021 - 08 October 2021
  • Break: 16 August 2021 - 29 August 2021
  • Study period: 11 October 2021 - 14 October 2021
  • Exam period: 15 October 2021 - 06 November 2021

Class Times and Room Numbers

05 July 2021 - 15 August 2021

  • Monday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn
  • Wednesday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn
  • Thursday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn
30 August 2021 - 10 October 2021

  • Monday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn
  • Wednesday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn
  • Thursday 09:00 - 09:50 – 104, Alan MacDiarmid Building, Kelburn

Other Classes

There will be weekly 3-hour in-person helpdesks in CO246 reserved for NWEN 302 labs. There will also be weekly 1-hour online helpdesks through Zoom.


There are no required texts for this offering.

Mandatory Course Requirements

In addition to achieving an overall pass mark of at least 50%, students must:

  • Attempt all labs and obtain at least 40% of the total available marks across all the labs.
  • Obtain an average of C- grade or better in the final test.

If you believe that exceptional circumstances may prevent you from meeting the mandatory course requirements, contact the Course Coordinator for advice as soon as possible.


This course will be assessed through assignments, labs and a final test.

Assessment ItemDue Date or Test DateCLO(s)Percentage
Assignment 1Week 4CLO: 1,2,3,42.5%
Assignment 2Week 7CLO: 1,2,3,42.5%
Assignment 3Week 9CLO: 1,2,3,42.5%
Assignment 4Week 12CLO: 1,2,3,42.5%
Lab 1Week 5, Week 6CLO: 5,6,720%
Lab 2Week 9, Week 10CLO: 5,6,720%
Lab 3Week 12CLO: 5,6,720%
Final TestAssessment PeriodCLO: 1,2,3,430%


Assignments and labs submitted after the deadline will be deducted 20% of the marks per day late (00:00 the following day is counted as one day late).


Any request for extension must be supported by a medical certificate or other acceptable documentation for non medical reasons. Medical certificates must be provided by a registered medical practitioner. Approval for extensions can only be granted by the course lecturers.

Submission & Return

All assignments and lab reports (and supplementary documents, e.g. source codes) are to be submitted electronically via the ECS submission system and are due at 23:59 on the date specified.


In order to maintain satisfactory progress in NWEN 302, you should plan to spend an average of 10 - 11 hours per week on this paper. A plausible and approximate breakdown for these hours would be:

  • Lectures: 3 hours
  • Readings: 2 hours
  • Assignments: 2 hours
  • Labs: 3-4 hours

Teaching Plan

See https://ecs.wgtn.ac.nz/Courses/NWEN302_2021T2/LectureSchedule

Communication of Additional Information

Please refer to the ECS Wiki Page at https://ecs.wgtn.ac.nz/Courses/NWEN302_2021T2/ for the latest information related to the course.

Offering CRN: 17181

Points: 15
Prerequisites: NWEN 241, 243; ENGR 123 or (MATH 161, one of MATH 177, QUAN 102 or STAT 193)
Duration: 05 July 2021 - 07 November 2021
Starts: Trimester 2
Campus: Kelburn