Chào các bạn quay lại với các bài viết mang đậm chất kĩ thuật, giúp bạn hiểu kĩ hơn về ARK. Bạn có thể theo dõi các bài viết chuyên sâu của mình tại đây. Nếu đọc xong có điểm nào còn chưa hiểu, bạn có thể đặt câu hỏi tại kênh #general trên Discord nhé.
Qua những lần chia sẻ với mọi người, mình đã không ít lần nhắc đến Dynamic fee (phí có tính cơ động) trong cơ chế DPOS của ARK. Tuy nhiên để hiểu sâu hơn về tính năng xịn và ít dự án blockchain có này của Ark, mình sẽ phân tích sâu hơn vào chức năng này theo 2 mục sau:
- Hệ thống dynamic fee
- Cơ chế tính dynamic fee
Hệ thống Dynamic Fee của ARK
ARK Core V2 là blockchain đầu tiên triển khai hệ thống dynamic fee trong toàn bộ các blockchain sử dụng cơ chế đồng thuận DPoS. Phí giao dịch sẽ do các delegate quyết định chứ không phải là một yêu cầu bắt buộc chung từ ARK Core.
ARK tin rằng việc tạo ra sự linh động trong phí giao dịch giữa người dùng và Delegate sẽ giúp ARK tiến gần tới việc tạo ra một mạng lưới blockchain linh động, đáp ứng nhu cầu và có khả năng phục hồi. Cả delegate và người dùng cuối đều được hưởng lợi từ dynamic fee: người dùng cuối được hưởng lợi từ sự cạnh tranh của các delegate dưới dạng cạnh tranh phí giao dịch thấp hơn, còn các delegate sẽ có thể sử dụng tính năng này để chống lại các cuộc tấn công spam node của họ bằng cách tăng phí giao dịch lên.
Khi tiến hành setup node, các delegate sẽ tiến hành cấu hình mức phí tối thiểu có thể chấp nhận được cho mỗi loại giao dịch. Khi người dùng ARK tạo 1 giao dịch với phí đã chọn, giao dịch sẽ được đưa vào block, phí đặt từ người dùng càng lớn thì việc đưa giao dịch vào trong block càng nhanh.
VD: đang có 10 giao dịch đang được chờ xử lý để gom vào block, giao dịch của bạn gửi muộn sau cùng ở vị trí thứ 10. Khi 1 block tạo mới, sẽ gom đc tối da 8 giao dịch, nhưng do bạn để phí giao dịch lớn thứ 5 trong tổng 10 giao dịch, nghiễm nhiên bạn được ưu tiên đưa vào block, 2 giao dịch còn lại để phí ít nhất phải đợi để cho vào block sau.
Các delegate khi triển khai các node, họ sẽ được phép cài đặt các thông số phí trong một file cấu hình. Các cấu hình này bao gồm:
- minFeePool: phí tối thiểu trong pool chứa giao dịch.
- minFeeBroadcast: phí tối thiểu cho broadcast
- transaction offsets: giá trị này dùng để điều chỉnh cách tính phí cho một loại giao dịch cụ thể
Cơ chế tính Dynamic Fee trong APN
Công thức tính phí của ARK: Fee = (T+S) * C
- T(offset) : giá trị này phụ thuộc vào mỗi loại giao dịch, được địch nghĩa bởi network.
- C : giá trị hằng số được thiết lập và thay đổi bởi delegate. Giá trị này được thiết lập trong file network.json
- S : kích thước dung lượng của giao dịch tính theo giá trị bytes.
Ví dụ: giao dịch chuyển ARK thông thường không có trường VendorField (trường này phục vụ giao dịch bridge chain, tìm hiểu thêm về smartbridge) sẽ có kích thước 153 bytes. Giá trị offset được network định nghĩa cho giao dịch này là T=100 và delegate đang thiết lập giá trị hằng số là C = 3000.
– Fee = (100 + 153) * 3000 = 759000 ARKTOSHI === 0.00759 ARK (arktoshi là đơn vị nhỏ nhất của ARK)
Như vậy để giao dịch này thành công bạn phải để phí giao dịch tối thiểu là 0.00759 ARK. Hiện tại bài viết này ARK có giá 2$ => Fee = 0.00759 x 2$ = 0.01518$. Khi ARK có giá 20$, delegate sẽ chỉnh giá trị hằng số từ 3000 xuống 300.
– Fee = (100 + 153) * 300 = 75900 ARKTOSHI === 0.000759 ARK x 20$ = 0.01518$
Vẫn đảm bảo được phí như cũ, như vậy khi giá trị ARK tăng thì network của ARK vẫn đảm bảo được phí giao dịch thấp và không cần phải tung ra 1 bản cập nhật mới để giảm phí cũng như bị phí giao dịch cao như ETH.
Dưới đây là bảng giá trị C(offset) và S của mỗi loại giao dịch trong ARK:
Giá trị trong bảng được tính theo mặc định giá trị C = 3000
Một vài ý tưởng phát triển tiếp tục liên quan tới dynamic fee của ARK:
- Phát triển ứng dụng web hiển thị các thiết lập phí của network và tính toán ra phí sẽ rất trực quan cho người dùng. Ví dụ: Bitcoin có 1 trang web hiển thị phí giao dịch trong quá khứ.
- Phát triển công cụ tính toán phí tối thiểu và tối đa của network ARK bằng cách tìm kiếm hết các cấu hình phí trong các node của các delegate và tính toán ra phí hiện tại của network.
Tổng kết
Mình cảm thấy sự tiên phong trong phát triển dynamic fee từ rất sớm của ARK là vô cùng sáng suốt, nó đem lại một lợi ích lâu dài cho ARK cũng như người dùng. Cho đến nay, nhiều dự án DPoS khác như LISK vẫn đang loay hoay tìm cách tích hợp dynamic fee vào blockchain của mình nhưng chưa làm được, đủ thấy ARK xịn như nào rồi phải không các bạn.
Để hiểu rõ hơn về DPoS của ARK, bạn hãy tham khảo tại link này. Hi vọng sau bài viết này các bạn sẽ có thêm một mảnh ghép trong đầu về ARK, cảm ơn đã đón đọc.