MasaのITC Life

夢は起業家!全てにおいて凡人だけど頑張ることだけはいっちょ前!

IoT

【IEEE802.15.4】SSCSのまとめ

投稿日:2019年3月9日 更新日:

今回はIEEE802.15.4 MAC層全体の中でも特に、"SSCS(Service Specific Convergence Sublayer)"と呼ばれるサブレイヤについてまとめてみます。


IEEE802.15.4物理層についてはこちらです。
URL : https://wireless-network.net/ieee802-15-4-phy/



IEEE802.15.4は、低速短距離無線向けの規格です。それゆえ、ZigBeeや6LoWPANといった低消費電力で動くネットワーク層(+アプリケーション副層)のプロトコルと採用されることが多いです。


IEEE802.15.4のアーキテクチャは以下のようになっています。

SAP : Service Access Point



それでは、SSCSについて詳しく見ていきます。


SSCS : Service Specific Convergence Sublayerとは?


IEEE802.15.4を規格化するグループは、IEEE802.2 LMSC(LAN and MAN Standard Committee)という標準委員会の下にいます。そして、IEEE 802.2 type1 LLC(Logical Link Control)のサポートが義務付けられています。しかし、これはワイヤレスセンサーネットワークよりも以前に規格化された有線向けのものです。そこで、これでは不十分なので、IEEE802.15.4はそれをさらにサポートする形で、SSCS(Service Specific Convergence Sublayer)を定義しました。



したがってSSCSは、IEEE802.2 type1 LLCとIEEE802.15.4MAC層(データサービス : MCPS)のインターフェースとみることが出来ます。 つまり送信するデータは、ネットワーク層 → IEEE802.2 type1 LLC → SSCS を経由してMAC層データサービス(MCPS) へ送られるわけですね。





実際は SSCSでは、以下のことを行っています。
また下の説明では、紛らわしい用語がたくさん出てきます。どの英語が何を表しているか、注意が必要です。


MA-UNITDATA

SSCSへIEEE802.2 type1 LLCからフレームが送らてきてきます。SSCSはそれをMCPS(MAC層データサービス)に流します。また、SSCSへMCPSからデータが送られてきます。SSCSはそれをIEEE802.2 type1 LLCへ渡します。

MA-UNITDATA.request

IEEE802.2 type1 LLCはSSCSへ、SPDU : SSCS Protocol Data Unitを送ります(MA-UNITDATA.request)。言い換えるなら、データをMAC層へ転送してほしいと要求します。

SPDUには、IEEE802.2 type1 LLC以上の層のデータ(LPDU : LLC Protocol Data Unit)やルーティングやアドレス等の情報が入っています。中身は以下になります。

MA-UNITDATA.request (
srcAddr,
dstAddr,
routingInformation,
data,
priority,
serviceClass
)


各種情報の説明です。

  • srcAddr : IEEEのsource addressのこと。
  • dstAddr : IEEEのdestination addressのこと。
  • routingInformation : データを転送する際のルートをどうするか。ここで、ソースルーティングの経路を指定できる。もしソースルーティングを使用しないならnullをいれる。※ソースルーティングとは、事前に経路を決めておくルーティング方法。
  • data : アプリケーション層から引き継がれてきたデータ(LPDU : LLC Protocol Data Unit)。LPDUとは、LLCフレーム(LLCヘッダー + LLCペイロード)のこと。
  • priority : トラフィック優先順位
  • serviceClass : サービスクラス






MA-UNITDATA.indication

MA-UNITDATA.indicationはMA-UNITDATA.requestと逆の動作です。つまりSSCSは、MCPS(MAC層データサービス)からデータが転送されてきたら、次はそれを、SSCSがIEEE802.2 type1 LLCへ転送します(MA-UNITDATA.indication)。

MA-UNITDATA.requestと異なるは、reception statusが追加されている点です。データが物理層からMAC層へ送られたときに、MAC層ではFCSを計算します。このときにFCSの値が有効なら、reception statusにSUCCESSを入れます。もしFCSの値が無効ならば、MAC層でデータをそのまま破棄します。そして、上位層であるSSCSには何も通知しません。

MA-UNITDATA.indication (
srcAddr,
dstAddr,
routingInformation,
data,
reception status,
priority,
serviceClass
)





MA-UNITDATA-STATUS.indication

SSCSはMA-UNITDATA.requestに応答する形で、データ送信が完了したかどうか等の現在の状況をIEEE802.15.4 type1 LLCへ通知する。MA-UNITDATA-STATUS.indicationのパラメータの一つである"transmission status"には、SUCCESS、TRANSMISSION_PENDING、NO_BEACON、CHANNEL_ACCESS_FAILUREのいずれかが入る。

MA-UNITDATA-STATUS.indication (
srcAddr,
dstAddr,
transmssion status,
provPriority,
provServiceClass
)



IEEE802.15.4 SSCSの説明は以上です。



物理層についてまとめたものはこちらです。




最後まで読んでいただきありがとうございました。

お世話になった参考文献


-IoT

Copyright© MasaのITC Life , 2023 All Rights Reserved Powered by STINGER.