Dr Markus Hagenbuchner CSCI319 SIM. Distributed Systems Chapter 4 - Communication

Size: px
Start display at page:

Download "Dr Markus Hagenbuchner CSCI319 SIM. Distributed Systems Chapter 4 - Communication"

Transcription

1 Dr Markus Hagenbuchner CSCI319 SIM Distributed Systems Chapter 4 - Communication CSCI319 Chapter 4 Page: 1

2 Communication Lecture notes based on the textbook by Tannenbaum Study objectives: 1. Understand the role of communication in DS 2. Explain message oriented communication, stream oriented communication, and multi-casting. 3. Understand the role and limitations of RPC. 4. Explain role and mechanisms of message queuing and message broker systems. 5. Explain QoS in stream oriented communication. 6. Understand communication in wireless mesh networks CSCI319 Chapter 4 Page: 2

3 Content Communication protocols Types of communication Remote Procedure Calls (RPC) Streaming Multicasting Synchronization Quality of service Introduction to Wireless Mesh Networks CSCI319 Chapter 4 Page: 3

4 Layered Protocols (1) Layers, interfaces, and protocols in the OSI model: CSCI319 Chapter 4 Page: 4

5 Layered Protocols (2) Typically, each layer adds a header to the message containing information relevant to the layer. Example, a typical message as it appears on the network: CSCI319 Chapter 4 Page: 5

6 Interactive slide What does the acronym OSI stand for? Open System Interconnect, provides communication standards. Give examples to what do the following layers in the OSI model typically refer to: Application: FTP, HTTP (application side protocol determines what to do with an incoming message) Transport: Transport Control Protocol (TCP) adds some flow control (sequencing) Network: Network/Internet Protocol (IP) contains information about unique sender and receiver Data link: Frames for error detection. Physical: Refers to wire, line speed, voltage, plugs, etc. CSCI319 Chapter 4 Page: 6

7 Interactive slide What does the acronym OSI stand for? Open System Interconnect, provides communication standards. Give examples to what do the following layers in the OSI model typically refer to: Application: FTP, HTTP (application side protocol determines what to do with an incoming message) Transport: Transport Control Protocol (TCP) adds some flow control (sequencing) Network: Network/Internet Protocol (IP) contains information about unique sender and receiver Data link: Frames for error detection. Physical: Refers to wire, line speed, voltage, plugs, etc. CSCI319 Chapter 4 Page: 7

8 Middleware Protocols The standard OSI model does not provision a layer for the middleware protocol. The presentation layer and the session layer are hardly ever used in practice (their corresponding headers are of zero-size). Distributed system leave the presentation layer empty, and use of the session layer for the injection of middleware layer protocols. Hence, the OSI model for distributed systems is defined more specifically as follows: CSCI319 Chapter 4 Page: 8

9 Middleware Protocols An adapted reference model for Distributed Systems. CSCI319 Chapter 4 Page: 9

10 Interactive slide What is the role of the middleware layer in the Open System Interconnection (OSI) model? Offers high level communication services and is placed as an independent protocol layer between transport and application layer. Helps to achieve transparency (from the application point of view). Allows the realization of RPC CSCI319 Chapter 4 Page: 10

11 Interactive slide What is the role of the middleware layer in the Open System Interconnection (OSI) model? Offers high level communication services and is placed as an independent protocol layer between transport and application layer. Helps to achieve transparency (from the application point of view). Replaces the session and presentation layer which are rarely ever used (if needed, the middleware layer can simulate these layers in a transparent fashion). Allows the realization of RPC CSCI319 Chapter 4 Page: 11

12 RPC Many older distributed systems have been based on explicit message exchange between processes (i.e. using send and receive). Transparency is not achieved An idea was introduced to allow calling of procedures located on other machines. The method is commonly known as Remote Procedure Calls (RPC) CSCI319 Chapter 4 Page: 12 of 47

13 RPC Local procedure call: Parameters are passed via a stack. Remote procedure call: Parameters are passed via a message over a network. In both cases: the receiver needs to know the type, format, and purpose of the parameters. Main difference: With RPC, the receiver may be of a differing hardware architecture. Type conversion may be necessary. Example: Assume that a function add() is defined to accept two integer parameters such as in add(int i, int j). Then the differences between calling a local procedure and RPC can be shown as follows: CSCI319 Chapter 4 Page: 13 of 47

14 Conventional Procedure Call Parameter passing when calling a local procedure add(int, int). Left, the stack before the call to add(), right the stack while the called procedure is active. Main program s local variables Main program s local variables int i int j Return address Local variables of add CSCI319 Chapter 4 Page: 14 of 47

15 Remote Procedure Calls (1) In general, a remote procedure call occurs in the following steps: 1. The client procedure calls the client stub in the normal way. 2. The client stub builds a message and calls the local operating system. 3. The client s OS sends the message to the remote OS. 4. The remote OS gives the message to the server stub. 5. The server stub unpacks the parameters and calls the server. Continued CSCI319 Chapter 4 Page: 15 of 47

16 Remote Procedure Calls (2) A remote procedure call occurs in the following steps (continued): 6. The server does the work and returns the result to the stub. 7. The server stub packs it in a message and calls its local OS. 8. The server s OS sends the message to the client s OS. 9. The client s OS gives the message to the client stub. 10. The stub unpacks the result and returns to the client. CSCI319 Chapter 4 Page: 16 of 47

