مرکزی مواد پر جائیں
Change page

نوڈ کا فن تعمیر

ایک ایتھیریم نوڈ دو کلائنٹس پر مشتمل ہوتا ہے: ایک ایگزیکیوشن کلائنٹ اور ایک اتفاقِ رائے کا کلائنٹ۔ کسی نوڈ کو نیا بلاک تجویز کرنے کے لیے، اسے ایک توثیق کار کلائنٹ بھی چلانا چاہیے۔

جب ایتھیریم ثبوتِ کار (PoW) استعمال کر رہا تھا، تو ایک مکمل ایتھیریم نوڈ چلانے کے لیے ایک ایگزیکیوشن کلائنٹ کافی تھا۔ تاہم، حصہ داری کا ثبوت (PoS) کے نفاذ کے بعد سے، ایگزیکیوشن کلائنٹ کو ایک اور سافٹ ویئر کے ساتھ استعمال کیا جانا چاہیے جسے اتفاقِ رائے کا کلائنٹ کہا جاتا ہے۔

ذیل کا خاکہ دونوں ایتھیریم کلائنٹس کے درمیان تعلق کو ظاہر کرتا ہے۔ دونوں کلائنٹس اپنے متعلقہ پیئر ٹو پیئر (P2P) نیٹ ورکس سے جڑتے ہیں۔ الگ الگ P2P نیٹ ورکس کی ضرورت ہوتی ہے کیونکہ ایگزیکیوشن کلائنٹس اپنے P2P نیٹ ورک پر ٹرانزیکشنز کی گپ شپ (gossip) کرتے ہیں، جس سے وہ اپنے مقامی ٹرانزیکشن پول کا انتظام کر سکتے ہیں، جبکہ اتفاقِ رائے کے کلائنٹس اپنے P2P نیٹ ورک پر بلاکس کی گپ شپ کرتے ہیں، جس سے اتفاق رائے اور چین کی ترقی ممکن ہوتی ہے۔

Diagram of Ethereum node architecture showing execution and consensus layers

ایگزیکیوشن کلائنٹ کے لیے کئی اختیارات موجود ہیں جن میں ایریگون، نیدر مائنڈ، اور Besu شامل ہیں۔

اس دو کلائنٹ والے ڈھانچے کے کام کرنے کے لیے، اتفاقِ رائے کے کلائنٹس کو ٹرانزیکشنز کے بنڈل ایگزیکیوشن کلائنٹ کو بھیجنے چاہئیں۔ ایگزیکیوشن کلائنٹ مقامی طور پر ٹرانزیکشنز کو انجام دیتا ہے تاکہ یہ توثیق کی جا سکے کہ ٹرانزیکشنز کسی بھی ایتھیریم اصول کی خلاف ورزی نہیں کرتی ہیں اور ایتھیریم کی حالت میں مجوزہ اپ ڈیٹ درست ہے۔ جب کسی نوڈ کو بلاک پروڈیوسر کے طور پر منتخب کیا جاتا ہے تو اس کا اتفاقِ رائے کا کلائنٹ ایگزیکیوشن کلائنٹ سے ٹرانزیکشنز کے بنڈلز کی درخواست کرتا ہے تاکہ انہیں نئے بلاک میں شامل کیا جا سکے اور عالمی حالت کو اپ ڈیٹ کرنے کے لیے انہیں انجام دیا جا سکے۔ اتفاقِ رائے کا کلائنٹ انجن API (opens in a new tab) کا استعمال کرتے ہوئے مقامی RPC کنکشن کے ذریعے ایگزیکیوشن کلائنٹ کو چلاتا ہے۔

ایگزیکیوشن کلائنٹ کیا کرتا ہے؟

ایگزیکیوشن کلائنٹ ٹرانزیکشن کی توثیق، ہینڈلنگ، اور گپ شپ کے ساتھ ساتھ حالت کے انتظام اور ایتھیریم ورچوئل مشین (EVM) کو سپورٹ کرنے کا ذمہ دار ہے۔ یہ بلاک بنانے، بلاک کی گپ شپ کرنے یا اتفاق رائے کی منطق کو سنبھالنے کا ذمہ دار نہیں ہے۔ یہ اتفاقِ رائے کے کلائنٹ کے دائرہ کار میں آتے ہیں۔

ایگزیکیوشن کلائنٹ تعمیلی پے لوڈ بناتا ہے - ٹرانزیکشنز کی فہرست، اپ ڈیٹ شدہ حالت کی ٹرائی، اور دیگر ایگزیکیوشن سے متعلق ڈیٹا۔ اتفاقِ رائے کے کلائنٹس ہر بلاک میں تعمیلی پے لوڈ شامل کرتے ہیں۔ ایگزیکیوشن کلائنٹ نئے بلاکس میں ٹرانزیکشنز کو دوبارہ انجام دینے کا بھی ذمہ دار ہے تاکہ یہ یقینی بنایا جا سکے کہ وہ درست ہیں۔ ٹرانزیکشنز کو انجام دینے کا کام ایگزیکیوشن کلائنٹ کے ایمبیڈڈ کمپیوٹر پر کیا جاتا ہے، جسے ایتھیریم ورچوئل مشین (EVM) کہا جاتا ہے۔

