Tải bản đầy đủ (.pdf) (111 trang)

Nghiên cứu và đánh giá hiệu năng của giao thức chord trên mạng ngang hàng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.27 MB, 111 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-----------------------------------------------

VŨ CHIẾN THẮNG
ĐỀ TÀI:

NGHIÊN CỨU VÀ ĐÁNH GIÁ HIỆU NĂNG CỦA GIAO
THỨC CHORD TRÊN MẠNG NGANG HÀNG
LUẬN VĂN THẠC SỸ
NGÀNH: ĐIỆN TỬ-VIỄN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC:
NGUYỄN CHẤN HÙNG

HÀ NỘI – 2008


Trang 1

MỤC LỤC
Trang phụ bìa
Lời cam ñoan
Mục lục ........................................................................................................... 1
Danh mục các chữ viết tắt.............................................................................. 5
Danh mục các bảng ........................................................................................ 6
Danh mục các hình vẽ .................................................................................... 7
LỜI MỞ ðẦU ................................................................................................ 11
Chương 1: TỔNG QUAN VỀ MẠNG NGANG HÀNG............................... 13
1.1. Giới thiệu chung về các hệ thống mạng ................................................ 13
1.1.1. Khái niệm ………. ....................................................................... 13


1.1.2. Lịch sử hình thành và phát triển mạng máy tính ........................... 13
1.1.3. Phân loại các hệ thống mạng ........................................................ 16
1.2. Giới thiệu chung về mạng ngang hàng ................................................. 18
1.2.1. Khái niệm mạng ngang hàng ........................................................ 18
1.2.2. Lịch sử hình thành và phát triển mạng ngang hàng ....................... 19
1.2.3. ðặc ñiểm và các tiện ích của mạng ngang hàng............................ 20
1.2.4. Phân loại mạng ngang hàng .......................................................... 21
1.2.5. Các cơ chế tìm kiếm trong mạng ngang hàng ............................... 25
1.2.6. Một số ứng dụng trong mạng ngang hàng..................................... 27
1.2.7. Những ưu ñiểm và những thách thức ñối với mạng ngang hàng ... 28
1.3. Giới thiệu một số mạng ngang hàng ñã triển khai................................. 29
1.3.1. Mạng Naspter ............................................................................ 29
1.3.1.1. Giới thiệu......................................................................... 29
1.3.1.2. Mô hình mạng Napster .................................................... 30
1.3.1.3. Mô tả cách thức hoạt ñộng của mạng Napster.................. 31
1.3.2. Mạng Gnutella ............................................................................ 31
1.3.2.1. Giới thiệu......................................................................... 31
1.3.2.2. Mô hình mạng Gnutella ................................................... 31
1.3.2.3. Mô tả cách thức hoạt ñộng của mạng Gnutella ................ 32
1.3.3. Mạng eMule ............................................................................ 33
1.3.3.1. Giới thiệu......................................................................... 33

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 2

1.3.3.2. Mô hình mạng eMule ...................................................... 34
1.3.3.3. Mô tả cách thức hoạt ñộng của mạng eMule.................... 36
1.3.4. Mạng Torrent ............................................................................ 36

1.3.4.1. Giới thiệu......................................................................... 36
1.3.4.2. Mô hình mạng Torrent..................................................... 37
1.3.4.3. Mô tả cách thức hoạt ñộng của mạng Torrent .................. 37
1.3.5. Một số nhược ñiểm chung của các mạng nói trên ......................... 38
Chương 2: JXTA NỀN TẢNG ðỂ XÂY DỰNG CÁC ỨNG DỤNG
MẠNG NGANG HÀNG................................................................................. 40
2.1. Giới thiệu về JXTA…. ......................................................................... 40
2.2. Các khái niệm trong JXTA ................................................................... 41
2.3. Kiến trúc JXTA …... .......................................................................... 42
2.4. Các giao thức trong JXTA .................................................................... 44
2.5. Tổng quan mô hình mạng JXTA .......................................................... 45
2.6. Ưu nhược ñiểm của JXTA.................................................................... 46
2.7. Các phiên bản và tương lai của JXTA .................................................. 47
Chương 3: NGHIÊN CỨU GIAO THỨC CHORD TRÊN MẠNG
NGANG HÀNG…………….. ........................................................................ 49
3.1. Thế hệ mạng P2P dựa trên bảng băm phân tán .................................... 49
3.1.1. Bảng băm phân tán ...................................................................... 49
3.1.1.1. Hàm băm............................................................................ 49
3.1.1.2. Khái niệm bảng băm phân tán ............................................ 52
3.1.1.3. Mô hình bảng băm phân tán ............................................... 52
3.1.2. Ưu ñiểm của thế hệ mạng ngang hàng dựa trên bảng băm phân
tán .......................................................................................................... 53
3.2. Nghiên cứu về giao thức Chord trên mạng ngang hàng ........................ 55
3.2.1. Tổng quan về giao thức Chord...................................................... 55
3.2.2. Mô hình hệ thống ......................................................................... 55
3.2.3. Cấu trúc của vòng tròn Chord....................................................... 57
3.2.4. Consistent Hashing....................................................................... 60
3.2.4.1. Tạo ID của Node ................................................................ 60
3.2.4.2. Tạo ID của Key.................................................................. 61
3.2.4.3. Ánh xạ ID của Node và ID của Key ñến vòng tròn Chord.. 61


Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 3

