SlideShare ist ein Scribd-Unternehmen logo
1 von 18
CS 640 1
The World Wide Web
Outline
Background
Structure
Protocols
CS 640 2
WWW Background
• 1989-1990 – Tim Berners-Lee invents the World Wide
Web at CERN
– Means for transferring text and graphics simultaneously
– Client/Server data transfer protocol
• Communication via application level protocol
• System ran on top of standard networking infrastructure
– Text mark up language
• Not invented by Bernes-Lee
• Simple and easy to use
• Requires a client application to render text/graphics
CS 640 3
WWW History contd.
• 1994 – Mark Andreesen invents MOSAIC at National Center for
Super Computing Applications (NCSA)
– First graphical browser
– Internet’s first “killer app”
– Freely distributed
– Became Netscape Inc.
• 1995 (approx.) – Web traffic becomes dominant
– Exponential growth
– E-commerce
– Web infrastructure companies
– World Wide Web Consortium
• Reference: “Web Protocols and Practice”, Krishnamurthy and
Rexford
CS 640 4
WWW Components
• Structural Components
– Clients/browsers – to dominant implementations
– Servers – run on sophisticated hardware
– Caches – many interesting implementations
– Internet – the global infrastructure which facilitates data transfer
• Semantic Components
– Hyper Text Transfer Protocol (HTTP)
– Hyper Text Markup Language (HTML)
• eXtensible Markup Language (XML)
– Uniform Resource Identifiers (URIs)
CS 640 5
Quick Aside – Web server use
Source: Netcraft Server Survey, 2001
CS 640 6
WWW Structure
• Clients use browser application to send URIs via HTTP to servers
requesting a Web page
• Web pages constructed using HTML (or other markup language)
and consist of text, graphics, sounds plus embedded files
• Servers (or caches) respond with requested Web page
– Or with error message
• Client’s browser renders Web page returned by server
– Page is written using Hyper Text Markup Language (HTML)
– Displaying text, graphics and sound in browser
– Writing data as well
• The entire system runs over standard networking protocols
(TCP/IP, DNS,…)
CS 640 7
Uniform Resource Identifiers
• Web resources need names/identifiers – Uniform Resource
Identifiers (URIs)
– Resource can reside anywhere on the Internet
• URIs are a somewhat abstract notion
– A pointer to a resource to which request methods can be applied to
generate potentially different responses
• A request method is eg. fetching or changing the object
• Instance: http://www.foo.com/index.html
– Protocol, server, resource
• Most popular form of a URI is the Uniform Resource
Locator (URL)
– Differences between URI and URL are beyond scope
– RFC 2396
CS 640 8
HTTP Basics
• Protocol for client/server communication
– The heart of the Web
– Very simple request/response protocol
• Client sends request message, server replies with response message
– Stateless
– Relies on URI naming mechanism
• Three versions have been used
– 09/1.0 – very close to Berners-Lee’s original
• RFC 1945 (original RFC is now expired)
– 1.1 – developed to enhance performance, caching, compression
• RFC 2068
– 1.0 dominates today but 1.1 is catching up
CS 640 9
HTTP Request Messages
• GET – retrieve document specified by URL
• PUT – store specified document under given URL
• HEAD – retrieve info. about document specified by URL
• OPTIONS – retrieve information about available options
• POST – give information (eg. annotation) to the server
• DELETE – remove document specified by URL
• TRACE – loopback request message
• CONNECT – for use by caches
CS 640 10
HTTP Request Format
• First type of HTTP message: requests
– Client browsers construct and send message
• Typical HTTP request:
– GET http://www.cs.wisc.edu/index.html HTTP/1.0
request-line ( request request-URI HTTP-version)
headers (0 or more)
<blank line>
body (only for POST request)
CS 640 11
HTTP Response Format
• Second type of HTTP message: response
– Web servers construct and send response messages
• Typical HTTP response:
– HTTP/1.0 301 Moved Permanently
Location: http://www.wisc.edu/cs/index.html
status-line (HTTP-version response-code response-phrase)
headers (0 or more)
<blank line>
body
CS 640 12
HTTP Response Codes
• 1xx – Informational – request received, processing
• 2xx – Success – action received, understood, accepted
• 3xx – Redirection – further action necessary
• 4xx – Client Error – bad syntax or cannot be fulfilled
• 5xx – Server Error – server failed
CS 640 13
HTTP Headers
• Both requests and responses can contain a variable
number of header fields
– Consists of field name, colon, space, field value
– 17 possible header types divided into three categories
• Request
• Response
• Body
• Example: Date: Friday, 27-Apr-01 13:30:01 GMT
• Example: Content-length: 3001
CS 640 14
HTTP/1.0 Network Interaction
• Clients make requests to port 80 on servers
– Uses DNS to resolve server name
• Clients make separate TCP connection for each URL
– Some browsers open multiple TCP connections
• Netscape default = 4
• Server returns HTML page
– Many types of servers with a variety of implementations
– Apache is the most widely used
• Freely available in source form
• Client parses page
– Requests embedded objects
CS 640 15
HTTP/1.1 Performance Enhancements
• HTTP/1.0 is a “stop and wait” protocol
– Separate TCP connection for each file
• Connect setup and tear down is incurred for each file
• Inefficient use of packets
• Server must maintain many connections in TIME_WAIT
• Mogul and Padmanabahn studied these issues in ’95
– Resulted in HTTP/1.1 specification focused on performance
enhancements
• Persistent connections
• Pipelining
• Enhanced caching options
• Support for compression
CS 640 16
Persistent Connections and Pipelining
• Persistent connections
– Use the same TCP connection(s) for transfer of multiple files
– Reduces packet traffic significantly
– May or may not increase performance from client perspective
• Load on server increases
• Pipelining
– Pack as much data into a packet as possible
– Requires length field(s) within header
– May or may not reduce packet traffic or increase performance
• Page structure is critical
CS 640 17
HTML Basics
• Hyper-Text Markup Language
– A subset of Standardized General Markup Language (SGML)
– Facilitates a hyper-media environment
• Embedded links to other documents and applications
• Documents use elements to “mark up” or identify sections of text
for different purposes or display characteristics
• Mark up elements are not seen by the user when page is displayed
• Documents are rendered by browsers
• NOTE: Not all documents in the Web are HTML!
• Most people use WYSIWYG editors (MS Word) to generate
HTML
CS 640 18
HTML Example
<HTML>
<HEAD>
<TITLE> PB’s HomePage </TITLE>
</HEAD>
<BODY>
<CENTER><IMG SRC = “bad_picture.gif” ALT = “ “><BR></CENTER>
<P><CENTER><H1>UW Computer Science Department</H1></CENTER>
Welcome to my goofy HomePage!
…
<A HREF = http://www.cs.wisc.edu/~pb/mydogs_page.html> Spot’s Page </A>
</BODY>
</HTML>

