Trending News

BTC
$17,155.50
-0.4
ETH
$1,264.14
-1.51
LTC
$76.37
-2.08
DASH
$46.65
+1.19
XMR
$148.56
+0.86
NXT
$0.00
-0.4
ETC
$19.13
-0.57

स्टेटलेस टेक ट्री: रीजेनेसिस एडिशन

0


इस सप्ताह हम संशोधित कर रहे हैं टेक ट्री एथेरियम 1.x आरएंडडी के लिए कुछ नए प्रमुख मील के पत्थर को प्रतिबिंबित करने के लिए जो स्टेटलेस एथेरियम की पूरी तरह से प्राप्ति नहीं हैं, लेकिन मध्य अवधि में अधिक उचित रूप से प्राप्य हैं। तकनीकी वृक्ष में सबसे महत्वपूर्ण जोड़ एलेक्सी का पुनर्जनन प्रस्ताव है। यह एक अच्छी तरह से निर्दिष्ट उन्नयन से बहुत दूर है, लेकिन आर एंड डी की सामान्य भावना यह है कि पुनर्जन्म “पूरी तरह से स्टेटलेस” दृष्टि के अंतिम लक्ष्य की दिशा में एक कम नाटकीय लेकिन अधिक प्राप्य कदम प्रदान करता है। कई मायनों में पुनर्जनन के लिए पूरक एक स्थिर राज्य नेटवर्क है जो राज्य स्नैपशॉट और ऐतिहासिक श्रृंखला डेटा को बिटटोरेंट-शैली डीएचटी-आधारित नेटवर्क में वितरित करने में मदद करेगा। उसी समय, कोड मर्कलाइज़ेशन और राज्य के एक बाइनरी ट्राइ प्रतिनिधित्व जैसे अधिक निकट-अवधि के सुधार ईआईपी-तैयार होने के करीब और करीब हो रहे हैं। नीचे, मैं उन परिवर्तनों की व्याख्या और स्पष्टीकरण दूंगा जो किए गए हैं, और यदि आप किसी विशेष विशेषता पर गहराई से जाना चाहते हैं तो प्रासंगिक चर्चाओं से लिंक करें।

बाइनरी ट्री

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

बाइनरी ट्री प्रारूप

बाइनरी ट्री का सामान्य विचार एथेरियम की वर्तमान हेक्सरी ट्राई संरचना की तुलना में थोड़ा सरल (सजा का इरादा :)) है। ट्री की जड़ से चाइल्ड नोड्स की ओर चलने के लिए 16 संभावित रास्तों में से एक होने के बजाय, एक बाइनरी ट्री में 2 है। राज्य ट्री के पूर्ण पुन: विनिर्देश के साथ अच्छी तरह से स्थापित अक्षमताओं पर सुधार करने का अतिरिक्त अवसर आता है। अब स्वयं ज्ञात हो गया है कि इथेरियम 5 वर्षों से अधिक समय से परिचालन में है। विशेष रूप से, यह डेटाबेस एन्कोडिंग की वास्तविक दुनिया की प्रदर्शन चुनौतियों के लिए राज्य को और अधिक सक्षम बनाने का अवसर हो सकता है। राज्य के विकास पर पिछला लेख)

औपचारिक बाइनरी ट्री विनिर्देश और मर्कलाइज़ेशन नियमों पर चर्चा पाई जा सकती है ईथ्रेशर्च पर.

बाइनरी ट्री ट्रांजिशन

यह केवल गंतव्य (बाइनरी ट्री प्रारूप) ही महत्वपूर्ण नहीं है, बल्कि यात्रा ही है! एक आदर्श संक्रमण में पूरे नेटवर्क में लेन-देन प्रसंस्करण में कोई रुकावट नहीं होगी, जिसका अर्थ है कि ग्राहकों को नई बाइनरी ट्री बनाने की आवश्यकता होगी एक ही समय में हर 15 सेकंड में रोलिंग नए ब्लॉक को संभालने के रूप में। सबसे आशाजनक दिखने वाली संक्रमण रणनीति को डब किया गया है ओवरले विधि, जो आंशिक रूप से geth के नए स्नैपशॉटिंग सिंक प्रोटोकॉल पर आधारित है। संक्षेप में, नए राज्य परिवर्तन एक बाइनरी प्रारूप में मौजूदा (हेक्सरी) ट्राइ में जोड़े जाएंगे, जिससे संक्रमण के दौरान एक प्रकार का बाइनरी/हेक्सरी हाइब्रिड बन जाएगा। अछूते राज्य को पृष्ठभूमि प्रक्रिया के रूप में परिवर्तित किया जाता है। एक बार रूपांतरण पूरा हो जाने पर, दो परतें एक बाइनरी ट्री में चपटी हो जाती हैं।

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

कोड मर्कलाइज़ेशन

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

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

Regenesis

