Straipsnyje „“, kalbėdami apie NB-IoT tinklo paketinio branduolio architektūrą, paminėjome naujo SCEF mazgo atsiradimą. Trečioje dalyje paaiškiname, kas tai yra ir kam to reikia?

Kurdami M2M paslaugą, programų kūrėjai susiduria su šiais klausimais:
- kaip atpažinti įrenginius;
- kokį tikrinimo ir autentifikavimo algoritmą naudoti;
- kokį perdavimo protokolą pasirinkti sąveikai su įrenginiais;
- kaip patikimai pristatyti duomenis į įrenginius;
- kaip organizuoti ir nustatyti keitimosi duomenimis su jais taisykles;
- kaip stebėti ir gauti informaciją apie jų būklę internete;
- kaip vienu metu pateikti duomenis į savo įrenginių grupę;
- kaip vienu metu siųsti duomenis iš vieno įrenginio keliems klientams;
- kaip gauti vieningą prieigą prie papildomų operatoriaus paslaugų jūsų įrenginiui tvarkyti.
Norint juos išspręsti, būtina sukurti patentuotus techniškai „sunkius“ sprendimus, dėl kurių didėja darbo sąnaudos ir paslaugų pateikimo į rinką laikas. Čia į pagalbą ateina naujasis SCEF mazgas.
Kaip apibrėžia 3GPP, SCEF (paslaugų galimybių nustatymo funkcija) yra visiškai naujas 3GPP architektūros komponentas, kurio funkcija yra saugiai atskleisti 3GPP tinklo sąsajų teikiamas paslaugas ir galimybes per API.
Paprastais žodžiais tariant, SCEF yra tarpininkas tarp tinklo ir taikomųjų programų serverio (AS), vienas prieigos prie operatoriaus paslaugų langas, skirtas valdyti M2M įrenginį NB-IoT tinkle per intuityvią standartizuotą API sąsają.
SCEF slepia operatoriaus tinklo sudėtingumą, todėl programų kūrėjai gali abstrahuoti sudėtingus, konkrečiam įrenginiui skirtus sąveikos su įrenginiais mechanizmus.
Tinklo protokolus pakeitusi į pažįstamą API programų kūrėjams, SCEF API palengvina naujų paslaugų kūrimą ir sutrumpina pateikimo į rinką laiką. Naujajame mazge taip pat įdiegtos mobiliųjų įrenginių identifikavimo/autentifikavimo funkcijos, apibrėžiamos duomenų mainų tarp įrenginio ir AS taisyklės, panaikinamas poreikis aplikacijų kūrėjams šias funkcijas diegti savo pusėje, šias funkcijas perkeliant ant operatoriaus pečių.
SCEF apima sąsajas, reikalingas taikomųjų programų serverių autentifikavimui ir autorizacijai, UE mobilumui palaikyti, duomenų perdavimui ir įrenginių paleidimui, prieigai prie papildomų paslaugų ir operatoriaus tinklo galimybėms.
AS yra viena T8 sąsaja, API (HTTP/JSON), standartizuota 3GPP. Visos sąsajos, išskyrus T8, veikia pagal DIAMETER protokolą (1 pav.).

