 Distributed Software Chapter 18 - Distributed Software1.

Slides:



Advertisements
Similar presentations
RPC Robert Grimm New York University Remote Procedure Calls.
Advertisements

Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Application Layer – Lecture.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Lesson 20 – OTHER WINDOWS 2000 SERVER SERVICES. DHCP server DNS RAS and RRAS Internet Information Server Cluster services Windows terminal services OVERVIEW.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
2 Systems Architecture, Fifth Edition Chapter Goals Describe client/server and multi-tier application architecture and discuss their advantages compared.
1 Web Content Delivery Reading: Section and COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Ioannis Avramopoulos Instructor:
Client/Server Architecture
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
Client/Server Architectures
Microsoft Windows 2003 Server. Client/Server Environment Many client computers connect to a server.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 7: Using Windows Servers to Share Information.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
Chapter 10 Intro to Routing & Switching.  Upon completion of this chapter, you should be able to:  Explain how the functions of the application layer,
Web Mastering Module Internet Fundamentals. What is the Internet? –Global network of networks –Communicating using same set of rules (protocols/languages)
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.1 ISP Services Working at a Small-to-Medium Business or ISP – Chapter 7.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Network Services Networking for Home and Small Businesses – Chapter.
Application Layer CHAPTER 2. Announcements and Outline  Administrative Items  Questions? Recap 1.Introduction to Networks 1.Network Type 2.N etwork.
1 Introduction to Networking Dr. Mahdi Nasereddin PPU.
Microsoft Active Directory(AD) A presentation by Robert, Jasmine, Val and Scott IMT546 December 11, 2004.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols.
CH2 System models.
Web Page Design I Basic Computer Terms “How the Internet & the World Wide Web (www) Works”
What makes a network good? Ch 2.1: Principles of Network Apps 2: Application Layer1.
COMP1321 Digital Infrastructure Richard Henson February 2014.
2: Application Layer 1 Chapter 2: Application layer r 2.1 Principles of network applications r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail  SMTP,
Slide 1 Physical Architecture Layer Design Chapter 13.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Client – Server Architecture. Client Server Architecture A network architecture in which each computer or process on the network is either a client or.
1 Welcome to CSC 301 Web Programming Charles Frank.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
A.Obaid - Wilfried Probst - Rufin Soh INE4481 DISTRIBUTED DATABASES & CLIENT-SERVER ARCHITECTURES1 Chapter 1. Distributed systems: Definitions, design.
Application Layer Khondaker Abdullah-Al-Mamun Lecturer, CSE Instructor, CNAP AUST.
Lecture 22: Client-Server Software Engineering
NETWORK HARDWARE AND SOFTWARE MR ROSS UNIT 3 IT APPLICATIONS.
Application Layer Honolulu Community College Cisco Academy Training Center Semester 1 Version
Internet Architecture and Governance
CCNA4 v3 Module 6 v3 CCNA 4 Module 6 JEOPARDY K. Martin.
ITGS Network Architecture. ITGS Network architecture –The way computers are logically organized on a network, and the role each takes. Client/server network.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Enterprise Network Systems Client/ Server Mark Clements.
MCSE Guide to Microsoft Exchange Server 2003 Administration Chapter One Introduction to Exchange Server 2003.
Client – Server Architecture A Basic Introduction 1.
COMP1321 Digital Infrastructure Richard Henson March 2016.
Networking Week #10 OBJECTIVES Chapter #6 Questions Review Chapter #8.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Internet and Distributed Application Services
Instructor Materials Chapter 5 Providing Network Services
Principles of Network Applications
3.1 Types of Servers.
CSC 480 Software Engineering
System Architecture & Hardware Configurations
CHAPTER 3 Architectures for Distributed Systems
CHAPTER 2 Application Layer.
Working at a Small-to-Medium Business or ISP – Chapter 7
#01 Client/Server Computing
Chapter 3: Windows7 Part 4.
Working at a Small-to-Medium Business or ISP – Chapter 7
Working at a Small-to-Medium Business or ISP – Chapter 7
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Internet Protocols IP: Internet Protocol
Windows Server Administration Fundamentals
Distributed Systems Bina Ramamurthy 4/22/2019 B.Ramamurthy.
Computer Networks Protocols
#01 Client/Server Computing
Presentation transcript:

 Distributed Software Chapter 18 - Distributed Software1

Why Distributed Solutions?  Resource sharing  Processor, disk, printer  Resource Utilization – off hours CPU usage  Performance – multiple processor usage  Availability – widespread locations  Scalability – “out not up”  Fault tolerance – depends on implementation Chapter 18 - Distributed Software2

Challenges  Transparancy  Openness (use of standard protocols)  Security  Scalability  Quality of Service  Dependence on network bandwidth  Key issue for streaming media  Failure Management  Detection of failure  Redirection of service Chapter 18 - Distributed Software3

Security  Threats  Interception  Interrumption  Modification  Fabrication  Difficulty  Managing a policy over all components Chapter 18 - Distributed Software4

Model of Interaction Remote Procedure Call  RPC (Remote Procedure Call)  Client:  Calling program calls a stub for the function,  e.g. ComputeArea(width,height, area)  Stub packs request, parameters into data packet (marshalling) and sends to server  Server  Receives request, separates the data (unmarshalling), calls function with parameters  Packs resulting values, sends response to client system  Client  Stub receives response, unpacks data  Returns values to calling code  Example  CAD system Chapter 18 - Distributed Software5

