Sigfox Sequence Number(シーケンス番号)管理

技術情報

シーケンス番号は、Sigfoxプロトコルのオーバーヘッドの一部であり、メッセージが送信されるたびにデバイス自体によってインクリメントされます。Sigfoxクラウドは、シーケンス番号をデバイスメッセージの一貫性の観点で確認し、メッセージを受信しますが、このシーケンス番号に連続していない場合、警告・エラーが発生します。

Warningイベント

シーケンス番号に飛びが発生すると、"break in message sequence"イベントが発生します。このイベントは警告イベントであり、メッセージ受信には影響を及ぼしません。

Errorイベント

規定値以上のシーケンス番号抜けがある場合には、"out of message sequence"イベントが発生します。このイベントが発生すると、Sigfoxクラウドは該当デバイスからのメッセージを受信しなくなるため、その状態を復帰させるためには、disengage sequence numberをする必要があります。

シーケンスライフサイクル

シーケンス番号は、4096メッセージで、ゼロリセットされます。


Errorイベントの発生トリガ

Errorイベント判定は、回線契約レベル(Subscription Level)によって異なり、
[前のシーケンス番号] + 1 + 3 x [Subscription Level]
を超えた場合にErrorイベントが発生します。ただし、上記が20未満の場合は20が最低判定値となります。
例えば、ひとつ前に受信できていたシーケンス番号が「5」の場合、

  1. 回線契約レベル(Subscription Level)が140回/日であれば、5 + 1 + 3 x 140 = 426となり、シーケンス番号は6~426の間に収まる必要があります。
  2. 回線契約レベル(Subscription Level)が2回/日であれば、5 + 1 + 3 x 2 = 12となりますが、この回線契約レベルでは常に20未満となるため、6~26が有効なシーケンス番号となります。

この条件を超えてしまった場合に、Errorイベントが発生します。
また、この範囲内のシーケンス番号飛びであれば、Warningイベントとなります。