CSE 542: Operating Systems

Slides:



Advertisements
Similar presentations
End-to-End Arguments in System Design
Advertisements

Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
End-to-End Arguments in System Design J.H. Saltzer, D.P. Reed and D.D Clark M.I.T. Laboratory for Computer Science Presented by Jimmy Pierce.
Networking Theory (part 2). Internet Architecture The Internet is a worldwide collection of smaller networks that share a common suite of communication.
G Robert Grimm New York University Pulling Back: How to Go about Your Own System Project?
End-To-End Arguments in System Design J.H. Saltzer, D.P. Reed, and D. Clark Presented by: Ryan Huebsch CS294-4 P2P Systems – 9/29/03.
EE 122: Layering and the Internet Architecture Kevin Lai September 4, 2002.
G Robert Grimm New York University Pulling Back: How to Go about Your Own System Project?
William Stallings Data and Computer Communications 7 th Edition Chapter 2 Protocols and Architecture.
COE 342: Data & Computer Communications (T042) Dr. Marwan Abu-Amara Chapter 2: Protocols and Architecture.
Gursharan Singh Tatla Transport Layer 16-May
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
Protocols and the TCP/IP Suite Chapter 4. Multilayer communication. A series of layers, each built upon the one below it. The purpose of each layer is.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
J.H.Saltzer, D.P.Reed, C.C.Clark End-to-End Arguments in System Design Reading Group 19/11/03 Torsten Ackemann.
Feb 20, 2001CSCI {4,6}900: Ubiquitous Computing1 Announcements.
Presentation on Osi & TCP/IP MODEL
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Protocol Layering Chapter 10. Looked at: Architectural foundations of internetworking Architectural foundations of internetworking Forwarding of datagrams.
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Mukesh N. Tekwani Elphinstone College Mumbai
TCP/IP PROTOCOL SUITE The TCPIIP protocol suite was developed prior to the OSI model. Therefore, the layers in the TCP/IP protocol suite do not exactly.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
TCP/IP Transport and Application (Topic 6)
Chapter 2 Protocols and the TCP/IP Suite 1 Chapter 2 Protocols and the TCP/IP Suite.
BZUPAGES.COM Presentation on TCP/IP Presented to: Sir Taimoor Presented by: Jamila BB Roll no Nudrat Rehman Roll no
End-To-End Arguments in System Design J.H. Saltzer, D.P. Reed, and D. Clark Presented by: Amit Mondal.
END-TO-END ARGUMENTS IN SYSTEM DESIGN J.H. Salter, D.P. Reed and D.D. Clark Presented by Sui-Yu Wang.
End-to-End Principle Brad Karp UCL Computer Science CS 6007/GC15/GA07 25 th February, 2009.
IT 210: Web-based IT Fall 2012 Lecture: Network Basics, OSI, & Internet Architecture.
END-TO-END Arguments in System Design END-TO-END Arguments in System Design J. SaltzerD. Reed D. Clark M.I.T. Laboratory, 1981 Presented By Mohammad Malli.
Enterprise Network Systems TCP Mark Clements. 3 March 2008ENS 2 Last Week – Client/ Server Cost effective way of providing more computing power High specs.
End-to-End Arguments in System Design CSCI 634, Fall 2010.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
CS533 - Concepts of Operating Systems End-to-End Arguments in System Design Presentation by David Florey.
Computer Networking A Top-Down Approach Featuring the Internet Introduction Jaypee Institute of Information Technology.
BASICS Gabriella Paolini (GARR) 27/05/11 - ICCU Roma 1 How INTERNET works !
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
Chapter 7: Transport Layer
Introduction to: The Architecture of the Internet
Chapter 11 User Datagram Protocol
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Computer Networks.
Managing Secure Network Systems
Presented by Muhammad Abu Saqer
Layered Architectures
Distributed Systems (Section B)
Using MIS 2e Chapter 6 Appendix
Chapter 14 User Datagram Program (UDP)
Network Architecture Introductory material
Subject Name: Computer Communication Networks Subject Code: 10EC71
Packet Sniffing.
Transport Layer Our goals:
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Review of Important Networking Concepts
Introduction to: The Architecture of the Internet
Multimedia and Networks
Introduction to: The Architecture of the Internet
Lecture 4 Communication Network Protocols
Request for comment (RFC) (started in 1969)
Networking Theory (part 2)
1 TRANSMISSION CONTROL PROTOCOL / INTERNET PROTOCOL (TCP/IP) K. PALANIVEL Systems Analyst, Computer Centre Pondicherry University, Puducherry –
Introduction to: The Architecture of the Internet
Computer Networks Topic :User datagram protocol Transmission Control Protocol -Hemashree S( )
Computer Networking A Top-Down Approach Featuring the Internet
CSE 542: Operating Systems
Announcements You need to register separately for the class mailing list and online paper review system. Do it now so that we can work out any “bugs”.
Networking Theory (part 2)
Presentation transcript:

