vanadium / issues

Vanadium issue tracker
1 stars 1 forks source link

Mojo Discovery performance issues #908

Open aghassemi opened 8 years ago

aghassemi commented 8 years ago

With the Flutter SyncSlides, I have been using the latest Discovery Mojo (v0.0.3 build on Nov 17) and this is a list of current issues I have run into:

1- Scan takes anywhere between immediate to 15 seconds to find advertisements. (Host sees its own advertisements immediately) 2- Scan takes anywhere between a few seconds to a minute to see lost devices when other device explicitly stops advertising (again host device sees the loss immediately) 3- Does not work on GoogleGuest at all (despite bluetooth being enabled).

I am currently on M with two Nexus5 devices using "syncbase-alpha" WiFi.

@bjornick @jhahn21

jhahn21 commented 8 years ago

Are you using mDNS or BLE, or both?

I'm testing with mDNS only on M.

  1. Normally < 1 seconds. If it takes about 15 seconds, it probably be due to packet lost. How often did you see?
  2. If a packet was not lost, it will be gone after about 1 second. (This is a standard.)
  3. What do you mean GoogleHost?
aghassemi commented 8 years ago

ok I updated my Mojo SDK and now I consistently see advertisements being found in < 1 sec. I still have issues with lost however. When I stop a presentation, I always set Rmv in Bonjour browser running on Mac. About a second layer, I see the lost callback in the host device ( the one that stop advertising ) about 70% of the time, about a second later I also see the lost call back on the other device but there are cases that lost never makes it on the other device until TTL expires.

This might be very Mojo specific.

Nothing still works on GoogleGuest WiFi however. (Bonjour browser doesn't see anything either)

aghassemi commented 8 years ago

Works on any network now. Performance is not great about 6 seconds for scan when using Bluetooth only( e.g. connected to a network that does not support MDNS like GoogleGuest). Scan is a lot faster on a network that has MDNS like syncslides-alpha.

bjornick commented 8 years ago

Just to document this, the slow performance is due to fetching the attributes from the remote gatt server. It takes half a second to connect, a full second to get the list of services on the server, and the rest of the time is spent on fetching the attributes.