Salam, Xabrovitlər! oktyabr ayında OTUS-da işə salınır. Kursa qeydiyyat hazırda açıqdır, bununla əlaqədar olaraq faydalı materialları sizinlə paylaşmağa davam edirik.

Əşyaların İnterneti (IoT, Əşyaların İnterneti) hazırda evlərdə/ofislərdə və İnternetdə istifadə olunan mövcud şəbəkə infrastrukturu, texnologiyaları və protokolları üzərində qurulacaq və daha çox şey təklif edəcəkdir.
Bu təlimatın məqsədi IoT üçün şəbəkə və tətbiq protokolları haqqında qısa məlumat verməkdir.
Qeyd. Bilik sahibi olmalısan .
IoT şəbəkələri
IoT mövcud sistemdə işləyəcək TCP/IP-şəbəkələr.
TCP/IP hər səviyyədə spesifik protokolları olan dörd qatlı modeldən istifadə edir. Bax (dörd səviyyəli modelə baxırıq TCP/IP).
Aşağıdakı diaqram hazırda istifadə edilən protokolların və IoT üçün ən çox istifadə olunan protokolların müqayisəsini göstərir.

Diaqram qeydləri:
-
Şriftin ölçüsü protokolun populyarlığını göstərir. Məsələn, solda IPv4 daha böyükdür, çünki müasir İnternetdə daha populyardır. Bununla belə, IPv6-nın IoT-də daha populyar olacağı gözlənildiyi üçün sağda daha kiçikdir.
-
Bütün protokollar göstərilmir.
-
Dəyişikliklərin əksəriyyəti kanalda (1 və 2-ci səviyyə) və tətbiq səviyyələrindədir (səviyyə 4).
-
Şəbəkə və nəqliyyat təbəqələrinin dəyişməz qalacağı ehtimal edilir.
Bağlantı qatının protokolları
Məlumat bağlantısı səviyyəsində (Data Link) siz cihazları bir-birinə bağlamalısınız. Onlar həm yaxın, məsələn, yerli şəbəkələrdə (lokal şəbəkələrdə), həm də bir-birindən böyük məsafədə ola bilər: şəhər (metropoliten şəbəkələri) və qlobal şəbəkələrdə (geniş sahə şəbəkələri).
Hazırda bu səviyyədə ev və ofis şəbəkələri (LAN) Ethernet və Wi-Fi, mobil (WAN) isə 3G/4G-dən istifadə edir. Bununla belə, bir çox IoT cihazları sensorlar kimi aşağı gücə malikdir və yalnız batareyalarla işləyir. Bu hallarda, Ethernet uyğun deyil, lakin aşağı güclü Wi-Fi və aşağı güclü Bluetooth istifadə edilə bilər.
Bu cihazları birləşdirmək üçün mövcud simsiz texnologiyalardan (Wi-Fi, Bluetooth, 3G/4G) istifadə edilməyə davam edilsə də, populyarlığının artması ehtimalı olan IoT tətbiqləri üçün xüsusi olaraq hazırlanmış yeni texnologiyalara da nəzər salmağa dəyər.
Bunlar arasında:
-
BLE – Bluetooth Aşağı Enerji
-
LoRaWAN - Uzun Menzilli WAN
-
SigFox
-
LTE-M
Onlar məqalədə daha ətraflı təsvir edilmişdir. (simsiz IoT texnologiyalarına ümumi baxış).
şəbəkə qatı
Şəbəkə səviyyəsində (Networking) protokol uzun müddətdə üstünlük təşkil edəcəkdir . IPv4-dən istifadə ediləcəyi ehtimalı azdır, lakin o, ilkin mərhələdə müəyyən rol oynaya bilər. Ağıllı işıq lampaları kimi əksər ev IoT cihazları hazırda IPv4-dən istifadə edir.
nəqliyyat təbəqəsi
Nəqliyyat səviyyəsində (Nəqliyyat) İnternet və İnternet TCP-nin üstünlük təşkil edir. O, həm HTTP, həm də bir çox digər məşhur İnternet protokollarında (SMTP, POP3, IMAP4 və s.) istifadə olunur.
Mesajlaşma üçün əsas tətbiq təbəqəsi protokollarından biri olacağını gözlədiyim MQTT hazırda TCP-dən istifadə edir.
Bununla belə, gələcəkdə daha az əlavə xərclər səbəbindən UDP-nin IoT üçün daha populyar olacağını gözləyirəm. Yəqin ki, daha geniş yayılmışdır , UDP üzərində işləyir. Müqayisə məqaləsinə baxın .
Tətbiq təbəqəsi və mesajlaşma protokolları
IoT protokolları üçün vacib xüsusiyyətlər:
-
Sürət - saniyədə ötürülən məlumatların miqdarı.
-
Gecikmə bir mesaj göndərmək üçün lazım olan vaxtdır.
-
Güc istehlakı
-
Təhlükəsizlik.
-
Proqram təminatının mövcudluğu.
Hazırda bu səviyyədə iki əsas protokoldan aktiv istifadə olunur: HTTP və MQTT.
HTTP, yəqin ki, internetin (WWW) əsasını təşkil edən bu səviyyənin ən məşhur protokoludur. O, veb proqramlar və xidmətlər arasında qarşılıqlı əlaqənin əsas mexanizmi olan REST API üçün istifadə edildiyi üçün IoT üçün vacib olmağa davam edəcək. Bununla belə, yüksək məsrəflərə görə HTTP çətin ki, əsas IoT protokoluna çevrilsin, baxmayaraq ki, o, hələ də İnternetdə geniş istifadə olunacaq.
MQTT (Message Queuing Telemetry Transport) yüngülliyi və istifadəsi asanlığı sayəsində IoT-də əsas mesajlaşma protokoluna çevrilmişdir. Məqaləyə baxın (Yeni başlayanlar üçün MQTT-yə giriş).
IoT üçün HTTP və MQTT müqayisəsi
MQTT sürətlə IoT tətbiqləri üçün faktiki standarta çevrilir. Bu, HTTP ilə müqayisədə yüngülliyi və sürəti və onun birdən-birə (HTTP) deyil, birdən çox protokolu olması ilə bağlıdır.
Bir çox müasir veb proqramlar, inkişaf zamanı mövcud olsaydı, HTTP əvəzinə MQTT-dən məmnuniyyətlə istifadə edərdi.
Qatarların/avtobusların/təyyarələrin gəlişi və gedişi kimi çoxsaylı müştərilərə məlumat göndərmək yaxşı bir nümunədir. Bu ssenaridə HTTP kimi bir-bir protokolun çoxlu yükü var və veb serverlərə çox yük qoyur. Bu veb serverləri miqyaslaşdırmaq çətin ola bilər. MQTT ilə müştərilər yük balansı üçün asanlıqla əlavə oluna bilən brokerə qoşulurlar. Bununla bağlı video təlimata baxın və məqalə .
Digər mesajlaşma protokolları
HTTP IoT tətbiqləri üçün nəzərdə tutulmayıb, lakin qeyd edildiyi kimi, geniş istifadəyə görə bir müddət geniş istifadə olunacaq. .
Demək olar ki, bütün IoT platformaları həm HTTP, həm də MQTT-ni dəstəkləyir.
Bununla belə, nəzərə alınmağa dəyər başqa protokollar da var.
Protokollar
-
— (Mesaj Növbəsi Telemetriya Nəqli). İstifadəsi TCP/IPPublish-subscribe modeli mesaj brokeri tələb edir.
-
— (Qabaqcıl Mesaj Növbəsi Protokolu). İstifadəsi TCP/IPNaşir-abunəçi və nöqtə-nöqtə modelləri.
-
- (Məhdud Tətbiq Protokolu). UDP istifadə edir. Xüsusi olaraq IoT üçün nəzərdə tutulmuşdur, HTTP-də olduğu kimi sorğu-cavab modelindən istifadə edir. .
-
- (Məlumatların Paylanması Xidməti)
Bu əsas protokollara və onların tətbiqinə baxılır. Bu məqalənin yekunu ondan ibarətdir ki, IoT onların təyinatından asılı olaraq bir sıra protokollardan istifadə edəcək.
Bununla belə, geriyə baxsaq, İnternetin ilk illərində dominant hala gələcək HTTP protokolu bir çox protokoldan yalnız biri idi.
HTTP əvvəlcə fayl və e-poçt ötürülməsi üçün nəzərdə tutulmasa da, bu gün hər ikisi üçün istifadə olunur.
Eyni şeyin IoT-də mesajlaşma protokolları ilə baş verəcəyini gözləyirəm: əksər xidmətlər bir üstünlük təşkil edən protokoldan istifadə edəcək.
Aşağıda MQTT, COAP və AMQP-nin populyarlığının son bir neçə ildə necə dəyişdiyini göstərən Google Trends qrafikləri verilmişdir.
Google Trends-ə ümumi baxış

