Network and Distributed Computing
|Course code SENG3400||Units 10||Level 3000||Faculty 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 2014
|Objectives||1. 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
* 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
|Replacing Course(s)||SENG3280 and SENG3390|
|Transition||Not available for students who have completed SENG3280|
|Modes of Delivery||Internal Mode|
|Contact Hours||Lecture: for 3 hour(s) per Week for Full Term|
Workshop: for 2 hour(s) per Week for Full Term
|Timetables||2014 Course Timetables for SENG3400|