Weitere ähnliche Inhalte

Was ist angesagt?

WEB-DBMS A quick reference
WEB-DBMS A quick referenceWEB-DBMS A quick reference
WEB-DBMS A quick reference
Marc Dy
 
Exchange 2013 Architecture Details
Exchange 2013 Architecture DetailsExchange 2013 Architecture Details
Exchange 2013 Architecture Details
Huy Phạm
 

Was ist angesagt? (20)

WEB-DBMS A quick reference
WEB-DBMS A quick referenceWEB-DBMS A quick reference
WEB-DBMS A quick reference
 
Linux Hosting Training Course [Level 1] - Lec 7
Linux Hosting Training Course [Level 1] - Lec 7Linux Hosting Training Course [Level 1] - Lec 7
Linux Hosting Training Course [Level 1] - Lec 7
 
Ftp connector
Ftp connectorFtp connector
Ftp connector
 
Muleesbcomponents1 160625154208
Muleesbcomponents1 160625154208Muleesbcomponents1 160625154208
Muleesbcomponents1 160625154208
 
Html
HtmlHtml
Html
 
ISUG 113: File stream
ISUG 113: File streamISUG 113: File stream
ISUG 113: File stream
 
Exchange Server Recovery, Conversion & Migration
Exchange Server Recovery, Conversion & MigrationExchange Server Recovery, Conversion & Migration
Exchange Server Recovery, Conversion & Migration
 
Web technology unit I - Part B
Web technology unit I - Part BWeb technology unit I - Part B
Web technology unit I - Part B
 
Office Track: Exchange 2013 in the real world - Michael Van Horenbeeck
Office Track: Exchange 2013 in the real world - Michael Van HorenbeeckOffice Track: Exchange 2013 in the real world - Michael Van Horenbeeck
Office Track: Exchange 2013 in the real world - Michael Van Horenbeeck
 
ITI004En-Introduction to XML (III)
ITI004En-Introduction to XML (III)ITI004En-Introduction to XML (III)
ITI004En-Introduction to XML (III)
 
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC GroupRemote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
Remote Blog Storage (RBS) Best Practices in SharePoint 2010 - EPC Group
 