T6a – sąsaja tarp SCEF ir MME. Naudojamas mobilumo/sesijos valdymo procedūroms, ne IP duomenų perdavimui, stebėjimo įvykių aprūpinimui ir ataskaitų apie juos gavimui.
S6t – sąsaja tarp SCEF ir HSS. Reikalingas abonento autentifikavimui, taikomųjų programų serverių autorizacijai, išorinio ID ir IMSI/MSISDN derinio gavimui, stebėjimo įvykių aprūpinimui ir ataskaitų apie juos gavimui.
S6m/T4 – sąsajos nuo SCEF prie HSS ir SMS-C (3GPP apibrėžia MTC-IWF mazgą, kuris naudojamas įrenginių paleidimui ir SMS perdavimui NB-IoT tinkluose. Tačiau visuose diegimuose šio mazgo funkcionalumas yra integruotas į SCEF, todėl siekiant supaprastinti grandinę, mes jos atskirai nenagrinėsime). Naudojamas norint gauti maršruto informaciją siunčiant SMS ir bendraujant su SMS centru.
T8 – API sąsaja, skirta SCEF sąveikai su taikomųjų programų serveriais. Per šią sąsają perduodamos ir valdymo komandos, ir srautas.
*realybėje yra daugiau sąsajų, čia pateikiamos tik pačios paprasčiausios. Visas sąrašas pateiktas 3GPP 23.682 (4.3.2 Atskaitos taškų sąrašas).
Žemiau pateikiamos pagrindinės SCEF funkcijos ir paslaugos:
- SIM kortelės identifikatoriaus (IMSI) susiejimas su išoriniu ID;
- ne IP srauto perdavimas (Non-IP Data Delivery, NIDD);
- grupės operacijos naudojant išorinį grupės ID;
- duomenų perdavimo režimo palaikymas su patvirtinimu;
- MO (Mobile Originated) ir MT (Mobile Terminated) duomenų buferis;
- įrenginių ir taikomųjų programų serverių autentifikavimas ir autorizavimas;
- tuo pačiu metu kelių AS naudoja duomenis iš vienos UE;
- specialių UE būsenos stebėjimo funkcijų palaikymas (MONTE – Monitoring Events);
- įrenginio paleidimas;
- teikiant ne IP duomenų tarptinklinį ryšį.
Pagrindinis AS ir SCEF sąveikos principas pagrįstas vadinamąja schema. prenumeratos. Jei reikia gauti prieigą prie bet kurios konkrečios UE SCEF paslaugos, taikomųjų programų serveris turi sukurti prenumeratą, nusiųsdamas komandą į konkrečią prašomos paslaugos API ir atsakydamas gauti unikalų identifikatorių. Po to visi tolesni veiksmai ir ryšiai su UE šios paslaugos sistemoje vyks naudojant šį identifikatorių.
Išorinis ID: universalus įrenginio identifikatorius
Vienas iš svarbiausių AS ir įrenginių sąveikos schemos pakeitimų dirbant per SCEF yra universalaus identifikatoriaus atsiradimas. Dabar vietoj telefono numerio (MSISDN) arba IP adreso, kaip buvo klasikiniame 2G/3G/LTE tinkle, programų serverio įrenginio identifikatorius tampa „išoriniu ID“. Jis apibrėžiamas pagal standartą programų kūrėjams pažįstamu formatu. @ “
Kūrėjams nebereikia diegti įrenginio autentifikavimo algoritmų, kad tinklas visiškai perima šią funkciją. Išorinis ID yra susietas su IMSI, o kūrėjas gali būti tikras, kad, pasiekęs konkretų išorinį ID, jis sąveikauja su konkrečia SIM kortele. Naudodami SIM lustą gaunate visiškai unikalią situaciją, kai išorinis ID unikaliai identifikuoja konkretų įrenginį!
Be to, su vienu IMSI galima susieti kelis išorinius ID – dar įdomesnė situacija susidaro, kai išorinis ID vienareikšmiškai identifikuoja konkrečią aplikaciją, atsakingą už konkrečią paslaugą konkrečiame įrenginyje.
Taip pat pasirodo grupės identifikatorius – išorinės grupės ID, kuris apima atskirų išorinių ID rinkinį. Dabar su viena užklausa SCEF AS gali inicijuoti grupės operacijas – siųsti duomenis arba valdymo komandas į kelis įrenginius, sujungtus į vieną loginę grupę.
Dėl to, kad AS kūrėjams perėjimas prie naujo įrenginio identifikatoriaus negali būti akimirksniu, SCEF paliko galimybę AS bendrauti su UE per standartinį numerį - MSISDN.
Ne IP srauto perdavimas (Non-IP Data Delivery, NIDD)
NB-IoT, optimizuojant nedidelių duomenų kiekių perdavimo mechanizmus, be jau esamų PDN tipų, tokių kaip IPv4, IPv6 ir IPv4v6, atsirado dar vienas tipas - ne IP. Tokiu atveju įrenginiui (UE) nepriskiriamas IP adresas ir duomenys perduodami nenaudojant IP protokolo. Tokių jungčių srautas gali būti nukreipiamas dviem būdais: klasikinis - MME -> SGW -> PGW ir tada per PtP tunelį į AS (2 pav.) arba naudojant SCEF (3 pav.).

