<P> A client request (consisting in this case of the request line and only one header field) is followed by a blank line, so that the request ends with a double newline, each in the form of a carriage return followed by a line feed . The "Host" field distinguishes between various DNS names sharing a single IP address, allowing name - based virtual hosting . While optional in HTTP / 1.0, it is mandatory in HTTP / 1.1 . </P> <P> The ETag (entity tag) header field is used to determine if a cached version of the requested resource is identical to the current version of the resource on the server . Content - Type specifies the Internet media type of the data conveyed by the HTTP message, while Content - Length indicates its length in bytes . The HTTP / 1.1 webserver publishes its ability to respond to requests for certain byte ranges of the document by setting the field Accept - Ranges: bytes . This is useful, if the client needs to have only certain portions of a resource sent by the server, which is called byte serving . When Connection: close is sent, it means that the web server will close the TCP connection immediately after the transfer of this response . </P> <P> Most of the header lines are optional . When Content - Length is missing the length is determined in other ways . Chunked transfer encoding uses a chunk size of 0 to mark the end of the content . Identity encoding without Content - Length reads content until the socket is closed . </P> <P> A Content - Encoding like gzip can be used to compress the transmitted data . </P>

Explain request and response object in web technology