NODE LÀ GÌ? NODE TRONG BLOCKCHAIN VÀ BITCOIN

I. NODE LÀ GÌ?

     Blockchain sử dụng cơ chế đồng thuận phân tán đồng đẳng, tức là tất cả dữ liệu sẽ được lưu trữ trên một mạng lưới, và node chính là một một thiết bị kết nối vào mạng lưới đó. Ví dụ: máy chủ, máy tính, máy tính xách tay, ví trực tuyến hoặc máy tính để bàn và điện thoại di động.

     Các node là một thành phần quan trọng đối với cơ sở hạ tầng của một blockchain. Chúng hoạt động để xác nhận cho sổ cái và cho phép mọi người xem các giao dịch đã thực hiện hoặc dữ liệu được lưu giữ trên mạng lưới một cách minh bạch. Vì vậy, các node có khả năng đảm bảo dữ liệu được lưu giữ trên blockchain là hợp lệ, an toàn và có thể truy cập được cho các bên được ủy quyền.

     Có thể nói một node đầy đủ trong blockchain là bản sao đầy đủ lịch sử giao dịch blockchain trên bất kỳ thiết bị nào.

7 node (máy chủ/máy tính), tất cả được kết nối với nhau và
vận hành trên cùng một blockchain

II. VAI TRÒ CỦA CÁC NODE

     Mục tiêu của các node là duy trì độ tin cậy của dữ liệu được lưu trữ trên blockchain. Vì vậy, vai trò của một node là hỗ trợ mạng lưới bằng cách duy trì một bản sao của một blockchain, trong một số trường hợp, node đó dùng để xử lý các giao dịch.

     Về mặt lý thuyết, toàn bộ blockchain có thể chạy trên một node duy nhất, nhưng vì nó chỉ được lưu trữ trên một thiết bị duy nhất, nên nó sẽ cực kỳ dễ bị ảnh hưởng bởi những sự cố như mất điện, tin tặc hoặc sự cố hệ thống. Blockchain càng chạy trên nhiều full node thì khả năng phục hồi dữ liệu của nó trước những thảm họa càng cao. Khi dữ liệu blockchain được trải rộng trên rất nhiều thiết bị, sẽ rất khó để một sự cố có thể xóa sạch tất cả dữ liệu này cùng một lúc. Ngay cả khi một số lượng lớn các node đột nhiên ngoại tuyến và không thể truy cập được do khủng hoảng toàn cầu. Khi đó, chỉ cần một node có đầy đủ lịch sử blockchain trở lại trực tuyến sẽ làm cho tất cả dữ liệu có thể truy cập lại.

     Với các node là các phần riêng lẻ của một blockchain, có cấu trúc dữ liệu hớn hơn, và khi chủ sở hữu của các node này sẵn sàng đóng góp tài nguyên máy tính của họ để lưu trữ và xác thực các giao dịch, thì họ có cơ hội thu phí giao dịch và kiếm được phần thưởng bằng tiền điện tử. Quy trình này được gọi là mining. Việc xử lý các giao dịch này có thể sẽ yêu cầu công suất tính toán và xử lý dữ liệu lớn, điều này có nghĩa là khả năng đáp ứng của một máy tính trung bình là không đủ. Vì vậy, mà các minner đầu tư vào các thiết bị máy tính có CPU  hoặc GPU cực mạnh để theo kịp yêu cầu về công suất xử lý, và xác thực các giao dịch trong blockchain để nhận phần thưởng cho công việc.

     Tóm lại, đây là những gì các node phải làm:

  • Các node kiểm tra xem một block có hợp lệ không và chấp nhận hoặc từ chối nó.
  • Các node lưu trữ các block (lưu trữ lịch sử giao dịch blockchain).
  • Các node phát và truyền tải thông tin block này đến các node khác có thể cần đồng bộ hóa với blockchain.

III. ĐỒNG BỘ HÓA DỮ LIỆU CỦA NODE VỚI BLOCKCHAIN

     Các node có thể trực tuyến hoặc ngoại tuyến. Các node trực tuyến sẽ nhận, lưu và truyền tất cả các block mới nhất từ các node này ​​đến các node khác, trong khi các node ngoại tuyến thì không. Khi một node ngoại tuyến trở lại trực tuyến, đầu tiên nó sẽ cần bắt kịp với phần còn lại của mạng lưới blockchain, bằng cách tải xuống tất cả các block đã được thêm vào blockchain kể từ khi node đó ngoại tuyến. Quá trình này thường được gọi là đồng bộ hóa.

Đồng bộ hóa node Ethereum với blockchain Ethereum.