3.2.5. Bảng ñịnh tuyến............................................................................ 62
3.2.6. Tiến trình tìm kiếm....................................................................... 64
3.2.6.1. Tiến trình tìm kiếm ñơn giản.............................................. 64
3.2.6.2. Tiến trình tìm kiếm dùng bảng ñịnh tuyến.......................... 65
3.2.6.3. Tiến trình tìm kiếm theo kiểu lặp ....................................... 68
3.2.6.4. Tiến trình tìm kiếm theo kiểu ñệ quy.................................. 68
3.2.7. Vấn ñề ổn ñịnh khi các Node gia nhập và rời khỏi mạng .............. 69
3.2.7.1. Node tham gia vào mạng.................................................... 71
3.2.7.2. Node rời khỏi mạng ........................................................... 74
3.2.8. Ảnh hưởng của Churn rate: Khi Node vào và rời khỏi mạng ........ 76
3.2.9. Một số giải pháp nâng cao hiệu năng của Chord khi Churn rate
cao.......................................................................................................... 76
3.2.9.1. Các ñiểm yếu của Chord trong ñiều kiện Churn rate rất cao76
3.2.9.2. Các giải pháp nâng cao hiệu năng của Chord ..................... 77
A. Caching Proxy ........................................................................... 77
B. Active maintenance .................................................................... 77
C. Replication ................................................................................. 78
Chương 4: ðÁNH GIÁ HIỆU NĂNG CỦA GIAO THỨC CHORD
TRÊN MẠNG NGANG HÀNG..................................................................... 79
4.1. Các phương pháp nghiên cứu và ñánh giá mạng ngang hàng................ 79
4.1.1. Phương pháp phân tích ................................................................ 79
4.1.2. Phương pháp thử nghiệm.............................................................. 80
4.1.3. Phương pháp mô phỏng ............................................................... 80
4.2. ðánh giá hiệu năng của giao thức Chord trên mạng ngang hàng bằng

phương pháp mô phỏng............................................................................... 81
4.2.1. Các tham số mô phỏng ñể ñánh giá hiệu năng của giao thức
Chord trên mạng ngang hàng ................................................................. 81
4.2.2. Giới thiệu phần mềm P2PSim ...................................................... 82
4.2.2.1. Cài ñặt phần mềm P2PSim................................................. 82
4.2.2.2. Mô phỏng với phần mềm P2PSim...................................... 83
4.2.3. Cài ñặt mô phỏng ......................................................................... 85
4.2.4. Kết quả mô phỏng và nhận xét ..................................................... 85

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 4

4.2.4.1. Kết quả mô phỏng Chord và nhận xét với tỷ lệ tìm kiếm
lỗi ................................................................................................... 85
A. Kết quả mô phỏng ảnh hưởng của Churn rate ñến tỷ lệ tìm kiếm
lỗi ................................................................................................... 85
B. Kết quả mô phỏng ảnh hưởng của số lượng Node ñến tỷ lệ tìm
kiếm lỗi........................................................................................... 88
C. Kết quả mô phỏng ảnh hưởng của RTT ñến tỷ lệ tìm kiếm lỗi ... 90
D. Kết quả mô phỏng các tham số của Chord ñối với tỷ lệ tìm
kiếm lỗi........................................................................................... 93
4.2.4.2. Kết quả mô phỏng Chord và nhận xét với tỷ lệ tìm kiếm
thành công ...................................................................................... 95
4.2.4.3. Kết quả mô phỏng Chord và nhận xét với trễ tìm kiếm
thành công trung bình ..................................................................... 97
A. Kết quả mô phỏng ảnh hưởng của Churn rate ñến trễ tìm kiếm
thành công trung bình ..................................................................... 97
B. Kết quả mô phỏng ảnh hưởng của số lượng Node ñến trễ tìm

kiếm thành công trung bình ............................................................ 98
C. Kết quả mô phỏng ảnh hưởng của RTT ñến trễ tìm kiếm thành
công trung bình............................................................................... 101
D. Kết quả mô phỏng các tham số của Chord ñối với trễ tìm kiếm
thành công trung bình ..................................................................... 103
4.3. Kết luận................................................................................................ 105
KẾT LUẬN VÀ KIẾN NGHỊ........................................................................ 107
TÀI LIỆU THAM KHẢO.............................................................................. 109

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 5

DANH MỤC CÁC CHỮ VIẾT TẮT
ARCNET

Attached Resource Computer Network

ASCII
DHT
DNS
FTP

American Standard Code for Information Interchange
Distributed Hash Table
Domain Name System
File Transfer Protocol

HTTP

IP
IRC

Hypertext Transfer Protocol
Internet Protocol
Internet Relay Chat

IM
ID
JXTA
J2ME

Instant Messenger
Identifier
Juxtapose
Java 2 Micro Edition

J2SE
MIT
PDA

Java 2 Standard Edition
Massachusetts Institute of Technology
Personal Digital Assistant

P2P
SHA
SETI
TCP


Peer to Peer
Secure Hash Algorithm
Search for Extra-Terrestrial Intelligence
Transmission Control Protocol

UDP
URL
XML

User Datagram Protocol
Uniform Resource Locator
Extensible Markup Language

WAN

Wide Area Network

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 6

DANH MỤC CÁC BẢNG
Bảng 3.1. Mô tả tóm tắt về các thuật toán SHA .........................................................51
Bảng 3.2. Sự khác nhau cơ bản giữa Chord và DNS ..................................................58
Bảng 3.3. Bảng ñịnh tuyến của N42...........................................................................67
Bảng 3.4. Bảng ñịnh tuyến trước khi N25 vào mạng..................................................74
Bảng 3.5. Bảng ñịnh tuyến sau khi N25 vào mạng.....................................................74
Bảng 4.1. Các phần mềm mô phỏng ..........................................................................81
Bảng 4.2. Các kịch bản mô phỏng .............................................................................85

Bảng 4.3. Các tham số của Chord ..............................................................................85

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 7