Platforma tərəfindən protokol dəstəyi
-
- MQTT, AMQP, HTTP və HTTPS
-
- MQTT, HTTPS, veb-soketlər üzərindən MQTT
-
IBM Bluemix - MQTT, HTTPS, MQTT
-
— MQTT, HTTPS, MQTT, AMQP
Xülasə
Dəyişikliklərin əksəriyyəti kanalda (1 və 2-ci səviyyə) və tətbiq səviyyələrindədir (səviyyə 4).
Şəbəkə və nəqliyyat təbəqələrinin dəyişməz qalacağı ehtimal edilir.
Tətbiq səviyyəsində IoT komponentləri mesajlaşma protokollarından istifadə edəcək. IoT inkişafının hələ erkən mərhələsində olduğumuz halda, bir və ya bəlkə də iki mesajlaşma protokolunun fərqlənəcəyi ehtimalı var.
Son bir neçə il ərzində MQTT ən populyar hala gəldi və mən indi bu saytda diqqətimi ona yönəldirəm.
HTTP, həmçinin mövcud IoT platformalarında yaxşı qurulduğu üçün istifadə olunmağa davam edəcək.
Hamısı budur. Sizi mövzu ilə bağlı pulsuz demo dərsinə yazılmağa dəvət edirik .
Daha çox oxu:
Mənbə: www.habr.com