17 Passing Value Parameters (1) A visualization of the steps involved in a doing a remote computation through RPC: But there is a problem in heterogeneous systems: CSCI319 Chapter 4 Page: 17 of 47

18 Passing Value Parameters (2) But there is a problem: The byte order can differ between architectures. This is called endianess. Example: A integer consists of 4 bytes. Say, we store the value 5 in an integer, which of the bytes in the integer will carry the value? In Big endian (i.e. Intel): the (last) forth byte. Little endian (i.e. Sun sparc): the first byte. Thus, an RPC issued by an intel based computer would send the byte sequence But a sun workstation would interpret this value as 5*2 24. Solution: Reverse byte order if endianess differ between sender/receiver. This worked for the integer but not for the string. Hence, we need to understand what needs to be reverted and what not (since we cannot ask the RPC system to guess). CSCI319 Chapter 4 Page: 18 of 47

19 Communication RPC is one example of process communication between two machines. In general, Process Communication can be divided into two types: (1) Message oriented (2) Stream oriented. We will have a closer look at these two. CSCI319 Chapter 4 Page: 19 of 47

20 Message Oriented Communication We will look at two message oriented communication and their protocols: 1. The message passing interface (MPI) and the message passing protocol. 2. Message Queuing (MQ) and the message queuing protocol. CSCI319 Chapter 4 Page: 20 of 47

21 The Message-Passing Interface (1) MPI is a well established protocol commonly used for communication in homogeneous systems (i.e. clusters). Some of the primitives of MPI: MPI avoids low level primitives which are irrelevant to the task of message passing -> More intuitive, more transparent CSCI319 Chapter 4 Page: 21 of 47

22 Message Oriented Communication However, MPI requires that both, sender and receiver are available at the time of communication. This is OK in cluster environments. But it is unsuitable in DS which are distributed over a larger area. Message Queuing allows communication in loosely coupled systems. Through a buffering mechanism within the middleware layer. CSCI319 Chapter 4 Page: 22 of 47

23 Message-Queuing Model (1) With message queuing, there are four combinations for loosely-coupled communications using queues. CSCI319 Chapter 4 Page: 23 of 47

24 General Architecture of a Message- Queuing System (1) There can be multiple queues in a MQ system. Messages may be passed via a set of routers. Thus, the path of a message sent through a queue must be defined: Routing tables CSCI319 Chapter 4 Page: 24 of 47

25 Message Transfer in MQ systems The general organization of a message queuing network using routing tables and aliases. CSCI319 Chapter 4 Page: 25

26 IBM s WebSphere Message-Queuing System General organization of IBM s message-queuing system: CSCI319 Chapter 4 Page: 26

27 Channels IBMs message-queuing systems uses channel agents (MCA). Channels avoid the need of re-establishing a connection when sending several messages through a queue. The collective of all channels define the topology of a system. It becomes necessary to define routes to ensure that a message can find a path to any destination. This too is achieved through routing tables. CSCI319 Chapter 4 Page: 27

28 Message Brokers Large scale DSs are often heterogenous. Messages send be one node may not be understood by the receiving node. This can occur, for example, if sender and receiver use differing software versions. This issue can be addressed i.e. through the use of message brokers as in WebSphere. Message brokers are commonly found in message queuing systems of large enterprises. CSCI319 Chapter 4 Page: 28

29 Message Brokers The general organization of a message broker in a message-queuing system. CSCI319 Chapter 4 Page: 29

30 Message Transfer (2) We have seen that MQ systems can be powerful. Yet, the primitives required can be kept quite simple. In practice, the primitives available in the message-queuing interface are: CSCI319 Chapter 4 Page: 30

31 Next: Stream Oriented Communication in distributed systems CSCI319 Chapter 4 Page: 31

32 Data Stream A general architecture for streaming stored multimedia data over a network when using Quality of Service (QoS) module. CSCI319 Chapter 4 Page: 32

33 Streams and Quality of Service Properties that define Quality of Service (QoS): The required bit rate at which data should be transported. The maximum delay until a session has been set up The maximum end-to-end delay. The maximum delay variance, or jitter. The maximum round-trip delay. CSCI319 Chapter 4 Page: 33

34 Enforcing QoS (1) A strategy to reduce jitter is by using a buffer as is illustrated in the following: The loss of a packet can be a problem since we often can not wait for a packet to be re-sent. So what can be done to reduce the effect of packet loss? CSCI319 Chapter 4 Page: 34

35 Enforcing QoS (2) The effect of packet loss in (a) non interleaved transmission and (b) interleaved transmission. CSCI319 Chapter 4 Page: 35

36 Enforcing QoS (3) Note that on the previous slide: 1.Send refers to data sent by a multimedia server 2.Delivered refers to data as is delivered to the client-side application layer by the client-side middleware. Thus, buffering, and the recreating of the frame sequence is handled by the middleware layer. CSCI319 Chapter 4 Page: 36

37 Multicast Communication With Multicast communication: One sender, multiple receivers Network link between sender/receiver may run at different speeds, produce different cost, etc. Strategies for efficient message propagation? (Network) overlay construction (a structure that defines how a message travels across the network). Dissemination models CSCI319 Chapter 4 Page: 37

