Chương 1. KIẾN THỨC NỀN TẢNG
1.3. Phân loại mạng ngang hàng
1.3.1. Phân loại theo mức độ phân tán
Mức độ phân tán là đặc tính quan trọng của các hệ thống mạng ngang hàng, nó đánh giá sự phụ thuộc của các nút vào một số nút biết trước. Thiết kế kiến trúc mạng ngang hàng thuần túy là một hệ thống phân tán hoàn toàn, tất cả các nút trong mạng được tổ chức phân tán hoàn toàn, tuy nhiên trong thực tế một số hệ thống vẫn có một hoặc một số máy chủ trung tâm thực hiện một số chức năng nhất định, đặc biệt là chức năng chỉ mục tài liệu và định vị vị trí của các tài liệu. Theo mức độ phân tán, mạng ngang hàng được phân thành các loại thể hiện trong hình 1.2 và được mô tả trong các mục tiếp theo:
20
Hình 1.2. Phân loại mạng ngang hàng theo mức độ phân tán 1.3.1.1. Các hệ thống mạng ngang hàng tập trung
Các hệ thống mạng ngang hàng tập trung gồm một máy chủ trung tâm lưu giữ thông tin của tất cả các nút tham gia mạng và một thư mục quản lý các tệp tin chia sẻ trong mạng nhằm tạo thuận lợi cho các nút trong quá trình cộng tác với nhau. Các hệ thống mạng ngang hàng tập trung còn được gọi là các hệ thống phân tán lai [7]. Đại diện điển hình cho các hệ thống này là Napster [8] và BitTorrent [9]. Trong các hệ thống đó, máy chủ trung tâm hoạt động giống một máy chủ thư mục phục vụ cho các nút trong mạng ngang hàng. Tất cả các yêu cầu truy vấn được gửi đến máy chủ trung tâm và máy chủ trung tâm sẽ gửi trả lại danh sách các nút trong mạng chứa tệp tin được yêu cầu. Quá trình tìm kiếm được thực hiện dưới sự hỗ trợ của máy chủ trung tâm, tuy nhiên việc phân phối nội dung lại được thực hiện trực tiếp giữa nút yêu cầu tài nguyên và nút cung cấp tài nguyên. Các hệ thống mạng ngang hàng tập trung đơn giản trong việc cài đặt, tuy nhiên các hệ thống này dễ bộc lộ điểm sự cố duy nhất, khả năng mở rộng mạng kém, dễ bị vi phạm bản quyền, vấn đề an ninh an toàn và các vấn đề kỹ thuật khác.
21 1.3.1.2. Các hệ thống phân tán hoàn toàn
Các hệ thống mạng ngang hàng phân tán hoàn toàn thường được gọi là các hệ thống mạng ngang hàng thuần túy. Trong các hệ thống này không có thành phần trung tâm đóng vai trò tổ chức cho các nút tham gia, tất cả các nút trong mạng tự cộng tác với nhau để thực hiện các công việc. Kiến trúc Gnutella [10] và Freenet [11] là các hệ thống mạng ngang hàng phân tán hoàn toàn. Các nút trong hệ thống vừa đóng vai trò là máy chủ và vừa đóng vai trò là máy khách tại cùng một thời điểm. Tất cả các nút hỗ trợ nhau trong việc tìm kiếm, định tuyến và phân phối nội dung. Đặc tính tạo nên sức mạnh thực sự cho hệ thống này đó là khả năng phân tán. Tuy nhiên, các hệ thống này thường gây lãng phí băng thông mạng do sử dụng cơ chế tìm kiếm kiểu phát tràn và có thể không đảm bảo được kết quả tìm kiếm nội dung đa phương tiện.
1.3.1.3. Các hệ thống tập trung cục bộ
Hệ thống mạng ngang hàng phân tán một phần là hình thức cải tiến của hệ thống phân tán thuần túy. Các hệ thống mạng ngang hàng dựa trên kiến trúc FastTrack[12] như KaZaA[13], Morpheus[14], iMesh[15] là các hệ thống phân tán một phần. Các hệ thống này hoạt động cơ bản giống với các hệ thống phân tán thuần túy. Tuy nhiên trong hệ thống phân tán một phần, một số nút được gán vai trò cụ thể hơn so với các nút khác. Các nút đặc biệt này được gọi là siêu nút (superpeer hoặc supernode), hoạt động như một máy chủ trung tâm để quản lý một số nút nhất định. Trong hệ thống đó tất cả các yêu cầu sẽ đi qua các supernode. Hệ thống phân tán một phần vẫn tồn tại nguy cơ tạo ra điểm sự cố duy nhất, tuy nhiên chúng được cài đặt cơ chế đặc biệt để chuyển sang nút thay thế khi hệ thống gặp sự cố. Việc chuyển đổi tự động và thông minh giữa các supernode giúp hệ thống tránh khỏi vấn đề điểm sự cố duy nhất. Tuy nhiên, vấn đề lựa chọn một supernode thích hợp cho một tập
22
các nút nhất định là một vấn đề chưa có lời giải tối ưu. Chức năng của các supernode cơ bản là giống nhau và phụ thuộc vào thiết kế kiến trúc tổng thể của mạng ngang hàng. Nói chung, việc kết hợp của supernode tạo điều kiện thuận lợi cho phân phối nội dung và cải thiện cơ chế tìm kiếm.