Live data from Hacker News

Building Protocols with HTTP

tools.ietf.org

11–20 of 55 posts

Re: Building Protocols with HTTP

#11
I can't say this trend surprises me. Years back I was an IETF meeting when people were already mentioning that the old saying "IP over everything, everything over IP" was slowly being phase out for "HTTP over everything, everything over HTTP".

The thing to realize here is how much middleboxes sit between a client and a server, boxes which are aware of higher layers than just IP. It's impossible today to deploy an Internet-wide layer-4 protocol other than TCP or UDP, and increasingly it will be harder and harder to deploy a truly universal L7 protocol but HTTP. That's my limited view of this issue, how things like IPv6 might affect it I have no idea.

Re: Building Protocols with HTTP

#12

I really wish people would stop trying to cram everything into an HTTP-shaped box.

I agree. What is wrong with creating new protocols?

Stupid people block stuff. That's why (somewhat less stupid) people try to tunnel everything via HTTP.

Re: Building Protocols with HTTP

#13
post #11

I can't say this trend surprises me. Years back I was an IETF meeting when people were already mentioning that the old saying "IP over everything, everything over IP" was slowly being phase out for "HTTP over everything, everything over HTTP". The thing to realize here is how much middleboxes sit between a client and a server, boxes which are aware of higher layers than just IP. It's impossible today to deploy an Int…

Building a protocol over HTTP has the added benefit of making security easy. HTTP+TLS has a lot more eyeballs than protocols on lower levels. Most protocols on layer 3 and below weren't designed with security as a priority. If you are building a domain specific protocol, it's a lot easier to build on top of one which already has a good security story backed by a triumvirate of internet unicorns, than trying to re-invent the whole public key dance on a homebrewed setup.

Re: Building Protocols with HTTP

#14
post #11

I can't say this trend surprises me. Years back I was an IETF meeting when people were already mentioning that the old saying "IP over everything, everything over IP" was slowly being phase out for "HTTP over everything, everything over HTTP". The thing to realize here is how much middleboxes sit between a client and a server, boxes which are aware of higher layers than just IP. It's impossible today to deploy an Int…

It is possible. You just don't care about people that have shitty admins. It works for games (mostly UDP) and nobody complains, perhaps because people shouldn't be playing in the office.

Re: Building Protocols with HTTP

#15
> Applications that use HTTP are encouraged to allow an arbitrary URL to be used as that entry point. For example, rather than specifying "the initial document is at "/foo/v1", they should allow a deployment to use any URL as the entry point for the application.

Is this really saying that, for example, I shouldn't have an API specification that says "to fetch a list of users", send a GET to `/api/v3/users`? What's the alternative?

Re: Building Protocols with HTTP

#16
post #15

> Applications that use HTTP are encouraged to allow an arbitrary URL to be used as that entry point. For example, rather than specifying "the initial document is at "/foo/v1", they should allow a deployment to use any URL as the entry point for the application. Is this really saying that, for example, I shouldn't have an API specification that says "to fetch a list of users", send a GET to `/api/v3/users`? What's th…

Hypermedia [1] As The Engine Of Application State (HATEOAS) https://en.wikipedia.org/wiki/HATEOAS

I not particularly a fan, but it's fairly common. It was popularized as one of the pillars of the REST paradigm.

[1] https://en.wikipedia.org/wiki/Hypermedia

[2] https://en.wikipedia.org/wiki/HATEOAS

Re: Building Protocols with HTTP

#17
post #11

I can't say this trend surprises me. Years back I was an IETF meeting when people were already mentioning that the old saying "IP over everything, everything over IP" was slowly being phase out for "HTTP over everything, everything over HTTP". The thing to realize here is how much middleboxes sit between a client and a server, boxes which are aware of higher layers than just IP. It's impossible today to deploy an Int…

Building a protocol over HTTP has the added benefit of making security easy. HTTP+TLS has a lot more eyeballs than protocols on lower levels. Most protocols on layer 3 and below weren't designed with security as a priority. If you are building a domain specific protocol, it's a lot easier to build on top of one which already has a good security story backed by a triumvirate of internet unicorns, than trying to re-inv…

SSL/TLS with other protocols have a lot of usage too.

SFTP/FTPS, SSH, SMTPS, etc.

Re: Building Protocols with HTTP

#18
post #15

> Applications that use HTTP are encouraged to allow an arbitrary URL to be used as that entry point. For example, rather than specifying "the initial document is at "/foo/v1", they should allow a deployment to use any URL as the entry point for the application. Is this really saying that, for example, I shouldn't have an API specification that says "to fetch a list of users", send a GET to `/api/v3/users`? What's th…

Hypermedia [1] As The Engine Of Application State (HATEOAS) https://en.wikipedia.org/wiki/HATEOAS I not particularly a fan, but it's fairly common. It was popularized as one of the pillars of the REST paradigm. [1] https://en.wikipedia.org/wiki/Hypermedia [2] https://en.wikipedia.org/wiki/HATEOAS

Is it actually common? Its talked about a lot, however in practice it is not used much from what I can tell.

Re: Building Protocols with HTTP

#19
post #18

Earlier quoted context omitted.

Hypermedia [1] As The Engine Of Application State (HATEOAS) https://en.wikipedia.org/wiki/HATEOAS I not particularly a fan, but it's fairly common. It was popularized as one of the pillars of the REST paradigm. [1] https://en.wikipedia.org/wiki/Hypermedia [2] https://en.wikipedia.org/wiki/HATEOAS

Is it actually common? Its talked about a lot, however in practice it is not used much from what I can tell.

For starters, HATEOAS it's used as the foundation of the most common networked applications in the world: web browsers.

Paypal uses it for their API.

But yeah, it's kind of like functional programming: the ideas are super common and well understood. But by the numbers, the less pure imperative programming paradigm is overwhelmingly more commonplace.

Re: Building Protocols with HTTP

#20

Earlier quoted context omitted.

Building a protocol over HTTP has the added benefit of making security easy. HTTP+TLS has a lot more eyeballs than protocols on lower levels. Most protocols on layer 3 and below weren't designed with security as a priority. If you are building a domain specific protocol, it's a lot easier to build on top of one which already has a good security story backed by a triumvirate of internet unicorns, than trying to re-inv…

SSL/TLS with other protocols have a lot of usage too. SFTP/FTPS, SSH, SMTPS, etc.

SSH is a cryptographic network protocol that doesn't use SSL/TLS.
Post reply on HN