Mempool: nơi giao dịch của bạn chờ đợi trước khi trở thành thật

·5 phút đọc·Bởi SSP Editorial Team
Ảnh bìa SSP Academy: giải thích mempool

Mempool: nơi giao dịch của bạn chờ đợi trước khi trở thành thật

Bạn bấm gửi, và ví báo rằng giao dịch đã được phát đi. Trình khám phá khối hiển thị nó, nhưng ở trạng thái "đang chờ", chưa được xác nhận. Trong vài giây, vài phút hoặc đôi khi vài giờ, giao dịch của bạn vừa tồn tại vừa không tồn tại.

Nơi nó nằm trong khoảng thời gian đó được gọi là mempool. Hiểu về mempool sẽ giải thích vì sao phí thay đổi theo từng phút, vì sao một số giao dịch bị kẹt và vì sao một giao dịch đang chờ là một lời hứa chứ chưa phải một khoản thanh toán.

Mempool thực chất là gì

"Mempool" là viết tắt của memory pool, tức vùng nhớ chờ. Đó là tập hợp các giao dịch hợp lệ nhưng chưa được xác nhận mà một nút giữ trong bộ nhớ, chờ một nhà sản xuất khối chọn lấy.

Điều bất ngờ đầu tiên là không có một mempool duy nhất. Mỗi nút giữ mempool riêng. Khi bạn phát một giao dịch, ví của bạn trao nó cho một nút; nút đó kiểm tra rồi chuyển tiếp cho các nút ngang hàng, và các nút này lại tiếp tục chuyển đi. Chỉ trong vài giây, phần lớn mạng lưới đã có một bản sao, nhưng vùng chờ của mỗi nút có thể hơi khác nhau, tùy vào những gì đã đến được với nó, giới hạn dung lượng và các quy tắc riêng của nó.

Một giao dịch trong mempool đã vượt qua các bước kiểm tra cơ bản: chữ ký hợp lệ và số coin mà nó chi tiêu là có thật. Nó chưa được đưa vào khối nào, và cho đến khi được đưa vào, nó vẫn có thể không bao giờ xảy ra.

Giao dịch được chọn như thế nào

Không gian khối có hạn, và các nhà sản xuất khối (thợ đào trên các chuỗi bằng chứng công việc, trình xác thực trên các chuỗi bằng chứng cổ phần) được trả công một phần qua phí. Vì vậy, nói chung, họ lấp đầy khối bằng những giao dịch trả nhiều nhất cho phần không gian mà chúng chiếm.

Trên Bitcoin và các chuỗi tương tự, điều đó có nghĩa là mức phí: số satoshi trên mỗi byte ảo, không phải tổng phí. Một giao dịch nhỏ trả phí khiêm tốn có thể vượt lên trước một giao dịch lớn trả nhiều hơn về tổng số. Trên Ethereum và các chuỗi EVM khác, điều đó có nghĩa là tiền tip ưu tiên cộng thêm vào phí cơ sở mà chính mạng lưới điều chỉnh qua từng khối.

Đó là lý do phí tăng giảm theo nhu cầu. Khi mempool yên ắng, gần như mọi mức phí hợp lý đều vào được khối tiếp theo. Khi nó đông đúc (một đợt ra mắt được chú ý, thị trường hoảng loạn, một làn sóng hoạt động), các giao dịch trả giá cạnh tranh với nhau, và những giao dịch phí thấp phải nằm chờ.

Vì sao giao dịch bị kẹt

Một giao dịch trả quá ít so với điều kiện hiện tại không thất bại; nó chờ. Nếu nhu cầu vẫn cao, nó có thể nằm trong mempool rất lâu. Tuy vậy, các nút không giữ giao dịch mãi mãi: khi vùng chờ đầy, chúng loại bỏ những giao dịch trả thấp nhất, và nhiều nút xóa mọi giao dịch đã quá khoảng hai tuần.

Một giao dịch bị loại bỏ chưa bao giờ được xác nhận, nên tiền chưa hề di chuyển; nhưng chừng nào nó chưa biến mất ở mọi nơi, nó vẫn có thể được xác nhận sau này. Đó là trạng thái lửng lơ khó chịu: khoản thanh toán chưa hoàn tất mà cũng chưa bị hủy.

Cách khắc phục thường là trả nhiều hơn. Replace-by-fee và các kỹ thuật tương tự cho phép bạn phát một phiên bản mới của cùng giao dịch với mức phí cao hơn, thay thế phiên bản cũ trong mempool.

Đang chờ là công khai

Mọi thứ trong mempool đều hiển thị. Bất kỳ ai chạy nút, và bất kỳ trình khám phá khối nào, đều có thể thấy bạn sắp làm gì trước khi nó trở thành cuối cùng: số tiền, địa chỉ, và trên các chuỗi hợp đồng thông minh là chính xác hàm bạn đang gọi.

Với phần lớn các lần chuyển tiền, điều đó không quan trọng lắm. Với giao dịch mua bán thì có thể rất quan trọng. Các bot theo dõi mempool để tìm những lệnh swap lớn và đặt giao dịch của chính chúng xung quanh để kiếm lời từ biến động giá: cả front-running lẫn tấn công sandwich đều dựa vào việc nhìn thấy giao dịch của bạn khi nó đang chờ.

Điều này cũng quan trọng với bất kỳ ai nhận tiền. Một giao dịch đến đang chờ vẫn có thể bị thay thế hoặc bị loại bỏ. Đó chưa phải là tiền bạn đang có.

Từ đang chờ đến cuối cùng

Được đưa vào một khối là lần xác nhận đầu tiên: giao dịch đã rời mempool và gia nhập chuỗi. Mỗi khối được xây phía trên khiến việc đảo ngược nó khó hơn. Bao nhiêu xác nhận là đủ tùy thuộc vào chuỗi và số tiền, nhưng quy tắc ở đâu cũng giống nhau: đang chờ nghĩa là có thể, đã xác nhận nghĩa là nhiều khả năng, và được xác nhận sâu nghĩa là cuối cùng.

Điều này trông như thế nào trong SSP

Khi gửi từ SSP, bạn chọn mức ưu tiên muốn trả. Màn hình gửi cung cấp các thiết lập sẵn chậm, bình thường và nhanh dựa trên tình trạng mạng hiện tại, kèm ước tính thời gian có thể mất cho mỗi mức, và một tùy chọn tùy chỉnh trên các chuỗi EVM nếu bạn muốn tự đặt phí.

Cả SSP Wallet và SSP Key đều phải phê duyệt trước khi bất cứ thứ gì được phát đi. Khi giao dịch đến được mạng lưới, mempool hoạt động với SSP giống hệt như với bất kỳ ai khác: mức phí bạn chọn quyết định giao dịch được chọn nhanh đến đâu, và cho đến khi được xác nhận, nó vẫn đang chờ.

Tóm tắt thẳng thắn

Mempool là phòng chờ giữa "đã gửi" và "đã xong". Đó là nhiều phòng chứ không phải một; nó công khai; và nó ưu tiên ai trả nhiều nhất cho không gian khối.

Hãy chọn mức phí phù hợp với tốc độ xác nhận bạn cần, đừng coi một giao dịch đang chờ, của bạn hay của người khác, là đã hoàn tất, và hãy nhớ rằng mọi thứ bạn phát đi đều hiển thị với toàn bộ mạng lưới trước khi được quyết toán.

Chia sẻ bài viết này

Bài viết liên quan