Nghiên cứu giao thức chord trong mạng peer – to – peer - Pdf 37

NỘI DUNG CỦA ĐỒ ÁN
Đồ án “Nghiên cứu giao thức Chord trong mạng Peer – to – Peer” với
những nội dung chính như sau:
Tìm hiểu về mạng Peer – to – Peer (P2P) nhằm đưa ra cái nhìn tổng quan
về nó với các lĩnh vực như: lịch sử phát triển, các lĩnh vực ứng dụng, các cơ chế
tìm kiếm trong mạng P2P... Bên cạnh đó giới thiệu về DHT (Distributed Hash
Tables – Bảng băm phân tán) được sử dụng ở thế hệ thứ 3 của mạng P2P.
Nghiên cứu giao thức Chord trong mạng P2P nhằm mục đích hiểu được
thuật toán và cách thức hoạt động của giao thức Chord và mô phỏng giao thức
Chord.


MỤC LỤC
LỜI NÓI ĐẦU ...............................................................................................- 1 CHƯƠNG 1: TỔNG QUAN VỀ MẠNG PEER – TO - PEER ......................- 2 1.1 Giới thiệu chung ...................................................................................- 2 1.2 Phân loại các hệ thống mạng .................................................................- 4 1.3 Lịch sử của mạng P2P...........................................................................- 7 1.4 Phân loại mạng P2P theo kiến trúc mạng.............................................- 13 1.4.1 Mạng P2P thuần túy .....................................................................- 13 1.4.2 Mạng P2P lai ghép........................................................................- 14 1.5 Các cơ chế tìm kiếm trong hệ thống mạng P2P ...................................- 16 1.5.1 Tìm kiếm với chỉ số hoá tập trung và kho chứa.............................- 17 1.5.2 Flooding broadcast of queries ( Làm ngập lụt các câu hỏi )...........- 17 1.5.3 Routing Model (Mô hình định tuyến) ...........................................- 17 1.6 Mạng P2P có cấu trúc và không có cấu trúc ........................................- 18 1.6.1 Mạng P2P không cấu trúc.............................................................- 18 1.6.2 Mạng P2P có cấu trúc...................................................................- 19 1.7 Các lĩnh vực ứng dụng P2P .................................................................- 20 1.7.1 Communication ............................................................................- 20 1.7.2 Chia sẻ File...................................................................................- 21 1.7.3 Băng thông (Bandwidth)...............................................................- 23 1.7.4 Không gian lưu trữ (Storage Space)..............................................- 25 1.7.4 Các chu trình xử lý (Processor Cycles) .........................................- 25 1.8 Các vấn đề đối với mạng P2P..............................................................- 26 CHƯƠNG 2: TỔNG QUAN VỀ DHT .........................................................- 28 2.1 Giới thiệu về DHT ..............................................................................- 28 2.1.1 Đặc tính của DHT.........................................................................- 28 2.1.2 Cấu trúc của DHT.........................................................................- 30 2.2 Cơ sở bảng DHT. ................................................................................- 32 2.2.1 Quản lý dữ liệu phân tán...............................................................- 32 2.2.2 Định địa chỉ trong DHT................................................................- 32 -


2.2.3 Định tuyến....................................................................................- 34 2.2.4 Lưu trữ dữ liệu..............................................................................- 35 2.3 Cơ chế quản lý ....................................................................................- 36 2.3.1 Nút tham gia vào mạng.................................................................- 36 2.3.2 Nút lỗi ..........................................................................................- 36 2.3.3 Nút rời khỏi mạng.........................................................................- 37 CHƯƠNG 3: GIAO THỨC CHORD ...........................................................- 38 3.1 Giới thiệu về Chord.............................................................................- 38 3.2 Thuật toán của giao thức Chord...........................................................- 38 3.3 Bảng định tuyến trong Chord. .............................................................- 39 3.4 Hoạt động của giao thức Chord. ..........................................................- 40 3.4.1 Sự định tuyến trong Chord............................................................- 40 3.4.2 Node tham gia, rời khỏi Chord......................................................- 42 3.4.3 Ổn định mạng và các node lỗi.......................................................- 48 CHƯƠNG 4. MÔ PHỎNG GIAO THỨC CHORD ......................................- 54 4.1 Hướng dẫn cài đặt P2Psim ..................................................................- 54 4.2 Hướng dẫn cài đặt OverSim ................................................................- 55 4.3 Một số hình ảnh mô phỏng giao thức Chord sử dụng P2PSim. ............- 56 4.4 Một số hình ảnh mô phỏng giao thức Chord sử dụng OverSim............- 61 KẾT LUẬN..................................................................................................- 65 TÀI LIỆU THAM KHẢO ............................................................................- 66 -


