You are on page 1of 10

COURSE GUIDE

ix

INTRODUCTION
Welcome to CBDT3103 Introduction to Distributed System. This course is a onesemester, three-credit, under-graduate-level course for OUM students seeking a
Bachelor Degree in Information Technology with Network Computing.
Assignment and test in this module will help you master the topics for a period of
one semester.

PURPOSE OF THIS COURSE GUIDE


This Course Guide tells you briefly what the course is about and how you can
work your way through the material. It suggests the amount of time you will
need to spend to complete the module, activities you need to carry out and
exercises you need to do and how best to allocate your time in mastering the
contents of this module. This module also gives you a general idea of when your
tutor-marked assignments are due.
Think of your study module as reading the lecture instead of hearing it from a
lecturer. Basically, in the open distance mode of education, the module replace
your live lecture notes. However, the module still require you to think for
yourself and to practice key skills. In the same way that a lecturer in a
conventional full-time mode of study might give you an in-class exercise, your
study module will have activities for you to do at appropriate points. You will
also find self-test questions in each unit. These activities and self-tests give you
practice in the skills that you need to achieve the objectives of the course and to
complete assignments and pass the final examination. You are also strongly
advised to discuss with your tutors, during the tutorial sessions, the difficult
points or topics you may encounter in the module.

COURSE OBJECTIVES
By the end of this course, you should be able to:

Differentiate between networks and distributed systems.


Explain the role of a network in a distributed system.
Outline the challenges of designing and implementing distributed systems.
Describe the architectural models of distributed systems.
Identify the fundamental models of distributed systems
Identify different network services.
Outline the quality of services required in a network.
Copyright Open University Malaysia (OUM)

COURSE GUIDE

Describe the basic concept of Local Area Networks (LANs).


Give examples of LANs.
Identify the functions of internetworking facilities.
Describe the concept of layered network architecture.
Outline the layered structure of the TCP/IP reference model.
Describe the functions of Internet Protocol (IP).
Describe the functions of Transmission Control Protocol (TCP).
Identify different Internet applications.
Explain the concepts of marshalling and unmarshalling.
Describe synchronous and asynchronous communication.
Outline the steps in a remote procedure call (RPC).
Write network programs for RPC.
Describe the advantages of group communication.
Explain the definitions of atomicity, group and ordering.
Discuss the design and implementation issues of group communication.

MODULE STRUCTURES
There are FIVE major topics in this modules. A brief summary of the five major
topics are given below.
Topic 1: Introduction to the Network and Distributed System
Topic 1 is organised into a number of sections. The first section comprises of the
unit overview, the objectives and the introduction. The next section introduces
the concepts of a network and briefly describes what you should know about
them before you start topic 2. The third section defines distributed systems. You
are shown the relationships between networks and distributed systems, and then
learn about their differences. The characteristics of distributed systems and the
architectural models of distributed systems are discussed near the end of this
third section, and three fundamental models are described. At the end of this unit
is a summary, followed by the suggested solutions to the self-test questions. The
self-tests have been placed at appropriate points throughout the topic so that you
can test your understanding of the material. You are advised to complete these
tests before checking the answers.
Topic 2: Networking and Internetworking
You are introduced to network hardware very briefly at the beginning of this
topic. Then, you concentrate on software protocol in the remainder of topic 2 The
Copyright Open University Malaysia (OUM)

COURSE GUIDE

xi

software protocols you study include network services, quality of services (QoS),
networking requirements for distributed systems, LAN (Local Area Network),
and the devices used in internetworking (repeater, bridge and router).

Network services: You study two important types of network service


connection oriented services and connectionless services. They have different
characteristics, all of which are described and compared.

Quality of Services (QoS): You learn which factors should be considered to


determine the quality of services.

Networking requirements for distributed systems: You are shown how


networks support distributed systems and which parts of networks are
important for distributed systems.

LAN: LAN (Local Area Network) is described in this topic, with two case
studies of common configurations Ethernet and Token Ring. Quite a large
portion of this unit is devoted to studying LANs, since LANs support most
distributed systems (that are then connected to a WAN.

Internetworking: Internetworking devices usually connect LANs together.


You receive a brief introduction to the different internetworking devices in
this unit.

Topic 3: Transmission Control Protocol/Internet Protocol (TCP/IP)


Topic 3 focuses on the study of TCP/IP (Transmission Control Protocol/Internet
Protocol). The first section of this topic introduces the concept of a Wide Area
Network (WAN) along with its packet-switching technology. WANs are a very
big topic in networking, but we are not able to cover every topic in this topic
only TCP/IP. We concentrate on that, because it is the most popular
communication protocol in WANs, and almost every computer uses this protocol
to connect to the Internet the biggest network group in the world. After
introducing WANs, we deal with the concept of the layered network architecture.
Two models are discussed: the International Standards Organisation Open
Systems Interconnection (ISO OSI) reference model and the Transmission Control
Protocol/ Internet Protocol (TCP/IP) reference model. Although this topic
focuses on TCP/IP, the ISO OSI reference model is discussed briefly, because it
was an important reference model in networking and, with the brief discussion
that is provided, you will appreciate the TCP/IP reference model more.IP
(Internet Protocol) is investigated after the layered network architecture. We go
through its functions, addressing, datagram [the Protocol Data Unit (PDU) of the
IP layer; PDU is defined in topic 1 ] header, routing, and companion protocols.
For TCP (Transmission Control Protocol), we study its functions, segment (the
Copyright Open University Malaysia (OUM)

xii COURSE GUIDE

PDU of the TCP layer) header, services, and multiplexing function. TCP is
followed by a brief discussion of UDP (User Datagram Protocol). Some simple
Internet applications, such as DNS (Domain Name System), email, Telnet and
FTP (File Transfer Protocol), are introduced briefly.
At the end of this unit is a summary followed by the solutions to the self-test
questions. The self-tests are spread throughout the topic at appropriate points so
that you can test your understanding of the material. You are advised to complete
the self-tests before checking the answers.
Topic 4: Interprocess Communication (IPC) and Remote Procedure Calls (RPC)
In broad sense, inter-process communication (IPC) is the exchange of data
between one process and another. The two processes can be either within the
same computer or over a network. IPC implies a protocol that guarantees a
response to a request. This unit is mainly concerned with the characteristics of
protocols for IPC in a distributed system. It discusses protocols for the
representation of data items in messages of IPC. It also discusses the construction
of protocols to support the client-server communication the communication
pattern that is most commonly used in distributed programs. Remote procedure
call (RPC) is dealt with as a case study of IPC methods. Note that this unit does
not cover low-level IPC methods such as message queues, shared memory, and
semaphores. The client-server communication model is one of the
communication patterns that use IPC. This client-server model is the most
commonly cited architecture when distributed systems are discussed. The
following figure shows a simple structure in which client processes interact with
server processes in separated machines. Client A communicates with Server 1 to
get a service from Server 1. Client B requests a service from Server 2, but Server 2
cannot handle the request by itself. Thus it communicates with Server 3 to
complete the service.
Server 1
Client A
Server 2
Client B
Server 3

A simple client-server model

Topic 4 first introduces the concept of IPC and then deals with the related
concepts of marshalling and unmarshalling. A discussion of synchronization
follows, and two kinds of communication mode are introduced: synchronous and
Copyright Open University Malaysia (OUM)

COURSE GUIDE xiii

asynchronous communications. Then you study some design and


implementation problems surrounding client-server communication. Finally, you
learn the concepts underlying a remote procedure call (RPC), which is the most
popular model for client-server communication. We provide programming
examples to show how it works.
Topic 5: Multicast Group communication
Topic 5 focuses on group communication. Group communication is quite
different from client-server communication, such as RPC. For the latter, there is
only one source and one destination. When the source (sender) sends a message
to the destination, the destination receives it and then returns an
acknowledgement. When the sender receives the acknowledgement, the
communication is completed. For group communication, however, there will be
more than one destination and sometimes there will be more than one source.
The situation is totally different.
So, you should immediately begin to sense that the problems of handling group
communication are quite different from point-to-point communication, and well
investigate the problems and suggest some solutions to solve them. Topic 5 will:
1.

Define group communication along with its characteristics.

2.

Define important concepts for group communication such as atomicity and


ordering.

3.

Discuss the design and implementation issues of group communication.

YOUR STUDY PLAN


As you by now aware three-credit course requires 120 learning hours the
breakdown of which is shown in the following Table 1.
Table 1: Study Plan
Activities
General understanding of module

Totals Hours
5

Reading module (see guide in table 2)

60

Attending tutorial: 3 times of 5 hours each

15

Access OUM website

12

Work on assignment

15

Revision

18

Total

120

Copyright Open University Malaysia (OUM)

xiv COURSE GUIDE

INDEPENDENT STUDY GUIDE


The following table gives a general guideline on the minimum total hours you
should spend on independent study.
Table 2: General Guideline
No. of
Hours

Topics

Introduction to the network and distributed


system

Networking and internetworking

Assessment
Activities

10

Self-test 1.1
Self-test 1.2
Self-test 1.3
Self-test 1.4
Self-test 1.5

13

Self-test 2.1
Self-test 2.2
Self-test 2.3
Self-test 2.4
Self-test 2.5
Self-test 2.6

13

Self-test 3.1
Self-test 3.2
Self-test 3.3
Self-test 3.4
Self-test 3.5

Transmission Control Protocol/Internet Protocol


(TCP/IP)

Interprocess communication (IPC) and remote


procedure calls (RPC)

12

Self-test 4.1
Self-test 4.2
Self-test 4.3
Self-test 4.4

Multicast group communication

12

Self-test 5.1
Self-test 5.2

Copyright Open University Malaysia (OUM)

COURSE GUIDE xv

SUPPLEMENTARY COURSE MATERIALS


The following are important supplementary course materials to help you in this
course:

Text book and supplementary reading text as suggested in the module. You
are advised to read the text.

Non-Print materials.

Text Book
George Coulouris, Jean Dollimore and Tim Kindberg (2005) Distributed Systems:
Concepts and Design, 4th edition, Reading, MA: Addison Wesley Longman.
Non-Print Media
OUM will also provide you with e-materials to support you in your learning.
This e-materials are available in OUM portal, in particular in OUM Virtual
Learning Environment, known as myINSPIRE. You are required to access this
Learning Management System. Faculty website is also contain in the portal.

COURSE ASSESSMENT
Formal assessment is of two components:

Continuous assessment, which contributes 50% to your final mark

Course examination, which contributes 50% to your final mark.

Continuous Assessment Components:


1.

Involvement in online discussion

2.

One or two assignment

5%
45%

Involvement in Online Discussion


Online discussion with your tutors, on academic issues or problems related to
your study, namely in understanding the materials in the module or doing
your self-tests in the module and also online discussion with your and fellow
students represent important components of teaching and learning activities
at OUM. To help you to go through your online discussion, OUM has
developed a Computer-based Learning Management System, known as
myINSPIRE. The system have a number of functionalities which enable the
students to access OUMs digital library, communicate with the tutors and
their fellow students. We strongly advised you to use this system.

Copyright Open University Malaysia (OUM)

xvi COURSE GUIDE

Assignment
For this course you are required to do one or two assignments. The objective
of the assignment is:

To provide a mechanism for you to check your progress and make sure
that you have met certain learning objective

To provide you with the chance to demonstrate your understanding of the


materials in the module.

To provide an opportunity for you to apply what you have learned.

How to Do Your Assignments


Please carefully read through the assignment question to make sure you
understand what is required before attempting an assignment. If you do not
understand an assignment or the instructions, please contact your tutor. Once
you have completed each assignment, you must send it (together with your
TMA form) to your tutor. Please make sure that each assignment reaches your
tutor on or before the deadline. You must be careful when you are using other
references in your assignments. Please do not commit plagiarism, if you
commit plagiarism, you will be penalized severely. Plagiarism is theft of
somebody elses work or ideas. This applies just as much to using the work of
other students as it does to authors of books. However, you may include
parenthetical references to the works you cite, e.g. (Stott 2002, 38). You should
include a section at the end of your assignment called References where the
full name, title, date and place of the publication of any references that you
have used appear. The way to cite a reference is:
Stott, V. (2002). Web server technology, 2nd edn., London: ABC Publishing.

COURSE EXAMINATION
Course examination will contribute 50% of the final mark. The examination is
divided into two parts: part one which will be conducted in the mid-term and
part two which will be conducted at end of the course. Each part contributes 25%
of the total mark of 50%. Part one will examine the first few topics and part two
will examine the last few topics of the module.

Copyright Open University Malaysia (OUM)

COURSE GUIDE xvii

TUTORIALS
The course includes 5 tutorial meetings of two hours each. The tutorials are
conducted to provide an opportunity for you to meet your tutors and discussed
important points or difficult points or concepts in the module. In addition, you
have an opportunity to discuss self-test with your tutors or share your study
experiences and difficulties in your peer-to-peer group discussions. Although the
tutorials are not compulsory, you are encouraged to attend the tutorial meetings
as far as possible. It is strongly recommended that you attend all tutorials, as they
will provide considerable assistance in your study of this course. Moreover, you
will have the chance to meet with other distance learners who are taking the same
course.

GROUP PROJECT
Please do group project if it is specified in the course. The group project provides
you with the opportunity to show your ability to work in group, namely to do
group problem solving, sharing and communicate your ideas to group members.
You are required to use myINSPIRE in this group project, i.e. to communicate
and share your ideas with the group members.

Copyright Open University Malaysia (OUM)

xviii COURSE GUIDE

Copyright Open University Malaysia (OUM)

You might also like