סקירה כללית של פרוטוקולי רשת והעברת הודעות עבור IoT

שלום, חברוביים! מפתח IoT בקורס המקוון הראשון של רוסיה מתחיל ב-OTUS באוקטובר. הקורס פתוח כעת להרשמה, לכן אנו ממשיכים לשתף אתכם בחומרים שימושיים.

סקירה כללית של פרוטוקולי רשת והעברת הודעות עבור IoT

האינטרנט של הדברים (IoT) יבנה על תשתית הרשת, הטכנולוגיות והפרוטוקולים הקיימים המשמשים כיום בבתים/משרדים ובאינטרנט, ויציע הרבה יותר.

מטרת מדריך זה היא לספק סקירה קצרה של פרוטוקולי רשת ויישומים עבור IoT.

הערה: עליך להיות בעל ידע יסודות של טכנולוגיות רשת.

רשתות האינטרנט של הדברים

האינטרנט של הדברים יעבוד במקומות קיימים TCP/IP-רשתות.

TCP/IP משתמש במודל בן ארבע שכבות עם פרוטוקולים ספציפיים בכל שכבה. ראה acquire TCP/IP מודל 4 שכבות (אנחנו בוחנים את המודל בעל ארבע הרמות) TCP/IP).

התרשים שלהלן מציג השוואה בין הפרוטוקולים הנמצאים כיום בשימוש לבין אלו שסביר שישמשו עבור IoT.

סקירה כללית של פרוטוקולי רשת והעברת הודעות עבור IoT

הערות על התרשים:

  1. גודל הגופן משקף את הפופולריות של הפרוטוקול. לדוגמה, בצד שמאל, IPv4 גדול יותר מכיוון שהוא הרבה יותר פופולרי באינטרנט של היום. עם זאת, בצד ימין, הוא קטן יותר מכיוון ש-IPv6 צפוי להיות פופולרי יותר ב-IoT.

  2. לא כל הפרוטוקולים מוצגים.

  3. השינויים הגדולים ביותר הם בקישור הנתונים (שכבות 1 ו-2) ובשכבות היישומים (שכבה 4).

  4. שכבות הרשת והתעבורה כנראה יישארו ללא שינוי.

פרוטוקולי שכבת קישור נתונים

ברמת קישור הנתונים, עליך לחבר התקנים יחד. הם יכולים להיות ממוקמים קרובים זה לזה, כמו ברשתות מקומיות, או במרחק רב זה מזה: ברשתות מטרופוליניות וברשתות גלובליות.

כיום, Ethernet ו-Wi-Fi משמשים ברמה זו ברשתות ביתיות ומשרדיות (LAN), ו-3G/4G ברשתות סלולריות (WAN). עם זאת, התקני IoT רבים צורכים צריכת חשמל נמוכה, כגון חיישנים, ומופעלים רק על ידי סוללות. במקרים אלה, Ethernet אינו מתאים, אך ניתן להשתמש ב-Wi-Fi בעל צריכת חשמל נמוכה ובלוטות' בעלות צריכת חשמל נמוכה.

בעוד שמכשירים אלה עדיין ישתמשו בטכנולוגיות אלחוטיות קיימות (Wi-Fi, Bluetooth, 3G/4G) כדי להתחבר, כדאי לשים לב גם לטכנולוגיות חדשות שתוכננו במיוחד עבור יישומי IoT, שצפויות לצבור פופולריות.

ביניהם:

  • BLE - Bluetooth Low Energy

  • LoRaWAN – WAN ארוך טווח

  • זיג פוקס

  • LTE-M

הם מתוארים ביתר פירוט במאמר. סקירה כללית של טכנולוגיות אלחוטיות של האינטרנט של הדברים (סקירה כללית של טכנולוגיות IoT אלחוטיות).

שכבת רשת

ברמת הרשת, הפרוטוקול ישלוט בטווח הארוך. IPv6לא סביר שייעשה שימוש ב-IPv4, אך ייתכן שיהיה לו תפקיד בשלבים המוקדמים. רוב מכשירי האינטרנט של הדברים לבית, כמו נורות חכמות, משתמשים כיום ב-IPv4.

שכבת תחבורה 