DANH MỤC CÁC HÌNH VẼ
Hình 1.1. Phân loại các hệ thống mạng ......................................................................16
Hình 1.2. Hệ thống mạng chủ - khách........................................................................17
Hình 1.3. Mô hình mạng ngang hàng.........................................................................18
Hình 1.4. Mạng ngang hàng thuần túy .......................................................................22
Hình 1.5. Mạng P2P lai ghép .....................................................................................23
Hình 1.6. Mạng P2P lai ghép với chỉ số hóa tập trung ...............................................23
Hình 1.7. Mạng P2P lai ghép với chỉ số hóa phân tán ................................................24
Hình 1.8. Mô hình mạng Napster...............................................................................30
Hình 1.9. Mô hình mạng Gnutella .............................................................................32
Hình 1.10. Quá trình query flooding trong mạng Gnutella .........................................33
Hình 1.11. Mô hình mạng eMule...............................................................................35
Hình 1.12. Mô hình mạng Torrent .............................................................................37
Hình 2.1. Mạng P2P ñược xây dựng trên JXTA.........................................................41
Hình 2.2. Mô hình kiến trúc JXTA ............................................................................43
Hình 2.3. Các giao thức trong JXTA..........................................................................44
Hình 2.4. Mô hình mạng JXTA .................................................................................45
Hình 3.1. Bảng băm phân tán.....................................................................................53
Hình 3.2. Vòng tròn Chord với các Node và Key.......................................................57
Hình 3.3. Sơ ñồ các nhận dạng trong Chord...............................................................60
Hình 3.4. Vòng tròn Chord ........................................................................................61
Hình 3.5. Bảng ñịnh tuyến trong Chord .....................................................................63
Hình 3.6. Tiến trình tìm kiếm ñơn giản......................................................................64

Hình 3.7. Tiến trình tìm kiếm dùng bảng ñịnh tuyến..................................................66
Hình 3.8. Tiến trình tìm kiếm theo kiểu lặp ...............................................................68
Hình 3.9. Tiến trình tìm kiếm theo kiểu ñệ quy..........................................................69
Hình 3.10. Trạng thái ban ñầu khi N26 chưa gia nhập vào mạng ...............................71
Hình 3.11. N26 gia nhập vào mạng............................................................................71
Hình 3.12. N26 liên kết với N32................................................................................72
Hình 3.13. N26 lấy Key và liên kết với N21 ..............................................................72
Hình 3.14. N25 xác ñịnh vị trí của nó ñể tham gia vào vòng tròn Chord ....................73
Hình 3.15. N40 rời khỏi mạng ...................................................................................75
Hình 4.1. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b), khoảng thời gian trung bình node vào/ra mạng là 10s..................................86

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 8

Hình 4.2. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b), khoảng thời gian trung bình node vào/ra mạng là 60s..................................86
Hình 4.3. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b), khoảng thời gian trung bình node vào/ra mạng là 120s................................87
Hình 4.4. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b), khoảng thời gian trung bình node vào/ra mạng là 300s................................87
Hình 4.5. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100nNode (hình a), 1000Node
(hình b), khoảng thời gian trung bình node vào/ra mạng là 600s................................87
Hình 4.6. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi tổng hợp với 100Node (hình a),
1000Node (hình b).....................................................................................................88
Hình 4.7. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node, khoảng thời gian trung
bình node vào/ra mạng là 300s (hình a), 600s (hình b)...............................................89
Hình 4.8. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 250Node, khoảng thời gian trung

bình node vào/ra mạng là 300s (hình a), 600s (hình b)...............................................89
Hình 4.9. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 500Node, khoảng thời gian trung
bình node vào/ra mạng là 300s (hình a), 600s (hình b)...............................................89
Hình 4.10. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 1000Node, khoảng thời gian
trung bình node vào/ra mạng là 300s (hình a), 600s (hình b)......................................90
Hình 4.11. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi tổng hợp với khoảng thời gian trung
bình node vào/ra mạng là 300s (hình a), 600s (hình b)...............................................90
Hình 4.12. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với RTT=0.5s, khoảng thời gian
trung bình node vào/ra mạng là 300s (hình a), 600s (hình b)......................................91
Hình 4.13. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với RTT=1s, khoảng thời gian
trung bình node vào/ra mạng là 300s (hình a), 600s (hình b)......................................91
Hình 4.14. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với RTT=2s, khoảng thời gian
trung bình node vào/ra mạng là 300s (hình a), 600s (hình b)......................................92
Hình 4.15. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với RTT=3s, khoảng thời gian
trung bình node vào/ra mạng là 300s (hình a), 600s (hình b)......................................92
Hình 4.16. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi tổng hợp với khoảng thời gian trung
bình node vào/ra mạng là 300s (hình a), 600s (hình b)...............................................92
Hình 4.17. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b) cho tham số basictimer ................................................................................93
Hình 4.18. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b) cho tham số pnstimer ..................................................................................94
Hình 4.19. Kết quả mô phỏng tỷ lệ tìm kiếm lỗi với 100Node (hình a), 1000Node
(hình b) cho tham số base .........................................................................................94
Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 9

Hình 4.20. Kết quả mô phỏng tỷ lệ tìm kiếm thành công với 100Node (hình a),
1000Node (hình b), khoảng thời gian trung bình node vào/ra mạng là 10s.................95

Hình 4.21. Kết quả mô phỏng tỷ lệ tìm kiếm thành công với 100Node (hình a),
1000Node (hình b), khoảng thời gian trung bình node vào/ra mạng là 60s.................95
Hình 4.22. Kết quả mô phỏng tỷ lệ tìm kiếm thành công với 100Node (hình a),
1000Node (hình b), khoảng thời gian trung bình node vào/ra mạng là 120s...............96
Hình 4.23. Kết quả mô phỏng tỷ lệ tìm kiếm thành công với 100Node (hình a),
1000Node (hình b), khoảng thời gian trung bình node vào/ra mạng là 300s...............96
Hình 4.24. Kết quả mô phỏng tỷ lệ tìm kiếm thành công với 100Node (hình a),
1000Node (hình b), khoảng thời gian trung bình node vào/ra mạng là 600s...............96
Hình 4.25. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node
(hình a), 1000Node (hình b),khoảng thời gian trung bình node vào/ra mạng là 300s..97
Hình 4.26. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node
(hình a), 1000Node (hình b),khoảng thời gian trung bình node vào/ra mạng là 600s..98
Hình 4.27. Kết quả mô phỏng trễ tìm kiếm thành công trung bình tổng hợp với
100Node (hình a), 1000Node (hình b) .......................................................................98
Hình 4.28. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........99
Hình 4.29. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 250Node,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........99
Hình 4.30. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 500Node,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........100
Hình 4.31. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 1000Node,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........100
Hình 4.32. Kết quả mô phỏng trễ tìm kiếm thành công trung bình tổng hợp với
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........101
Hình 4.33. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với RTT=0.5s,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........102
Hình 4.34. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với RTT=1s,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........102
Hình 4.35. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với RTT=2s,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........102

