Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

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

2 Understanding Networked Applications: A First Course Algorithms and protocols by David G. Messerschmitt

3 Understanding Networked Applications A First Course 3 Algorithm Specified sequence of steps that –accomplish a designated task –in a finite number of steps Representation: –simple algorithm: flowchart –complicated algorithm: program

4 Understanding Networked Applications A First Course 4 Start turn Throw dice Move token number of squares indicated on dice Land on “go to jail”? Move to “jail” square Do not move; follow policies for square (like “pay rent”) Finish turn Yes No Example: one turn at monopoly

5 Understanding Networked Applications A First Course 5 Start Action Finish Decision Finish Action Start Finish Test Action Start SequenceSelection Loop Algorithm building blocks Programming languages support these three building blocks

6 Understanding Networked Applications A First Course 6 Protocol Distributed algorithm realized by two or more modules to coordinate their actions or accomplish some shared task Module interoperability requires a protocol –Prescribed order of method invocations –Part of interface documentation

7 Understanding Networked Applications A First Course 7 Player 1Player 2 Time One-turn algorithm Monopoly players protocol This is a protocol interaction diagram

8 Understanding Networked Applications A First Course 8 Application and infrastructure Internally, the network uses protocols to implement the services it provides The application defines its own application-level protocols

9 Understanding Networked Applications A First Course 9 Three simple protocols One-way message: send-receive Two-way interaction: request-response Push: publish-subscribe

10 Understanding Networked Applications A First Course 10 ClientServer Time send receive request response subscribe responses

11 Understanding Networked Applications A First Course 11 HTTP server HTTP client (browser) HTML documents  User activates URL  HTTP request  HTTP response (embedded document)  Browser displays document (if HTML) or invokes “helper application” Example: HTTP

12 Understanding Networked Applications A First Course 12 Example: Stock trading What is application protocol? StockTraderCustomer Customer wants to purchase 10 shares of MSFT if price is below $90

13 Understanding Networked Applications: A First Course Locating things by David G. Messerschmitt

14 Understanding Networked Applications A First Course 14 Three ways of locating things Name –“Joe Bloe” Address –“1299 Hearst St, Berkeley, CA” Reference –“Postmaster of Berkeley CA”

15 Understanding Networked Applications A First Course 15 Name Symbolic (character string) representation Easy for people to remember or guess Identifies but does not locate directly –Distinction important for mobile entities Not unique: entities can have more than one name (called aliases)

16 Understanding Networked Applications A First Course 16 Hierarchical names Hierarchy makes names easier to remember or guess Host domain names: –“info.sims.berkeley.edu” –designates administrative hierarchy File names: –“c:\My Documents\Docs\Resume.doc” –designates folder hierarchy

17 Understanding Networked Applications A First Course 17 Address Route or path to entity –is directly specified, or –can be inferred Independent of who or what is locating entity Topological specification

18 Understanding Networked Applications A First Course 18 Example 1 2 3 4 Path fromtois (1,2,2,2,1,1,1,1) Not an address, because it depends on starting point

19 Understanding Networked Applications A First Course 19 Example Address ofis (2,5) (1,1) (1,2) (1,3) (1,4) (1,4) (2,1) (2,2) (2,3) (2,4) (2,5) Route fromcan be inferred

20 Understanding Networked Applications A First Course 20 Reference Abstract representation of an entity Interaction is with representation –infrastructure arranges redirection to actual entity –especially appropriate for things that move

21 Understanding Networked Applications A First Course 21 Client Server address Reference

22 Understanding Networked Applications A First Course 22 Name services Name service 1. name 2. address or reference 3. interaction


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

Similar presentations


Ads by Google