下圖說明OTA被動激活流程的信息流。

Step 1:
終端設(shè)備傳輸一個Join-request消息。
Step 2:
當NS2接收Join-request消息時,NS2將根據(jù)DevEUI決定是否它作為終端的hNS。在這個流程中,假定NS2不是終端設(shè)備的hNS。
NS2將通過JoinEUI決定是否被配置和JS工作。如果沒有配置,然后NS2將終止流程。
如果NS2沒有配置JS的IP地址/主機名,NS2將通過DNS去查找JS的IP地址基于JoinEUI。如果DNS查找失敗,然后NS2將終止處理流程。
Step 3:
如果NS2已經(jīng)知道終端設(shè)備的hNS,然后Step 3和4被跳過。否則,NS2將發(fā)送一個HomeNSReq消息到JS,并攜帶Join-request中的DevEUI。
Step 4:
如果在JS服務(wù)的終端被動漫游激活列表中,這個NS2沒有認證授權(quán),JS將返送一個HomeNSAns消息到NS2,并攜帶Result=NoRoamingAgreement,然后流程被終止。
HS將發(fā)送HomeNSAns消息到NS2攜帶Result=Success。
Step 5:
如果NS2和NS1僅僅含有被動漫游協(xié)議,然后Step 5和6被跳過。否則,如果NS2沒有通過額外的機制配置NS1的IP地址/主機名,NS2將通過DNS去查找NS1的IP地址。如果DNS查找失敗,然后NS2將終止處理流程。
NS2將發(fā)送ProfileReq消息到NS1,并攜帶DevEUI。
Step 6:
如果NS1和NS2沒有商業(yè)協(xié)議,然后NS1將發(fā)送ProfileAns消息到NS2,并攜帶Result=NoRoamingAgreement。如果NS1沒有找到與DevEUI對應(yīng)的終端設(shè)備,然后NS1發(fā)送ProfileAns消息到NS2并攜帶Result=UnknownDevEUI。如果終端設(shè)備不允許執(zhí)行漫游激活,NS1將發(fā)送一個ProfileAns消息到NS2,并攜帶Result=RoamingActDisallowed。否則,假定NS1決定使能被動漫游激活,NS1將發(fā)送一個ProfileAns消息到NS2,并攜帶Result=Success、RoamingActivationType。
該流程描述了當RoamingActivationType為Passive的行為。
Step 7:
如果收到的ProfileAns指示Success,或者如果Step 5和6被跳過,然后NS2將發(fā)送一個PRStartReq到NS1,攜帶Join-Request消息ULMetadata的PHYPayload。
Step 8:
當Step 5和6被跳過,如果在NS1和NS2之間沒有商業(yè)協(xié)議,或者如果NS1不能夠通過DevEUI標別終端設(shè)備,或者如果終端設(shè)備沒有被允許漫游激活,或者如果NS1不希望使能被動漫游激活通過NS2,然后NS1將執(zhí)行Step10。
否則,NS1將發(fā)送一個JoinReq消息到JS,并攜帶Join-reqeust消息的PHYPayload,DevEUI、DevAddr、DLSettings、RxDelay、and可選的CFList由NS1定義。
Step 9:
JS處理Join-request消息然后發(fā)送JoinAns到NS1,并攜帶Result=Success,Join-accept的PHYPayload、網(wǎng)絡(luò)密鑰會話組、加密的AppSKey或者SessionKeyID或者兩者都有、Lifetime。在失敗的情況下,將攜帶Result=UnknownDevEUI或者MICFailed。網(wǎng)絡(luò)會話密鑰組和AppSKey在LoRaWAN1.0和LoRaWAN1.1中都被生成。當AppSKey從JS傳遞到NS時,使用共享密鑰加密。
Step 10:
如果NS1和NS2之間沒有商業(yè)協(xié)議,然后NS1將發(fā)送一個PRStartAns消息到NS2,并攜帶Result=NoRoamingAgreement。如果NS1不能夠通過DevEUI辨識終端設(shè)備,然后NS1將發(fā)送一個PRStartAns消息到NS2,并攜帶Result=UnknownDevEUI。如果終端設(shè)備不允許執(zhí)行漫游激活,然后NS1將發(fā)送一個PRStartAns消息到NS2,并攜帶Result= RoamingActDisallowed。如果NS1不希望使能被動漫游激活通過NS2,然后他想發(fā)送一個PRStartAns消息到NS2,并攜帶Result=Deferred,和Lifetime。在接收到的Lifetime有效期內(nèi),對于相同的終端設(shè)備,NS2將不發(fā)送任何的PRStartReq到NS1。
否則,NS1將發(fā)送一個PRStartAns消息到NS2,并攜帶PRStartAns,Join-request的PHYPayload,結(jié)合被動漫游的Lifetime。如果NS2被操作為有狀態(tài)的fNS,NS1將包含DevEUI和ServiceProfile,如果NS1-NS2被動漫游協(xié)議要求NS2對上行的報文做MIC校驗,那么FCntUp和FNwkSIntKey (in case of R1.1) 或者 NwkSKey包含在PRStartAns消息中。
Step 11:
如果PRStartAns消息指示成功,NS2轉(zhuǎn)發(fā)收到的Join-accept消息的PHYPayload到終端設(shè)備。終端設(shè)備將生成網(wǎng)絡(luò)會話密鑰組,AppSKey基于接收到的Join-accept消息。
如果通過NS傳輸?shù)挠蒍S到AS生成的加密的AppSKey不可用,然后AS將用在OTA本地激活流程中的Step8中描述的相同的方式,直接重試從JS獲取可用的AppSKey。
當這個流程成功完成,NS2變成fNS,NS1將成為新創(chuàng)建的LoRa會話的sNS。
被動漫游停止
當sNS或者fNS決定終止漫游時,被動漫游停止流程被使用。