SENG4500
10 units
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.
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.