LỜI NÓI ĐẦU
Ngày nay, khoa học và kỹ thuật đã đạt được những thành tựu to lớn. Nhờ
sự phát triển của kỹ thuật số, kỹ thuật phần cứng và công nghệ phần mềm đã và
đang đem lại cho người sử dụng các dịch vụ mới đa dạng và phong phú hơn, nhất
là trong lĩnh vực truyền thông mà tiêu biểu là mạng máy tính.
Hệ thống mạng máy tính với những ưu điểm như tăng tốc độ tìm kiếm và
download dữ liệu, dễ dàng trong việc giao lưu trao đổi thông tin giữa người và
người, nối liền khoảng cách…đã và đang có nhiều ứng dụng trong tất cả các lĩnh
vực, nhất là trong thông tin liên lạc. Trên thế giới đã có nhiều sản phẩm nổi tiếng
về phần mềm phục vụ cho công việc này và đã mang lại nhiều lợi ích.Ở Việt
Nam dù vẫn còn nhiều hạn chế về cơ sở hạ tầng và nguồn lực song không thể
nằm ngoài xu thế phát triển chung của thế giới. Thời gian gần đây, phát triển một

Qua các thập niên 1950, 1970, 1980 và 1990, Bộ Quốc phòng Hoa Kỳ đã
phát triển các mạng diện rộng WAN tin cậy nhằm mục đích quân sự và khoa học.
Công nghệ này khác truyền tin điểm nối điểm. Nó cho phép nhiều máy tính kết
nối lại với nhau bằng các đường dẫn khác nhau. Bản thân mạng sẽ xác định dữ
liệu di chuyển từ máy tính này đến máy tính khác như thế nào. Thay vì chỉ có thể
thông tin với một máy tính tại một thời điểm, nó có thể thông tin với nhiều máy
tính cùng lúc bằng cùng một kết nối. WAN của Bộ Quốc phòng Hoa Kỳ về sau
trở thành Internet.
Về cơ bản, một mạng máy tính là một số các máy tính được nối kết với
nhau theo một cách nào đó. Khác với các trạm truyền hình chỉ gửi thông tin đi,
các mạng máy tính luôn hai chiều, sao cho khi máy tính A gửi thông tin tới máy
tính B thì B có thể trả lời lại cho A. Nói một cách khác, một số máy tính được kết
nối với nhau và có thể trao đổi thông tin cho nhau gọi là mạng máy tính. Từ

-2-


nhiều máy tính riêng rẽ, độc lập với nhau, nếu ta kết nối chúng lại thành mạng
máy tính thì chúng có thêm những ưu điểm sau:
 Nhiều người có thể dùng chung một phần mềm tiện ích.
 Một nhóm người cùng thực hiện một đề án nếu nối mạng họ sẽ dùng chung
dữ liệu của đề án, dùng chung tệp tin chính (master file) của đề án, họ trao đổi
thông tin với nhau dễ dàng.
 Dữ liệu được quản lý tập trung nên an toàn hơn, trao đổi giữa những người sử
dụng thuận lợi hơn, nhanh chóng hơn.
 Có thể dùng chung thiết bị ngoại vi hiếm, đắt tiền (máy in, máy vẽ,...).
 Người sử dụng trao đổi với nhau thư tín dễ dàng (E-Mail) và có thể sử dụng
hệ mạng như là một công cụ để phổ biến tin tức, thông báo về một chính sách
mới, về nội dung buổi họp, về các thông tin kinh tế khác như giá cả thị trường,
tin rao vặt ( muốn bán hoặc muốn mua một cái gì đó), hoặc sắp xếp thời khoá

