Models of DCS Minicomputer model Workstationserver model Processorpool

  • Slides: 36
Download presentation
Models of DCS • • • Minicomputer model Workstation-server model Processor-pool model Hybrid model

Models of DCS • • • Minicomputer model Workstation-server model Processor-pool model Hybrid model 1

Minicomputer Model Minicomputer ARPA net Minicomputer • Extension of centralized Time sharing system –

Minicomputer Model Minicomputer ARPA net Minicomputer • Extension of centralized Time sharing system – User must log on his/her home minicomputer. – Thereafter, he/she can log on a remote machine by telnet. • Main purpose is Resource sharing – Information Databases – High-performance devices ark E. G Early arpanet 2

Workstation Model Workstation • • • 100 Mbps LAN Workstation Each workstation is single-user.

Workstation Model Workstation • • • 100 Mbps LAN Workstation Each workstation is single-user. (PCs) Process migration – Users first log on his/her personal workstation. – If there are idle remote workstations, a heavy job may migrate to one of them. Problems: – How to find an idle workstation – How to migrate a job – What if a user log on the to the remote machine that was busy executing process of another station(3 approaches to solve 3 rd problem) 3

Three approaches • Sharing of resources between remote process & local process • kill

Three approaches • Sharing of resources between remote process & local process • kill the remote process. • Migrate the remote process back to its workstation. (preemptive process migration) • Examples : Sprite system, experimental system developed at Xerox PARC 4

Workstation-Server Model • Workstation • 100 Gbps LAN • Mini. Computer file server http

Workstation-Server Model • Workstation • 100 Gbps LAN • Mini. Computer file server http server cycle server Client workstations – Most are Diskless and few are diskful. – Graphic/interactive applications processed in local – All file, print, http and even cycle computation requests are sent to servers. Server minicomputers – Each minicomputer is dedicated to one or more different types of services. Client-Server model of communication – RPC (Remote Procedure Call) – RMI (Remote Method Invocation) • A Client process calls a server process’ function. • No process migration invoked • Example: NFS • ) 5

Advantages • Cheaper • Diskless WS are more preferred than diskful from system maintenance

Advantages • Cheaper • Diskless WS are more preferred than diskful from system maintenance point of view. (backup and h/w maintenance). • Installation of new softwares easy(File server) • Users have flexibilty to log into any workstation and request the services. • Request-response protocol is used to access the services 6

Hence it does not need process migration facility • A user has guaranteed response

Hence it does not need process migration facility • A user has guaranteed response time as WS are not used for executing remote processes. • Example : V-system is a workstation –server model. ark 7

Processor-Pool Model • Clients: – They log in any one of the terminals (diskless

Processor-Pool Model • Clients: – They log in any one of the terminals (diskless workstations or X terminals) – All services are dispatched to servers. • Servers: – Necessary number of processors are allocated to each user from the pool. • Not suitable for high-speed interactive apps 100 Mbps LAN Run server p 1 pn ark 8

Advantages • Better utilization of processing power. • Greater flexibility. The system services can

Advantages • Better utilization of processing power. • Greater flexibility. The system services can be expanded without need to install any more computers. ark 9

Disadvantages • Not suitable for high speed interactive applications involving graphics because of the

Disadvantages • Not suitable for high speed interactive applications involving graphics because of the slow speed of communication. • Example : Amoeba and cambridge ark 10

 • Workstation server model is the most widely used model for building distributed

• Workstation server model is the most widely used model for building distributed apps. It performs simple interactive tasks such as editing jobs , sending emails and executing small programs. • Processor pool model is suitable for jobs that has group of users & who need massive computations 11

Hybrid model • Combines the advantages of both workstation-server model and processor-pool model. •

Hybrid model • Combines the advantages of both workstation-server model and processor-pool model. • It is based on workstation-server model but with the addition of pool of processors. • The processors in pool are allocated dynamically for large computations • This model also gives guaranteed response to interactive jobs by processing them on local workstations • More expensive to implement ark 12

Reasons for Distributed Computing Systems • Inherently distributed applications – Distributed DB, worldwide airline

Reasons for Distributed Computing Systems • Inherently distributed applications – Distributed DB, worldwide airline reservation, banking system • Information sharing among distributed users – CSCW(computer supported cooperative working) or groupware technology used by software developers • Resource sharing – Sharing DB/expensive hardware and controlling remote lab. • Better cost-performance ratio / Performance – Emergence of Gbit network and high-speed/cheap MPUs – Effective for coarse-grained or parallel applications. – Cost effective due to resource sharing. • Reliability(degree of tolerance against errors and failures) – Non-stopping (availability) and voting features. • • Scalability Flexibility – Reconfigure the system to meet users’ requirements ark 13

Network v. s. Distributed Operating Systems Features Network OS Distributed OS System Image) Multiple

