IoT अनुप्रयोग के लिए उपयुक्त प्रोटोकॉल चुनना


12

हमारे पास एक IoT परिदृश्य है जहां थिंग / कॉन्स्ट्रेन्ड डिवाइस एक दिए गए सर्वर को नियमित अंतराल में अपनी जीपीएस स्थिति भेजता है। विवश डिवाइस एक Arduino- जैसा बोर्ड है जो बैटरी से संचालित होता है और कनेक्टिविटी के लिए GSM / SIM शील्ड का उपयोग करता है। वे हमारे डिजाइन लक्ष्य हैं:

  • बैटरी जीवन को अधिकतम करना
  • डेटा ट्रांसफर को कम करना

परीक्षण उद्देश्यों के लिए हमने 500 बाइट्स के आस-पास संदेशों के परिणामस्वरूप HTTP का उपयोग किया है, लेकिन यह डेटा ट्रांसमिशन के लिए अधिक विनियोजित प्रोटोकॉल का उपयोग करने का समय है। डेटा ट्रांसफर की कुछ विशेषताएं ये हैं:

  • पेलोड , सुंदर छोटा है सामान्य रूप से 50 बाइट्स से भी कम समय (सुंदर दूर ठेठ MTUs से दूर, यानी सब कुछ एक आईपी पैकेज में फिट होना चाहिए)
  • डेटा को लगभग एक बार एक मिनट में भेजा जाना चाहिए । कुछ विचरण महत्वपूर्ण नहीं है।
  • यह है कुछ संदेश खोने के लिए ठीक
  • अभी, डिवाइस को सर्व आर (हालांकि, यह भविष्य में बदल सकता है) से किसी भी तरह की प्रतिक्रिया की आवश्यकता नहीं हैन ही सर्वर को उपकरणों के साथ कोई बातचीत शुरू करनी है।

अब तक हमने इन संभावनाओं के बारे में सोचा है:

  • टीसीपी पर कस्टम प्रोटोकॉल । यह HTTP हेडर से संदेश को 10 गुना छोटा बना देगा। यह हमारा विश्वसनीय / रूढ़िवादी दृष्टिकोण है।
  • यूडीपी पर कस्टम प्रोटोकॉल । चूंकि यूडीपी में छोटे हेडर हैं और विश्वसनीयता के लिए कोई ओवरहेड नहीं है, इसलिए हम बहुत कुशल होने की उम्मीद करते हैं। जैसा कि टिप्पणी की गई है, यहां एक संदेश खोना या कोई चिंता नहीं है ... हालांकि, गैर-विश्वसनीयता के साथ अन्य मुद्दे हो सकते हैं जिनके बारे में हमें जानकारी नहीं है।
  • MQTT (टीसीपी पर मानक): टीसीपी की तुलना में लगभग कोई मौजूदा ओवरहेड नहीं है, यह एक विकल्प भी हो सकता है ... हालांकि, हमें जीएसएम / सिम प्रौद्योगिकी के साथ बहुत अधिक अनुभव नहीं है, और पता नहीं कैसे एक निरंतर MQTT कनेक्शन इस तरह से काम करेगा, और क्या कनेक्शन दिल की धड़कन बैंडविथ इस तरह के कम-आवृत्ति डेटा हस्तांतरण के लिए लायक है या नहीं।
  • सीओएपी (यूडीपी पर मानक): जैसा कि आशाजनक लगता है। हेडर के लिए सिर्फ 4 बाइट्स ओवरहेड और यूडीपी पर काम करना। यूडीपी के अज्ञात जोखिम हालांकि हैं।

क्या कोई संकेत दे सकता है? अग्रिम में धन्यवाद।


1
इस परिदृश्य में @RichardChambers, विश्वसनीयता उतना महत्वपूर्ण नहीं है। हम यहां या वहां कुछ पैकेज खो सकते हैं। Ackआईएनजी आवश्यक नहीं है। मुझे लगता है कि यूडीपी के शीर्ष पर विश्वसनीयता पर काम करना बहुत अधिक मायने नहीं रखता है, यही टीसीपी के लिए है।
bgusach

