1 / 75

COS 420

COS 420. DAY 26. Agenda. Group Project Discussion Final Paper Due Monday, May 3, 8AM User Manual Protocol Definition Program requirements Technical Specifications Applications and Presentation Due May 5 Noon Final Exam available Thursday April 29 Due Tuesday May 5 noon

Télécharger la présentation

COS 420

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COS 420 DAY 26

  2. Agenda • Group Project Discussion • Final Paper Due Monday, May 3, 8AM • User Manual • Protocol Definition • Program requirements • Technical Specifications • Applications and Presentation Due May 5 Noon • Final Exam available Thursday April 29 • Due Tuesday May 5 noon • Assignment 4 is Due • Today we will discuss HTTP, RTP, SNMP and Protocol Dependencies

  3. PART XXVIII APPLICATIONS: WORLD WIDE WEB (HTTP)

  4. World Wide Web • Distributed hypermedia paradigm • Major service on the Internet • Use surpassed file transfer in 1995

  5. Web Page Identifier • Known as Uniform Resource Locator (URL) • Encodes • Access protocol to use • Domain name of server • Protocol port number (optional) • Path through server’s file system (optional) • Parameters (optional) • Query (optional) • Format • http: // hostname [: port] / path [; parameters] [? query]

  6. Web Standards • Separate standards for • Representation • Transfer

  7. Representation • HyperText Markup Language (HTML) • Document contains text plus embedded links • HTML gives guidelines for display, not details • Consequence: two browsers may choose to display same document differently

  8. Transfer • Used between browser and web server • Protocol is HyperText Transfer Proto (HTTP) • Runs over TCP

  9. HTTP Characteristics • Application level • Request/response paradigm • Stateless • Permits bi-directional transfer • Offers capability negotiation • Support for caching • Support for intermediaries

  10. HTTP Operation • Browser sends requests to which server replies • Typical request: GET used to fetch document • Example GET http://www.cs.purdue.edu/people/comer/ HTTP/1.1 • Relative URL also permitted GET /people/comer/ HTTP/1.1

  11. Error Messages • HTTP includes set of error responses • Server can format error as HTML message for user or use internal form and allow browser to format message

  12. Persistent Connections • HTTP version 1.0 uses one TCP connection per transfer • Browser forms TCP connection to server • Browser sends GET request • Server returns header describing item • Server returns item • Server closes connection • HTTP version 1.1 permits connection to persist across multiple requests

  13. HTTP Headers • HTTP uses MIME-like headers to carry meta information. Both browsers and servers send headers that allow them to negotiate agreement on the document representation and encoding to be used.

  14. Handing Persistence • To allow a TCP connection to persist through multiple requests and responses, HTTP sends a length before each response. If it does not know the length, a server informs the client, sends the response, and then closes the connection.

  15. Headers And Length Encoding • HTTP headers use same syntax as email headers • Lines of text followed by blank line • Lines of text have form keyword:information • For persistent connections header specifies length (in octets) of data item that follows

  16. Items That Can Appear In An HTTP Header

  17. Example Of Header Content-Length: 34 Content-Language: english Content-Encoding: ascii <HTML> A trivial example. </HTML> • Note: if length is not known in advance, server can inform browser that connection will close following transfer • Connection: close

  18. Negotiation • Either server or browser can initiate • Items sent in headers • Can specify representations that are acceptable with preference value assigned to each • Example Accept: text/html, text/plain; q=0.5, text/x-dvi; q=0.8

  19. Items For Negotiation • Accept-Encoding: • Accept-Charset: • Accept-Language:

  20. Conditional Request • Allows browser to check cached copy for freshness • Eliminates useless latency • Sends If-Modified-Since in header of GET request • Example If-Modified-Since: Wed, 31 Dec 2003 05:00:01 GMT

  21. Proxy Servers • Browser can be configured to contact proxy • Permits caching for entire organization • Server can specify maximum number of proxies along path (including none)

  22. Caching Of Web Pages • Caching essential to efficiency • Server specifies • Whether page can be cached • Maximum time page can be kept • Intermediate caches and browser cache web pages • Browser can specify maximum age of page (forces intermediate caches to revalidate)

  23. Summary • Web is major application in the Internet • Standard for representation is HTML • Standard for transfer is HTTP • Request-response protocol • Header precedes item • Version 1.1 permits persistent connections • Server specifies length of time item can be cached • Browser can issue conditional request to validate cached item

  24. PART XXIX APPLICATIONS: VOICE AND VIDEO OVER IP (VOIP, RTP, RSVP)

  25. TCP/IP Protocols • Designed for data • Can also handle voice and video • Upcoming application is Voice Over IP (VOIP)

  26. Representation • Voice and video must be converted between analog and digital forms • Typical device is codec (coder/decoder) • Example encoding used by phone system is Pulse Code Modulation (PCM) • Note: 128 second audio clip encoded in PCM requires one megabyte of memory • Codec for voice, known as vocodec, attempts to recognize speech rather than just waveforms

  27. Playback • Internet introduces burstiness • Jitter buffer used to smooth bursts • Protocol support needed

  28. Requirements For Real-Time • Because an IP Internet is not isochronous, additional protocol support is required when sending digitized real-time data. In addition to basic sequence information that allows detection of duplicate or reordered packets, each packet must carry a separate timestamp that tells the receiver the exact time at which the data in the packet should be played.

  29. Illustration Of Jitter Buffer

  30. Real-Time Transport Protocol (RTP) • Internet standard • Provides playback timestamp along with data • Allows receiver to playback items in sequence

  31. RTP Message Format • Each message begins with same header

  32. Terminology And Layering • Name implies that RTP is a transport-layer protocol • In fact • RTP is an application protocol • RTP runs over UDP

  33. Mixing • RTP can coordinate multiple data streams • Intended for combined audio and video • Up to 15 sources • Header specifies mixing

  34. RTP Control Protocol (RTCP) • Required part of RTP • Allows sender and receiver to exchange information about sessions that are in progress • Separate data stream • Uses protocol port number one greater than port number of data stream

  35. RTCP Message Types

  36. RTCP Interaction • Receivers generate receiver report messages • Inform sender about reception and loss • Senders generate sender report • Provide absolute timestamp and relate real time to relative playback timestamp

  37. VOIP • RTP used for encoding and transfer • Also need signaling protocol for • Dialing • Answering a call • Call forwarding • Gateway used to connect IP telephone network to Public Switched Telephone Network (PSTN) • PSTN uses SS7 for signaling

  38. Standards For IP Telephony • H.323 • SIP

  39. H.323 ITU standard • Set of many protocols • Major protocols specified by H.323 include

  40. How H.323 Protocols Fit Together

  41. Session Initiation Protocol (SIP) • IETF standard • Alternative to H.323 • Less functionality • Much smaller • Permits SIP telephone to make call • Does not require RTP for encoding

  42. Session Description Protocol (SDP) • Companion to SIP • Specified detail such as • Media encoding • Protocol port numbers • Multicast addresses

  43. Quality Of Service (QoS) • Statistical guarantee of performance • Requires changes to underlying Internet infrastructure • Proponents claim it is needed for telephony • Others claim only larger bandwidth will solve the problem

  44. Resource ReSerVation Protocol (RSVP) • IETF response to ATM • End-to-end QoS guarantees • Abstraction is unidirectional flow • Initiated by endpoint

  45. RSVP Requests • An endpoint uses RSVP to request a simplex flow through an IP internet with specified QoS bounds. If routers along the path agree to honor the request, they approve it; otherwise, they deny it. If an application needs QoS in two directions, each endpoint must use RSVP to request a separate flow.

  46. Note About RSVP • RSVP defines • Messages endpoint sends to router to request QoS • Messages routers send to other routers • Replies • RSVP does not specify how enforcement done • Separate protocol needed

  47. Common Open Policy Services (COPS) • Proposed enforcement protocol for RSVP • Known as traffic policing • Uses policy server • Checks data sent on flow to ensure the flow does not exceed pre-established bounds

  48. Summary • Codec translates between analog and digital forms • RTP used to transfer real-time data • RTP adds timestamp that sender uses to determine playback time • RTCP is companion protocol for RTP that senders and receivers use to control and coordinate data transfer • RSVP and COPS provide quality of service guarantees

  49. PART XXX APPLICATIONS: INTERNET MANAGEMENT (SNMP)

  50. Management Protocols • Early network systems used two approaches • Separate, parallel management network • Link-level management commands • TCP/IP pioneered running management protocols at the application layer • Motivation: provide internet-wide capability instead of single network capability

More Related