Models of Interaction Messages  Messages  Not based on a stub waiting for a response.  HTTP  Client sends a “GET” message with multiple lines of parameters to server  Server sends data (web page to client)  Client sends “GET” messages to server to get images  Server sends responses to client  Author’s example - waiter to staff  Uses a standard format – XML (p 486) Chapter 18 - Distributed Software6

RPC vs Messages  RPC  Client calls functions that appear local  Functions developed at other end  Stubs at both ends make this appear seamless  Messages  Each component (client or server) must:  Formulate and send messages  Interpret the messages from other components Chapter 18 - Distributed Software7

Client-Server Where do you use it?  Browser – Web Server – provides web pages  Local system – DHCP server – Get IP address  Local System – DNS server – Translate web names ( to IP address ( )  Local System – Time Server – get current time  – SMTP Server – sends  – POP Server – receives Chapter 18 - Distributed Software8

Client-Server Where do you use it?  Local Application – DB server – read/write database  Local Application – File server – read/write files  Skype – Skype server – Connect to other user  FTP – FTP Server – store, retrieve files on server  I Tunes – Itunes Server – get audio, video, podcasts  Music Plugin – Media server – Streaming media (audio, video)  Log in to domain – Domain Server - authentication Chapter 18 - Distributed Software9

Distributed Architecture Patterns  Master- Slave  2 tier  Multi-Tier  Distributed  Peer-Peer Chapter 18 - Distributed Software10

Master-Slave  Intent – control  Master – drives all activities  Slave – responds to master Chapter 18 - Distributed Software11

(Master – Slave)  Examples  SCADA – Supervisory Control and Acquisition  Gas Piping Network  Power Plant  Power Grid  Chemical Plant  Network Management  SNMP – Simple Network Management Protocol Chapter 18 - Distributed Software12

2-Tier  Thin Client  Characteristics  Client software largely for display, interaction  Business processing done at server  Utilizes server resources, allows for slower, more limited clients  Client software seldom needs updates  Updating software on server makes upgrades easy  Examples  Web Browser (with server side scripting)  Citrix Server Chapter 18 - Distributed Software13

(2-Tier)  Fat client  Characteristics  Most processing occurs on client  Relies on server for data storage  Relies on power of client, offloads server  Updating the client software may require more work  Examples  Web broswer (pages implemented with JavaScript)  Custom applications accessing a database Chapter 18 - Distributed Software14

Multi-Tier  More and more common  2 Tier architecture does not have enough capability  Common  Client (Web Browser)  Server (Web Server)  Database (Database server)  Could be more  Web server could access a program that in turn accesses a database Chapter 18 - Distributed Software15

Distributed Architectures  Characteristics  Multiple systems cooperate to provide services  Not layered  Expandable by adding new nodes  Middleware that acts as a communicator Chapter 18 - Distributed Software16

Distributed Architectures  Examples  DNS – Domain Name system  Provides mapping of domain names (google.com) to IP ( )  Different servers responsible for partitions of the global namespace  Replication of data allows separate servers to provide the same information  Response to a request may involve several servers  The DNS system manages itself as a distributed architectures. Clients access one of the servers as a server  Often referred to as a “hierarchical distributed database” Chapter 18 - Distributed Software17

(Distributed Architectures)  Examples  Routers  Every PC on a network is configured to find addresses via the router (default gateway)  Configured to know how to find any IP address on the Internet  Configured to be responsible for some range of IP addresses  Communicates through routing protocols to other routers  Routing protocols configure neighboring routers  Database replication  Databases can be live backups of a database Chapter 18 - Distributed Software18

Distributed Systems  Disadvantages  Complex to design  No common middleware to help coordinate systems  Corba, JavaBeans,.net Chapter 18 - Distributed Software19

Peer-Peer Architecture  No server is in control – systems talk to each other  Generally for small, local networks  General areas:  Computationally intense, but distributable tasks  Local information sharing Chapter 18 - Distributed Software20

Peer-Peer Architecture  WINS - Window Internet Naming System  Microsoft naming system for small networks  Individual systems contact peers to discover system names  VOIP – Voice Over IP  Skype, Vonage, Cisco phone systems.  Systems access a server to set up a call  Server keeps list of participating systems  Ongoing communication is directly between two peers. Chapter 18 - Distributed Software21

Software as a Service  Characteristics  User does not buy software license  Software not installed on the user’s system  User subscribes to use the service over the Internet  Generally delivered on web pages and accessed via a browser  Can be based on other servers and clients (Citrix, Microsoft)  Server stores data for the user Chapter 18 - Distributed Software22

Software as a Service Examples  Voter Targeting  Google Apps  Gmail  Google Docs  Calendar  Ancestry.com Chapter 18 - Distributed Software23

Software as a Service  Advantages  Installation is not needed.  Setup is minimal  Updating software only needs to be done on the server  Users do not have to manage backups Chapter 18 - Distributed Software24

Software as a Service  Challenges  Performance with many users on a server  Problems can escalate with many users on system  Separation of data  Security  Scalability  Configuration per user  No custom software per user  Backup Chapter 18 - Distributed Software25