Network v. s. Distributed Operating Systems Features Network OS Distributed OS System Image) Multiple system image(Existence of multiple computers is known) Single system image(existence of multiple computers is not known) Autonomy High Local OS at each computer No global job coordination Low A single system-wide OS Global job coordination Fault Tolerance No or little(Unavailability grows as faulty machines increase. ) Unavailability remains little even if fault machines increase. ark 14

Issues in Distributed OS • • Transparency Reliability Flexibility Performance Scalability Heterogenity Security Emulation

Issues in Distributed OS • • Transparency Reliability Flexibility Performance Scalability Heterogenity Security Emulation of existing OS 15

TRANSPARENCY • Access transparency -users unable to know whether a resource is local or

TRANSPARENCY • Access transparency -users unable to know whether a resource is local or remote -achieved by using a global naming for resources • Location transparency(2 main aspects) 1. name transparency -name of the resource should not reveal any hint of the physical location of the resource 2. User mobility -a resource should be accessed by same name from different nodes of the system -both require system wide global resource naming facility 16

 • Replication transparency -existence of multiple copies of a resource and replication activity

• Replication transparency -existence of multiple copies of a resource and replication activity is hidden. - replica management issues. • Failure transparency - masking the users from partial failures in the system -complete failure transparency not achieved in DOS(comm link failure) -very slow &expensive to design complete failure transparent DCS 17

 • Migration transparency -migration of object is handled by the system in a

• Migration transparency -migration of object is handled by the system in a user transparent manner. - 3 issues Migration decisions, no change in name of object, IPC for migrating process • concurrency transparency - each user has the feeling that he/she is the sole user of the system and no other users exist. - for this , resource sharing mechanisms should have 4 properties. -event ordering, mutual exclusion, no-starvation, no-deadlock 18

 • Performance transparency - system automatically reconfigured to improve the performance as load

• Performance transparency - system automatically reconfigured to improve the performance as load varies dynamically - requires intelligent resource allocation and process migration. • Scaling transparency -system able to expand without disrupting activites of the users - requires use of open-system architecture and scalable algorithms ark 19

reliability • Fault avoidance • Fault tolerance • Fault detection & recovery ark 20

reliability • Fault avoidance • Fault tolerance • Fault detection & recovery ark 20

 • Fault avoidance - Design components of systems in a way to minimize

• Fault avoidance - Design components of systems in a way to minimize fault occurance - Use high-reliability components(h/w components) • Fault tolerance - ability of system to continue functioning in event of partial failures. - redundancy techniques - distributed control 21

 • Fault detection and recovery - mechanisms to determine the occurrence of a

• Fault detection and recovery - mechanisms to determine the occurrence of a failure and correct the system to an acceptable state for continued operation. -techniques for this are 1 atomic transactions 2 stateless servers 3 acknowledgments and timeout-based retransmission of msgs ark 22

