Đường đến Neo3: Tác động của Độ lưu trạng thái lên Hiệu suất mạng & Khả năng sửa lỗi

TIN TỨC NEO
2020-02-26



Trong bài viết trước trong loạt bài Đường đến Neo3, chúng ta đã tìm hiểu về việc thiếu trạng thái toàn cầu hiện tại trên Neo2 và các vấn đề mà nó đem đến cho các máy khách nhẹ. Ngoài ra, chúng ta cũng đã lưu ý giải pháp được đề xuất đầu tiên, bao gồm một gốc trạng thái trong các tiêu đề khối. Trong bài viết hôm nay, chúng ta sẽ đề cập đến những nhược điểm của phương pháp này và giới thiệu các khả năng sửa lỗi độc đáo của Neo.


Xem các bài trong chuỗi bài Đường đến Neo3 tại đây.


Bao gồm một gốc trạng thái trong các tiêu đề khối cung cấp các đảm bảo về niềm tin có giá trị cho dữ liệu được lưu trữ, đặc biệt đối với các máy khách nhẹ như ví người dùng và cho các giao dịch chuỗi chéo. Tuy nhiên, cách tiếp cận này cũng kết đôi chặt chẽ các khối và độ lưu trạng thái, một đặc điểm không mong muốn mà các cuộc thảo luận ban đầu tìm cách khắc phục do khả năng mất hiệu suất đáng kể.


Suy giảm hiệu suất

Như đã được giải thích bởi nhà phát triển cốt lõi Igor Coelho, để thêm gốc trạng thái mới nhất vào tiêu đề khối, trạng thái hiện tại phải được tính bởi node đồng thuận đóng vai trò là người nói trước khi khối có thể được đề xuất.


Sau khi dành thời gian đặt lệnh và xác minh các giao dịch để xây dựng một khối, node đồng thuận sẽ cần xử lý tất cả các thay đổi trạng thái có trong các giao dịch đó trước khi có thể xác định trạng thái cuối cùng. Chỉ sau khi tính toán gốc trạng thái, nó mới có thể được đưa vào tiêu đề khối, vì vậy tất cả việc tính toán này phải được thực hiện trong suốt thời gian giữa việc tạo khối và đề xuất cho các node khác.


Trong một số trường hợp, điều này có thể sử dụng hết thời gian có sẵn trong một vòng đồng thuận nhất định, khiến các node đồng thuận khác đồng ý thay đổi chế độ xem, trì hoãn khối tiếp theo. Sự chậm trễ sẽ làm giảm thông lượng chung của mạng, vì thời gian khối sẽ tăng gấp đôi cho mỗi vòng đồng thuận thất bại.


Một giải pháp tiềm năng được đề xuất bởi nhà phát triển cốt lõi đồng nghiệp Shargon, người đã lưu ý rằng các tiêu đề khối mới thay vào đó có thể chứa trạng thái trước đó. Điều này có thể phủ nhận những hạn chế về hiệu suất tiềm năng, vì các node sẽ không cần phải sử dụng trạng thái tính toán tài nguyên trong khi sự đồng thuận đang diễn ra. Quá trình này có thể được thực hiện sau đó, với trạng thái của khối mới được duy trì trong tiêu đề khối tiếp theo.


Mặc dù cách tiếp cận này sử dụng tốt hơn các tài nguyên node và giúp đảm bảo rằng việc sản xuất khối được ưu tiên, nhưng nó cũng sẽ vô hiệu hóa một thế mạnh duy nhất của Neo blockchain, khả năng sửa lỗi giao thức mà không ảnh hưởng đến tính bất biến của blockchain.


Khả năng sửa lỗi độc đáo của Neo

Một đặc điểm thú vị trên Neo2 là khả năng sửa lỗi trong mã mà không ảnh hưởng đến lịch sử khối. Nguyên tắc này lần đầu tiên được ghi nhận bởi người đồng sáng lập Neo Erik Zhang, sau đó được tóm tắt bởi Igor Coelho:


“Blockchain Neo có một triết lý thú vị mà chúng ta có thể tiếp tục áp dụng các bản sửa lỗi cho nó và trạng thái được kết nối với chính đặc tả giao thức chứ không phải mã. Vì vậy, nếu [mã] có lỗi và chúng tôi “khóa” trạng thái trên khối, chúng tôi không bao giờ có thể sửa lỗi.”


Một ví dụ về khả năng sửa lỗi này được cung cấp bởi Zhang, người đã đưa ra một minh chứng về cách NeoVM có thể tạo ra kết quả hợp đồng không chính xác, có khả năng kết thúc trong một sửa đổi bị lỗi đối với bộ lưu trữ hợp đồng. Các sự kiện như mất tài sản hoặc hack xảy ra do lỗi như những lỗi này có thể được giải quyết trên hầu hết các chuỗi khối PoW / PoS trải qua thủ tục rẽ nhánh (forking), tuy nhiên các nhánh là sự kiện phân cực vốn có thể liên quan đến các khối bị cuộn ngược lại.


