Chương 1 KIẾN THỨC NỀN TẢNG
1.2. Ứng dụng mạng ngang hàng
Mạng ngang hàng được sử dụng nhiều cho việc phân phối nội dung dựa trên các mạng khác nhau. Kiến trúc này không chỉ được dùng để xây dựng ứng dụng phân phối, chia sẻ tệp tin mà còn được dùng để phát triển một số lượng lớn các ứng dụng khác. Phần này trình bày tóm tắt về các ứng dụng của mạng ngang hàng.
1.2.1. Phân phối nội dung dựa trên mạng ngang hàng
Mục tiêu chính trong việc thiết kế kiến trúc mạng ngang hàng là hỗ trợ phân phối nội dung giữa cộng đồng người sử dụng và làm giảm tải trên các máy chủ trung tâm. Tuy nhiên mỗi hệ thống lại có vai trị và cách thức chia sẻ nội dung khác nhau. Các ứng dụng tiêu biểu cho phân phối nội dung bao gồm: KaZaA, Morpheus, Napster, eDonkey/eMule, Akamai, BitTorrent. Mỗi nút trong hệ thống là một kho nội dung phân tán để phân phối và chia sẻ nội dung cho các nút khác. Việc truy cập nội dung được kiểm sốt chặt chẽ và chỉ có nút được cấp quyền mới có thể truy cập được nội dung. Tính phổ biến của các ứng dụng này đã thay thế hệ thống chia sẻ nội dung sử dụng máy chủ chuyên dùng và nâng cao khả năng mở rộng mạng cho vấn đề phân phối nội dung. Các hệ thống chia sẻ nội dung chú trọng vào nâng cao tính bảo mật để hạn chế các truy cập trái phép đến nội dung chia sẻ.
Truyền thông đa phương tiện thời gian thực là một lĩnh vực chia sẻ nội dung phổ biến khác dựa trên mạng ngang hàng. Đã có nhiều nghiên cứu đưa ra các giải pháp cho truyền thông đa phương tiện qua mạng ngang hàng. Một số kiến trúc được đề xuất để giải quyết các vấn đề như quản lý nút, tính mạnh mẽ của hệ thống, khả năng thích ứng của hệ thống đối với tính ổn định của các nút và chất lượng dịch vụ (QoS) để truyền thời gian thực hiệu quả qua mạng ngang hàng. Các kiến trúc phổ biến cho truyền thông đa phương tiện bao gồm: CoopNet, SpreadIt, ZIGZAG, PALS.
IPTV là một dịch vụ mới dựa trên mạng ngang hàng trong lĩnh vực truyền thông đa phương tiện thời gian thực. IPTV cung cấp dịch vụ truyền tải Video theo yêu cầu (VoD). Các ứng dụng đặc trưng của IPTV bao gồm TVUPlayer, Joost, CoolStreaming, Cybersky-TV, TVants, PPLive, LiveStation, GridMedia, và iGridMedia.
1.2.2. Truyền thông dựa trên mạng ngang hàng
Kiến trúc mạng ngang hàng được sử dụng rộng rãi để xây dựng nhiều ứng dụng truyền thông khác nhau. Các ứng dụng này cung cấp cơ sở hạ tầng cho các nút cộng tác, truyền thông thời gian thực và trực tiếp với nhau, điển hình như một số ứng dụng: Skype, AOL, AIM, ICQ, Yahoo, MSN, NetNews và Jabber.
1.2.3. Xử lý và tính tốn phân tán dựa trên mạng ngang hàng
Ý tưởng phía sau các ứng dụng xử lý và tính tốn phân tán là dựa trên kiến trúc của mạng ngang hàng để phối hợp sức mạnh xử lý có sẵn (khả năng CPU) của mỗi nút. Trong hệ thống xử lý và tính tốn phân tán, nhiệm vụ tính tốn ban đầu được chia thành nhiệm vụ nhỏ hơn, các nhiệm vụ nhỏ được gán cho các nút khác nhau xử lý và sau đó kết quả được tổng hợp lại. Trong tính
nút. Kiến trúc mạng ngang hàng cho phép con người có thể sử dụng các máy tính cá nhân để xử lý một bài tốn dành cho siêu máy tính với chi phí thấp.
Seti@Home[23] và Genome@Home [24] là những ứng dụng xử lý phân tán phổ biến. SETI @Home gán cơng việc cho các máy tính nhàn rỗi thơng qua một chương trình điều khiển. Trong hệ thống cần một máy chủ trung tâm để duy trì thơng tin của tất cả các nút. Mỗi cơng việc cần thời gian khoảng để xử lý, tuy nhiên dữ liệu truyền có kích thước khơng lớn, đường truyền được sử dụng không thường xuyên.
SETI@Home sử dụng phổ biến cho nhiều dự án tính tốn khoa học trong đó có tin sinh học, dự báo thời tiết, v.v. Hệ thống có khả năng mở rộng cao tuy nhiên nó khơng cung cấp nền tảng chung cho các ứng dụng khác.
1.2.4. Cộng tác dựa trên mạng ngang hàng
Kiến trúc mạng ngang hàng giúp các nút hoạt động cộng tác với nhau để thực hiện các mục tiêu chung. Groove [25] là ứng dụng dựa trên kiến trúc mạng ngang hàng do Microsoft phát triển và tạo ra môi trường cộng tác cho các nút tham gia. Groove cho phép người dùng cộng tác trực tiếp với nhau mà không cần qua các máy chủ trung tâm. Groove cung cấp cơ chế đồng bộ hóa cho phép các nút cộng tác một cách an tồn, các thơng điệp trao đổi với nhau dưới dạng XML. Ứng dụng này cung cấp dịch vụ truyền thông, chia sẻ nội dung và cộng tác như chỉnh sửa tài liệu theo nhóm, tạo bản vẽ theo nhóm, cùng kiểm duyệt, v.v. giữa các nút tham gia.
1.2.5. Hạ tầng công nghiệp/nền tảng dựa trên mạng ngang hàng
Kiến trúc mạng ngang hàng cung cấp cơ sở hạ tầng cho các ứng dụng phân tán. JXTA [26] là hạ tầng mạng ngang hàng khá phổ biến, cung cấp một mơi trường lập trình, hạ tầng cơng nghiệp cho mục đích chung. Hạ tầng JXTA là dịch vụ phân tán độc lập với các giao thức tầng giao vận. JXTA tạo ra một
hệ thống mạng ngang hàng với các chức năng cơ bản, cung cấp các thành phần cho việc xây dựng các ứng dụng mạng ngang hàng. Tuy nhiên, vấn đề định danh toàn cầu cho các nút tham gia mạng trên hạ tầng JXTA vẫn chưa được giải quyết, do đó khả năng mở rộng mạng cịn hạn chế.
1.2.6. Các hệ thống cơ sở dữ liệu và tìm kiếm dựa trên mạng ngang hàng Kiến trúc mạng ngang hàng cũng được sử dụng cho một số hệ thống tìm kiếm và cơ sở dữ liệu phân tán. Open Cola Folders, Pelbio, aKa InfraSearch, WebV2 và Sciencenet là các bộ cơng cụ tìm kiếm dựa trên mạng ngang hàng. Mơ hình quan hệ cục bộ (Local Relational Model - LRM), PIER và các hệ thống Piazza, AmbientDB và Xpeer là các hệ cơ sở dữ liệu quan hệ/phân tán dựa trên kiến trúc mạng ngang hàng. Các cơ sở dữ liệu ngang hàng vượt qua giới hạn về quan hệ và hệ quản trị cơ sở dữ liệu phân tán. Khơng có lược đồ tổng thể cho các hệ thống cơ sở dữ liệu ngang hàng.
1.2.7. Các ứng dụng khác
Bên cạnh các lĩnh vực ứng dụng nói trên, kiến trúc mạng ngang hàng còn được sử dụng rộng rãi cho nhiều ứng dụng khác. Lĩnh vực phổ biến bao gồm ứng dụng trò chơi (2AM, CenterSpan), nghiên cứu y tế (đặc biệt là nghiên cứu ung thư), lĩnh vực giáo dục và nhiều lĩnh vực tài chính, kinh doanh (blockchain), Web tùy biến (Writable web) như Blogger, Wiki Web, Manila và công nghệ Endeavour, Inc.