Klasikinis metodas nesuteikia jokių ypatingų pranašumų prieš IP srautą, išskyrus perduodamų paketų dydžio sumažinimą dėl IP antraščių nebuvimo. SCEF naudojimas atveria daugybę naujų galimybių ir žymiai supaprastina sąveikos su įrenginiais procedūras.
Perduodant duomenis per SCEF, prieš klasikinį IP srautą atsiranda du labai svarbūs pranašumai:
MT srauto pristatymas į įrenginį per išorinį ID
Norėdami išsiųsti pranešimą į klasikinį IP įrenginį, AS turi žinoti savo IP adresą. Čia iškyla problema: kadangi įrenginys dažniausiai registruodamasis gauna „pilką“ IP adresą, tai per NAT mazgą jis susisiekia su programų serveriu, esančiu internete, kur pilkas adresas paverčiamas baltu. Pilkos ir baltos spalvos IP adresų derinys galioja ribotą laiką, priklausomai nuo NAT nustatymų. Vidutiniškai TCP arba UDP - ne daugiau kaip penkias minutes. Tai yra, jei per 5 minutes su šiuo įrenginiu nebus apsikeista duomenimis, ryšys nutrūks ir įrenginys nebebus pasiekiamas tuo baltu adresu, kuriuo buvo inicijuotas seansas su AS. Yra keletas sprendimų:
1. Naudokite širdies plakimą. Užmezgus ryšį, įrenginys turi keistis paketais su AS kas kelias minutes, taip užkertant kelią NAT vertimams uždaryti. Tačiau apie jokį energetinį efektyvumą čia negali būti nė kalbos.
2. Kiekvieną kartą, jei reikia, patikrinkite paketų prieinamumą įrenginiui AS – siųskite žinutę į uplink.
3. Sukurkite privatų APN (VRF), kur programų serveris ir įrenginiai bus tame pačiame potinklyje, ir priskirkite įrenginiams statinius IP adresus. Tai veiks, bet tai beveik neįmanoma, kai kalbame apie tūkstančių, dešimčių tūkstančių įrenginių parką.
4. Galiausiai tinkamiausias variantas: naudokite IPv6, tai nereikalauja NAT, nes IPv6 adresai pasiekiami tiesiogiai iš interneto. Tačiau net ir tokiu atveju, kai įrenginys bus perregistruojamas, jis gaus naują IPv6 adresą ir nebebus pasiekiamas naudojant ankstesnįjį.
Atitinkamai, norint pranešti apie naują įrenginio IP adresą, į serverį reikia nusiųsti tam tikrą inicijavimo paketą su įrenginio identifikatoriumi. Tada palaukite patvirtinimo paketo iš AS, kuris taip pat turi įtakos energijos vartojimo efektyvumui.
Šie metodai puikiai tinka 2G/3G/LTE įrenginiams, kur įrenginiui nekeliami griežti autonomijos reikalavimai ir dėl to nėra jokių eterio laiko ir srauto apribojimų. Šie metodai netinka NB-IoT dėl didelio energijos suvartojimo.
SCEF išsprendžia šią problemą: kadangi vienintelis AS įrenginio identifikatorius yra išorinis ID, AS tereikia nusiųsti duomenų paketą į SCEF tam tikram išoriniam ID, o SCEF pasirūpina visa kita. Jei įrenginys veikia PSM arba eDRX energijos taupymo režimu, duomenys bus saugomi buferyje ir pateikiami, kai įrenginys bus pasiekiamas. Jei įrenginys bus prieinamas srautui, duomenys bus pristatyti nedelsiant. Tas pats pasakytina ir apie valdymo komandas.
AS gali bet kada atšaukti buferinį pranešimą į UE arba pakeisti jį nauju.
Buferio mechanizmas taip pat gali būti naudojamas perduodant MO duomenis iš UE į AS. Jei SCEF negalėjo nedelsiant pristatyti duomenų į AS, pavyzdžiui, jei AS serveriuose vyksta techninės priežiūros darbai, šie paketai bus saugomi buferyje ir garantuojama, kad bus pristatyti, kai tik AS bus pasiekiama.
Kaip minėta pirmiau, AS prieiga prie konkrečios paslaugos ir UE (o NIDD yra paslauga) yra reguliuojama SCEF taisyklėmis ir politika, o tai suteikia unikalią galimybę vienu metu kelioms AS naudoti vienos UE duomenis. Tie. jei vieną UE užsisakė kelios AS, tai gavęs duomenis iš UE, SCEF išsiųs juos visoms prenumeruojamoms AS. Tai puikiai tinka tais atvejais, kai specializuotų įrenginių parko kūrėjas dalijasi duomenimis tarp kelių klientų. Pavyzdžiui, sukūrę meteorologinių stočių, veikiančių naudojant NB-IoT, tinklą, galite parduoti duomenis iš jų daugeliui paslaugų vienu metu.
Garantuotas pranešimų pristatymo mechanizmas
Patikima duomenų paslauga – tai garantuoto MO ir MT pranešimų pristatymo mechanizmas nenaudojant specializuotų algoritmų protokolo lygmeniu, pavyzdžiui, rankos paspaudimo TCP. Jis veikia įtraukdamas specialią vėliavėlę į pranešimo aptarnavimo dalį, kai keičiamasi tarp UE ir SCEF. Įjungti šį mechanizmą perduodant srautą, ar ne, sprendžia AS.
Jei mechanizmas suaktyvinamas, UE įtraukia specialią vėliavėlę viršutinėje paketo dalyje, kai reikalauja garantuoto MO srauto pristatymo. Gavęs tokį paketą, SCEF atsako į UE su patvirtinimu. Jei UE negauna patvirtinimo paketo, paketas į SCEF bus siunčiamas iš naujo. Tas pats atsitinka ir MT eismui.
Įrenginio stebėjimas (stebėti įvykius – MONTE)
Kaip minėta aukščiau, SCEF funkcionalumas, be kita ko, apima UE būsenos stebėjimo funkcijas, vadinamąsias. įrenginio stebėjimas. Ir jei nauji identifikatoriai ir duomenų perdavimo mechanizmai yra esamų procedūrų optimizavimas (nors ir labai rimtas), tai MONTE yra visiškai naujas funkcionalumas, kurio nėra 2G/3G/LTE tinkluose. MONTE leidžia AS stebėti įrenginio parametrus, tokius kaip ryšio būsena, ryšio pasiekiamumas, vieta, tarptinklinio ryšio būsena ir kt. Apie kiekvieną išsamiau pakalbėsime šiek tiek vėliau.
Jei reikia suaktyvinti bet kokį įrenginio ar įrenginių grupės stebėjimo įvykį, AS užsiprenumeruoja atitinkamą paslaugą, išsiųsdama atitinkamą API MONTE komandą į SCEF, kuri apima tokius parametrus kaip išorinis ID arba išorinės grupės ID, AS identifikatorius, stebėjimas. ataskaitų, kurias AS nori gauti, tipas, skaičius. Jei AS įgaliota vykdyti užklausą, SCEF, priklausomai nuo tipo, pateiks įvykį HSS arba MME (4 pav.). Įvykus įvykiui, MME arba HSS generuoja ataskaitą SCEF, kuri siunčia ją AS.
Visi įvykiai, išskyrus „geografinėje vietovėje esančių UE skaičių“, teikiami per HSS. Du įvykiai „IMSI-IMEI asociacijos pakeitimas“ ir „Tarptinklinio ryšio būsena“ yra stebimi tiesiogiai HSS, likusieji bus teikiami HSS per MME.
Įvykiai gali būti vienkartiniai arba periodiniai ir nustatomi pagal jų tipą.

