I doubt HTTP over UDP has lower latency than a packet sent in an existing TCP session, which is what SPDY aims for, AFAICT.
More important than getting rid of the rigid request-response character of HTTP, however, is the optimisation of the header information to cut down on the total data that needs to be transferred, IMHO.
#1
martin f. krafft
(Homepage)
on
2009-11-19 09:50
HTTP over UDP is impractical: UDP datagram s have a limited size (
With UDP, you lose all the fancy things that make the Internet usable: QoS, congestion management, throughput throttling, window adaptation…
The performance impact would be absolutely disastrous.
That's a *horrible* idea. Without TCP's congestion control/avoidance, the Internet would collapse.
Not to mention, that UDP doesn't provide for reliable transmissions.
The problem is not the time taken to satisfy a small request but the number of small requests.
When I visit some widely popular web sites (such as mainstream-media sites) it's not uncommon to have over 100 images loaded in a single page view, I often see 250 or more! Maybe you could get some improvement by having the smaller images loaded via UDP, but it would still suck - such web sites need to be designed in a simpler manner!
I've recently changed my blog to use the "minify" plugin which combines Javascript and CSS files to reduce the number of HTTP requests. This type of thing is the solution to any problem that might be solved by UDP.
I actually saw this implemented in my sniffer the other day. Looks like Microsoft uses it to contact update servers and search services... maybe as some sort of initial "ping".
Here's a paper on the topic:
http://www.cs.technion.ac.il/Courses/Computer-Networks-Lab/projects/spring2000/http_udp/index.htm
#4: Try telling the UPnP community (http://www.upnp.org/resources/documents.asp) that HTTP over UDP is a horrible idea. They seem to think it is useful for small requests/responses.
Lotta close-minded opinions on this thread. Pure UDP would not be a good idea, but I do think there's plenty of UDP-appropriate conversations going on between client and server. With clever engineering, and well thought-out protocols, I think TCP+UCP HTTP could produce a much smoother browsing experience.