“Block” đến “Blob” có rất nhiều ý nghĩa trong đó.
Chuỗi phân đoạn (shard chains) có thể thực thi với liên kết chéo (crosslink) đã bị loại bỏ: EVM trong beaconchain và lộ trình Ethereum rollup-centric cùng với mẫu khả dụng dữ liệu để mở rộng lớp cơ sở mà không có sự phức tạp của môi trường ứng dụng. Nhưng làm thế nào để có được nội dung phân đoạn mà không có siêu dữ liệu khối?
Đây là lúc “blob” ra đời, tên đầy đủ của nó là “Blobspace”! Dưới đây là lịch sử của thiết kế Ethereum sharding:
Đáng ra Sharding (hoặc “Giai đoạn 1”) nên được triển khai trong “Giai đoạn 2” (tức là Môi trường thực thi Beacon chain) như đã lên kế hoạch trước đó. Nhưng cho đến khi “Giai đoạn 0” (khởi chạy Beacon chain), tuy rằng EVM của mạng chính có quyền ưu tiên và việc khởi chạy lớp thực thi “Giai đoạn 2” (ewasm?) nhưng lại không xuất hiện.
Đặc điểm kỹ thuật cho “Giai đoạn 1” như sau:
- Ít shard hơn (1024 -> 64)
- Freeride với các liên kết cross-shard (liên kết chéo)
- Thiết kế bằng chứng ký quỹ mới (loại bỏ phần ký quỹ có lợi cho trường hợp cố ý mất bằng chứng)
Chưa kể hoạt động trước đó của sharding rất trừu tượng và đầy tham vọng: nhắn tin cross-domain, môi trường thực thi ewasm, phi trạng thái cho truy cập động, sở sharding, v.v. L1 trở nên phức tạp hơn và bắt đầu tiến hóa.
Tuy nhiên, nếu L1 chỉ tập trung vào giải quyết các vấn đề về dữ liệu, thì hầu hết các vấn đề nêu trên đều chuyển thành các vấn đề phát triển cho L2. Và lấy mẫu (sampling) chỉ giải quyết vấn đề dữ liệu L1. Điều gì sẽ xảy ra nếu chức năng bổ sung ở lớp mạng có thể hỗ trợ ?
Vì vậy, vào ngày 14 tháng 10 năm 2020, các nhà phát triển đã có một cuộc gọi hội nghị về “Các vấn đề kết nối mạng giai đoạn 1 (networking)”. Sau cuộc thảo luận, có thể kết luận rằng gossipsub rất phổ biến và các DHT có vẻ khá chậm chạp. Nhưng vào thời điểm bắt đầu, mọi nhà phát triển web vẫn đang bận rộn chuẩn bị cho việc ra mắt chuỗi beacon (ngày 1 tháng 12), dựa theo tình hình hiện tại của sự việc vào thời điểm đó, rõ ràng là có sự thiên vị.
Sự thiên vị vào thời điểm đó:
- Gossipsub = red hot, mainnet đã sẵn sàng (không có vấn đề gì lớn ngoại trừ một số vấn đề DoS. Và những vấn đề này cũng đã được tiết lộ trước khi ra mắt mainnet)
- Discv5 = Chưa hoàn thành, yêu cầu di chuyển mạng trực tiếp từ 5.0 -> 5.1 trước khi khởi chạy mạng chính
Nhưng hướng đi có vẻ rõ ràng, nó được đệ ra rằng phải giảm độ phức tạp L1 vì Beacon chain đã đủ phức tạp. Cải thiện khả năng mở rộng chỉ thông qua dữ liệu, sử dụng kế hoạch “lấy sampling sẵn có của dữ liệu” về lâu dài và áp dụng các giải pháp mở rộng L2. Vì vậy, Vitalik mô tả nó là “Lộ trình Ethereum Rollup-Centric” .
Tuy nhiên, trong khi những người triển khai bận rộn với việc khởi chạy Beacon chain, các nhà nghiên cứu cũng khá bận rộn sau khi launch. Vào thời điểm đó Vitalik/Dankrad đang làm việc trên một số bản nháp thiết kế tính khả dụng dữ liệu ban đầu, cố gắng giúp người triển khai hiểu các nguyên tắc dễ dàng hơn.
Dựa trên một số thứ từ gossipsub đã xuất hiện ra vài ý tưởng để sử dụng nó cho DAS. Nhìn lại, có thể DHT phù hợp với DAS hơn Gossipsub, ngoại trừ bản phân phối ban đầu.
Sau đó có một vài điều đã thay đổi vào năm 2021, như là cấu trúc p2p lý tưởng được thiết kế cho nó quá phức tạp, vì vậy thay vào đó nên cố gắng đóng góp cho nó (go-kzg) và tham gia vào công việc hợp nhất ban đầu (chủ nghĩa rayo). Sau đó, hãy thử lại vào độ vài tháng sau để tham gia nghiên cứu về sharding thay vì tham gia phát triển bản nâng cấp Altair / London.
Blob lại xuất hiện trở lại gần đây, lần này với cấu trúc giống PBS hơn, có cả tổng hợp các chữ ký BLS của blob-builder và blob-proposer, nhưng nó vẫn còn quá phức tạp. Do đó, hướng phát triển của thiết kế sharding chủ yếu trở thành trọng tâm của người sở hữu Beacon chain, khiến nó chỉ là một vấn đề của lớp mạng.
Đây là thiết kế thứ năm của sharding, chủ nghĩa tối giản vứt bỏ rất nhiều thứ, kết quả nó trở nên đẹp và mạnh mẽ hơn: thiết kế mô-đun tốt hơn, tùy chọn bao bọc và độ phức tạp. Rollup đặc biệt thu hút ở sự lạc quan của nó.
Vào cuối năm 2022, EIP 4488 Và 4490 xuất hiện: mọi người bắt đầu mất kiên nhẫn và chi phí của calldata phải giảm nhanh để duy trì tính cạnh tranh! Các cuộc thảo luận về các chủ đề này cũng trở nên sôi nổi tại All Core devs sau bản nâng cấp ở London. Nhưng nó có thể không bền vững theo ý kiến cá nhân vì calldata mang chi phí kế thừa mà L2 không cần.
Trong khi đó, Vitalik và Dankrad tiếp tục làm việc trên một số thiết kế sharding mới: tập trung vào beacon chain hơn, data-only scaling và tập trung vào các sơ đồ sampling. Có thể “danksharding” sẽ thực sự ra mắt vào cuối năm 2021 hoặc đầu năm 2022.
Vào đầu năm 2022, Vitalik đã đề xuất hai cách mà chúng ta có thể phát triển theo hướng danksharding đầy đủ mà không cần sử dụng sampling: một phiên bản đơn giản và một phiên bản phức tạp. Mặc dù đây thực sự là sự khác biệt giữa “EL nặng (lớp thực thi)” và “EL, CL tách biệt, nhưng nó sẽ dễ dàng hơn và tương thích trong tương lai.
4844 hiện được đặt tên là “proto-danksharding”, đây là một điều kiện tiên quyết để có đầy đủ sharding. Nhưng “blobspace” mới là meme thực sự vì sau nhiều lần lặp lại thiết kế sharding, đây là phiên bản gần với tầm nhìn Ethereum hơn bất kỳ thiết kế sharding nào khác.
Giai đoạn này của Serenity có tất cả những việc được thực hiện PoS và thiết kế sharding, cập nhật lặp đi lặp lại. một số điểm nóng cho danksharding trong tương lai như:
- Tác động của độ trễ bao gồm dữ liệu L1 đối với L2 được đánh giá quá cao.
- Việc lấy sampling chủ yếu dựa vào các mối quan hệ tốt.
ZK có thể là một công nghệ chống phù thủy p2p trong tương lai, nhưng hiện tại nó có vẻ xa vời.