interledger / interledger/rfcs
Ways to make BTP more minimal?
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 513
- Forks
- 107
- PR merge metrics
- No merged PRs in 30d
Description
The stated motivation of BTP is to be a link-layer protocol like ILP-over-HTTP but using WebSockets instead of HTTP POST.
I understand BTP has to be more complex than ILP-over-HTTP because it needs to link responses to requests. This justifies the Request ID part of BTP, and I guess also the Message, Response and Error message types.
But first, what motivates the Transfer message type? If we can already do transfers with ILP's message types, do we still need BTP-level transfers?
And second, I understand how BTP Subprotocols can be handy, but if we think that such a feature is useful and we allow connectors to rely on it for their operation, then why don't we add it to other link protocols too? It seems a bit surprising that BTP has this extra functionality but ILP-over-HTTP doesn't.
Could we define a version of BTP that is as minimal as it can be, comparable to the current ILP-over-HTTP protocol?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read RFC 0023 on BTP motivation, RFC 0001 on protocol layers, and RFC 0035 on ILP-over-HTTP. Compare the message types and subprotocol behavior, then determine whether a minimal BTP variant can be specified and what changes would be needed across the referenced RFCs.
Written by the indexing model from the issue text.
Assessment
- Domain
- networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100