flexibility • Ease of modification(should be easy to incorporate changes in the system with

flexibility • Ease of modification(should be easy to incorporate changes in the system with min interruption to users) • Ease of enhancement -should be easy to add new services/functionalities - monolithic model & microkernel model - in distributed OS microlithic model is preferred due to its flexibility neglecting overhead in msg passing. 23

performance • Performance should be better than or at least equal to that of

performance • Performance should be better than or at least equal to that of single processor system • Design principles -batch if possible -cache whenever possible -minimize copying of data -minimize network traffic -Fine grain parallelism for multiprocessing 24

scalability • Avoid centralized entities • Avoid centralized algorithms • Perform most operations on

scalability • Avoid centralized entities • Avoid centralized algorithms • Perform most operations on client workstations ark 25

heterogeneity • Interconnected sets of dissimilar h/w or s/w systems. • Some form of

heterogeneity • Interconnected sets of dissimilar h/w or s/w systems. • Some form of data translation is necessary for interaction between incompatible nodes. • This s/w complexity is reduced by using intermediate standard data format. ark 26

security • More difficult in distributed systems than in centralized systems. • Needs 3

security • More difficult in distributed systems than in centralized systems. • Needs 3 requirements - sender should know that msg was received by receiver - receiver should know that msg was sent by valid sender - sender and receiver should be guaranteed about the confidentiality of msg • Cryptography , the practical method for dealing with security ark 27

Emulation • Newly designed OS be able to emulate existing popular systems such as

Emulation • Newly designed OS be able to emulate existing popular systems such as UNIX • New software can be written using system call interrupt of the new OS to take advantage of advanced features. • A vast amt of existing old s/w can also be run on the same system without rewriting them. ark 28

Distributed computing environment • It is defined by OSF(OPEN S/W FOUNDATION) • It is

Distributed computing environment • It is defined by OSF(OPEN S/W FOUNDATION) • It is neither an OS nor an application. • It is vendor independent integrated set of services and tools that can be installed on top of existing OS. • It serves as a platform for building and running distributed applications. DCE Applications DCE software OS and networking 29

DCE COMPONENTS • Threads Package(a simple programming model for concurrent apps) -creation and control

DCE COMPONENTS • Threads Package(a simple programming model for concurrent apps) -creation and control of multiple threads - sync access to global data within an app. • RPC facility -DCE RPC facility is the basis for all communication bcoz client-server programming model is used in DCE - RPC is n/w & protocol independent & easy to use - hides differences in data requirements by automatically handling data conversion. • DTS (distributed time service) -sync clocks of all computers in the system. - sync the clocks of the computers in the system with external time. ark -can be used to sync clocks of one DCE with clocks of 30

 • name service: -CDS(Cell directory service), GDS(global directory service) and GDA(Global directory agent).

• name service: -CDS(Cell directory service), GDS(global directory service) and GDA(Global directory agent). These -allow resources such as servers, files, devices etc to be uniquely named and accessed in location-transparent manner. • Security service provides tools for authentication and authorization to protect resources against illegal access. • DFS(distributed file service) provides a system wide file system that has characteristics such as location transparency, high performance and high availability ark 31

Interdependencies of DCE components Component name Threads Other components used by it None RPC

Interdependencies of DCE components Component name Threads Other components used by it None RPC Threads, name, security DTS Threads , RPC, name Threads, RPC, DTS, security Threads, RPC, DTS, name DFS Threads, RPC, DTS, name, Security 32

DCE CELLS • DCE is highly scalable (millions of users spread over a wide

DCE CELLS • DCE is highly scalable (millions of users spread over a wide geographic area) • To handle large system DCE uses concept of cells. • A cell is a group of users/machines that have a common purpose and share common services. • Each cell requires at least CDS, a security server, a DTS , one or more client m/cs, RPC facility, a thread facility. ark 33

Factors for cell boundaries • Purpose -m/cs working on common goal in one cell

Factors for cell boundaries • Purpose -m/cs working on common goal in one cell as need same set of resources -product oriented -function oriented • Administration -Each cell has a diff administrator • Security -m/cs of those users who have greater trust in each other should be put in same cell. ark 34

 • Overhead -users of mc/s that interact more with each other and resources

• Overhead -users of mc/s that interact more with each other and resources frequently accessed by them should be in same cell -DCE operations such as name resolution and user authentication becomes easy within cell rather than between cells. 35

Conclusion for cell design • Desirable to have few cells to minimize inter cell

Conclusion for cell design • Desirable to have few cells to minimize inter cell operations • Desirable to have smaller cells so that security and administration becomes easy • Hence proper balance requirement is needed 36