saying http/2 obsoletes websockets sounds like a bit of a stretch, but look at what people actually used it and pushed others to use it for I can see why that can be a conclusion
Conversation
It has bidirectional binary streams. It essentially has a more flexible equivalent to WebSockets at the protocol level instead of built on top of it. It's a separate thing from the push feature. They essentially built the WebSocket functionality into it.
2
Replying to
SCTP sockets, sure, since it's a message-based protocol. HTTP/2 isn't actually a good implementation of this for real-time use due to being implemented on top of TCP. It's awkward. HTTP/3 fixes it by moving to a more modern take on SCTP with baseline authenticated encryption.
2
1
Yes, HTTP/3 is basically HTTP/2 via QUIC with messages/streams in higher level protocol mapping to the lower-level ones.
WebRTC was built on top of SCTP over DTLS over UDP and QUIC is basically a more modern replacement for that with improved congestion control, encryption, etc.
1
2
They'll be able to update WebRTC to use QUIC instead of that homegrown protocol. They couldn't use SCTP directly and if you have to reinvent it on top of UDP you might as well apply all the things we've learned about congestion control, multiplexing, transport encryption, etc.
1
how do you mean homegrown? last time I played around with it WebRTC was, just SCTP over DTLS, which are both as far as my understanding goes quite well defined.
haven't read up onto QUIC yet, but wondering how it would do in a p2p situation
2
(like I rather call QUIC homegrown than SCTP w/ DTLS, considering the age of both)
1
I just mean that they threw together existing things in a novel way with unnecessary overhead. It's not really SCTP. It doesn't quite get put together in a transparent way. Traditional SCTP is an alternative to TCP/UDP and the way they glued things together is fairly crufty.
1
1
SCTP, DTLS and UDP all have their own concept of frames, etc. It's just a bit weird to layer things in the way they did. SCTP performs error correction on the overall connection like TCP so it still has the head-of-line blocking issues. Also can't migrate IP like WireGuard/QUIC.