Wso2 esb-maintenance-guide
Wso2 esb-maintenance-guideWso2 esb-maintenance-guide
Wso2 esb-maintenance-guide
 
Server training
Server trainingServer training
Server training
 
Advaced training-wso2-esb
Advaced training-wso2-esbAdvaced training-wso2-esb
Advaced training-wso2-esb
 
Apc
ApcApc
Apc
 
Web hosting Introduction- MilesWeb
Web hosting  Introduction- MilesWebWeb hosting  Introduction- MilesWeb
Web hosting Introduction- MilesWeb
 
Using database object relational storage
Using database object relational storageUsing database object relational storage
Using database object relational storage
 
Exchange 2013 Architecture Details
Exchange 2013 Architecture DetailsExchange 2013 Architecture Details
Exchange 2013 Architecture Details
 
Hbase
HbaseHbase
Hbase
 
Introduction to WSO2 ESB Pass-Through Transport
Introduction to WSO2 ESB Pass-Through TransportIntroduction to WSO2 ESB Pass-Through Transport
Introduction to WSO2 ESB Pass-Through Transport
 

Andere mochten auch

Andere mochten auch (7)

Wi Max1
Wi Max1Wi Max1
Wi Max1
 
Satellites
SatellitesSatellites
Satellites
 
C D M A Vs Gsm1
C D M A Vs  Gsm1C D M A Vs  Gsm1
C D M A Vs Gsm1
 
Wi Max1
Wi Max1Wi Max1
Wi Max1
 
Htt1
Htt1Htt1
Htt1
 
Micro Power Stations
Micro Power StationsMicro Power Stations
Micro Power Stations
 
Tsunami Detector1 Ppt
Tsunami Detector1 PptTsunami Detector1 Ppt
Tsunami Detector1 Ppt
 

Ähnlich wie Web

ch01-Internet & Web Basics &.ppt
ch01-Internet & Web Basics &.pptch01-Internet & Web Basics &.ppt
ch01-Internet & Web Basics &.ppt
GmachImen
 
cross document messaging, html 5
cross document messaging, html 5cross document messaging, html 5
cross document messaging, html 5
Kristoffer Snabb
 

Ähnlich wie Web (20)

Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptx
 
Http protocol
Http protocolHttp protocol
Http protocol
 
Module 5 Application and presentation Layer .pptx
Module 5 Application and presentation Layer .pptxModule 5 Application and presentation Layer .pptx
Module 5 Application and presentation Layer .pptx
 
Web services
Web servicesWeb services
Web services
 
Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016Web Landscape - updated in Jan 2016
Web Landscape - updated in Jan 2016
 
Web & HTTP
Web & HTTPWeb & HTTP
Web & HTTP
 
An Introduction To World Wide Web
An Introduction To World Wide WebAn Introduction To World Wide Web
An Introduction To World Wide Web
 
introduction to Web system
introduction to Web systemintroduction to Web system
introduction to Web system
 
CNIT 129S - Ch 3: Web Application Technologies
CNIT 129S - Ch 3: Web Application TechnologiesCNIT 129S - Ch 3: Web Application Technologies
CNIT 129S - Ch 3: Web Application Technologies
 
CNIT 129S: Ch 3: Web Application Technologies
CNIT 129S: Ch 3: Web Application TechnologiesCNIT 129S: Ch 3: Web Application Technologies
CNIT 129S: Ch 3: Web Application Technologies
 
Compute rNetwork.pptx
Compute rNetwork.pptxCompute rNetwork.pptx
Compute rNetwork.pptx
 
Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207
 
ch01-Internet & Web Basics &.ppt
ch01-Internet & Web Basics &.pptch01-Internet & Web Basics &.ppt
ch01-Internet & Web Basics &.ppt
 
Cs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT VCs8591 Computer Networks - UNIT V
Cs8591 Computer Networks - UNIT V
 
Basics of the Web Platform
Basics of the Web PlatformBasics of the Web Platform
Basics of the Web Platform
 
Web technologies-course 01.pptx
Web technologies-course 01.pptxWeb technologies-course 01.pptx
Web technologies-course 01.pptx
 
cross document messaging, html 5
cross document messaging, html 5cross document messaging, html 5
cross document messaging, html 5
 
21 Www Web Services
21 Www Web Services21 Www Web Services
21 Www Web Services
 
Evolution Of The Web Platform & Browser Security
Evolution Of The Web Platform & Browser SecurityEvolution Of The Web Platform & Browser Security
Evolution Of The Web Platform & Browser Security
 