1
मैं कस्टम प्रोटोकॉल डिज़ाइन करके पहिए को सुदृढ़ नहीं करूंगा। CoAP बनाम MQTT का एक Google आपको अधिक विचार देगा। क्या आपको अपने समाधान के भविष्य के प्रमाण की आवश्यकता है, अर्थात। भविष्य में कठोर आवश्यकताओं को संभालना (हानि की गारंटी, प्रतिक्रिया समय, अंतर, आदि)? क्या उपकरण NAT'ed हैं? क्या गेटवे के पीछे उपकरणों का समूह है? कई अज्ञात ...
गामित सहायता

जवाबों:


6

टीसीपी, यूडीपी और एमक्यूटीटी के साथ मेरे अनुभव पर कुछ विचार और साथ ही समीक्षा करने के लिए कुछ अतिरिक्त संसाधन।

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

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

ऐसा लगता है कि आपके मामले में सिर्फ एक साधारण बिल्ली के बच्चे के साथ एक समय पर वापसी के बाद एक बिल्ली को प्राप्त करने के बिना पर्याप्त होगा।

मैंने XML संदेशों को बनाए टीसीपी कनेक्शन पर किया है और इसने बहुत अच्छा काम किया है। मेरे पास एक परत थी जो एक बफर में प्रत्येक संदेश को संभालने के लिए आवेदन परत में पूरा संदेश देती थी। मैंने संदेश की शुरुआत के लिए एक्सएमएल शुरुआती टैग के साथ संदेश को पैकेज करने के लिए एक्सएमएल का उपयोग किया और संपूर्ण संदेश प्राप्त होने पर एक्सएमएल समाप्त होने वाला टैग पता करने के लिए।

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

MQTT एक प्रोटोकॉल है जो एक नेटवर्क ट्रांसपोर्ट लेयर द्वारा ट्रांसपोर्ट किया जाता है, सामान्य रूप से टीसीपी। MQTT एक प्रकाशित / सदस्यता मॉडल का उपयोग करता है ताकि कोई संदेश संग्रह न हो। इसलिए जब एक प्रकाशक एक संदेश प्रकाशित करता है यदि ग्राहक उस समय कनेक्ट नहीं होता है तो जब वह कनेक्ट होता है, तो वह संदेश नहीं देखेगा। MQTT बहुत अधिक वास्तविक समय है, मुझे लगता है कि जो कुछ भी है वह सब कुछ है। मैं छोटे संदेशों के लिए MQTT पसंद करता हूं और JSON पेलोड के साथ MQTT के माध्यम से कुछ प्रयोग कर रहा हूं। इस लेख को देखें एमक्यूटीटी के अवलोकन और सेवा की गुणवत्ता के साथ मॉस्किटो (एमक्यूटीटी) के साथ विश्वसनीय संदेश वितरण । और एक नमूना आवेदन IoT - MQTT पब्लिश और सब्सक्राइबर सी कोड सहित संसाधनों के लिंक के साथ इस संक्षिप्त लेख को देखें ।

संदेश को स्टोर करने के लिए सब्सक्राइबर में JSON टेक्स्ट और SQLite3 डेटाबेस का उपयोग करके MQTT के साथ मेरे प्रयोग https://github.com/RichardChambers/raspberrypi/tree/master/mqtt पर है, हालांकि स्रोत C में है और काफी गड़बड़ है।

यहाँ एक 13 मिनट का वीडियो # 144 इंटरनेट प्रोटोकॉल है: CoAP बनाम MQTT, नेटवर्क सूँघना और IKEA ट्रेडगर्ल हैकिंग की तैयारी । यह CoAP, विवश अनुप्रयोग प्रोटोकॉल के बारे में एक दिलचस्प लेख है : CoAP IoT का 'आधुनिक' प्रोटोकॉल है । CoAP का यह योग है:

शुरुआती अपनाने वाले सहमत हैं कि विवश नेटवर्क और उपकरणों के लिए विवश अनुप्रयोग प्रोटोकॉल बहुत अच्छी तरह से काम करता है। जैसा कि कुछ भी ज्ञात नहीं है: "एक बहुत भीड़भाड़ वाले वायरलेस नेटवर्क पर - वाई-फाई या सेलुलर - सीओएपी काम करना जारी रख सकता है जहां एक ट्रांसमिशन कंट्रोल प्रोटोकॉल-आधारित (टीसीपी) प्रोटोकॉल जैसे एमक्यूटीटी भी एक हैंडशेक को पूरा करने का प्रबंधन नहीं कर सकता है, ”वर्मिलार्ड ने कहा।

ऐसा इसलिए है क्योंकि अधिकांश अन्य IoT प्रोटोकॉल के विपरीत, CoAP UDP पर बनाया गया है। दूसरे शब्दों में, इसका मतलब यह है कि टीसीपी के साथ कोई प्रोटोकॉल हैंडशेक या त्रुटि सुधार नहीं हुआ है। "CoAP HTTP के रूप में विश्वसनीय या MQTT जैसे संदेशों की डिलीवरी की गारंटी नहीं हो सकता है, लेकिन यह बहुत तेज़ है," मैथ्यू ने नोट किया। "यदि आप कुछ संदेश प्राप्त नहीं होने के साथ ठीक हैं, तो आप एक ही समय सीमा के भीतर कई और संदेश भेज सकते हैं।"

एएमक्यूपी, एसटीओएमपी और सीबीओआर जैसे कुछ अन्य हैं जिन्हें आप भी देख सकते हैं। देखें CBOR मानक वेबसाइट के साथ ही इस शोध, कार्यान्वयन और CBOR प्रोटोकॉल के मूल्यांकन । इस लेख को देखें, अपना मैसेजिंग प्रोटोकॉल चुनना: AMQP, MQTT, या STOMP जो AMQP, MQTT और STOMP की तुलना और विरोध करता है और RabitMQ ब्रोकर के बारे में एक नोट के साथ समाप्त होता है:

उम्मीद है, यह आपके उपयोग मामलों में से प्रत्येक के लिए प्रोटोकॉल सूप को नेविगेट करने में कई को शुरू करने में मदद कर सकता है। चूंकि कंपनियों के लिए विभिन्न आवश्यकताओं के साथ कई एप्लिकेशन होना आम बात है, यह निश्चित रूप से संभव है कि आपको विभिन्न अनुप्रयोगों में सभी तीन दलालों की आवश्यकता हो सकती है। जहां एक ठोस मल्टीप्रोटोकॉल, पॉलीग्लॉट ब्रोकर जैसे रैबिटएमक्यू आता है - क्योंकि यह एसटीओएमपी, एमक्यूटीटी, या एएमक्यूपी को भेज सकता है और अन्य लोगों में से एक को बाहर निकाल सकता है। आपको इन प्रोटोकॉलों में से एक द्वारा लॉक-इन करने की आवश्यकता नहीं है - सभी तीनों को RabbitMQ ब्रोकर द्वारा समर्थित है, जिससे यह अनुप्रयोगों के बीच अंतर के लिए एक आदर्श विकल्प है। प्लगइन वास्तुकला भी RabbitMQ को भविष्य में इन प्रोटोकॉल के अतिरिक्त या अपडेट किए गए संस्करणों का समर्थन करने के लिए विकसित करने में सक्षम बनाता है।

कुछ 60 स्लाइड्स का यह स्लाइड शेयर पैकेज दो अलग-अलग IoT समूहों, उपभोक्ताओं और औद्योगिक की जरूरतों को देखते हुए चार अलग-अलग IoT प्रोटोकॉल के बीच तुलना और विपरीत करता है, जिनकी विश्वसनीयता और मजबूती के लिए अलग-अलग आवश्यकताएं होती हैं। IoT के लिए सही मैसेजिंग मानक क्या है?