năng hoạt động và cung cấp các dịch vụ không gây tắc nghẽn. Qua mạng người
ta có thể tận dụng khả năng của hệ thống, chuyên môn hoá các máy tính, và do
đó phục vụ đa dạng hoá hơn. Việc dùng chung cơ sở dữ liệu và các thiết bị trong
hệ thống giúp cho tiết kiệm rất nhiều dung lượng và thời gian.

1.2 Phân loại các hệ thống mạng
Mạng máy tính ra đời với rất nhiều máy tính kết nối với nhau, một yêu
cầu cấp thiết đặt ra là phải tổ chức chúng thành những hệ thống có kết cấu, đảm
bảo các quy tắc trật tự trong truyền thông dữ liệu và quản lý hệ thống. Ban đầu
khi mạng máy tính mới ra đời, tốc độ máy còn thấp, số lượng máy tham gia trong
mạng chưa cao, nhu cầu trao đổi thông tin mới chỉ dừng lại ở những tập tin có
kích thước nhỏ nên việc quản lý mạng còn rất đơn giản, kết cấu của mạng chỉ
gồm một vài máy .Các máy trong mạng được nối trực tiếp với nhau thông qua
cổng com hay cổng máy in LPT….Đó là mô hình mạng P2P sơ khai nhưng đó lại
là cơ sở để phát triển mạng P2P sau này trên một hệ thống máy tính rộng lớn.
Sự phát triển vượt bậc của công nghệ làm cho các máy tính ngày càng
nhanh hơn, lượng tài nguyên lưu trữ là rất lớn và nhu cầu trao đổi của con người
ngày càng tăng lên. Lúc này các máy tính được kết nối khắp toàn cầu đòi hỏi
phải có sự ra đời của phương thức quản lý mới với những giao thức, giao diện

-4-


mới.

Các



hình


-5-


máy này có lưu trữ tài nguyên mạng và các dịch vụ, nó đóng vai trò là người
phục vụ cho các yêu cầu của máy tính khác trong mạng về tài nguyên và dịch vụ.
Phần lớn các máy còn lại gọi là máy khách (client), nó không cung cấp tài
nguyên mà chỉ đưa ra các yêu cầu và sử dụng tài nguyên trên mạng. Trong hệ
thống chủ -khách các máy khách khi vào hệ thống được nối với máy chủ, nhận
quyền truy nhập và tài nguyên mạng từ máy chủ. Các máy khách được sắp xếp tổ
chức theo một quy luật nhất định và đặt dưới sự quản lý của máy chủ. Mô hình
hệ thống chủ khách được mô tả ở Hình 10.2
Hệ thống mạng

Hệ thống tập
trung

Hệ thống phân
tán
Điểm- Điểm

Chủ-khách
Không thứ bậc

Có thứ bậc

Hoàn toàn

Hình 1.1:Hệ thống mạng


cách thông thường từ một server. Một kiểu truyền tin khác với mô hình mạng

-7-


