Điều gì đã gây ra sự cố ngừng hoạt động của Solana gần đây?
Theo các nhà phát triển dự án, các bot liên quan đến một dự án NFT mới dựa trên Solana đã dẫn đến sự cố mất mạng kéo dài bảy giờ. Sự cố ngừng hoạt động, bắt đầu vào khoảng 20:30 UTC vào thứ Bảy và kết thúc lúc 03:30 UTC vào Chủ nhật, do sự gia tăng lớn của các giao dịch đến (6 triệu mỗi giây) làm quá tải mạng, vượt quá khả năng của mạng là 100Gbps tại các nút riêng lẻ.
“Không có bằng chứng về một cuộc tấn công từ chối dịch vụ, nhưng thay vào đó bằng chứng cho thấy các bot đã cố gắng giành chiến thắng theo chương trình một NFT mới được đúc bằng chương trình Candy Machine phổ biến,” các nhà phát triển dự án cho biết trong bài đăng trên blog , “nguyên nhân sâu xa của sử dụng bộ nhớ không đủ phiếu hạ cánh để hoàn thiện các khối trước đó, ngăn chặn việc dọn dẹp fork bị bỏ rơi. Số lượng trình xác thực fork phải đánh giá vượt quá khả năng của họ để làm như vậy, ngay cả sau khi khởi động lại, cần can thiệp thủ công ”.
Những gì đang được thực hiện?
Theo nhóm phát triển, kể từ đầu tháng 1, Solana đã gặp phải các vấn đề tắc nghẽn không liên tục do hoạt động của bot nhắm vào các loại bạc hà NFT. Sự cố ngừng hoạt động trước đó của Mainnet Beta xảy ra vào tháng 9 năm 2021 và kéo dài trong 17 giờ. Sự cố ngừng hoạt động của ngày 30 tháng 4 giống với thời điểm ngừng hoạt động vào tháng 9, nhưng mạng lần này vẫn tiếp tục hoạt động ngay cả khi khối lượng yêu cầu giao dịch đạt 10.000% so với mức từ tháng 9, phản ánh các cập nhật tiếp theo được thực hiện bởi cộng đồng trình xác nhận.
Nhánh phát hành beta, v1.10, hiện đang ổn định trên Testnet, bao gồm các cải tiến sử dụng bộ nhớ để kéo dài thời gian các nút có thể chịu được sự đồng thuận chậm hoặc bị đình trệ. Các nút thử nghiệm chạy v1.10 được triển khai trên Mainnet Beta tiếp tục cho 2000 vị trí bổ sung ngoài các đồng nghiệp v1.9 thông số kỹ thuật tương tự của chúng.
Ba biện pháp giảm thiểu đang được thực hiện để giải quyết sự ổn định và khả năng phục hồi của mạng.
- QUIC – Ngày nay, Solana sử dụng giao thức dựa trên UDP thô tùy chỉnh để chuyển giao dịch giữa các nút RPC và trình dẫn đầu hiện tại. Vì UDP không có kết nối và thiếu cả kiểm soát luồng cũng như xác nhận biên nhận, nên không có cách nào có ý nghĩa để ngăn cản hoặc giảm thiểu hành vi lạm dụng. Để ảnh hưởng đến việc kiểm soát lưu lượng mạng, các giao thức cốt lõi của Solana đang được hoàn thiện lại trên QUIC, một giao thức do Google xây dựng, được thiết kế cho giao tiếp không đồng bộ nhanh như UDP, nhưng với phiên và kiểm soát luồng như TCP. Sau khi được thông qua, sẽ có nhiều tùy chọn khác có sẵn để điều chỉnh và tối ưu hóa quá trình nhập dữ liệu.
- QoS giao dịch có trọng số cổ phần – Băng thông của mạng dẫn đầu có dung lượng cố định và để sử dụng hiệu quả nó, ưu tiên là điều bắt buộc để chấm dứt thói quen chấp nhận giao dịch bừa bãi hiện nay trên cơ sở ai đến trước được phục vụ trước mà không quan tâm đến nguồn gốc. Cho rằng Solana là một mạng PoS, việc mở rộng tiện ích của tỷ trọng cổ phần đối với chất lượng dịch vụ giao dịch là một lựa chọn tự nhiên. Theo mô hình này, một nút có 0,5% cổ phần sẽ có quyền truyền ít nhất 0,5% gói tin cho người dẫn đầu và phần còn lại của mạng và không có sự kết hợp nào của phần cổ phần còn lại sẽ có thể rửa sạch chúng hoàn toàn. QoS trọng số cổ phần đang song song phát triển với QUIC ngày nay. QoS trọng số cổ phần sẽ mạnh mẽ hơn khi kết hợp với QUIC.
- Ưu tiên thực hiện dựa trên phí – Sau khi được nhập, các giao dịch vẫn có thể tranh chấp để sửa đổi dữ liệu tài khoản được chia sẻ. Sự tranh cãi này đã được giải quyết bằng cách đơn giản đến trước được phục vụ trước tương tự như nhập dữ liệu mạng, khiến người dùng không có cách nào để thể hiện mức độ khẩn cấp của việc thực hiện giao dịch của họ. Cho rằng bất kỳ ai cũng có thể gửi giao dịch đến mạng, tỷ trọng cổ phần không phù hợp với mức độ ưu tiên này. Thay vào đó, một hướng dẫn mới đang được đưa vào chương trình Ngân sách tính toán, cung cấp cho người dùng khả năng chỉ định “phí bổ sung” tùy ý sẽ được thu khi thực hiện giao dịch và đưa nó vào một khối. Tỷ lệ phí này so với các đơn vị tính toán được yêu cầu sẽ đóng vai trò là trọng số ưu tiên thực hiện của giao dịch. Phí bổ sung sẽ được xử lý giống như phí cơ sở ngày hôm nay.
Ưu tiên phí đang được xử lý và được nhắm mục tiêu cho bản phát hành v1.11.