Nicolas Rogemond 09/02/2005 1
HyperText Transfer Protocol Nicolas Rogemond T-110.456 : Next - - PowerPoint PPT Presentation
HyperText Transfer Protocol Nicolas Rogemond T-110.456 : Next - - PowerPoint PPT Presentation
HyperText Transfer Protocol Nicolas Rogemond T-110.456 : Next generation cellular networks Nicolas Rogemond 1 09/02/2005 Introduction Definition HTTP is defined in RFC 2068 as an ubiquitous application level protocol for
Nicolas Rogemond 09/02/2005 2
Introduction
Definition
- HTTP is defined in RFC 2068 as
“an ubiquitous application level protocol for distributed, collaborative, hypermedia information systems”
- HTTP is a stateless object-oriented protocol
(i.e. does not require the client and the server to keep track and state of messages exchanged)
Nicolas Rogemond 09/02/2005 3
Introduction
History
HTTP was first proposed by Tim Berners-Lee at CERN in order to help researchers navigate through the number of research papers and project at the laboratory.
January 1992 HTTP/0.9 March 1993 HTTP/1.0 first Draft November 1993 HTTP/1.0 second Draft March 1996 HTTP/1.0 informational, RFC 1945 January 1997 HTTP/1.1 proposed standard, RFC 2068 June 1999 HTTP/1.1 draft standard, RFC 2616 June 2001 HTTP/1.1 formal standard RFC 2068
Nicolas Rogemond 09/02/2005 4
Improvements
The main goals of the HTTP/1.1 is to remove any inconsistency and resolve the inter-operability issues that exploded with the previous version of the HTTP
- Consistent request and response methods
- Persistent connections
- Chunked encoding
- Content negotiation
- Digest authentication
- New headers
- Byte range operation
Nicolas Rogemond 09/02/2005 5
Improvements
Consistent request and response methods
In addition to the GET, HEAD and POST methods of HTTP/1.0, HTTP/1.1 defined and finalized the semantics of 5 new methods request types :
» DELETE » PUT » OPTIONS » TRACE » CONNECT
Nicolas Rogemond 09/02/2005 6
Improvements
Persistent connections
- Persistent connection as default
behaviour
- Pipelining
Nicolas Rogemond 09/02/2005 7
Improvements
Chunked encoding
- In HTTP, it is very important to indicate the
length of the response message being sent to be sure that no loss occurs during the transfer
- HTTP/1.0 indicates the length of the
message by closing the connection after transmitting the full message
- HTTP/1.1 uses a “Content-length” field in
the header and if needed (e.g. dynamic generated answers) the Chunked encoding
Nicolas Rogemond 09/02/2005 8
Improvements
Content negotiation HTTP/1.1 defines 2 types of content negotiation :
- Server driven (based on client’s request) :
the server will choose the appropriate format and representation of the resource according to the request headers and/or the client IP
- Agent driven : this occurs when the server
provides the user agent alternatives to the available resource. It is up to the user agent to indicate the best representation
Nicolas Rogemond 09/02/2005 9
Improvements
Digest authentication
- The digest authentication is an other
security layer in addition to the “basic authentication” one
- The principle is the same (based on
username and password) but in this
- ne, the “keys” are encrypted.
Nicolas Rogemond 09/02/2005 10
Improvements
Headers
- HTTP headers are metadata that describe the
resource being sent. They play a major role in HTTP specification and implementation in that way they extend the capabilities of the protocol
- HTTP/1.1 classified 4 types of headers :
- General headers
- Entity headers
- Request headers
- Response headers
End to End headers Hop by Hop headers
Nicolas Rogemond 09/02/2005 11
Improvements
Byte range operation
Byte range operation allows client to download a range of bytes instead of the entire document, the consequences are :
– Recovery from failed transfers – Multiple transfers of the same document as the same time – Work with small parts of large documents without completely downloading them
Nicolas Rogemond 09/02/2005 12
Competing Technology : MHSP
- MHSP (Multiple Hypertext Stream Protocol)
- MHSP is a full-duplex, symmetric protocol
that the proxy uses to communicate with wireless clients. It is designed to reduce latency while allowing the client to take advantage of available bandwidth
Nicolas Rogemond 09/02/2005 13
Competing Technology : MHSP
MHSP has the following features :
– maintains a permanent connection – transfers more than one file simultaneously – allows both clients and proxy to initiate and stop file transfers – tracks the progress of file transfers, allowing stopped transfers to be resumed – maintains compatibility with existing networks by running on top of TCP
Nicolas Rogemond 09/02/2005 14
Application for mobile telecommunications
- All WML (Wireless Mark-up Language)
content is accessed over the Internet using standard HTTP/1.1 requests
- WAP 2.0
Nicolas Rogemond 09/02/2005 15
What’s next?
HTTP/NG (New Generation)
- The World Wide Web Consortium (W3C) and
Internet Engineering Task Force (IETF) are actively working with the WAP Forum to evolve HTTP-NG to better meet the requirements of future wireless network technologies (3G wireless network)
- HTTP-NG is a comprehensive rethinking of the
Web’s underlying protocol. It provides a framework for defining new Web applications, a powerful messaging system, and a multiplexing transport layer
Nicolas Rogemond 09/02/2005 16
HTTP/NG
- 3 layer architecture :
– Transport Layer – Messaging Layer – Application Layer Performances comparisons
Realized with W3C Microscape benchmark
HTTP/NG 0.19sec HTTP/1.1 Pipelined 0.23sec CORBA’s IIOP 1.0 0.58sec
Nicolas Rogemond 09/02/2005 17
Conclusion
- HTTP/1.1 has been developed to
facilitate the convergence between mobile communication (2G/3G) and the fixed networks
- HTTP & HTML were the basis of the
web’s rapid growth in the early 90’s, HTTP/1.1 can be the basis of the growth of mobile communication
Nicolas Rogemond 09/02/2005 18