cs4513
play

CS4513 Goals Software Distributed Computer Client Server Systems - PDF document

Outline Overview CS4513 Goals Software Distributed Computer Client Server Systems Introduction Definition of a Distributed System The Rise of Distributed Systems Computer hardware prices falling, power increasing Examples:


  1. Outline • Overview CS4513 • Goals • Software Distributed Computer • Client Server Systems Introduction Definition of a Distributed System The Rise of Distributed Systems • Computer hardware prices falling, power increasing Examples: – If cars the same, Rolls Royce would cost 1 dollar and -The Web get 1 billion miles per gallon (with 200 page manual to -Processor Pool open the door) -Airline • Network connectivity increasing Reservation – Everyone is connected with fat pipes • It is easy to connect hardware together • Definition: a distributed system is A distributed system organized as middleware. – A collection of independent computers that appears Note that the middleware layer extends over multiple machines. to its users as a single coherent system. Users can interact with the system in a consistent way, regardless of where the interaction takes place. Note: Middleware may be “part” of application in practice. Transparency in a Distributed System Scalability Problems • As distributed systems grow, centralized solutions Transparency Description are limited Hide differences in data representation and how a resource is Access accessed – Consider LAN name resolution vs. WAN Location Hide where a resource is located Concept Example Migration Hide that a resource may move to another location Centralized services A single server for all users Hide that a resource may be moved to another location while Relocation in use Centralized data A single on-line telephone book Hide that a resource may be shared by several competitive Replication users Doing routing based on complete Centralized algorithms information Hide that a resource may be shared by several competitive Concurrency users • Sometimes, hard to avoid (consider a bank) Failure Hide the failure and recovery of a resource • Need to collect information in distributed fashion Persistence Hide whether a (software) resource is in memory or on disk and distributed in a distributed fashion • Challenges: Different forms of transparency in a distributed system. – geography, ownership domains, time synchronization 1

  2. Scaling Techniques: Hiding Scaling Techniques: Distribution Communication Latency • Especially important for interactive applications • If possible, do asynchronous communication - Not always possible when client has nothing to do 1.5 Example: DNS name space into zones ( nl.vu.cs.fluit – z1 gives address of vu gives address of cs) • Instead, can hide latencies Scaling Techniques: Replication Outline • Copy of information to increase availability • Overview (done) and decrease centralized load • Goals – Example: P2P networks (Gnutella +) (done) distribute copies uniformly or in proportion • Software ← to use • Client Server – Example: CDNs (akamai) – Example: Caching is a replication decision made by client • Issue: Consistency of replicated information – Example: Web Browser cache Uniprocessor Operating Systems Software Concepts System Description Main Goal Tightly-coupled operating system for multi- Hide and manage DOS processors and homogeneous multicomputers hardware resources Loosely-coupled operating system for Offer local services NOS heterogeneous multicomputers (LAN and to remote clients WAN) Additional layer atop of NOS implementing Provide distribution Middleware general-purpose services transparency • DOS (Distributed Operating Systems) • NOS (Network Operating Systems) • Separating applications from operating • Middleware system code through a microkernel – Can extend to multiple computers 2

  3. Distributed Operating Systems Network Operating System • OSes can be different (Windows or Linux) • But no longer have shared memory • Typical services: rlogin, rcp – Provide message passing – Can try to provide distributed shared memory – Fairly primitive way to share files • But tough to get acceptable performance Network Operating System Network Operating System • Can have one computer provide files transparently • Different clients may mount the servers in different places for others (NFS) • Inconsistencies in view make NOSes harder, in general for – (try a “ df” on the WPI hosts to see. Similar to a “mount network drive” in Windows) users than DOSes. – But easier to scale by adding computers Positioning Middleware Outline • Network OS not transparent. Distributed OS not independent of computers. • Overview – Middleware can help (done) • Goals (done) • Software (done) • Client Server ← • Much middleware built in-house to help use networked operating systems (distributed transactions, better comm, RPC) • Unfortunately, many different standards 3

  4. Client-Server Implementation Levels Clients and Servers • Thus far, have not talked about organization of processes – Again, many choices but most agree upon is client-server • If can do so without connection, quite simple • If underlying connection is unreliable, not trivial • Example of an Internet search engine • Resend. What if receive twice? – UI on client • Use TCP for reliable connection (most Inet apps) – Processing can be on client or server • Not always appropriate for high-speed LAN connection or – Data level is server, keeps consistency interactive applications Multitiered Architectures Multitiered Architectures: 3 tiers • Server may act as a client • Thin client (a) to Fat client (e) – Example would be transaction monitor across multiple databases – (d) and (e) popular for NOS environments Modern Architectures: Horizontal • Rather than vertical, distribute servers across nodes – Example of Web server “farm” for load balancing – Clients, too (peer-to-peer systems) 4

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend