J-PAKE First setup process will fail if initial sync takes longer than 5 minute transaction timeout

RESOLVED INCOMPLETE

Status

RESOLVED INCOMPLETE
7 years ago
3 years ago

People

(Reporter: rnewman, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [closeme-sync.next][sync:setup])

(Reporter)

Description

7 years ago
The v3 J-PAKE flow -- as employed by the work in Bug 675823 -- involves the Mobile device waiting on the J-PAKE channel for credentials. It does this until the Desktop device uploads them, which now only occurs after the Desktop has finished its first sync.

The purpose of this is so that Fennec can finish setup and immediately sync in the knowledge that the desktop's data is all available.

Unfortunately, if the upload takes more than 5 minutes the J-PAKE transaction will be terminated, and Fennec will never get its credentials. This is bad. It's also not great UX to have Fennec sitting there saying "Pairing" for up to five minutes.

The obvious initial treatment of this issue is to exchange credentials in step 3 of the J-PAKE process, and add a fourth step to notify Fennec that the first sync has been completed. This will require a further extension to the protocol to accept 4 stages, which is an enormous flashing neon arrow pointing to the existing neon sign that reads "EXTEND THIS TO TAKE AN ARBITRARY NUMBER OF STAGES".

A fourth stage alone would still allow a timeout to be hit, of course (if the sync takes more than five minutes, Fennec would never be told when to sync), and so we might consider generalizing the use of the J-PAKE channel to include progress messages. This would help with Bug 675824, giving us fine-grained progress reporting.

This bug is something of a tracking bug itself; there will be limitations hit on the server (maximum number of HTTP requests?), protocol extensions, and client work. But it needs to be addressed to handle real-world users in real-world testing environments.
(Reporter)

Updated

6 years ago
Whiteboard: [closeme-sync.next][sync:setup]
There's no more J-PAKE and the servers have been decommissioned; closing this one out.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.