下图说明OTA被动激活流程的信息流。
被动漫游激活流程Step 1:
终端设备传输一个Join-request消息。
Step 2:
当NS2接收Join-request消息时,NS2将根据DevEUI决定是否它作为终端的hNS。在这个流程中,假定NS2不是终端设备的hNS。
NS2将通过JoinEUI决定是否被配置和JS工作。如果没有配置,然后NS2将终止流程。
如果NS2没有配置JS的IP地址/主机名,NS2将通过DNS去查找JS的IP地址基于JoinEUI。如果DNS查找失败,然后NS2将终止处理流程。
Step 3:
如果NS2已经知道终端设备的hNS,然后Step 3和4被跳过。否则,NS2将发送一个HomeNSReq消息到JS,并携带Join-request中的DevEUI。
Step 4:
如果在JS服务的终端被动漫游激活列表中,这个NS2没有认证授权,JS将返送一个HomeNSAns消息到NS2,并携带Result=NoRoamingAgreement,然后流程被终止。
HS将发送HomeNSAns消息到NS2携带Result=Success。
Step 5:
如果NS2和NS1仅仅含有被动漫游协议,然后Step 5和6被跳过。否则,如果NS2没有通过额外的机制配置NS1的IP地址/主机名,NS2将通过DNS去查找NS1的IP地址。如果DNS查找失败,然后NS2将终止处理流程。
NS2将发送ProfileReq消息到NS1,并携带DevEUI。
Step 6:
如果NS1和NS2没有商业协议,然后NS1将发送ProfileAns消息到NS2,并携带Result=NoRoamingAgreement。如果NS1没有找到与DevEUI对应的终端设备,然后NS1发送ProfileAns消息到NS2并携带Result=UnknownDevEUI。如果终端设备不允许执行漫游激活,NS1将发送一个ProfileAns消息到NS2,并携带Result=RoamingActDisallowed。否则,假定NS1决定使能被动漫游激活,NS1将发送一个ProfileAns消息到NS2,并携带Result=Success、RoamingActivationType。
该流程描述了当RoamingActivationType为Passive的行为。
Step 7:
如果收到的ProfileAns指示Success,或者如果Step 5和6被跳过,然后NS2将发送一个PRStartReq到NS1,携带Join-Request消息ULMetadata的PHYPayload。
Step 8:
当Step 5和6被跳过,如果在NS1和NS2之间没有商业协议,或者如果NS1不能够通过DevEUI标别终端设备,或者如果终端设备没有被允许漫游激活,或者如果NS1不希望使能被动漫游激活通过NS2,然后NS1将执行Step10。
否则,NS1将发送一个JoinReq消息到JS,并携带Join-reqeust消息的PHYPayload,DevEUI、DevAddr、DLSettings、RxDelay、and可选的CFList由NS1定义。
Step 9:
JS处理Join-request消息然后发送JoinAns到NS1,并携带Result=Success,Join-accept的PHYPayload、网络密钥会话组、加密的AppSKey或者SessionKeyID或者两者都有、Lifetime。在失败的情况下,将携带Result=UnknownDevEUI或者MICFailed。网络会话密钥组和AppSKey在LoRaWAN1.0和LoRaWAN1.1中都被生成。当AppSKey从JS传递到NS时,使用共享密钥加密。
Step 10:
如果NS1和NS2之间没有商业协议,然后NS1将发送一个PRStartAns消息到NS2,并携带Result=NoRoamingAgreement。如果NS1不能够通过DevEUI辨识终端设备,然后NS1将发送一个PRStartAns消息到NS2,并携带Result=UnknownDevEUI。如果终端设备不允许执行漫游激活,然后NS1将发送一个PRStartAns消息到NS2,并携带Result= RoamingActDisallowed。如果NS1不希望使能被动漫游激活通过NS2,然后他想发送一个PRStartAns消息到NS2,并携带Result=Deferred,和Lifetime。在接收到的Lifetime有效期内,对于相同的终端设备,NS2将不发送任何的PRStartReq到NS1。
否则,NS1将发送一个PRStartAns消息到NS2,并携带PRStartAns,Join-request的PHYPayload,结合被动漫游的Lifetime。如果NS2被操作为有状态的fNS,NS1将包含DevEUI和ServiceProfile,如果NS1-NS2被动漫游协议要求NS2对上行的报文做MIC校验,那么FCntUp和FNwkSIntKey (in case of R1.1) 或者 NwkSKey包含在PRStartAns消息中。
Step 11:
如果PRStartAns消息指示成功,NS2转发收到的Join-accept消息的PHYPayload到终端设备。终端设备将生成网络会话密钥组,AppSKey基于接收到的Join-accept消息。
如果通过NS传输的由JS到AS生成的加密的AppSKey不可用,然后AS将用在OTA本地激活流程中的Step8中描述的相同的方式,直接重试从JS获取可用的AppSKey。
当这个流程成功完成,NS2变成fNS,NS1将成为新创建的LoRa会话的sNS。
被动漫游停止
当sNS或者fNS决定终止漫游时,被动漫游停止流程被使用。
网友评论