Intro to Distributed Systems Hank Levy. 25/24/2015 Distributed Systems Nearly all systems today are distributed in some way, e.g.: –they use email –they.

Slides:



Advertisements
Similar presentations
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Advertisements

Computer Networks and the Internet CMPT 109 Montclair State University.
Network Layer and Transport Layer.
Lecture 2 Protocol Layers CPE 401 / 601 Computer Network Systems slides are modified from Dave Hollinger.
Introduction to Distributed Systems and Networking.
Shalini Bhavanam. Key words: Basic Definitions Classification of Networks Types of networks Network Topologies Network Models.
Distributed Hardware How are computers interconnected ? –via a bus-based –via a switch How are processors and memories interconnected ? –Private –shared.
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
Introduction to Networking. 2 Layered Architecture Web, , file transfer,... Reliable/ordered transmission, QOS, security, compression,... End-to-end.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Protocols and the TCP/IP Suite
Introduction to Networking. 2 Goals for Today Review –Layered Architecture –ISO and Internet Protocols Addressing Routing Circuit vs Packet Switching.
Inside the Internet. INTERNET ARCHITECTURE The Internet system consists of a number of interconnected packet networks supporting communication among host.
Review on Networking Technologies Linda Wu (CMPT )
CS335 Networking & Network Administration Tuesday, April 20, 2010.
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
Chapter 2 Network Models.
1 25\10\2010 Unit-V Connecting LANs Unit – 5 Connecting DevicesConnecting Devices Backbone NetworksBackbone Networks Virtual LANsVirtual LANs.
COMPUTER NETWORKS.
The OSI Model A layered framework for the design of network systems that allows communication across all types of computer systems regardless of their.
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Communicating over the Network Network Fundamentals – Chapter 2.
©Brooks/Cole, 2003 Chapter 6 Computer Networks. ©Brooks/Cole, 2003 Understand the rationale for the existence of networks. Distinguish between the three.
Lecturer: Tamanna Haque Nipa
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.
CECS 5460 – Assignment 3 Stacey VanderHeiden Güney.
NetworkProtocols. Objectives Identify characteristics of TCP/IP, IPX/SPX, NetBIOS, and AppleTalk Understand position of network protocols in OSI Model.
Chapter 1 Overview Review Overview of demonstration network
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
THE OSI MODEL AND THE TCP/IP PROTOCOL SUITE CS 1202 Lectur3 part2.
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
The OSI Model An ISO (International standard Organization) that covers all aspects of network communications is the Open System Interconnection (OSI) model.
The OSI Model and the TCP/IP Protocol Suite Outline: 1.Protocol Layers 2.OSI Model 3.TCP/IP Model 4.Addressing 1.
1 Next Few Classes Networking basics Protection & Security.
The OSI Model.
TCP/IP TCP/IP LAYERED PROTOCOL TCP/IP'S APPLICATION LAYER TRANSPORT LAYER NETWORK LAYER NETWORK ACCESS LAYER (DATA LINK LAYER)
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
UNDERSTANDING THE HOST-TO-HOST COMMUNICATIONS MODEL - OSI LAYER & TCP/IP MODEL 1.
1 CHAPTER 8 TELECOMMUNICATIONSANDNETWORKS. 2 TELECOMMUNICATIONS Telecommunications: Communication of all types of information, including digital data,
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
15.1 Chapter 15 Connecting LANs, Backbone Networks, and Virtual LANs Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
Prepared by Engr.Jawad Ali BSc(Hons)Computer Systems Engineering University of Engineering and Technology Peshawar.
Network Protocols and Standards (Part 2). The OSI Model In 1984, the International Organization for Standardization (ISO) defined a standard, or set of.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
Open System Interconnection Describe how information from a software application in one computer moves through a network medium to a software application.
1 Chapter 4. Protocols and the TCP/IP Suite Wen-Shyang Hwang KUAS EE.
Intro to Distributed Systems and Networks Hank Levy.
THE NETWORKS Theo Chakkapark. Open System Interconnection  The tower of power!  The source of this power comes from the model’s flexibility.
Introduction Computer networks: – definition – computer networks from the perspectives of users and designers – Evaluation criteria – Some concepts: –
Intro to Distributed Systems Hank Levy. 23/20/2016 Distributed Systems Nearly all systems today are distributed in some way, e.g.: –they use –they.
Network Models. The OSI Model Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Model for understanding.
The OSI Model and the TCP/IP Protocol Suite
Layered Architectures
The OSI Model and the TCP/IP Protocol Suite
Protocols and the TCP/IP Suite
Topic 5: Communication and the Internet
Intro to Distributed Systems
CSE 451: Operating Systems Spring 2005 Module 20 Distributed Systems
Chapter 15 – Part 2 Networks The Internal Operating System
Basic Mechanisms How Bits Move.
Protocols and the TCP/IP Suite
Networking.
CSE 451: Operating Systems Winter 2004 Module 19 Distributed Systems
The OSI Model and the TCP/IP Protocol Suite
OSI Reference Model Unit II
CSE 451: Operating Systems Winter 2007 Module 21 Distributed Systems
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
Presentation transcript:

Intro to Distributed Systems Hank Levy

25/24/2015 Distributed Systems Nearly all systems today are distributed in some way, e.g.: –they use –they access files over a network –they access printers over a network –they are backed up over a network –they share other physical or logical resources –they cooperate with other people on other machines –soon: they receive video, audio, etc.

35/24/2015 Why use distributed systems? Distributed systems are now a requirement: –economics dictate that we buy small computers –everyone needs to communicate –we need to share physical devices (printers) as well as information (files, etc.) –many applications are by their nature distributed (bank teller machines, airline reservations, ticket purchasing) –in the future, to solve the largest problems, we will need to get large collections of small machines to cooperate together (parallel programming)

45/24/2015 What is a distributed system? There are several levels of distribution. Earliest systems used simple explicit network programs: –FTP: file transfer program –Telnet (rlogin): remote login program –mail –remote job entry (or rsh): run jobs remotely Each system was a completely autonomous independent system, connected to others on the network

55/24/2015 Loosely-Coupled Systems Most distributed systems are “loosely-coupled: Each CPU runs an independent autonomous OS. Hosts communicate through message passing. Computer don’t really trust each other. Some resources are shared, but most are not. The system may look differently from different hosts. Typically, communication times are long.

65/24/2015 Closely-Coupled Systems A distributed system becomes more “closely coupled” as it: –appears more uniform in nature –runs a “single” operating system –has a single security domain –shares all logical resources (e.g., files) –shares all physical resources (CPUs, memory, disks, printers, etc.) In the limit, a distributed system looks to the user as if it were a centralized timesharing system, except that it’s constructed out of a distributed collection of hardware and software components.

75/24/2015 Tightly-Coupled Systems A “tightly-coupled” system usually refers to a multiprocessor. –Runs a single copy of the OS with a single job queue –has a single address space –usually has a single bus or backplane to which all processors and memories are connected –has very low communication latency –processors communicate through shared memory

85/24/2015 Some Issues in Distributed Systems Transparency (how visible is the distribution) Security Reliability Performance Scalability Programming models Communications models

95/24/2015 Transparency In a true distributed system with transparency: –it would appear as a single system –different modes would be invisible –jobs would migrate automatically from node to node –a job on one node would be able to use memory on another

105/24/2015 Distribution and the OS There are various issues that the OS must deal with: –how to provide efficient network communication –what protocols to use –what is the application interface to remote apps (although this might be a language issue) –protection of distributed resources

115/24/2015 The Network There are various network technologies that can be used to interconnect nodes. In general, Local Area Networks (LANs) are used to connect hosts within a building. Wide Area Networks (WANs) are used across the country or planet. We are at an interesting point, as network technology is about to see an order-of-magnitude performance increase. This will have a huge impact on the kinds of systems we can build.

125/24/2015 Issues in Networking Routing Bandwidth and contention Latency Reliability Efficiency Cost Scalability

135/24/2015 Network Topologies Point to PointRing Broadcast Star Tree Switch

145/24/2015 Two ways to handle networking Circuit Switching –what you get when you make a phone call –good when you require constant bit rate –good for reserving bandwidth (refuse connection if bandwidth not available) Packet Switching –what you get when you send a bunch of letters –network bandwidth consumed only when sending –packets are routed independently –packetizing may reduce delays (using parallelism)

