Communication Paradigms. What is a communication paradigm?

Communication Paradigms INF 5040 autumn 2010 lecturer: Roman Vitenberg INF5040, Roman Vitenberg 1 What is a communication paradigm?  It is a set...
24 downloads 0 Views 384KB Size
Communication Paradigms

INF 5040 autumn 2010

lecturer: Roman Vitenberg

INF5040, Roman Vitenberg

1

What is a communication paradigm?  It is a set of communication primitives  Network adapters allow us to send data using MAClayer primitives  Transport layer endows us with sockets  How could we raise the abstraction further?

 Study of a communication paradigm:  Properties  Target applications  Underlying implementation concepts INF5040, Roman Vitenberg

INF 5040

2

1

Communication properties  Addressing scheme and space decoupling  Underlying protocol addresses (IP) – no decoupling  Logical aliases – partial decoupling – DNS and NAT translation, service names, email aliases

 Content-based addressing – full decoupling – Interactions are declarative

 Persistence level  Fully persistent  Fully transient  Intermediate INF5040, Roman Vitenberg

3

Communication properties Synchrony  Fully synchronous  Fully asynchronous  Intermediate

sender app

receiver app

middleware & os

– middleware-level sync – man-in-the-middle – others

middleware & os

network media

Time decoupling INF5040, Roman Vitenberg

INF 5040

4

2

(some)

Communication paradigms

Remote procedure call  Object-based (CORBA, Java RMI, DCOM)  Earlier data-based (DCE, Sun RPC)

Message-oriented communication Stream-oriented communication Software-based distributed shared memory (DSM) INF5040, Roman Vitenberg

5

Message-oriented communication paradigms

(some)

Raw socket programming Message-passing interface (MPI) Message-oriented middleware (MOM) Publish-subscribe communication

INF5040, Roman Vitenberg

INF 5040

6

3

Raw socket programming Addressing scheme: IP addresses No time decoupling Transient Mainly used for building higher-level abstractions

INF5040, Roman Vitenberg

7

Message-programming interface (MPI)  Addressing scheme  A group of nodes assigned logical addresses

 Failures are considered fatal  Transient without time decoupling  Data-oriented (advanced data manipulation)  Basic API: MPI_send, MPI_recv  Data-oriented API: MPI_scatter,MPI_gather

 Use: parallel computation in fast networks INF5040, Roman Vitenberg

INF 5040

8

4

Message-oriented middleware (MOM) Addressing scheme: logical queue name Persistent Full time decoupling put(msg,dest queue name) Sender Queuing layer OS layer

get(local queue name) Receiver Queuing layer OS layer

INF5040, Roman Vitenberg

9

Routing in MOM Handles queue name to address translation  Hierarchical names: {queue manager, internal id}

Message brokers perform inter-domain routing with format conversion Sender Queuing layer OS layer

Message broker

INF5040, Roman Vitenberg

INF 5040

Receiver Queuing layer OS layer

10

5

MOM applications & implementations Implementations: IBM MQ, Oracle AQ The E-mail application Workflow and other collaborative apps Federated information systems Query

DB 1

DB 3

DB 2 INF5040, Roman Vitenberg

11

Publish-subscribe communication subscribers

publishers

Pub-sub service IBM: -3,75

S1: “IBM” & v

Suggest Documents