2017-12-20 40 views
1

最近、私はLoRa対応デバイスの開発に着手し、Network Serverからプロビジョニングされていない場合には対応していないことに気付きました。これは開発中に多く発生します(特にNSも開発中の場合)。ここでLoRaWAN未確認のダウンリンクと再加入の手順

が起こって何です:ネットワーク/アプリケーションサーバ上でプロビジョニング

  • LORAデバイス。
  • LoRaデバイスはJOINを送信して成功します。
  • Network Serverでデバイスエンティティを削除してもう一度追加しました。これにより、OTAA中に生成されたセッションキーが削除され、devEUIのクリーンアップが発生します。
  • LoRaデバイスはデータの送信を続け、サーバー上で拒否されます。
  • LoRaデバイスは何も処理せずにデータを送信し続けます。

一部のデバイスは、電源を切ると再びJOINを送信します。しかし、すべてのデバイスをパワーサイクルすることはできません!私が見たいくつかのメーターは、ハードワイヤードのバッテリーの後で動作することを拒否されました。

どのようにデバイスは、がNSからのそのような種類の「切断」を検出/処理する必要があるかという「共通の」アプローチはありますか?

+0

サーバーがJOIN ACCEPTメッセージを送り返すと、サーバーはデバイスとの契約を確立しました。サーバー上のデバイスエンティティを削除すると、その契約が破棄されます。 – tofro

+0

"契約違反"は意図的であるかどうかにかかわらず、多くの理由により発生する可能性があります。何があっても、デバイスは正常に動作する必要がありますか? LoRaWANが "違反"を検出するのに役立つものを定義していることは(今のところは)わかりません –

+0

デバイス**は動作しています**。あなたはちょうどそれを聞いてはならないとサーバーに伝えました。デバイスそのものはそれについて多くを行うことはできません。サーバが単にそれを無視しないならば、DOS攻撃はおそらく単純すぎるでしょう。 – tofro

答えて

0

エンドデバイスは、ネットワークサーバのダウンリンクを要求することによって、セッションを定期的にチェックできます。

確認済みのパケットまたはリンクチェック要求を送信すると、サーバからの応答を引き出す必要があります。

ADRは、64個のアップリンクの後にダウンリンクを要求し、応答を受信する必要があります。アップリンク32回後に応答が見られない場合、データレートは減少します。最低のデータレートに達すると、デフォルトのチャネルが再度有効になります。 エンドデバイスは、セッションの切断または切断を考慮しません。バッテリがなくなるまでパケットを送信し続けます。

アプリケーションは、要件と期待に応じてセッションが失われた時期を判断する必要があります。