Hình 4.36. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với RTT=3s,
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........103
Hình 4.37. Kết quả mô phỏng trễ tìm kiếm thành công trung bình tổng hợp với
khoảng thời gian trung bình node vào/ra mạng là 300s (hình a), 600s (hình b) ..........103
Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 10

Hình 4.38. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node
(hình a), 1000Node (hình b) cho tham số basictimer .................................................104
Hình 4.39. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node
(hình a), 1000Node (hình b) cho tham số pnstimer ...................................................104
Hình 4.40. Kết quả mô phỏng trễ tìm kiếm thành công trung bình với 100Node
(hình a), 1000Node (hình b) cho tham số base ..........................................................105

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 11

LỜI MỞ ðẦU
Trong những năm gần ñây, thuật ngữ mạng ngang hàng (P2P) là một chủ ñề
“nóng” và thu hút ñược sự quan tâm, nghiên cứu của nhiều nhà khoa học trong và
ngoài nước hoạt ñộng trong lĩnh vực mạng và các hệ thống phân tán. Một trong
những nguyên nhân của nó là sự bùng nổ của chương trình chia sẻ tập tin nổi tiếng
Napster vào năm 2000.
Thực tế, khái niệm P2P không phải là mới, khi các kiến trúc Internet ñầu tiên
ñược xây dựng lên như mạng của các mạng thì các máy tính ñược kết nối theo kiểu
ngang hàng, tức là mỗi máy tính trong mạng ñều có vai trò, khả năng và trách

nhiệm như nhau hay người ta còn gọi mạng không máy chủ (non server). Cho ñến
nay, nhiều dịch vụ thông dụng như Skype, BitTorrent và các ứng dụng ở các lĩnh
vực ñiện toán lưới, Video Streaming... ñược phát triển và xây dựng dựa trên kiến
trúc mạng ngang hàng.
Bên cạnh ñó, tính hiệu quả của mạng P2P như khả năng tính toán, băng thông,
không có ñiểm nút gây lỗi toàn bộ hệ thống (single point of failure), chia sẻ tài
nguyên dữ liệu, tập tin video dung lượng lớn (500 MB, 1GB...) ñã thúc ñẩy không ít
các sáng kiến nhằm hình thành các dịch vụ phân phối P2P. Nhiều tập ñoàn lớn như
Microsoft, Sun Microsystems và các công ty khác ñã nghiên cứu và áp dụng P2P
vào các ứng dụng của họ trong thời gian tới.
Mặt khác, với sự phát triển mạng viễn thông thế hệ mới NGN (Next Generation
Network) thì việc cung cấp dịch vụ không chỉ giới hạn trong các nhà cung cấp dịch
vụ viễn thông mà còn ñược mở rộng cho các nhà cung cấp dịch vụ giá trị gia tăng.
ðây chính là cơ hội cho các nhà cung cấp dịch vụ gia tăng trên mạng viễn thông, họ
có thể sử dụng công nghệ P2P ñể ñưa ra mô hình có ñộ ổn ñịnh cao, hiệu quả kinh
tế, mềm dẻo và không ñòi hỏi cấu hình phần cứng cao. Vì vậy, P2P là một kiến trúc
có nhiều hứa hẹn trong thời gian tới, mở ra một hướng phát triển mới cho các dịch
vụ ña phương tiện.
Với sự chỉ bảo của Thầy giáo hướng dẫn TS. Nguyễn Chấn Hùng, tôi ñã chọn
ñề tài luận văn tốt nghiệp là: “Nghiên cứu và ñánh giá hiệu năng của giao thức
Chord trên mạng ngang hàng”.

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 12

Cấu trúc bài luận văn gồm 4 chương:
Chương 1: Tổng quan về mạng ngang hàng.
Chương 2: JXTA nền tảng ñể xây dựng các ứng dụng mạng ngang hàng.

Chương 3: Nghiên cứu giao thức Chord trên mạng ngang hàng.
Chương 4: ðánh giá hiệu năng của giao thức Chord trên mạng ngang hàng.
Phần cuối cùng là một số kết luận và hướng phát triển của ñề tài.
ðể hoàn thành bài luận văn này, tôi xin bày tỏ lòng biết ơn sâu sắc tới Thầy
giáo hướng dẫn TS. Nguyễn Chấn Hùng ñã chỉ bảo cho tôi nhiều kiến thức quý báu.
Tuy ñã có nhiều cố gắng nhưng bài luận này cũng không thể tránh khỏi những
thiếu sót. Tôi rất mong nhận ñược sự góp ý, chỉ bảo của các thầy cô giáo và các ý
kiến ñóng góp của bạn bè ñồng nghiệp ñể tôi hoàn thiện hơn vốn kiến thức của
mình.
Với tấm lòng trân trọng nhất, tôi chân thành cảm ơn những người ñã tạo ñiều
kiện, giúp ñỡ, chỉ bảo cho tôi hoàn thành tốt bài luận văn này!

Hà Nội, tháng 10 năm 2008

Vũ Chiến Thắng

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 13

