Do the IP Phones support HTTP 1.1 or 1.0?

Version 1
    This document was generated from CDN thread

    Created by: David Nguyen on 11-06-2008 06:59:47 PM
    Do the IP Phones support HTTP 1.1 or 1.0? Does it depend on the type of request?

    Subject: Re: Do the IP Phones support HTTP 1.1 or 1.0?
    Replied by: David Nguyen on 11-06-2008 07:00:03 PM
    Cisco IP Phones do behave differently depending on how the Host header is populated: whether an IP address is used instead of a hostname. RFC2616 is somewhat vague in the details and leaves it open to two different interpretations as to how the Host header should be populated when the requested URL uses an IP address instead of name:

    1) The Host header should use the IP address in the same fashion as it would a hostname (example, "Host: 10.0.0.1:8080")
    2) The Host header must always be included per spec, but since the specified host is not a hostname, it should be left empty ("Host :")

    RFC2616 also states that HTTP 1.1 requests should not use IP addresses, therefore, it makes alot of sense to simply force any URLs using IP addresses to make HTTP 1.0 requests and avoid this issue entirely. This is what the Cisco IP phones do.

    You may ask why this Host header thing is a problem to begin with? The main problem has to do with Tomcat. If Tomcat receives an HTTP 1.1 request, it knows (by RFC2616) that it must include a Host header, so Tomcat will ALWAYS pull the TCP port number from the Host header ... and if the Host header is empty (doesn't contain a port number) then it assumes the default port 80 ... which of course typically isn't correct. If it's an HTTP 1.0 request, Tomcat ignores the Host header and retrieves the port information from the socket, so we avoid the issue.