Gossip Protocol: Kiến trúc, Làm việc & Ứng dụng của nó

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Việc truyền dữ liệu qua một mạng lớn (blockchain) là một nhiệm vụ đầy thách thức. Truyền dữ liệu tương tự đến vô số nút trên mạng lớn sử dụng một lượng lớn sức mạnh xử lý; mất nhiều thời gian để tạo ra nó và thường xuyên giới hạn giá trị dữ liệu khi nó đạt được điểm đến cuối cùng. Vì vậy, các giao thức gossip khắc phục vấn đề này bằng cách cho phép dữ liệu cung cấp từ một nút này sang một nút khác, tương tự như việc hai người nói chuyện phiếm về một thông tin trên mỗi tách trà. Bài viết này thảo luận tổng quan về một giao thức truyền thông giống giao thức nói chuyện phiếm - làm việc với các ứng dụng.


Gossip Protocol là gì?

Một giao thức truyền thông như giao thức Gossip chỉ đơn giản là cho phép chia sẻ trạng thái trong các hệ thống phân tán. Các hệ thống hiện đại sử dụng giao thức ngang hàng này để phân phối thông tin cho tất cả các thành viên trong một cụm hoặc mạng. Loại giao thức này được sử dụng trong một hệ thống phi tập trung không bao gồm bất kỳ nút trung tâm nào để theo dõi tất cả các nút và biết liệu một nút có bị lỗi hay không.



Gossip Protocol hoạt động trên nguyên tắc tương tự về cách dữ liệu được truyền trên mạng xã hội. Hiện tại, hầu hết các hệ thống hiện đại thường sử dụng các giao thức này để giải quyết các vấn đề có thể khó giải quyết theo những cách khác, hoặc do sự cố trong cấu trúc, rất lớn hoặc do các giải pháp tin đồn là những giải pháp hiệu quả nhất hiện có.

Kiến trúc giao thức Gossip

Các Triển khai giao thức gossip có thể được thực hiện trong cơ sở dữ liệu Apache Cassandra. Ở đây, chúng ta sẽ thảo luận về giao thức này, cách Cassandra đạt được sự phối hợp giữa các nút và cách các nút này sẽ đồng bộ hóa như thế nào. Trong cơ sở dữ liệu Cassandra, tất cả các nút đều giống nhau và có kiến ​​trúc ngang hàng & không có khái niệm nút chủ-tớ.



  Kiến trúc giao thức Gossip
Kiến trúc giao thức Gossip

Gossip là hệ thống thông báo mà nút Cassandra và các nút ảo đã sử dụng để làm cho dữ liệu của chúng đáng tin cậy với nhau. Vì vậy, nó được sử dụng để thực hiện nhân tố nhân rộng trong một cụm. Do đó, hãy tưởng tượng cụm Cassandra giống như một hệ thống vòng ở bất cứ nơi nào mỗi nút bao gồm một bộ phận nhất định của mọi bảng trong cơ sở dữ liệu và chúng chỉ có thể giao tiếp với các nút liền kề.

Hãy xem cách Cassandra đạt được sự phối hợp giữa các nút. Vì vậy, chúng ta hãy lấy một ví dụ bao gồm 6 nút trong một cụm từ 1 đến 6. Trong cụm trên, chúng ta có thể nhận thấy rằng nút 3 đang ngừng hoạt động. Vì vậy, khi một nút gặp sự cố, sau đó nó sẽ ngừng gửi các thông báo định kỳ và mọi người khác sẽ phát hiện ra ngay lập tức.

Trong giao thức buôn chuyện, các nút mạng trao đổi thông tin trạng thái định kỳ về bản thân họ và về các nút bổ sung mà họ biết. Giao thức này chạy trong mỗi giây để trao đổi thông báo trạng thái với tối đa 3 nút khác trong cụm.

Các giao thức gossip cực kỳ hữu ích trong Cassandra, vì các nút trao đổi dữ liệu về bản thân và các nút còn lại mà chúng đã đồn đại. Kết quả là, tất cả các nút trong cụm học nhanh chóng về các nút còn lại.

Giao thức Gossip hoạt động như thế nào?

Nói chung, giao thức cho phép mọi nút theo dõi thông tin trạng thái liên tục trên các nút khác trong cụm như nút nào có thể truy cập và phạm vi chính mà chúng chịu trách nhiệm, v.v. Các nút trong cụm truyền thông tin trạng thái để chờ đồng bộ hóa. Giao thức gossip là một cơ chế giao tiếp ngang hàng, nơi các nút trao đổi thông tin trạng thái theo định kỳ về bản thân và các nút khác mà họ biết.

Mỗi nút bắt đầu một vòng đàm tiếu mỗi giây để trao đổi thông tin trạng thái về chính nó & các nút khác với một nút tình cờ khác. Vì vậy, bất kỳ sự xuất hiện mới nào cuối cùng cũng lan truyền trong toàn hệ thống & tất cả các nút nhanh chóng tìm hiểu về tất cả các nút khác trong một cụm.

Các loại giao thức nói chuyện phiếm

Các giao thức gossip có sẵn trong ba loại phổ biến, chống entropy và giao thức tính toán tổng hợp được thảo luận bên dưới.

Các giao thức phổ biến

Giao thức phổ biến còn được gọi là giao thức tạo tin đồn vì chúng sử dụng tin đồn để truyền bá thông tin qua mạng. Đây là loại giao thức tin đồn thô sơ nhất được sử dụng cho các blockchain. Khi các giao thức này thích hợp để lấy dữ liệu ra nhiều nút trong một khung thời gian ngắn, thì dữ liệu có thể bị hỏng cũng như dễ dàng sửa đổi trong quá trình thực hiện.