पुनर्जनन प्रस्ताव पर नियंत्रण पाने के लिए सबसे अच्छी जगह है @mandrigin . द्वारा यह स्पष्टीकरण या @realLedgerwatch . द्वारा पूरा प्रस्ताव, लेकिन TL; DR यह है कि पुनर्जनन अनिवार्य रूप से “ब्लॉकचेन के लिए वसंत सफाई” है। पूर्ण राज्य को अवधारणात्मक रूप से एक ‘सक्रिय’ और ‘निष्क्रिय’ राज्य में विभाजित किया जाएगा। समय-समय पर, पूरे ‘सक्रिय’ राज्य को निष्क्रिय कर दिया जाएगा और नए लेनदेन फिर से एक सक्रिय राज्य का निर्माण शुरू कर देंगे लगभग कुछ भी नहीं (इसलिए नाम “रीजेनेसिस”)। यदि किसी लेन-देन को राज्य के पुराने हिस्से की आवश्यकता होती है, तो यह स्टेटलेस एथेरियम के लिए जो आवश्यक होगा, उसके समान ही एक गवाह प्रदान करेगा: एक मर्कल प्रमाण यह साबित करता है कि राज्य परिवर्तन निष्क्रिय राज्य के कुछ टुकड़े के अनुरूप है। यदि कोई लेन-देन राज्य के एक ‘निष्क्रिय’ हिस्से को छूता है, तो यह स्वचालित रूप से इसे ‘सक्रिय’ (चाहे लेन-देन सफल हो या नहीं) तक बढ़ा देता है, जहां यह अगले पुनर्जनन घटना तक रहता है। इसमें राज्य के उपयोग पर कुछ आर्थिक सीमाएँ बनाने की अच्छी संपत्ति है जो कि राज्य के किराए में वास्तव में किसी भी राज्य को हटाए बिना थी, और लेन-देन प्रेषक को एक गवाह उत्पन्न करने में असमर्थ होने की अनुमति देता है जब तक कि वह सब कुछ छूता है जब तक कि वह सब कुछ फिर से ‘सक्रिय’ न हो जाए। .

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

राज्य नेटवर्क

एक बेहतर नेटवर्क प्रोटोकॉल शुरू से ही टेक ट्री पर एक ‘साइड-क्वेस्ट’ रहा है, लेकिन स्टेटलेस एथेरियम के दायरे में पुनर्जनन के अलावा, एथेरियम चेन डेटा (राज्य सहित) साझा करने के लिए वैकल्पिक नेटवर्क प्राइमेटिव ढूंढना अब फिट लगता है मुख्य खोज में बहुत बेहतर। एथेरियम का वर्तमान नेटवर्क प्रोटोकॉल एक मोनोलिथ है, जब वास्तव में कई अलग-अलग प्रकार के डेटा होते हैं जिन्हें अलग-अलग चीजों के लिए अनुकूलित अलग-अलग ‘सब-नेटवर्क’ का उपयोग करके साझा किया जा सकता है।

तीन नेटवर्क

पहले, इस बारे में बात की गई है: पहले के स्टेटलेस कॉल पर “तीन नेटवर्क”के साथ DHT आधारित नेटवर्क अधिक प्रभावी ढंग से कुछ डेटा की सेवा करने में सक्षम है पल-पल नहीं बदलता. रीजेनेसिस की शुरुआत के साथ, ‘निष्क्रिय’ स्थिति अपरिवर्तनीय डेटा की इस श्रेणी में फिट हो जाएगी, और सैद्धांतिक रूप से पूरी तरह से सिंक किए गए क्लाइंट से पीस-बाय-पीस के बजाय बिटटोरेंट-शैली के झुंड नेटवर्क द्वारा परोसा जा सकता है जैसा कि वर्तमान में किया जाता है।

अंतिम पुनर्जनन घटना के बाद से अपरिवर्तित राज्य के चारों ओर से गुजरने वाला एक नेटवर्क होगा a स्थिर राज्य नेटवर्कऔर नए का विस्तार करके बनाया जा सकता है devp2p लाइब्रेरी में डिस्कवरी v5.1 कल्पना (एथेरियम का नेटवर्किंग प्रोटोकॉल)। पिछले प्रस्ताव जैसे मेरी-गो-राउंड सिंक और (अधिक परिपक्व) स्नैप प्रोटोकॉल सिंक करने के लिए सक्रिय राज्य अभी भी पूरी तरह से वितरित होने की दिशा में महत्वपूर्ण कदम होगा गतिशील राज्य नेटवर्क पूरे राज्य को तेजी से सिंक करने की कोशिश कर रहे ग्राहकों के लिए।

ऊपर लपेटकर

स्टेटलेस टेक ट्री (न केवल अपडेटेड वाले) में प्रत्येक पत्ती का एक अधिक संघनित और तकनीकी संस्करण उपलब्ध है स्टेटलेस एथेरियम स्पेक्स रेपो, और यहां शामिल सभी विषयों पर सक्रिय चर्चा Eth1x/2 R&D डिस्कॉर्ड में है – यदि आप शामिल होना चाहते हैं तो कृपया ethresear.ch पर आमंत्रण मांगें। हमेशा की तरह, नए विषयों के लिए प्रतिक्रिया, प्रश्न और सुझावों के लिए @gichiba या @JHancock ट्वीट करें।



Source link

Leave A Reply

Your email address will not be published.

Shares