IV. CÁC LOẠI NODE TRONG BLOCKCHAIN

     Một node có thể là điểm cuối giao tiếp hoặc điểm phân phối lại liên lạc, liên kết với các node khác. Mỗi node trên mạng lưới hầu như đều có vai trò như nhau, tuy nhiên một số node nhất định có vai trò khác theo cách mà node hỗ trợ mạng lưới. Điều đó làm cho không phải tất cả các node sẽ lưu trữ một bản sao đầy đủ của một blockchain để xác thực các giao dịch. Nó  cũng có thể tải xuống một bản sao hoàn chỉnh của một blockchain và kiểm tra bất kỳ giao dịch mới nào đến dựa trên giao thức đồng thuận (consensus) được sử dụng bởi tiền điện tử hoặc token được gọi là một full node.

     Tất cả các node sử dụng cùng một giao thức đồng thuận (consensus) để duy trì tương thích với nhau. Có những node trên hệ thống xác nhận và xác thực giao dịch, đặt chúng thành các block. Các node luôn có quyết định riêng của nó về việc liệu một giao dịch có hợp lệ và được thêm vào một block với các giao dịch khác không, bất kể các node khác hoạt động như thế nào.

     Có nhiều loại node khác nhau trong blockchain. Các yêu cầu để sở hữu một node là khác nhau tùy theo loại giao thức (protocol) và phương thức đồng thuận (consensus) của chúng. Các node trong blockchain gồm có:

  • Root node – Node cao nhất trong một cây nhị phân.
  • Parent node – Một node mà có những node mở rộng từ nó.
  • Child note – Một node được mở rộng từ node khác.
  • Leaf node – Một node không có node con
  • Sibling nodes – Những node kết nối với cùng một node lớn (parent node).
  • Tree – Một cấu trúc dữ liệu bắt đầu từ một node gốc (rood node).
  • Forest – Một tập hợp những cây (trees) node.
  • Degree – Thứ bậc node con của một node.
  • Edge – sự liên kết giữa các node.

V. AI CÓ THỂ CHẠY MỘT NODE?

     Một số blockchain có hàng nghìn node trực tuyến đồng thời. Bất kỳ ai cũng có thể chạy một node bằng cách tải xuống lịch sử giao dịch của một blockchain. Nhiều người đam mê tiền điện tử và blockchain đang chạy các node một cách tự nguyện.

     Họ làm điều này để đóng góp cho cộng đồng blockchain, sự phát triển, bảo mật và tính toàn vẹn của nó, nhưng cũng đơn giản vì đó là sở thích của họ và khiến họ cảm thấy là một phần của dự án. Việc chạy một node được coi là khá đơn giản đối với những người hiểu biết về công nghệ và cũng không yêu cầu nhiều tài nguyên.

     Tuy nhiên, một số blockchain hiện chứa một lượng lớn dữ liệu giao dịch đến mức nó thực sự cần rất nhiều bộ nhớ trên thiết bị để chạy một node đầy đủ. Do đó, nhiều người dùng tiền điện tử chỉ muốn sử dụng một blockchain có các ứng dụng ví. Các ứng dụng này cho phép họ phát các giao dịch từ ví của họ mà không bị yêu cầu tải xuống toàn bộ lịch sử blockchain trên thiết bị của riêng họ.

VI. MASTERNODE

     Một số blockchains cũng có các masternode. Masternode thường được trang bị nặng hơn các node bình thường. Bên cạnh việc xác thực, lưu và truyền tải các giao dịch, các masternode đôi khi cũng tạo điều kiện cho các sự kiện khác trên blockchain phụ thuộc vào bản chất của chúng, chẳng hạn như điều chỉnh các sự kiện bỏ phiếu, cung cấp thực thi các hoạt động giao thức và thực thi luật của blockchain theo đó.

     Các masternode thường luôn trực tuyến (24/7) và tạo điều kiện cho bộ nhớ nhiều hơn các node bình thường. Bạn có thể hiểu một masternode giống như lưu trữ một máy chủ rất lớn trên mạng. Bởi vì việc lưu trữ một masternode thường đòi hỏi nhiều tài nguyên hơn (điện, thời gian hoạt động, bảo trì, không gian lưu trữ, bộ nhớ), nên việc lưu trữ một masternode thường cung cấp khoản thanh toán dưới dạng lãi suất.

7 node, 5 node bình thường và 2 masternode

     Không phải ai cũng có thể chạy một masternode. Bởi vì quyền kiểm soát masternode có thể bị lạm dụng và do đó nó yêu cầu máy chủ lưu trữ phải ký quỹ một lượng tiền điện tử tối thiểu (thường là khá lớn) làm tài sản thế chấp. Tài sản thế chấp này sẽ được dùng khi máy chủ masternode vi phạm các quy tắc của blockchain. Lãi suất mà một máy chủ masternode nhận được được tính trên khoản tiền gửi thế chấp của họ.

     DASH là một trong những blockchain phổ biến nhất có tính năng masternode được tích hợp sẵn. Tuy nhiên, việc lưu trữ một masternode trên blockchain Dash không hề rẻ. Tài sản thế chấp tối thiểu để đủ điều kiện lưu trữ một masternode trên blockchain này hiện đang là một điều đáng kinh ngạc lên tới 1.000 DASH, trị giá 200.000 đô la tại thời điểm hiện tại. Tuy nhiên, nó vẫn có thể là một khoản đầu tư hấp dẫn, vì ví dụ như chuỗi khối DASH đã trả lại lãi suất hàng năm là 11% vào năm 2016.