IP UNIT 1.pptx
IP UNIT 1.pptxIP UNIT 1.pptx
IP UNIT 1.pptx
 

Mehr von Mayank Vora (20)

TATA CRUCIBLE CORPORATE EDITION -2015(BHUBANESWAR PRELIMS & FINALS)
TATA CRUCIBLE CORPORATE EDITION -2015(BHUBANESWAR PRELIMS & FINALS)TATA CRUCIBLE CORPORATE EDITION -2015(BHUBANESWAR PRELIMS & FINALS)
TATA CRUCIBLE CORPORATE EDITION -2015(BHUBANESWAR PRELIMS & FINALS)
 
Mumbai prelims
Mumbai prelimsMumbai prelims
Mumbai prelims
 
New booklet
New bookletNew booklet
New booklet
 
Vpn1
Vpn1Vpn1
Vpn1
 
Spintronics
SpintronicsSpintronics
Spintronics
 
Sattellite Power Station1
Sattellite Power Station1Sattellite Power Station1
Sattellite Power Station1
 
Radio Frequency1
Radio  Frequency1Radio  Frequency1
Radio Frequency1
 
Satellites
SatellitesSatellites
Satellites
 
Mobilecomputings07
Mobilecomputings07Mobilecomputings07
Mobilecomputings07
 
L I G H T E M I T T I N G P O L Y M E R S
L I G H T  E M I T T I N G  P O L Y M E R SL I G H T  E M I T T I N G  P O L Y M E R S
L I G H T E M I T T I N G P O L Y M E R S
 
H T T1
H T T1H T T1
H T T1
 
1 Vo I P Overview
1  Vo I P  Overview1  Vo I P  Overview
1 Vo I P Overview
 
Tsunami Detector1 Ppt
Tsunami Detector1 PptTsunami Detector1 Ppt
Tsunami Detector1 Ppt
 
Radio Frequency1
Radio Frequency1Radio Frequency1
Radio Frequency1
 
Sattellite Power Station1
Sattellite Power Station1Sattellite Power Station1
Sattellite Power Station1
 
Vpn1
Vpn1Vpn1
Vpn1
 
Spintronics
SpintronicsSpintronics
Spintronics
 
Micro Power Stations
Micro Power StationsMicro Power Stations
Micro Power Stations
 
Light Emitting Polymers
Light Emitting PolymersLight Emitting Polymers
Light Emitting Polymers
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
 