Chương 1
TỔNG QUAN VỀ MẠNG NGANG HÀNG
Chương này sẽ tập trung giới thiệu tổng quan về mạng ngang hàng. Phần ñầu
của chương sẽ trình bày những vấn ñề chung nhất về mạng ngang hàng bao gồm
khái niệm về mạng ngang hàng, lịch sử hình thành và phát triển của mạng ngang
hàng, những ñặc ñiểm và các tiện tích nổi bật của mạng ngang hàng, phân loại
mạng ngang hàng, các cơ chế tìm kiếm trong mạng ngang hàng. Sau khi ñã giới
thiệu những vấn ñề chung nhất về mạng ngang hàng thì phần tiếp theo của chương
sẽ giới thiệu về một số mạng ngang hàng ñã triển khai như: Napster, Gnutella,

eMule…ñồng thời cũng ñưa ra một số nhận xét về các mạng nói trên.

1.1. Giới thiệu chung về các hệ thống mạng
1.1.1. Khái niệm
Hệ thống mạng (Network System), là một tập hợp các thiết bị ñược kết nối với
nhau thông qua các phương tiện truyền dẫn nhằm cho phép chia sẻ tài nguyên
chung như: Máy in, máy Fax, tệp tin, dữ liệu… Các thành phần của mạng có thể
bao gồm:
• Các hệ thống ñầu cuối (Terminal) kết nối với nhau tạo thành mạng, có thể là
các máy tính hoặc các thiết bị khác. Nói chung hiện nay ngày càng nhiều các
loại thiết bị có khả năng kết nối vào hệ thống mạng như ñiện thoại di ñộng,
PDA, Tivi,...


Môi trường truyền (media) mà các thao tác truyền thông ñược thực hiện qua
ñó. Môi trường truyền có thể là các loại dây dẫn (dây cáp), sóng ñiện từ (ñối
với các mạng không dây).

• Giao thức truyền thông (protocol) là các quy tắc quy ñịnh cách trao ñổi dữ
liệu giữa các thực thể.

1.1.2. Lịch sử hình thành và phát triển mạng máy tính
Máy tính ñã trải qua gần một thế kỷ phát triển, cùng với sự phát triển của công
nghệ làm cho các thế hệ máy tính ngày càng nhanh hơn. Con người ngày càng có
nhu cầu trao ñổi thông tin với nhau, do ñó tất yếu phải có sự liên hệ giữa các máy

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 14


tính, mạng máy tính ra ñời từ ñó. Vào giữa những năm 1970, các thiết bị ñầu cuối
trong một khu vực liên kết qua ñường cáp ñã ñược ra ñời từ ñó cho phép kết hợp
ñược khả năng tính toán của các máy tính lại với nhau. Ðể thực hiện việc nâng cao
khả năng tính toán với nhiều máy tính các nhà sản xuất bắt ñầu xây dựng các mạng
phức tạp. Vào những năm 1980 các hệ thống ñường truyền tốc ñộ cao ñã ñược thiết
lập ở Bắc Mỹ và Châu Âu và từ ñó cũng xuất hiện các nhà cung cấp các dịch vụ
truyền thông với những ñường truyền có tốc ñộ cao hơn nhiều lần so với ñường dây
ñiện thoại. Với những chi phí thuê bao chấp nhận ñược, người ta có thể sử dụng
ñược các ñường truyền này ñể liên kết máy tính lại với nhau và bắt ñầu hình thành
các mạng một cách rộng khắp. Ở ñây các nhà cung cấp dịch vụ ñã xây dựng những
ñường truyền dữ liệu liên kết giữa các thành phố và khu vực với nhau và sau ñó
cung cấp các dịch vụ truyền dữ liệu cho những người xây dựng mạng. Người xây
dựng mạng lúc này sẽ không cần xây dựng lại ñường truyền của mình mà chỉ cần sử
dụng một phần các năng lực truyền thông của các nhà cung cấp.
Vào năm 1974 công ty IBM ñã giới thiệu một loạt các thiết bị ñầu cuối ñược
chế tạo cho lĩnh vực ngân hàng và thương mại, thông qua các dây cáp mạng các
thiết bị ñầu cuối có thể truy cập cùng một lúc vào một máy tính dùng chung. Với
việc liên kết các máy tính nằm ở trong một khu vực nhỏ như một tòa nhà hay là một
khu nhà thì tiền chi phí cho các thiết bị và phần mềm là thấp. Từ ñó việc nghiên cứu
khả năng sử dụng chung môi trường truyền thông và các tài nguyên của các máy
tính nhanh chóng ñược ñầu tư.
Vào năm 1977, công ty Datapoint Corporation ñã bắt ñầu bán hệ ñiều hành
mạng của mình là "Attached Resource Computer Network" (hay gọi tắt là Arcnet)
ra thị trường. Mạng Arcnet cho phép liên kết các máy tính và các trạm ñầu cuối lại
bằng dây cáp mạng, qua ñó ñã trở thành là hệ ñiều hành mạng cục bộ ñầu tiên. Từ
ñó ñến nay ñã có rất nhiều công ty ñưa ra các sản phẩm của mình, ñặc biệt khi các
máy tính cá nhân ñược sử dụng một cánh rộng rãi. Khi số lượng máy vi tính trong
một văn phòng hay cơ quan ñược tăng lên nhanh chóng thì việc kết nối chúng trở
nên vô cùng cần thiết và sẽ mang lại nhiều hiệu quả cho người sử dụng.


Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 15