Điều này đe dọa tính cuối cùng của các giao dịch trên mạng, đặt câu hỏi về tính bất biến thực sự của sổ cái và có khả năng gây gián đoạn hoặc phân tách hệ sinh thái, như đã xảy ra trong quá khứ với Bitcoin và Ethereum.


Nếu xảy ra sự cố tương tự trên Neo2, lỗi trong mã NeoVM có thể được sửa trong bản cập nhật và chuyển sang các node trên mạng. Mỗi node được cập nhật sẽ đồng bộ hóa lại cùng một blockchain như trước đây, duy trì tính bất biến của các giao dịch, nhưng việc thực hiện hợp đồng không chính xác sẽ không còn xảy ra nữa. Điều này sẽ thay đổi gốc trạng thái từ thời điểm đó trở đi, nhưng điều này sẽ không ảnh hưởng đến mạng vì hiện tại trạng thái toàn cầu không được duy trì.


Về bản chất, điều này cung cấp cho Neo khả năng duy nhất để sửa lỗi trong giao thức của nó mà không ảnh hưởng đến tính bất biến của blockchain hoặc gặp phải các chi phí đáng kể có thể phát sinh trong các nhánh thông thường. Tuy nhiên, nó hiện đang phải trả giá khi không có một trạng thái toàn cầu được đồng ý. Bên cạnh các lợi ích hiệu suất, đây là lợi thế khác của trạng thái tách rời.


Việc xem xét này là lý lẽ chính chống lại việc viết các gốc trạng thái vào tiêu đề khối. Một khi trạng thái đã được hoàn thành trong một khối, nó sẽ luôn là một phần của khối đó. Nếu một bản cập nhật cho giao thức đã sửa một lỗi đã xảy ra trong quá khứ, các node cập nhật và phát lại blockchain sẽ kết thúc với trạng thái không còn phù hợp với trạng thái được ghi trong các tiêu đề khối trước đây.


Đồng thuận về một trạng thái toàn cầu duy nhất là một bước quan trọng trong độ tin cậy và chấp nhận chuỗi khối Neo. Trong bài viết tiếp theo, chúng ta sẽ xem xét một giải pháp được đề xuất để đáp ứng nhu cầu về trạng thái toàn cầu đồng thời bảo tồn khả năng sửa lỗi giao thức mà không can thiệp vào chính blockchain.


TINTUCNEO – Tham gia các cộng đồng Tin tức NEO tại:

Website tin tức

Medium tin tức

Telegram tin tức

Telegram Thảo luận

Fanpage tin tức

Kênh Youtube




0 bình luận. Để lại câu hỏi & nhận trả lời nhanh qua email.




Bài cùng chủ đề
KardiaChain bắt tay với Neo EcoBoost để giảm rào cản tích hợp KardiaChain vào bất kỳ Blockchain nào tương tự Neo
Neo rất vui mừng thông báo sự hợp tác của Neo EcoBoost với KardiaChain. Neo là một trong những blockchain công khai đầu tiên mà KardiaChain đã chọn để cung cấp khả năng tương tác thông qua công nghệ Node Kép độc ​​đáo của họ.

2020-07-16

Tổng quan về AMA của Novem trên Reddit Neo và diễn đàn Cộng đồng Nash
Vào ngày 3/7, Nash đã niêm yết token NNN backed bởi vàng của Novem để giao dịch với USDC. Để quảng bá việc niêm yết, Nash đã tổ chức AMA trên diễn đàn cộng đồng của họ với đại diện từ nhóm Novem. Ngoài ra, vào ngày 6/7, Novem đã tham gia AMA trên sub-Reddit Neo. Novem đã trả lời các câu hỏi liên quan đến lợi ích của việc nắm giữ tài sản được hỗ trợ bằng vàng, việc tuân thủ quy định, xác minh quyền sở hữu vàng, công ty của họ tại Liechtenstein, đổi token NNN lấy vàng vật chất, v.v.

2020-07-08

Bản tin tuần TINTUCNEO: 29/06 - 05/07
Nhà đồng sáng lập Neo, Da Hongfei, đã xuất bản một bản op-ed trên Coin Telegraph, trong đó nêu rõ cách ông tin rằng USDT stablecoin đã tác động đến địa chính trị và sự phát triển của các loại tiền mã hóa có chủ quyền trong tương lai.

2020-07-07

Paul diMarzio của IWA: “Sau 36 năm trong ngành, tôi lại cảm thấy mình như một đứa trẻ."
Sau gần 33 năm làm việc tại IBM, Paul diMarzio được tiếp thêm năng lượng với vai trò là giám đốc marketing cho Liên minh InterWork (IWA) và công việc mà anh ấy làm để phát triển hệ sinh thái. “Sau 36 năm trong ngành, tôi lại cảm thấy như một đứa trẻ. Điều này rất thú vị, đó là một nơi tuyệt vời,” anh ấy nói. NNT đã nói chuyện với diMarzio cho tập 34 của podcast Neo News Today.

2020-07-07

Tham gia Cộng đồng NEO Việt Nam - TINTUCNEO
NEO-based projects? Contact us at [email protected] for collaborations in the Vietnam market