DOC PREVIEW
CMU 15441 Computer Networking - Lecture

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Page 1Lecture 4: Design Philosophy &Aliti15-441: Computer NetworkingApplicationsLecture Overview• Last time:• Protocol stacks and layering• OSI and TCP/IP models• Application requirements• Application examples• httpp• Project information• Internet Architecture9-6-20072Lecture 4: Design Philosophy & ApplicationsApplications and Application-Layer Protocols• Application: communicating, distributed processesapplicationtransportk• Running in network hosts in “user space”• Exchange messages to implement app• e.g., email, file transfer, the Web•Application-layer protocolsnetworkdata linkphysicalLecture 4: Design Philosophy & Applications 3Applicationlayer protocols• One “piece” of an app• Define messages exchanged by apps and actions taken• User services provided by lower layer protocolsapplicationtransportnetworkdata linkphysicalapplicationtransportnetworkdata linkphysical9-6-2007Client-Server ParadigmTypical network app has two pieces: client and serverClient:applicationtransportnetworkdata linkphysical• Initiates contact with server (“speaks first”)• Typically requests service from server, • For Web, client is implemented in browser; for e-mail, in mail readerrequestLecture 4: Design Philosophy & Applications 4applicationtransportnetworkdata linkphysicalServer:• Provides requested service to client• e.g., Web server sends requested Web page, mail server delivers e-mailreply9-6-2007Page 2Server and ClientServer and Client exchange messages over the network through a common Socket APITCP/UDPServerTCP/UDPClientsgS k t APIkluser spaceportsLecture 4: Design Philosophy & Applications 5TCP/UDPIPEthernet AdapterTCP/UDPIPEthernet AdapterSocket APIhardwarekernel space9-6-2007Network Addressing AnalogyApplications/ServersProfessors at CMUNetwork ProgrammingTelephone Call412-268-8000 ext.123Central NumberApplications/ServersWebPort 80MailPort 25412-268-8000 ext.654IP AddressNetwork NoTelephone NoProfessors at CMUPort No.ExtensionLecture 4: Design Philosophy & Applications 6Central NumberExchangeArea CodeNetwork No.Host Number15-441 Students Clients9-6-2007What Service Does an Application Need?Data loss•Some apps (e.g., audio) canTiming•Some apps (e.g., InternetSome apps (e.g., audio) can tolerate some loss• Other apps (e.g., file transfer, telnet) require 100% reliable data transferSome apps (e.g., Internet telephony, interactive games) require low delay to be “effective”BandwidthLecture 4: Design Philosophy & Applications 7• Some apps (e.g., multimedia) require minimum amount of bandwidth to be “effective”• Other apps (“elastic apps”) make use of whatever bandwidth they get9-6-2007Transport Service Requirements of Common AppsApplication Data loss BandwidthTime Sensitiveno lossno lossno lossloss-tolerantloss-tolerantloss-tolerantelasticelasticelasticaudio: 5Kb-1Mbvideo:10Kb-5Mbsame as above few Kbpsnononoyes, 100’s msecyes, few secsyes, 100’s msecfile transfere-mailweb documentsreal-time audio/videostored audio/videointeractive gamesLecture 4: Design Philosophy & Applications 8no losspelasticyyes and nogfinancial apps9-6-2007Page 3Other Requirements• Network reliabilityNt k i t l b ilbl•Network service must always be available• Security: privacy, denial of service, authentication, …• Scalability.•Scale to large numbers of users traffic flows•Scale to large numbers of users, traffic flows, …• Manageability: monitoring, control, …9-6-20079Lecture 4: Design Philosophy & ApplicationsUser Datagram Protocol(UDP): An AnalogyPostal Mail•Single mailbox to receive UDP• Single socket to receive Postal Mail• Single mailbox to receive Single mailbox to receive messages• Unreliable ☺• Not necessarily in-order delivery• Each letter is independent• Must address each replygmessages• No guarantee of delivery• Not necessarily in-order delivery• Datagram – independent packetsgletters• Unreliable ☺• Not necessarily in-order delivery• Letters sent independently • Must address each replyLecture 4: Design Philosophy & Applications 10pyExample UDP applicationsMultimedia, voice over IP• Must address each packet9-6-2007Transmission Control Protocol (TCP): An Analogy TCP•Reliable–guaranteeTelephone Call•Guaranteed delivery•Reliable –guarantee delivery• Byte stream – in-order delivery• Connection-oriented –single socket per connection•Guaranteed delivery• In-order delivery• Connection-oriented • Setup connection followed by conversationLecture 4: Design Philosophy & Applications 11• Setup connection followed by data transferconversationExample TCP applicationsWeb, Email, Telnet9-6-2007HTTP Basics• HTTP layered over bidirectional byte stream• Almost always TCP• Interaction• Client sends request to server, followed by response from server to client• Requests/responses are encoded in text• Stateless• Server maintains no information about past client requests9-6-200712Lecture 4: Design Philosophy & ApplicationsPage 4How to Mark End of Message?• Size of message  Content-Length•Must know size of transfer in advanceMust know size of transfer in advance• Delimiter  MIME style Content-Type• Server must “escape” delimiter in content• Close connection• Only server can do this9-6-200713Lecture 4: Design Philosophy & ApplicationsHTTP Request9-6-200714Lecture 4: Design Philosophy & ApplicationsHTTP Request• Request line•MethodMethod• GET – return URI• HEAD – return headers only of GET response• POST – send data to the server (forms, etc.)• URI• E.g. http://www.intel-iris.net/index.htmlwith a proxy• E.g. /index.html if no proxy• HTTP version9-6-200715Lecture 4: Design Philosophy & ApplicationsHTTP Request• Request headers•Authorization–authentication infoAuthorization authentication info• Acceptable document types/encodings• From – user email• If-Modified-Since• Referrer – what caused this page to be requested• User-Agent – client software•Blank-lineBlankline• Body9-6-200716Lecture 4: Design Philosophy & ApplicationsPage 5HTTP Request ExampleGET / HTTP/1.1Accept: */*Accept-Language: en-usAccept-Encoding: gzip, deflateUser-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)Host: www.intel-iris.netConnection: Keep-Alive9-6-200717Lecture 4: Design Philosophy & ApplicationsHTTP Response• Status-line• HTTP version• 3 digit response codegp• 1XX – informational• 2XX –


View Full Document

CMU 15441 Computer Networking - Lecture

Documents in this Course
Lecture

Lecture

14 pages

Lecture

Lecture

19 pages

Lecture

Lecture

14 pages

Lecture

Lecture

78 pages

Lecture

Lecture

35 pages

Lecture

Lecture

4 pages

Lecture

Lecture

4 pages

Lecture

Lecture

29 pages

Lecture

Lecture

52 pages

Lecture

Lecture

40 pages

Lecture

Lecture

44 pages

Lecture

Lecture

41 pages

Lecture

Lecture

38 pages

Lecture

Lecture

40 pages

Lecture

Lecture

13 pages

Lecture

Lecture

47 pages

Lecture

Lecture

49 pages

Lecture

Lecture

7 pages

Lecture

Lecture

18 pages

Lecture

Lecture

74 pages

Lecture

Lecture

35 pages

Lecture

Lecture

17 pages

lecture

lecture

13 pages

Lecture

Lecture

21 pages

Lecture

Lecture

14 pages

Lecture

Lecture

53 pages

Lecture

Lecture

52 pages

Lecture

Lecture

40 pages

Lecture

Lecture

11 pages

Lecture

Lecture

20 pages

Lecture

Lecture

39 pages

Lecture

Lecture

10 pages

Lecture

Lecture

40 pages

Lecture

Lecture

25 pages

lecture

lecture

11 pages

lecture

lecture

7 pages

Lecture

Lecture

10 pages

lecture

lecture

46 pages

lecture

lecture

7 pages

Lecture

Lecture

8 pages

lecture

lecture

55 pages

lecture

lecture

45 pages

lecture

lecture

47 pages

lecture

lecture

39 pages

lecture

lecture

33 pages

lecture

lecture

38 pages

lecture

lecture

9 pages

midterm

midterm

16 pages

Lecture

Lecture

39 pages

Lecture

Lecture

14 pages

Lecture

Lecture

46 pages

Lecture

Lecture

8 pages

Lecture

Lecture

40 pages

Lecture

Lecture

11 pages

Lecture

Lecture

41 pages

Lecture

Lecture

38 pages

Lecture

Lecture

9 pages

Lab

Lab

3 pages

Lecture

Lecture

53 pages

Lecture

Lecture

51 pages

Lecture

Lecture

38 pages

Lecture

Lecture

42 pages

Lecture

Lecture

49 pages

Lecture

Lecture

63 pages

Lecture

Lecture

7 pages

Lecture

Lecture

51 pages

Lecture

Lecture

35 pages

Lecture

Lecture

29 pages

Lecture

Lecture

65 pages

Lecture

Lecture

47 pages

Lecture

Lecture

41 pages

Lecture

Lecture

41 pages

Lecture

Lecture

32 pages

Lecture

Lecture

35 pages

Lecture

Lecture

15 pages

Lecture

Lecture

52 pages

Lecture

Lecture

16 pages

Lecture

Lecture

4 pages

lecture

lecture

27 pages

lecture04

lecture04

46 pages

Lecture

Lecture

46 pages

Lecture

Lecture

13 pages

lecture

lecture

41 pages

lecture

lecture

38 pages

Lecture

Lecture

40 pages

Lecture

Lecture

25 pages

Lecture

Lecture

38 pages

lecture

lecture

11 pages

Lecture

Lecture

42 pages

Lecture

Lecture

12 pages

Lecture

Lecture

36 pages

Lecture

Lecture

46 pages

Lecture

Lecture

35 pages

Lecture

Lecture

34 pages

Lecture

Lecture

9 pages

lecture

lecture

49 pages

class03

class03

39 pages

Lecture

Lecture

8 pages

Lecture 8

Lecture 8

42 pages

Lecture

Lecture

20 pages

lecture

lecture

29 pages

Lecture

Lecture

9 pages

lecture

lecture

46 pages

Lecture

Lecture

12 pages

Lecture

Lecture

24 pages

Lecture

Lecture

41 pages

Lecture

Lecture

37 pages

lecture

lecture

59 pages

Lecture

Lecture

47 pages

Lecture

Lecture

34 pages

Lecture

Lecture

38 pages

Lecture

Lecture

28 pages

Exam

Exam

17 pages

Lecture

Lecture

21 pages

Lecture

Lecture

15 pages

Lecture

Lecture

9 pages

Project

Project

20 pages

Lecture

Lecture

40 pages

L13b_Exam

L13b_Exam

17 pages

Lecture

Lecture

48 pages

Lecture

Lecture

10 pages

Lecture

Lecture

52 pages

21-p2p

21-p2p

16 pages

lecture

lecture

77 pages

Lecture

Lecture

18 pages

Lecture

Lecture

62 pages

Lecture

Lecture

25 pages

Lecture

Lecture

24 pages

Project

Project

20 pages

Lecture

Lecture

47 pages

Lecture

Lecture

38 pages

Lecture

Lecture

35 pages

Roundup

Roundup

45 pages

Lecture

Lecture

47 pages

Lecture

Lecture

39 pages

Lecture

Lecture

13 pages

Midterm

Midterm

22 pages

Project

Project

26 pages

Lecture

Lecture

11 pages

Project

Project

27 pages

Lecture

Lecture

10 pages

Lecture

Lecture

50 pages

Lab

Lab

9 pages

Lecture

Lecture

30 pages

Lecture

Lecture

6 pages

r05-ruby

r05-ruby

27 pages

Lecture

Lecture

8 pages

Lecture

Lecture

28 pages

Lecture

Lecture

30 pages

Project

Project

13 pages

Lecture

Lecture

11 pages

Lecture

Lecture

12 pages

Lecture

Lecture

48 pages

Lecture

Lecture

55 pages

Lecture

Lecture

36 pages

Lecture

Lecture

17 pages

Load more
Download Lecture
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?