Ngày nay với một lượng lớn về thông tin, nhu cầu xử lý thông tin ngày càng
cao. Mạng máy tính hiện nay trở nên quá quen thuộc ñối với chúng ta, trong mọi
lĩnh vực như khoa học, quân sự, quốc phòng, thương mại, dịch vụ, giáo dục... Hiện
nay ở nhiều nơi mạng ñã trở thành một nhu cầu không thể thiếu ñược. Người ta thấy
ñược việc kết nối các máy tính thành mạng cho chúng ta những khả năng mới to lớn
như:
• Sử dụng chung tài nguyên: Những tài nguyên của mạng (như thiết bị,
chương trình, dữ liệu) khi ñược trở thành các tài nguyên chung thì mọi thành
viên của mạng ñều có thể tiếp cận ñược mà không quan tâm tới những tài
nguyên ñó ở ñâu.
• Tăng ñộ tin cậy của hệ thống: Người ta có thể dễ dàng bảo trì máy móc và
lưu trữ (backup) các dữ liệu chung và khi có trục trặc trong hệ thống thì
chúng có thể ñược khôi phục nhanh chóng. Trong trường hợp có trục trặc
trên một trạm làm việc thì người ta cũng có thể sử dụng những trạm khác
thay thế.
• Nâng cao chất lượng và hiệu quả khai thác thông tin: Khi thông tin có
thể ñược sử dụng chung thì nó mang lại cho người sử dụng khả năng tổ chức
lại các công việc với những thay ñổi về chất như: Ðáp ứng những nhu cầu
của hệ thống ứng dụng kinh doanh hiện ñại, cung cấp sự thống nhất giữa các
dữ liệu, tăng cường năng lực xử lý nhờ kết hợp các bộ phận phân tán, tăng
cường truy nhập tới các dịch vụ mạng khác nhau ñang ñược cung cấp trên
thế giới.
Với nhu cầu ñòi hỏi ngày càng cao của xã hội nên vấn ñề kỹ thuật trong mạng
là mối quan tâm hàng ñầu của các nhà tin học. Ví dụ như làm thế nào ñể truy xuất

thông tin một cách nhanh chóng và tối ưu nhất, trong khi việc xử lý thông tin trên
mạng quá nhiều ñôi khi có thể làm tắc nghẽn trên mạng và gây ra mất thông tin một
cách ñáng tiếc. Hiện nay việc làm sao có ñược một hệ thống mạng chạy thật tốt, thật
an toàn với lợi ích kinh tế cao ñang rất ñược quan tâm. Một vấn ñề ñặt ra có rất
nhiều giải pháp về công nghệ, một giải pháp có rất nhiều yếu tố cấu thành, trong
mỗi yếu tố có nhiều cách lựa chọn. Như vậy ñể ñưa ra một giải pháp hoàn chỉnh,
Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 16

phù hợp thì phải trải qua một quá trình chọn lọc dựa trên những ưu ñiểm của từng
yếu tố, từng chi tiết nhỏ.

1.1.3. Phân loại các hệ thống mạng
Tuỳ thuộc vào mục ñích sử dụng mà hệ thống mạng chia thành hệ thống tập
trung và hệ thống phân tán. Hình 1.1 cho ta một cái nhìn tổng quan về phân loại các
hệ thống mạng.

Hệ thống
mạng
Hệ thống
tập trung

Hệ thống
phân tán

Chủ - khách

Không thứ bậc


Có thứ bậc

Ngang hàng

Thuần túy

Lai

Hình 1.1. Phân loại các hệ thống mạng.
Hệ thống tập trung ñược triển khai tại một cơ quan, tổ chức khi các máy tính
ñược liên kết với nhau trong một không gian kín, không có sự liên kết với mạng bên
ngoài, một máy tính trong mạng xử lý toàn bộ các ứng dụng của mạng. Mô hình này
thích hợp với một cơ quan, tổ chức muốn thiết lập một mạng riêng của mình và
không muốn người ngoài liên hệ vào và có một máy tính cực mạnh.
Mô hình phân tán, ñây là mô hình phổ biến nhất hiện nay với sự phát triển ngày
càng mạnh của mạng toàn cầu Internet. Những bước xử lý của ứng dụng ñược phân
chia cho các Node tham gia. Với hệ thống này mọi máy tính khi tham gia vào mạng
thì có thể trao ñổi thông tin với nhau. Mọi thông tin, tài nguyên ñược phân tán khắp
nơi. Chính nhờ hệ thống này mà dẫn tới sự ra ñời của mô hình hệ thống mạng chủ -

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 17

khách (Client - Server) và hệ thống mạng ngang hàng (Peer-to-Peer) là hai hệ thống
ñang song song tồn tại hiện nay.
Trong hệ thống mạng chủ - khách có sự phân biệt giữa các máy tính trong
mạng, một số ít các máy gọi là máy chủ (Server), ñây là những máy có khả năng

tính toán rất mạnh, tốc ñộ xử lý nhanh. Tại những 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ủ. Hình 1.2 cho ta cái nhìn tổng quan về hệ thống hệ thống mạng chủ khách.

Hình 1.2. Hệ thống mạng chủ - khách.
Trong hệ thống chủ - khách có thể phân loại ra thành hệ thống không có thứ bậc
(flat) và hệ thống có thứ bậc (hierarchical). Việc phân loại này dựa trên cấu trúc của
hệ thống. Trong hệ thống không có thứ bậc, tất cả các máy khách chỉ truyền tin với
một máy phục vụ, còn trong hệ thống có thứ bậc thì các máy ñược phân theo thứ
bậc về vai trò trong mạng làm cải thiện tính chuyển ñổi của hệ thống.
Trong hệ thống phân tán ngoài hệ thống mạng chủ - khách còn tồn tại một hệ
thống gọi là hệ thống mạng ngang hàng (Peer to Peer).

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 18

1.2. Giới thiệu chung về mạng ngang hàng
1.2.1. Khái niệm mạng ngang hàng
Mạng ñồng ñẳng (Peer-to-Peer Network) còn gọi là mạng ngang hàng, là một
mạng máy tính trong ñó hoạt ñộng của mạng chủ yếu dựa vào khả năng tính toán và
băng thông của các máy tham gia chứ không tập trung vào một số nhỏ các máy chủ
trung tâm như các mạng thông thường. Ở dạng ñơn giản nhất mạng ngang hàng
ñược tạo ra bởi hai hay nhiều máy tính kết nối với nhau và chia sẻ tài nguyên mà

