CGS 3763 Operating Systems Concepts Spring 2013

Slides:



Advertisements
Similar presentations
Categories of I/O Devices
Advertisements

CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols Network Fundamentals – Chapter.
CSIT 320 (Blum)1 Client-Server Interaction Based on Appendix 1 in Computer Networks and Internets, Comer.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
© 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.
CH2 System models.
1 Computer Networks DA Chapter 1-3 Introduction.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
X-WindowsP.K.K.Thambi The X Window System Module 5.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
Renesas Electronics America Inc. © 2010 Renesas Electronics America Inc. All rights reserved. Overview of Ethernet Networking A Rev /31/2011.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
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.
Operating System & Application Software
Last Class: Introduction
Instructor Materials Chapter 10: Application Layer
System Architecture & Hardware Configurations
Computer Roles in a Network
Chap. 2 Network Models.
Processes and Threads Processes and their scheduling
Principles of Network Applications
Layered Architectures
System Architecture & Hardware Configurations
Networking for Home and Small Businesses – Chapter 6
CHAPTER 3 Architectures for Distributed Systems
CHAPTER 2 Application Layer.
Understanding the OSI Reference Model
TYPES OFF OPERATING SYSTEM
Chapter 10: Application Layer
#01 Client/Server Computing
Client-Server Interaction
CGS 3763 Operating Systems Concepts Spring 2013
Networking for Home and Small Businesses – Chapter 6
Computer Communication & Networks
An Introduction to Computer Networking
Application layer Lecture 7.
CGS 3763 Operating Systems Concepts Spring 2013
Chapter 2: System Structures
COT 5611 Operating Systems Design Principles Spring 2012
Outline Midterm results summary Distributed file systems – continued
Process-to-Process Delivery:
CGS 3763 Operating Systems Concepts Spring 2013
CGS 3763 Operating Systems Concepts Spring 2013
Multiple Processor Systems
CGS 3763 Operating Systems Concepts Spring 2013
Software models - Software Architecture Design Patterns
Chapter 15 – Part 2 Networks The Internal Operating System
Lecture 2: Overview of TCP/IP protocol
HTTP and Abstraction on the Internet / The Need for DNS
COP 5611 Operating Systems Spring 2010
Prof. Leonardo Mostarda University of Camerino
Introduction to Networking & TCP/IP
ECE 4450:427/527 - Computer Networks Spring 2017
Networking for Home and Small Businesses – Chapter 6
Database System Architectures
Computer Networks DA2402.
Computer Networks Protocols
#01 Client/Server Computing
Message Passing Systems
Presentation transcript:

CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11:30 - 12:30 AM

Lecture 9 – Monday, January 28, 2013 Last time: Today: Client-Server Next time 9/19/2018

Lecture 11

Client/service organization Not only separates functions but also enforces this separation!! No globally-shared state (e.g., through the stack) Errors can only propagate from client to service and vice-versa only if the messages are not properly checked. A client can use time-outs to detect a non-responsive service and take another course of action. The separation of abstraction from implementation is clearer; the client needs only to know the format of the message, the implementation of the service may change. Lecture 11

Intermediaries What if the sender and the receiver of a message are not active at the same time? Intermediaries support buffered communication and allow more flexibility the intermediary may decide how to sort messages The sender and the receiver may: Push a message Pull a message Example: the mail service: The sender pushes a message into his/her outbox The outbox pushes it to the inbox of the recipient The recipient pulls it whenever s(he) wants The publish/subscribe paradigm  the sender notifies an event service when it produced a message. Recipients subscribe to the events and when the events occur the messages are delivered Lecture 11 5

Trusted intermediary Trusted service acting as an intermediary among multiple clients. Enforces modularity  a fault of one client does not affect other clients. Examples: File systems Mail systems Supports thin-clients  a significant part of client functionality is transferred to the intermediary. In a thin client/server system, the only software installed on the thin client is the user interface, certain frequently used applications, and a networked operating system. By simplifying the load on the thin client, it can be a very small, low-powered device giving lower costs to purchase and to operate per seat. The server, or a cluster of servers has the full weight of all the applications, services, and data. By keeping a few servers busy and many thin clients lightly loaded, users can expect easier system management and lower costs, as well as all the advantages of networked computing: central storage/backup and easier security. Because the thin client is relatively passive and low-maintenance, but numerous, the entire system is simpler and easier to install and to operate. As the cost of hardware plunges and the cost of employing a technician, buying energy, and disposing of waste rises, the advantages of thin clients grow. From the user's perspective, the interaction with monitor, keyboard, and cursor changes little from using a thick client. Lecture 11

Heterogeneity The client and the service may run on systems with different: internal data representation, e.g., big versus little endian processor architecture, e.g., 32 bit /64 bit addressing operating systems, e.g., version of Linux, Mac OS, etc. libraries Multiple clients and services provided/available on systems with different characteristics : the same service may be provided by multiple systems; a service may in turn user services available on other systems; the same client may use multiple services. Marshaling/unmarshaling  conversion of the information in a message into a canonical representation and back Lecture 11

Little endian and big endian Lecture 11

Timing; response time The client and the service are connected via communication channel. The response time is a function of the latency and the bandwidth of the communication channel. Distinguish between service time communication time Synchronous call  the client blocks waiting for the response. Easier to manage. Asynchronous calls  the client does not block. Multi-threading and asynchronous calls. Message buffering in kernel space (to allow clients to make asynchronous calls) in user space (before sending) Lecture 11

Examples of client-server systems Event service X-windows Electronic mail as a trusted intermediary Files systems as trusted intermediaries The Word Wide Web The Domain Name System Lecture 11

Lecture 11

Lecture 11

Example: the X-windows (X11) X11   software system and network protocol that provides a GUI for networked computer. Developed as part of Project Athena at MIT in 1984. Separates the service program  manipulates the display from the client program  uses the display. An application running on one machine can access the display on a different computer. Clients operate asynchronously, multiple requests can be sent  the display rate could be much higher than the rate between the client and the server. Lecture 11

Editor is a client of File service which is a client of Block-storage service File service is a trusted intermediary. Lecture 11

A client-service system  the World Wide Web The information in each page is encoded and formatted according to some standard, e.g. images: GIF, JPEG, video: MPEG audio: MP3 The web is based upon a “pull” paradigm. The server has the resources and the client pulls it from the server. The Web server also called an HTTP server listens at a well known port, port 80 for connections from clients. The HTTP protocol uses TCP to establish a connection between the client and the server. Some pages are created on the “fly” other have to be fetched from the disk. Lecture 11

Lecture 11

Lecture 11

Client server interactions in HTTP Lecture 11

Peer-to-peer systems Decentralized architecture without a trusted intermediary. Peers are both suppliers and consumers of resources, in contrast to the traditional client-server model where servers supply, and clients consume. Peer-to-peer systems often implement an Application Layer overlay network on top of the native or physical network topology. Such overlays are used for indexing and peer discovery. Content is typically exchanged directly over the underlying IP network.  Anonymous peer-to-peer systems implement extra routing layers to obscure the identity of the source or destination of queries. In structured peer-to-peer networks, connections in the overlay are fixed. They typically use distributed hash table-based (DHT) indexing, such as in the Chord system developed at MIT Unstructured peer-to-peer networks do not provide any algorithm for organization or optimization of network connections. Advantages use of spare resources at many sites difficult to censor content Disadvantage Finding information in a large peer-to-peer network is hard. Lecture 11 19