Các masternode DASH cho mỗi quốc gia trên toàn thế giới.

VII. NODE CỦA BITCON

       1. Full Node:

     Một full node nắm giữ tất cả thông tin được lưu giữ trên một blockchain và hoạt động như một máy chủ cốt lõi trên các mạng blockchain phi tập trung. Mỗi full node sẽ lưu trữ một bản sao của tất cả các giao dịch blockchain. Vì thế chúng đòi hỏi dung lượng lưu trữ và năng lượng tính toán cao. Các full node nắm giữ một vai trò rất quan trọng trong mạng lưới blockchain. Bởi vì chúng quyết định đến tính bảo mật và hợp lệ của mạng blockchain đó. Vì thế vai trò của nó khác với các loại node khác bao gồm:

    • Xác thực chữ ký trong mỗi block: Khi một block mới được thêm vào blockchain, full node sẽ dùng khóa công khai của người gửi giao dịch để kiểm tra tính hợp lệ của giao dịch. Quá trình này gọi là xác thực chữ ký điện tử.
    • Người thực thi quyết định chính của các quy tắc đồng thuận: Các node đầy đủ có quyền và sự ảnh hưởng đến việc từ chối các block mới. Sau khi được các node khác xác thực, full node có thể từ chối block mới này bởi vì một trong những lý do như: định dạng block không đúng, hoặc block này đã được khai thác.

     Các full node thường được điều hành bởi các tình nguyện viên hoặc các bên liên quan. Và việc chạy các node đầy đủ này cụ thể là trên mạng bitcoin thì sẽ không nhận được phần thưởng cho việc xác thực giao dịch.

       2. Listening Node (Super Node):

     Các lighting node có mục đích tương tự như các node đầy đủ, tuy nhiên thay vì lưu trữ toàn bộ lịch sử giao dịch của một blockchain thì chúng chỉ giữ một phần của lịch sử giao dịch như tiêu đề của các block (tiêu đề của block là một bản tóm tắt của một block, bao gồm thông tin liên kết với block trước đó), từ đó có thể truy vấn tính hợp lệ của các giao dịch trước đó. Nó giao tiếp và cung cấp thông tin cho bất kỳ node nào khi quyết định thiết lập kết nối với nó.

     Một super node thường chạy 24/7 và là đầu mối đáng tin cậy cho các node khác kết nối. Node này truyền tải lịch sử blockchain và dữ liệu giao dịch tới nhiều node trên khắp thế giới. Vì lý do đó, một super node có thể cần nhiều công suất tính toán hơn và kết nối internet tốt hơn khi so sánh với một full node bị ẩn.

       3. Mining Node – Node của thợ đào:

     Các mining node là các node tạo ra các “block” cho blockchain. Vai trò của các mining node là thực hiện tính toán để tìm ra một số nonce đáp ứng yêu cầu của block đó. Node đầu tiên tìm ra được số nonce này, sẽ gửi kết quả của nó cho các full node xác thực và full node sẽ thêm block mới này blockchain. Việc tìm ra số nonce này sẽ tiêu tốn tài nguyên và năng lượng, vì vậy các mining node này sẽ nhận được một phần thưởng cho việc tạo ra block mới. Các mining node chỉ chịu trách nhiệm tạo ra các block chứ chúng không chịu trách nhiệm về việc duy trì hoặc tính hợp lệ của các block trong tương lai – nhiệm vụ của full node.

       4. Lightweight Client hay còn gọi là SPV Client:

     Còn được biết đến với cái tên là Simplified Payment Verification (SPV) client, lightweight client được hiểu là máy khách tận dụng mạng Bitcoin nhưng không thực sự hoạt động như một full node. Do đó, SPV client không đóng góp vào an ninh của mạng lưới vì không giữ một bản sao của blockchain, không tham gia vào quá trình xác minh và xác thực giao dịch.

     SPV là phương thức mà qua đó người dùng có thể kiểm tra xem liệu một số giao dịch có được đưa vào trong một block hay không mà không phải tải xuống toàn bộ dữ liệu của block đó. Do đó, SPV client dựa vào thông tin được cung cấp bởi các full node hoặc các super node. Lightweight client hoạt động như các điểm cuối giao tiếp và được sử dụng bởi nhiều ví tiền điện tử.

 

Nguồn:

  • https://blogtienao.com
  • https://viblo.asia
  • https://goctienao.com

Tổng hợp: Keziah Lee

 

(Visited 126 times, 1 visits today)

About The Author

You Might Be Interested In

LEAVE YOUR COMMENT

Email của bạn sẽ không được hiển thị công khai.