3 ms·
It reeks of overengineering because you're not properly understanding the problem. Flow control is necessary because it's a multiplexed protocol. Without your
by FooBarWidget 13y ago
It reeks of overengineering because you're not properly understanding the problem.
Flow control is necessary because it's a multiplexed protocol. Without your own flow control commands, flow control is applied over the entire TCP stream, not on your substreams. That doesn't do what you want. Try it: implement any kind of multiplexed protocol yourself, and you will quickly see why it is necessary.
Encryption: some of it might be for security, but a lot of it is also for backward compatibility. SPDY/HTTP2 is a different protocol than HTTP1, and there are a lot of broken routers out there that will break things unless you encrypt the entire connection as an SSL session.
Those who do not understand SPDY are doomed to complain about it on HN, and then one day maybe reinvent it, poorly.
- jimktrains2 13y ago> Flow control is necessary because it's a multiplexed protocol. Without your own flow control commands, flow control is applied over the entire TCP stream, not on your substreams. That doesn't do what you want. Try it: implement any kind of multiplexed protocol yourself, and you will quickly see why it is necessary. Why should HTTP be a multiplex protocol though; that's the issue. > Encryption: some of it might be for security, but a lot of it is also for backward compatibility. SPDY/HTTP2 is a different protocol than HTTP1, and there are a lot of broken routers out there that will break things unless you encrypt the entire connection as an SSL session. So why not just use SSL/TLS? Why wrap it into the HTTP protocol? > Those who do not understand SPDY are doomed to complain about it on HN, and then one day maybe reinvent it, poorly. Those who can't see the benefits and reason for HTTP1 are doomed to make a mess of it by "improving" (or "working around") it.
- FooBarWidget 13y ago> Why should HTTP be a multiplex protocol though; that's the issue. Because HTTP is inefficient due to the TCP three-way handshake, and because pipelining has many problems. These are fixed by multiplexing. > So why not just use SSL/TLS? Why wrap it into the HTTP protocol? They are using TLS.
- jimktrains2 13y ago> Because HTTP is inefficient due to the TCP three-way handshake, and because pipelining has many problems. These are fixed by multiplexing. So why should HTTP care about this? > They are using TLS. But it's specified as part of the HTTP protocol