Available in 2021
Course code



10 units


6000 level

Course handbook


This course introduces students to lower-level aspects of computer networking such as: wiring and protocols; LAN technologies; WAN protocols and techniques (e.g. routing, IP, TCP and UDP) underpinning internets. An examination of the concepts, theory and practice of software development in distributed environments follows. The basic foundations for distributed computing are presented. These topics are then expanded to cover the advanced distributed system programmer support provided by middleware. Examples involving commercial distributed computing environments are included to illustrate the decisions and techniques made by designers of distributed software systems.

Availability2021 Course Timetables


  • Semester 2 - 2021

Learning outcomes

On successful completion of the course students will be able to:

1. Describe the basic elements of low-level digital communication

2. Explain frame-based computer communication in local area networks.

3. Illustrate the notions of virtual networks and encapsulation that underpin internet-based wide area networks, with particular emphasis on the IP-based Internet

4. Apply and evaluate rudimentary programming language-level abstractions that simplify the programming interface to computer networking.

5. Describe and analyse system concepts such as processes and threads, process management and scheduling as they relate to distributed software systems, extending these concepts to include issues such as heterogeneity, distributed file systems, transaction management and consistency models, distributed synchronisation and distributed security

6. Analyse and illustrate the use of at least one industry-standard environment for development of distributed software systems.


  • Frames and Topologies
  • LAN features
  • Building WANs
  • Internet Addressing
  • Sockets
  • IP Datagrams, Error Checking and UDP
  • RPC and Middleware
  • Review of system concepts such as processes and threads, process management and scheduling
  • Introduction to distributed systems
  • Interprocess communication, memory management and concurrency
  • Distributed process management
  • Distributed file systems
  • Transaction management and consistency models
  • Distributed synchronisation
  • Distributed security


This course has similarities to SENG3400. If you have successfully completed SENG3400 you cannot enrol in this course.

Assumed knowledge


Assessment items

Written Assignment: Assignment 1

Written Assignment: Assignment 2

In Term Test: In term test

Formal Examination: Formal Examination *

* This assessment has a compulsory requirement.

Compulsory Requirements

In order to pass this course, each student must complete ALL of the following compulsory requirements:

Course Assessment Requirements:

  • Formal Examination: Minimum Grade / Mark Requirement - Students must obtain a specified minimum grade / mark in this assessment item to pass the course. - Students whose overall mark in the course is 50% or more, but who score less than 40% in the compulsory item and thus fail to demonstrate the required proficiency, will be awarded a Criterion Fail grade, which will show as FF on their formal transcript. However, students in this position who have scored at least 25% in the compulsory item will be allowed to undertake a supplementary 'capped' assessment in which they can score at most 50% of the possible mark for that item.

Contact hours



Face to Face On Campus 2 hour(s) per Week for Full Term


Face to Face On Campus 2 hour(s) per Week for Full Term

The University of Newcastle acknowledges the traditional custodians of the lands within our footprint areas: Awabakal, Darkinjung, Biripai, Worimi, Wonnarua, and Eora Nations. We also pay respect to the wisdom of our Elders past and present.