Available in 2024
Course code

SENG4500

Units

10 units

Level

4000 level

Course handbook

Description

This course familiarises 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 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.


Availability2024 Course Timetables

Callaghan

  • Semester 2 - 2024

Online

  • Semester 2 - 2024

Replacing course(s)

This course replaces the following course(s): SENG6400. Students who have successfully completed SENG6400 are not eligible to enrol in SENG4500.


Learning outcomes

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

1. Compare and contrast elements of low-level digital communication strategies in a networked environment.

2. Effectively configure, monitor, and troubleshoot frame-based computer communication within local area networks.

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

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

5. Analyse and recommend system concepts for distributed software systems.

6. Interpret and apply at least one industry-standard environment for development of distributed software systems.


Content

  • Frames and Topologies
  • LAN features
  • Building WANs
  • Internet Addressing
  • Sockets
  • IP Datagrams, Error Checking and UDP
  • TCP, DHCP, NAT, VPNs
  • 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

 


Requisite

If you have previously completed SENG6400, SENG3400 or ELEC3500 you cannot enrol in this course.


Assumed knowledge

SENG1110 or SENG6110


Assessment items

Written Assignment: Assignment 1

Written Assignment: Assessment 2

In Term Test: In Term Test

Online Open Book Formal Examination: Formal Exam
Compulsory Requirement: Pass requirement 40% - Must obtain 40% in this assessment item to pass the course.


Contact hours

Semester 2 - 2024 - Callaghan

Computer Lab-1
  • Face to Face On Campus 2 hour(s) per week(s) for 12 week(s) starting in week 2
Lecture-1
  • Face to Face On Campus 2 hour(s) per week(s) for 13 week(s) starting in week 1

Semester 2 - 2024 - Online

Computer Lab-1
  • Online 2 hour(s) per week(s) for 12 week(s) starting in week 2
Lecture-1
  • Online 2 hour(s) per week(s) for 13 week(s) starting in week 1

Course outline

Course outline not yet available.