Network and Distributed Computing

Course code SENG6400Units 10Level 6000Faculty of Engineering and Built EnvironmentSchool of Electrical Engineering and Computer Science

This course introduces students to lower-level aspects of computer networking such as: wiring and protocols; LAN technologies; WAN protocols and techniques (eg 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.

Available in 2015

Callaghan CampusSemester 2
Previously offered in 2014
Objectives1. To give students an understanding of the basics of low-level digital communication
2. To develop an understanding of frame-based computer communication in local area networks.
3. To develop an understanding of the notions of virtual networks and encapsulation that underpin internet-based wide area networks. To illustrate these notions through an examination of the IP-based Internet.
4. To provide experience of the use of rudimentary programming language-level abstractions that simplify the programmer interface to computer networking.
5. To review system concepts such as processes and threads, process management and scheduling and to introduce the concept of distributed software systems. To relate the reviewed "single computer" concepts to equivalent issues in distributed computing eg interprocess communication, memory management and concurrency in the distributed processing sense. To extend these concepts to include investigation of issues such as heterogeneity, distributed process management, distributed file systems, transaction management and consistency models, distributed synchronisation and distributed security.
6. To provide experience in the use of 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
Industrial Experience0
Assumed KnowledgeSENG6110
Modes of DeliveryInternal Mode
Teaching MethodsLecture
Workshop
Assessment Items
Essays / Written AssignmentsAs per course outline including verbal presentation of software developed
Examination: FormalAs per University's exam timetable
Contact HoursLecture: for 3 hour(s) per Week for Full Term
Workshop: for 2 hour(s) per Week for Full Term
Compulsory Components
Compulsory Course ComponentStudents must obtain 40% in the final exam to pass the course.
Student achieving >25% but less that 40% will be offered an alternate assessment if, and only if, all other assessment items have been submitted.
Students obtaining <25% will not be offered an alternate assessment, and will fail the course, unless students have submitted Adverse Circumstances in accordance with the Adverse Circumstances Policy.
Timetables2015 Course Timetables for SENG6400