NB-IoT. Dostava podatkov brez IP ali preprosto NIDD. Testiranje s komercialno storitvijo MTS

Dober dan in dobro razpoloženje!

To je majhna vadnica o nastavitvi NIDD (Non-IP Data Delivery) v storitvi v oblaku MTS s samoumevnim imenom »M2M Manager«. Bistvo NIDD je energetsko učinkovita izmenjava majhnih podatkovnih paketov preko omrežja NB-IoT med napravami in strežnikom. Če so prej GSM naprave komunicirale s strežnikom z izmenjavo TCP/UDP paketov, je za naprave NB-IoT na voljo dodatna komunikacijska metoda - NIDD. V tem primeru strežnik komunicira z omrežjem operaterja s pomočjo enotnih zahtev POST/GET. Pišem zase (da ne pozabim) in vse, ki se jim zdi koristno.

O NB-IoT lahko preberete:

NB-IoT, ozkopasovni internet stvari. Splošne informacije, značilnosti tehnologije
NB-IoT, ozkopasovni internet stvari. Načini varčevanja z energijo in krmilni ukazi

Teorija NIDD iz MTS

Dokumentacija za modul NB-IoT, ki je bil uporabljen med testiranjem:
Neoway N21.

Storitev MTS za upravljanje naprav M2M.

Da bi dobili občutek za NIDD, potrebujemo:

  • SIM kartica NB-IoT MTS
  • Naprava NB-IoT s podporo za NIDD
  • geslo in prijava iz upravitelja M2M MTS

Kot napravo sem uporabil desko N21 DEMO, geslo in prijavo za dostop do upravitelja M2M pa so mi prijazno posredovali zaposleni v MTS. Za to, kot tudi za raznovrstno pomoč in številna svetovanja, se jim najlepše zahvaljujemo.

Torej, pojdite do upravitelja M2M in preverite, da:

  • v elementu menija »Upravitelj SIM« je »Nadzorni center NB-IoT«;
  • Naša kartica NB-IoT se je pojavila v nadzornem centru NB-IoT in v naslednjih razdelkih:
    NIDD APN
    Računi NIDD
    Varnost NIDD
  • čisto na dnu je menijski element »API M2M« z »NIDD Developer Guide«

Vse skupaj bi moralo izgledati nekako takole:

NB-IoT. Dostava podatkov brez IP ali preprosto NIDD. Testiranje s komercialno storitvijo MTS

Če v upravitelju M2M nekaj manjka, pošljite zahtevo svojemu upravitelju na MTS s podrobnim opisom vaših želja.

Če so potrebni elementi nadzornega središča NB-IoT nameščeni, jih lahko začnete izpolnjevati. Poleg tega je postavka »Računi NIDD« zadnja: zahteva podatke iz sosednjih razdelkov.

  1. NIDD APN: Izmislimo in izpolnimo ime našega APN in "ID aplikacije".
  2. Varnost NIDD: tukaj navedemo IP naslov našega aplikacijskega strežnika, ki bo komuniciral z napravami NB-IoT preko MTS storitve (strežnika).
  3. Računi NIDD: Samo izpolnite vsa polja in kliknite »Shrani«.

Ko so vsi elementi izpolnjeni, se lahko začnete ukvarjati z zahtevami, ki naj bi jih ustvaril naš strežnik. Pojdite na M2M API in preberite NIDD Developer's Guide. Če želite, da se naprava registrira v omrežju NB-IoT, morate ustvariti konfiguracijo SCS AS:

NB-IoT. Dostava podatkov brez IP ali preprosto NIDD. Testiranje s komercialno storitvijo MTS

Priročnik vsebuje opis posameznih parametrov zahteve, podal bom le nekaj majhnih komentarjev:

  1. povezava za pošiljanje zahtev: m2m-manager.mts.ru/scef/v1/3gpp-nidd/v1/{scsAsId}/configurations, kjer je scsAsId »ID aplikacije« iz menijske postavke »NIDD APN«;
  2. osnovni način avtorizacije s prijavo in geslom - uporabite prijavo in geslo, ki ste ga ustvarili pri izpolnjevanju menijske postavke »Računi NIDD«;
  3. notificationDestination - naslov vašega strežnika. Iz njega boste napravam pošiljali ne-ip sporočila, strežnik MTS pa mu bo pošiljal obvestila o pošiljanju in prejemanju ne-ip sporočil.

Ko je konfiguracija SCS AS ustvarjena in se je naprava uspešno registrirala v načinu NIDD v operaterjevem omrežju NB-IoT, lahko poskusite izmenjati prva sporočila, ki niso IP, med strežnikom in napravo.

Če želite prenesti sporočilo s strežnika na napravo, preberite razdelek »2.2 Pošiljanje sporočila« v priročniku:

NB-IoT. Dostava podatkov brez IP ali preprosto NIDD. Testiranje s komercialno storitvijo MTS

{configurationId} v povezavi zahteve - vrednost tipa "hex-abracadabra", pridobljena v fazi ustvarjanja konfiguracije. Videti je takole: b00e2485ed27c0011f0a0200.

datum — vsebina sporočila v kodiranju Base64.

Konfiguriranje naprave NB-IoT za delo v NIDD

Seveda mora naša naprava za izmenjavo podatkov s strežnikom poleg delovanja v omrežju NB-IoT podpirati tudi način NIDD (non-ip). V primeru razvojne plošče N21 DEMO ali druge naprave, ki temelji na NB-IoT modul N21 Zaporedje dejanj za prenos sporočil, ki niso IP, je opisano spodaj.

Aktiviramo konfiguracijo z APN, ki smo ga dobili pri izpolnjevanju postavke »NIDD APN« v upravitelju M2M (tukaj - EFOnidd):

AT+CFGDFTPDN=5,"EFOnidd"

in zahtevajte, da se naprava ponovno registrira v omrežju:

AT+CFUN=0

AT+CFUN=1

po tem izdamo ukaz

AT+CGACT=1,1

in pošlji sporočilo “test”:

AT+NIPDATA=1, "test"

Ko na UART modula N21 prejme sporočilo, ki ni IP, se izda nenaročeno sporočilo v obliki:

+NIPDATA:1,10,3132333435 // prejeto sporočilo brez IP '12345'
če
1 - CID, kontekst pdp
10 - število podatkovnih bajtov za decimalno vejico

Sporočilo prispe na strežnik v kodiranju Base64 (v zahtevi POST).

PS Za simulacijo prenosa podatkov s strežnika je priročno uporabljati program Poštar. Za prejemanje sporočil lahko uporabite katerikoli skript, ki simulira strežnik HTTP.

Upam, da bo komu koristilo.
Hvala.

Vir: www.habr.com

Dodaj komentar