सेल्युलर नेटवर्क ओरिएंटेड IoT प्रोटोकॉल के लिए क्या मैसेजिंग प्रकार का उपयोग किया जा सकता है?


14

यह हाल ही में मेरे ध्यान में आया जब मुझे Youtube पर एक अद्भुत वीडियो मिला:

मिचेल ई। एंडरसन: आईओटी, ओपेनआईसुमिट, लिनक्स फाउंडेशन के लिए तुलनात्मक संदेश तकनीक

उसकी बात के लिए स्लाइड यहाँ उपलब्ध हैं

स्लाइड २६ और ४१ मिनट के वीडियो पर वह इस बारे में चर्चा कर रहा है कि (मुझे पैराफेरेस कैसे करें):

सेलुलर वाहक पसंद करते हैं कि उनके IoT उपभोक्ता अधिक डेटा की खपत के बाद से HTML , XML या JSON प्रकार के संदेशों का उपयोग करते हैं। अधिक डेटा का मतलब है कि वे उपभोक्ताओं को सेवा के लिए अधिक पैसा वसूल सकते हैं।

मैं समझता हूं कि बहुत सारे मालिकाना प्रोटोकॉल अर्थात। सिगफॉक्स , वायरलेस हर्ट या जेड वेव में डेटा दरें कम होती हैं और ऐसे कैरियर पर भारी डेटा भेजना एक महंगा मामला हो सकता है।

सवाल

  • क्या कुछ अन्य लाइट-वेट मैसेजिंग प्रारूप हैं, जो प्रोप्रायटरी प्रोटोकॉल में उपयोग किए जा रहे हैं जो उन्हें वर्तमान और भविष्य के IoT उपभोक्ताओं के लिए लागत-कुशल समाधान बनाता है? (एक अंधेरे में गोली मारी: कुछ प्रारूप जिसे हल्के XML या HTML या JSON कहा जाता है, कहीं झूठ बोल रहा है?)

  • शायद सीबीओआर जैसा कुछ है या शायद इस्तेमाल किया जाता है?


1
मुझे संदेह है कि डेटा बैंडविड्थ शायद एक 2-ऑर्डर लागत है, और वास्तव में एप्लिकेशन डेवलपर द्वारा भुगतान नहीं किया गया है। इसलिए, हालांकि यह चिंता करने लायक है, लेकिन इस क्षेत्र में संभवतः अधिक विकास आ रहा है।
शॉन होउलहेन ने

1
क्या आपकी स्थिति में किसी प्रकार की स्थिति है जिसमें आप रुचि रखते हैं? यदि आप एक अनुमानित प्रकार का डेटा भेज रहे हैं (जैसे कि केवल एक पूर्णांक या कुछ), तो आप एक मार्कअप भाषा को पूरी तरह से छोड़ सकते हैं, लेकिन यह आपके द्वारा व्यक्त की जाने वाली जानकारी की मात्रा को सीमित करता है। यदि आप किसी भी स्थिति में रुचि रखते हैं, जहां आप सामान्य रूप से JSON / HTML / XML का उपयोग करेंगे, तो यह भी ठीक है।
Aurora0001

1
@ औरोरा0001 मैं वास्तव में विशेष रूप से एक परिदृश्य नहीं है, लेकिन इसके बारे में सोचने लायक है। मुझे लगता है कि वेब आधारित नेटवर्क (आईपी वर्चस्व) के लिए अनुकूलता जो सेलुलर नेटवर्क मार्कअप भाषाओं से जुड़ी हो सकती है, डेटा प्रारूप का सबसे अच्छा रूप है। लेकिन चूंकि IoT का क्षेत्र आम तौर पर उठा रहा है, इसलिए यह अलग-अलग प्रारूप देने के लायक हो सकता है।
शान-देसाई

1
तस्वीर को थोड़ा मिश्रण करने के लिए क्षमा करें: किसी भी नेटवर्क पर मैसेजिंग में कई परतें होती हैं, जहां डेटा परत केवल एक शीर्ष पर होती है। वे सभी अनुकूलन के अधीन हैं, या कम से कम हो सकते हैं। उदाहरण के लिए 5G उपयोग किए गए सिग्नलिंग को बढ़ाता है और इस प्रकार अधिक डेटा फिट होता है। 5G हवा में संकेतों की वर्णक्रमीय दक्षता को बढ़ाता है, इसलिए दक्षता को कई तरफ से टैग किया जाता है।
माइको

जवाबों:


6

क्या आप प्रोटोकॉल या संदेश प्रारूप के बारे में पूछ रहे हैं ? जब हम डेटा के प्रारूप का अर्थ करते हैं तो हम अक्सर गलत तरीके से प्रोटोकॉल का उपयोग करते हैं। मैं खुद ऐसा करता हूं, अक्सर क्योंकि भेद हर किसी के लिए स्पष्ट नहीं है।