38 Overlay Construction Aim of overlay construction: Reduce transport cost Reduce time requirement. The relation between links in an overlay and actual network-level routes will be demonstrated in an example: A system consisting of four hosts, four routers, a cost (i.e. time, transport cost) associated with each network link, and network level topology. CSCI319 Chapter 4 Page: 38

39 Example 1 overlay construction Assume sender A multicasts a message by sending the message to each received one at a time. What would the total cost be? Cost: Cost A->B + Cost A->C + Cost A->D = 119 CSCI319 Chapter 4 Page: 39

40 Example 2 overlay construction Sender A attaches ID of all receivers. Routers chose the connection of lowest cost to deliver the message to the first receiver. The receiver removes its own ID from message, then becomes the new sender. Repeat until no more IDs in the message. Cost? Cost: Cost A->B + Cost B->C + Cost C->D = 75 CSCI319 Chapter 4 Page: 40

41 Overlay construction Thus, the overlay network defines the efficiency of a multi-cast system. A well designed overlay can reduce costs significantly. But what is the optimal cost? In the example, the optimal cost is: = 56 In dynamic systems it is not generally possible to achieve optimal cost. In static systems it is possible to define static routing tables which can achieve optimal cost. CSCI319 Chapter 4 Page: 41

42 Information Dissemination Models (1) An alternative to spreading information (i.e. as found in P2P) is to spread information like an epidemic: 1. Anti-entropy propagation model Node P picks another node Q at random Subsequently exchanges updates with Q 2. Approaches to exchanging updates P only pushes its own updates to Q P only pulls in new updates from Q P and Q send updates to each other In both situations, P forgets Q with probability (i.e. 1/k), then picks another node at random. The approach in (1), and (2) does not guarantee that all nodes receive the message. CSCI319 Chapter 4 Page: 42

43 Wireless Mesh Networks (1) A wireless mesh network (WMN) is a communications network made up of radio nodes organized in a mesh topology. Wireless mesh networks often consist of Nodes have two functions: Generate/terminate traffic Route traffic for other nodes Therefore, MMNs are: Multihop Wireless network. Support for adhoc networking and capability of self forming, self healing and self organization. CSCI319 Chapter 4 Page: 43

44 Wireless Mesh Networks (2) SS = Subscriber Station; BS = BaseStation CSCI319 Chapter 4 Page: 44

45 Wireless Mesh Networks (3) Security enforcement and topology management is much easier to achieve in Point-to-multipoint communication. Whereas robustness and range is improved vastly in WMN. This makes mesh communication particularly attractive for distributed pervasive systems. WMN is standardized (IEEE802.16a) for WIFI networks. There is no such standard yet for 3G type of networks. CSCI319 Chapter 4 Page: 45

46 Wireless Mesh Networks (4) Note: Wireless mesh networks differ from Ad-hoc networks and from Wireless sensor networks. You will learn more about these differences during the tutorial. CSCI319 Chapter 4 Page: 46

47 Summary Standard protocols are an essential requirement. Types of communication (i.e. RPC) Synchronous vs asynchronous RPC Message distribution models. These are.? Streaming = information dissemination Quality of Service Introduced Wireless Mesh Networks CSCI319 Chapter 4 Page: 47

Chapter 4 Communication

Chapter 4 Communication DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI

More information

Distributed Information Processing

Distributed Information Processing Distributed Information Processing 6 th Lecture Eom, Hyeonsang ( 엄현상 ) Department of Computer Science & Engineering Seoul National University Copyrights 2016 Eom, Hyeonsang All Rights Reserved Outline

More information

Chapter 4 Communication

Chapter 4 Communication DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI

More information

Chapter 4 Communication

Chapter 4 Communication DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI

More information

Parallelism. Master 1 International. Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique

Parallelism. Master 1 International. Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique Parallelism Master 1 International Andrea G. B. Tettamanzi Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.fr Andrea G. B. Tettamanzi, 2014 1 Lecture 2 Communication

More information

Communication. Distributed Systems IT332

Communication. Distributed Systems IT332 Communication Distributed Systems IT332 2 Outline Fundamentals Layered network communication protocols Types of communication Remote Procedure Call Message Oriented Communication Multicast Communication

More information

IPC. Communication. Layered Protocols. Layered Protocols (1) Data Link Layer. Layered Protocols (2)

