4 ms·
BEEP: The Blocks Extensible Exchange Protocol
- iwontberude 3y agoI was like 13 when I bought this book and was so fascinated with how it allowed for functionality similar to HTTP but was bidirectional. Maybe it was most comparable to HTTP/2 today, but the biggest problem I had with it personally was that its implementations were all using SOAP. I hate XML and SOAP. I had no chance of ever implementing anything with this and kinda gave up. REALbasic and GameMaker users what's up!!
- kstrauser 3y agoWhat is this, why would I want to use it, and why aren't other people using it?
- urbandw311er 3y agoVery good question. I hope somebody more knowledgeable than me can step in and answer.
- wmf 3y agoBEEP provides authentication and mulitplexes streams over a single TCP connection. It's like a version of HTTP/2 that never took off.
- jauntywundrkind 3y agoIt was discussed on the hybrid-bidirectional (HyBi) mailing list, as a candidate for where after http to go. HTTP2 is a fine example. The HyBi mailing list seems to have culminated most noticeably in the creation of websockets. https://datatracker.ietf.org/wg/hybi/about/ https://datatracker.ietf.org/wg/hybi/about/ With webtransport over quic, I feel like we might finally be able to go where BEEP was leading us.
- yau8edq12i 3y agoAs far as I can tell, the linked webpage explains at least the first two points clearly. Could you elaborate on what you think is missing?
- mindcrime 3y agoI was fascinated with BEEP for a few days in like 2005 or so. Never found anything particular to use it for though. But I was reminded of it by the discussion of the Willow Protocol that's also ongoing. Not because the two protocols have much in common per-se, but just the "meta" aspect where BEEP is less a protocol you use "out of the box" but a protocol for building application level protocols. The Wikipedia summary may explain the general gist of it better than the beepcore page itself: Profiles, channels and a framing mechanism are used in BEEP to exchange different kinds of messages. Only content type and encoding are defaulted by the specification leaving the full flexibility of using a binary or textual format open to the protocol designer. Profiles define the functionality of the protocol and the message syntax and semantics. Channels are full-duplex pipes connected to a particular profile. Messages sent through different channels are independent from each other (asynchronous). Multiple channels can use the same profile through one connection.
- ianburrell 3y agoIt is historical. BEEP was protocol from before HTTP was used for everything. It was simpler than HTTP with plain request response. It never got traction but HTTP APIs took the same space. I think its main flaw is that wasn’t designed for specific protocol.
- ipython 3y agoTotal blast from the past. Xgrid[0] used BEEP for its inter-node communication protocol. I haven't thought about any of this for almost 20 years now... [0] https://en.wikipedia.org/wiki/Xgrid https://en.wikipedia.org/wiki/Xgrid
- gbraad 3y agoThis page still exists? That had been more than 10 years... me remembers a time jabber was regarded as an alternative to xmlrpc
- meepmorp 3y agoI remember being interested in this for a couple days back when it was BXXP.