Difference between revisions of "HTTP"

From ICANNWiki
Jump to navigation Jump to search
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''HTTP''' is an acronym for '''Hypertext Transfer Protocol'''. It is a standard networking protocol for distributed, collaborative, hypermedia systems which has been used in the World Wide Web since 1990.<ref>[http://tools.ietf.org/html/rfc2616 RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1]</ref> The specifications for HTTP was developed by [[Tim Berners-Lee]], inventor of World Wide Web.<ref>[http://www.w3.org/People/Berners-Lee/ Tim Berners-Lee Short Bio]</ref> The Internet Engineering Task Force ([[IETF]]) and the [[World Wide Web Consortium|W3C]] coordinate the development and publications of HTTP standards through [[RFC]]s.  
+
'''Hypertext Transfer Protocol (HTTP)''' is a standard networking protocol for distributed, collaborative, hypermedia systems that has been used on the World Wide Web since 1990.<ref>[http://tools.ietf.org/html/rfc2616 RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1]</ref> The protocol is used in communication between the web pages and web servers. It allows users to download pages and connect to servers located in different parts of the globe. The design and specifications of HTTP was first developed by [[Tim Berners-Lee]], inventor of World Wide Web.<ref>[http://www.w3.org/People/Berners-Lee/ Tim Berners-Lee Short Bio]</ref> The Internet Engineering Task Force ([[IETF]]) and the [[World Wide Web Consortium|W3C]] coordinate the development and publications of HTTP standards through [[RFC]]s.  
  
 
==Background==
 
==Background==
 
===Original HTTP Document===
 
===Original HTTP Document===
The first document regarding the HTTP protocol was written by Tim Berners-Lee in 1991 and it was implemented on a prototype release by W3C initiative software as HTTP 0.9. In the original document  HTTP 0.9 was defined by Berners-Lee as a simple search and retrieve protocol which runs through a TCP/IP connection.<ref>[http://www.w3.org/Protocols/HTTP/AsImplemented.html The Original HTTP as defined in 1991]</ref> <ref>[http://www.w3.org/Addressing/HTTPAddressing.html HTTP Addressing]</ref>
+
The first document regarding the HTTP protocol was written by Tim Berners-Lee in 1991 and it was implemented on a prototype released by W3C initiative software as HTTP 0.9. In the original document, HTTP 0.9 was defined by Berners-Lee as a simple search and retrieve protocol that runs through a [[TCP/IP]] connection.<ref>[http://www.w3.org/Protocols/HTTP/AsImplemented.html The Original HTTP as defined in 1991]</ref> <ref>[http://www.w3.org/Addressing/HTTPAddressing.html HTTP Addressing]</ref>
  
 
===Basic HTTP Specification===
 
===Basic HTTP Specification===
In 1992, Berners-Lee submitted the Basic HTTP specification to the IETF as an Internet Draft. In detail, he defined HTTP as a "protocol with the lightness and speed necessary for a distributed collaborative hypermedia information system. It is a generic stateless object-oriented protocol, which may be used for many similar tasks such as name servers, and distributed object-oriented systems, by extending the commands or methods used". In addition, he added that HTTP's characteristics is the negotiation of data representation which allows systems to be built independently for the development of new advanced representations. <ref>[http://www.w3.org/Protocols/HTTP/HTTP2.html Basic HTTP as defined in 1992]</ref>
+
In 1992, Berners-Lee submitted the Basic HTTP specification to the IETF as an Internet Draft. In detail, he defined HTTP as a "protocol with the lightness and speed necessary for a distributed collaborative hypermedia information system. It is a generic stateless object-oriented protocol, which may be used for many similar tasks such as name servers, and distributed object-oriented systems, by extending the commands or methods used". In addition, he added that HTTP's characteristics allow systems to be built independently for the development of new advanced representations.<ref>[http://www.w3.org/Protocols/HTTP/HTTP2.html Basic HTTP as defined in 1992]</ref>
  
 
===HTTP Standardization===
 
===HTTP Standardization===
IETF initiated the standardization of HTTP standards on the latter part of 1994 which was strongly supported by [[W3C]].<ref>[http://www.w3.org/Protocols/Activity.html#role HTTP Activity Statement]</ref> In 1996, Tim Berners-Lee together with Roy Fielding and Henrik Frystyk Nielsen published the RFC 1945, the first IETF Informational Document for HTTP/1.0.<ref>[http://www.ietf.org/rfc/rfc1945.txt  
+
IETF initiated the standardization of HTTP standards in the latter part of 1994, the move was strongly supported by [[W3C]].<ref>[http://www.w3.org/Protocols/Activity.html#role HTTP Activity Statement]</ref> In 1996, Tim Berners-Lee, together with [[Roy Fielding]] and [[Henrik Frystyk Nielsen]], published RFC 1945, the first IETF Informational Document for HTTP 1.0.<ref>[http://www.ietf.org/rfc/rfc1945.txt  
Hypertext Transfer Protocol -- HTTP/1.0]</ref> Experimental implementations on HTTP 1.1 was conducted by a group of computer scientists within Libwww, the W3C protocol library and Jigsaw, W3C's Web server. The scientists discovered errors as well as the full potential of the protocol.<ref>[http://www.w3.org/Protocols/Activity.html HTTP Activity Statement]</ref> A proposed IETF standard, RFC 2068 was subsequently published in 1997. <ref>[http://tools.ietf.org/html/rfc2068 Hypertext Transfer Protocol -- HTTP/1.1]</ref>  
+
Hypertext Transfer Protocol -- HTTP/1.0]</ref> Computer scientists working on HTTP 1.0 discovered flaws in the performance of the protocol. Based on the performance analysis prepared by Simon Espero of W3C, there is a delay in transferring data and it has a bad interaction with TCP. Frequent round trip delays were discovered due to connection establishment and a slow start performance was also observed in both directions for short duration connections. The protocol also demonstrated heavy latency penalties because of a mismatch of typical access profiles with a single request per transaction model. In addition, HTTP 1.0 requires busy servers to dedicate resources to be able to maintain TIME_WAIT information for large numbers of closed connections.<ref>[http://www.w3.org/Protocols/HTTP/1.0/HTTPPerformance.html Analysis of HTTP Performance problems]</ref>  
  
RFC 2616 is the current IETF draft standard for HTTP.<ref>[ http://tools.ietf.org/html/rfc2616 REF 2616 Hypertext Transfer Protocol -- HTTP/1.1]</ref>
+
Despite the problems discovered with HTTP 1.0, computer scientists from W3C acknowledged the full potential of the protocol and started experimental implementations on HTTP 1.1. Experiments were held within Libwww, the W3C protocol library, and Jigsaw, W3C's Web server.<ref>[http://www.w3.org/Protocols/Activity.html HTTP Activity Statement]</ref> Subsequently, in 1997, a proposed IETF standard, RFC 2068 was submitted to the IETF describing the specifications for HTTP/1.1. <ref>[http://tools.ietf.org/html/rfc2068 Hypertext Transfer Protocol -- HTTP/1.1]</ref>
 +
On July 7, 1999, RFC 2616 was approved by the [[IESG|Internet Engineering Steering Group]] (IESG), as the current IETF draft standard for HTTP/1.1<ref>[ http://tools.ietf.org/html/rfc2616 REF 2616 Hypertext Transfer Protocol -- HTTP/1.1]</ref>
 +
 
 +
==HTTP Working Group==
 +
The HTTP working group was started working on the specifications of the protocol in 1995. The group includes [[Tim Berners-Lee]] and [[Dave Ragget]], who served as co-Chairmen, [[John Klensin]] and [[Erik Huizer]], who served as Application Area Directors, while [[Jeffrey Schiller]] worked as Security Area Director. <ref>[http://www.w3.org/Arena/webworld/httpwgcharter. HTTP Working Group]</ref>
  
 
==References==
 
==References==

Latest revision as of 17:37, 12 May 2021

Hypertext Transfer Protocol (HTTP) is a standard networking protocol for distributed, collaborative, hypermedia systems that has been used on the World Wide Web since 1990.[1] The protocol is used in communication between the web pages and web servers. It allows users to download pages and connect to servers located in different parts of the globe. The design and specifications of HTTP was first developed by Tim Berners-Lee, inventor of World Wide Web.[2] The Internet Engineering Task Force (IETF) and the W3C coordinate the development and publications of HTTP standards through RFCs.

Background

Original HTTP Document

The first document regarding the HTTP protocol was written by Tim Berners-Lee in 1991 and it was implemented on a prototype released by W3C initiative software as HTTP 0.9. In the original document, HTTP 0.9 was defined by Berners-Lee as a simple search and retrieve protocol that runs through a TCP/IP connection.[3] [4]

Basic HTTP Specification

In 1992, Berners-Lee submitted the Basic HTTP specification to the IETF as an Internet Draft. In detail, he defined HTTP as a "protocol with the lightness and speed necessary for a distributed collaborative hypermedia information system. It is a generic stateless object-oriented protocol, which may be used for many similar tasks such as name servers, and distributed object-oriented systems, by extending the commands or methods used". In addition, he added that HTTP's characteristics allow systems to be built independently for the development of new advanced representations.[5]

HTTP Standardization

IETF initiated the standardization of HTTP standards in the latter part of 1994, the move was strongly supported by W3C.[6] In 1996, Tim Berners-Lee, together with Roy Fielding and Henrik Frystyk Nielsen, published RFC 1945, the first IETF Informational Document for HTTP 1.0.[7] Computer scientists working on HTTP 1.0 discovered flaws in the performance of the protocol. Based on the performance analysis prepared by Simon Espero of W3C, there is a delay in transferring data and it has a bad interaction with TCP. Frequent round trip delays were discovered due to connection establishment and a slow start performance was also observed in both directions for short duration connections. The protocol also demonstrated heavy latency penalties because of a mismatch of typical access profiles with a single request per transaction model. In addition, HTTP 1.0 requires busy servers to dedicate resources to be able to maintain TIME_WAIT information for large numbers of closed connections.[8]

Despite the problems discovered with HTTP 1.0, computer scientists from W3C acknowledged the full potential of the protocol and started experimental implementations on HTTP 1.1. Experiments were held within Libwww, the W3C protocol library, and Jigsaw, W3C's Web server.[9] Subsequently, in 1997, a proposed IETF standard, RFC 2068 was submitted to the IETF describing the specifications for HTTP/1.1. [10] On July 7, 1999, RFC 2616 was approved by the Internet Engineering Steering Group (IESG), as the current IETF draft standard for HTTP/1.1[11]

HTTP Working Group

The HTTP working group was started working on the specifications of the protocol in 1995. The group includes Tim Berners-Lee and Dave Ragget, who served as co-Chairmen, John Klensin and Erik Huizer, who served as Application Area Directors, while Jeffrey Schiller worked as Security Area Director. [12]

References