112 Case of C/S Client/Server Security Client/Server on the Internet Distribute DBMS Distributed Programming Distributed Object-Oriented Computing Distribute.

Slides:



Advertisements
Similar presentations
1 Communication in Distributed Systems REKs adaptation of Tanenbaums Distributed Systems Chapter 2.
Advertisements

Database Architectures and the Web
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed System Architectures.
Remote Procedure Call (RPC)
Tam Vu Remote Procedure Call CISC 879 – Spring 03 Tam Vu March 06, 03.
Network Operating Systems Users are aware of multiplicity of machines. Access to resources of various machines is done explicitly by: –Logging into the.
Chapter 17: Client/Server Computing Business Data Communications, 4e.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Distributed Database Management Systems
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
Technologies for EC/EB Walt Scacchi FEMBA 290 Winter 2003.
Chapter 7: Client/Server Computing Business Data Communications, 5e.
Distributed Information Systems - The Client server model
The Architecture of Transaction Processing Systems
Chapter 9: The Client/Server Database Environment
Data Networking Fundamentals Unit 7 7/2/ Modified by: Brierley.
Client/Server Architecture
1 © Prentice Hall, 2002 The Client/Server Database Environment.
Centralized and Client/Server Architecture and Classification of DBMS
Lecture The Client/Server Database Environment
Client-Server Processing and Distributed Databases
Client/Server Computing. Information processing is distributed among several workstations and servers on a network, with each function being assigned.
The Client/Server Database Environment
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
1 The SpaceWire Internet Tunnel and the Advantages It Provides For Spacecraft Integration Stuart Mills, Steve Parkes Space Technology Centre University.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Week 7 Lecture Web Database Development Samuel Conn, Asst. Professor
Lecture On Database Analysis and Design By- Jesmin Akhter Lecturer, IIT, Jahangirnagar University.
Networked File System CS Introduction to Operating Systems.
Middleware-Based OS Distributed OS Networked OS 1MEIT Application Distributed Operating System Services Application Network OS.
1 © Prentice Hall, 2002 Chapter 8: The Client/Server Database Environment Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
MBA 664 Database Management Systems Dave Salisbury ( )
Database Architectures and the Web Session 5
Protocol Architectures. Simple Protocol Architecture Not an actual architecture, but a model for how they work Similar to “pseudocode,” used for teaching.
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
© 2005 by Prentice Hall 1 Chapter 9: The Client/Server Database Environment Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
Lecture 15 Introduction to Web Services Web Service Applications.
DCE (distributed computing environment) DCE (distributed computing environment)
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Hour 7 The Application Layer 1. What Is the Application Layer? The Application layer is the top layer in TCP/IP's protocol suite Some of the components.
Week 5 Lecture Distributed Database Management Systems Samuel ConnSamuel Conn, Asst Professor Suggestions for using the Lecture Slides.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Mainframe (Host) - Communications - User Interface - Business Logic - DBMS - Operating System - Storage (DB Files) Terminal (Display/Keyboard) Terminal.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Database Architectures Database System Architectures Considerations – Data storage: Where do the data and DBMS reside? – Processing: Where.
Lecture 22: Client-Server Software Engineering
Chapter 17: Client/Server Computing Business Data Communications, 4e.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved RPC Tanenbaum.
Distributed DBMSs- Concept and Design Jing Luo CS 157B Dr. Lee Fall, 2003.
CORBA1 Distributed Software Systems Any software system can be physically distributed By distributed coupling we get the following:  Improved performance.
WINDOWS NT Network Architecture Amy, Mei-Hsuan Lu CML/CSIE/NTU August 19, 1998.
I NTRODUCTION TO N ETWORK A DMINISTRATION. W HAT IS A N ETWORK ? A network is a group of computers connected to each other to share information. Networks.
Lecture 4 Page 1 CS 111 Online Modularity and Virtualization CS 111 On-Line MS Program Operating Systems Peter Reiher.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
Distributed Systems Ryan Chris Van Kevin. Kinds of Systems Distributed Operating System –Offers Transparent View of Network –Controls multiprocessors.
Em Spatiotemporal Database Laboratory Pusan National University File Processing : Database Management System Architecture 2004, Spring Pusan National University.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 9: The Client/Server Database Environment Modern Database Management 9 th Edition.
Successfully Implementing The Information System Systems Analysis and Design Kendall and Kendall Fifth Edition.
Chapter 9: The Client/Server Database Environment
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
#01 Client/Server Computing
Chapter 3: Windows7 Part 4.
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Client/Server Computing
#01 Client/Server Computing
Presentation transcript:

112 Case of C/S Client/Server Security Client/Server on the Internet Distribute DBMS Distributed Programming Distributed Object-Oriented Computing Distribute File system Data Replication

113 Client/Server Security (1) What are the security services? –Authentication Is the client (or server) who it claims to be? Passwords are the starting point for authentication Guards against client spoofing attacks example: telnet and ftp –/etc/passwd –/etc/group –Authorization What services is the client authorized to access? Example: anonymous ftp –based on Access Control Lists: similar UNIX file systems

114 Client/Server Security (2) –Data Integrity How does the client (server) know that the message was not modified? –Refers to write protection Data privacy –Defense to ensure data integrity Data modification due to hardware failure –easily detected based on CRC –Privacy How do you prevent hackers from reading your messages? Start with encryption »Data Encryption Standard »Pretty Good Privacy: public key

