COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.

Slides:



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

© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
ECE 4450:427/527 - Computer Networks Spring 2015 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 8: Application Layer Dr. Nghi Tran.
The Internet Useful Definitions and Concepts About the Internet.
1 Java Networking – Part I CS , Spring 2008/9.
Layer 7- Application Layer
CP476 Internet Computing Browser and Web Server 1 Web Browsers A client software program that allows you to access and view Web pages on the Internet –Examples.
Boris Tshibangu. What is a proxy server? A proxy server is a server (a computer system or an application) that acts as an intermediary for requests from.
Electronic Mail (SMTP, POP, IMAP, MIME)
Process-to-Process Delivery:
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
IT 210 The Internet & World Wide Web introduction.
Computer Networks  Network - A system of computers interconnected in order to share information.  Data transmission - consists of sending and receiving.
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.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
Fall 2005 By: H. Veisi Computer networks course Olum-fonoon Babol Chapter 7 The Application Layer.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
TELE202 Lecture 16 Internet applications (1) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »Socket programming »Source: chapter 17 ¥This Lecture »Internet.
© 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.
1 Computer Networks DA Chapter 1-3 Introduction.
Web Page Design I Basic Computer Terms “How the Internet & the World Wide Web (www) Works”
Network Services Networking for Home & Small Business.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
Jozef Goetz, Application Layer PART VI Jozef Goetz, Position of application layer The application layer enables the user, whether human.
Chapter 1: The Internet and the WWW CIS 275—Web Application Development for Business I.
COT 4600 Operating Systems Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
20-753: Fundamentals of Web Programming 1 Lecture 1: Introduction Fundamentals of Web Programming Lecture 1: Introduction.
CGS 3763 Operating Systems Concepts Spring 2013 Dan C. Marinescu Office: HEC 304 Office hours: M-Wd 11: :30 AM.
COP 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
1 Welcome to CSC 301 Web Programming Charles Frank.
Application Layer Khondaker Abdullah-Al-Mamun Lecturer, CSE Instructor, CNAP AUST.
Application Block Diagram III. SOFTWARE PLATFORM Figure above shows a network protocol stack for a computer that connects to an Ethernet network and.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
Distributed Computing A Programmer’s Perspective.
COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Multimedia and Networks. Protocols (rules) Rules governing the exchange of data over networks Conceptually organized into stacked layers – Application-oriented.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Chapter 29 World Wide Web & Browsing World Wide Web (WWW) is a distributed hypermedia (hypertext & graphics) on-line repository of information that users.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
CSI 3125, Preliminaries, page 1 Networking. CSI 3125, Preliminaries, page 2 Networking A network represents interconnection of computers that is capable.
Computer Science Lecture 3, page 1 CS677: Distributed OS Last Class: Communication in Distributed Systems Structured or unstructured? Addressing? Blocking/non-blocking?
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 Fall 2009 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:00-4:00 PM.
Communications in Client-Server Systems the details…
COP 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
CSE541: Web Applications Special Thanks to M. Abdur Rahman.
IST 201 Chapter 11 Lecture 2. Ports Used by TCP & UDP Keep track of different types of transmissions crossing the network simultaneously. Combination.
COP 4600 Operating Systems Fall 2010 Dan C. Marinescu Office: HEC 439 B Office hours: Tu-Th 3:30-4:30 PM.
Networking for Home and Small Businesses – Chapter 6
#01 Client/Server Computing
CGS 3763 Operating Systems Concepts Spring 2013
Networking for Home and Small Businesses – Chapter 6
COT 5611 Operating Systems Design Principles Spring 2012
Process-to-Process Delivery:
CGS 3763 Operating Systems Concepts Spring 2013
COP 4600 Operating Systems Fall 2010
CGS 3763 Operating Systems Concepts Spring 2013
Remote Procedure Call (RPC) Neil Tang 11/26/2008
COP 5611 Operating Systems Spring 2010
CSE 451: Operating Systems Spring 2012 Module 22 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Networking for Home and Small Businesses – Chapter 6
Computer Networks Protocols
Last Class: Communication in Distributed Systems
#01 Client/Server Computing
Presentation transcript:

COT 4600 Operating Systems Spring 2011 Dan C. Marinescu Office: HEC 304 Office hours: Tu-Th 5:00 – 6:00 PM

Last time: URLs Soft modularity  Procedure call conventions and the memory map; the stack  Errors  Strongly-typed languages help enforce modularity. Enforced modularity; message passing and the client-server model.  Example of a client –server system: WWW Today:  Today  Client-server organization  Intermediaries; Trusted Intermediaries; Thin clients  Issues  Heterogeneity; little-endian and big-endian representation  Timing, response time.  Examples: Event service, X11; Trusted intermediaries: , File Systems, Web  Remote Procedure Call  Next time Strategies for name resolution Case study DNS Lecture 11 – Thursday, February 17, 2011 Lecture 112

3

4 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

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 115

6

7

8 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 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

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

10 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

11Lecture 11

12Lecture 11

13 Client server interactions in HTTP Lecture 11

14 RPC semantics At least once  the client stub resends a message up to a given number of times until it receives a message from the server; is no guarantee of a response  the server may end up executing the a request more than once  suitable for side-effect free operations At most once  a message is acted upon at most once.  If the timeout set for receiving the response expires then an error code is delivered to the client.  The server must keep a history of the time-stamps of all messages. Messages may arrive out of order…..  suitable for operations which have side effects Exactly once  implement the at most once and request an acknowledgment from the server. Lecture 11