Passives Rendezvous

Passives Rendezvous unterscheidet sich von „Aktiv“ insofern, als die Phase des Verbindungsaufbaus vom Bereitsteller vor der Identifizierungsphase initiiert wird.

Zusammenfassung

Außerdem lehnt der Bereitsteller initiierte Verbindungen ab, bei denen die Erkennungsantwort keine Gerätebeschreibung enthält, die den Erwartungen entspricht.

In einem passiven Rendezvous-Szenario versetzt das installierte Gerät, das sich bereits auf einer 15.4-PAN und einem Weave-Fabric (das „bestehende Gerät“) befindet, die PAN in den Join-Modus und wartet passiv auf eingehende TCP-Verbindungen am ungesicherten Weave-Port. Die PAN kann zwar zusammengeführt werden, aber ein neues Gerät (der „Joiner“) kann in einem vorläufigen Modus beitreten, bei dem der gesamte Traffic an einen bestimmten Port auf dem Host weitergeleitet wird (in diesem Fall den ungesicherten Weave-Port) auf dem Host, der den Beitritt zum Netzwerk ermöglicht hat. Dieser Traffic ist auf der Linkebene nicht gesichert, da ein vorläufig verbundenes Gerät per Definition keine Kopie der PAN-Verschlüsselungsschlüssel hat. Wenn der Batteriekontakt entfernt oder auf andere Weise vom Nutzer aktiviert wird, sucht der Joiner aktiv nach zusammenführbaren PANs. Für jede zusammenführbare PAN tritt der Joiner vorläufig in das Netzwerk auf und versucht, die PASE-Authentifizierung mit dem vorhandenen Gerät am ungesicherten Weave-Port durchzuführen. Wenn das Joiner-Gerät die richtige PAN findet, ist der PASE-Authentifizierungsversuch erfolgreich. An diesem Punkt führen der Joiner und das vorhandene Gerät einen sicheren Schlüsselaustausch auf Weave-Ebene durch. Anschließend können die restlichen Kopplungsinteraktionen über einen sicheren Kanal durchgeführt werden.

Funktionen

passiveRendezvousWithCompletion:failure:(WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void
passiveRendezvousWithDeviceAccessToken:completion:failure:(NSString *accessToken, WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void
passiveRendezvousWithDevicePairingCode:completion:failure:(NSString *pairingCode, WDMCompletionBlock completionBlock, WDMFailureBlock failureBlock)
virtual void

Funktionen

passiveRendezvousWithCompletion:failure:

virtual void passiveRendezvousWithCompletion:failure:(
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)

passiveRendezvousWithDeviceAccessToken:completion:failure:

virtual void passiveRendezvousWithDeviceAccessToken:completion:failure:(
  NSString *accessToken,
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)

passiveRendezvousWithDevicePairingCode:completion:failure:

virtual void passiveRendezvousWithDevicePairingCode:completion:failure:(
  NSString *pairingCode,
  WDMCompletionBlock completionBlock,
  WDMFailureBlock failureBlock
)