IoT में प्रयुक्त मैसेजिंग प्रोटोकॉल काफी कॉम्पैक्ट होते हैं, कम से कम http से अधिक होते हैं और महत्वपूर्ण विशेषताओं की पेशकश करते हैं जो मैसेजिंग (सत्र, प्रवाह नियंत्रण, विश्वसनीयता, आदि) में महत्वपूर्ण हैं। संदेश का प्रारूप उस संदेश का डेटा है जिसे भेजा जाता है। मुझे लगता है कि यह वही है जिसके बारे में आप पूछ रहे हैं।

सबसे कॉम्पैक्ट संदेश प्रारूप हाथ से लुढ़का बाइनरी प्रारूप माना जाता है। जब आप कुछ बाइट्स भेजना चाहते हैं तो कम बैंडविड्थ परिदृश्यों में इसका उपयोग अक्सर किया जाता है, और वास्तव में उन बाइट्स की तरह दिखते हैं। बड़े संदेशों के लिए नुकसान महत्वपूर्ण हैं और सामान्य तौर पर, हर कीमत पर बचा जाना चाहिए।

मैं कई अलग-अलग डेटा क्रमांकन विकल्पों पर एक विस्तृत मूल्यांकन के माध्यम से चला गया। मुझे उम्मीद थी कि प्रोटॉब, मैसेजपैक काफी कॉम्पैक्ट होगा, जो कि वे थे। हालाँकि, मेरी दूसरी समस्या उन पुस्तकालयों को ढूंढना थी जो डिवाइस पर C सहित कई विभिन्न प्लेटफार्मों पर बनाए और उपलब्ध थे।

आश्चर्यजनक रूप से, जिस प्रारूप पर मैंने समझौता किया, वह था जिपसन को संकुचित करना JSON। इसे लागू करना और समझना आसान है, हर जगह चलता है, और, जिस डेटा का मैं उपयोग कर रहा था, वह अन्य तरीकों की तुलना में लगभग समान या छोटा था।

यह भी सावधान रहें कि यदि आपके पास TLS जैसे सुरक्षित चैनल हैं, तो आप वैसे भी TLS हैंडशेक में डेटा का एक हिस्सा (> 6KB) का उपभोग करने जा रहे हैं।

कुछ साल पहले, मुझे प्रोटोकॉल बफ़र्स जैसे हावी होने के लिए एक प्रारूप की उम्मीद थी, लेकिन वास्तव में ऐसा नहीं हुआ। संभवतया इस कारण से कि जिस पर आसानी से लिखा जा सकता है और पार्स (और संपीड़ित) किया जा सकता है। मुझे फ्लैटबफर्स का लुक पसंद है , लेकिन इसका फायदा कॉम्पैक्ट होने की तुलना में पार्सिंग स्पीड पर ज्यादा है।

चूंकि आप जांच के चरण में हैं, मेरा सुझाव है कि आप प्रत्येक पर थोड़ा सा कोड लिखें, डेटा का उपयोग करना जो आपके लिए विशिष्ट है, और आपकी तुलना करें। जब आप शुरू करते हैं तो कठिन डेटा होने पर आपके विकल्पों की पुष्टि करने में मदद मिलती है।


4

मार्कअप आधारित फॉर्मेट का बड़ा फायदा यह है कि आप जो डेटा ट्रांसमिट करते हैं, उसकी पसंद में लचीलापन बनाए रखते हैं। यह एक विकसित पारिस्थितिकी तंत्र में बेहद महत्वपूर्ण है जहां आप विकास के कई वर्षों में विकसित होने वाली सेवा का अनुमान लगाते हैं।

हालांकि एक कसकर कोडित बाइनरी डेटा संरचना संचारित करने के लिए कुशल होगी, आपको कम से कम यह तय करना होगा कि संरचना कैसी दिखेगी। जब, बाद में आपको पता चलता है कि एक भी क्षेत्र को विस्तार की आवश्यकता है, तो आप फंस गए हैं। यहां तक ​​कि प्रोटोकॉल के लिए एक अपडेट को रोल करना मुश्किल है, क्योंकि आप एक पुराने एन्कोडिंग को अप्रचलित नहीं कर सकते हैं जब तक कि प्रत्येक समापन बिंदु को अपडेट नहीं किया जाता है।

इससे पता चलता है कि इष्टतम दृष्टिकोण न्यूनतम पैकेट और मार्कअप आधारित एन्कोडिंग का मिश्रण करना है (उत्तरार्द्ध का उपयोग एक कमबैक के रूप में)। इसका मूल्य उच्चतम बैंडविड्थ पेलोड पर निर्भर करता है। यदि आप पहले से ही लगातार वीडियो साइज़ को स्थानांतरित कर रहे हैं, तो अनियंत्रित नियंत्रण डेटा का अनुकूलन कम सार्थक है। यदि आपके पास अक्सर छोटे स्थानान्तरण (एक तापमान हो सकता है) होता है, तो यह संचरण-लेकिन ओवरहेड को कम करने के लिए समझ में आता है-लेकिन हो सकता है कि सिर्फ स्थानान्तरण बैचिंग उतना ही अच्छा हो।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.