không phải thông qua một máy chủ giành riêng. Mạng ngang hàng dựa vào khả
năng và băng thông của các máy tính tham gia vào mạng hơn là tập trung vào một
số các máy tính gọi là Server. Nó ñược sử dụng cho kết nối các Node thông qua các
kết nối ñặc biệt và ñược dùng cho nhiều mục ñích như chia sẻ tài liệu, chia sẻ âm
nhạc, hình ảnh, dữ liệu, lưu lượng ñiện thoại….Hình 1.3 cho ta thấy mô hình của
mạng ngang hàng.

Hình 1.3. Mô hình mạng ngang hàng.
Một mạng ngang hàng thực sự không có khái niệm máy khách và máy phục vụ,
chỉ có các Node ñóng vai trò cả là Server và Client trong mạng. Mô hình này khác
với mô hình Client - Server truyền thống nơi truyền thông theo 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 ngang hàng là truyền tin

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 19

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à ñáp ứng các yêu cầu ñó.

1.2.2. Lịch sử hình thành và phát triển mạng ngang hàng
Peer to Peer là một dạng thức tương ñối mới trong phân khúc mạng. Nó mới trở
thành chủ ñề nóng từ khoảng năm 2000 trở lại ñây. Các mục tiêu khác nhau ñược
ñặt ra ñã thúc ñẩy sự ra ñời của các thế hệ mạng Peer to Peer. Trong lịch sử ngắn
ngủi ñó, mạng Peer to Peer ñã trải qua ba thế hệ.
Thế hệ thứ nhất:
• Thế hệ ñầu tiên của mạng Peer to Peer ñược khởi ñầu bằng sự xuất hiện của
ứng dụng chia sẻ file Napster. ðóng góp chính của Napster là ñã giới thiệu
một kiến trúc mạng mà ở ñó không có sự phân biệt giữa Client và Server. Hệ

thống Napster bao gồm hai dịch vụ ñó là dịch vụ lưu trữ và dịch vụ thư mục.
Việc lưu trữ ñược phân quyền và thực hiện theo dạng Peer to Peer trong khi
ñó dịch vụ thư mục ñược thực hiện tập trung. Một người tham gia trong
mạng Napster có hai ñặc ñiểm chính: Có ñịa chỉ IP ñộng và tự do ñăng nhập
hay ñăng xuất mạng ở bất kì thời gian nào.
• ðánh giá: Hệ thống mạng Napster ñã cho thấy nhiều vấn ñề ñã dẫn tới sự suy
tàn của một xu thế chủ ñạo của hệ thống Peer to Peer. Vấn ñề ở ñây là sự
xung ñột về việc ñược sao chép dữ liệu ñược chia sẻ bất hợp pháp giữa
những người tham gia trong hệ thống. Ngoài ra, mô hình này rất dễ bị lỗi và
sụp ñổ khi máy chủ trung tâm bị lỗi hoặc bị tấn công, kích thước cơ sở dữ
liệu và khả năng ñáp ứng yêu cầu của nó là có giới hạn.
Thế hệ thứ hai:
• Sự khó khăn ở thế hệ thứ nhất ñã dẫn tới sự ra ñời của hệ thống mạng Peer to
Peer mới. Ở ñó, quan trọng là sự loại bỏ trung tâm ñiều hành. Thế hệ thứ hai
bắt ñầu với các ứng dụng như Gnutella và Freenet. Người mới tham gia phải
ñăng kí thành viên và sau ñó sử dụng giải thuật ngập lụt (flooding) ñể các
thành viên khác biết tới. Cũng như vậy, một thành viên thực hiện giải thuật
flooding bằng cách gửi câu hỏi truy vấn ñến tất cả các Node lân cận của
mình.

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 20

• ðánh giá: Thế hệ thứ hai ñã giải quyết vấn ñề của trung tâm ñiều hành. Tuy
nhiên nảy sinh vấn ñề là lưu lượng mạng tăng cao. Hơn nữa không có sự bảo
ñảm cho việc tìm kiếm dữ liệu hay một tài nguyên. Sự tối ưu của giải thuật
flooding ñược thể hiện bởi khái niệm supper Peer. Khái niệm này ñược sử
dụng trong mạng Kazaa và mạng Gnutella thế hệ sau. Sự tối ưu này cho phép

một vài Node hoạt ñộng như dịch vụ thư mục, qua ñó làm giảm số lượng
ngập lụt cần thiết cho dữ liệu cục bộ.
Thế hệ thứ ba:
• ðược bắt ñầu với các dự án nghiên cứu như Chord, CAN, Patry, P-grid và
Tapestry. Các dự án này ñều ñược biết ñến với cái tên là “Bảng băm phân
tán”(Distributed Hash Table). Một Node trong các hệ thống như thế này
ñược nhận dạng dựa trên việc băm mã một vài thuộc tính ñặc trưng của nó
như ñịa chỉ IP của nó. Hàm băm ñược sử dụng ở ñây là hàm băm duy nhất
tức là chỉ có một nhận dạng duy nhất cho một khối dữ liệu trong suốt quá
trình băm. Node ñược kết nối với các Node khác trong một topo ñịnh sẵn.
Bài luận văn này sẽ tập trung nghiên cứu thế hệ mạng ngang hàng thứ ba với
giao thức Chord.

1.2.3. ðặc ñiểm và các tiện ích của mạng ngang hàng
ðặc ñiểm của mạng ngang hàng
• Một mạng ngang hàng thường có rất nhiều người dùng tham gia. Nội dung
chính của mạng do các Peer cung cấp.
• Các Peer tham gia vào mạng là bình ñẳng như nhau. Các Peer giữ cả hai
chức năng, vừa là Client vừa là Server.
• Các Peer tự quản lý ñiều khiển trong mạng. Mạng giúp ñiều chỉnh các Peer,
bởi vì các Peer không phải lúc nào cũng kết nối và không có ñịa chỉ IP cố
ñịnh.
• Các Peer liên hệ với nhau thông qua các chương trình phần mềm.
• Việc tham gia vào mạng ngang hàng là hoàn toàn tự nguyện.

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 21


