Distributed (Operating) Systems -Communication in Distributed Systems- Computer Engineering Department Distributed Systems Course Assoc. Prof. Dr. Ahmet.

Slides:



Advertisements
Similar presentations
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Advertisements

Last Class: RPCs and RMI
Network Layer and Transport Layer.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Networks & Communications CS-4513, D-Term Networks & Communication (continued) CS-4513 Distributed Computing Systems (Slides include materials from.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
OSI Model.
Computer Science Lecture 2, page 1 CS677: Distributed OS Last Class: Introduction Distributed Systems – A collection of independent computers that appears.
Networks 1 CS502 Spring 2006 Network Input & Output CS-502 Operating Systems Spring 2006.
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
TCP: Software for Reliable Communication. Spring 2002Computer Networks Applications Internet: a Collection of Disparate Networks Different goals: Speed,
 The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at the International Organization for Standardization.
Communication Part II Message-Oriented Communication Chapter 4.
Message-Oriented Communication Synchronous versus asynchronous communications Message-Queuing System Message Brokers Example: IBM MQSeries 02 – 26 Communication/2.4.
Communication Network Protocols Jaya Kalidindi CSC 8320(fall 2008)
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.
Process-to-Process Delivery:
Data Communications and Networks
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
Lesson 24. Protocols and the OSI Model. Objectives At the end of this Presentation, you will be able to:
Data and Computer Communications Eighth Edition by William Stallings Lecture slides by Lawrie Brown Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
Chapter 2 Network Models
Presentation on Osi & TCP/IP MODEL
Copyright 2003 CCNA 1 Chapter 9 TCP/IP Transport and Application Layers By Your Name.
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.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Network Services Networking for Home and Small Businesses – Chapter 6.
Mukesh N. Tekwani Elphinstone College Mumbai
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
University of the Western Cape Chapter 12: The Transport Layer.
TCP/IP Transport and Application (Topic 6)
Distributed (Operating) Systems -Communication in Distributed Systems- Fall 2011 Kocaeli University Computer Engineering Department.
Dr. John P. Abraham Professor University of Texas Pan American Internet Applications and Network Programming.
Internet Protocol B Bhupendra Ratha, Lecturer School of Library and Information Science Devi Ahilya University, Indore
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
Communication Fundamentals Yi Liang 9/9/2015. Fundamentals  Layered protocols Build Message System call Send over network d Process A Process B.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved RPC Tanenbaum.
Spring 2006Computer Networks1 Chapter 2 Network Models.
Data Communications and Networks
Networking Basics CCNA 1 Chapter 11.
 Communication Distributed Systems IT332. Outline  Fundamentals  Layered network communication protocols  Types of communication  Remote Procedure.
Distributed Computing Systems
Network Protocols and Standards (Part 2). The OSI Model In 1984, the International Organization for Standardization (ISO) defined a standard, or set of.
1 Chapter 4. Protocols and the TCP/IP Suite Wen-Shyang Hwang KUAS EE.
Net 221D:Computer Networks Fundamentals
Voice Over Internet Protocol (VoIP) Copyright © 2006 Heathkit Company, Inc. All Rights Reserved Presentation 5 – VoIP and the OSI Model.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Network Communications A Brief Introduction. 2 Network Communications.
Process-to-Process Delivery:
Data and Computer Communications Chapter 2 – Protocol Architecture, TCP/IP, and Internet-Based Applications.
Last Class: Introduction
Computer Networks.
Layered Architectures
Last Class: RPCs and RMI
Understanding the OSI Reference Model
4.1 Fundamentals COMMUNICATION: Advanced Operating Systems (CSc 8320)
Process-to-Process Delivery:
Chapter 15 – Part 2 Networks The Internal Operating System
OSI Reference Model Unit II
Kyle Broussard, Alexandra Mikolai,
Process-to-Process Delivery: UDP, TCP
OSI Model 7 Layers 7. Application Layer 6. Presentation Layer
Communication.
Transport Layer 9/22/2019.
Presentation transcript:

Distributed (Operating) Systems -Communication in Distributed Systems- Computer Engineering Department Distributed Systems Course Assoc. Prof. Dr. Ahmet Sayar Kocaeli University - Fall 2015

Communication Communication is at the heart of all distributed systems Examining the ways that processes on different machines can exchange information. IPC – Inter Process Communication Communication through message passing is harder than using primitives based on shared memory Communication in distributed systems is always based on low-level message passing as offered by underlying network

Outline of Next 3 Lessons Underlying network layer communication protocols – OSI Model (ISO/OSI) – Internet Protocol Suit TCP/IP Widely used models for communication, also called middleware communication services : – Remote Procedure Call (RPC) – Message Oriented Middleware (MOM) – RTP: Streams for transferring real-time data, such as needed for multimedia applications

Messages in Communication Communication messaging rules are defined in protocols Due to the absence of shared memory, all communication in distributed systems is based on sending and receiving (low-level) messages Many different agreements – IBM’s EBCDIC and ASCII – How many volts should be used to signal 0 – How does the receiver know which is the last bit – How can the receiver detect if a message has been damaged

OSI Model-Layered Protocol ISO/OSI is never widely used and are essentially dead In the OSI model, communication is divided up into 7 layers OSI layers were never popular. In contrast, protocols developed for the internet, such as TCP and IP, are mostly used

Communication Protocols There are some rules that communicating processes must adhere to – known as protocols Protocols are agreements/rules on communication Protocols could be connection-oriented or connectionless

Layered Protocols A typical message as it appears on the network.

Physical and Data-Link Layers Physical layer – Transmitting 0s and 1s – How many bits per sec can be sent – Can transmission take place in both direction – Standardizing the electrical, mechanical and signaling interfaces. Data Link Layer – Group the bits into units, frames, and see if each frame is correctly received. – Puts special bit pattern on the start and end of each frame – Computing checksum

Network Layer Routing It is important in WAN Shortest path is not always the best route – Depends on amount of delay, on a given route, amount of traffic and the number of messages queued up. Some routing algorithms. Most widely used network protocol is IP An IP packet can be sent without any setup. I.E. each IP packet is routed to its destination independent of all others.

Transport Layer Turns the underlying network into something that an application developer can use Messages from the application is broken into small pieces-packets TCP packed header concerns - which packets have been sent, which have been received, which should be retransmitted Connection-oriented: messages arrive in the same order (as in TCP) - reliable Connectionless: message can arrive in different order (as in UDP) – unreliable (just IP with some additions) The combination of TCP/IP is now used as a de facto standard for network communication

Client-Server TCP 3-way TCP hand-shake

Session and Presentation Layers Session Layer – Enhanced version of transport layer – Keeps track of which party is currently talking and it provides a synchronization – Puts checking points – in case of crash going to the last check point, Instead of going to the starting point Presentation Layer – Concerned with the meaning of the bits – Structure information such as people’s names, addresses etc.

OSI Model summary Missing in this model: A clear distinction between applications, application-specific protocols and general purpose protocols. Application-specific protocol – FTP – protocol for transferring files between client and server – HTTP – protocol is implemented by applications such as web browsers and web servers. – SMTP - Mail delivery system General-purpose protocols – Useful to many applications but cannot be qualified as transport protocols. These protocols fall into the category of middleware protocols.

Middleware Protocols Middleware: Layer that resides between an OS and an application – May implement general-purpose protocols that warrant their own layers

Middleware Protocols 1 Some services are not tied to any specific applications, but instead can be integrated into a middleware system as a general service – Authentication protocols Proof of claimed identity – Atomicity protocols Distributed commit protocols Widely applied in transactions – Distributed locking protocols Resources can be protected against simultaneous accesses

Middleware Protocols 2 HIGH level middleware communication services: – Remote Procedure Call (RPC) – Message Oriented Middleware (MOM) – RTP: Streams for transferring real-time data, such as needed for multimedia applications

Communication in Distributed Systems Communication is done through message passing Expressing communication through message passing is harder than using primitives based on shared memory Remote Procedure Calls – Transparency but poor for passing references – Ideal for client server applications Message-oriented Communication Stream-oriented Communication – Continuous media

Communication Between Processes Unstructured communication – Use shared memory or shared data structures Structured communication – Use explicit messages (IPCs) Distributed Systems: Both need low-level communication support

Types of Communication -1 Transient Communication – A message is stored by the communication system only as long as the sending and the receiving application are executing – Typically all transport level communication is transient communication Persistent Communication – A message that has been submitted for transmission is kept by middleware as long as it takes to deliver it to the receiver – Receiving application don’t need to be executing when the message is submitted

Types of Communication -2 Asynchronous Communication – Sender continues immediately after it has submitted its message for transmission – It means, message is temporarily stored in middleware upon submission Synchronous Communication – Sender is blocked until its request is known to be accepted – Three points Received based Delivery based Response based

Persistence and Synchronicity in Communication: RPC 1 Received Based 2 Delivery Based3 Response Based

Types of Communication -3 Connection-oriented (telephone) – With connection-oriented protocols, before exchanging data, the sender and receiver first explicitly establish a connection – TCP Connectionless (mailbox – dropping a letter) – No setup in advance is needed – IP, UDP

Persistence Persistent communication – Messages are stored until the next receiver is ready to receive that message – Examples: , pony express – Network buffers are not persistent they are transient

Transient Communication Transient communication – Message is stored only so long as sending/receiving application are executing – Discard message if it can’t be delivered to next server/receiver – Example: Transport-level communication services offer transient communication – Example: Typical network router – Example: Chatting

Synchronicity Asynchronous communication – Sender continues immediately after it has submitted the message – Need a local buffer at the sending host – Also called nonblocking Synchronous communication – Sender blocks until message is stored in a local buffer at the receiving host or actually delivered to receiver – Variant: Block until receiver processes the message – Also called blocking

NOW we have 4 combinations Persistence vs. Transient Asynchronous vs. Synchronous

Persistence and Synchronicity Combinations a) Persistent asynchronous communication (e.g., ) b) Persistent synchronous communication

Persistence and Synchronicity Combinations c) Transient asynchronous communication (e.g., UDP) d) Receipt-based transient synchronous communication

Persistence and Synchronicity Combinations e) Delivery-based transient synchronous communication at message delivery (e.g., asynchronous RPC) f) Response-based transient synchronous communication (RPC)

Back Up

RTP Actually a transport protocol Real-Time Transport Protocol Support real time data transfers A framework protocol - it specifies packet formats for real-time data without providing the actual mechanisms for guaranteeing data delivery.