115 Client/Server on the Internet Internet is the World’s largest client.server system –The Internet is more than just UNIX systems –all you need is TCP/IP Security on the Internet –Many Internet applications offer security mechanisms –A Firewall can secure an entire Internet site Router node includes Firewall Software Client/Server applications on the Internet –ftp, archie, gopher, telnet, WWW

116 Implementation: WWW WWW is a multimedia client/server system WWW did not require a standard body WWW software is free, but you can pay if you want to Server Side –Server sites must provide a server program, config files, a home page, and the data to be served. –Home page offer pictures, motion, and sound Client Side –needs a browsers get all the data before displaying anything

117 Distributed DBMS (1) Distributed database system can integrate the desktop and the data center What is distributed in a distributed DBMS? –Database access us at a higher level than file access, but the advantages if distribution are the same –The actual data storage and DB queries ae performed by servers –The clients make the requests and process and present the responses Reasons of the Client/Server Model –Most large DBs need to be accessed by multiple users –Information returned by DBs often needs to be integrated into other applications PC need to integrated DB information into desktop applications DDBMS have all the client/server requirements. RPC are a good implementation mechanism

118 Distributed DBMS (2) DBMS server for C/S –Servers use the local file system or access the disk directly –Servers can also access remote files –Servers can be replicated Role of DBMS –Relational DBMSs are the most popular BLOB (Binary Larage Object) OOBMS, ORDBMS –The client and server both know the DB schema –SQL is the standard access languages –Clients can use IPCs or RPCs to talk to a remote DBMS server

119 Distributed DBMS (3) DBMS Server HW and SW –DB servers run on a wide range of systems, including PCs –Servers will exploit advances in system performance and scale –Distribution of management tasks DB Facelifting –Facelifting upadtes tired applications with shiny new GUIs –Facelifting is simple but is not complete integration Integration into Client Application –How can client applications build in transpenet vendor-independent DB access location transparency OPI (Open Programming Interface) ODBC (Open Database Connectivity)

120 Distributed DBMS (4) The Role of ODBC –ODBC allows client integration and DBMS vendors provide drivers. ODBC requires a client driver for every DB server type –But, you need a separate driver for each server type –Spreadsheet integration as an ODBC example many PC applications are now integrated with ODBC exampel: MS Excel integrates ODBC –Client application uses ODBC to access the DB Transactions –DBMS applications require transactional integrity –Distribute Transaction Processing Encina, Tuxedo, X/Open defines application, transaction managers, resource managers, and communication managers

121 Distributed DBMS (5) Distributed Framework Requirement –ODBC uses the services of an underlying framework for naming and security ODBC/SQL inherit the features of the underlying framework. TCP/IP and Netware’s SPX/IPX are common communication mechainsms

122 Distributed Programming (1) Categorizing Procedure Calls –Local procedure call (LPC) –Inter-process communication messages (IPC) –Remote procedure call (RPC) –Local procedures are linked together in the same address space –IPCs within a system or between network nodes Normally the processes run asynchronously

123 Distributed Programming (2) Local Programming vs. Distributed Programming –Programs are organized into procedures –RPC programming is intentionally similar to LPC programming Three level procedure modules –Main module –User Interface module –FindPrimes module What are the differences between local and remote procedures? –The remote procedures will run as separate processes in separate address space

124 Distributed Programming (3) Flow Control –The middleware works hard in a RPC-based application –Local procedures are linked at build or run-time –In distributed program, the client must locate and bind to the server a caller (the client) finds the called procedure (the server) : binding

125 Distributed Programming (4) Passing Parameters and Returning Values –Costs of Passing Parameters and Returning Values Local procedures can use addresses in the common memory: via stack Remote procedures need all the data directly –the client and server must pass parameters and return values via network –Passing Pointers In an LPC, the caller can pass a pointer as a parameter In an RPC, the caller cannot pass a pointer to the remote procedure –the entire array must be passed to the server –Data Representations The client and server may represent data differently In generic representation, all passed data must be converted to a standard format In receiver make-it-right, the receiver of the passed data must convert the data

126 Distributed Programming (5) Errors and exceptions –Client should be prepared to deal with procedure failures N-version, Recovery Block Exception routine, Compensating routine Holding State –Client must know whether a server is stateless or stateful –stateless: at least once Correct operation requires one or more server executions Error recovery is easier with stateless procedures –stateful: at most one The server RPC run-time must ensure that the procedure is performed exactly one time or not at all The run-time SW ensures that stateful procedures are not executed twice –ONC supports stateless procedures; DCE supports both type

127 Distributed Programming (6) Distributed Application –Data transmission and RPC overhead are expensive –Computation time frequently increases faster than the amount of data –Get rid of global variables –Data shipping and Function shipping You can move the data to the function or the function to the data RPC and IPC –RPCs are layered on IPCs RPC API IPC API Transport Layer API –IPCs are still appropriate for many applications –RPCs distribute the familar procedure programming model Programming with an RPC Package –exampel: CORBA

128 Groupware System Integrated Information system –Intranet based on Client/Server model –Four Components DBMS Firewall MIS Network Client/Server model is information infrastructure MIS is application for groupware system