CSE 542: Operating Systems OS Design Issues Hints for Computer System Design - Butler Lampson End-to-end arguments in system design Brittle metrics in operating systems research 25-May-19 CSE 542: Operating Systems

Hints for Computer System Design Functionality KISS (Keep it simple) If in doubt, leave it out Exterminate features Get it right Keep basic interfaves stable Don’t hide power with abstractions Continuity: MS achilles heal 25-May-19 CSE 542: Operating Systems

Making implementations work Plan to thrown away Keep secrets of the communica topk Divide and conquer Reuse a good rerv Fault tolerance - e2e argument 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems E2E End-to-End Arguments in System Design – J. H. Saltzer, D. P. Reed and D. D. Clark – MIT (1980) Jerome Saltzer – Multics David Reed – Visicalc, Lotus 1-2-3, TCP/IP David Clark – Multics, Internet Recent followup article: http://web.mit.edu/Saltzer/www/publications/endtoend/ANe2ecomment.html KISS principle (Keep It Simple, Stupid) 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems Modular vs End-to-End Modular: Design, well designed modules, each of which performs a task completely E.g. networking 7 layer OSI model End-to-end: Some tasks a better left to higher layers Keep the lower layers simple, perform error checking and other operations at lower layers if it is simple. Higher layers will duplicate this functionality anyway E.g. Internet (only supports IP datagrams) 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems How does it matter? Internet: When ARPANET (->DARPANET->INTERNET) was being designed, there was a tension between adding intelligence in the network. Earlier networks provided “reliable service”. Ultimately they chose IP data gram as the transport mechanism. IP provides a best effort service. That has enabled the technology to be useful for such a long time. People built TCP (reliable), UDP (unreliable), RTSP (streaming), IP-SEC (secure IP) etc on top of IP. Same argument for RISC/CISC (architecture) 25-May-19 CSE 542: Operating Systems

Example 1: Careful file transfer Host A Host B At host A, the file system reads the file and gives to file transfer program File transfer program asks network to send file in packets Network moves packets from A to B Network takes packets from network and gives it to file receive program File receive program puts data inthe file system 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems Modular Approach Make sure that each of these steps mask failures Read from disk, perform check sums to verify data integrity Make sure the communication network delivers data reliably etc End-to-end approach Transfer the file, perform a checksum of the complete file, if it matches then data was correct Optimization: Perform checksums after parts of the file are received 25-May-19 CSE 542: Operating Systems

Example 2: Faulty router Input Buffer Output Buffer With a modular design, proper check sums verified before putting packets in input buffer. Packets got corrupted inside the router before it copies data to the output buffer. Went undetected 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems Performance aspects Modular implementations do help similar applications Frees end user from complexities The tradeoff is that the lower levels should provide some functionality, which is easy to implement and leave complicated schemes to higher level mechanisms 25-May-19 CSE 542: Operating Systems

Example 3: Delivery guarantees Lower level delivery guarantee mechanism can tell when a message was delivered to a computer. However, what users really care is if a message was understood by the recipient E.g. Return-Receipt-To: email header will trigger mail servers to send a receipt when email is delivered. Return-View-To: will prompt the email program to send a response as soon as someone opens the email. What you really want is when users read the email and understand it. After message is delivered to the system, the disk can crash, access can be turned off so that lower level acknowledgement is useless. If you user understands the message, they will respond back You can force the end system to guarantee delivery to application but simpler at the application level 25-May-19 CSE 542: Operating Systems

Example 4: Secure transmission of data Data transmission system performs encryption and decryption Trust lower levels with key management Data will be in clear text in the operating system Authenticity of message must still be checked Leave end-to-end authorization to higher layers. Lower level can perform basic encryption E.g. data between wireless access point and the wireless card is encrypted. Can be broken but it stops casual hackers and is not too hard to implement 25-May-19 CSE 542: Operating Systems

Example 5: Duplicate message suppression Applications sometime know if a message is a duplicate and drop the second update 25-May-19 CSE 542: Operating Systems

CSE 542: Operating Systems Brittle mechanisms Develop general traces that capture typical operating system behavior 25-May-19 CSE 542: Operating Systems

Threats to end-to-end paradigm Quality of Service (QoS) – Routers treat packets differently based on the source, $$$ etc. Internet2 provides heavy support for QoS. Firewalls, Caches, NAT Prevents end-to-end interaction 25-May-19 CSE 542: Operating Systems