ایگزیکیوشن کلائنٹ RPC طریقوں کے ذریعے ایتھیریم کو ایک یوزر انٹرفیس بھی پیش کرتا ہے جو صارفین کو ایتھیریم بلاک چین سے استفسار کرنے، ٹرانزیکشنز جمع کرانے اور سمارٹ کنٹریکٹس تعینات کرنے کے قابل بناتا ہے۔ یہ عام بات ہے کہ RPC کالز کو Web3js (opens in a new tab)، Web3py (opens in a new tab) جیسی لائبریری، یا براؤزر والیٹ جیسے یوزر انٹرفیس کے ذریعے ہینڈل کیا جائے۔

خلاصہ یہ کہ، ایگزیکیوشن کلائنٹ ہے:

  • ایتھیریم کے لیے ایک صارف کا گیٹ وے
  • ایتھیریم ورچوئل مشین، ایتھیریم کی حالت اور ٹرانزیکشن پول کا گھر۔

اتفاقِ رائے کا کلائنٹ کیا کرتا ہے؟

اتفاقِ رائے کا کلائنٹ ان تمام منطقوں سے نمٹتا ہے جو ایک نوڈ کو ایتھیریم نیٹ ورک کے ساتھ ہم آہنگی میں رہنے کے قابل بناتی ہیں۔ اس میں ساتھیوں (peers) سے بلاکس وصول کرنا اور فورک کے انتخاب کا الگورتھم چلانا شامل ہے تاکہ یہ یقینی بنایا جا سکے کہ نوڈ ہمیشہ اس چین کی پیروی کرتا ہے جس میں تصدیقات (attestations) کا سب سے زیادہ ذخیرہ ہوتا ہے (جس کا وزن توثیق کار کے موثر بیلنس سے کیا جاتا ہے)۔ ایگزیکیوشن کلائنٹ کی طرح، اتفاقِ رائے کے کلائنٹس کا اپنا P2P نیٹ ورک ہوتا ہے جس کے ذریعے وہ بلاکس اور تصدیقات کا اشتراک کرتے ہیں۔

اتفاقِ رائے کا کلائنٹ بلاکس کی تصدیق کرنے یا تجویز کرنے میں حصہ نہیں لیتا ہے - یہ کام ایک توثیق کار کے ذریعے کیا جاتا ہے، جو اتفاقِ رائے کے کلائنٹ کے لیے ایک اختیاری ایڈ آن ہے۔ توثیق کار کے بغیر اتفاقِ رائے کا کلائنٹ صرف چین کے ہیڈ کے ساتھ اپ ٹو ڈیٹ رہتا ہے، جس سے نوڈ ہم آہنگ رہ سکتا ہے۔ یہ صارف کو اپنے ایگزیکیوشن کلائنٹ کا استعمال کرتے ہوئے ایتھیریم کے ساتھ ٹرانزیکشن کرنے کے قابل بناتا ہے، اس اعتماد کے ساتھ کہ وہ درست چین پر ہیں۔

توثیق کار

اسٹیکنگ اور توثیق کار سافٹ ویئر چلانے سے ایک نوڈ نیا بلاک تجویز کرنے کے لیے منتخب ہونے کا اہل بن جاتا ہے۔ نوڈ آپریٹرز ڈپازٹ کنٹریکٹ میں 32 ETH جمع کر کے اپنے اتفاقِ رائے کے کلائنٹس میں ایک توثیق کار شامل کر سکتے ہیں۔ توثیق کار کلائنٹ اتفاقِ رائے کے کلائنٹ کے ساتھ بنڈل آتا ہے اور اسے کسی بھی وقت نوڈ میں شامل کیا جا سکتا ہے۔ توثیق کار تصدیقات اور بلاک کی تجاویز کو سنبھالتا ہے۔ یہ نوڈ کو انعامات جمع کرنے یا جرمانے یا کٹوتی کے ذریعے ETH کھونے کے قابل بھی بناتا ہے۔

اسٹیکنگ کے بارے میں مزید۔

نوڈ کے اجزاء کا موازنہ

ایگزیکیوشن کلائنٹاتفاقِ رائے کا کلائنٹتوثیق کار
اپنے P2P نیٹ ورک پر ٹرانزیکشنز کی گپ شپ کرتا ہےاپنے P2P نیٹ ورک پر بلاکس اور تصدیقات کی گپ شپ کرتا ہےبلاکس تجویز کرتا ہے
ٹرانزیکشنز کو انجام دیتا/دوبارہ انجام دیتا ہےفورک کے انتخاب کا الگورتھم چلاتا ہےانعامات/جرمانے جمع کرتا ہے
آنے والی حالت کی تبدیلیوں کی تصدیق کرتا ہےچین کے ہیڈ کا ٹریک رکھتا ہےتصدیقات کرتا ہے
حالت اور رسیدوں کی ٹرائی کا انتظام کرتا ہےبیکن کی حالت کا انتظام کرتا ہے (اس میں اتفاق رائے اور ایگزیکیوشن کی معلومات شامل ہیں)32 ETH اسٹیک کرنے کی ضرورت ہوتی ہے
تعمیلی پے لوڈ بناتا ہےRANDAO (ایک الگورتھم جو توثیق کار کے انتخاب اور دیگر اتفاق رائے کے کاموں کے لیے قابل تصدیق بے ترتیبی فراہم کرتا ہے) میں جمع شدہ بے ترتیبی کا ٹریک رکھتا ہےکٹوتی کی جا سکتی ہے
ایتھیریم کے ساتھ تعامل کے لیے جے سن آر پی سی API کو ظاہر کرتا ہےجواز (justification) اور حتمی شکل (finalization) کا ٹریک رکھتا ہے

مزید مطالعہ