Presentation is loading. Please wait.

Presentation is loading. Please wait.

Understanding Networked Applications: A First Course Chapter 12 by David G. Messerschmitt.

Similar presentations


Presentation on theme: "Understanding Networked Applications: A First Course Chapter 12 by David G. Messerschmitt."— Presentation transcript:

1 Understanding Networked Applications: A First Course Chapter 12 by David G. Messerschmitt

2 Understanding Networked Applications: A First Course Communication services by David G. Messerschmitt

3 Understanding Networked Applications A First Course 3 Example communication services Messages Queuing and multiplexing Message with reply –Remote method invocation Conversation Broadcast

4 Understanding Networked Applications A First Course 4 Some objectives Allow modules to interact in the same way across different hosts as on a single host Make it easier to develop applications by capturing common generic needs Support a range of applications with distinct needs

5 Understanding Networked Applications A First Course 5 Message The smallest unit of information meaningful to the sender and recipient –Recipient must be ready and listening Directs or informs the recipient –Pure push model Employs a send-receive protocol

6 Understanding Networked Applications A First Course 6 Supporting deferred applications Queuing –Queuing allows a message to be sent even though the recipient is not waiting –The message sits in a queue somewhere in the infrastructure until it is actively retrieved by the recipient –Combines send-receive and request-reply protocols

7 Understanding Networked Applications A First Course 7 Participants in message with queuing SenderRecipient Queue Request/ response Send/ receive Infrastructure Recipient can access message whenever it wants Sender can send message whenever it wants

8 Understanding Networked Applications A First Course 8 Multiplexing –Allows recipient to receive messages from two or more senders –How are the senders identified? –Presumes queuing: what if two messages are sent simultaneously? –Supported by Message Oriented Middleware (MOM)

9 Understanding Networked Applications A First Course 9 Sender1 Recipient Sender2 Mux & queue Multiplexing and queuing Infrastructure Recipient deals with one message at a time even if coming from many senders

10 Understanding Networked Applications A First Course 10 Workers Administrative assistants Purchasing Receiving Example application: workflow

11 Understanding Networked Applications A First Course 11 What message is not Delivery may not be guaranteed No shared context of messages from same sender to recipient –Application is free to create that context on its own –Messages may not be delivered in the same order as sent

12 Understanding Networked Applications A First Course 12 Message with reply Service couples two messages: –Request and coupled response message –Sender freed of burden of associating response Requests information or a service –Pure pull model Immediate –Recipient presumes sender is waiting for reply and responds as quickly as possible

13 Understanding Networked Applications A First Course 13 method: parameters return_values Method invocation Remote method invocation (RMI) An action object-oriented programming is called a method RMI

14 Understanding Networked Applications A First Course 14 method,parameters returns Client objectServer object method: parameters -> return_values Computes method() Time Blocked: can’t do anything else = Blocked waiting for response= Working on request Sender is blocked waiting for response

15 Understanding Networked Applications A First Course 15 Send/receive Request/ response Queue = Work on message or request = Blocked waiting for response Send/receive Request/ response Message waiting SenderRecipient SenderRecipient Comparison

16 Understanding Networked Applications A First Course 16 Conversation Two-way exchange of messages Messages in one direction are influenced by messages in the other To maintain conversation –Messages should be delivered reliably –Messages should be delivered in the same order as sent –No coupling of replies with messages

17 Understanding Networked Applications A First Course 17 Establish Disestablish Session protocol Conversation A session typically provides guaranteed ordered delivery to maintain proper context

18 Understanding Networked Applications A First Course 18 Some advantages of sessions Aids application by managing a shared context for a conversation –Identification, ordering, reliable delivery Reduces overhead –Example: only one name server query Security (Chapter 8) Quality of service (Chapter 11)

19 Understanding Networked Applications A First Course 19 Examples What are examples of applications that would naturally leverage: –Messages? –Queuing and multiplexing? –Message with reply? –Conversation?

20 Understanding Networked Applications A First Course 20 Audio coder Audio decoder Video coder Video decoder Storage One (big) message Record Playback Multimedia record-store- playback

21 Understanding Networked Applications A First Course 21 Audio coder Audio decoder Video coder Video decoder Streaming multimedia

22 Understanding Networked Applications A First Course 22 Time Accumulate audio in message Send message Receive message Playback audio in message Delay A session supports streaming multimedia

23 Understanding Networked Applications A First Course 23 Delay and latency Time Message latency = time from sending of message until it is received in its entirety Delay = time elapsing between an event (or series of events) and its (their) representation

24 Understanding Networked Applications A First Course 24 Relationship of delay and latency Time Latency Delay Delay = latency (of network) + message accumulation time If delay is important, keep the messages short!


Download ppt "Understanding Networked Applications: A First Course Chapter 12 by David G. Messerschmitt."

Similar presentations


Ads by Google