TCP שולט בשכבת התעבורה באינטרנט וברשת. הוא משמש ב-HTTP כמו גם בפרוטוקולי אינטרנט פופולריים רבים אחרים (SMTP, POP3, IMAP4 וכו').

MQTT, שאני מצפה שיהפוך לאחד מפרוטוקולי שכבת היישומים העיקריים להעברת הודעות, משתמש כיום ב-TCP.

עם זאת, בעתיד, בשל עלות נמוכה יותר, אני צופה ש-UDP יהיה פופולרי יותר עבור האינטרנט של הדברים. סביר להניח שהוא יתפרס על פני מספר רב יותר. MQTT-SN, הפועל על גבי UDP. עיין במאמר ההשוואה TCP לעומת UDP .

שכבת יישומים ופרוטוקולי העברת הודעות

מאפיינים חשובים עבור פרוטוקולי IoT:

  • מהירות היא כמות הנתונים המועברת בשנייה.

  • השהייה היא הזמן שלוקח להודעה להישלח.

  • צריכת חשמל.

  • אבטחה.

  • זמינות התוכנה.

נכון לעכשיו, שני פרוטוקולים עיקריים נמצאים בשימוש פעיל ברמה זו: HTTP ו-MQTT.

HTTP הוא כנראה הפרוטוקול הידוע ביותר ברמה זו, העומד בבסיס האינטרנט (WWW). הוא ימשיך להיות חשוב עבור האינטרנט של הדברים, שכן הוא משמש עבור ממשקי REST API, המנגנון העיקרי לתקשורת בין יישומי אינטרנט ושירותים. עם זאת, בשל תקורה גבוהה שלו, סביר להניח שלא יהפוך HTTP לפרוטוקול העיקרי עבור האינטרנט של הדברים, אם כי הוא עדיין יהיה בשימוש נרחב באינטרנט.

MQTT (Message Queuing Telemetry Transport) הפך לפרוטוקול המסרים העיקרי ב-IoT בשל משקלו הקל וקלות השימוש בו. ראה מאמר מבוא ל-MQTT למתחילים (מבוא ל-MQTT למתחילים).

השוואה בין HTTP ו-MQTT עבור IoT

MQTT הופך במהירות לסטנדרט דה פקטו עבור יישומי IoT. זאת בשל משקלו הקל ומהירותו בהשוואה ל-HTTP והעובדה שמדובר בפרוטוקול של אחד לרבים ולא של אחד לאחד (HTTP).

יישומי אינטרנט מודרניים רבים היו שמחים להשתמש ב-MQTT במקום ב-HTTP אם הוא היה זמין בזמן פיתוחם.

דוגמה טובה לכך היא שליחת מידע ללקוחות מרובים, כגון הגעות ועזיבות של רכבות/אוטובוסים/מטוסים. בתרחיש זה, פרוטוקול אחד-לאחד כמו HTTP כרוך בהרבה תקורה ועומס רב על שרתי אינטרנט. קנה מידה של שרתי אינטרנט אלה יכול להיות קשה. בעזרת MQTT, לקוחות מתחברים לברוקר, שניתן להוסיף בקלות לאיזון עומסים. צפו במדריך זה עם סרטון. פרסום מחדש של נתוני HTML דרך MQTT (דוגמה להנחת טיסות) והמאמר MQTT לעומת HTTP עבור האינטרנט של הדברים.

פרוטוקולי העברת הודעות אחרים

HTTP לא תוכנן עבור יישומי IoT, אך כפי שצוין, הוא יהיה בשימוש נרחב עוד זמן מה עקב השימוש הנרחב בו ב API.

כמעט כל פלטפורמות ה-IoT תומכות גם ב-HTTP וגם ב-MQTT.

עם זאת, ישנם פרוטוקולים נוספים שכדאי לשקול.

פרוטוקולים

  • MQTT — (תעבורת טלמטריה של תור הודעות). שימושים TCP/IPמודל הפרסום-הרשמה דורש מתווך הודעות.

  • AMQP — (פרוטוקול מתקדם לתור הודעות). שימושים TCP/IPמודלים של מו"ל-מנוי ומודלים של נקודה לנקודה.

  • COAP — (פרוטוקול יישומים מוגבל). משתמש ב-UDP. תוכנן במיוחד עבור IoT, משתמש במודל בקשה-תגובה כמו HTTP. RFC 7252.

  • DDS — (שירות הפצת נתונים) 

בזה статье הפרוטוקולים העיקריים ויישומיהם נדונים. המסקנה של מאמר זה היא ש-IoT ישתמש בקבוצת פרוטוקולים, בהתאם ליישום המיועד שלהם.

עם זאת, אם נסתכל אחורה, בשנים הראשונות של האינטרנט, פרוטוקול ה-HTTP שהפך מאוחר יותר לדומיננטי היה רק ​​אחד מני פרוטוקולים רבים.

למרות ש-HTTP לא תוכנן במקור להעברת קבצים ודוא"ל, הוא משמש כיום לשניהם.

אני מצפה שאותו דבר יקרה ב-IoT עם פרוטוקולי העברת הודעות: רוב השירותים ישתמשו בפרוטוקול דומיננטי אחד.

להלן תרשימי Google Trends המציגים כיצד הפופולריות של MQTT, COAP ו-AMQP השתנתה במהלך השנים האחרונות.

סקירת גוגל טרנדס 

סקירה כללית של פרוטוקולי רשת והעברת הודעות עבור IoT

תמיכה בפרוטוקולים לפי פלטפורמה

  • Microsoft Azure — MQTT, AMQP, HTTP ו-HTTPS

  • AWS — MQTT, HTTPS, MQTT דרך שקעי אינטרנט

  • IBM Bluemix – MQTT, HTTPS, MQTT

  • ת'ינגוורקס — MQTT, HTTPS, MQTT, AMQP

תקציר

השינויים הגדולים ביותר הם בקישור הנתונים (שכבות 1 ו-2) ובשכבות היישומים (שכבה 4).

שכבות הרשת והתעבורה כנראה יישארו ללא שינוי.

בשכבת האפליקציה, רכיבי האינטרנט של הדברים ישתמשו בפרוטוקולי העברת הודעות. למרות שאנו עדיין בשלבים המוקדמים של פיתוח האינטרנט של הדברים, סביר להניח שיצוצו פרוטוקול העברת הודעות אחד או אולי שניים.

MQTT הפך לפופולרי ביותר בשנים האחרונות, וזה מה שאני מתמקד בו כרגע באתר הזה.

HTTP ימשיך לשמש גם כן, מכיוון שהוא כבר משולב היטב בפלטפורמות IoT קיימות.

זה הכל להיום. אנו מזמינים אתכם להירשם לשיעור הדגמה חינמי בנושא. "צ'אטבוט לפקודות מהירות למכשיר".

קרא עוד:

מקור: www.habr.com

קנה אירוח אמין לאתרים עם הגנת DDoS, שרתי VPS VDS 🔥 קנה אחסון אתרים אמין עם הגנת DDoS, שרתי VPS VDS | ProHoster