Ataskaitą apie įvykį (pranešimą) siunčia įvykį sekantis mazgas tiesiai į SCEF (5 pav.).

Svarbus punktas: Stebėjimo įvykiai gali būti taikomi tiek ne IP įrenginiams, prijungtiems per SCEF, tiek IP įrenginiams, perduodantiems duomenis klasikiniu būdu per MME-SGW-PGW.
Pažvelkime atidžiau į kiekvieną stebėjimo įvykį:
Ryšio praradimas — informuoja AS, kad UE nebepasiekiama nei duomenų srautui, nei signalizavimui. Įvykis įvyksta, kai baigiasi UE „mobiliojo pasiekiamumo laikmatis“ MME. Užklausoje dėl tokio tipo stebėjimo AS gali nurodyti savo „Maksimalaus aptikimo laiko“ reikšmę – jei per tą laiką UE nerodo jokios veiklos, AS bus pranešta, kad UE nepasiekiama, nurodant priežastį. Įvykis taip pat įvyksta, jei UE dėl kokios nors priežasties buvo priverstinai pašalintas tinklo.
* Kad tinklas žinotų, kad įrenginys vis dar pasiekiamas, jis periodiškai pradeda atnaujinimo procedūrą – sekimo srities atnaujinimą (TAU). Šios procedūros dažnį nustato tinklas naudodamas laikmatį T3412 arba (PSM atveju T3412_pratęstas), kurio reikšmė į įrenginį perduodama Attach procedūros arba kito TAU metu. Mobiliojo pasiekiamumo laikmatis paprastai yra keliomis minutėmis ilgesnis nei T3412. Jei UE nepadarė TAU iki „Mobiliojo pasiekiamumo laikmačio“ galiojimo pabaigos, tinklas mano, kad jis nebepasiekiamas.
UE pasiekiamumas – Nurodo, kada UE tampa prieinama DL srautui arba SMS žinutėms. Tai atsitinka, kai UE tampa prieinama paieškai (jei UE veikia eDRX režimu) arba kai UE pereina į ECM-CONNECTED režimą (naudojant UE PSM arba eDRX režimu), t.y. padaro TAU arba siunčia aukštyn nukreiptą paketą.
Vietovių ataskaitų teikimas – Šio tipo stebėjimo įvykiai leidžia AS pateikti užklausą dėl UE vietos. Galima pateikti užklausą dėl dabartinės vietos (dabartinė vieta) arba paskutinės žinomos vietos (nustatyta pagal ląstelės ID, iš kurio įrenginys paskutinį kartą atliko TAU arba perdavė srautą), o tai aktualu įrenginiams, veikiantiems PSM arba eDRX energijos taupymo režimais. „Dabartinės vietos“ atveju AS gali prašyti pakartotinių atsakymų, o MME informuos AS kiekvieną kartą, kai pasikeičia įrenginio vieta.
IMSI-IMEI asociacijos pasikeitimas – Kai šis įvykis suaktyvinamas, SCEF pradeda stebėti IMSI (SIM kortelės identifikatoriaus) ir IMEI (įrenginio identifikatoriaus) derinio pokyčius. Įvykus įvykiui, informuoja AS. Galima naudoti norint automatiškai susieti išorinį ID prie įrenginio atliekant suplanuotus pakeitimo darbus arba naudoti kaip įrenginio vagystės identifikatorių.
Tarptinklinio ryšio būsena – šio tipo stebėjimą naudoja AS, kad nustatytų, ar UE yra namų tinkle, ar tarptinklinio ryšio partnerio tinkle. Pasirinktinai galima perduoti operatoriaus, kuriame įrenginys registruotas, PLMN (Public Land Mobile Network).
Ryšio nesėkmė — Šio tipo stebėjimas informuoja AS apie ryšio su įrenginiu sutrikimus, remiantis ryšio nutrūkimo priežastimis (atsijungimo priežasties kodas), gautas iš radijo prieigos tinklo (S1-AP protokolas). Šis įvykis gali padėti nustatyti, kodėl nepavyko užmegzti ryšio – dėl problemų tinkle, pavyzdžiui, kai eNodeb yra perkrautas (radijo ištekliai nepasiekiami) arba dėl paties įrenginio gedimo (prarastas radijo ryšys su UE).
Prieinamumas po DDN gedimo – šis įvykis informuoja AS, kad įrenginys tapo prieinamas po ryšio gedimo. Gali būti naudojamas, kai reikia perkelti duomenis į įrenginį, tačiau ankstesnis bandymas nebuvo sėkmingas, nes UE neatsakė į pranešimą iš tinklo (paklausa) ir duomenys nebuvo pristatyti. Jei UE buvo paprašyta tokio tipo stebėjimo, kai tik įrenginys užmezga įeinantį ryšį, sukuria TAU arba siunčia duomenis aukštyn, AS bus informuotas, kad įrenginys tapo prieinamas. Kadangi DDN (prisijungimo duomenų pranešimo) procedūra veikia tarp MME ir S/P-GW, tokio tipo stebėjimas galimas tik IP įrenginiams.
PDN ryšio būsena – informuoja AS, kai pasikeičia įrenginio būsena (PDN ryšio būsena) – prisijungimas (PDN aktyvinimas) arba atsijungimas (PDN ištrynimas). Tai gali naudoti AS, kad inicijuotų ryšį su UE arba atvirkščiai, kad suprastų, kad ryšys nebeįmanomas. Šio tipo stebėjimas galimas IP ir ne IP įrenginiams.
UE, esančių geografinėje srityje, skaičius – Šio tipo stebėjimą AS naudoja UE skaičiui tam tikroje geografinėje srityje nustatyti.
Įrenginio paleidimas)
2G/3G tinkluose registravimo procedūra tinkle buvo dviejų etapų: pirmiausia įrenginys buvo užregistruotas SGSN (pridėti procedūra), tada, jei reikia, aktyvavo PDP kontekstą - ryšį su paketų šliuzu (GGSN) duomenims perduoti. 3G tinkluose šios dvi procedūros vyko paeiliui, t.y. įrenginys nelaukė momento, kai reikėjo perkelti duomenis, o suaktyvino PDP iškart po to, kai buvo baigta prijungimo procedūra. LTE šios dvi procedūros buvo sujungtos į vieną, tai yra, kai prijungiamas, įrenginys iš karto paprašė aktyvuoti PDN ryšį (analogiškai PDP 2G/3G) per eNodeB į MME-SGW-PGW.
NB-IoT apibrėžia ryšio metodą kaip „prijungti be PDN“, tai yra, UE prisijungia neužmezgusi PDN ryšio. Tokiu atveju srauto perduoti negalima, galima tik priimti arba siųsti SMS. Norint nusiųsti tokiam įrenginiui komandą suaktyvinti PDN ir prisijungti prie AS, buvo sukurta „Įrenginio įjungimo“ funkcija.
Gavęs komandą prijungti tokią UE iš AS, SCEF inicijuoja valdymo SMS siuntimą į įrenginį per SMS centrą. Gavęs SMS, įrenginys suaktyvina PDN ir prisijungia prie AS, kad gautų tolesnius nurodymus arba perduotų duomenis.
Gali būti, kad jūsų įrenginio prenumeratos galiojimo laikas baigiasi SCEF. Taip, abonementas turi savo galiojimo laiką, kurį nustato operatorius arba susitarta su AS. Pasibaigus galiojimo laikui, PDN bus išjungtas MME ir įrenginys taps nepasiekiamas AS. Tokiu atveju taip pat padės funkcija „Įrenginio suaktyvinimas“. Gavęs naujus duomenis iš AS, SCEF išsiaiškins įrenginio ryšio būseną ir pateiks duomenis SMS kanalu.
išvada
SCEF funkcionalumas, žinoma, neapsiriboja aukščiau aprašytomis paslaugomis ir yra nuolat tobulinamas ir plečiamas. Šiuo metu SCEF jau yra standartizuota daugiau nei dešimt paslaugų. Dabar palietėme tik pagrindines funkcijas, kurių reikalauja kūrėjai, apie kitas kalbėsime būsimuose straipsniuose.
Iš karto kyla klausimas: kaip gauti bandomąją prieigą prie šio „stebuklo“ mazgo išankstiniam bandymui ir galimų atvejų derinimui? Viskas labai paprasta. Bet kuris kūrėjas gali išsiųsti užklausą adresu iot.info@mts.ru, kuriame pakanka nurodyti ryšio tikslą, galimo atvejo aprašymą ir kontaktinę informaciją bendravimui.
Iki kito karto!
Autoriai:
- vyresnysis konvergentinių sprendimų ir daugialypės terpės paslaugų skyriaus ekspertas Sergejus Novikovas ,
- konvergentinių sprendimų ir daugialypės terpės paslaugų skyriaus ekspertas Aleksejus Lapšinas
Šaltinis: www.habr.com