155/24/2015 Packet switching is preferable for data communications From the perspective of the network –but may not be preferable for some application Applications are bursty –variable amounts of info at irregular intervals –a diskless workstation: needs all bandwidth to transfer a page, so can’t reserve it –circuit switching may have high cost to set up connection –maintaining the connection may waste bandwidth if connection is used infrequently

165/24/2015 New Applications Video and Voice may be different (more like phone system) But with data compression, makes circuit switching less attractive: –compressed video generates a variable bit rate signal –signal needs to be transported within a certain max. delay, but bandwidth needed is variable New applications will be very bursty and will require guarantees about latency.

175/24/2015 Messages At a low level, network communication is via messages. A message is simply a typed byte string passed between two levels of the system (e.g., OS to OS, app to app). A message usually contains a header, indicating what kind of information it contains, and some data. What the message “means,” i.e., how to interpret the bytes in the message, is an agreement between the two communicating parties (the protocol).

185/24/2015 The anatomy of a message Where are messages kept before they are sent? and after they are received? destination host addr. source host addr. application ID msg length msg data checksum header The msg data may itself contain a header and some data for another level of communication, and so on.

195/24/2015 The OSI Model The Open Systems Interconnect model is a standard way of understanding the conceptual layers of network communication. This is a model, nobody builds systems like this. Each level provided certain functions and guarantees, and communicates with the same level on remote notes. A message is generated at the highest level, and is passed down the levels, encapsulated by lower levels, until it is sent over the wire. On the destination, it makes its way up the layers,until the high- level msg reaches its high-level destination.

205/24/2015 OSI Levels Presentation Transport Network Data Link Physical Application Presentation Transport Network Data Link Physical Application Node A Node B Network

215/24/2015 OSI Levels Physical Layer: electrical details of bits on the wire Data Link: sending “frames” of bits and error detection Network Layer:” routing packets to the destination Transport Layer: reliable transmission of messages, disassembly/assembly, ordering, retransmission of lost packets Session Layer; really part of transport, typ. Not impl. Presentation Layer: data representation in the message Application: high-level protocols (mail, ftp, etc.)

225/24/2015 Addressing and Packet Format Every network card has a unique address in HARDWARE. The ``Data'' segment contains higher level protocol information. – Which protocol is this packet destined for? – Which process is the packet destined for? – Which packet is this in a sequence of packets? – What kind of packet is this? This is the stuff of the OSI reference model. Start (7 bytes) Destination (6) Source (6) Length (2) Msg Data (1500) Checksum (4)

235/24/2015 Ethernet packet dispatching An incoming packet comes into the ethernet controller. The ethernet controller reads it off the network into a buffer. It interrupts the CPU. A network interrupt handler reads the packet out of the controller into memory. A dispatch routine looks at the Data part and hands it to a higher level protocol The higher level protocol copies it out into user space. A program manipulates the data. The output path is similar. Consider what happens when you send mail.

245/24/2015 Example: Mail Hi Dad. To: Dad SrcAddr: DestAddr: SrcPort: 100 DestPort: 200 Bytes: 1-20 Hi Dad. To: Dad SrcEther: 0xdeadbeef DestEther: 0xfeedface SrcAddr: DestAddr: SrcPort: 100 DestPort: 200 Bytes: 1-20 Hi Dad. To: Dad Mail Composition And Display Mail Transport Layer Network Transport Layer Link Layer Hi Dad. To: Dad SrcAddr: DestAddr: SrcPort: 100 DestPort: 200 Bytes: 1-20 Hi Dad. To: Dad SrcEther: 0xdeadbeef DestEther: 0xfeedface SrcAddr: DestAddr: SrcPort: 100 DestPort: 200 Bytes: 1-20 Hi Dad. To: Dad Network User Kernel

255/24/2015 Routing Moving packets from one network to another. Routers run their own address distribution protocol to ensure connectivity –decisions based on a distance metric Router gateway routing table

265/24/2015 Finally TCP/IP (Transmission Control Protocol/Internet Protocol) provides reliable, ordered bytestreams between pairs of processes UDP/IP (User Datagram Protocol) provides unreliable, unordered messages between pairs of processes A network interface delivers packets to the operating system. The operating system delivers messages to an application according to the destination specified in the packet The rest is all about distributed programming!