P2P là truyền tin FTP nơi server và client là hoàn toàn riêng biệt. Client đưa ra
các yêu cầu đưa lên và tải xuống, còn server tiếp nhận và làm thoả mãn các yêu
cầu đó.
Một số mạng hay kênh như Napster, IRC (thuộc thế hệ thứ nhất) sử dụng
mô hình máy chủ- máy khách cho một số nhiệm vụ và mô hình ngang hàng cho
các nhiệm vụ khác. Ngược lại, các mạng như Gnutella hay Freenet (thế hệ thứ
hai) sử dụng mô hình ngang hàng cho tất cả các nhiệm vụ, do đó các mạng này
thường được xem là các mạng P2P đúng nghĩa (thực ra trong mạng Gnutella vẫn
sử dụng một số máy chủ để giúp các máy trong mạng tìm kiếm địa chỉ IP của
nhau). Trong những năm qua thuật ngữ mạng P2P P2P (P2P) đã trở nên đồng
nghĩa với Napster, chương trình chia xẻ tệp nổi tiếng được chuyên gia lập trình
20 tuổi là Shawn Fanning viết ra và giờ đây là đề tài cho nhiều cuộc kiện tụng.
Napster, cũng giống như Gnutella, cho phép người dùng truyền các file âm nhạc
cho nhau, vi phạm các điều luật bản quyền và tạo ra một mạng thư viện âm nhạc
rộng lớn rải rác trên Internet. Napster là một ứng dụng thông minh trên một kiến
trúc không phải là mới từ những ngày đầu của Internet. Giờ đây, nhiều hãng mới
thành lập đang hy vọng triển khai công nghệ đó cho các công ty, hứa hẹn sử dụng
kiến trúc tính toán P2P cho phép các nhân viên phát huy tính sáng tạo của họ và
giải quyết các vấn đề truyền tin.
Trong khi Napster sẵn sàng đấu tranh để chuyển lên thành một doanh
nghiệp mẫu mực, thì các công ty khác như Groove Networks, NextPage và
Xdegrees đang cố gắng sử dụng P2P cho các ứng dụng làm việc nhóm, trao đổi
thông tin và chia sẻ các tài nguyên mạng như không gian lưu trữ, và các thiết bị
đắt tiền. Các hãng khác như Entropia và United Devices đang phát triển những
ứng dụng siêu tính toán sử dụng các sức mạnh còn thừa của những máy tính nối

thống P2P. Nó sử dụng một máy server trung tâm để kết nối các máy tính với
nhau tránh những rắc rối của các chương trình ngang hàng khác, như Gnutella,
một chương trình chia xẻ file được dùng nhiều giữa các cộng đồng công nghệ
cao.
Khái niệm P2P như người ta hiểu bao gồm bốn hoạt động khác nhau: sự
hợp tác giữa những người sử dụng, sự tương tác giữa những ứng dụng phần
mềm, việc sử dụng hiệu quả các tài nguyên mạng và các siêu tính toán. Nổi bật
nhất là các hệ thống hợp tác đang được phát triển bởi các công ty mới như
Groove Networks, Endeavors Technology. Các hệ thống này kết hợp khả nǎng

-9-


chia sẻ tài nguyên với khả nǎng truyền tin tức thời của ICQ, tất cả trong một môi
trường an toàn. Sự hấp dẫn chính là ở sự khuyến khích chia xẻ file và truyền
thông giữa các nhóm làm việc. Với Groove, ví dụ, người sử dụng có thể kết nối
với các đồng sự trong các môi trường ảo để cùng hợp tác trong công việc, giải
quyết các vấn đề phức tạp và thậm chí lập kế hoạch chia xẻ tài liệu và cùng lướt
trên Internet. Cũng như các hệ thống khác, hệ thống của Groove cung cấp tin cho
mỗi người sử dụng khi có đồng sự đang ở trên mạng, nhận ra họ và cho phép một
người sử dụng kết nối tới họ từ bất cứ nơi đâu. Quan trọng hơn cả đối với giới
doanh nghiệp là dịch vụ tạo ra một không gian an toàn cho người dùng cho dù họ
ở trên Internet hay trong Intranet sau tường lửa. Không cần phải có các kỹ sư của
công ty; không cần phải thiết lập hình thức tổ chức trung tâm; và không phải lo
đến những vị khách lạ truy nhập vào mạng công ty.
Một số công ty khác nhấn mạnh việc xây dựng hạ tầng P2P, trên cơ sở đó
các nhà phát triển có thể xây dựng các ứng dụng khác. Một trong các cách làm
này là sử dụng sức mạnh của giao thức XML, cho phép các nhà phát triển không
những chỉ định rõ cách bố trí của các trang web mà còn có thể hiện các nội dung.
Mặc dù mọi sự chú ý đều tập trung vào vấn đề cộng tác, các hệ thống P2P