Giao thức chống Entropy

Những loại giao thức tin đồn này chủ yếu được sử dụng để sửa dữ liệu trùng lặp bằng cách đánh giá chúng cũng như thay đổi so sánh. Mục đích chính của các giao thức này là giảm các thay đổi đối với dữ liệu khi dữ liệu di chuyển giữa các nút bằng cách đánh giá và thay đổi dữ liệu để đảm bảo rằng dữ liệu đó là chính xác.

Các giao thức tính toán tổng hợp

Các giao thức này còn được gọi là giao thức tổng hợp hoạt động hoặc tính toán tổng thể của mạng thông qua dữ liệu lấy mẫu tại các nút & chúng hợp nhất các giá trị để có được giá trị trên toàn hệ thống. Các loại giao thức này có liên quan đến giao thức chống entropy, mặc dù chúng được xây dựng dựa trên suy nghĩ truyền mỗi nút một phần tử riêng biệt của dữ liệu được truyền, sau đó dữ liệu được chia sẻ giữa các nút để tạo thành một bức tranh hoàn chỉnh.

Thuật toán giao thức tin đồn

Thuật toán tin đồn là giao thức trao đổi dữ liệu không đồng bộ được xây dựng dựa trên tin đồn, nếu không thì phong cách tin đồn là không đáng tin cậy. Vì tính đơn giản và khả năng ứng dụng rộng lớn của chúng, thuật toán này đã xuất hiện như một giải pháp kiến ​​trúc kinh điển, đặc biệt là cho các mạng thế hệ sắp tới.

Trong một thuật toán giao thức tin đồn, mọi nút trong mạng trao đổi thông tin định kỳ với một tập hợp con các nút. Thông thường, tập hợp con này là tập hợp các hàng xóm của mỗi nút. Mỗi nút chỉ có một chế độ xem mạng cục bộ. Mỗi nút nhận được một số dữ liệu phổ quát mong muốn trong suốt một số không nhất định. cập nhật định kỳ của các nút.

Ưu điểm và nhược điểm

Các ưu điểm của giao thức tin đồn bao gồm những điều sau đây.

  • Các giao thức này có khả năng mở rộng rất cao.
  • Tất cả các nút trong giao thức này hoạt động giống nhau và chúng không có chức năng khác biệt hoặc đặc biệt với nhau. Một khi lỗi xảy ra trong một hoặc nhiều nút thì nó sẽ không làm gián đoạn hoặc ảnh hưởng đến các nút khác trong mạng để phân phối dữ liệu. Tương tự, các nút có thể đi qua hoặc đi ra khỏi mạng giữa các cặp mà không có giới hạn & không ảnh hưởng đến chức năng của nó.
  • Các giao thức này phân phối dữ liệu theo cách hoàn toàn tự trị và phi tập trung.
  • Các loại giao thức này có khả năng hoạt động chính xác vì các nút có khả năng chia sẻ và phân phối dữ liệu với nhiều nút trong mạng ngang hàng,

Các nhược điểm của giao thức tin đồn bao gồm những điều sau đây.

  • Các giao thức này cung cấp sức mạnh cho hệ thống bằng cách cho phép các nút trong mạng hoạt động liên tục mà không bị phá vỡ khi xảy ra lỗi.
  • Khả năng dự phòng cao có thể dẫn đến yêu cầu băng thông tối đa nên có thể gây nhiễu mạng.

Các ứng dụng

Các ứng dụng của gossip protoco Tôi bao gồm những điều sau đây.

  • Giao thức gossip chủ yếu được sử dụng để khắc phục các sự cố xảy ra khi phát đa hướng.
  • Nó là một loại giao tiếp mà ở đó một phần của tin đồn hoặc thông tin ở trạng thái này được truyền từ một nút hoặc nhiều nút tới một tập hợp các nút khác trong mạng.
  • Các giao thức này được sử dụng bởi các mạng phân phối khác nhau để phân phối dữ liệu một cách nhanh chóng và đáng tin cậy.
  • Những thứ này được bitcoin sử dụng để truyền bá các giá trị không ổn định trên các nút khai thác của nó.
  • Chúng chủ yếu được sử dụng để tạo kênh giao tiếp mà qua đó tất cả các nút của mạng có thể nhận được thông tin và khám phá các cặp ghép nối giúp phân phối siêu dữ liệu.
  • Cơ sở dữ liệu Ripple sử dụng các giao thức gossip để truyền thông tin về tình trạng và tính năng của vòng đệm.
  • Dynamo sử dụng giao thức Gossip để theo dõi tư cách thành viên. Nó cho phép bạn khám phá những người tham gia chương trình mới cũng như quan sát bất kỳ sự cố nào.
  • Các giao thức này được sử dụng trong mạng dịch vụ Consul cho cả việc phát hiện và xác định các thành viên mới của sự cố mạng, nếu không thì các lỗi tiềm ẩn.
  • Mạng Lãnh sự sử dụng các giao thức này để chuyển tiếp thông tin một cách an toàn và nhanh chóng về các dịch vụ và sự kiện mới trong mạng.

Vì vậy, đây là tất cả về tổng quan về một giao thức nói chuyện phiếm - làm việc với các ứng dụng. Các giao thức gossip rất hiệu quả để việc phát hiện lỗi của giao thức gossip có thể thực hiện đơn giản trong các hệ thống phân tán & lớn một cách không đồng bộ. Đây là một câu hỏi dành cho bạn, Ví dụ về Giao thức Tin đồn là gì?