नोड आर्किटेक्चर
पृष्ठ अखेरचे अद्यतन: १६ जुलै, २०२५
एक इथेरियम नोड दोन क्लायंट्सनी बनलेला असतो: एक एक्झिक्यूशन क्लायंट आणि एक कन्सेन्सस क्लायंट. एखाद्या नोडला नवीन ब्लॉक प्रस्तावित करण्यासाठी, त्याला व्हॅलिडेटर क्लायंट देखील चालवणे आवश्यक आहे.
जेव्हा इथेरियम प्रूफ-ऑफ-वर्क वापरत होते, तेव्हा संपूर्ण इथेरियम नोड चालवण्यासाठी एक एक्झिक्यूशन क्लायंट पुरेसा होता. तथापि, प्रूफ-ऑफ-स्टेक लागू केल्यापासून, एक्झिक्यूशन क्लायंटला कन्सेन्सस क्लायंट नावाच्या दुसऱ्या सॉफ्टवेअरसोबत वापरणे आवश्यक आहे.
खालील आकृती दोन इथेरियम क्लायंट्समधील संबंध दर्शवते. हे दोन क्लायंट आपापल्या पीअर-टू-पीअर (P2P) नेटवर्कशी जोडले जातात. वेगवेगळे P2P नेटवर्क्स आवश्यक आहेत कारण एक्झिक्यूशन क्लायंट त्यांच्या P2P नेटवर्कवर व्यवहारांची देवाणघेवाण (गॉसिप) करतात, ज्यामुळे ते त्यांचे स्थानिक व्यवहार पूल व्यवस्थापित करू शकतात, तर कन्सेन्सस क्लायंट त्यांच्या P2P नेटवर्कवर ब्लॉक्सची देवाणघेवाण करतात, ज्यामुळे सहमती (कन्सेन्सस) आणि चेनची वाढ होते.
एक्झिक्यूशन क्लायंटसाठी Erigon, Nethermind आणि Besu यांसह अनेक पर्याय उपलब्ध आहेत.
ही दोन-क्लायंट रचना कार्य करण्यासाठी, कन्सेन्सस क्लायंट्सनी व्यवहारांचे बंडल एक्झिक्यूशन क्लायंटकडे पाठवणे आवश्यक आहे. एक्झिक्यूशन क्लायंट स्थानिक पातळीवर व्यवहारांची अंमलबजावणी करतो, हे प्रमाणित करण्यासाठी की व्यवहार इथेरियमच्या कोणत्याही नियमांचे उल्लंघन करत नाहीत आणि इथेरियमच्या स्टेटमध्ये प्रस्तावित अपडेट योग्य आहे. जेव्हा एखादा नोड ब्लॉक निर्माता म्हणून निवडला जातो, तेव्हा त्याचा कन्सेन्सस क्लायंट इन्स्टन्स एक्झिक्यूशन क्लायंटकडून नवीन ब्लॉकमध्ये समाविष्ट करण्यासाठी व्यवहारांचे बंडल मागवतो आणि जागतिक स्टेट अपडेट करण्यासाठी त्यांची अंमलबजावणी करतो. Engine APIopens in a new tab वापरून स्थानिक RPC कनेक्शनद्वारे कन्सेन्सस क्लायंट एक्झिक्यूशन क्लायंटला चालवतो.
एक्झिक्यूशन क्लायंट काय करतो?
एक्झिक्यूशन क्लायंट व्यवहारांचे प्रमाणीकरण, हाताळणी आणि गॉसिपसाठी जबाबदार आहे, तसेच स्टेट मॅनेजमेंट आणि इथेरियम व्हर्च्युअल मशीन (EVM) ला सपोर्ट करतो. तो ब्लॉक तयार करणे, ब्लॉकची गॉसिपिंग करणे किंवा कन्सेन्सस लॉजिक हाताळण्यासाठी जबाबदार नाही. हे कन्सेन्सस क्लायंटच्या अखत्यारीत आहे.
एक्झिक्यूशन क्लायंट एक्झिक्यूशन पेलोड तयार करतो - व्यवहारांची सूची, अपडेटेड स्टेट ट्राय आणि इतर अंमलबजावणी-संबंधित डेटा. कन्सेन्सस क्लायंट प्रत्येक ब्लॉकमध्ये एक्झिक्यूशन पेलोड समाविष्ट करतात. एक्झिक्यूशन क्लायंट नवीन ब्लॉक्समधील व्यवहारांची पुन्हा अंमलबजावणी करून ते वैध असल्याची खात्री करण्यासाठी देखील जबाबदार आहे. व्यवहारांची अंमलबजावणी एक्झिक्यूशन क्लायंटच्या एम्बेडेड कॉम्प्युटरवर केली जाते, ज्याला इथेरियम व्हर्च्युअल मशीन (EVM) म्हणून ओळखले जाते.
एक्झिक्यूशन क्लायंट RPC पद्धती द्वारे इथेरियमसाठी एक यूजर इंटरफेस देखील प्रदान करतो जो वापरकर्त्यांना इथेरियम ब्लॉकचेनची क्वेरी करण्यास, व्यवहार सबमिट करण्यास आणि स्मार्ट कॉन्ट्रॅक्ट्स तैनात करण्यास सक्षम करतो. RPC कॉल्स Web3jsopens in a new tab, Web3pyopens in a new tab सारख्या लायब्ररीद्वारे किंवा ब्राउझर वॉलेटसारख्या यूजर-इंटरफेसद्वारे हाताळले जाणे सामान्य आहे.
सारांश, एक्झिक्यूशन क्लायंट आहे:
- इथेरियमसाठी एक यूजर गेटवे
- इथेरियम व्हर्च्युअल मशीन, इथेरियमचे स्टेट आणि व्यवहार पूल यांचे घर.
कन्सेन्सस क्लायंट काय करतो?
कन्सेन्सस क्लायंट सर्व लॉजिक हाताळतो ज्यामुळे नोड इथेरियम नेटवर्कसोबत सिंकमध्ये राहू शकतो. यामध्ये पीअर्सकडून ब्लॉक प्राप्त करणे आणि फोर्क चॉईस अल्गोरिदम चालवणे समाविष्ट आहे, जेणेकरून नोड नेहमी सर्वाधिक अटेस्टेशन्स (व्हॅलिडेटरच्या प्रभावी बॅलन्सद्वारे भारित) जमा केलेल्या चेनचे अनुसरण करेल याची खात्री होते. एक्झिक्यूशन क्लायंटप्रमाणेच, कन्सेन्सस क्लायंट्सचे स्वतःचे P2P नेटवर्क असते ज्याद्वारे ते ब्लॉक आणि अटेस्टेशन्स शेअर करतात.
कन्सेन्सस क्लायंट ब्लॉक प्रमाणित करण्यात किंवा प्रस्तावित करण्यात भाग घेत नाही - हे व्हॅलिडेटरद्वारे केले जाते, जो कन्सेन्सस क्लायंटसाठी एक ऐच्छिक ॲड-ऑन आहे. व्हॅलिडेटरशिवाय एक कन्सेन्सस क्लायंट फक्त चेनच्या हेडसोबत राहतो, ज्यामुळे नोडला सिंकमध्ये राहता येते. हे वापरकर्त्याला त्यांच्या एक्झिक्यूशन क्लायंटचा वापर करून इथेरियमसोबत व्यवहार करण्यास सक्षम करते, कारण त्यांना खात्री असते की ते योग्य चेनवर आहेत.
व्हॅलिडेटर्स
स्टेकिंग करणे आणि व्हॅलिडेटर सॉफ्टवेअर चालवणे एखाद्या नोडला नवीन ब्लॉक प्रस्तावित करण्यासाठी निवडले जाण्यास पात्र बनवते. नोड ऑपरेटर डिपॉझिट कॉन्ट्रॅक्टमध्ये ३२ ETH जमा करून त्यांच्या कन्सेन्सस क्लायंटमध्ये व्हॅलिडेटर जोडू शकतात. व्हॅलिडेटर क्लायंट कन्सेन्सस क्लायंटसोबत बंडल केलेला येतो आणि तो कोणत्याही वेळी नोडमध्ये जोडला जाऊ शकतो. व्हॅलिडेटर अटेस्टेशन्स आणि ब्लॉक प्रस्ताव हाताळतो. हे नोडला दंड किंवा स्लॅशिंगद्वारे बक्षिसे मिळवण्यास किंवा ETH गमावण्यास सक्षम करते.
नोडच्या घटकांची तुलना
| एक्झिक्यूशन क्लायंट | कन्सेन्सस क्लायंट | व्हॅलिडेटर |
|---|---|---|
| त्याच्या P2P नेटवर्कवर व्यवहारांची देवाणघेवाण (गॉसिप) करतो | त्याच्या P2P नेटवर्कवर ब्लॉक आणि अटेस्टेशन्सची देवाणघेवाण (गॉसिप) करतो | ब्लॉक प्रस्तावित करतो |
| व्यवहारांची अंमलबजावणी/पुन्हा अंमलबजावणी करतो | फोर्क चॉईस अल्गोरिदम चालवतो | बक्षिसे/दंड जमा करतो |
| येणाऱ्या स्टेटमधील बदल सत्यापित करतो | चेनच्या हेडचा मागोवा ठेवतो | अटेस्टेशन्स करतो |
| स्टेट आणि रिसिट्स ट्राय्स व्यवस्थापित करतो | बीकन स्टेट (ज्यात कन्सेन्सस आणि एक्झिक्यूशन माहिती असते) व्यवस्थापित करतो | स्टेक करण्यासाठी ३२ ETH आवश्यक |
| एक्झिक्यूशन पेलोड तयार करतो | RANDAO मध्ये जमा झालेल्या यादृच्छिकतेचा (रँडमनेस) मागोवा ठेवतो (एक अल्गोरिदम जो व्हॅलिडेटर निवड आणि इतर कन्सेन्सस ऑपरेशन्ससाठी सत्यापित करण्यायोग्य यादृच्छिकता प्रदान करतो) | स्लॅश केले जाऊ शकते |
| इथेरियमशी संवाद साधण्यासाठी JSON-RPC API उघड करतो | जस्टिफिकेशन आणि फायनलायझेशनचा मागोवा ठेवतो |
