HeliosVirtualCockpit / Helios

Helios Distribution
https://github.com/HeliosVirtualCockpit/Helios/wiki
GNU General Public License v3.0
199 stars 34 forks source link

export protocol: attempt to ignore data from incorrect vehicle #260

Open derammo opened 4 years ago

derammo commented 4 years ago

export protocol:

we may need to change the header in each packet on vehicle change so we can tell which updates are for the correct vehicle

derammo commented 4 years ago

this is pretty bad on certain switches, like from SA342 to F/A-18C some knobs go crazy. We should seriously consider advertising a new client Id every time we switch aircraft and including this client ID in the active module announcement so that at least Helios that is aware of switching can ignore traffic in the interim that isn't from the right client ID

derammo commented 4 years ago

Helios knows that export16 is running from the vehicle and driver announcements, so we know we can rely on the session id changing

when we receive a session id, we can classify it as old (discard), current (dispatch), or possible new (discard waiting for reset after profile reload)

after profile switch, we need to safely reset cached info and carefully design a protocol that doesn't get caught in loops or fail to reset updates in the presence of loss and reordering