IPC. Communication. Layered Protocols. Layered Protocols (1) Data Link Layer. Layered Protocols (2) IPC Communication Chapter 2 Inter-Process Communication is the heart of all DSs. Processes on different machines. Always based on low-level message passing. In this chapter: RPC RMI MOM (Message Oriented

More information

DISTRIBUTED COMPUTER SYSTEMS

DISTRIBUTED COMPUTER SYSTEMS DISTRIBUTED COMPUTER SYSTEMS MESSAGE ORIENTED COMMUNICATIONS Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline Message Oriented Communication Sockets and Socket API

More information

Communication. Distributed Systems Santa Clara University 2016

Communication. Distributed Systems Santa Clara University 2016 Communication Distributed Systems Santa Clara University 2016 Protocol Stack Each layer has its own protocol Can make changes at one layer without changing layers above or below Use well defined interfaces

More information

Last Class: RPCs and RMI. Today: Communication Issues

Last Class: RPCs and RMI. Today: Communication Issues Last Class: RPCs and RMI Case Study: Sun RPC Lightweight RPCs Remote Method Invocation (RMI) Design issues Lecture 9, page 1 Today: Communication Issues Message-oriented communication Persistence and synchronicity

More information

Overview. Communication types and role of Middleware Remote Procedure Call (RPC) Message Oriented Communication Multicasting 2/36

Overview. Communication types and role of Middleware Remote Procedure Call (RPC) Message Oriented Communication Multicasting 2/36 Communication address calls class client communication declarations implementations interface java language littleendian machine message method multicast network object operations parameters passing procedure

More information

Distributed Systems COMP 212. Lecture 15 Othon Michail

Distributed Systems COMP 212. Lecture 15 Othon Michail Distributed Systems COMP 212 Lecture 15 Othon Michail RPC/RMI vs Messaging RPC/RMI great in hiding communication in DSs But in some cases they are inappropriate What happens if we cannot assume that the

More information

Communication. Overview

Communication. Overview Communication Chapter 2 1 Overview Layered protocols Remote procedure call Remote object invocation Message-oriented communication Stream-oriented communication 2 Layered protocols Low-level layers Transport

More information

Distributed Systems Principles and Paradigms. Chapter 04: Communication

Distributed Systems Principles and Paradigms. Chapter 04: Communication Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 04: Communication Version: November 8, 2010 2 / 55 Contents Chapter

More information

Distributed Systems Principles and Paradigms. Chapter 04: Communication

Distributed Systems Principles and Paradigms. Chapter 04: Communication Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 04: Communication Version: November 5, 2009 2 / 52 Contents Chapter

More information

Communication in Distributed Systems

Communication in Distributed Systems Communication in Distributed Systems Distributed Systems Sistemi Distribuiti Andrea Omicini andrea.omicini@unibo.it Dipartimento di Informatica Scienza e Ingegneria (DISI) Alma Mater Studiorum Università

More information

Communication. Outline

Communication. Outline COP 6611 Advanced Operating System Communication Chi Zhang czhang@cs.fiu.edu Outline Layered Protocols Remote Procedure Call (RPC) Remote Object Invocation Message-Oriented Communication 2 1 Layered Protocols

More information

CS 428/528 Computer Networks Lecture 01. Yan Wang

CS 428/528 Computer Networks Lecture 01. Yan Wang 1 CS 428/528 Computer Lecture 01 Yan Wang 2 Motivation: Why bother? Explosive growth of networks 1989, 100,000 hosts on the Internet Distributed Applications and Systems E-mail, WWW, multimedia, distributed

More information

Today CSCI Remote Method Invocation (RMI) Distributed Objects

Today CSCI Remote Method Invocation (RMI) Distributed Objects Today CSCI 5105 Remote Method Invocation (RMI) Message-oriented communication Stream-oriented communication Instructor: Abhishek Chandra 2 Remote Method Invocation (RMI) RPCs applied to distributed objects

More information

SAI/ST course Distributed Systems

SAI/ST course Distributed Systems SAI/ST course Distributed Systems 2013, Sep. 26 Oct 01 Lecture 3: Communication Agenda Overview Concepts Organization in layers IPC primitives Direct communication Indirect communication R.H. Mak 27-9-2013

More information

Verteilte Systeme (Distributed Systems)

Verteilte Systeme (Distributed Systems) Verteilte Systeme (Distributed Systems) Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ VerteilteSysteme/ Lecture 3: Communication (Part 2) Remote Procedure

More information

MOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware

MOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware MOM MESSAGE ORIENTED MOM Message Oriented Middleware MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS Peter R. Egli 1/25 Contents 1. Synchronous versus asynchronous interaction

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Chapter 04 (version September 13, 2007) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.

More information

Dr Markus Hagenbuchner CSCI319. Distributed Systems Chapter 3 - Processes

Dr Markus Hagenbuchner CSCI319. Distributed Systems Chapter 3 - Processes Dr Markus Hagenbuchner markus@uow.edu.au CSCI319 Distributed Systems Chapter 3 - Processes CSCI319 Chapter 3 Page: 1 Processes Lecture notes based on the textbook by Tannenbaum Study objectives: 1. Understand

More information

Introduction to Protocols

Introduction to Protocols Chapter 6 Introduction to Protocols 1 Chapter 6 Introduction to Protocols What is a Network Protocol? A protocol is a set of rules that governs the communications between computers on a network. These

More information

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University CS 555: DISTRIBUTED SYSTEMS [MESSAGING SYSTEMS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Distributed Servers Security risks

More information

Distributed Systems. Edited by. Ghada Ahmed, PhD. Fall (3rd Edition) Maarten van Steen and Tanenbaum

Distributed Systems. Edited by. Ghada Ahmed, PhD. Fall (3rd Edition) Maarten van Steen and Tanenbaum Distributed Systems (3rd Edition) Maarten van Steen and Tanenbaum Edited by Ghada Ahmed, PhD Fall 2017 Communication: Foundations Layered Protocols Basic networking model Application Presentation Session

More information

Lecture 8: February 19

Lecture 8: February 19 CMPSCI 677 Operating Systems Spring 2013 Lecture 8: February 19 Lecturer: Prashant Shenoy Scribe: Siddharth Gupta 8.1 Server Architecture Design of the server architecture is important for efficient and

More information

LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS

LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS 1 Lecture Contents Middleware in Distributed Systems Types of Distributed Communications Remote Procedure Call (RPC): Parameter

More information

LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS. Lecture Contents

LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS. Lecture Contents LECTURE 6: MESSAGE-ORIENTED COMMUNICATION II: MESSAGING IN DISTRIBUTED SYSTEMS 1 Lecture Contents Middleware in Distributed Systems Types of Distributed Communications Remote Procedure Call (RPC): Parameter

More information

Advanced Topics in Distributed Systems. Dr. Ayman A. Abdel-Hamid. Computer Science Department Virginia Tech

Advanced Topics in Distributed Systems. Dr. Ayman A. Abdel-Hamid. Computer Science Department Virginia Tech Advanced Topics in Distributed Systems Dr. Ayman A. Abdel-Hamid Computer Science Department Virginia Tech Communication (Based on Ch2 in Distributed Systems: Principles and Paradigms, 1/E or Ch4 in 2/E)

More information

Introductions. Computer Networking Lecture 01. January 16, HKU SPACE Community College. HKU SPACE CC CN Lecture 01 1/36

Introductions. Computer Networking Lecture 01. January 16, HKU SPACE Community College. HKU SPACE CC CN Lecture 01 1/36 Introductions Computer Networking Lecture 01 HKU SPACE Community College January 16, 2012 HKU SPACE CC CN Lecture 01 1/36 Outline What is a Computer Network? Basic Requirements of Building a Computer Network

More information

ECE 4400:427/527 - Computer Networks Spring 2017

ECE 4400:427/527 - Computer Networks Spring 2017 ECE 4400:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 3: Network Architectures Dr. Nghi Tran (ECE-University of Akron) ECE 4400:427/527

More information

Lecture 7: February 10

Lecture 7: February 10 CMPSCI 677 Operating Systems Spring 2016 Lecture 7: February 10 Lecturer: Prashant Shenoy Scribe: Tao Sun 7.1 Server Design Issues 7.1.1 Server Design There are two types of server design choices: Iterative

More information

Introduction to computer networking

Introduction to computer networking edge core Introduction to computer networking Comp Sci 3600 Security Outline edge core 1 2 edge 3 core 4 5 6 The edge core Outline edge core 1 2 edge 3 core 4 5 6 edge core Billions of connected computing

More information

Communication. Layered Protocols. Topics to be covered. Layered Protocols. Introduction

Communication. Layered Protocols. Topics to be covered. Layered Protocols. Introduction Distributed Systems, Fall 2003 1 Introduction Interprocess communication is at the heart of all distributed systems Communication Based on low-level message passing offered by the underlying network Protocols:

More information

Distributed Systems. Chapter 02

Distributed Systems. Chapter 02 Distributed Systems Principles and Paradigms Chapter 02 (version 31st August 2001) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.

More information

Distributed Systems Theory 4. Remote Procedure Call. October 17, 2008

Distributed Systems Theory 4. Remote Procedure Call. October 17, 2008 Distributed Systems Theory 4. Remote Procedure Call October 17, 2008 Client-server model vs. RPC Client-server: building everything around I/O all communication built in send/receive distributed computing

More information

DISTRIBUTED COMPUTER SYSTEMS

DISTRIBUTED COMPUTER SYSTEMS DISTRIBUTED COMPUTER SYSTEMS Communication Fundamental REMOTE PROCEDURE CALL Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline Communication Architecture Fundamentals

More information

Multicast Communications. Tarik Čičić, 4. March. 2016

Multicast Communications. Tarik Čičić, 4. March. 2016 Multicast Communications Tarik Čičić, 4. March. 06 Overview One-to-many communication, why and how Algorithmic approach: Steiner trees Practical algorithms Multicast tree types Basic concepts in multicast

More information

Interprocess Communication Tanenbaum, van Steen: Ch2 (Ch3) CoDoKi: Ch2, Ch3, Ch5

Interprocess Communication Tanenbaum, van Steen: Ch2 (Ch3) CoDoKi: Ch2, Ch3, Ch5 Interprocess Communication Tanenbaum, van Steen: Ch2 (Ch3) CoDoKi: Ch2, Ch3, Ch5 Fall 2008 Jussi Kangasharju Chapter Outline Overview of interprocess communication Remote invocations (RPC etc.) Message

More information

Chapter 2 Distributed Computing Infrastructure

Chapter 2 Distributed Computing Infrastructure Slide 2.1 Web Serv vices: Princ ciples & Te echno ology Chapter 2 Distributed Computing Infrastructure Mike P. Papazoglou mikep@uvt.nl Slide 2.2 Topics Distributed computing and Internet protocols The

More information

System Programming. Introduction to computer networks

System Programming. Introduction to computer networks Content : by Dr. B. Boufama School of Computer Science University of Windsor Instructor: Dr. A. Habed adlane@cs.uwindsor.ca http://cs.uwindsor.ca/ adlane/60-256 Content Content 1 Introduction to Computer

More information

Introduction to Open System Interconnection Reference Model

Introduction to Open System Interconnection Reference Model Chapter 5 Introduction to OSI Reference Model 1 Chapter 5 Introduction to Open System Interconnection Reference Model Introduction The Open Systems Interconnection (OSI) model is a reference tool for understanding

More information

Outline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4

Outline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4 EEC-681/781 Distributed Computing Systems Lecture 4 Department of Electrical and Computer Engineering Cleveland State University wenbing@ieee.org Outline Inter-process communications Computer networks

More information

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan Chapter3: OSI Reference Model: Network Software: Network

More information

Computer Networks. More on Standards & Protocols Quality of Service. Week 10. College of Information Science and Engineering Ritsumeikan University

Computer Networks. More on Standards & Protocols Quality of Service. Week 10. College of Information Science and Engineering Ritsumeikan University Computer Networks More on Standards & Protocols Quality of Service Week 10 College of Information Science and Engineering Ritsumeikan University Introduction to Protocols l A protocol is a set of rules

More information

Computer Communication & Networks / Data Communication & Computer Networks Week # 03

Computer Communication & Networks / Data Communication & Computer Networks Week # 03 Computer Communication & Networks / Data Communication & Computer Networks Week # 03 M.Nadeem Akhtar CS & IT Department The University of Lahore Email: nadeem.akhtar@cs.uol.edu.pk URL-https://sites.google.com/site/nadeemuolcsccn/home

More information

Computer Communication Networks

Computer Communication Networks Contents ELL 785 Computer Communication Networks Introduction Lecture 1 Taxonomy of communication works Computer Communication Networks Building a work ed work architecture 1-1 Introduction PC server wireless

More information

Distributed Systems 8. Remote Procedure Calls

Distributed Systems 8. Remote Procedure Calls Distributed Systems 8. Remote Procedure Calls Paul Krzyzanowski pxk@cs.rutgers.edu 10/1/2012 1 Problems with the sockets API The sockets interface forces a read/write mechanism Programming is often easier

More information

Digital Communication Networks

Digital Communication Networks Digital Communication Networks MIT PROFESSIONAL INSTITUTE, 6.20s July 25-29, 2005 Professor Muriel Medard, MIT Professor, MIT Slide 1 Digital Communication Networks Introduction Slide 2 Course syllabus

More information

The Transport Layer: User Datagram Protocol

The Transport Layer: User Datagram Protocol The Transport Layer: User Datagram Protocol CS7025: Network Technologies and Server Side Programming http://www.scss.tcd.ie/~luzs/t/cs7025/ Lecturer: Saturnino Luz April 4, 2011 The UDP All applications

More information

OSI Layers (Open System Interconnection)

OSI Layers (Open System Interconnection) OSI Layers (Open System Interconnection) What is a Network? A network refers to two or more connected computers that can share resources such as data, a printer, an Internet connection, applications, or

More information

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer Layering in Networked computing OSI Model TCP/IP Model Protocols at each layer Learning outcomes Understand the need of layering in Networked computing Understand the OSI model and the tcp/ip model Understand

More information

Network Management & Monitoring

Network Management & Monitoring Network Management & Monitoring Network Delay These materials are licensed under the Creative Commons Attribution-Noncommercial 3.0 Unported license (http://creativecommons.org/licenses/by-nc/3.0/) End-to-end

More information

Data Networks. Lecture 1: Introduction. September 4, 2008

Data Networks. Lecture 1: Introduction. September 4, 2008 Data Networks Lecture 1: Introduction September 4, 2008 Slide 1 Learning Objectives Fundamental aspects of network Design and Analysis: Architecture: layering, topology design, switching mechanisms Protocols:

More information

Lecture 2: Internet Structure

Lecture 2: Internet Structure Lecture 2: Internet Structure COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose and K.W. Ross,

More information

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 L1: Introduction Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 8/15/2016 CSCI 445 Fall 2016 1 Acknowledgements Some pictures used in this presentation

More information

Architecture of Software Intensive Systems

Architecture of Software Intensive Systems Architecture of Software Intensive Systems Interaction styles Johan Lukkien, Rudolf Mak 1 Goals of this lecture Students have an overview of accepted interaction styles (communication mechanisms) and their

More information

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 8

CIS 551 / TCOM 401 Computer and Network Security. Spring 2007 Lecture 8 CIS 551 / TCOM 401 Computer and Network Security Spring 2007 Lecture 8 Announcements Reminder: Project 1 is due on tonight by midnight. Midterm 1 will be held next Thursday, Feb. 8th. Example midterms

More information

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services

MTAT Enterprise System Integration. Lecture 2: Middleware & Web Services MTAT.03.229 Enterprise System Integration Lecture 2: Middleware & Web Services Luciano García-Bañuelos Slides by Prof. M. Dumas Overall view 2 Enterprise Java 2 Entity classes (Data layer) 3 Enterprise

More information

OSI Reference Model. Computer Networks lab ECOM Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief

OSI Reference Model. Computer Networks lab ECOM Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief Islamic University of Gaza Faculty of Engineering Computer Engineering Department Computer Networks lab ECOM 4121 OSI Reference Model Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief May /2010 OSI

More information

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert

A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert A common issue that affects the QoS of packetized audio is jitter. Voice data requires a constant packet interarrival rate at receivers to convert data into a proper analog signal for playback. The variations

More information

Middleware and Interprocess Communication

Middleware and Interprocess Communication Middleware and Interprocess Communication Reading Coulouris (5 th Edition): 41 4.1, 42 4.2, 46 4.6 Tanenbaum (2 nd Edition): 4.3 Spring 2015 CS432: Distributed Systems 2 Middleware Outline Introduction

More information

CSci Introduction to Distributed Systems. Communication: RPC

CSci Introduction to Distributed Systems. Communication: RPC CSci 5105 Introduction to Distributed Systems Communication: RPC Today Remote Procedure Call Chapter 4 TVS Last Time Architectural styles RPC generally mandates client-server but not always Interprocess

More information

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications Data and Computer Communications Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based s 1 Need For Protocol Architecture data exchange can involve complex procedures better if task broken into subtasks

More information

SJTU 2018 Fall Computer Networking. Wireless Communication

SJTU 2018 Fall Computer Networking. Wireless Communication SJTU 2018 Fall Computer Networking 1 Wireless Communication Internet Protocol Stack 2 Application: supporting network applications - FTP, SMTP, HTTP Transport: data transfer between processes - TCP, UDP

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

Crossbar switch. Chapter 2: Concepts and Architectures. Traditional Computer Architecture. Computer System Architectures. Flynn Architectures (2)

Crossbar switch. Chapter 2: Concepts and Architectures. Traditional Computer Architecture. Computer System Architectures. Flynn Architectures (2) Chapter 2: Concepts and Architectures Computer System Architectures Disk(s) CPU I/O Memory Traditional Computer Architecture Flynn, 1966+1972 classification of computer systems in terms of instruction

More information

Two Phase Commit Protocol. Distributed Systems. Remote Procedure Calls (RPC) Network & Distributed Operating Systems. Network OS.

Two Phase Commit Protocol. Distributed Systems. Remote Procedure Calls (RPC) Network & Distributed Operating Systems. Network OS. A distributed system is... Distributed Systems "one on which I cannot get any work done because some machine I have never heard of has crashed". Loosely-coupled network connection could be different OSs,

More information

4. The transport layer

4. The transport layer 4.1 The port number One of the most important information contained in the header of a segment are the destination and the source port numbers. The port numbers are necessary to identify the application

More information

Distributed Systems Inter-Process Communication (IPC) in distributed systems

Distributed Systems Inter-Process Communication (IPC) in distributed systems Distributed Systems Inter-Process Communication (IPC) in distributed systems Mathieu Delalandre University of Tours, Tours city, France mathieu.delalandre@univ-tours.fr 1 Inter-Process Communication in

More information

Real-Time Protocol (RTP)

Real-Time Protocol (RTP) Real-Time Protocol (RTP) Provides standard packet format for real-time application Typically runs over UDP Specifies header fields below Payload Type: 7 bits, providing 128 possible different types of

More information

Computer Networking. Chapter #1. Dr. Abdulrhaman Alameer

Computer Networking. Chapter #1. Dr. Abdulrhaman Alameer Computer Networking Chapter #1 Dr. Abdulrhaman Alameer What is Computer Network? It is a collection of computers and devices interconnected by communications channels that facilitate communications among

More information

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet Chapter 2 - Part 1 The TCP/IP Protocol: The Language of the Internet Protocols A protocol is a language or set of rules that two or more computers use to communicate 2 Protocol Analogy: Phone Call Parties

More information

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO).

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Network Models The OSI Model Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO). Model for understanding and developing computer-to-computer communication

More information

Networks Fall This exam consists of 10 problems on the following 13 pages.

Networks Fall This exam consists of 10 problems on the following 13 pages. CSCI 466 Final Networks Fall 2011 Name: This exam consists of 10 problems on the following 13 pages. You may use your two- sided hand- written 8 ½ x 11 note sheet during the exam and a calculator. No other

More information

Enterprise Integration with Workflow Management

Enterprise Integration with Workflow Management Read in Notes Mode Enterprise Integration with Fred A. Cummins November 1,1999 EDS, 1999 1, using message brokers, has emerged as a commonly accepted approach to integration of independently developed

More information

Chapter -4 OSI Reference Model

Chapter -4 OSI Reference Model Chapter -4 OSI Reference Model Objectives Concept of Reference Model. OSI Reference Model Concept. Layers of OSI Reference Model. 4.1 Introduction Layered Architecture, Peer-to- Peer Processes, Interfaces

More information

Networking, Java threads and synchronization. PRIS lecture 4 Fredrik Kilander

Networking, Java threads and synchronization. PRIS lecture 4 Fredrik Kilander Networking, Java threads and synchronization PRIS lecture 4 Fredrik Kilander OSI Application Presentation Session Transport Network Data link Physical TCP/IP Application Transport Internet Host-to-network

More information

CS610- Computer Network Solved Subjective From Midterm Papers

CS610- Computer Network Solved Subjective From Midterm Papers Solved Subjective From Midterm Papers May 08,2012 MC100401285 Moaaz.pk@gmail.com Mc100401285@gmail.com PSMD01 CS610- Computer Network Midterm Examination - Fall 2011 1. Where are destination and source

More information

Chapter 2 Network Models 2.1

Chapter 2 Network Models 2.1 Chapter 2 Network Models 2.1 Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 2-1 LAYERED TASKS We use the concept of layers in our daily life. As an example,

More information

Last Lecture. Network Architecture: Layers. This Lecture. In the sending host (2) In the sending host

Last Lecture. Network Architecture: Layers. This Lecture. In the sending host (2) In the sending host Chapter 7.B and 7.C Architecture: Layers Prof. Dina Katabi Last Lecture We learned how to share the network infrastructure between many connections/flows We also learned about the implications of the sharing

More information

Indirect Communication

Indirect Communication Indirect Communication Today l Space and time (un)coupling l Group communication, pub/sub, message queues and shared memory Next time l Distributed file systems xkdc Indirect communication " Indirect communication

More information

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005 Transport Layer For a connection on a host (single IP address), there exist many entry points through which there may be many-to-many connections. These are called ports. A port is a 16-bit number used

More information

Communicating over the Network

Communicating over the Network Communicating over the Network Network Fundamentals Chapter 2 Version 4.0 1 Network Structure The elements of communication 3 common elements of communication Message source people/electronic devices need

More information

EEC-484/584 Computer Networks

EEC-484/584 Computer Networks EEC-484/584 Computer Networks Lecture 2 Wenbing Zhao wenbing@ieee.org (Lecture nodes are based on materials supplied by Dr. Louise Moser at UCSB and Prentice-Hall) Misc. Interested in research? Secure

More information

Scribe Notes -- October 31st, 2017

Scribe Notes -- October 31st, 2017 Scribe Notes -- October 31st, 2017 TCP/IP Protocol Suite Most popular protocol but was designed with fault tolerance in mind, not security. Consequences of this: People realized that errors in transmission

More information

E&CE 358: Tutorial 1. Instructor: Sherman (Xuemin) Shen TA: Miao Wang

E&CE 358: Tutorial 1. Instructor: Sherman (Xuemin) Shen TA: Miao Wang E&CE 358: Tutorial 1 Instructor: Sherman (Xuemin) Shen TA: Miao Wang Email: m59wang@uwaterloo.ca 1 About Tutorials TA: Miao Wang Office: EIT 3133; Tutorials: Th 4:30 5:20 pm Topics Supplementary knowledge

More information

Component 4: Introduction to Information and Computer Science

Component 4: Introduction to Information and Computer Science Component 4: Introduction to Information and Computer Science Unit 7: Networks & Networking (Part 5 of 5) Unit Objectives Understand the history of networks and their evolution. List and describe the various

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Need For Protocol Architecture

Need For Protocol Architecture Chapter 2 CS420/520 Axel Krings Page 1 Need For Protocol Architecture E.g. File transfer Source must activate communications path or inform network of destination Source must check destination is prepared

More information

Cross Layer Protocol Design. Radio Communication III

Cross Layer Protocol Design. Radio Communication III Cross Layer Protocol Design Radio Communication III The layered world of protocols The ISO OSI model OSI model Introduction» The open systems interconnection reference model (OSI model) describes a layered

More information

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START Page 1 of 11 MIDTERM EXAMINATION #1 OCT. 16, 2013 COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2013-75 minutes This examination

More information

MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS. Re: Medium Access Control Task Group Call for Contributions Session #4

MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS. Re: Medium Access Control Task Group Call for Contributions Session #4 Project Title Date Submitted IEEE 802.16 Broadband Wireless Access Working Group MAC Protocol Proposal for Fixed BWA Networks Based on DOCSIS 1999-10-29 Source Phil Guillemette SpaceBridge Networks Corporation

More information

Assignment #1. Csci4211 Spring Due on Feb. 13th, Notes: There are five questions in this assignment. Each question has 10 points.

Assignment #1. Csci4211 Spring Due on Feb. 13th, Notes: There are five questions in this assignment. Each question has 10 points. Assignment #1 Csci4211 Spring 2017 Due on Feb. 13th, 2017 Notes: There are five questions in this assignment. Each question has 10 points. 1. (10 pt.) Describe the special properties of the following transmission

More information

Distributed Systems. Pre-Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2015

Distributed Systems. Pre-Exam 1 Review. Paul Krzyzanowski. Rutgers University. Fall 2015 Distributed Systems Pre-Exam 1 Review Paul Krzyzanowski Rutgers University Fall 2015 October 2, 2015 CS 417 - Paul Krzyzanowski 1 Selected Questions From Past Exams October 2, 2015 CS 417 - Paul Krzyzanowski

More information

COMPONENTS OF DATA COMMUNICATION

COMPONENTS OF DATA COMMUNICATION COMPONENTS OF DATA COMMUNICATION ANALOG AND DIGITAL TRANSMISSION An analog signal is one that is continuous with respect to time and may take on any value within a given range of values. Eg Human voice.

More information

Defining Networks with the OSI Model. Module 2

Defining Networks with the OSI Model. Module 2 Defining Networks with the OSI Model Module 2 Objectives Skills Concepts Objective Domain Description Objective Domain Number Understanding OSI Basics Defining the Communications Subnetwork Defining the

More information

Introduction to Networking

Introduction to Networking Introduction to Networking Chapters 1 and 2 Outline Computer Network Fundamentals Defining a Network Networks Defined by Geography Networks Defined by Topology Networks Defined by Resource Location OSI

More information