• Dữ liệu ñược chia sẻ trên mạng thường rất phong phú, như các file nhạc,
ebook, video clip, …
• Tốc ñộ chia sẻ nhanh hay chậm còn tùy thuộc vào nhiều yếu tố, như tốc ñộ
ñường truyền, nhà cung cấp dịch vụ.
Các tiện ích của mạng ngang hàng
• Giúp cho người dùng dễ dàng tìm ñược dữ liệu cần thiết.
• Tận dụng ñược tiện ích tổng hợp: Nơi lưu trữ, thông tin và chi phí tính toán
ñược phân phối giữa các Peer, làm các máy tính tham gia vào mạng sẽ dễ
dàng có ñược thông tin yêu cầu.
• Tăng ñộ tin cậy vì không có ñiểm nút gây lỗi toàn bộ hệ thống.
• Chứa ñựng rất nhiều thông tin: Trong mạng P2P có rất nhiều các máy tính
tham gia vào, bản thân mỗi máy tính ñã chứa nhiều thông tin.

1.2.4. Phân loại mạng ngang hàng
1.2.4.1. Phân loại theo kiến trúc mạng
Dựa trên tiêu chí về mức ñộ tập trung người ta chia mạng ngang hàng ra làm hai
loại kiến trúc chính:
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 ngang hàng. Trong
mạng ngang hàng thuần túy 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. Hình 1.4 là kiến trúc mạng P2P thuần túy.

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 22


Hình 1.4. Mạng ngang hàng thuần túy.
Ưu ñiểm của mạng ngang hàng thuần tú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 túy có thể kể như: Gnutella, Freenet...
Mạng P2P lai ghép:
Có một máy chủ trung tâm dùng ñể lưu trữ thông tin của các máy khách và trả
lời các truy vấn thông tin của chúng. Các máy khách có vai trò lưu trữ thông tin, tài
nguyên ñược chia sẻ, cung cấp các thông tin chia sẻ tài nguyên của nó cho máy chủ.
Trong mạng sử dụng các trạm ñịnh tuyến ñể xác ñịnh ñịa chỉ IP của các máy khách.
Sự tương tác cuối cùng (tức sự trao ñổi dữ liệu) là giữa các máy khách với nhau.
Hình 1.5 là kiến trúc mạng P2P lai ghép.

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 23

Hình 1.5. Mạng P2P lai ghép.
Có hai kiểu mạng lai ghép: Mạng lai ghép với chỉ số hoá tập trung và mạng lai
ghép với chỉ số hoá phân tán.
• Mạng lai ghép chỉ số hoá tập trung: Có một máy chủ trung tâm bảo trì các
chỉ số của dữ liệu hoặc tài liệu hiện tại ñang ñược chia sẻ bởi các máy khách
ñang tồn tại trên mạng, mỗi máy khách giữ gìn một kết nối tới máy chủ trung
tâm ñể gửi các yêu cầu. Kiến trúc này ñược sử dụng trong mạng Napster. Hệ
thống như vậy tuy ñơn giản nhưng hoạt ñộng rất hiệu quả và vận hành nhanh
khi tìm kiếm thông tin, sự tìm kiếm là toàn diện và nó cung cấp kết quả ñảm

bảo. Tuy vậy, mô hình này rất dễ bị lỗi và sụp ñổ khi máy chủ trung tâm bị
lỗi hoặc bị tấn công, kích thước cơ sở dữ liệu và khả năng ñáp ứng yêu cầu
của nó là có giới hạn. Hình 1.6 là kiến trúc mạng P2P lai với chỉ số hóa tập
trung.

Hình 1.6. Mạng P2P lai với chỉ số hoá tập trung.
Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


Trang 24

• Mạng lai ghép với chỉ số hoá phân tán: Một máy chủ trung tâm ñăng ký
ñược sử dụng cho cả hệ thống và tạo ñiều kiện việc khám phá các Node. Có
một vài Node ñược giả thiết là quan trọng hơn các Node còn lại và ñược gọi
là siêu Node (super Node). Những Node này bảo trì các chỉ số cho thông tin
chia sẻ bởi các Node mà kết nối với nó và ñược uỷ quyền yêu cầu tìm kiếm
thay mặt cho các Node. Những yêu cầu ñược gửi tới các siêu Node sau ñó
siêu Node hỏi các Node kết nối ñến nó.

Hình 1.7. Mạng P2P lai với chỉ số hoá phân tán.

1.2.4.2. Phân loại theo cấu trúc mạng
Mạng ñồng ñẳng bao gồm tất cả các Node mạng ñại diện cho các máy tham gia
và các liên kết giữa các Node mạng này. Một liên kết tồn tại giữa hai Node mạng
khi một Node mạng biết vị trí của Node mạng kia. Dựa vào cấu trúc liên kết giữa
các Node mạng trong mạng P2P ta có thể phân loại mạng ñồng ñẳng thành 2 loại:
Mạng P2P có cấu trúc và mạng P2P không có cấu trúc.
Mạng ñồng ñẳng không có cấu trúc:
Khi các liên kết giữa các Node mạng trong mạng ñược thiết lập ngẫu nhiên (tức
là không theo qui luật nào). Những mạng như thế này dễ dàng ñược xây dựng vì

một máy mới khi muốn tham gia mạng có thể lấy các liên kết có sẵn của một máy
khác ñang ở trong mạng và sau ñó dần dần tự bản thân nó sẽ thêm vào các liên kết
mới của riêng mình. Khi một máy muốn tìm một dữ liệu trong mạng ñồng ñẳng

Nghiên cứu và ñánh giá hiệu năng của giao thức Chord trên mạng ngang hàng


×