Carrier and Community
Carrier is how Homes talk to each other. It makes direct, encrypted connections between computers, with no company account that owns your conversations.
What Carrier does
- Checks both ends. Each Home has a Device DID. Carrier proves which computer is on the other end before it sends anything.
- Encrypts the link. Connections use QUIC, the same modern transport that powers much of the web, built on the open-source iroh library.
- Finds Homes nearby. On your local network, Carrier finds other Homes by itself (mDNS).
- Carries updates. Releases come to your Home over Carrier, and are then checked by signature and hash.
Carrier proves which computer sent something. It does not prove who wrote it. The Runtime checks a separate signature for that, before an App sees a message.
Community
When your Home starts for the first time, it joins the shared Community. Community is where you see other people, post in the public chat, and send contact requests.
- Joining Community lets members send you posts and contact requests. It does not give anyone access to your files, Apps or data.
- Inbox asks you once whether members can see when you are online.
- An admin can leave Community in System > Security.
- To keep a Home out of Community from the start, set it up with
elastos setup --isolatedbefore it first joins.
Contacts and direct messages
- Add someone by their DID, from People, a Chat profile card or a message. They do not need to be visible in Public.
- A contact request waits up to 24 hours for the other Home to come online.
- Direct messages work between accepted contacts. They need a direct connection between the two Homes, which some networks block.
- Files you share with contacts travel over Carrier while your Home is running. See Storage and sharing.
What you need
- Outgoing UDP on port 4433. Setup, updates and Community use it. If your network blocks it, Carrier cannot connect.
Honest limits today
- Posts between different networks pass through the main Community node, which can read them until relay support arrives in a later release.
- Direct messages need a direct connection. Some networks block it.
- After a network change, Home reconnects to Community by itself, usually within minutes. If a direct message stays on Sending, restart either Home.
- Anyone who has your Profile DID can send you one contact request. Leaving Community stops all requests.
Turn off local discovery
Carrier announces your Home on your local network so nearby Homes can reconnect directly. To turn this off, set ELASTOS_CARRIER_MDNS=0 in the Runtime’s environment and restart it. Direct reconnection after a restart or address change works best with it on.
Today in v2: Carrier carries Community chat, contact requests, direct messages, file shares between contacts, and updates.
Where it is headed: relays so more networks can connect directly and privately, and people reaching each other by identity, from one DID to another. See the roadmap.