एक बार कनेक्शन सेट हो जाने के बाद , मैं अंतर को बहुत महत्वपूर्ण होने की उम्मीद नहीं करूंगा ।
सामान्य रूप से टीएलएस का उत्पादन करने वाले ओवरहेड का टूटना यहां पाया जा सकता है । महत्वपूर्ण बिट्स हैं:
- एक नया टीएलएस सत्र स्थापित करने के लिए ओवरहेड औसतन लगभग 6.5k बाइट्स आता है
- मौजूदा टीएलएस सत्र को फिर से शुरू करने के लिए ओवरहेड औसतन लगभग 330 बाइट्स आता है
- एन्क्रिप्टेड डेटा का कुल ओवरहेड लगभग 40 बाइट्स (20 + 15 + 5) है
- किसी वातावरण की बारीकियों को अधिक सटीक रूप से दर्शाने के लिए उपरोक्त गणनाओं को संशोधित करना आसान है, इसलिए इसे टीएलएस ओवरहेड के लिए एक आधार माना जाना चाहिए न कि प्रश्न के आधिकारिक उत्तर।
यह देखने लायक है कि इन आंकड़ों की गणना कैसे की गई है - आपको इस बात की अधिक समझ होनी चाहिए कि टीएलएस उस सभी के साथ कैसे काम करता है। जैसा कि अन्य उत्तरों में कहा गया है, रेडियो ट्रांसमिशन ऊर्जा के सबसे बड़े उपयोगों में से एक होने की संभावना है, जो अक्सर IoT में एक बाधा है, इसलिए एक बार सत्र की स्थापना के बाद, ओवरहेड बहुत महत्वपूर्ण नहीं है, खासकर यदि आपके संदेश हैं तुच्छ छोटा नहीं है।
जैसा कि लेख में HiveMQ ने नोट किया है कि TLS MQTT के प्रदर्शन को कैसे प्रभावित करता है? :
अच्छी खबर यह है, कि एक MQTT क्लाइंट को केवल प्रति सत्र एक बार कनेक्शन स्थापित करने की आवश्यकता होती है - HTTP जैसे प्रोटोकॉल के विपरीत, जिसे हर अनुरोध पर एक कनेक्शन को फिर से स्थापित करने की आवश्यकता होती है (यदि कोई रख-रखाव नहीं किया जाता है या अन्य तकनीकों जैसे लंबे समय तक मतदान जारी है)। एक बार ब्रोकर से कनेक्ट हो जाने के बाद, क्लाइंट बिना किसी अतिरिक्त हैंडशेक ओवरहेड के संदेश भेज और प्राप्त कर सकता है। टीएलएस के उपयोग के लिए अतिरिक्त बफ़र्स आवंटित करने की आवश्यकता होती है, इसलिए रैम की खपत भी एमक्यूटीटी कनेक्शन के अनुसार थोड़ी अधिक होती है।
जब वे 50,000 क्लाइंट कनेक्ट करते हैं, तो वे ब्रोकर पर सीपीयू उपयोग का एक ग्राफ भी प्रदान करते हैं:
छवि स्रोत: HiveMQ (ऊपर दिए गए लेख देखें)
टिप्पणी है कि यह लगभग निश्चित रूप से है नहीं विशिष्ट उपयोग पैटर्न, लेकिन डेटा फिर भी दिलचस्प है। जैसा कि आप देख सकते हैं, एक बड़ा ओवरहेड है जबकि हैंडशेक प्रगति पर हैं, लेकिन उसके बाद, सीपीयू ओवरहेड लगभग समान है। मैं क्लाइंट पर एक समान बात की उम्मीद करूंगा।
फिर भी, यहाँ सामान्य सलाह सही है: एक वंचित बेंचमार्क आपको वह जानकारी नहीं देगा जिसकी आपको वास्तव में आवश्यकता है; यह जानने के लिए कि टीएलएस आपके उपयोग के मामले को कैसे प्रभावित करेगा, आपको इसे ... अपने उपयोग के मामले में परीक्षण करने की आवश्यकता है !