Ethereum đã âm thầm tích tụ một vấn đề không xuất hiện trong biểu đồ phí gas hoặc tốc độ giao dịch nhưng lại đe dọa sức khỏe dài hạn của mạng lưới. Nó được gọi là state bloat. Các nhà nghiên cứu Stateless Consensus của Ethereum Foundation hiện đang đưa ra cảnh báo rõ ràng: state ngày càng tăng của Ethereum đang trở nên khó lưu trữ hơn, khó phục vụ hơn và khó phi tập trung hơn.
Trong một đề xuất gần đây, nhóm đã trình bày lý do tại sao vấn đề này quan trọng, cách cải thiện khả năng mở rộng vô tình làm cho nó tồi tệ hơn và ba con đường cụ thể có thể ngăn chặn hoạt động node trở thành hoạt động ưu tú chỉ dành cho các nhà cung cấp hạ tầng lớn nhất.
Ethereum State: Nguồn ảnh: Ethereum Foundation
State của Ethereum là tổng hợp mọi thứ mà mạng lưới hiện biết. Điều đó bao gồm số dư tài khoản, lưu trữ hợp đồng thông minh và bytecode chạy các Decentralized Application (DApp). Đó là bộ nhớ trực tiếp của chuỗi.
State này là nền tảng cho một hệ sinh thái giải quyết hàng tỷ đô la giá trị và điều phối hàng nghìn ứng dụng trên DeFi, NFT, gaming và các trường hợp sử dụng doanh nghiệp. Vấn đề đơn giản nhưng nghiêm trọng: state chỉ tăng lên. Không có gì được loại bỏ.
Khi nhiều ứng dụng triển khai hợp đồng và nhiều người dùng tương tác với chúng hơn, state mở rộng vĩnh viễn. Mọi full node phải lưu trữ và phục vụ Dữ liệu on-chain này, ngay cả khi phần lớn trong số đó không bao giờ được chạm vào nữa.
Chạy một full node Ethereum đã tốn kém. Yêu cầu lưu trữ tiếp tục tăng, thời gian đồng bộ tăng lên và việc phục vụ dữ liệu trở nên mong manh hơn khi chuỗi già đi. Theo Foundation, nếu state trở nên quá lớn hoặc quá phức tạp để phục vụ, toàn bộ hệ thống sẽ trở nên tập trung hơn và dễ vỡ hơn.
Các nâng cấp Khả năng mở rộng gần đây vô tình đẩy nhanh xu hướng này. Mở rộng Layer 2, Proto-Danksharding EIP-4844 và giới hạn gas cao hơn đều cho phép hoạt động nhiều hơn trên Ethereum. Hoạt động nhiều hơn có nghĩa là nhiều hợp đồng hơn, nhiều ghi lưu trữ hơn và tăng trưởng state nhanh hơn.
Mối lo ngại không phải là lý thuyết. Các nhà nghiên cứu đang tích cực kiểm tra các kịch bản căng thẳng để hiểu khi nào kích thước state trở thành nút thắt cổ chai, khi nào các node gặp khó khăn để duy trì đồng bộ với đầu chuỗi và khi nào các triển khai client bắt đầu thất bại dưới áp lực lưu trữ cực độ.
Nếu chỉ một nhóm nhỏ các nhà điều hành được tài trợ tốt có thể đủ khả năng chạy full node, khả năng chống kiểm duyệt và tính trung lập của Ethereum bắt đầu suy yếu.
Lộ trình dài hạn của Ethereum bao gồm statelessness, nơi trình xác thực có thể Xác minh các block mà không cần lưu trữ toàn bộ state. Điều này làm giảm đáng kể gánh nặng cho trình xác thực và mở cửa cho thông lượng cao hơn.
Nhưng nó đặt ra một câu hỏi mới: nếu trình xác thực không lưu trữ state, ai sẽ lưu trữ?
Trong thiết kế stateless, hầu hết state lịch sử và đang hoạt động có thể sẽ được nắm giữ bởi các nhà điều hành chuyên biệt như block builders, nhà cung cấp RPC, MEV searchers và block explorers. Sự tập trung đó giới thiệu các rủi ro mới xung quanh kiểm duyệt, tính khả dụng trong thời gian ngừng hoạt động và khả năng phục hồi dưới áp lực quy định hoặc bên ngoài.
Nhóm Stateless Consensus rõ ràng về sự đánh đổi. Xác minh Stateless cải thiện Khả năng mở rộng, nhưng nếu không có thiết kế cẩn thận, nó có thể đẩy Ethereum về phía tập trung hóa cơ sở hạ tầng.
Để giải quyết vấn đề, các nhà nghiên cứu Ethereum Foundation đã phác thảo ba cách tiếp cận bổ sung, mỗi cách tấn công tăng trưởng state từ một góc độ khác nhau.
State Expiry tập trung vào việc loại bỏ dữ liệu không hoạt động khỏi state đang hoạt động. Nhóm ước tính rằng khoảng 80 phần trăm state của Ethereum đã không được chạm vào trong hơn một năm, tuy nhiên mọi node vẫn được yêu cầu lưu trữ nó.
Theo mô hình này, dữ liệu không hoạt động bị hết hạn khỏi tập hoạt động nhưng có thể được khôi phục sau bằng cách sử dụng bằng chứng mật mã. Hai biến thể đang được khám phá. Một đánh dấu và hết hạn các mục hiếm khi được sử dụng với tùy chọn khôi phục chúng sau. Cái còn lại nhóm state thành các kỷ nguyên, đóng băng các kỷ nguyên cũ hơn trong khi giữ dữ liệu gần đây hoạt động.
Mục tiêu rất đơn giản: ngừng buộc mọi node mang dữ liệu mà không ai đang sử dụng.
State Archive tách hot state khỏi cold state. Dữ liệu được truy cập thường xuyên vẫn nhanh và bị giới hạn, trong khi dữ liệu cũ hơn được bảo quản trong lưu trữ lưu trữ để Xác minh lịch sử.
Cách tiếp cận này cho phép hiệu suất node duy trì tương đối ổn định theo thời gian thay vì suy giảm khi chuỗi già đi. Ngay cả khi tổng state tiếp tục tăng, gánh nặng hoạt động trên hầu hết các node sẽ vẫn có thể quản lý được.
Nó cũng tạo ra các vai trò rõ ràng hơn giữa các node được tối ưu hóa cho hiệu suất và các node được tối ưu hóa cho lịch sử và nghiên cứu.
Partial Statelessness cho phép các node chỉ lưu trữ các tập con của state thay vì mọi thứ. Ví và light clients sẽ lưu trữ tạm thời dữ liệu mà họ dựa vào, giảm sự phụ thuộc vào các nhà cung cấp RPC tập trung.
Mô hình này giảm chi phí lưu trữ, mở rộng sự tham gia và giúp các cá nhân và nhà điều hành nhỏ hơn dễ dàng chạy node hơn mà không cần đầu tư phần cứng khổng lồ.
Trên cả ba cách tiếp cận, mục tiêu thống nhất là giảm state như một nút thắt cổ chai về hiệu suất, giảm chi phí nắm giữ nó và làm cho nó dễ phục vụ hơn.
Foundation đang ưu tiên các giải pháp có thể mang lại lợi ích thực sự ngày hôm nay trong khi vẫn tương thích với các thay đổi giao thức tham vọng hơn trong tương lai. Các lĩnh vực trọng tâm hiện tại bao gồm cải thiện công cụ archive node, tăng cường cơ sở hạ tầng RPC và làm cho các partial stateless nodes dễ chạy hơn.
Những nỗ lực này cố ý thực tế. Nhóm nhấn mạnh rằng chúng được chọn vì chúng hữu ích ngay lập tức và tương thích về phía trước với lộ trình dài hạn của Ethereum.
Các nhà phát triển, nhà điều hành node và nhóm cơ sở hạ tầng đang được mời tham gia thử nghiệm và thảo luận. Các nhà nghiên cứu đã nói rõ rằng đây không phải là điều mà Foundation có thể giải quyết một mình.
Foundation đã cẩn thận nhấn mạnh rằng công việc này đại diện cho một đề xuất, không phải lập trường tổ chức thống nhất. Phát triển giao thức của Ethereum bao gồm nhiều ý kiến và không có con đường duy nhất nào được khóa.
Sự cởi mở đó phù hợp với nỗ lực gần đây của Foundation trong việc giao tiếp rõ ràng hơn về hướng giao thức dài hạn. Cùng với nghiên cứu quản lý state, Ethereum cũng đang làm việc trên Interop Layer để làm cho các mạng Layer 2 cảm thấy như một chuỗi duy nhất, triển khai các thay đổi lãnh đạo và R&D, điều chỉnh chiến lược kho bạc của mình và chuyển sang lịch trình hard-fork hai lần một năm với Fusaka.
State bloat của Ethereum không phải là vấn đề thu hút tiêu đề, nhưng nó nằm ở trung tâm của lời hứa phi tập trung của Ethereum. Nếu việc chạy node trở nên quá tốn kém hoặc phức tạp, mạng lưới có nguy cơ trôi dạt về phía tập trung cơ sở hạ tầng, ngay cả khi thông lượng và khả năng sử dụng được cải thiện.
Thông điệp của Ethereum Foundation rất đơn giản. Mở rộng chuỗi mà không mở rộng khả năng lưu trữ và phục vụ dữ liệu một cách an toàn là không đủ. Cách Ethereum quản lý state của mình trong vài năm tới sẽ định hình ai có thể tham gia, ai kiểm soát cơ sở hạ tầng và mạng lưới vẫn có khả năng phục hồi như thế nào dưới áp lực.
Cuộc tranh luận chỉ mới bắt đầu và các lựa chọn được thực hiện ở đây sẽ vang vọng xa hơn chu kỳ nâng cấp tiếp theo.