4

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

कनेक्शन स्थापना और पैकेट ओवरहेड में बचत आपके पक्ष में अच्छी तरह से काम करेगी।

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

इंटरनेट पर यूडीपी पैकेट का नुकसान आम तौर पर अधिक नहीं होता है, और अगर यह है तो यह आमतौर पर एक क्षणभंगुर घटना है। जीएसएम कुछ बफ़रिंग और रेडियो सिग्नल मूल्यांकन प्रदान करता है, इसलिए वैसे भी शोर को कुछ सहिष्णुता प्रदान करता है।


4

क्या आप जीएसएम / सिम का उपयोग करने के लिए बाहरी रूप से विवश हैं?

एक लोरा नेटवर्क का उपयोग करने के लिए एक विकल्प हो सकता है जो:

  • छोटे पेलोड के लिए अत्यधिक अनुकूलित हैं
  • न्यूनतम ऊर्जा उपयोग के लिए डिज़ाइन किया गया है (और इसलिए अधिकतम बैटरी जीवन)
  • डिजाइन द्वारा लंबी दूरी की हैं
  • कनेक्शन कक्षाएं (हमेशा, स्वीकार किए जाते हैं, अनजाने में)
  • शेड्यूल किए गए डाउनलोड विंडोज़ (जैसे, फर्मवेयर अपडेट या आरएक्स एसीके के लिए)

आप ज्यादातर देशों में मौजूदा समुदाय या वाणिज्यिक लोरा बुनियादी ढांचे में प्लग कर सकते हैं, या यदि आप अधिक उपयुक्त थे, तो आप अपने खुद के लोअर हब को तैनात कर सकते हैं।

विश्व स्तर पर सक्रिय विकास और प्रोटोटाइप ढाल की आसान उपलब्धता (उदाहरण के लिए अरुडिनो) है।


1
एक बार एक मिनट के रूप में सवाल में कहा गया है की सिफारिश की लोरा नोड संचरण अंतराल फिट करने के लिए बहुत अक्सर है।
क्रिस स्ट्रैटन

1
सहमत 1 मिनट बहुत बार है। हालांकि @bgusach ने एप्लिकेशन का उल्लेख नहीं किया है। यदि पेलोड आकार को कम करने के लिए बाइनरी एन्कोडेड हो सकता है और यदि 3-5 मिनट (या यहां तक ​​कि 10 मिनट) का अंतराल उपयोग करने योग्य है, तो यह आदर्श हो सकता है। वैसे भी, सिर्फ एक सुझाव के रूप में मैं ध्यान दें कि यह पहले से जवाब में उल्लेख नहीं किया गया था।
ब्रेंडनएमसीएल

1
हां, अगर मैं इसे सही से पढ़ रहा हूं, तो चार मिनट के अंतराल पर 50 बाइट्स जैसा कुछ मुश्किल से फिट हो सकता है; लेकिन सत्यापन की जरूरत है, यह आसानी से कम से कम दो का एक कारक हो सकता है।
क्रिस स्ट्रैटन

1
दिलचस्प है, लेकिन हम जीएसएम / सिम के लिए विवश हैं (यह एक उपभोक्ता अच्छा होने का इरादा है, ऐसा कुछ जिसे बिना किसी बुनियादी ढांचे के लेकिन फोन नेटवर्क के बिना कहीं भी खरीदा और इस्तेमाल किया जा सकता है)।
bgusach

3

मुझे JSON डेटा के साथ एक न्यूनतम HTTP प्रतिक्रिया पसंद है ... एक HTTP प्रतिक्रिया 500 बाइट HTTP हस्तांतरण से काफी नीचे हो सकती है, और आप Restful वेब अनुप्रयोगों के लिए कई ग्राहकों के साथ संगतता बने रहते हैं।

