+
+//RFC 2616 4.4 Message Length
+// The transfer-length of a message is the length of the message-body as
+// it appears in the message; that is, after any transfer-codings have
+// been applied. When a message-body is included with a message, the
+// transfer-length of that body is determined by one of the following
+// (in order of precedence):
+// 1.Any response message which "MUST NOT" include a message-body (such
+// as the 1xx, 204, and 304 responses and any response to a HEAD
+// request) is always terminated by the first empty line after the
+// header fields, regardless of the entity-header fields present in
+// the message.
+// 2.If a Transfer-Encoding header field (section 14.41) is present and
+// has any value other than "identity", then the transfer-length is
+// defined by use of the "chunked" transfer-coding (section 3.6),
+// unless the message is terminated by closing the connection.
+// 3.If a Content-Length header field (section 14.13) is present, its
+// decimal value in OCTETs represents both the entity-length and the
+// transfer-length. The Content-Length header field MUST NOT be sent
+// if these two lengths are different (i.e., if a Transfer-Encoding
+// header field is present). If a message is received with both a
+// Transfer-Encoding header field and a Content-Length header field,
+// the latter MUST be ignored.
+// 4.If the message uses the media type "multipart/byteranges" ...
+// 5.By the server closing the connection.
+//
+// (NB: standards do not define "Transfer-Length:" _header_,
+// transfer-length above is just a concept).
+