Kürzlich hochgeladen

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Web

  • 1. CS 640 1 The World Wide Web Outline Background Structure Protocols
  • 2. CS 640 2 WWW Background • 1989-1990 – Tim Berners-Lee invents the World Wide Web at CERN – Means for transferring text and graphics simultaneously – Client/Server data transfer protocol • Communication via application level protocol • System ran on top of standard networking infrastructure – Text mark up language • Not invented by Bernes-Lee • Simple and easy to use • Requires a client application to render text/graphics
  • 3. CS 640 3 WWW History contd. • 1994 – Mark Andreesen invents MOSAIC at National Center for Super Computing Applications (NCSA) – First graphical browser – Internet’s first “killer app” – Freely distributed – Became Netscape Inc. • 1995 (approx.) – Web traffic becomes dominant – Exponential growth – E-commerce – Web infrastructure companies – World Wide Web Consortium • Reference: “Web Protocols and Practice”, Krishnamurthy and Rexford
  • 4. CS 640 4 WWW Components • Structural Components – Clients/browsers – to dominant implementations – Servers – run on sophisticated hardware – Caches – many interesting implementations – Internet – the global infrastructure which facilitates data transfer • Semantic Components – Hyper Text Transfer Protocol (HTTP) – Hyper Text Markup Language (HTML) • eXtensible Markup Language (XML) – Uniform Resource Identifiers (URIs)
  • 5. CS 640 5 Quick Aside – Web server use Source: Netcraft Server Survey, 2001
  • 6. CS 640 6 WWW Structure • Clients use browser application to send URIs via HTTP to servers requesting a Web page • Web pages constructed using HTML (or other markup language) and consist of text, graphics, sounds plus embedded files • Servers (or caches) respond with requested Web page – Or with error message • Client’s browser renders Web page returned by server – Page is written using Hyper Text Markup Language (HTML) – Displaying text, graphics and sound in browser – Writing data as well • The entire system runs over standard networking protocols (TCP/IP, DNS,…)
  • 7. CS 640 7 Uniform Resource Identifiers • Web resources need names/identifiers – Uniform Resource Identifiers (URIs) – Resource can reside anywhere on the Internet • URIs are a somewhat abstract notion – A pointer to a resource to which request methods can be applied to generate potentially different responses • A request method is eg. fetching or changing the object • Instance: http://www.foo.com/index.html – Protocol, server, resource • Most popular form of a URI is the Uniform Resource Locator (URL) – Differences between URI and URL are beyond scope – RFC 2396
  • 8. CS 640 8 HTTP Basics • Protocol for client/server communication – The heart of the Web – Very simple request/response protocol • Client sends request message, server replies with response message – Stateless – Relies on URI naming mechanism • Three versions have been used – 09/1.0 – very close to Berners-Lee’s original • RFC 1945 (original RFC is now expired) – 1.1 – developed to enhance performance, caching, compression • RFC 2068 – 1.0 dominates today but 1.1 is catching up
  • 9. CS 640 9 HTTP Request Messages • GET – retrieve document specified by URL • PUT – store specified document under given URL • HEAD – retrieve info. about document specified by URL • OPTIONS – retrieve information about available options • POST – give information (eg. annotation) to the server • DELETE – remove document specified by URL • TRACE – loopback request message • CONNECT – for use by caches
  • 10. CS 640 10 HTTP Request Format • First type of HTTP message: requests – Client browsers construct and send message • Typical HTTP request: – GET http://www.cs.wisc.edu/index.html HTTP/1.0 request-line ( request request-URI HTTP-version) headers (0 or more) <blank line> body (only for POST request)
  • 11. CS 640 11 HTTP Response Format • Second type of HTTP message: response – Web servers construct and send response messages • Typical HTTP response: – HTTP/1.0 301 Moved Permanently Location: http://www.wisc.edu/cs/index.html status-line (HTTP-version response-code response-phrase) headers (0 or more) <blank line> body
  • 12. CS 640 12 HTTP Response Codes • 1xx – Informational – request received, processing • 2xx – Success – action received, understood, accepted • 3xx – Redirection – further action necessary • 4xx – Client Error – bad syntax or cannot be fulfilled • 5xx – Server Error – server failed
  • 13. CS 640 13 HTTP Headers • Both requests and responses can contain a variable number of header fields – Consists of field name, colon, space, field value – 17 possible header types divided into three categories • Request • Response • Body • Example: Date: Friday, 27-Apr-01 13:30:01 GMT • Example: Content-length: 3001
  • 14. CS 640 14 HTTP/1.0 Network Interaction • Clients make requests to port 80 on servers – Uses DNS to resolve server name • Clients make separate TCP connection for each URL – Some browsers open multiple TCP connections • Netscape default = 4 • Server returns HTML page – Many types of servers with a variety of implementations – Apache is the most widely used • Freely available in source form • Client parses page – Requests embedded objects
  • 15. CS 640 15 HTTP/1.1 Performance Enhancements • HTTP/1.0 is a “stop and wait” protocol – Separate TCP connection for each file • Connect setup and tear down is incurred for each file • Inefficient use of packets • Server must maintain many connections in TIME_WAIT • Mogul and Padmanabahn studied these issues in ’95 – Resulted in HTTP/1.1 specification focused on performance enhancements • Persistent connections • Pipelining • Enhanced caching options • Support for compression
  • 16. CS 640 16 Persistent Connections and Pipelining • Persistent connections – Use the same TCP connection(s) for transfer of multiple files – Reduces packet traffic significantly – May or may not increase performance from client perspective • Load on server increases • Pipelining – Pack as much data into a packet as possible – Requires length field(s) within header – May or may not reduce packet traffic or increase performance • Page structure is critical
  • 17. CS 640 17 HTML Basics • Hyper-Text Markup Language – A subset of Standardized General Markup Language (SGML) – Facilitates a hyper-media environment • Embedded links to other documents and applications • Documents use elements to “mark up” or identify sections of text for different purposes or display characteristics • Mark up elements are not seen by the user when page is displayed • Documents are rendered by browsers • NOTE: Not all documents in the Web are HTML! • Most people use WYSIWYG editors (MS Word) to generate HTML
  • 18. CS 640 18 HTML Example <HTML> <HEAD> <TITLE> PB’s HomePage </TITLE> </HEAD> <BODY> <CENTER><IMG SRC = “bad_picture.gif” ALT = “ “><BR></CENTER> <P><CENTER><H1>UW Computer Science Department</H1></CENTER> Welcome to my goofy HomePage! … <A HREF = http://www.cs.wisc.edu/~pb/mydogs_page.html> Spot’s Page </A> </BODY> </HTML>