ảnh nhỏ riêng biệt để tạo hình ảnh động cho những máy PC khác nhau thực hiện
đồng thời và sau đó kết hợp những hình đã được xử lý đó thành một chuỗi các
hình liên tục. Khi có hàng ngàn, hay hàng triệu máy tính được nối lại với nhau thì
có thể liên kết tính toán siêu xử lý song song với tốc độ nhiều triệu phép tính /
giây, với giá thành nhỏ hơn nhiều so với các siêu máy tính như máy đánh cờ
Deep Blue hay Blue Gene của IBM. Các ứng dụng siêu xử lý này có thể bán các
dịch vụ kiểu này cho các công ty thiết kế công nghệ, nghiên cứu y dược và tính
toán mô hình tài chính kinh tế. Liệu rằng các công ty đã sẵn sàng tin vào những
người dùng máy tính dấu tên trên khắp thế giới truy nhập dữ liệu quý giá của họ
không cho dù vô tình hay cố ý ?. Do vậy hầu hết các hãng P2P đang thiết kế các
ứng dụng cho các hãng đủ lớn để có thể thực hiện các xử lý phân tán trong nội bộ
công ty.
Mặc dù một số lượng lớn các công ty nhỏ đã thất bại nhưng những sản
phẩm của các công ty lớn như Microsoft , Sun Microsystems và nhiều công ty
khác đã bắt đầu áp dụng P2P. Những hãng khổng lồ này đang nghiên cứu để ứng
dụng công nghệ P2P trong các sản phẩm của họ. Intel là công ty lớn đầu tiên
dùng P2P và đang đầu tư để phát triển tiếp và đồng thời giúp đỡ các nhóm làm

- 11 -


việc về P2P nhằm đưa ra các chuẩn công nghệ ban đầu. Trong khi đó Microsoft
đã tuyên bố công khai vào tháng 8 dự án Hailstorm của họ, đó là ".Net" và đã
đưa ra một số nét nổi bật của các dịch vụ P2P. Không chịu đứng ngoài cuộc Sun
Microsystems đã đưa ra một loạt chuẩn cho một nền P2P mã nguồn mở gọi là
JXTA. Sun gần đây cũng đã bắt đầu đầu tư cho công nghệ này và mua
Infrasearch với giá 10 triệu đô la. Thập kỷ trước đã chứng kiến những thay đổi
lớn về cung cách làm việc. Biên giới của các công ty đã trở lên rộng lớn hơn và
mối quan hệ giữa khách hàng và nhà cung cấp đã trở lên gần gũi hơn đồng thời
sự tin tưởng của công ty vào những người lao động tạm thời và các chuyên gia

dụng tin cậy như thực tế đòi hỏi, không ít công sức và thời gian sẽ phải bỏ ra.

1.4 Phân loại mạng P2P theo kiến trúc mạng
Sự phân quyền là một trong những khái niệm chính của hệ thống mạng
P2P. Điều này bao gồm phân phối tài nguyên lưu trữ, sự xử lý, thông tin chia sẻ
cũng như thông tin điều khiển. Dựa trên cơ sở mức độ phân quyền và cách thức
trao đổi, thu nhận tài nguyên của các máy tính trong mạng P2P người ta chia
mạng P2P ra làm hai loại kiến trúc chính:

1.4.1 Mạng P2P thuần túy
Đây là mô hình thể hiện chính xác nhất bản chất của mạng P2P. Trong
mạng P2P hoàn toàn không có máy chủ trung tâm quản lý mạng, mọi máy tính
trong mạng có vai trò vừa là máy chủ vừa là máy khách. Trong mạng không có
các máy định tuyến hay trung tâm định tuyến, các máy trong mạng tự định tuyến
trong liên lạc của mình. Trong hệ thống như vậy tất cả các máy là cân bằng về
chức năng , các máy là các node và được gọi là “servant”

- 13 -


Hình 1.4: Mạng P2P thuần túy
Ưu điểm của loại mạng này là khả năng mở rộng mạng nhanh, khả năng
chịu lỗi của hệ thống lớn, các máy trong mạng có tính tự chủ cao. Khi trong
mạng có một vài node lỗi thì không gây ra lỗi toàn mạng và dễ dàng được bù
đắp. Các node có vai trò lớn hơn đối với dữ liệu và tài nguyên của nó.
Nhược điểm chính của mạng là tốc độ phát hiện thông tin chậm, không
đảm bảo chất lượng dịch vụ, khó đoán biết hành vi của hệ thống.
Các mạng đồng đẳng thuần tuý có thể kể như: Gnutella, Freenet,
Kademlia...


