এটেস্টেশন
পেজ সর্বশেষ আপডেট: ২১ অক্টোবর, ২০২৫
প্রতিটি এপোক চলাকালীন একজন ভ্যালিডেটর একটি এটেস্টেশন তৈরি, সাইন এবং ব্রডকাস্ট করবে বলে আশা করা হয়। এই পৃষ্ঠায় এই এটেস্টেশনগুলো দেখতে কেমন এবং কীভাবে এগুলো প্রসেস করা হয় ও কনসেন্সাস ক্লায়েন্ট-এর মধ্যে যোগাযোগ করা হয় তার রূপরেখা দেওয়া হয়েছে।
এটেস্টেশন কী?
প্রতিটি (6.4 মিনিট) একজন ভ্যালিডেটর নেটওয়ার্ক-এ একটি এটেস্টেশন প্রস্তাব করে। এটেস্টেশনটি এপোক-এর একটি নির্দিষ্ট স্লটের জন্য। এটেস্টেশনের উদ্দেশ্য হলো চেইন সম্পর্কে ভ্যালিডেটর-এর দৃষ্টিভঙ্গির পক্ষে ভোট দেওয়া, বিশেষ করে সবচেয়ে সাম্প্রতিক জাস্টিফাইড ব্লক এবং বর্তমান এপোক-এর প্রথম ব্লক (যা source এবং target চেকপয়েন্ট হিসেবে পরিচিত)। এই তথ্যটি অংশগ্রহণকারী সকল ভ্যালিডেটরস-এর জন্য একত্রিত করা হয়, যা নেটওয়ার্ক-কে ব্লকচেইন-এর স্টেট সম্পর্কে কনসেন্সাস-এ পৌঁছাতে সক্ষম করে।
এটেস্টেশনে নিম্নলিখিত উপাদানগুলো থাকে:
aggregation_bits: ভ্যালিডেটরস-এর একটি বিটলিস্ট যেখানে অবস্থানটি তাদের কমিটির ভ্যালিডেটর ইনডেক্সের সাথে ম্যাপ করে; মান (0/1) নির্দেশ করে যে ভ্যালিডেটরdataসাইন করেছে কিনা (অর্থাৎ, তারা সক্রিয় কিনা এবং ব্লক প্রপোজার-এর সাথে একমত কিনা)data: এটেস্টেশন সম্পর্কিত বিস্তারিত তথ্য, যা নিচে সংজ্ঞায়িত করা হয়েছেsignature: একটি BLS সিগনেচার যা পৃথক ভ্যালিডেটরস-এর সিগনেচারগুলোকে একত্রিত করে
একজন এটেস্টিং ভ্যালিডেটর-এর প্রথম কাজ হলো data তৈরি করা। data-তে নিম্নলিখিত তথ্য থাকে:
slot: স্লট নম্বর যা এটেস্টেশন নির্দেশ করেindex: একটি নম্বর যা শনাক্ত করে যে একটি নির্দিষ্ট স্লটে ভ্যালিডেটর কোন কমিটির অন্তর্ভুক্তbeacon_block_root: চেইনের শীর্ষে ভ্যালিডেটর যে ব্লকটি দেখে তার রুট হ্যাস (ফর্ক-চয়েস এ্যালগরিদম প্রয়োগের ফলাফল)source: ফাইনালিটি ভোটের অংশ যা নির্দেশ করে ভ্যালিডেটরস সবচেয়ে সাম্প্রতিক জাস্টিফাইড ব্লক হিসেবে কী দেখছেtarget: ফাইনালিটি ভোটের অংশ যা নির্দেশ করে ভ্যালিডেটরস বর্তমান এপোক-এর প্রথম ব্লক হিসেবে কী দেখছে
একবার data তৈরি হয়ে গেলে, ভ্যালিডেটর তাদের নিজস্ব ভ্যালিডেটর ইনডেক্সের সাথে সম্পর্কিত aggregation_bits-এর বিটটি 0 থেকে 1-এ পরিবর্তন করতে পারে যাতে তারা অংশগ্রহণ করেছে তা দেখানো যায়।
সবশেষে, ভ্যালিডেটর এটেস্টেশন সাইন করে এবং এটি নেটওয়ার্ক-এ ব্রডকাস্ট করে।
এগ্রিগেটেড এটেস্টেশন
প্রতিটি ভ্যালিডেটর-এর জন্য নেটওয়ার্ক-এর চারপাশে এই ডেটা পাস করার সাথে একটি উল্লেখযোগ্য ওভারহেড যুক্ত থাকে। তাই, পৃথক ভ্যালিডেটরস-এর এটেস্টেশনগুলো আরও ব্যাপকভাবে ব্রডকাস্ট করার আগে সাবনেটগুলোর মধ্যে একত্রিত (aggregated) করা হয়। এর মধ্যে সিগনেচারগুলো একসাথে একত্রিত করা অন্তর্ভুক্ত থাকে যাতে ব্রডকাস্ট হওয়া একটি এটেস্টেশনে কনসেন্সাস data এবং সেই data-এর সাথে একমত হওয়া সমস্ত ভ্যালিডেটরস-এর সিগনেচার একত্রিত করে গঠিত একটি একক সিগনেচার অন্তর্ভুক্ত থাকে। এটি aggregation_bits ব্যবহার করে চেক করা যেতে পারে কারণ এটি তাদের কমিটিতে প্রতিটি ভ্যালিডেটর-এর ইনডেক্স প্রদান করে (যার আইডি data-তে দেওয়া থাকে) যা পৃথক সিগনেচারগুলো কোয়েরি করতে ব্যবহার করা যেতে পারে।
প্রতিটি এপোক-এ প্রতিটি সাবনেটের 16 জন ভ্যালিডেটর-কে aggregators হিসেবে নির্বাচিত করা হয়। এগ্রিগেটররা গসিপ নেটওয়ার্ক-এর মাধ্যমে শোনা সমস্ত এটেস্টেশন সংগ্রহ করে যেগুলোর data তাদের নিজস্ব ডেটার সমতুল্য। প্রতিটি মিলে যাওয়া এটেস্টেশনের প্রেরককে aggregation_bits-এ রেকর্ড করা হয়। এরপর এগ্রিগেটররা এটেস্টেশন এগ্রিগেটকে বৃহত্তর নেটওয়ার্ক-এ ব্রডকাস্ট করে।
যখন একজন ভ্যালিডেটর-কে ব্লক প্রপোজার হিসেবে নির্বাচিত করা হয়, তখন তারা সাবনেটগুলো থেকে নতুন ব্লকের সর্বশেষ স্লট পর্যন্ত এগ্রিগেট এটেস্টেশনগুলো প্যাকেজ করে।
এটেস্টেশন ইনক্লুশন লাইফসাইকেল
- জেনারেশন
- প্রোপাগেশন
- এগ্রিগেশন
- প্রোপাগেশন
- ইনক্লুশন
এটেস্টেশন লাইফসাইকেলের রূপরেখা নিচের চিত্রে দেওয়া হলো:
রিওয়ার্ডস
এটেস্টেশন জমা দেওয়ার জন্য ভ্যালিডেটরস-কে পুরস্কৃত করা হয়। এটেস্টেশন রিওয়ার্ড নির্ভর করে পার্টিসিপেশন ফ্ল্যাগ (সোর্স, টার্গেট এবং হেড), বেস রিওয়ার্ড এবং পার্টিসিপেশন রেটের ওপর।
জমা দেওয়া এটেস্টেশন এবং এর ইনক্লুশন ডিলের ওপর নির্ভর করে প্রতিটি পার্টিসিপেশন ফ্ল্যাগ সত্য (true) বা মিথ্যা (false) হতে পারে।
সবচেয়ে ভালো পরিস্থিতি তখন ঘটে যখন তিনটি ফ্ল্যাগই সত্য হয়, সেক্ষেত্রে একজন ভ্যালিডেটর উপার্জন করবে (প্রতিটি সঠিক ফ্ল্যাগের জন্য):
reward += base reward * flag weight * flag attesting rate / 64
ফ্ল্যাগ এটেস্টিং রেট পরিমাপ করা হয় নির্দিষ্ট ফ্ল্যাগের জন্য সমস্ত এটেস্টিং ভ্যালিডেটরস-এর ইফেক্টিভ ব্যালেন্সের যোগফলকে মোট সক্রিয় ইফেক্টিভ ব্যালেন্সের সাথে তুলনা করে।
বেস রিওয়ার্ড
বেস রিওয়ার্ড গণনা করা হয় এটেস্টিং ভ্যালিডেটরস-এর সংখ্যা এবং তাদের ইফেক্টিভ স্টেক করা ইথার ব্যালেন্সের ওপর ভিত্তি করে:
base reward = validator effective balance x 2^6 / SQRT(Effective balance of all active validators)
ইনক্লুশন ডিলে
যখন ভ্যালিডেটরস চেইনের হেডে (block n) ভোট দিয়েছিল, তখন block n+1 প্রস্তাব করা হয়নি। তাই এটেস্টেশনগুলো স্বাভাবিকভাবেই এক ব্লক পরে অন্তর্ভুক্ত হয়, সুতরাং যে সমস্ত এটেস্টেশন block n-কে চেইন হেড হিসেবে ভোট দিয়েছিল সেগুলো block n+1-এ অন্তর্ভুক্ত হয় এবং ইনক্লুশন ডিলে হয় 1। যদি ইনক্লুশন ডিলে দ্বিগুণ হয়ে দুটি স্লট হয়, তবে এটেস্টেশন রিওয়ার্ড অর্ধেক হয়ে যায়, কারণ এটেস্টেশন রিওয়ার্ড গণনা করার জন্য বেস রিওয়ার্ডকে ইনক্লুশন ডিলের রেসিপ্রোকাল (বিপরীত ভগ্নাংশ) দ্বারা গুণ করা হয়।
এটেস্টেশন সিনারিও
মিসিং ভোটিং ভ্যালিডেটর
ভ্যালিডেটরস-এর কাছে তাদের এটেস্টেশন জমা দেওয়ার জন্য সর্বোচ্চ 1 এপোক সময় থাকে। যদি এপোক 0-তে এটেস্টেশন মিস হয়, তবে তারা এপোক 1-এ ইনক্লুশন ডিলে সহ এটি জমা দিতে পারে।
মিসিং এগ্রিগেটর
প্রতি এপোক-এ মোট 16 জন এগ্রিগেটর থাকে। এছাড়া, র্যান্ডম ভ্যালিডেটরস 256 এপোক-এর জন্য দুটি সাবনেটে সাবস্ক্রাইব করে এবং এগ্রিগেটররা মিসিং থাকলে ব্যাকআপ হিসেবে কাজ করে।
মিসিং ব্লক প্রপোজার
মনে রাখবেন যে কিছু ক্ষেত্রে একজন ভাগ্যবান এগ্রিগেটর ব্লক প্রপোজার-ও হতে পারে। যদি ব্লক প্রপোজার মিসিং হওয়ার কারণে এটেস্টেশন অন্তর্ভুক্ত না হয়, তবে পরবর্তী ব্লক প্রপোজার এগ্রিগেটেড এটেস্টেশনটি তুলে নেবে এবং এটিকে পরবর্তী ব্লকে অন্তর্ভুক্ত করবে। তবে, ইনক্লুশন ডিলে এক বেড়ে যাবে।
আরও পড়ুন
- ভিটালিকের অ্যানোটেটেড কনসেন্সাস স্পেক-এ এটেস্টেশন (opens in a new tab)
- eth2book.info-তে এটেস্টেশন (opens in a new tab)
এমন কোনো কমিউনিটি রিসোর্স সম্পর্কে জানেন যা আপনাকে সাহায্য করেছে? এই পৃষ্ঠাটি সম্পাদনা করুন এবং এটি যোগ করুন!
