magic-wormhole
magic-wormhole copied to clipboard
[Terminology] Should the Rendezvous Server be renamed to Mailbox Server in the documentation ?
Hi. If I understand correctly, the Rendezvous Server refers to the bonjour protocol. The Rendezvous was renamed Bonjour due to a law dispute. Therefore, should we rename it to Mailbox Server in the documentation ?
Other possibility: Zeroconf server
Your suggestion of "Zeroconf server" as a name lets me think that you are confusing things. "Rendezvous server" is just a technical term and thus not subject to any trademark rights.
At the moment, the documentation indeed uses both "rendezvous" and "mailbox" server (and sometimes even "relay server", which is plain wrong), we should choose one and only use that.
Rendezvous is most often used to designate this specific protocol. It’s not about trademarks, it’s about making it clear.
Right, so the Rendezvous term does not relate to the Bonjour protocol. As @afranke points out, this could be confused with the latter.
May I suggest the term "Junction server" or "Central server" ?
I started using "mailbox server" and "mailbox protocol" because:
- 1: While it does help the clients "rendezvous" with each other, it has nothing to do with Apple's Rendezvous / Bonjour protocol (wormhole uses "rendezvous" as a common noun, not a proper noun), and given how widely known the Rendezvous/Bonjour names are, it was causing confusion. Also, #48 is about using the actual Rendezvous/Bonjour technologies to locate/augment/supplant the wormhole Mailbox server, and it would become doubly confusing to have to say things like "we sometimes use Rendezvous to reach the rendezvous server"
- 2: While it does help clients "relay" encrypted messages with each other, it is only providing the low-rate store-and-forward portion of the protocol (the PAKE setup phase, and the PAKE-encrypted payload exchange), not the high-rate bulk-transfer portion. That high-rate portion either goes directly from one client to the other (if one of them has a public address, or we figure out NAT hole punching), or through a different sort of relay, the "transit relay". I stopped talking about the mailbox server being a "relay" so I could reserve that word for the high-rate transit relay.
I'm pretty happy with "mailbox server" / "mailbox protocol" for the low-rate store-and-forward thing, and "transit relay" for the helper that is sometimes used on the high-rate bulk-transfer protocol.
So yeah, I think we should try to consolidate on "Mailbox Server" in the documentation.
One complication is the CLI arguments. Currently wormhole help
says:
Options:
--appid APPID appid to use
--relay-url URL rendezvous relay to use
--transit-helper tcp:HOST:PORT transit relay to use
The description field is trivial to update, but --relay-url
would need to become something like --mailbox-url
or --mailbox-server-url
. Maybe we could continue to accept --relay-url
as a non-documented backwards-compatibility thing.
Thank you for the extensive clarification.
"mailbox server" / "mailbox protocol"
I was slightly surprised to see mailbox. Non-native speaker here, but I find the reference to "mail" confusing : perhaps consider a more generic "inbox server"/"inbox protocol" ?
The nice thing with "rendezvous server" is that it is self understandable and defines directly its function rather than what happens to it, hence my suggestions in the first post. Here is a list of candidates you might like :
Junction server, Central server, Link server, Pairing Server, Intermediation server, Authentication server, Exchange server (this one goes nicely with PAKE), Inbox server
Just some thoughts !
and it would become doubly confusing to have to say things like "we sometimes use Rendezvous to reach the rendezvous server"
I think the name "Rendezvous" is outdated anyways. Apple renamed it to "Bonjour" some time ago, and the generic name one should use for this is "ZeroConf"