Aprox 130 बाइट्स HTTP डेटा के साथ एक न्यूनतम HTTP संदेश (जैसे JSON परिणाम के साथ) दिखता है:

HTTP/1.1 200 OK
Server: ProprietaryAndroid
Connection: close
Content-Type: application/json
{
  "lat": "42.00000",
  "long": "10.00000"
}

यदि आप बस अपने ऐप से सर्वर पर डेटा भेजना चाहते हैं, तो आप बस एक HTTP GET का उपयोग कर सकते हैं जहां आप URL पैरामीटर के लिए lat / long सेट करते हैं। अनुरोध में प्रतिक्रिया की तुलना में कम डेटा है।

GET /?lat=42.00000&long=10.0000 HTTP/1.1
Host: 192.168.0.2 
User-Agent: Proprietary
Accept: */* 
Connection: close

7
आपके उत्तर के लिए धन्यवाद, लेकिन मैं HTTP प्रतिसाद के साथ आपकी बात नहीं देखता। हम डेटा ट्रांसफर को बचाने के लिए पूरे HTTP प्रोटोकॉल से छुटकारा चाहते हैं। और इसके शीर्ष पर, GETसंसाधनों को संशोधित करने के लिए उपयोग Wrong Thing™करना है
bgusach

आर्किटेक्चरल पक्ष से आपके साथ सहमत हैं कि POST (सार्वभौमिक क्रिया के रूप में) जैसी अन्य क्रियाएं इस बीच REST एपीआई में अधिक सामान्य हैं। निर्भर करता है कि आप किस परिपक्वता स्तर पर अपना REST API विकसित कर रहे हैं। बस यह दिखाना चाहता था कि मौजूदा फ्रेमवर्क (क्लाइंट और सर्वर) के साथ आसान निहितार्थ और अनुकूलता का लाभ उठाते हुए एक HTTP को कैसे कम किया जा सकता है, और साथ ही साथ मानव-पठनीयता को बनाए रखें। एक प्रतिक्रिया नमूने के साथ जवाब देना भ्रामक था ... यदि आप डेटा भेजना चाहते हैं, तो निश्चित रूप से आप एक POST या GET संदेश का उपयोग करेंगे - एक POST के मामले में, उस जेन्स सामग्री से जो मैंने अपने पहले नमूने में दिखाया था।
क्रिस्टोफ बिमिंगर

3

कोई "सर्वश्रेष्ठ" प्रोटोकॉल नहीं है। बस विचार करने के लिए बहुत सारे व्यापार

  • क्या आपके उपकरण बेतरतीब नेटवर्क पर होंगे जिनमें यादृच्छिक पोर्ट अवरुद्ध हैं? यदि हां, तो HTTPS का उपयोग करना बेहतर हो सकता है।

  • यदि आप यूडीपी भेजते हैं, तो आप हमेशा हर बार अंतिम एन माप भेज सकते हैं, ताकि छोटे पैकेट नुकसान को नजरअंदाज कर दिया जाए। आप यूडीपी को एक विश्वसनीय प्रोटोकॉल में बदलकर, एक एसीके पैकेट भी भेज सकते हैं। (UDP के शीर्ष पर अधिकांश प्रोटोकॉल ऐसा करते हैं।)

  • यदि आपके डेटा को अनएन्क्रिप्टेड उजागर किया जाता है तो क्या आपके ग्राहक ध्यान रखेंगे? क्या आपके ग्राहक परवाह करेंगे कि क्या हैकर उन अनएन्क्रिप्टेड कनेक्शन में खराब डेटा इंजेक्ट कर सकता है? (यदि ऐसा है, तो आप एन्क्रिप्शन चाहते हैं।)

  • यदि कोई व्यक्ति आपके प्रोटोकॉल को सूँघता है और डेटा में हेरफेर करता है तो क्या होगा? क्या आप एक डिवाइस को दूसरे के लिए डेटा को ओवरराइट करने से रोक सकते हैं?

  • आपके पास अधिकतम कितने उपकरण होंगे? आप उन सभी उपकरणों से कैसे निपटेंगे? आप उस डेटा को कैसे रूट करने जा रहे हैं, जहां उसे जाने की आवश्यकता है? आप अपने सर्वर इन्फ्रास्ट्रक्चर के रखरखाव और उन्नयन से कैसे निपटते हैं? यदि आपके पास अनुभव नहीं है, तो आप संभवतः एक साथ कई कनेक्शनों को संभालने की अपनी क्षमता का अधिक आकलन कर रहे हैं। किसी विक्रेता को आउटसोर्स करना (और अपने प्रोटोकॉल का उपयोग करना सबसे अच्छा हो सकता है, जैसे AWS IoT)।


3

हमारे पास HTTP बनाम MQTT ट्रांसमिशन दर की तुलना में सटीक परीक्षण है, test2 देखें , अपने वर्तमान परिदृश्य में MQTT आपको HTTP से 50 गुना कम ट्रैफ़िक (और बैटरी) लाएगा।

मूल रूप से MQTT और सादे TCP (संदेश आकार में) में कोई अंतर नहीं है। मैं यहां तक ​​कहूंगा कि MQTT पेलोड में सादे टीसीपी और बाइनरी संदेश और JSON के बीच मूल रूप से कोई अंतर नहीं है। ऐसे में MQTT + JSON का उपयोग करना अधिक सुविधाजनक है और डेटा वितरण और प्रतिनिधित्व के लिए इस तकनीक पर निर्भर है। बस अपनी कुंजियों को कम या ज्यादा नाम दें।

यूडीपी के बारे में, यदि ट्रांसमिशन एक बार प्रति मिनट है, तो टीसीपी का उपयोग करना बेहतर है। यदि ट्रांसमिशन 10-20 मिनट या उससे अधिक है, तो आप यूडीपी को अधिक ट्रैफ़िक / बैटरी प्रभावी समाधान मान सकते हैं। यदि आप ACK के साथ स्वयं के प्रोटोकॉल को विकसित करने का प्रयास करेंगे, तो मैं आपको MQTT या TCP का उपयोग करने की सलाह देता हूं और बस अपने व्यवसाय के मामले पर ध्यान केंद्रित करता हूं।

सामान्य तौर पर - जितना सरल आप इसे लागू करते हैं, सबसे कम परिणाम आपको सबसे कम समय में प्राप्त हो सकते हैं। यदि मैं आप होता, तो उस स्थिति में मैं UDP + के बाइनरी प्रारूप और MQTT + JSON का बेहतर परीक्षण करता और उनमें से किसी एक का चयन करता। या यहां तक ​​कि सिर्फ MQTT + JSON से शुरू किया और फिर सोचें कि क्या यह मेरे मामले के लिए ठीक है।


1
मैं यहां यूडीपी के खिलाफ कुछ शब्दों का उल्लेख करूंगा। हम बड़े SaaS GPS बेड़े प्रबंधन प्रणाली (तब 1 mln वाहन जुड़े हुए) को दुनिया भर में 100 से अधिक देशों में ग्राहक बनाए रखते हैं। और हाल ही में हमने पाया कि अमेरिका आधारित इंटरनेट प्रदाता किसी कारण से यूडीपी पैकेटों को अवरुद्ध कर रहे हैं, यहां तक ​​कि एम 2 एम अनुप्रयोगों के लिए भी। यह कुछ महीने पहले शुरू हुआ था, लेकिन यह बहुत दर्दनाक है, इसलिए मैं आपको टीसीपी-आधारित प्रोटोकॉल (एमक्यूटीटी) का चयन करने और वैश्विक मानकों पर भरोसा करने की सलाह देता हूं। किसी दिन और कुछ देशों में आपको कनेक्शन बनाए रखने के लिए वेबस्कॉक पर MQTT का उपयोग करने के लिए मजबूर किया जाएगा। बस छोटी सी सलाह।
शाल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.