skills: none concepts: protocol, hypertext transfer protocol, standard this work is licensed under a...

14
Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution- Noncommercial-Share Alike 3.0 License. HTTP, the hypertext transfer protocol

Post on 19-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Skills: noneConcepts: protocol, hypertext transfer protocol, standard

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.

HTTP, the hypertext transfer protocol

Page 2: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Where does this topic fit?

• Internet concepts– Applications– Technology– Implications

• Internet skills– Application development – Content creation– User skills

Page 3: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

1. Establish a temporary connection between the client and server 2. Client sends the request to the server3. Server returns the requested page or an error message4. Client displays whatever the server returns5. Disconnect – drop the connection

Client Server

request

page

Summary: retrieving a Web page

Page 4: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

The client-server conversation

• I would like to open a connection

• GET <file name>

• Display response• Close connection

• OK

• Send page or error message

• OK

Client Server

Page 5: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

The HTTP GET command

GET /fac/lpress/shortbio.htm HTTP/1.0

Page 6: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Who invented HTTP?

Do you know his name?

Page 7: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Formal conversation protocols

Describe the protocol governing a conversation with Queen Elizabeth.

Page 8: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Protocols establish standards, facilitating competition

OperaChrome Safari FirefoxInternet Explorer

What are some other standards that facilitate competition?

Page 9: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Standards yield competition

Page 10: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Some other application protocols

Protocol Application

HTTP: Hypertext Transfer Retrieve and view Web pages

FTP: File Transfer Copy files from client to server or from server to client

SMTP: Simple Mail Transport Send email

POP: Post Office Read email

Page 11: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

A complete page request

GET /fac/lpress/shortbio.htm HTTP/1.0

Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword,

Accept-Language: ko,en-us;q=0.5

User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)

Host: som.csudh.edu

Proxy-Connection: Keep-Alive

Page 12: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Summary

Page 13: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Self-study questions

1. What would happen if the client program had a bug and sent a request with the command name spelled GETX instead of GET?

2. As a Web user, do you have to be concerned with the details of HTTP?

3. As a programmer writing a Web client, do you have to be concerned with the details of HTTP?

4. As a programmer writing a Web server, do you have to be concerned with the details of HTTP?

5. As a user of a Web service, do you have to be concerned with the details of HTTP?

Page 14: Skills: none Concepts: protocol, hypertext transfer protocol, standard This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike

Resources

Definition of the HTTP standard:http://www.w3.org/Protocols/