گس اتریوم Ethereum Gas
مقدمه
گس اتریوم یا سوخت اتریوم، مایع حیات اکوسیستم اتریوم است. گس (Gas) واحدی است که میزان تلاش محاسباتی را که برای اجرای عملیات خاص لازم است، اندازهگیری میکند. هر عملیاتی که در بلاکچین اتریوم انجام میشود، خواه یک تراکنش ساده باشد یا یک قرارداد هوشمند یا حتی یک ICO، مقداری از توان محاسباتی شبکه را میگیرد یا به عبارت دیگر گس مصرف میکند. Ethereum Gas همان چیزی است که برای محاسبه میزان کارمزدی که برای اجرای عملیات باید به شبکه پرداخت شود، استفاده میشود. در واقع گس را میتوان واحد اندازهگیری کارمزد تراکنشها نیز نامید.
چرا در بیت کوین به گس نیازی نیست؟
بیت کوین به دنبال سؤالات مشابهی که همه میپرسیدند، ایجاد شد.
- آیا میتوان شکلی از پول را ایجاد کرد که بدون هیچ واسطهای بین دو نفر قابل انتقال باشد؟
- آیا میتوان پول غیرمتمرکز ایجاد کرد که بتواند روی چیزی مانند بلاکچین کار کند؟
ساتوشی ناکاموتو هنگام ایجاد بیت کوین به این سؤالات پاسخ داد. سرانجام ما یک سیستم پولی غیرمتمرکز داریم که میتواند پول را از یک شخص به شخص دیگر منتقل کند.
با این حال، مشکلی در بیت کوین وجود داشت که در تمام بلاکچینهای نسل اول یک چالش به حساب میآید. آنها فقط میتوانستند تراکنشهای پولی انجام دهند و هیچ راهی برای افزودن شرایط یا ویژگیهایی به آن تراکنشها وجود نداشت.
به عنوان مثال آلیس میتواند 5 بیت کوین برای باب ارسال کند، اما نمیتواند شرایطی را بر این تراکنشها اعمال کند. به عنوان مثال او نمیتوانست به باب بگوید که پول را فقط در صورت انجام برخی وظایف به دست خواهد آورد.
برای تعریف این شرایط و یکپارچهسازی فرآیند، چیزی لازم بود و آن چیز «قراردادهای هوشمند» بود.
گس اتریوم چیست؟
همانطور که در مقدمه توضیح داده شد، گس واحدی است که میزان تلاش محاسباتی را که برای اجرای برخی عملیات خاص به کار میرود، اندازهگیری میکند. به Gas اتریوم سوخت اتریوم هم گفته میشود.
هر عملیاتی که در اتریوم انجام میشود، اعم از اینکه یک تراکنش باشد یا اجرای یک قرارداد هوشمند، به مقداری گس نیاز دارد.
ماینرهای اتریوم برابر با مقدار Gas مصرفی برای پردازش تراکنشهای شبکه اتریوم، توکن اتر دریافت میکنند.
نکته: جوزف چو (Joseph Chow) پیشنهاد شگفتانگیز گس اتریوم را ارائه داد.
اکثر قراردادهای هوشمندی که در EVM (ماشین مجازی اتریوم) اجرا میشوند با استفاده از Solidity کدگذاری میشوند (بلاکچین اتریوم قصد دارد در آینده از زبان سالیدیتی (Solidity) به Viper منتقل شود). هر یک از خطوط کد در زبان Solidity به مقدار مشخصی Gas نیاز دارد که باید اجرا شود.
نحوه کارکرد گس در شبکه اتریوم
برای درک بهتر نحوه کارکرد گس در اتریوم (Ethereum Gas) بیایید از یک تشبیه استفاده کنیم. فرض کنید شما به یک سفر جادهای میروید. قبل از شروع سفر، این مراحل را طی میکنید:
- شما به پمپ بنزین میروید و مشخص میکنید که میخواهید چه مقدار بنزین بزنید.
- شما این مقدار بنزین را در باک اتومبیل خود پر میکنید.
- شما به پمپ بنزین مبلغ هزینه بنزین را پرداخت میکنید.
حالا، بیایید به طور موازی با اتریوم پیش برویم.
رانندگی در اتومبیل عملیاتی است که میخواهید روی بلاکچین اتریوم اجرا کنید؛ مانند اجرای یک تابع در یک قرارداد هوشمند.
بنزین، همان گس است.
پمپ بنزین، ماینر است.
پولی که برای بنزین پرداخت کردید، کارمزد استخراج ماینرها است.
چرا به گس در شبکه اتریوم نیاز است؟
پاسخ ساده است: ایجاد انگیزه.
مانند هر سیستم اثبات کار نظیر به نظیر، اتریوم به شدت به هش ریت (نرخ هش) ماینرهای خود وابسته است. ماینر بیشتر، هش ریت بیشتر، امنیت بیشتر و سرعت بیشتر سیستم.
برای جذب بیشتر ماینر به سیستم، شبکه باید سیستم را تا آنجا که ممکن است برای استخراجکنندگان سودآور و جذاب کند. در اتریوم، دو روش وجود دارد که استخراجکنندگان میتوانند درآمد کسب کنند:
- استخراج بلاک
- دریافت پاداش بلاک
ماینرها مسئول قرار دادن تراکنشها در داخل بلوکهای خود هستند. برای انجام این کار، آنها باید از قدرت محاسباتی خود برای اعتبارسنجی قراردادهای هوشمند استفاده کنند. سیستم گس به آنها این امکان را میدهد که برای این کار کارمزد مشخصی دریافت کنند.
این هزینه به عنوان کارمزد ماینر شناخته میشود و به آنها کمک میکند که به اندازه کافی برای شرکت فعال در اکوسیستم اتریوم تشویق شوند.
نحوه اندازهگیری گس اتریوم
گس به سادگی اندازهگیری میشود و در همان واحد Gas بیان میشود. تراکنشی که به شبکه اتریوم ارسال میشود، بسته به تعداد دستورالعمل EVM، مقداری گس (به عنوان مثال 100 گس) هزینه میکند.
چگونه گس به توکن اتر تبدیل میشود؟
هیچ قیمت ثابتی برای تبدیل Gas به اتر وجود ندارد. ارسالکننده هر تراکنش، هر قیمت گسی را که دوست دارد مشخص میکند. در طرف دیگر، ماینر میتواند هر تراکنشی را که دوست دارد تأیید کند (معمولاً ماینرها ابتدا تراکنش با بالاترین قیمت گس را تأیید میکنند). در زمان نگارش مقاله متوسط قیمت Gas معمولاً در حدود 20 Gwei یا 0.00000002 اتر است، اما این مقدار میتواند در زمان ترافیک بالای شبکه افزایش یابد.
حد گس اتریوم چیست؟
برای انجام عملیاتی در اتریوم، فرستنده تراکنش باید قبل از اینکه آن را به شبکه ارسال کند، محدودیت گس را مشخص کند. محدودیت Gas حداکثر مقدار گسی است که فرستنده مایل است برای این تراکنش پرداخت کند.
هنگام تعیین محدودیت گس، نکات زیر باید در نظر گرفته شود:
- عملیات مختلف، هزینههای گس متفاوتی خواهد داشت.
- ماینرها به محض اتمام گس از اجرای کار دست میکشند.
- در صورتی که مقداری گس اضافه بیاید، بلافاصله به سازنده عملیات بازپرداخت میشود.
بیایید این را در یک سناریوی فرضی ببینیم.
فرض کنید قرار است ما دو عدد را جمع کنیم و برای انجام این عملیات باید اقدامات زیر انجام شود:
- ذخیره دو عدد در متغیر؛ هزینه این عملیات 45 Gas است.
- جمع کردن دو متغیر؛ فرض کنید این هزینه 10 Gas است.
- ذخیره نتیجه نهایی؛ که دوباره 45 Gas هزینه دارد.
فرض کنید فرستنده محدودیت Gas 120 را مشخص کرده باشد.
کل Gas مورد استفاده ماینرها برای اجرای محاسبات، 100=(45 + 10 + 45) گس است.
کارمزدی که به ماینر تعلق میگیرد، با فرض اینکه 1 گس 20 Gwei قیمت داشته باشد، برابر با (100 * 20 Gwei) = 0.000002 ETH میشود.
حالا 120 – 100 = 20 گس باقی میماند. این مقدار Gas باقیمانده به فرستنده بازگردانده میشود.
برای مشاهده میزان گس بلاکچین اتریوم میتوانید به سایت etherscan مراجعه کنید.
سخن پایانی
گس اتریوم در واقع واحد اندازهگیری عملیات لازم برای انجام تراکنشها یا قراردادهای هوشمند در بلاکچین اتریوم است. هر Gas معادل مقداری توکن اتر است که این مقدار یک عدد ثابت نیست. با توجه به میزان ترافیک شبکه، این عدد تغییر میکند.
مقدار گس برای انجام عملیاتهای مختلف در شبکه متفاوت است. این مقدار توسط فرستنده تراکنش در شبکه مشخص میشود. ماینرهای شبکه هم با توجه به مقدار گسی که برای هر تراکنش مشخص شده، انتخاب میکنند که چه تراکنشی را استخراج کنند. بنابراین هرچه مقدار Gas تراکنش بیشتر باشد، احتمال اینکه این تراکنش سریعتر انجام شود بیشتر است. اگر مقدار گس تراکنش بیشتر از مقدار مورد نیاز باشد و اضافه باشد، دوباره به ایجادکننده تراکنش بازگردانده میشود. Gas داخل شبکه به عنوان مشوقی برای فعال بودن شبکه عمل میکند.
منبع : بلک وال