- 15 -


Hình 1.6: Mạng lai với chỉ số hoá tập trung

Hình 10.7:Mạng lại với chỉ số hoá phân tán
Ưu thế của mạng P2P: Một mục đích quan trọng của mạng P2P là trong
mạng tất cả các máy tham gia đều đóng góp tài nguyên, bao gồm băng thông, lưu
trữ, và khả năng tính toán. Do đó khi càng có nhiều máy tham gia mạng thì khả
năng tổng thể của hệ thống mạng càng lớn. Ngược lại, trong cấu trúc máy chủmáy khách, nếu số lượng máy chủ là cố định, thì khi số lượng máy khách tăng
lên khả năng chuyển dữ liệu cho mỗi máy khách sẽ giảm xuống. Tính chất phân
tán của mạng P2P 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ố thì cả hệ thống sẽ ngưng
trệ. Đối với mạng Napster, thuật ngữ ngang hàng nói lên tính chất quan trọng của

- 16 -


giao thức giao tiếp ngang hàng, còn thực ra thành công của Napster phải nhờ vào
sự liên kết chặt chẽ giữa các máy tham gia với máy chủ trung tâm lưu trữ danh
sách nội dung tệp trên các máy tham gia. Nhờ vậy việc tìm kiếm trở nên nhanh
và hiệu quả hơn, tuy nhiên, đây cũng chính là điểm yếu dẫn đến các rắc rối pháp
lý mà kết cục là sự sụp đổ của Napster.

1.5 Các cơ chế tìm kiếm trong hệ thống mạng P2P
Những hệ thống phân tán mạng P2P thường yêu cầu một cơ chế tìm kiếm
để định vị dữ liệu đặc biệt bên trong hệ thống. Cơ chế tìm kiếm trong mạng P2P
được phát triển từ thế hệ thứ nhất với cấu trúc tập trung tới thế hệ thứ hai với cơ
chế ngập lụt và thế hệ thứ ba dựa vào bảng băm phân tán.


điểm để làm giảm tiêu thụ băng thông của mạng ví dụ như mạng Kazza.

1.5.3 Routing Model (Mô hình định tuyến)
Đây là mô hình tiên tiến nhất và được sử dụng trong mạng P2P hoàn toàn.
Mô hình định tuyến thêm cấu trúc vào thông tin về những tài nguyên được lưu
trữ sử dụng bảng băm phân tán. Giao thức này cung cấp một ánh xạ giữa số nhận
dạng của tài nguyên (ID) và vị trí lưu trữ. Trong cấu trúc của bảng định tuyến
phân phối một truy vấn có thể được định tuyến hiệu quả tới node có tài nguyên
mong muốn. Giao thức này làm giảm bớt số bước mà node trong mạng cần thiết
để định vị tài nguyên tìm kiếm. Công tác tìm kiếm được thực hiện bằng cách tổ
chức các điểm node trên mạng phủ có cấu trúc và định tuyến thông báo thông
qua mạng tới điểm node chịu trách nhiệm. Mỗi node đựoc gắn một giá trị ID và
nó biết một vài các node khác. Khi một node muốn chia sẻ tài liệu, tên và nội
dung của tài liệu đó được băm tạo ra một ID gắn với tài liệu đó. Tài liệu được
định tuyến tới node có ID gần với ID của tài liệu nhất. Khi một node muốn lấy
một tài liệu nào đó nó gửi yêu cầu chứa ID của tài liệu. Yêu cầu được chuyển tới
node có ID gần với ID của tài liệu nhất, sau đó tài liệu được chuyển tới node yêu
cầu. Các mạng P2P thế hệ mới đều sử dụng phương pháp tìm kiếm này như:
Freenet, Chord, Kademlia…..Mô hình này được chứng minh là có hiệu quả với
mạng có số thành viên lớn. Tuy vậy nó vẫn tồn tại các nhược điểm đó là khó cài
đặt tính năng tìm kiếm do phải biết trước ID của file trước khi gửi yêu cầu. Băm
tên file hoặc nội dung khác nhau tạo ra ID khác dẫn đến không tìm thấy file. Các
node khi chia vào các nhóm khác nhau không có sự liên hệ dẫn đến vấn đề
“islanding”(bị cô lập).

