ndo dé Mô hình mạng ngang hảng P2P cho phép giải quyết vấn để nảy một cach triệt để bằng cách loại bố thành phần Server và cho phớp tất cả các thành phân khác tương tác với nhau một cách
Trang 1
BOQ GIAO DUC VA DAO TAO
TRUONG BAI HOC BACH KHOA HA NOI
NGUYEN VAN CHIEN
KET HOP M6 HINA CLIENT-SERVER VA P2P: MO HINH LOCAL PROXY
AP DUNG CHO THONG TIN VAN BAN VA DANG DICH YU THEO YEU CAU
Chuyên ngành : Công Kghệ Thông Tin
LUẬN VĂN THẠC SĨ KỸ THUẬT
Công nghệ thông tìn
NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.I8 Hà Quốc Trung,
HaNgi Nam 2014
Trang 2
MỤC LỤC MỤC LỤC
LỜI CAM ĐOAN
LOT CAM ON
DANILMUC THUAT NOT - VIET TA
2.1.1 Khải niệm mô hình Chent-erver àcceeeesreoeeiree.TD
2.1.3 Ưu nhược điểm của mô hinh Client-Server dS
2.3.2 Mo hinh Local Proxy
CHƯƠNG 3 XÂY DUNG UNG DUNG TRAO DOI THONG TIN VAN B/
THEO MO HINA LOCAT PROXY,
3.1 Gidi thigu hé théng Messenger .ccccccccssssssssssseeeseeeeiiei sree SS
3.3 Ảnh xạ các chức năng của hệ thống Aessenger lên cầu trúc file 35 3.4 Cầu trúc hệ thông Messenger theo n6 hinh Local Proxy 37 3.4.1, Mé hinh ing dung Messenger,
3.4.3 Phân lích hoại động cáo mođole trong mô hình ứng đụng Mesacnger 38
Trang 33.5, Cai dit hé thống Messcnger theo mô hình Loeal Proxy 43
3.5.1 Dăng ký ¬—- , ceeerseio48
3.5.3 Thêm bạn bè vào đanh sách bạn bè "—
3.5.4 Tẩy danh sách bạm bè dàng đăng nhập, - 48
'TẢI LIỆU THÁM KHẢO
3
Trang 4LOI CAM BOAN
Tỏi là Nguyễn Văn Chiến, học viên cao hoc lop 12BCNTT2 khéa 2012 -
2014 Thây giáo hướng dẫn là PGS.'TS LIA Quốc Trung
'Tồi xin cam đoan toàn bộ nội dung được trình bảy trong luận văn “&# hợp
mb hink Client-Server va P2P: Mé hink Local Proxy dp dụng cho thông tim văn bản và dạng dich vu thea yén céu.” Vi do t6i nghién ctr va thye hign duéi sự
hướng dẫn của thầy giáo PGS.TS Hà Chiếc Trưng, Các kết quả và dữ liệu được nêu
trong luận văn hoàn toàn trưng thực Đề hoàn thành bản luận văn mày, ngoài các tài liệu tham khảo đã được liệt kê, tôi xin chịu hoàn toàn trách nhiệm với những nội
dung được viết trong hiện văn
Hà nội, ngày 15 thang 09 năm 2014
Tlọc viên
Nguyễn Văn Chiến
Trang 5LỜI CẢM ƠN
Tôi xin gữi lời cảm ơn sâu sắc tới PQS.TS Hà Quốc Trung, người đã tận tình hướng dẫn để tôi có thể hoàn thành luận vẫn này
Tôi cũng xin gửi lời cảm ơn chân thành tới quỷ thầu cô viện Công nghệ thông
tin va truyền thông, viện Đảo tạo sau đại hoc dé truyền đạp những kiến thức quý bản trong khoá học này
Cuấi cùng, tôi xin gửi lời cảm ơn tới gia đình, bạn bè, cơ quan công (ác dễ giáp đỡ trong quá trình thực hiện biận vẫn này
Hà nội, ngày 15 tháng 09 năm 2014
Học viên
Nguyễn Văn Chiến
Trang 6DANH MUC THUAT NGU - VIET TAT
Teor-to-peor Mạng ngang hàng
Poor Đông đăng trong mạng ngang hàng,
Node Một thiết bị nội mạng (một peer)
Overlay Mạng được xây dựng trên các mạng khác
Distributed hash table Bang bm phan tan
on
Trang 7DANH MUC HiNH VE
Hinh 2.1 M6 hinh Client-Server
linh 2.2 Mô hình giao tiếp giữa Client và Server con vvvvvvvecvssrrrirre Hình 23 Kiến trie Client-Server hai ting
Tlinh 2.4, Kién trie Client-Server ba tang
Hinh 2.5 Kién trie Client-Server n tang
Hin 2.6, M6 Binh B2P a ecceesecseceneeseensterstneeee
Hinh 2.7 Mang ngàng hàng lại thế hệ thứ nhất
linh 2.8 Mạng ngang hang thuần tủy -
Tình 2.9 Kiến trúc siêu ngang hàng,
Hình 2.10 Cơ chẻ cũa bảng băm phân tán (DHT)
Hình 2.11 Mô hình mang Napster
Hinh 2.12 Mé hinh mang Gnutella
Tình 2.13 Mô hình mạng Kazaa
Hình 2.14 Mô hình clua sẻ bộ nhớ đệm
Hình 2.15 Mô hình Loeal Proxy
Hinh 3.1 Mô hình ứng dụng Messenger
Hình 3.2 Sơ đồ mô hình mạng theo vàng Chord
Hinh 3.3 Quy trình đăng ký người sử dụng mới
Tinh 3.4 Quy trình đăng nhập
Hình 3.5 Quy trình thêm bạn bè
Tỉnh 3.6 Quy trình gửi tin nhắn
Hình 3.7 Quy trình dọc tin nhắn
Trang 8DANH MUC BANG
Bang 3.1 M6 (4 chitc wing cia hé thong Messenger
Bang 3.2 Mé ta dit 8a ctia Local Proxy wissessssesesssssneenetonetintinineeneeneee Bary 3.3 Cúc bước đăng ký người sử dụng mới
Tăng 3.1 Các bước đăng nhập
ng 3.5 Các bước thêm bạn bẻ
Bang 3.6 Các buớc gửi tin nhắn
Bang 3.7 Các bước đọc Em nhắn
Trang 9CHƯƠNG 1 GIOI THIEU CHUNG Ngày nay, hau hết các ứng dung phân tân được xây dựng chủ yếu theo kiến tric Client-Server Kién tric Client-Server cò ưu điểm lả quả trình thiết kế giao thức rất đơn giãn, chỉ có 2 thành phân tham gia la Client va Server Tuy nhiên, việc chỉ có một Server phục vụ cho ChenL kéo theo các nhược điểm của mô hình này như: cỗ chai tại Server, quá tải về băng thông, tính mở rộng kém, Có rất nhiều cãi tiến của mô hình Client-Server như bộ nhớ đệm, phân tãi, sao lưu Tuy nhiền các cải tiễn này dễu có giới hạn về hiệu năng khi số lượng tải vượt quá một cậu trên ndo dé
Mô hình mạng ngang hảng (P2P) cho phép giải quyết vấn để nảy một cach triệt để bằng cách loại bố thành phần Server và cho phớp tất cả các thành phân khác tương tác với nhau một cách bình đẳng, Nhược diễm duy nhất của kiến trúc ngang, bàng là việc thiết kế ứng dụng trở nến phúc tạp, do cở sự tham gia của nhiều thành
phan vao giao thức Điêu này giải thích việc số lương cdc img đựng P2P phân tán là tương dối it öi Có thể nói ứng dụng chủ yếu của P2P là ứng dụng chia sẻ tệp phân tan, img dung peercast,
Một ý tưởng phát sinh tự nhiên là thiết kế các ứng dựng theo kiến trúc Client- 8erver và triển khai các ting dung theo kiến trúc ngang hàng để có thể tậu dụng điểm mạnh của cả 2 cách tiếp cân Đề có thể triển khai ứng dụng nay, cin có một
*humg làm việc (#ramework) cho phép có thẻ thực hiện biên đối trực tiếp từ một ứng,
đụng Chen-Server thành ứng dụng theo kiến trúc P2P mà không cần phải thay đổi piao thức tương táo giữa các thành phần
‘Trong luận văn này, một giải pháp chuyển dỗi br giao thie Client-Server sang P2P dựa theo mô hình Local Proxy được trình bày Giải pháp nảy được thử nghiệm cho địch vụ cúng cân thông In đạng vẫm hân theo yêu cầu
Luận văn “Kết hợp mô hình Client-Seruer và P2P: Mã hình Local Proxy
dp dung cho théng tin van bin và dạng địch vy theo pên cầu” được bỗ cục như
sa
Trang 10Chương 1 Giới thiệu chung
Trình bày lý da chọn đề tài, đổi tượng và phạm vì nghiên cứu
Chương 2 Ly thuyết tông quan
Trình bảy tổng quan về mô hình Chem-Sarver, mô hình peer lo peer, mô hinh Local Proxy; lam cơ sở ]ÿ thuyết cho giải pháp xây đựng ứng dụng ở
Chương 4 Kết luận và hướng phát triển
Tôm lược phương pháp tiếp cận theo mô hink Local Proxy, các kết quả dạt được, hướng phát triển của đề tài trong tương lai
Trang 11CHUONG 2 LY THUYET TONG QUAN
2.1, M6 hinh Client-Server
2.1.1 Khái niệm mô hình Client-Server
Mô hình được pho bien nhất va được chap nhận réng rãi trong các hệ thông
phân tán là mô hình Client-Server [1]
|
Hình 2.1 Mô hình Client-Server
Trong mô hình nảy, chương trình ứng dụng được chia thành 2 thành phân:
Quá trình chuyên cung cấp một số phục vụ nao đó, chẳng hạn: phục vu tap tin, phục vụ máy ín, phục vụ thư điện tử, phục vụ Web Các quá trình nảy được gọi
là các trình phục vụ hay Server
Một số quả trình khác có yêu cảu sử dụng các dịch vụ do các Server cung cấp được gọi là các quả trình khách hảng hay Client Việc giao tiếp giữa Client và
Server được thực hiện dưới hình thức trao đổi các thông điệp (Message) Để được
phục vụ, Client sẽ gởi một thông điệp yêu cầu (Request Message) mô tả về công
việc muôn Server thực hiện Khi nhân được thông điệp yêu câu, Server tiên hành
phân tích đẻ xác định công việc cần phải thực thị Nếu việc thực hiện yêu cầu nay
cỏ sinh ra kết quả trả vẻ, Server sẽ gởi nó cho Client trong một thông điệp trả lời
Trang 12(Reply Message) Dang thite (format) va ý nghĩa của các thông điệp trao đổi giữa
Client va Server duoc qui định rõ bởi giao thức (protocol) của ứng dụng
.====.=sei trình đang phong tỏa
Hình 2.2 Mô hình giao tiếp giữa Client và Server
2.1.2 Phân loại Client-Server
2.1.2.1 Client-Server hai ting (two-tier Client-Server)
Trong thực tế các kiến trúc Client-Server phô biến nhất lả hai tầng Một ứng dung hai tang cung cap nhiéu tram làm việc với một tâng trình diễn thông nhát, tầng,
nảy truyền tin với tầng lưu trữ dữ liêu tập trung Tầng trình diễn thông thường la
Client, và tẳng lưu trữ dữ liệu lả Server
š-SQ 0
Hinh 2.3, Kien tric Client-Server hai tang
11
Trang 13Hầu hết các ứng dụng Internet như là email, telnet, ftp tham chi la ca Web là các ứng dụng hai tầng Phân lớn các lập trình viên trình ứng dụng viết các ứng dụng
Client-Server cỏ xu thể sử dụng kiên trúc nảy
Trong ứng dụng hai tầng truyền thống, khối lượng công việc xử lý được dành
cho phia Client trong khi Server chi don giản đóng vai trò như là chương trình kiểm
soát luông vào ra giữa ứng dụng và dữ liệu Kết quả lả không chỉ hiệu năng của ứng
dụng bị giảm đi do tài nguyên hạn chế của PC, mà khôi lượng dữ liệu truyền đi trên mạng cũng tăng theo Khi toàn bộ ứng dụng được xử lý trên một PC, ứng dụng bắt
buộc phải yêu cầu nhiều dữ liệu trước khi đưa ra bắt kỷ kết quả xử lý nào cho người
ding Nhiều yêu cầu đữ liệu cũng làm giảm hiệu năng của mạng Một van dé
thường gặp khác đổi với ứng dụng hai tâng lả vẫn đề bảo tri Chỉ cản một thay đổi nhỏ đối với ứng dụng cũng cân phải thay đổi lại toàn bộ ứng dụng Client và Server
2.1.2.2 Client-Server ba ting (three-tier Client-Server)
Ta có thể tránh được các vẫn đẻ của kién tric Client-Server hai tang bang
cách mở rông kiến trúc thành ba tang Một kiến trúc ba tang có thêm một tầng mới tách biệt việc xử lý dữ liệu ở vị trí trung tâm
Theo kién trúc ba tâng, một ứng dụng được chia thành ba tầng tách biệt nhau
về mặt logic Tầng đầu tiên là tâng trình diễn thường bao gồm các giao diện đồ họa
‘Tang thứ hai, còn được gọi là tầng trung gian hay tầng tác nghiệp Tầng thử ba chứa
dữ liệu cân cho ứng dung Tầng thứ ba về cơ bản là chương trình thực hiện các lời
gọi hàm đề tìm kiểm đữ liệu cần thiết Tâng trình diễn nhận dữ liệu và định dang no
để hiển thị Sự tách biệt giữa chức năng xử lý với giao diện đã tạo nên sự linh hoạt cho việc thiết kể ứng dụng Nhiều giao diện người dùng được xây dựng và triển
khai mà không làm thay đổi logic ứng dụng
Hình 2.4 Kién tric Client-Server ba tang
12
Trang 142.1.2.3 Client-Server n ting (n-tier Client-Server)
Kiên trúc n-tâng được chia thành các tầng như sau:
- Tang giao dién người dùng: quản lý tương tác của người dùng với ửng dung
- Tang logic trinh diễn: Xác định cách thức hiển thị giao diện người dùng và các yêu cầu của người dùng được quản lý như thẻ nảo
- Tang logic tac nghiép: Mô hình hóa các quy tắc tác nghiệp
- Tang cae dich vu ha tang: Cung cap một chức năng bổ trợ cân thiết cho ứng
dụng như các thành phân (truyền thông điệp, hỗ trợ giao tác)
Hình 2.5 Kiến trúc Client-Server n tầng
Ưu điểm của mô hình n tầng (nhiều tầng) là:
- Tang khả năng linh động, việc thay đôi các tâng logic là độc lập với nhau
~ Tăng tinh bao mat
-_ Tăng hiệu năng khi các tác vụ được chia sẻ giữa các tang
Nhược điểm của mô hình nhiều tầng là:
~_ Tăng sự phức tạp trong triển khai và kiểm thử
~_ Tăng sự cần thiết của việc cân bằng tải vả chịu lỗi
2.1.3 Ưu nhược điểm của mô hình Client-Server
21.31 Ưu điễm
Quản lý tập trung: Dữ liêu được lưu trữ tập trung trên server thay vì nằm rải
rác trên nhiều máy, giúp đơn giản hỏa việc truy xuất và cập nhật dữ liệu
13
Trang 15Để bảo trì: Khở khả năng quản lý tập trung mả công việc bảo trì cũng trở nên nhẹ nhàng hơn ví phần lớn việc bảo trì chỉ cần thực hiện trên server lrong trường,
hợp hệ thông có nhiều server với thiết bị dự phòng, quá trình bảo trì (như sửa chữa,
thay thể server) có thẻ diễn ra hoàn toàn trong suốt với phia Client
Báo mật: Dữ liệu tập trung tiên server đồng nghữa với việo kiểm soái để càng;
hơn
21.32 Nhược điểm
Chi phi cho server lớn: Thông thưởng, các máy chủ trung tâm phối đủ mạnh để đuy trì và chia sẽ tải nguyên với các máy tính khác trên mạng Điền này đòi hỏi một chỉ phi dáng kể
Sự phụ thuộc: Mô bình mạng client-scrver phụ thuộc vào xứ lý bên server Nếu server gặp sự có, thì toản bộ mạng phái đừng hoạt động
Thắt cổ chai: Server phái xứ lý và trả lời yêu cầu cho CHent, riều củng một thời điểm có nhiều Chient yêu cân đến Server thi có thế gây ra tắc nghẽn mạng và lầm gián đoạn thời gian trả lời kết quả cho cáo client
Bae tri: Ma tinh Clenl Server càn một đội ngũ nhân viên quan tri mang dé quấn lý và duy trì các thiết bị mạng, do dó tầng chỉ phi duy trì vận hảnh hệ thống,
An toàn: Tắt cá cáo dữ liệu đều được lưu trữ trên server, nên về vẫn để an
trình các thông tín và đữ liệu được bảo vệ tập trưng từ các mới đe dọa tiểm tàng như tin tặc, sự cố
2.2 Mã hình P2P
2.2.1 Khải niệm P2P'
Mạng ngang hàng (Peer-lo-Pcr — P2P) bắt đầu xuất liện từ 1999 và đã thu Hút sự quan tâm của giới CNTT trong những nấm gần dây Mạng ngang hang con goi là mạng đồng đẳng, là một mạng máy tính trang đó hoạt động của mạng chủ yếu dựa váo khả răng tính toán bằng thông của cáo máy tham gia chứ không tập trung
Trang 16vào một số nhỏ các máy chủ trung tâm như các mạng thông thường Mạng ngang bàng có nhiều ủng dung Ung dung thường xuyên gặp nhất là chia sé tép tin, tit c& cáo dạng như âm thanh, hình ãnh, díữ liệu, Các thành phan tham gia trong mang vừa đóng vai trỏ cung, cắp tài nguyên và yêu cầu tài nguyễn Chúng được truy cap xnột các trực tiếp bởi các nút khác, không thông qua các nút trung gian
Tĩnh 2.6 Mô hinh P2P Cũng giểng như oác xu hướng đang trong quá trình phát triển khác, hiện
xay chưa có một định nghĩa chính xác về mạng P2P Dưới đây là một số định nghĩa
về P2P:
Theo Oram đã dịnh nghĩa về mạng ngang bàng như sau |13|
“Mạng ngang hàng là 1 lớp ửng dụng tận dụng ưu diễm của lưu trữ các tải
nguyên, các chu trinh, nội dung, gid tri hiện diện của cơn người ở phía rỉa của mạng
Tntemel Bởi vì việc truy cập tới các lải nguyên phi tập trung này giống như dang
hoạt động trong một môi trường kết nối không ổn định và các địa chí IP không thể đoán trước được, các nút mạng ngang hàng phải hoạt động bên ngoài hệ thông DNS
và có quyền tự trị đáng kế hoặc hoàn toàn độc lập với các máy chủ trung tâm”
Trang 17Theo định nghĩa này, mang ngang hàng là một hệ thống phân tán dặc biệt trong ting ứng dụng, ở đó mỗi cặp điểm nút có thể giao tiếp với nhau thông qua
giao thức định tuyên trọng các tâng mạng ngang hàng Mỗi điểm nút giữ 1 đối
tượng đữ liệu nảo đó có thể là nhạc, ánh, tài liệu, vv Mỗi diễm nút có thể truy vấn tới đối tượng nó cần từ các điểm nút khác thông qua kết nổi logic trong tang mang
ngang hang,
‘Theo Miller, P2P 14 mét kién trac trong đó các máy tính có vai trỏ và trách
nhiệm như nhau Mô hình này đối lập với mô hình Client-Server truyền thông,
trong đó một số máy tính được đảnh nêng để phục vụ các máy tỉnh khác P2P có
năm đặc điểm
- Việc truyền dữ liệu và thông thì giữa các pecr trong mạng để dàng
-_ Các peer vừa có thể hoạt động như CHent vừa có thể hoạt động như Server
~ Nội dung chính trong mạng được cưng cấp bởi các peer
-_ Mạng trao quyền điều khiển và tự trị cho cáo peer
- Mang hi tro cdc peer không kết nói thường xuyên và cdc peer không có địa chỉ TP cổ định
Theo P2P Working Group: P2P computing 1a su chia sé tai nguyén va dich
vụ bằng cách trao đổi trực tiếp giữa các hệ thông, Lải nguyên vả địch vụ ở đây bao gồm thông tin, chu kỳ xũ lý, không gian lưu trữ Peer-to-peer computing tận dung sức mạnh tỉnh toàn của các mảy tính cá nhần và kết nội mạng, cho phép doanh nghiệp tận dụng sức mạnh tổng, hợp của các Clicnt
Các dịnh nghĩa về P2P thống nhất ở một số khải niệm: chia sẽ tải nguyên,
tự trừ:phân tán, địa chỉ IP động, vai trò vừa là Client vừa là Server
2.2.2 Phân loại P2P
Ta có thẻ phân loại các mạng đồng đẳng hiện nay theo tiêu chi topo của
ý và mạng phủ Đây là tiêu chí được phát triển qua từng thời kỳ và
mang 6 tang vật k
được xem xét nghiền cứu để tìm ra những giải pháp tốt nhất, xây dựng nên tảng
vũng chắc cho cdc tmg dung sau này:
Trang 182.2.2.1 Hé thong ngang hang lai (Hybrid Peer-to-peer System)
Đây là mạng ngang hàng thẻ hệ thứ nhất, đặc điểm là vẫn còn dựa trên một
máy chủ tìm kiểm trung tâm - đặc điểm của mô hình khách chủ, chính vì vậy nó còn được gọi là mạng ngang hảng lai hay mạng tập trung (centralized Peer-to-Peer
networks) Cau trúc Overlay của mạng ngang hang lai co the được mô tả như một
mạng hình sao
Nguyên tắc hoạt động:
~_ Mỗi Client lưu trữ files định chia sẻ với các nút khác trong mạng
~_ Một bảng lưu trữ thông tin kết nổi của người ding ding ki (IP address,
connection bandwidth )
- Một bảng liệt kẻ danh sách các files mả mỗi người dùng định chia sẻ
(tên file, dung lượng, thời gian tạo file )
- Moi may tinh tham gia mạng được kết nổi với máy chủ tìm kiểm trung tâm,
các yêu câu tìm kiếm được gửi tới máy chủ trung tâm phân tích nẻu yêu cảu được giải quyết máy chủ sẽ gửi trả lại địa chỉ IP của máy chứa tải nguyên
trong mạng vả quá trình truyền file được thực hiện theo đúng cơ chế của
mạng ngang hảng, giữa các máy với nhau mả không cần quan may chủ trung
Trang 19- Can quan tri (central Server)
2.2.2.2 Mang ngang hang thuan tity (Pure Peer-to-peer System)
Mang ngang hang thuan tuy la một dạng khác của thẻ hệ thứ nhất trong hệ
thống các mạng ngang hàng Không con may chủ tìm kiểm tập trung như trong mạng Napster, nó khắc phục được vấn đề nút cỏ chai trong mô hinh tập trung Tuy
nhiên vẫn đề tìm kiểm trong mạng ngang hảng thuân túy lại sử dụng cơ chế
Flooding, yêu cầu tìm kiểm được gửi cho tất cả các nút mạng là láng giẻng với nó,
diéu nay làm tăng đảng kể lưu lượng trong mạng Đây là một yếu điểm của các
mạng ngang hàng thuần tủy Các phan mẻm tiêu biểu cho mạng ngang hang dang
nảy là Gnutella 0.4, FreeNet
Hình 2.8 Mạng ngang hàng thuần tủy
18
Trang 20Ưu điểm:
Dé xây dựng
- Dam bao tinh phan tán hoàn toàn cho các nút tham gia mạng, các nút tham
gia và rời khỏi mạng một cách tủy ý mả không ảnh hưởng đến cầu trúc của
mạng
Nhược điểm:
Tén bang thông
- Phite tạp trong tìm kiểm
~ Các nút có khả năng khác nhau (CPU power, bandwidth, storage) đều có thể
phải chịu tải (load) như nhau
3.2.2.3 Kiến trúc siêu ngang hang (Super-peer Architecture)
Hình 2.9 Kiến trúc siêu ngang hàng
Để khắc phục nhược điểm của mạng ngang hàng thuần túy, một mô hình
mang ngang hàng mới được phát triển với tên gọi là mạng siêu ngang hàng Đây
được gọi là mạng ngang hang the hệ 2 Phàn mẻm tiêu bieu cho mạng ngang hang kiểu này là Gnutella 0.6 va IXTA (Juxtapose) FXTA được bắt đầu phát triển bởi
19
Trang 21SUN từ 2001 (Đây là giao thức P2P mã nguồn mở), JXTA được sử dụng cho PCs, mainframes, cell phones, PDAs - dé giao tiếp theo cách không tập trưng Skype
cũng được xây đựng đựa trên cầu trúc này
Mỗi Supper-peer chứa một đanh sách các file được cung cấp bởi các CHent- peer và địa chỉ TP của chúng vì vậy nó có thẻ trả lời ngày lập Lức cáo yêu cầu truy vẫn từ các Client-pear gửi tới
Nhược điểm:
Mỗi điểm Super-peer trở thánh điểm gảy lỗi cho nhóm siểu ngang hàng,
tương ứng trong trường hợp số lượng Client trong nhóm là rất lớn (tuy nhiên,
nhược điểm nảy đã dược giải quyết bằng việc cải tiễn mạng siêu ngang hàng, thông thường, đưa ra khái niệm siêu ngang hảng dư cấp k)
2224 Mong ngang hang cd cn trie (Structured)
TIệ thống mạng ngang hàng không câu trúc thể hiện nhược điểm: không co gì đâm bão tìm kiểm sẽ thành công Đôi với tìm kiêm các đữ liêu phố biến được chia
sẽ trên nhiều máy, tỉ lệ thánh công là khá cao, ngược lại, nêu dữ liệu chỉ được chữa
20
Trang 22sẽ trên một vải máy thì xác suất tìm thấy là khá nhỏ Tỉnh chất này là hiển nhiên vì trong mạng ngang hàng không cầu trúc, không có bắt kỉ mỗi tương quan nảo giữa
một máy và dữ liệu nó quản lý trong mạng, do đó yêu cầu từn kiểm được chuyển
một cách ngấu nhiền đến một sé may trong mạng Số lượng máy trong mạng cảng, lớn thi khả năng tìm thấy thông tin càng nhỏ Một nhược điểm khác của hệ thông này là do không có định hướng, một yêu câu tìm kiếm thường được chuyến cho một
số lượng lớn máy trong mạng làm tiêu tôn một lượng lớn băng thông của mạng, dẫn
đến hiệu qua tim kiém chung ctia mang thắp
Mạng ngang hàng có cau trúc khắc phục nhược điểm của mạng khẳng câu
trúc bằng cách sử địng hé thong DHT (Distribuled Hash Table - Bang Bam Phân Tan) Hệ thống nảy định nghĩa liên kết giữa các mút mạng ong mạng phủ theo một thuật toán cụ thể, đồng thời xác định chặt chế mỗi nút mạng sẽ chịu trách nhiệm đối với một phần đữ liệu chia sé (rong mang Voi cau trúc này, khi một máy cần tìm một đữ liệu, nỏ chỉ cân áp dựng một giao thức chung, dễ xác định nút mạng nào chịu trách nhiệm cho đữ liệu đó và sau đỏ lên lạc trực tiếp đến mút mạng đỏ đề lẫy kết quê
Nguyên tắc haạt động:
- Topo mang duce kiem soal chặt chẽ
- Files (hoac con trổ trỏ tới files) được đột ở một vị trí xác dịnh
-_ Điểu quan trọng đổi với những hệ thêng có câu trúc là cung cap sự liên kết
(mapping) giữa nội dung (ví dụ tả của file) và vị tí nút (vì đực địa chỉ nó) Việc nảy thường dựa trên một cấu trúc di liệu bảng băm phân tan (Distributed Hash Table)
Dựa trên cầu trúc bảng băm phân tán đã có nhiều nghiền cứu và để xuất ra
các mỏ inh mang ngang hàng có cầu trúc, chiến hình là câu trúc đạng vòng như: Chord, Pastry , và câu trúc không gian đa chiều nhu: CAN, Viceroy
Trang 23Data Key Distributed
Hình 2.10 Cơ chế của bảng băm phan tan (DHT)
Ưu điểm:
- Kha ning mé réng duge nang cao rõ rệt do không có điểm tập trung gây ra
hiện tượng thất nút cỏ chai tại những điểm nảy
~_ Các truy vấn tìm kiểm được phát đi theo một thuật toán cụ thể, hạn chế tôi đa lượng truy vẫn hay kỹ thuật flooding, tiết kiệm băng thông mạng
Nhược điểm:
- Viée quan lí câu trúc của topo mạng gặp khỏ khăn, đặc biệt trong trong
trường hợp tỷ lệ vào/ra mạng của các nút cao
- Van dé can bang tai trong mang
- Su khac biét vé topology trén mang overlay va mang lién két vat ly dan đến thời gian trễ truy vẫn trung bình cao
2.2.3 Ưu nhược điểm của mô hình P2P
22.31 Ưu điềm
Tính chất phân tán của mạng ngang hàng đã tạo nên ưu điểm của mạng ngang hàng, đỏ là
~_ Người sử dụng có thể kiểm soát việc dùng chung tải nguyên (may in, chu
trinh xử lý, lưu trữ .), tan dung được tải nguyên của tật cả các máy tính trong mạng, có phân bồ lưu lượng hợp lý đề tránh tắc ngẽn
2
Trang 24Không phụ thuộc vào các máy tính khác trong hoạt động của mình Tính chất phân tản của mạng đồng đẳng cũng giúp cho mạng, hoạt động tốt khi một số
máy gặp sự cố Đối với cáu trúc tập trung, chỉ cần máy chủ gặp sự có thi cả
hệ thông sẽ ngưng trệ
Tăng cường khả năng cân bằng tãi trong mạng Trong mô hình mạng ngang hàng, chỉ có yêu cầu truy vẫn được thực hiện giữa máy tính tham gia mạng, với máy chú, còn vẫn để truyền file được thực hiện giữa hai máy tính tham
gia mạng với nhau, điển này đẫn đến việc phân bỏ tải đều trên hệ thẳng
trạng
Không phải dầu tư thêm vẻ phần cứng và phân mém may chủ
Không cần người quản trị mạng
223.2 Nhược điểm
liên cạnh những wa điểm đã trinh bảy trên, mạng ngang hảng còn tốn tại
những nhược điểm sau
Các nút tham gia với tỉnh phân tán, trách nhiệm vả vai trò là như nhau trong
mang, it tuân theo quy luật hay rang bude nao
May tram phai ganh thém viée phuc vu chia sé tai nguyên
May tram không có khả năng kiếm soa nhiéu lién két nlas mt may chi
Thiểu tính tập trung, rất khỏ tìm kiểm dữ liệu
Không có khả năng lưu trữ tập trung,
Mối người sử dụng én may tram phải có khả năng quản tị trên chính hệ thống của mình
Khả năng bảo mật kém, khó kiếm soát do đữ liệu la phân tán
Quận lý thiểu tập trưng, các mạng ngàng hàng rất khó làm việc với nhau
Mồ hình Local Proxy được phát triển đề tận dụng những ưu điểm của 2 mô hình trên
Trang 252.2.4 Một số ứng dụng P2P
Các ứng dụng p2p có thẻ chia vào bến nhóm:
Chia sẽ file (file sharing): lưu trữ và cha sẽ nội đụng là ứng dụng thành công
nhất của công nghệ Các ứng dụng chia sẻ file tập trưng vảo việc lưu trữ thông,
tin trên các peer khác nhau trên mạng và lây thông tin từ các peer đó Các ứng đụng thuộc nhóm này bao gồm Napster, Gnntclla, Freenet, Kazaa,
Tính toắn phân tản (distributed compufing): các ứng dụng thuộc nhóm này
sử dụng tải nguyên từ các máy tính được nổi mạng Ý tướng chính của các ứng dung tỉnh toán phân tán là các chủ kỹ xứ lý nhản rỗi trên bất kỳ máy tính nối rạng nao déu có thể được sử dụng cho việc giải quyết bải toàn trên các máy yêu cầu nhiều năng lực tỉnh toán SIZTI (Search for lix-traterrestrial Intelligence) là một dự
án nghiên cứu khoa học nhằm mục đích xây đựng một máy tính ão khẳng lỏ tr sức
mạnh của các máy tính nỗi mạng trong chủ kỳ nhàn rối của chúng,
Công tác (coaboration): cáo tìng dụng cộng lác 2p cho phép người sử đựng công tác với nhau ở mức ứng dụng Các ủng dụng này rất da dang, tir instant messaging, chat đến game enline hay các ứng dụng chia sé str dung trong thương, nại, giáo dục hay môi trường gia dink
Plutfonn (nẵn): các plam p3p cúng, cấp ra tầng hỗ trợ các ứng dụng sử dụng cơ chế p2p Các thành phần p2p được sử dụng bao gồm naming, discovery,
communication, security va resource aguregallon TXTA là một p2p plalform cìmg
cấp hạ tảng tính toán và lập trình mang
Có thể nói ứng dụng được sử dụng nhiều nhất của mạng ngang hàng đó là chia sé file Theo ước tinh khoáng 70% lưu lượng rnạng trên Internet được cho là để trao đối các file đặc biệt là các file âm nhạc (hơn 1 tỷ các Ble âm nhạc được
download mi tua) Dae điểm của vấn dễ chúa sẽ file là các Peer có các ñile được
download với vai trò là một Client lam cho chimg luôn sẵn sảng với các Peer khác
trong vai trô của một Server Vân đẻ chủ yếu cho mạng ngang hàng nói chung va chớ vấn dễ clua sẽ file nói rêng là vẫn dé tim kiếm Trong ngữ cảnh của hệ thông
24
Trang 26chia sé fille, có ba mô hình khác nhau được phát triển mồ hình flooded requcst, mô bình thư mục trung tâm và mô hình hướng tài liệu Các mô hình này được mình hoạ qua các ứng dụng thực của mạng ngang hang sau: Gnutella, Naspter và FreeNet
224.1 Naspter
Napster [14] duoc Shawn Fanning (19 tudi) viét ra vào năm 1999 Mô hình
Napster tap trung vào việc chia sẻ cáo ñle nhạc MP3 Khi ban cản tìm kiểm 1 bải
hát, bạn mở ứng đụng Napster, img dung đăng nhập vào server img tâm qua
internet Server lưu giữ chỉ mục của tất sã các người dùng khác, lưu trữ cẫu trúc thư
xmục chứa các lïÌs MP3 của người dùng Các thông tin nảy được tự động cập nhật lại
xnổi khi người dùng đăng nhập vào hệ thông Khi bạn gửi yêu cầu từm kiém, server
Napster chính là một ví dụ điễn hình của hệ thẳng chia sẽ file lai ghép sử
dung server chỉ mục Napater sử dụng rhhiểu server chỉ mục để tầng hiểu quả nhưng,
mối server chỉ quân lý những điểm nút của rnình và các server không “giao tiếp”
với nhau Chính vì vậy 2 người dùng thuộc 2 server khác nhau sé khong ké
được với nhau
Trang 27Hinh 2.11, Mé hinh mang Napster
Napster la mang ngang hàng không câu trúc đầu tiên thu hút được đông đảo
người sử dụng trên mang Day 1a su kết hợp của một mạng ngang hảng peer to peer
vả một số server trung tâm đẻ duy trí kết nói hệ thông vả danh sách dữ liệu được
chia sẻ trong mạng Ngoài việc là một mang peer to peer, Napster cũng gióng như một mạng với các server Chính các server nay lam cho việc tìm kiểm dữ liệu và
chia sẽ giữa các mảy tính trong mạng tốt hơn, tạo nên mô hình mạng peer to peer
đầu tiên được ưu chuộng với các địch vụ chia sẻ file dữ liệu, file nhạc trên mạng
Internet Napster gồm 2 thành phần, thử nhất là server trung tâm vả thứ hai lả các
ng dụng trên các máy tính kết nổi với nhau Một máy tỉnh tham gia vảo mang sẽ
kết nổi với server trung tâm và đưa danh sách file chia sẻ trong máy tính lên server
nảy Những máy tỉnh khi tìm kiếm dữ liệu sẽ tìm kiểm thông tin về từ khỏa trên server trung tâm để biết máy tính nào hiện đang giữ file chia sẻ đó Đề tìm kiếm
một file, một truy vẫn sẽ được gửi đi tới server trung tâm cùng với từ khóa tìm
kiểm Server trung tâm sẽ tìm trong danh sách các file chia sẻ được đưa lên bởi các
máy tỉnh và trả về địa chỉ IP của máy tỉnh lưu giữ file chia sẻ này Sau đó sẽ là kết