DOC PREVIEW
USC EE 450 - EE450-Discussion04

This preview shows page 1-2-3-4-25-26-27-52-53-54-55 out of 55 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 55 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 55 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 55 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 55 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 55 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 55 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 55 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 55 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 55 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 55 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 55 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 55 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Discussion Session #4 EE450: Computer Networks Topic: Network Applications 1Some network apps v e-mail v web v instant messaging v remote login v P2P file sharing v multi-user network games v streaming stored video (YouTube) v voice over IP v real-time video conferencing v cloud computing v … v … v 2Creating a network app write programs that § run on (different) end systems § communicate over network § e.g., web server software communicates with browser software No need to write software for network-core devices § network-core devices do not run user applications § applications on end systems allows for rapid app development, propagation application transport network data link physical application transport network data link physical application transport network data link physical 3Processes communicating process: program running within a host. v within same host, two processes communicate using inter-process communication (defined by OS). v processes in different hosts communicate by exchanging messages client process: process that initiates communication server process: process that waits to be contacted v aside: applications with P2P architectures have client processes & server processes 4Web and HTTP First, a review… v web page consists of objects v object can be HTML file, JPEG image, Java applet, audio file,… v web page consists of base HTML-file which includes several referenced objects v each object is addressable by a URL v example URL: www.someschool.edu/someDept/pic.gif host name path name 5HTTP overview HTTP: hypertext transfer protocol v Web’s application layer protocol v client/server model § client: browser that requests, receives, “displays” Web objects § server: Web server sends objects in response to requests PC running Explorer Server running Apache Web server Mac running Navigator 6HTTP overview (continued) Uses TCP: v client initiates TCP connection (creates socket) to server, port 80 v server accepts TCP connection from client v HTTP messages (application-layer protocol messages) exchanged between browser (HTTP client) and Web server (HTTP server) v TCP connection closed HTTP is “stateless” v server maintains no information about past client requests protocols that maintain “state” are complex! v past history (state) must be maintained v if server/client crashes, their views of “state” may be inconsistent, must be reconciled aside 7HTTP connections non-persistent HTTP v at most one object sent over TCP connection. persistent HTTP v multiple objects can be sent over single TCP connection between client, server. 8Nonpersistent HTTP suppose user enters URL: 1a. HTTP client initiates TCP connection to HTTP server (process) at www.someSchool.edu on port 80 2. HTTP client sends HTTP request message (containing URL) into TCP connection socket. Message indicates that client wants object someDepartment/home.index 1b. HTTP server at host www.someSchool.edu waiting for TCP connection at port 80. “accepts” connection, notifying client 3. HTTP server receives request message, forms response message containing requested object, and sends message into its socket time (contains text, references to 10 jpeg images) www.someSchool.edu/someDepartment/home.index 9Nonpersistent HTTP (cont.) 5. HTTP client receives response message containing html file, displays html. Parsing html file, finds 10 referenced jpeg objects 6. Steps 1-5 repeated for each of 10 jpeg objects 4. HTTP server closes TCP connection. time 10Non-Persistent HTTP: Response time definition of RTT: time for a small packet to travel from client to server and back. response time: v one RTT to initiate TCP connection v one RTT for HTTP request and first few bytes of HTTP response to return v file transmission time total = 2RTT+transmit time time to transmit file initiate TCP connection RTT request file RTT file received time time 11Persistent HTTP non-persistent HTTP issues: v requires 2 RTTs per object v OS overhead for each TCP connection v browsers often open parallel TCP connections to fetch referenced objects persistent HTTP v server leaves connection open after sending response v subsequent HTTP messages between same client/server sent over open connection v client sends requests as soon as it encounters a referenced object v as little as one RTT for all the referenced objects 12HTTP request message v two types of HTTP messages: request, response v HTTP request message: § ASCII (human-readable format) request line (GET, POST, HEAD commands) header lines carriage return, line feed at start of line indicates end of header lines GET /index.html HTTP/1.1\r\n Host: www-net.cs.umass.edu\r\n User-Agent: Firefox/3.6.10\r\n Accept: text/html,application/xhtml+xml\r\n Accept-Language: en-us,en;q=0.5\r\n Accept-Encoding: gzip,deflate\r\n Accept-Charset: ISO-8859-1,utf-8;q=0.7\r\n Keep-Alive: 115\r\n Connection: keep-alive\r\n \r\n carriage return character line-feed character 13HTTP response message status line (protocol status code status phrase) header lines data, e.g., requested HTML file HTTP/1.1 200 OK\r\n Date: Sun, 26 Sep 2010 20:09:20 GMT\r\n Server: Apache/2.0.52 (CentOS)\r\n Last-Modified: Tue, 30 Oct 2007 17:00:02 GMT\r\n ETag: "17dc6-a5c-bf716880"\r\n Accept-Ranges: bytes\r\n Content-Length: 2652\r\n Keep-Alive: timeout=10, max=100\r\n Connection: Keep-Alive\r\n Content-Type: text/html; charset=ISO-8859-1\r\n \r\n data data data data data ... 14HTTP response status codes 200 OK § request succeeded, requested object later in this msg 301 Moved Permanently § requested object moved, new location specified later in this msg (Location:) 400 Bad Request § request msg not understood by server 404 Not Found § requested document not found on this server 505 HTTP Version Not Supported v status code appears in 1st line in server->client response message. v some sample codes: 15Trying out HTTP (client side) for yourself 1. Telnet to your favorite Web server: opens TCP connection to port 80 (default HTTP server port) at cis.poly.edu. anything typed in sent to port 80 at cis.poly.edu telnet cis.poly.edu


View Full Document

USC EE 450 - EE450-Discussion04

Download EE450-Discussion04
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 EE450-Discussion04 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 EE450-Discussion04 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?