HTTP
HTTP is an acronym for Hypertext Transfer Protocol. It 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 edit
Original HTTP Document edit
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 edit
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. [5]
HTTP Standardization edit
IETF initiated the standardization of HTTP standards on the latter part of 1994 which was strongly supported by W3C.[6] 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.[7] Computer scientists working on HTTP 1.0 discovered flaws on the performance of the protocol. Based on the performance analysis prepared by Simon Espero of W3C, HTTP spends more there is a delay in transferring data and it has a bad interaction with TCP. A frequent round trip delays was discovered due to connection establishment and a slow start performance was also observed in both directions for short duration connections. The protocol also demonstrates heavy latency penalties because of 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 serve.[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 edit
The HTTP working group was started working on the specifications of the protocol in 1995. The group include Tim Berners-Lee & Dave Ragget who served as co-Chairman, John Klensin & Erik Huizer served as Application Area Directors While Jeffrey Schiller worked as Security Area Director. [12]
References edit
- ↑ RFC 2616 Hypertext Transfer Protocol -- HTTP/1.1
- ↑ Tim Berners-Lee Short Bio
- ↑ The Original HTTP as defined in 1991
- ↑ HTTP Addressing
- ↑ Basic HTTP as defined in 1992
- ↑ HTTP Activity Statement
- ↑ [http://www.ietf.org/rfc/rfc1945.txt Hypertext Transfer Protocol -- HTTP/1.0]
- ↑ Analysis of HTTP Performance problems
- ↑ HTTP Activity Statement
- ↑ Hypertext Transfer Protocol -- HTTP/1.1
- ↑ [ http://tools.ietf.org/html/rfc2616 REF 2616 Hypertext Transfer Protocol -- HTTP/1.1]
- ↑ HTTP Working Group