
Hiểu rõ logic công nghệ TON qua một bài viết: Lấy ứng dụng tốc độ cao làm trung tâm
Tuyển chọn TechFlowTuyển chọn TechFlow

Hiểu rõ logic công nghệ TON qua một bài viết: Lấy ứng dụng tốc độ cao làm trung tâm
Phần công nghệ trong lộ trình của TON sẽ tiếp tục thúc đẩy lợi thế về tốc độ và khả năng mở rộng của TON.
Tác giả: Hiệp hội Blockchain Đại học Bắc Kinh Kiwi
TON sở hữu nền tảng công nghệ lấy ứng dụng tốc độ cao làm trung tâm: TON ra đời từ Telegram, giao dịch được đưa trực tiếp lên chuỗi thông qua message, hỗ trợ điểm-điểm;
-
Truyền tải message bất đồng bộ: Do sử dụng FunC làm ngôn ngữ phát triển hàm, các nút trong TON giao tiếp bằng cách truyền «message», nhưng TON là chuỗi bất đồng bộ, vì vậy để đồng bộ hóa chính xác message giữa các chuỗi, khái niệm thời gian logic (lt) được giới thiệu nhằm đảm bảo message lt được thực hiện nghiêm ngặt theo thứ tự trước sau, từ đó bảo đảm việc thực thi thông tin đúng đắn;
-
Cơ chế định tuyến message siêu lập phương: TON áp dụng hai phương thức định tuyến thường và nhanh. Định tuyến thường truyền message phân mảnh giữa các nút liền kề thông qua cấu trúc lập phương; định tuyến nhanh thêm phần chứng minh Merkle có thể truyền dọc theo cạnh siêu lập phương để trung chuyển message, nâng cao tốc độ;
-
Bằng chứng cổ phần (PoS) + BFT thuận lợi cho sự phát triển hệ sinh thái: PoS tránh được lượng lớn tính toán trong quá trình tạo khối, hiệu quả cao hơn, chi phí thấp hơn, hiệu suất mạng tốt hơn, phù hợp với việc triển khai ứng dụng DAPP; mặc dù DPoS nhanh hơn nhưng tốc độ tin cậy lại chậm hơn hệ thống BFT, do đó TON chọn BFT.
Kiến trúc đa phân mảnh động của TON giúp dễ dàng mở rộng ứng dụng: TON tăng tốc độ nhờ truy vấn song song, nâng cao độ chính xác truy vấn nhờ phân mảnh động, cải thiện khả năng mở rộng nhờ bag of cells;
-
Kiến trúc đa phân mảnh động: TON có ba tầng, một chuỗi masterchain duy nhất + nhiều Workchain + shardchain có thể tăng giảm và chia tách động, mỗi chuỗi phân mảnh là tập hợp của các chuỗi tài khoản khác nhau, DAPP có thể tự chủ kích hoạt một chuỗi phân mảnh cụ thể;
-
Trạng thái toàn cục có thể cập nhật nhanh chóng: Cập nhật trạng thái toàn cục theo cấu trúc «bag of cells» tương tự DAG, kết nối hai nhóm cells mới cũ rồi xóa root cũ để cập nhật nhanh. Đồng thời sử dụng cơ chế sửa đổi khối dọc để cập nhật khối.
TON trong tương lai sẽ tiếp tục tối ưu hóa khung kỹ thuật: thông qua mở rộng song song, ra mắt công cụ phân mảnh chuỗi, tăng cường kiểm tra nút, v.v., liên tục thúc đẩy lợi thế về tốc độ và khả năng mở rộng của TON.
Vấn đề mở rộng blockchain
Mở rộng blockchain là một thách thức kỹ thuật quan trọng, là một trong những chìa khóa thúc đẩy sự phát triển công nghệ blockchain: Cùng với sự gia tăng không ngừng của ứng dụng blockchain và số lượng người dùng, các mạng blockchain hiện tại thường đối mặt với tình trạng thông lượng không đủ và thời gian xác nhận giao dịch dài. Thiết kế blockchain truyền thống hạn chế khả năng xử lý lượng lớn giao dịch và nhu cầu người dùng, dẫn đến tắc nghẽn mạng, phí giao dịch cao và hiệu suất thấp;
Thách thức mở rộng blockchain chủ yếu bắt nguồn từ kiến trúc phân tán và cơ chế đồng thuận: Trước hết, bản chất phân tán và cơ chế đồng thuận của blockchain khiến mọi nút trong mạng cần xác minh và ghi lại tất cả các giao dịch, dẫn đến thông lượng mạng bị giới hạn. Thứ hai, yêu cầu về tính bảo mật và phi tập trung buộc mọi nút phải giữ bản sao đầy đủ của blockchain, làm tăng gánh nặng lưu trữ và truyền tải;
Để giải quyết bài toán mở rộng blockchain, các nhà nghiên cứu đã đề xuất nhiều giải pháp khác nhau: Như phân mảnh (Sharding), chuỗi bên (Sidechains), giải pháp lớp 2 (Layer 2 solutions)... Các giải pháp này cố gắng nâng cao thông lượng và hiệu suất mạng bằng cách chia mạng thành nhiều phần nhỏ hơn, giới thiệu các blockchain độc lập hoặc xây dựng cấu trúc bổ sung trên chuỗi chính. Tuy nhiên, các giải pháp này cũng đặt ra những thách thức kỹ thuật và vấn đề an ninh mới như giao tiếp giữa các mảnh, chuyển tài sản xuyên chuỗi và thiết kế cơ chế đồng thuận.
-
Phân mảnh: Ý tưởng cơ bản là chia toàn bộ mạng blockchain thành nhiều đoạn nhỏ (gọi là shard), mỗi shard có thể độc lập xử lý một phần giao dịch và dữ liệu. Bằng cách phân tán giao dịch và dữ liệu vào các shard khác nhau, cơ chế phân mảnh có thể nâng cao thông lượng và hiệu suất toàn mạng. Tuy nhiên vẫn đối mặt với các vấn đề về tính bảo mật và nhất quán trong giao tiếp giữa các shard, ngoài ra, cơ chế phân mảnh còn phải giải quyết bài toán thiết kế và triển khai cơ chế đồng thuận để đảm bảo tính nhất quán và an toàn toàn mạng;
-
Chuỗi bên: Công nghệ chuỗi bên là phương pháp tạo và vận hành một blockchain độc lập kết nối với chuỗi chính (blockchain chính). Chuỗi bên có thể thực hiện chuyển tài sản hai chiều với chuỗi chính, đồng thời sở hữu quy tắc và chức năng riêng. Nguyên lý cơ bản của chuỗi bên là chuyển một số giao dịch từ chuỗi chính sang xử lý trên chuỗi bên nhằm giảm tải cho chuỗi chính, đồng thời cung cấp khả năng mở rộng và linh hoạt cao hơn. Tuy nhiên, chuỗi bên cần thực hiện chuyển tài sản hai chiều với chuỗi chính, đòi hỏi cơ chế và giao thức an toàn nhất định để đảm bảo tính an toàn và nhất quán của tài sản. Ngoài ra, thiết kế và triển khai chuỗi bên cần cân nhắc tính tương thích và khả năng tương tác với chuỗi chính;
-
Rollup: Nguyên lý cơ bản là lưu trữ lượng lớn dữ liệu giao dịch ở chuỗi bên (off-chain), sau đó gửi thông tin tóm tắt các giao dịch này lên chuỗi chính để xác minh. Ưu điểm là có thể nâng cao đáng kể khả năng mở rộng và hiệu suất mạng blockchain, bằng cách lưu trữ dữ liệu giao dịch trên chuỗi bên và dùng chuỗi chính để xác minh, công nghệ Rollup có thể giảm mạnh gánh nặng lưu trữ và tính toán trên chuỗi chính. Tuy nhiên cũng tồn tại lo ngại về tính tập trung và an ninh;
-
Cơ chế đồng thuận mới: Như POH của Solana, liên kết dấu thời gian với từng giao dịch, cung cấp chuỗi thời gian có thể xác minh cho blockchain. Chuỗi thời gian này có thể dùng để xác minh thứ tự và thời điểm giao dịch, từ đó giảm chi phí giao tiếp và độ trễ trong quá trình đồng thuận. Mặc dù Solana tuyên bố TPS có thể đạt 65.000, nhưng thực tế phần lớn TPS chỉ dùng cho giao tiếp giữa các nút, giới hạn dữ liệu thực tế chỉ khoảng 6-8k (thường ngày 4-5k).
Blockchain TON bắt nguồn từ Telegram, tư tưởng ban đầu là phục vụ lượng lớn người dùng: Telegram là một trong những nền tảng xã hội phổ biến nhất thế giới, có hơn 800 triệu người dùng hoạt động hàng tháng, mỗi ngày truyền tải hàng trăm tỷ tin nhắn bên trong phần mềm. TON như là bước chuyển mình Web3 của Telegram, triết lý thiết kế từ đầu đã hướng tới phục vụ hàng tỷ người dùng chứ không chỉ đáp ứng nhu cầu một số ít.
Kiến trúc công nghệ của TON
Thiết kế đa chuỗi phân mảnh vô hạn thích ứng
Phân mảnh của TON là từ dưới lên: Các phương án phân mảnh blockchain phổ biến thường áp dụng cách tiếp cận từ trên xuống, tức là trước tiên xây dựng một blockchain đơn lẻ, sau đó chia nó thành nhiều blockchain tương tác để nâng cao hiệu suất. Tuy nhiên, phương án phân mảnh của TON lại theo cách tiếp cận từ dưới lên: tổ chức các chuỗi tài khoản thành các chuỗi phân mảnh (Shardchain), khiến các chuỗi tài khoản (Workchain) chỉ tồn tại dưới dạng ảo hoặc logic thuần túy trong các chuỗi phân mảnh. TON thực hiện xử lý song song giao dịch trên nhiều chuỗi, được gọi là «blockchain của các blockchain». Nhờ cách này, hiệu suất hệ thống có thể được nâng cao hiệu quả;
TON có kiến trúc phân mảnh động: Gồm masterchain, workchain và shardchain. Masterchain chịu trách nhiệm điều phối, các workchain và shardchain xử lý giao dịch thực tế. Ngoài ra, phân mảnh của TON là động, mỗi tài khoản như một Shardchain, có thể tự động tổ hợp thích ứng thành Shardchain lớn hơn dựa trên mối quan hệ tương tác giữa các tài khoản để đáp ứng nhu cầu mở rộng động.
-
Masterchain: Chỉ có duy nhất một, chứa các tham số giao thức, tập hợp Validators và phần thưởng tương ứng, ghi lại các Workchain đang hoạt động cùng các Shardchain thuộc về chúng. Các chuỗi dưới gửi hash khối mới nhất lên Masterchain để đảm bảo có thể xác định trạng thái mới nhất khi cần đọc tin nhắn xuyên chuỗi.
-
Nếu phân mảnh đã đạt giới hạn, thì cuối cùng mỗi chuỗi phân mảnh sẽ chỉ lưu một tài khoản hoặc hợp đồng thông minh. Điều này dẫn đến lượng lớn các «chuỗi tài khoản (account-chains)» mô tả trạng thái và chuyển đổi trạng thái của từng tài khoản riêng lẻ, các chuỗi tài khoản này trao đổi thông tin với nhau, tức là các Shardchain tạo thành Workchain.
-
Workchain: Là một khái niệm ảo tồn tại như tập hợp các Shardchains, hệ thống có thể chứa tối đa 2^32 Workchain. Mỗi Workchain có thể tùy chỉnh linh hoạt các quy tắc như loại giao dịch, loại token, hợp đồng thông minh, định dạng địa chỉ... miễn tuân thủ tiêu chuẩn tương tác. Nhưng các Workchain phải có định dạng hàng đợi tin nhắn giống nhau để thuận tiện trao đổi, đương nhiên điều này cũng có nghĩa tất cả Workchain phải có mức độ bảo mật tương đương nhau;
-
Shardchain: Để nâng cao hiệu suất xử lý, có thể tự động tách khi tải cao và hợp nhất khi tải giảm, mỗi Workchain được chia nhỏ hơn thành các Shardchains (tối đa 2^60). Shardchain phân bổ công việc cho tất cả các Shardchain, mỗi Shardchain chỉ phục vụ một tập hợp tài khoản nhất định.