- 18 -


1.6 Mạng P2P có cấu trúc và không có cấu trúc
Mạng đồng đẳng bao gồm tất cả các nút mạng đại diện cho các máy tham


1.6.2 Mạng P2P có cấu trúc
Mạng đồng đẳng có cấu 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ử dụng hệ thống DHT (Bảng Băm Phân Tán: Distributed Hash
Table). Hệ thống này định nghĩa liên kết giữa các nút mạng trong mạng P2P 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 dữ liệu chia sẻ trong mạng. Với cấu trúc này, khi một
máy cần tìm một dữ liệu, nó chỉ cần áp dụng một giao thức chung để xác định
nút mạng nào chịu trách nhiệm cho dữ liệu đó và sau đó liên lạc trực tiếp đến nút
mạng đó để lấy kết quả. Một số mạng đồng đẳng có cấu trúc nổi tiếng bao gồm
Chord, CAN, Kademlia, Pastry và Tapestry

1.7 Các lĩnh vực ứng dụng P2P
Sự ra đời của mạng P2P đã tạo ra cách thức quản lý mới cho hàng loạt các
lĩnh vực ứng dụng. Sau đây là một số lĩnh vực ứng dụng của mạng P2P như:
Giao tiếp (communication), chia sẻ file (file sharing), băng thông (bandwidth),
không gian lưu trữ (storage space), các chu trình xử lý (processor cycles).

1.7.1 Communication
Sự có mặt của thông tin đóng vai trò quan trọng trong ứng dụng P2P. Nó
được quyết định trong tự tổ chức mạng P2P vì nó cung cấp thông tin ngang hàng
và những nguồn lực có sẵn trong hệ thống mạng. Nó cho phép các Peer thành lập
liên hệ trực tiếp với Peer khác và các yêu cầu về tài nguyên. Một ví dụ phân phối
rộng rãi về một ứng dụng P2P mà cơ bản sử dụng sự hiện diện thông tin là hệ
thống nhắn tin trực tiếp (instant messaging).
Instant messaging:
- Thông thường, server trung tâm lưu trữ thông tin và danh sách người dùng
đăng ký.
- Khi có sự giao tiếp giữa các node, việc tìm kiếm người dùng (node khác)
được thực hiện trên server.

file. Theo ước tính khoảng 70% lưu lượng mạ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 file âm nhạc được download
mỗi tuần).
Đặc điểm của vấn đề chia sẻ file là các Peer có các file được download với
vai trò là một Client làm cho chúng 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 P2P nói chung và cho vấn đề chia sẻ file nói
riêng là vấn đề tìm kiếm. Trong hệ thống chia sẻ file, có ba mô hình khác nhau
được phát triển: mô hình flooded request, mô hì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 minh hoạ qua các ứng dụng thực của mạng
P2P sau: Gnutella, Naspter và FreeNet.
Mạng Gnutella là mô hình mạng P2P hoàn toàn trong chia sẻ tài nguyên, ở
đó các máy kết nối vào mạng bằng cách kết nối với những máy đã tồn tại trong
mạng. Hình thức này hình thành ứng dụng trên mạng vật lý. Tất cả các node
trong mạng có thể quản lý tài nguyên và khôi phục tài nguyên từ node khác. Để
tạo điều kiện cho việc chia sẻ tại liệu một thông báo được gửi giữa các node.
Truy vấn về tài liệu cần tìm được phát quảng bá toàn mạng và được lặp lại định
tuyến ngược chở lại node đầu tiên đã đưa ra yêu cầu trong mạng. Thông báo tìm
kiếm sẽ đựoc sử dụng để tìm kiếm các node. Error! Reference source not
found. là mô hình mạng Gnutella.

- 22 -



Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status