LAN peer discovery
There are three options:
- Use Wi-Fi Direct peer discovery.
Advantages:
- Available on recent Android devices with very little effort
- Doesn't create a Briar-specific traffic fingerprint
- Doesn't reveal the number of contacts
Disadvantages:
- Not available on older Android devices
- May not be available on all platforms
- Use BitTorrent's local peer discovery protocol. Advertise a single infohash for all contacts.
https://en.wikipedia.org/wiki/Local_Peer_Discovery
http://forum.utorrent.com/viewtopic.php?pid=433785#p433785
Advantages:
- Doesn't create a Briar-specific traffic fingerprint
- Doesn't reveal the number of contacts
Disadvantages:
- Direct use of multicast won't work on all Android devices
- Use a custom protocol. Choose a pseudorandom multicast group, advertise it in transport properties. Join the group at startup and periodically send a UDP packet to the group. Join contacts' multicast groups, listen for UDP packets, and connect back via TCP.
Advantages:
- Won't trigger filter rules designed to catch P2P traffic
Disadvantages:
- Direct use of multicast won't work on all Android devices
- Will IGMP traffic reveal the number of contacts?