Cơ chế truyền thông tin
Message: Do TON dùng ngôn ngữ phát triển send_raw_message của FunC, nên việc truyền giữa các nút trong TON gọi là «message». Trong TON, giao dịch bao gồm tin nhắn vào khởi tạo ban đầu và một nhóm tin nhắn ra gửi đến các hợp đồng khác;
Hypercube Routing: Cơ chế truyền thông tin cấu trúc lập thể, cho phép tin nhắn được tạo trong một khối chuỗi phân mảnh nhanh chóng truyền và xử lý đến khối tiếp theo của chuỗi phân mảnh đích.
Truyền message bất đồng bộ
Gọi bất đồng bộ có vấn đề đồng bộ: Trong blockchain đồng bộ, giao dịch có thể chứa nhiều lời gọi hợp đồng thông minh. Trong hệ thống bất đồng bộ, người dùng không thể nhận phản hồi tức thì từ hợp đồng thông minh mục tiêu trong cùng một giao dịch, vì việc gọi hợp đồng có thể mất vài khối để xử lý, độ dài tuyến đường giữa khối nguồn và khối đích sẽ ảnh hưởng đến tiến trình này;
Để đạt phân mảnh vô hạn, phải đảm bảo message hoàn toàn song song, từ đó dẫn đến khái niệm thời gian logic: Trong TON, mỗi giao dịch chỉ thực thi trên một hợp đồng thông minh đơn lẻ và dùng message để giao tiếp giữa các hợp đồng. Vì vậy, khái niệm thời gian logic được đưa ra để sử dụng trong chuỗi bất đồng bộ, nhằm đồng bộ hóa message giữa các chuỗi, tức là mỗi message đều có thời gian logic hoặc thời gian Lamport (gọi tắt là lt). Thời gian này dùng để theo dõi mối quan hệ giữa các sự kiện và xác định sự kiện nào trình xác thực cần xử lý trước;
Message lt sẽ được thực thi nghiêm ngặt theo thứ tự trước sau để đảm bảo logic thao tác: Tin nhắn gửi từ một tài khoản và giao dịch xảy ra trên một tài khoản sẽ được sắp xếp nghiêm ngặt, thời gian lt của giao dịch tạo ra lớn hơn thời gian lt của tin nhắn, thời gian lt của tin nhắn gửi trong một giao dịch phải lớn hơn thời gian lt của giao dịch gây ra tin nhắn đó. Ngoài ra, nếu có nhiều tin nhắn, tin nhắn có lt thấp hơn sẽ được xử lý trước.
Cơ chế định tuyến message siêu lập phương
TON sử dụng song song định tuyến nhanh + định tuyến chậm:
Định tuyến chậm: Phương pháp xử lý thông tin xuyên chuỗi ổn định và truyền thống hơn, thông tin được đóng gói vào một khối trên chuỗi nguồn, sau đó được truyền từ một chuỗi phân mảnh sang chuỗi phân mảnh khác thông qua relayer, cũng có thể dùng nhiều chuỗi phân mảnh trung gian để truyền. Tất cả các chuỗi phân mảnh tạo thành một đồ thị «siêu lập phương», tin nhắn lan truyền dọc theo các cạnh của siêu lập phương này, sau khi được trình xác thực xác minh thì được đóng gói vào một khối khác;
Ưu điểm của định tuyến chậm là mức độ an toàn và phi tập trung cao hơn, vì mọi thông tin đều phải trải qua quá trình xác nhận khối đầy đủ. Với mạng siêu lập phương chuỗi phân mảnh có quy mô N, số bước định tuyến hop = log16(N). Do đó, chỉ cần 4 nút định tuyến là có thể hỗ trợ hàng triệu chuỗi phân mảnh.
Định tuyến nhanh: Trong định tuyến chậm, tin nhắn lan truyền dọc theo cạnh siêu lập phương. Để tăng tốc, định tuyến nhanh cho phép trình xác thực thuộc chuỗi phân mảnh đích xử lý trước tin nhắn này, sau đó cung cấp một bằng chứng Merkle và gửi biên lai để hủy bỏ tin nhắn đang truyền;
Định tuyến nhanh nhanh hơn (nút có thể tìm ra lộ trình tối ưu), cũng ngăn ngừa truyền đôi, nhưng không thể thay thế định tuyến chậm vì trình xác thực sẽ không bị phạt nếu mất biên lai, do đó tiềm ẩn rủi ro an toàn nhất định.
Trạng thái toàn cục của chuỗi phân mảnh
«Bag of cells»: Một nhóm cells được cập nhật theo dạng tương tự DAG. Bằng cách biểu diễn trạng thái mới như một «bag of cells» khác có root riêng, sau đó liên kết hai nhóm cells mới cũ, đồng thời xóa root cũ;
Sửa lỗi khối dọc: Mỗi khối trong chuỗi phân mảnh TON thực tế không chỉ có một khối mà là một chuỗi, khi cần sửa khối lỗi của chuỗi phân mảnh, một khối mới sẽ được gửi lên «blockchain dọc» để thay thế khối đó.
Cơ chế đồng thuận
Trong mạng POS tồn tại 3 vai trò:
-
Nút xác thực: Đặt cược 300.000 TON sau khi đáp ứng điều kiện phần cứng có thể tham gia bảo vệ an toàn mạng;
-
Tất cả khối do 100 ~ 1000 nút được chọn tạo ra, nút được bầu chọn hàng tháng, và phải đóng băng số TON đặt cược khi bầu cử. Trong thời gian nhiệm kỳ, các nút được chọn sẽ được chia thành nhiều nhóm công việc để tạo khối mới, mỗi khối mới nhận được chữ ký từ hơn 2/3 số nút đặt cược trong nhóm là coi như tạo thành công, nếu vi phạm sẽ bị slash và tước quyền;
-
Fisherman: Phát hiện nút xác thực có hoàn thành nhiệm vụ xác minh hay không bằng cách gửi bằng chứng vô hiệu, có thể coi là vai trò giám sát;
-
Người đối chiếu: Đề xuất khối ứng viên mới cho nút xác thực, nếu khối được chọn thì người đối chiếu hưởng lợi. Họ chịu trách nhiệm đối chiếu trạng thái chuỗi phân mảnh và dữ liệu các chuỗi phân mảnh lân cận rồi gửi cho nút xác thực.
BFT: Sau khi cân nhắc, TON thấy rằng mặc dù DPoS nhanh hơn nhưng cấp độ tin cậy và tốc độ đều chậm hơn hệ thống BFT, do đó cuối cùng chọn BFT (Byzantine fault tolerance).
Khung mới của TON có thể hỗ trợ truyền thông tin tốc độ cao của TG
TON đạt tốc độ giao dịch cao và finality nhờ kiến trúc đa phân mảnh động: TON có thể tạo một chuỗi riêng cho mỗi ví người dùng, tính toán song song phân mảnh, hỗ trợ giao tiếp tức thì giữa các phân mảnh và TVM hỗ trợ tính toán bất đồng bộ tạo thành cơ sở lý luận cho TPS cao;
TON đạt khả năng mở rộng cao hơn nhờ cơ chế truyền thông tin: Trong blockchain TON, việc gọi giữa các hợp đồng thông minh là bất đồng bộ, không phải nguyên tử. Điều này có nghĩa khi một hợp đồng thông minh gọi một hợp đồng khác, lời gọi đó sẽ không được thực thi ngay lập tức mà được xử lý ở một khối tương lai nào đó sau khi giao dịch kết thúc. Thiết kế này cho phép khả năng mở rộng cao hơn vì không cần hoàn tất xử lý mọi giao dịch trong một khối.
TON trong tương lai sẽ tiếp tục tối ưu hóa khung kỹ thuật...
Phần lộ trình kỹ thuật của TON sẽ tiếp tục thúc đẩy lợi thế về tốc độ và khả năng mở rộng của TON
-
Tách biệt bộ sắp xếp và bộ xác thực;
-
Nâng cao khả năng mở rộng và tốc độ: Cho phép TON mở rộng song song khi xử lý lượng lớn giao dịch;
-
Hướng dẫn và công cụ phân mảnh chuỗi: Cung cấp hướng dẫn và ví dụ mã để tổ chức hoạt động TON tải cao trong sàn giao dịch, hệ thống thanh toán và dịch vụ TON;
-
Tăng cường phối hợp giữa các nút xác thực: Tăng cường và cải tiến việc phát hiện, xử phạt các nút xác thực hoạt động kém.
Chào mừng tham gia cộng đồng chính thức TechFlow
Nhóm Telegram:https://t.me/TechFlowDaily
Tài khoản Twitter chính thức:https://x.com/TechFlowPost
Tài khoản Twitter tiếng Anh:https://x.com/BlockFlow_News














