नोड्स और क्लाइंट्स
इथेरियम कंप्यूटरों (जिन्हें नोड्स के रूप में जाना जाता है) का एक वितरित नेटवर्क है जो ऐसा सॉफ़्टवेयर चलाता है जो ब्लॉक और लेन-देन डेटा को सत्यापित कर सकता है। आपके कंप्यूटर को इथेरियम नोड में बदलने के लिए उस पर सॉफ़्टवेयर चलाया जाना चाहिए। एक नोड बनाने के लिए दो अलग-अलग सॉफ़्टवेयर (जिन्हें 'क्लाइंट' कहा जाता है) की आवश्यकता होती है।
पूर्वापेक्षाएँ
इथेरियम क्लाइंट के अपने स्वयं के इंस्टेंस को चलाने और गहराई में जाने से पहले आपको पीयर-टू-पीयर नेटवर्क की अवधारणा और EVM की मूल बातें समझनी चाहिए। हमारे इथेरियम के परिचय पर एक नज़र डालें।
यदि आप नोड्स के विषय में नए हैं, तो हम अनुशंसा करते हैं कि पहले इथेरियम नोड चलाने पर हमारे उपयोगकर्ता-अनुकूल परिचय को देखें।
नोड्स और क्लाइंट्स क्या हैं?
एक "नोड" इथेरियम क्लाइंट सॉफ़्टवेयर का कोई भी इंस्टेंस है जो इथेरियम सॉफ़्टवेयर चलाने वाले अन्य कंप्यूटरों से जुड़ा होता है, जिससे एक नेटवर्क बनता है। एक क्लाइंट इथेरियम का एक कार्यान्वयन है जो प्रोटोकॉल नियमों के विरुद्ध डेटा को सत्यापित करता है और नेटवर्क को सुरक्षित रखता है। एक नोड को दो क्लाइंट चलाने होते हैं: एक सर्वसम्मति क्लाइंट और एक निष्पादन क्लाइंट।
- निष्पादन क्लाइंट (जिसे निष्पादन इंजन, EL क्लाइंट या पहले ईटीएच1 क्लाइंट के रूप में भी जाना जाता है) नेटवर्क में प्रसारित नए लेन-देन को सुनता है, उन्हें EVM में निष्पादित करता है, और सभी वर्तमान इथेरियम डेटा की नवीनतम स्थिति और डेटाबेस रखता है।
- सर्वसम्मति क्लाइंट (जिसे बीकन नोड, CL क्लाइंट या पहले ईटीएच2 क्लाइंट के रूप में भी जाना जाता है) प्रूफ-ऑफ़-स्टेक (PoS) सर्वसम्मति एल्गोरिदम को लागू करता है, जो नेटवर्क को निष्पादन क्लाइंट से मान्य डेटा के आधार पर समझौता प्राप्त करने में सक्षम बनाता है। एक तीसरा सॉफ़्टवेयर भी है, जिसे 'सत्यापक' के रूप में जाना जाता है जिसे सर्वसम्मति क्लाइंट में जोड़ा जा सकता है, जिससे एक नोड नेटवर्क को सुरक्षित करने में भाग ले सकता है।
ये क्लाइंट इथेरियम चेन के हेड पर नज़र रखने के लिए एक साथ काम करते हैं और उपयोगकर्ताओं को इथेरियम नेटवर्क के साथ इंटरैक्ट करने की अनुमति देते हैं। एक साथ काम करने वाले कई सॉफ़्टवेयर के साथ मॉड्यूलर डिज़ाइन को एनकैप्सुलेटेड जटिलता (opens in a new tab) कहा जाता है। इस दृष्टिकोण ने द मर्ज को निर्बाध रूप से निष्पादित करना आसान बना दिया, क्लाइंट सॉफ़्टवेयर को बनाए रखना और विकसित करना आसान बनाता है, और व्यक्तिगत क्लाइंट के पुन: उपयोग को सक्षम बनाता है, उदाहरण के लिए, लेयर 2 (l2) इकोसिस्टम में।
एक युग्मित निष्पादन और सर्वसम्मति क्लाइंट का सरलीकृत आरेख।
क्लाइंट विविधता
निष्पादन क्लाइंट और सर्वसम्मति क्लाइंट दोनों विभिन्न टीमों द्वारा विकसित विभिन्न प्रोग्रामिंग भाषाओं में मौजूद हैं।
कई क्लाइंट कार्यान्वयन एक ही कोडबेस पर अपनी निर्भरता को कम करके नेटवर्क को मजबूत बना सकते हैं। आदर्श लक्ष्य नेटवर्क पर हावी होने वाले किसी भी क्लाइंट के बिना विविधता प्राप्त करना है, जिससे विफलता के संभावित एकल बिंदु को समाप्त किया जा सके। भाषाओं की विविधता एक व्यापक डेवलपर समुदाय को भी आमंत्रित करती है और उन्हें अपनी पसंदीदा भाषा में एकीकरण बनाने की अनुमति देती है।
क्लाइंट विविधता के बारे में अधिक जानें।
इन कार्यान्वयनों में जो बात समान है वह यह है कि वे सभी एक ही विनिर्देश का पालन करते हैं। विनिर्देश यह निर्धारित करते हैं कि इथेरियम नेटवर्क और ब्लॉकचेन कैसे कार्य करते हैं। हर तकनीकी विवरण परिभाषित किया गया है और विनिर्देशों को इस प्रकार पाया जा सकता है:
- मूल रूप से, इथेरियम येलो पेपर (opens in a new tab)
- निष्पादन विनिर्देश (opens in a new tab)
- सर्वसम्मति विनिर्देश (opens in a new tab)
- विभिन्न नेटवर्क अपग्रेड में लागू किए गए EIPs (opens in a new tab)
नेटवर्क में नोड्स को ट्रैक करना
कई ट्रैकर्स इथेरियम नेटवर्क में नोड्स का रीयल-टाइम अवलोकन प्रदान करते हैं। ध्यान दें कि विकेंद्रीकृत नेटवर्क की प्रकृति के कारण, ये क्रॉलर केवल नेटवर्क का एक सीमित दृश्य प्रदान कर सकते हैं और अलग-अलग परिणाम रिपोर्ट कर सकते हैं।
- Etherscan द्वारा नोड्स का नक्शा (opens in a new tab)
- Bitfly द्वारा Ethernodes (opens in a new tab)
- Chainsafe द्वारा Nodewatch (opens in a new tab), सर्वसम्मति नोड्स को क्रॉल करना
- Monitoreth (opens in a new tab) - MigaLabs द्वारा, एक वितरित नेटवर्क मॉनिटरिंग टूल
- साप्ताहिक नेटवर्क स्वास्थ्य रिपोर्ट (opens in a new tab) - ProbeLab द्वारा, Nebula क्रॉलर (opens in a new tab) और अन्य टूल का उपयोग करके
नोड के प्रकार
यदि आप अपना स्वयं का नोड चलाना चाहते हैं, तो आपको यह समझना चाहिए कि विभिन्न प्रकार के नोड हैं जो डेटा का अलग-अलग तरीके से उपभोग करते हैं। वास्तव में, क्लाइंट तीन अलग-अलग प्रकार के नोड चला सकते हैं: लाइट, पूर्ण और आर्काइव। विभिन्न सिंकिंग रणनीतियों के विकल्प भी हैं जो तेज़ सिंकिंग समय को सक्षम करते हैं। सिंकिंग का तात्पर्य है कि यह इथेरियम की स्थिति पर कितनी जल्दी सबसे अद्यतित जानकारी प्राप्त कर सकता है।
पूर्ण नोड
पूर्ण नोड ब्लॉकचेन का ब्लॉक-दर-ब्लॉक सत्यापन करते हैं, जिसमें प्रत्येक ब्लॉक के लिए ब्लॉक बॉडी और स्थिति डेटा को डाउनलोड करना और सत्यापित करना शामिल है। पूर्ण नोड के विभिन्न वर्ग हैं - कुछ जेनेसिस ब्लॉक से शुरू होते हैं और ब्लॉकचेन के पूरे इतिहास में हर एक ब्लॉक को सत्यापित करते हैं। अन्य अपना सत्यापन एक अधिक हालिया ब्लॉक से शुरू करते हैं जिसे वे मान्य मानते हैं (उदा., Geth का 'स्नैप सिंकिंग')। भले ही सत्यापन कहीं से भी शुरू हो, पूर्ण नोड केवल अपेक्षाकृत हाल के डेटा (आमतौर पर सबसे हाल के 128 ब्लॉक) की एक स्थानीय प्रतिलिपि रखते हैं, जिससे डिस्क स्थान बचाने के लिए पुराने डेटा को हटाया जा सकता है। आवश्यकता पड़ने पर पुराने डेटा को पुन: उत्पन्न किया जा सकता है।
- पूर्ण ब्लॉकचेन डेटा संग्रहीत करता है (हालांकि इसे समय-समय पर काटा जाता है ताकि एक पूर्ण नोड जेनेसिस तक सभी स्थिति डेटा संग्रहीत न करे)
- ब्लॉक सत्यापन में भाग लेता है, सभी ब्लॉक और स्थितियों को सत्यापित करता है।
- सभी स्थितियों को या तो स्थानीय संग्रहण से प्राप्त किया जा सकता है या पूर्ण नोड द्वारा 'स्नैपशॉट' से पुन: उत्पन्न किया जा सकता है।
- नेटवर्क की सेवा करता है और अनुरोध पर डेटा प्रदान करता है।
आर्काइव नोड
आर्काइव नोड पूर्ण नोड होते हैं जो जेनेसिस से हर ब्लॉक को सत्यापित करते हैं और डाउनलोड किए गए किसी भी डेटा को कभी नहीं हटाते हैं।
- पूर्ण नोड में रखी गई हर चीज़ को संग्रहीत करता है और ऐतिहासिक स्थितियों का एक आर्काइव बनाता है। इसकी आवश्यकता तब होती है जब आप ब्लॉक #4,000,000 पर खाता शेष जैसी किसी चीज़ को क्वेरी करना चाहते हैं, या ट्रेसिंग का उपयोग करके उन्हें मान्य किए बिना अपने स्वयं के लेन-देन सेट का सरलता और विश्वसनीयता से परीक्षण करना चाहते हैं।
- यह डेटा टेराबाइट्स की इकाइयों का प्रतिनिधित्व करता है, जो आर्काइव नोड्स को औसत उपयोगकर्ताओं के लिए कम आकर्षक बनाता है लेकिन ब्लॉक एक्सप्लोरर, वॉलेट विक्रेताओं और चेन एनालिटिक्स जैसी सेवाओं के लिए उपयोगी हो सकता है।
आर्काइव के अलावा किसी भी मोड में क्लाइंट्स को सिंकिंग करने से ब्लॉकचेन डेटा कट जाएगा। इसका मतलब है, सभी ऐतिहासिक स्थितियों का कोई आर्काइव नहीं है लेकिन पूर्ण नोड उन्हें मांग पर बनाने में सक्षम है।
आर्काइव नोड्स के बारे में अधिक जानें।
लाइट नोड
हर ब्लॉक को डाउनलोड करने के बजाय, लाइट नोड केवल ब्लॉक हेडर डाउनलोड करते हैं। इन हेडर में ब्लॉक की सामग्री के बारे में सारांश जानकारी होती है। लाइट नोड को आवश्यक कोई भी अन्य जानकारी पूर्ण नोड से मांगी जाती है। लाइट नोड तब ब्लॉक हेडर में स्थिति रूट के विरुद्ध प्राप्त डेटा को स्वतंत्र रूप से सत्यापित कर सकता है। लाइट नोड उपयोगकर्ताओं को पूर्ण नोड चलाने के लिए आवश्यक शक्तिशाली हार्डवेयर या उच्च बैंडविड्थ के बिना इथेरियम नेटवर्क में भाग लेने में सक्षम बनाते हैं। अंततः, लाइट नोड मोबाइल फोन या एम्बेडेड उपकरणों पर चल सकते हैं। लाइट नोड सर्वसम्मति में भाग नहीं लेते हैं (यानी, वे सत्यापक नहीं हो सकते हैं), लेकिन वे पूर्ण नोड के समान कार्यक्षमता और सुरक्षा गारंटी के साथ इथेरियम ब्लॉकचेन तक पहुंच सकते हैं।
लाइट क्लाइंट इथेरियम के लिए सक्रिय विकास का एक क्षेत्र हैं और हम जल्द ही सर्वसम्मति परत और निष्पादन परत के लिए नए लाइट क्लाइंट देखने की उम्मीद करते हैं। गॉसिप नेटवर्क (opens in a new tab) पर लाइट क्लाइंट डेटा प्रदान करने के संभावित मार्ग भी हैं। यह फायदेमंद है क्योंकि गॉसिप नेटवर्क अनुरोधों को पूरा करने के लिए पूर्ण नोड्स की आवश्यकता के बिना लाइट नोड्स के नेटवर्क का समर्थन कर सकता है।
इथेरियम अभी तक लाइट नोड्स की एक बड़ी आबादी का समर्थन नहीं करता है, लेकिन लाइट नोड समर्थन एक ऐसा क्षेत्र है जिसके निकट भविष्य में तेजी से विकसित होने की उम्मीद है। विशेष रूप से, निम्बस (opens in a new tab), Helios (opens in a new tab), और लोडस्टार (opens in a new tab) जैसे क्लाइंट वर्तमान में लाइट नोड्स पर भारी ध्यान केंद्रित कर रहे हैं।
मुझे इथेरियम नोड क्यों चलाना चाहिए?
नोड चलाने से आप नेटवर्क को अधिक मजबूत और विकेंद्रीकृत रखकर उसका समर्थन करते हुए सीधे, विश्वासहीन और निजी तौर पर इथेरियम का उपयोग कर सकते हैं।
आपके लिए लाभ
अपना स्वयं का नोड चलाने से आप एक निजी, आत्मनिर्भर और विश्वासहीन तरीके से इथेरियम का उपयोग कर सकते हैं। आपको नेटवर्क पर भरोसा करने की आवश्यकता नहीं है क्योंकि आप अपने क्लाइंट के साथ डेटा को स्वयं सत्यापित कर सकते हैं। "भरोसा मत करो, सत्यापित करो" एक लोकप्रिय ब्लॉकचेन मंत्र है।
- आपका नोड सर्वसम्मति नियमों के विरुद्ध सभी लेन-देन और ब्लॉक को स्वयं सत्यापित करता है। इसका मतलब है कि आपको नेटवर्क में किसी अन्य नोड पर निर्भर रहने या उन पर पूरी तरह से भरोसा करने की आवश्यकता नहीं है।
- आप अपने स्वयं के नोड के साथ इथेरियम वॉलेट का उपयोग कर सकते हैं। आप विकेंद्रीकृत एप्लिकेशन (dapp) का अधिक सुरक्षित और निजी तौर पर उपयोग कर सकते हैं क्योंकि आपको बिचौलियों को अपने पते और शेष राशि लीक नहीं करनी होगी। सब कुछ आपके अपने क्लाइंट से जांचा जा सकता है। मेटामास्क (opens in a new tab), Frame (opens in a new tab), और कई अन्य वॉलेट RPC-आयात की पेशकश करते हैं, जिससे वे आपके नोड का उपयोग कर सकते हैं।
- आप अन्य सेवाओं को चला सकते हैं और स्वयं-होस्ट कर सकते हैं जो इथेरियम के डेटा पर निर्भर करती हैं। उदाहरण के लिए, यह एक बीकन चेन सत्यापक, लेयर 2 (l2) जैसा सॉफ़्टवेयर, बुनियादी ढांचा, ब्लॉक एक्सप्लोरर, भुगतान प्रोसेसर आदि हो सकता है।
- आप अपने स्वयं के कस्टम RPC एंडपॉइंट प्रदान कर सकते हैं। आप इन एंडपॉइंट्स को समुदाय को सार्वजनिक रूप से भी पेश कर सकते हैं ताकि उन्हें बड़े केंद्रीकृत प्रदाताओं से बचने में मदद मिल सके।
- आप इंटर-प्रोसेस कम्युनिकेशंस (IPC) का उपयोग करके अपने नोड से जुड़ सकते हैं या अपने प्रोग्राम को प्लगइन के रूप में लोड करने के लिए नोड को फिर से लिख सकते हैं। यह कम विलंबता प्रदान करता है, जो बहुत मदद करता है, उदा., Web3 लाइब्रेरी का उपयोग करके बहुत सारे डेटा को संसाधित करते समय या जब आपको अपने लेन-देन को जितनी जल्दी हो सके बदलने की आवश्यकता होती है (यानी, फ्रंटरनिंग)।
- आप नेटवर्क को सुरक्षित करने और पुरस्कार अर्जित करने के लिए सीधे ETH स्टेक कर सकते हैं। आरंभ करने के लिए सोलो स्टेकिंग देखें।
नेटवर्क लाभ
इथेरियम के स्वास्थ्य, सुरक्षा और परिचालन लचीलेपन के लिए नोड्स का एक विविध सेट महत्वपूर्ण है।
- पूर्ण नोड सर्वसम्मति नियमों को लागू करते हैं ताकि उन्हें ऐसे ब्लॉक स्वीकार करने के लिए धोखा न दिया जा सके जो उनका पालन नहीं करते हैं। यह नेटवर्क में अतिरिक्त सुरक्षा प्रदान करता है क्योंकि यदि सभी नोड लाइट नोड होते, जो पूर्ण सत्यापन नहीं करते हैं, तो सत्यापक नेटवर्क पर हमला कर सकते थे।
- एक हमले के मामले में जो प्रूफ-ऑफ़-स्टेक (PoS) के क्रिप्टो-आर्थिक बचाव को पार कर जाता है, ईमानदार चेन का पालन करने का विकल्प चुनकर पूर्ण नोड्स द्वारा एक सामाजिक पुनर्प्राप्ति की जा सकती है।
- नेटवर्क में अधिक नोड्स के परिणामस्वरूप अधिक विविध और मजबूत नेटवर्क होता है, जो विकेंद्रीकरण का अंतिम लक्ष्य है, जो एक सेंसरशिप-प्रतिरोधी और विश्वसनीय प्रणाली को सक्षम बनाता है।
- पूर्ण नोड हल्के क्लाइंट के लिए ब्लॉकचेन डेटा तक पहुंच प्रदान करते हैं जो इस पर निर्भर करते हैं। लाइट नोड पूरे ब्लॉकचेन को संग्रहीत नहीं करते हैं, इसके बजाय वे ब्लॉक हेडर में स्थिति रूट के माध्यम से डेटा को सत्यापित करते हैं। यदि उन्हें आवश्यकता हो तो वे पूर्ण नोड्स से अधिक जानकारी का अनुरोध कर सकते हैं।
यदि आप एक पूर्ण नोड चलाते हैं, तो पूरे इथेरियम नेटवर्क को इससे लाभ होता है, भले ही आप सत्यापक न चलाएं।
अपना स्वयं का नोड चलाना
क्या आप अपना स्वयं का इथेरियम क्लाइंट चलाने में रुचि रखते हैं?
शुरुआती-अनुकूल परिचय के लिए अधिक जानने के लिए हमारे नोड चलाएं पृष्ठ पर जाएं।
यदि आप अधिक तकनीकी उपयोगकर्ता हैं, तो अपना स्वयं का नोड कैसे स्पिन करें पर अधिक विवरण और विकल्पों में गोता लगाएँ।
विकल्प
अपना स्वयं का नोड सेट करने में आपको समय और संसाधन लग सकते हैं लेकिन आपको हमेशा अपना स्वयं का इंस्टेंस चलाने की आवश्यकता नहीं होती है। इस मामले में, आप किसी तृतीय पक्ष API प्रदाता का उपयोग कर सकते हैं। इन सेवाओं का उपयोग करने के अवलोकन के लिए, सेवा के रूप में नोड्स देखें।
यदि कोई आपके समुदाय में सार्वजनिक API के साथ इथेरियम नोड चलाता है, तो आप कस्टम RPC के माध्यम से अपने वॉलेट को सामुदायिक नोड पर इंगित कर सकते हैं और किसी यादृच्छिक विश्वसनीय तृतीय पक्ष की तुलना में अधिक गोपनीयता प्राप्त कर सकते हैं।
दूसरी ओर, यदि आप एक क्लाइंट चलाते हैं, तो आप इसे अपने उन दोस्तों के साथ साझा कर सकते हैं जिन्हें इसकी आवश्यकता हो सकती है।
निष्पादन क्लाइंट
इथेरियम समुदाय कई ओपन-सोर्स निष्पादन क्लाइंट (जिन्हें पहले 'ईटीएच1 क्लाइंट', या केवल 'इथेरियम क्लाइंट' के रूप में जाना जाता था) बनाए रखता है, जिन्हें विभिन्न प्रोग्रामिंग भाषाओं का उपयोग करके विभिन्न टीमों द्वारा विकसित किया गया है। यह नेटवर्क को मजबूत और अधिक विविध बनाता है। आदर्श लक्ष्य विफलता के किसी भी एकल बिंदु को कम करने के लिए किसी भी क्लाइंट के हावी हुए बिना विविधता प्राप्त करना है।
यह तालिका विभिन्न क्लाइंट्स का सारांश देती है। वे सभी क्लाइंट परीक्षण (opens in a new tab) पास करते हैं और नेटवर्क अपग्रेड के साथ अपडेट रहने के लिए सक्रिय रूप से बनाए रखे जाते हैं।
| क्लाइंट | भाषा | ऑपरेटिंग सिस्टम | नेटवर्क | सिंकिंग रणनीतियाँ | स्थिति प्रूनिंग |
|---|---|---|---|---|---|
| Geth (opens in a new tab) | Go | Linux, Windows, macOS | Mainnet, Sepolia, Hoodi | Snap, Full | Archive, Pruned |
| नेदरमाइंड (opens in a new tab) | C#, .NET | Linux, Windows, macOS | Mainnet, Sepolia, Hoodi | Snap, Fast, Full | Archive, Pruned |
| बेसु (opens in a new tab) | Java | Linux, Windows, macOS | Mainnet, Sepolia, Hoodi | Snap, Fast, Full | Archive, Pruned |
| एरिगोन (opens in a new tab) | Go | Linux, Windows, macOS | Mainnet, Sepolia, Hoodi | Full | Archive, Pruned |
| रेथ (opens in a new tab) | Rust | Linux, Windows, macOS | Mainnet, Sepolia, Hoodi | Full | Archive, Pruned |
| EthereumJS (opens in a new tab) (beta) | TypeScript | Linux, Windows, macOS | Sepolia, Hoodi | Full | Pruned |
समर्थित नेटवर्क के बारे में अधिक जानकारी के लिए, इथेरियम नेटवर्क पर पढ़ें।
प्रत्येक क्लाइंट के अद्वितीय उपयोग के मामले और लाभ होते हैं, इसलिए आपको अपनी प्राथमिकताओं के आधार पर एक को चुनना चाहिए। विविधता कार्यान्वयन को विभिन्न सुविधाओं और उपयोगकर्ता दर्शकों पर केंद्रित होने की अनुमति देती है। आप सुविधाओं, समर्थन, प्रोग्रामिंग भाषा या लाइसेंस के आधार पर क्लाइंट चुनना चाह सकते हैं।
बेसु
Hyperledger बेसु सार्वजनिक और अनुमति-प्राप्त नेटवर्क के लिए एक एंटरप्राइज़-ग्रेड इथेरियम क्लाइंट है। यह ट्रेसिंग से लेकर GraphQL तक सभी इथेरियम मेननेट सुविधाएँ चलाता है, इसमें व्यापक निगरानी है और यह खुले सामुदायिक चैनलों और उद्यमों के लिए वाणिज्यिक SLA दोनों के माध्यम से कॉन्सेन्सिस द्वारा समर्थित है। यह Java में लिखा गया है और Apache-2.0 लाइसेंस प्राप्त है।
बेसु का व्यापक दस्तावेज़ीकरण (opens in a new tab) आपको इसकी विशेषताओं और सेटअप के सभी विवरणों के माध्यम से मार्गदर्शन करेगा।
एरिगोन
एरिगोन, जिसे पहले Turbo-Geth के नाम से जाना जाता था, गति और डिस्क-स्पेस दक्षता की ओर उन्मुख गो इथेरियम (geth) के एक फ़ोर्क के रूप में शुरू हुआ। एरिगोन इथेरियम का पूरी तरह से पुन: आर्किटेक्ट किया गया कार्यान्वयन है, जो वर्तमान में Go में लिखा गया है लेकिन विकास के तहत अन्य भाषाओं में कार्यान्वयन के साथ है। एरिगोन का लक्ष्य इथेरियम का तेज़, अधिक मॉड्यूलर और अधिक अनुकूलित कार्यान्वयन प्रदान करना है। यह 3 दिनों से कम समय में लगभग 2TB डिस्क स्थान का उपयोग करके पूर्ण आर्काइव नोड सिंकिंग कर सकता है।
गो इथेरियम (geth)
गो इथेरियम (संक्षेप में geth) इथेरियम प्रोटोकॉल के मूल कार्यान्वयनों में से एक है। वर्तमान में, यह उपयोगकर्ताओं और डेवलपर्स के लिए सबसे बड़े उपयोगकर्ता आधार और विभिन्न प्रकार के टूलिंग के साथ सबसे व्यापक क्लाइंट है। यह Go में लिखा गया है, पूरी तरह से ओपन सोर्स है और GNU LGPL v3 के तहत लाइसेंस प्राप्त है।
इसके दस्तावेज़ीकरण (opens in a new tab) में Geth के बारे में अधिक जानें।
नेदरमाइंड
नेदरमाइंड C# .NET टेक स्टैक के साथ बनाया गया एक इथेरियम कार्यान्वयन है, जो LGPL-3.0 के साथ लाइसेंस प्राप्त है, जो ARM सहित सभी प्रमुख प्लेटफार्मों पर चल रहा है। यह इसके साथ शानदार प्रदर्शन प्रदान करता है:
- एक अनुकूलित वर्चुअल मशीन
- स्थिति पहुंच
- नेटवर्किंग और Prometheus/Grafana डैशबोर्ड, seq एंटरप्राइज़ लॉगिंग सपोर्ट, जेसन-आरपीसी ट्रेसिंग और एनालिटिक्स प्लगइन्स जैसी समृद्ध सुविधाएँ।
नेदरमाइंड में विस्तृत दस्तावेज़ीकरण (opens in a new tab), मजबूत देव समर्थन, एक ऑनलाइन समुदाय और प्रीमियम उपयोगकर्ताओं के लिए 24/7 समर्थन भी उपलब्ध है।
रेथ
रेथ (Rust Ethereum के लिए संक्षिप्त) एक इथेरियम पूर्ण नोड कार्यान्वयन है जो उपयोगकर्ता के अनुकूल, अत्यधिक मॉड्यूलर, तेज़ और कुशल होने पर केंद्रित है। रेथ मूल रूप से Paradigm द्वारा बनाया और आगे बढ़ाया गया था, और Apache और MIT लाइसेंस के तहत लाइसेंस प्राप्त है।
रेथ उत्पादन के लिए तैयार है, और स्टेकिंग या उच्च-अपटाइम सेवाओं जैसे मिशन-महत्वपूर्ण वातावरण में उपयोग के लिए उपयुक्त है। उन उपयोग के मामलों में अच्छा प्रदर्शन करता है जहां RPC, MEV, इंडेक्सिंग, सिमुलेशन और P2P गतिविधियों जैसे महान मार्जिन के साथ उच्च प्रदर्शन की आवश्यकता होती है।
रेथ बुक (opens in a new tab), या रेथ GitHub रेपो (opens in a new tab) देखकर अधिक जानें।
विकास में
ये क्लाइंट अभी भी विकास के शुरुआती चरणों में हैं और अभी तक उत्पादन उपयोग के लिए अनुशंसित नहीं हैं।
EthereumJS
EthereumJS निष्पादन क्लाइंट (EthereumJS) TypeScript में लिखा गया है और कई पैकेजों से बना है, जिसमें ब्लॉक, लेन-देन और Merkle-Patricia Trie वर्गों द्वारा दर्शाए गए मुख्य इथेरियम प्रिमिटिव और इथेरियम वर्चुअल मशीन (EVM) के कार्यान्वयन, एक ब्लॉकचेन वर्ग और devp2p नेटवर्किंग स्टैक सहित मुख्य क्लाइंट घटक शामिल हैं।
इसके दस्तावेज़ीकरण (opens in a new tab) को पढ़कर इसके बारे में अधिक जानें
सर्वसम्मति क्लाइंट
सर्वसम्मति अपग्रेड का समर्थन करने के लिए कई सर्वसम्मति क्लाइंट (जिन्हें पहले 'ईटीएच2' क्लाइंट के रूप में जाना जाता था) हैं। वे फ़ोर्क-चॉइस एल्गोरिदम, सत्यापन को संसाधित करने और प्रूफ-ऑफ़-स्टेक (PoS) पुरस्कारों और दंडों के प्रबंधन सहित सभी सर्वसम्मति-संबंधित तर्क के लिए जिम्मेदार हैं।
| क्लाइंट | भाषा | ऑपरेटिंग सिस्टम | नेटवर्क |
|---|---|---|---|
| लाइटहाउस (opens in a new tab) | Rust | Linux, Windows, macOS | Beacon Chain, Hoodi, Pyrmont, Sepolia, and more |
| लोडस्टार (opens in a new tab) | TypeScript | Linux, Windows, macOS | Beacon Chain, Hoodi, Sepolia, and more |
| निम्बस (opens in a new tab) | Nim | Linux, Windows, macOS | Beacon Chain, Hoodi, Sepolia, and more |
| प्रिज़्म (opens in a new tab) | Go | Linux, Windows, macOS | Beacon Chain, Gnosis, Hoodi, Pyrmont, Sepolia, and more |
| टेकु (opens in a new tab) | Java | Linux, Windows, macOS | Beacon Chain, Gnosis, Hoodi, Sepolia, and more |
| Grandine (opens in a new tab) | Rust | Linux, Windows, macOS | Beacon Chain, Hoodi, Sepolia, and more |
लाइटहाउस
लाइटहाउस Apache-2.0 लाइसेंस के तहत Rust में लिखा गया एक सर्वसम्मति क्लाइंट कार्यान्वयन है। इसे Sigma Prime द्वारा बनाए रखा जाता है और यह बीकन चेन जेनेसिस के बाद से स्थिर और उत्पादन के लिए तैयार है। विभिन्न उद्यमों, स्टेकिंग पूल और व्यक्तियों द्वारा इस पर भरोसा किया जाता है। इसका उद्देश्य डेस्कटॉप पीसी से लेकर परिष्कृत स्वचालित तैनाती तक, वातावरण की एक विस्तृत श्रृंखला में सुरक्षित, प्रदर्शनकारी और अंतरप्रचालनीय होना है।
दस्तावेज़ीकरण लाइटहाउस बुक (opens in a new tab) में पाया जा सकता है
लोडस्टार
लोडस्टार LGPL-3.0 लाइसेंस के तहत Typescript में लिखा गया एक उत्पादन-तैयार सर्वसम्मति क्लाइंट कार्यान्वयन है। इसे ChainSafe Systems द्वारा बनाए रखा जाता है और यह सोलो-स्टेकर्स, डेवलपर्स और शोधकर्ताओं के लिए सर्वसम्मति क्लाइंट्स में सबसे नया है। लोडस्टार में इथेरियम प्रोटोकॉल के JavaScript कार्यान्वयन द्वारा संचालित एक बीकन नोड और सत्यापक क्लाइंट शामिल है। लोडस्टार का उद्देश्य लाइट क्लाइंट्स के साथ इथेरियम उपयोगिता में सुधार करना, डेवलपर्स के एक बड़े समूह तक पहुंच का विस्तार करना और इकोसिस्टम विविधता में और योगदान देना है।
अधिक जानकारी लोडस्टार वेबसाइट (opens in a new tab) पर पाई जा सकती है
निम्बस
निम्बस Apache-2.0 लाइसेंस के तहत Nim में लिखा गया एक सर्वसम्मति क्लाइंट कार्यान्वयन है। यह सोलो-स्टेकर्स और स्टेकिंग पूल द्वारा उपयोग में आने वाला एक उत्पादन-तैयार क्लाइंट है। निम्बस को संसाधन दक्षता के लिए डिज़ाइन किया गया है, जिससे स्थिरता या पुरस्कार प्रदर्शन से समझौता किए बिना संसाधन-प्रतिबंधित उपकरणों और एंटरप्राइज़ बुनियादी ढांचे पर समान आसानी से चलाना आसान हो जाता है। एक हल्के संसाधन पदचिह्न का मतलब है कि जब नेटवर्क तनाव में होता है तो क्लाइंट के पास सुरक्षा का अधिक मार्जिन होता है।
निम्बस डॉक्स (opens in a new tab) में अधिक जानें
प्रिज़्म
प्रिज़्म GPL-3.0 लाइसेंस के तहत Go में लिखा गया एक पूर्ण-विशेषताओं वाला, ओपन सोर्स सर्वसम्मति क्लाइंट है। इसमें एक वैकल्पिक वेबऐप UI है और यह स्टेक-एट-होम और संस्थागत उपयोगकर्ताओं दोनों के लिए उपयोगकर्ता अनुभव, दस्तावेज़ीकरण और विन्यास को प्राथमिकता देता है।
अधिक जानने के लिए प्रिज़्म डॉक्स (opens in a new tab) पर जाएं।
टेकु
टेकु मूल बीकन चेन जेनेसिस क्लाइंट्स में से एक है। सामान्य लक्ष्यों (सुरक्षा, मजबूती, स्थिरता, उपयोगिता, प्रदर्शन) के साथ, टेकु का विशेष रूप से सभी विभिन्न सर्वसम्मति क्लाइंट मानकों का पूरी तरह से पालन करने का लक्ष्य है।
टेकु बहुत लचीले तैनाती विकल्प प्रदान करता है। बीकन नोड और सत्यापक क्लाइंट को एक ही प्रक्रिया के रूप में एक साथ चलाया जा सकता है, जो सोलो स्टेकर्स के लिए बेहद सुविधाजनक है, या परिष्कृत स्टेकिंग संचालन के लिए नोड्स को अलग से चलाया जा सकता है। इसके अलावा, टेकु कुंजी सुरक्षा पर हस्ताक्षर करने और कटौती सुरक्षा के लिए Web3Signer (opens in a new tab) के साथ पूरी तरह से अंतरप्रचालनीय है।
टेकु Java में लिखा गया है और Apache-2.0 लाइसेंस प्राप्त है। इसे कॉन्सेन्सिस में प्रोटोकॉल टीम द्वारा विकसित किया गया है जो बेसु और Web3Signer के लिए भी जिम्मेदार है। टेकु डॉक्स (opens in a new tab) में अधिक जानें।
Grandine
Grandine एक सर्वसम्मति क्लाइंट कार्यान्वयन है, जो GPL-3.0 लाइसेंस के तहत Rust में लिखा गया है। इसे Grandine कोर टीम द्वारा बनाए रखा जाता है और यह तेज़, उच्च-प्रदर्शन और हल्का है। यह Raspberry Pi जैसे कम-संसाधन वाले उपकरणों पर चलने वाले सोलो स्टेकर्स से लेकर दसियों हज़ार सत्यापक चलाने वाले बड़े संस्थागत स्टेकर्स तक स्टेकर्स की एक विस्तृत श्रृंखला में फिट बैठता है।
दस्तावेज़ीकरण Grandine बुक (opens in a new tab) में पाया जा सकता है
सिंकिंग मोड
नेटवर्क में वर्तमान डेटा का पालन करने और सत्यापित करने के लिए, इथेरियम क्लाइंट को नवीनतम नेटवर्क स्थिति के साथ सिंकिंग करने की आवश्यकता है। यह साथियों से डेटा डाउनलोड करके, क्रिप्टोग्राफ़िक रूप से उनकी अखंडता को सत्यापित करके और एक स्थानीय ब्लॉकचेन डेटाबेस बनाकर किया जाता है।
सिंकिंग मोड विभिन्न ट्रेड-ऑफ़ के साथ इस प्रक्रिया के विभिन्न दृष्टिकोणों का प्रतिनिधित्व करते हैं। क्लाइंट सिंकिंग एल्गोरिदम के अपने कार्यान्वयन में भी भिन्न होते हैं। कार्यान्वयन पर विशिष्टताओं के लिए हमेशा अपने चुने हुए क्लाइंट के आधिकारिक दस्तावेज़ीकरण को देखें।
निष्पादन परत सिंकिंग मोड
निष्पादन परत को विभिन्न उपयोग के मामलों के अनुरूप विभिन्न मोड में चलाया जा सकता है, ब्लॉकचेन की विश्व स्थिति को फिर से निष्पादित करने से लेकर केवल एक विश्वसनीय जाँच-बिंदु से चेन की टिप के साथ सिंकिंग करने तक।
पूर्ण सिंकिंग
एक पूर्ण सिंकिंग सभी ब्लॉक (हेडर और ब्लॉक बॉडी सहित) डाउनलोड करता है और जेनेसिस से हर ब्लॉक को निष्पादित करके ब्लॉकचेन की स्थिति को क्रमिक रूप से पुन: उत्पन्न करता है।
- विश्वास को कम करता है और हर लेन-देन को सत्यापित करके उच्चतम सुरक्षा प्रदान करता है।
- लेन-देन की बढ़ती संख्या के साथ, सभी लेन-देन को संसाधित करने में दिनों से लेकर हफ्तों तक का समय लग सकता है।
आर्काइव नोड्स हर ब्लॉक में हर लेन-देन द्वारा किए गए स्थिति परिवर्तनों का एक पूरा इतिहास बनाने (और बनाए रखने) के लिए एक पूर्ण सिंकिंग करते हैं।
तेज़ सिंकिंग
पूर्ण सिंकिंग की तरह, एक तेज़ सिंकिंग सभी ब्लॉक (हेडर, लेन-देन और रसीदों सहित) डाउनलोड करता है। हालाँकि, ऐतिहासिक लेन-देन को फिर से संसाधित करने के बजाय, एक तेज़ सिंकिंग रसीदों पर तब तक निर्भर करता है जब तक कि यह हाल के हेड तक नहीं पहुँच जाता, जब यह पूर्ण नोड प्रदान करने के लिए ब्लॉक आयात करने और संसाधित करने पर स्विच करता है।
- तेज़ सिंकिंग रणनीति।
- बैंडविड्थ उपयोग के पक्ष में प्रसंस्करण मांग को कम करता है।
स्नैप सिंकिंग
स्नैप सिंकिंग भी चेन को ब्लॉक-दर-ब्लॉक सत्यापित करते हैं। हालाँकि, जेनेसिस ब्लॉक से शुरू करने के बजाय, एक स्नैप सिंकिंग एक अधिक हालिया 'विश्वसनीय' जाँच-बिंदु से शुरू होता है जिसे सच्चे ब्लॉकचेन का हिस्सा माना जाता है। नोड एक निश्चित आयु से पुराने डेटा को हटाते हुए आवधिक जाँच-बिंदु सहेजता है। इन स्नैपशॉट का उपयोग इसे हमेशा के लिए संग्रहीत करने के बजाय आवश्यकतानुसार स्थिति डेटा को पुन: उत्पन्न करने के लिए किया जाता है।
- सबसे तेज़ सिंकिंग रणनीति, वर्तमान में इथेरियम मेननेट में डिफ़ॉल्ट है।
- सुरक्षा से समझौता किए बिना बहुत सारे डिस्क उपयोग और नेटवर्क बैंडविड्थ बचाता है।
स्नैप सिंकिंग पर अधिक (opens in a new tab)।
लाइट सिंकिंग
लाइट क्लाइंट मोड सभी ब्लॉक हेडर, ब्लॉक डेटा डाउनलोड करता है, और कुछ को यादृच्छिक रूप से सत्यापित करता है। केवल विश्वसनीय जाँच-बिंदु से चेन की टिप को सिंकिंग करता है।
- डेवलपर्स और सर्वसम्मति तंत्र में विश्वास पर भरोसा करते हुए केवल नवीनतम स्थिति प्राप्त करता है।
- क्लाइंट कुछ ही मिनटों में वर्तमान नेटवर्क स्थिति के साथ उपयोग करने के लिए तैयार है।
ध्यान दें लाइट सिंकिंग अभी तक प्रूफ-ऑफ़-स्टेक (PoS) इथेरियम के साथ काम नहीं करता है - लाइट सिंकिंग के नए संस्करण जल्द ही आने चाहिए!
सर्वसम्मति परत सिंकिंग मोड
आशावादी सिंकिंग
आशावादी सिंकिंग एक पोस्ट-मर्ज सिंकिंग रणनीति है जिसे ऑप्ट-इन और बैकवर्ड संगत होने के लिए डिज़ाइन किया गया है, जिससे निष्पादन नोड्स को स्थापित विधियों के माध्यम से सिंकिंग करने की अनुमति मिलती है। निष्पादन इंजन आशावादी रूप से बीकन ब्लॉक को पूरी तरह से सत्यापित किए बिना आयात कर सकता है, नवीनतम हेड ढूंढ सकता है, और फिर उपरोक्त विधियों के साथ चेन को सिंकिंग करना शुरू कर सकता है। फिर, निष्पादन क्लाइंट के पकड़ने के बाद, यह बीकन चेन में लेन-देन की वैधता के सर्वसम्मति क्लाइंट को सूचित करेगा।
आशावादी सिंकिंग पर अधिक (opens in a new tab)
जाँच-बिंदु सिंकिंग
एक जाँच-बिंदु सिंकिंग, जिसे कमजोर व्यक्तिनिष्ठता सिंकिंग के रूप में भी जाना जाता है, बीकन नोड को सिंकिंग करने के लिए एक बेहतर उपयोगकर्ता अनुभव बनाता है। यह कमजोर व्यक्तिनिष्ठता की मान्यताओं पर आधारित है जो जेनेसिस के बजाय हाल के कमजोर व्यक्तिनिष्ठता जाँच-बिंदु से बीकन चेन को सिंकिंग करने में सक्षम बनाता है। जाँच-बिंदु सिंकिंग से सिंकिंग के समान विश्वास मान्यताओं के साथ प्रारंभिक सिंकिंग समय को काफी तेज बनाते हैं।
व्यवहार में, इसका मतलब है कि आपका नोड हाल की अंतिम रूप दी गई स्थितियों को डाउनलोड करने के लिए एक दूरस्थ सेवा से जुड़ता है और उस बिंदु से डेटा को सत्यापित करना जारी रखता है। डेटा प्रदान करने वाला तृतीय पक्ष विश्वसनीय है और उसे सावधानी से चुना जाना चाहिए।
जाँच-बिंदु सिंकिंग (opens in a new tab) पर अधिक
आगे की पढ़ाई
- इथेरियम 101 - भाग 2 - नोड्स को समझना (opens in a new tab) – Wil Barnes, 13 फरवरी 2019
- इथेरियम पूर्ण नोड्स चलाना: मुश्किल से प्रेरित लोगों के लिए एक मार्गदर्शिका (opens in a new tab) – Justin Leroux, 7 नवंबर 2019
संबंधित विषय
संबंधित ट्यूटोरियल
- केवल MicroSD कार्ड को फ्लैश करके अपने Raspberry Pi 4 को एक सत्यापक नोड में बदलें – स्थापना मार्गदर्शिका – अपने Raspberry Pi 4 को फ्लैश करें, एक ईथरनेट केबल प्लग इन करें, SSD डिस्क को कनेक्ट करें और Raspberry Pi 4 को निष्पादन परत (मेननेट) और / या सर्वसम्मति परत (बीकन चेन / सत्यापक) चलाने वाले पूर्ण इथेरियम नोड में बदलने के लिए डिवाइस को पावर दें।
