Là một ngôn ngữ đánh d u được thiết kế ra để tạo nên các trang web với các mẩu thông tin được trình bày trên World Wide Web Log Ghi t t cả thao tác thực hiện thành log Upload Chia sẻ fil
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP TỐT NGHIỆP
Nội dung:
NGHIÊN CỨU VỀ CẤU TRÚC MẠNG NGANG HÀNG VÀ
CÂN BẰNG TẢI TRÊN MẠNG CÓ CẤU TRÚC
Nơi thực tập : Viện CNTT&TT- CDIT
Sinh viên thực tập: Đỗ Yến Hoa
Mã sinh viên : B112104 257 Lớp : D11HTTT3 Khóa : 2011 – 2016
Hệ đào tạo : Chính quy
Hà Nội, 08/2015
Trang 2MỤC LỤC
LỜI CẢM ƠN 4
PHẦN A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - CDIT 5
I Chức năng 5
II Tổ chức 5
III Các lĩnh vực hoạt động 6
PHẦN B : NỘI DUNG THỰC TẬP 7
I Giới thiệu chung 7
II Nội dung báo cáo thực tập 9
DANH MỤC THUẬT NGỮ 9
DANH MỤC HÌNH VẼ 10
1 TỔNG QUAN MẠNG NGANG HÀNG 11
1.1 Đặt vấn đề: 11
1.2 Khái niệm Peer to Peer 12
1.3 Lịch sử của mô hình Peer to Peer 13
1.4 Các lĩnh vực ứng dụng của mạng ngang hàng 15
1.5 Cấu trúc mạng 20
1.5.1 Mạng không có cấu trúc 20
1.5.2 Mạng có cấu trúc 20
1.6 Mức độ phân tán 21
1.7 Mạng ngang hàng có cấu trúc và kĩ thuật bảng băm phân tán 23
1.8 Mạng chord 28
1.8.1 Mô hình mạng Chord 29
1.8.2 Ánh xạ khóa vào một node trong Chord 30
1.8.3 Tìm kiếm trong mạng Chord 31
1.8.4 Tham gia và ổn định mạng 31
2 CÂN BẰNG TẢI TRONG MẠNG NGANG HÀNG CÓ CẤU TRÚC 33
2.1 Cân bằng tải 33
2.2 Khả năng tải của node 35
2.3 Nguyên nhân mất cân bằng tải trên mạng 36
2.4 Giải pháp cân bằng tải sử dụng virtual node 38
TÀI LIỆU THAM KHẢO 43
Trang 3III Phần tổng kết 44
1 Các vấn đề báo cáo đã đạt được 44
2 Các vấn đề báo cáo chưa đạt được 44
3 Hạn chế tồn tại 44
4 Hướng nghiên cứu tiếp theo 44
5 Nguyện vọng 44
Trang 4LỜI CẢM ƠN
Em xin chân thành cảm ơn thầy giáo – Th.s Đỗ Mạnh Hùng đã giảng dạy tận tình và cho em nhiều lời khuyên không chỉ về kiến thức học tập mà còn cả phương pháp nghiên cứu để em có thể hoàn thành báo cáo thực tập tốt nghiệp
Em xin được gửi lời cảm ơn đến các thầy cô giáo trong Khoa Công Nghệ Thông Tin của trường Học Viện Công Nghệ Bưu Chính Viễn Thông, cùng gia đình, bạn bè đóng góp ý kiến và giúp đỡ em trong quá trình thực tập tốt nghiệp Trong suốt quá trình nghiên cứu và làm báo cáo thực tập, bản thân em đã cố gắng tập trung tìm hiểu, nghiên cứu và tham khảo thêm nhiều tài liệu liên quan Tuy nhiên, báo cáo không thể tránh khỏi những thiếu sót, vì vậy em r t mong nhận được sự chỉ bảo của thầy cô giáo và góp ý của bạn bè để được hoàn thiện hơn
Em xin chân thành cảm ơn!
Hà Nội, Ngày 06 Tháng 08 Năm 2015
Sinh viên
Đỗ Yến Hoa
Trang 5PHẦN A : GIỚI THIỆU ĐƠN VỊ THỰC TẬP VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG - CDIT
I Chức năng
Trung tâm Công nghệ Thông tin CDIT được Tổng giám đốc Tổng Công ty Bưu chính Viễn thông Việt Nam ký quyết định thành lập số 636/QĐ.TCCB-LĐ ngày
22 tháng 3 năm 1999 Cùng với sự phát triển của ngành Công nghệ thông tin trong
xu hướng hội nhập với Truyền thông, theo định hướng phát triển của Học viện trong giai đoạn mới, ngày 07 tháng 12 năm 2011 Tập đoàn Bưu chính Viễn thông Việt Nam đã có quyết định số 1973/QĐ-VNPT-TCCB, đổi tên Trung tâm Công nghệ thông tin thành Viện công nghệ Thông tin và Truyền thông CDIT từ 01/01/2012
Viện công nghệ Thông tin và Truyền thông CDIT là tổ chức đào tạo, nghiên cứu trực thuộc Học viện Công nghệ Bưu chính Viễn thông, có nhiệm vụ: đào tạo, nghiên cứu khoa học và chuyển giao công nghệ trong lĩnh vực Công nghệ thông tin và Truyền thông
II Tổ chức
Trang 6Mô hình tổ chức bao gồm:
- Ban Lãnh đạo Viện và Khoa Đa phương tiện
- Phòng Tổng hợp
- Phòng Nghiên cứu phát triển & Đào tạo Ứng dụng Đa phương tiện
- Phòng Nghiên cứu phát triển & Đào tạo An toàn thông tin
- Phòng Nghiên cứu phát triển Ứng dụng ICT (Phòng Viễn thông)
- Phòng Nghiên cứu phát triển Hạ tầng ICT (Phòng Mạng & Hệ thống)
- Phòng Dịch vụ & Chuyển giao công nghệ
III Các lĩnh vực hoạt động
Viện công nghệ thông tin và truyền thông CDIT hoạt động trên lĩnh vực công nghệ thông tin, cụ thể là là nghiên cứu, ứng dụng các thành tựu khoa học công nghệ vào các sản phẩm, dịch vụ và chương trình đào tạo nhằm góp phần thúc đẩy
sự phát triển của đ t nước
Trang 7PHẦN B : NỘI DUNG THỰC TẬP
I Giới thiệu chung
- Tên chủ đề thực tập: Ngiên cứu về c u trúc mạng ngang hàng và cân bằng tải
trên mạng có c u trúc
- Mục tiêu: Nghiên cứu về mô hình mạng ngang hàng P2P, tìm hiểu về các công
nghệ sử dụng mạng ngang hàng trên internet hiện nay, tìm hiểu về cân bằng tải,
vì sao sảy ra hiện tượng m t cân bằng tải và giải pháp cân bằng tải các node mạng trên mạng ngang hàng có c u trúc
- Kết quả cần đạt: Hoàn thành nghiên cứu và nộp báo cáo đúng hạn theo những
nội dung công việc được phân công trong bản kế hoạch, nắm rõ được thế nào là mạng ngang hàng P2P, các kiểu kiến trúc, phân loại, cơ chế hoạt động và các
v n đề xoay quanh việc cân bằng tải trên mạng ngang hàng có cáu trúc
- Nội dung:
Bảng nội dung công việc được phân công:
chú
1 Xây dựng đề cương
thực tập
Từ ngày 29/06/2015 đến ngày 05/07/2015
Hoàn thành đề cương thực tập
Tuần 1
2 Nghiên cứu về
mạng ngang hàng
Từ ngày 06/07/2015 đến ngày 12/07/2015
- Khái niệm, mục đích của mạng ngang hàng
- Khái niệm mạng có c u trúc và mạng không có
c u trúc
- Mức độ phân tán: Mô hình phân tán hoàn toàn,
mô hình phân tán một phần, mô hình phân tán lai
Tuần 2
Trang 8- Mạng ngang hàng có
c u trúc và kĩ thuật bảng băm phân tán (DHT- Distributed hash tables)
3 Nghiên cứu về
mạng ngang hàng
Từ ngày 13/07/2015 đến ngày 19/07/2015
Nghiên cứu về thuật toán DHT-Chord sử dụng trong mạng ngang hàng
-Khái niệm cân bằng tải
và các khái niệm liên quan
-Khả năng tải của node (peer)
- Nguyên nhân m t cân bằng tải trên mạng
- Giải pháp cân bằng tải
sử dụng virtual node
Mô phỏng thuật toán loadbalancing sử dụng virtual node
Tuần 5
6 Hoàn thành báo
cáo thực tập
Từ ngày 03/08/2015 đến ngày 09/08/2015
Tuần 6
Trang 9II Nội dung báo cáo thực tập
DANH MỤC THUẬT NGỮ
Peer Thuật ngữ dùng để chỉ một máy tính tham gia vào mạng
lưới ngang hàng
Node Thuật ngữ node cũng tương tự như thuật ngữ peer Chỉ
một máy tính tham gia vào mạng lưới ngang hàng
Load Balancing Cân bằng tải
DHT Distribuited hash table – bảng băm phân tán
Chord Giao thức sử dụng trong mạng ngang hàng
Virtual node Node ảo Thuật ngữ này chỉ thuật toán tạo node ảo khi
một máy tính tham gia mạng
HTML HyperText Markup Language Là một ngôn ngữ đánh
d u được thiết kế ra để tạo nên các trang web với các mẩu thông tin được trình bày trên World Wide Web
Log Ghi t t cả thao tác thực hiện thành log
Upload Chia sẻ file lên mạng
Download Tải file từ trên hệ thống về tài nguyên máy tính
Trang 10DANH MỤC HÌNH VẼ Hình 1: Mạng ngang hàng
Hình 10: Sơ đồ quản lý shortcut peer
Hình 11: Sơ đồ khi peer rời mạng
Hình 12: Vòng tròn lưu trữ khi peer rời mạng
Hình 13: Một mạng Chord với 3 node 0, 1, 3 và các bảng Finger Table ứng với
mỗi node
Hình 14: Lưu giữ key trong mạng Chord: node 0 lưu key 6, node 1 lưu key 1 và
node 3 lưu key 2
Hình 15: Phân vùng không gian node thật và node ảo
Hình 16: Transfer node ảo
Trang 11Thứ nhất, Server phụ thuộc r t nhiều vào phần cứng Sẽ không có v n đề gì nếu
Server chỉ lưu trữ mỗi một nội dung nh t định, nhưng thực tế thì mỗi Server phải
xử lí hàng trăm yêu cầu khác nhau từ mỗi Client, chẳng hạn như một người dùng muốn đọc bài A thì Server phải xử lí và cho ra nội dung bài A, một người khác muốn đọc bài B thì Server phải xử lí và cho ra nội dung bài B – mỗi lần như thế sẽ khiến Server sử dụng một phần CPU và RAM để xử lí, Server sẽ cần nâng c p nếu khả năng xử lí không đủ đáp ứng nhu cầu của Client Đó chính là giới hạn về phần cứng của Server
Thứ hai, mỗi Client sử dụng một phần nhỏ đường truyền mạng của Server
Ví dụ: Server của bạn có đường truyền mạng khoảng 100MB/s, tức nếu bạn có
100 Client cùng sử dụng thì mỗi người sẽ có 1 MB/s để dùng, nhưng nếu có khoảng 1000 Client thì mỗi người chỉ còn 100KB/s mà thôi Đ y chính là giới hạn
về đường truyền của Server
Thứ ba, giá thành của dung lượng Nếu có 1 file nặng khoảng 1MB và được
1000 người tải xuống thì tổng dung lượng của dữ liệu được tải xuống sẽ là 1GB Người dùng sẽ không phải trả tiền cho 1MB dữ liệu này, nhưng nhà quản trị web phải trả số tiền đó, thử nghĩ 1 bộ phim nặng khoảng 1GB và có khoảng 10.000 người tải xuống thì số tiền họ phải trả là bao nhiêu? Giá thành quá đắt chính là giới hạn của mô hình Client - Server
Trang 12Để khắc phục 3 giới hạn trên của mô hình Client - Server ta sử dụng Peer to Peer hay còn gọi là mạng ngang hàng, mạng đồng đẳng
1.2 Khái niệm Peer to Peer
Khi mô hình Client - Server gặp nhiều giới hạn thì một hình thức mới ra đời,
đó là Peer to Peer, mô hình mới này sẽ giúp mọi Client trở thành Server và chỉ cần một Server điều khiển hoạt động cho từng Client khác nhau Với Peer to Peer, Client không chỉ l y dữ liệu mà còn có thể chia sẻ lại dữ liệu này với Client khác
và việc chia sẻ lại dữ liệu này người ta gọi nó là seeding Việc seeding r t quan trọng trong sự phát triển của Peer to Peer, nếu không có seeding thì Peer to Peer chỉ giống như mô hình Client - Server mà thôi
Hình 1: Mạng ngang hàng
Theo Wikipedia:
Mạng ngang hàng (tiếng Anh: peer-to-peer network), còn gọi là mạng đồng đẳ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 Mạng ngang hàng thường được sử dụng để kết nối các máy thông qua một lượng kết nối dạng ad hoc Mạng ngang hàng có nhiều ứng dụng Ứng dụng thường xuyên gặp nhất là chia sẻ tệp tin, tất cả các dạng như âm thanh, hình ảnh, dữ liệu, hoặc để truyền
dữ liệu thời gian thực như điện thoại VoIP
Mạng overlay (mạng phủ) là mạng máy tính được xây dựng trên nền của một
mạng khác Các nút trong mạng overlay được xem là nối với nhau bằng liên kết ảo
Trang 13(logical link), mỗi liên kết ảo có thể bao gồm r t nhiều các liên kết vật lý của mạng nền R t nhiều các mạng P2P được gọi là mạng overlay vì nó được xây dựng và hoạt động trên nền Internet
Khái niệm ngang hàng ngày nay được tiến hóa vào nhiều mục đích sử dụng khác nhau, không chỉ để trao đổi tệp mà còn khái quát hóa thành trao đổi thông tin giữa người với người, đặc biệt trong những tình huống hợp tác giữa một nhóm người trong cộng đồng
Không giống như Client – Server, hiệu su t của mọi thứ sẽ giảm đi khi có quá đông Client tham gia vào mạng Hiệu su t của Peer to Peer sẽ tăng lên nếu số Client trong mạng càng đông Tức càng có nhiều người seeding một dữ liệu thì người chưa có dữ liệu đó sẽ càng có cơ hội nhận được dữ liệu muốn download Trong Peer to Peer, tốc độ download tệp tin của người dùng càng nhanh nếu có nhiều người seeding tệp tin đó cho người dùng, hãy tưởng tượng tệp tin cần download nặng 1GB, có 1 người seeding với tốc độ 1MB/s thì sẽ chỉ m t 1000 giây để tải xong tệp tin, nhưng nếu có 10 người như thế thì bạn sẽ chỉ m t 100 giây cho việc download tệp tin Nhưng tính năng chia nhỏ tệp tin để download như thế này không phải phần mềm Peer to Peer nào cũng có, BitTorrent chính là phần mềm đầu tiên sử dụng tính năng này
1.3 Lịch sử của mô hình Peer to Peer
Lịch sử ra đời và phát triển của P2P gắn liền với phần mềm ứng dụng Napster Năm 1999, Shawn Fanning một sinh viên ở tuổi 18 đã rời bỏ trường Đại học để bắt đầu xây dựng phần mềm mang tên Napster do bức xúc với việc r t khó khăn để đưa và chia sẻ các file nhạc trực tuyến trên Internet mặc dù mọi người đều có
Trang 14nguồn tài nguyên trong đĩa cứng của mình Napster được xây dựng thành công và trở thành cách chia sẻ file chính vào thời điểm lúc b y giờ Nó đã làm thay đổi cách tải các file nhạc và dung lượng file chia sẻ cũng lớn hơn nhiều so với các chương trình chia sẻ file trước đó
Khoảng 60 triệu người trên thế giới đã sử dụng phần mềm Napster vào thời điểm đó (trong đó có khoảng 1 triệu người Nhật) Tuy nhiên, do có quá đông người dùng và v n đề bản quyền âm nhạc nên công ty Napster đã bị c m hoạt động Phần mềm Napster không còn được sử dụng kể từ năm 2003 Sau Napster,
r t nhiều các chương trình khác như Gnutella, KaZaa và WinMP đã xu t hiện Công nghệ P2P không chỉ dừng lại ở ứng dụng chia sẻ file nhạc mà còn mở rộng cho t t cả các loại file Nó còn được ứng dụng để chia sẻ các tiến trình rỗi của CPU tại các nút trong mạng
Sau sự ra đời của Napster, công nghệ P2P phát triển một cách nhanh chóng Cho đến hiện nay các ứng dụng P2P đã chiếm khoảng 50% và thậm chí lên đến 75% băng thông trên mạng Internet
Hình 2: Napster
Trang 15BitTorrent là gì?
Ra đời vào năm 2001, BitTorrent là một giao thức mở, nơi mà người sử dụng
sẽ tạo một file (file này có đuôi là torrent nên sau này nó được gọi tắt là file torrent) mô tả một dữ liệu xác định
Một tracker sẽ lưu trữ file torrent và các thông tin về người lưu trữ dữ liệu xác định đó Ngoài việc có một server tracker chung thì vẫn có thể tồn tại cùng lúc nhiều tracker khác, tức là nếu một tracker không còn hoạt động thì vẫn còn nhiều tracker khác thay thế nó, nhờ thế mà khi đã chia sẻ file thông qua torrent, dữ liệu xác định gần như sẽ không bao giờ biến m t
Một thành tựu của BitTorrent trong peer to peer đó là nghĩ ra DHT – hay distributed hash table Nó có tác dụng loại bỏ sự cần thiết của một server tracker chung, cho phép mọi client trong mạng lưới đều có thể index file torrent và trở thành tracker
Nhờ BitTorrent mà việc tìm ra người lưu trữ dữ liệu hoàn chỉnh của một file nào đó được dễ dàng hơn, phần quan trọng nh t trong Peer to Peer Nếu như không tìm được người lưu trữ dữ liệu hoàn chỉnh của một file nào đó thì BitTorrent vẫn
có cách khác để giải quyêt, đó là các client như Tribler
1.4 Các lĩnh vực ứng dụng của mạng ngang hàng
Sự ra đời của mạng ngang hàng đã 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 Trong phần này chúng ta sẽ đưa ra một cách nhìn tổng quát cho v n đề các lĩnh vực ứng dụng của mạng ngang hàng như: giao tiếp, chia sẻ file, băng thông, không gian lưu trữ, các chu trình xử lý của CPU
- Giao tiếp
Đóng vai trò quan trọng trong các ứng dụng mạng ngang hàng Là nhân tố quyết định trong các mạng ngang hàng vì nó cung c p thông tin về các nút và các nguồn tài nguyên nào là sẵn sàng trên mạng Tạo ra khả năng cho các nút kết nối trực tiếp với các nút khác và yêu cầu các nguồn tài nguyên
Một ví dụ điển hình về ứng dụng mạng ngang hàng trong giao tiếp là hệ thống chuyển tin nhắn trực tiếp: thông thường, máy chủ 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 nút, việc tìm kiếm nút
Trang 16khác được thực hiện trên máy chủ Trong trường hợp nút đó không trưc tuyến, hệ thống sẽ phải lưu trữ các tin nhắn cho đến khi nút này trực tuyến lại Các dịch vụ tin nhắn điển hình: Napster, ICQ, Jabber
- Chia sẻ File
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 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 tải mỗi tuần) Đặc điểm của v n đề chia sẻ file là các nút có các file được tải với vai trò là một máy khách làm cho chúng luôn sẵn sàng với các nút khác trong vai trò của một máy chủ V n đề chủ yếu cho mạng ngang hàng nói chung và cho v n đề chia sẻ file nói riêng là v n đề tìm kiếm Trong ngữ cảnh của 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 họa qua các ứng dụng thực của mạng ngang hàng: Gnutella, Naspter và FreeNet
Trong hệ thống Gnutella, không có sự tập trung hóa, các file được lưu trữ trên các nút của hệ thống, khi có yêu cầu tìm kiếm một file, máy tính sẽ gửi yêu cầu này tới t t cả các nút láng giềng của nó cho tới khi tìm th y máy lưu giữ file cần tìm Tiếp theo là quá trình trao đổi file trực tiếp giữa hai máy tính trong mạng Trong hệ thống Naspter, có sự tập trung hóa Khi một máy tham gia vào mạng, danh sách các file sẽ được đăng ký và lưu trữ trên máy chủ trung tâm, khi có yêu cầu tìm kiếm, máy tính sẽ hỏi máy chủ trung tâm về vị trí của file Sau đó việc trao đổi file được thực hiện giữa hai máy tính với nhau
Trong hệ thống Freenet, các file chia sẻ không được lưu trữ trên đĩa cứng của các máy cung c p mà chúng được lưu trữ ở các máy khác nhau trong mạng Mục đích của việc phát triển mạng Freenet là làm cho thông tin được lưu trữ và truy cập
mà không cần biết định danh Với các tổ chức như vậy, chủ sở hữu của một nút mạng cũng không biết được tài liệu gì được lưu trữ trên đĩa cứng của máy anh mình Vì lý do này mà các nút và các file được gắn các số định danh khác nhau Khi một file được tạo, nó được truyền qua các nút láng giềng tới các nút có số định danh gần với số định danh của file nh t và được lưu trữ ở đó
Trang 17Tăng khả năng cân bằng tải trong mạng: khác với kiến trúc client/server các mạng ngang hàng lai có thể nhận được sự cân bằng tải tốt hơn Với mô hình client/server thì cả yêu cầu truy v n thông tin và việc truyền dữ liệu đều được thực hiện giữa máy chủ và máy khách, việc đó sẽ làm m t sự cân bằng tải khi có nhiều yêu cầu kết nối tới máy chủ Với kiến trúc ngang hàng, chỉ có yêu cầu truy v n được thực hiện giữa máy tính trong 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 trong mạng với nhau, điều này sẽ giúp cân bằng tải thông qua việc phân bố tải đều trên toàn hệ thống
Chia sẻ băng thông: mạng ngang hàng có thể làm tăng khả năng tải và truyền các file do cơ chế tận dụng đường truyền thông qua các nút trong mạng Một file
dữ liệu lớn được chia thành các phân mảnh dữ liệu nhỏ độc lập nhau, các mảnh dữ liệu này được chuyển đồng thời đến các nút khác nhau và cuối cùng đến nút yêu cầu chúng Tại nút yêu cầu các mảnh dữ liệu được phép lại thành file dữ liệu ban đầu Các phần mềm tải file điển hình cho việc chia sẻ băng thông, chẳng hạn như:
BitTorrent, FlashGet,…
- Không gian lưu trữ
Ngày nay, khi các dữ liệu càng ngày càng lớn, kích thước file cũng càng lớn, với các máy tính có tài nguyên đĩa cứng hạn hẹp sẽ gặp khó khăn trong việc lưu trữ các file dữ liệu lớn trên máy tính của mình Phát huy ưu điểm của mạng ngang hàng để chia sẻ không gian lưu trữ giữa các máy tính trong hệ thống thì điều đó không còn là một điều đáng lo ngại Bằng cách này, dữ liệu sẽ được chia nhỏ thành
Trang 18các phần và lưu trữ mỗi phần trên các máy trong mạng Mỗi khi cần l y lại dữ liệu, máy đó sẽ nhận lại các phần của dữ liệu trên các máy và ghép chúng lại để nhận được dữ liệu ban đầu Với việc chia sẻ không gian lưu trữ, hệ thống P2P càng ngày càng được mở rộng với nhiều máy tính tham gia vào hệ thống
- Các chu trình xử lý
Trong các ứng dụng đòi hỏi cần phải có sức mạnh tính toán người ta thường tìm cách xây dựng các máy tính mạnh, đắt tiền chứ chưa chú trọng vào việc tận dụng khả năng tính toán của các máy tính được nối mạng Ngày nay do những yêu cầu đòi hỏi tính toán hiệu năng cao như các thao tác tính toán trong tin sinh học, trong tài chính, trong đo lường mà nhiều nghiên cứu ứng dụng mạng ngang hàng vào xử lý tính toán đã được đưa ra Bằng việc sử dụng các ứng dụng mạng ngang hàng để bó cụm các chu trình xử lý có thể nhận được khả năng tính toán ngang bằng với một siêu máy tính đắt tiền Trong một mạng mỗi máy tính là trong suốt với các máy tính khác và t t cả các nút được kết nối mạng sẽ tạo thành một máy tính logic
Trang 19 So sánh mô hình P2P với mô hình Client - Server truyền thống:
Tổng quan - Một mạng ngang hàng cho
phép các nút đóng góp, chia
sẻ nguồn tài nguyên với nhau
Tài nguyên riêng rẽ của các nút (ổ cứng, CD-ROM, máy in) Các nguồn tài nguyên này
có thể được truy cập từ b t cứ nút nào trong mạng
- Các nút đóng vai trò như cả máy khách và máy chủ
- Dữ liệu được lưu tại một máy chủ trung tâm, tốc độ cao
- Khi một máy khách yêu cầu
l y thông tin về thời gian nó
sẽ phải gửi một yêu cầu theo một tiêu chuẩn do máy chủ định ra, nếu yêu cầu được
ch p nhận thì máy chủ sẽ trả
về thông tin mà máy khách yêu cầu
Ưu điểm - Không cần máy chủ
- Các máy khách tự chia sẻ tài nguyên cho nhau
- Khi mạng càng được mở rộng thì khả năng hoạt động của hệ thống càng tốt
- Đáng tin cậy hơn (có máy chủ riêng)
- Mức độ an toàn cao
- Cần máy chủ riêng
- Dễ gặp hiện tượng thắt cổ chai
Nhược điểm - Độ tin cậy th p - Phức tạp trong bảo trì, duy trì
hoạt động của mạng
- Chi phí cao
Trang 201.5 Cấu trúc mạng
C u trúc mạng xác định rõ việc hình thành mạng ngang hàng, cũng như việc nút và các tài nguyên được đưa vào mạng có theo một quy luật nh t định nào đó không Nhờ đó ta phân loại mạng ngang hàng có c u trúc và không có c u trúc
1.5.1 Mạng không có cấu trúc
Liên kết giữa các node mạng được thiết lập 1 cạch ngẫu nhiên Phương thức tìm kiếm r t đa dạng từ việc sử dụng các phương pháp bruteforce, đẩy truy v n ra
t t cả các nút cho tới khi có được kết quả, cho đến sử dụng các thuật toán phức tạp
và tiết kiệm tài nguyên hơn truy v n ngẫu nhiên hay dùng bảng đinh tuyến Phương pháp tìm kiếm có liên hệ mật thiết và tác động sâu sắc tới tính ổn định, khả năng mở rộng và độ tin cậy của mạng
Mạng không c u trúc thương được sử dụng trong môi trường mà các nút trong mạng luôn thay đổi
Hình 3: Mạng ngang hàng có cấu trúc
Trang 21 Ưu điểm:
Khả năng mở rộng hệ thống mạng trong mô hình không c u trúc thường bị hạn chế bởi các kỹ thuật trong việc xây dựng mạng chẳng hạn như: Mô hình tập trung dẫn tới việc thắt nút cổ chai khi mở rộng, kỹ thuật Flooding dẫn tới việc tăng lưu lượng mạng khi mở rộng mạng Trong khi đó khả năng mở rộng với mô hình mạng
có c u trúc được nâng cao rõ rệt
Nhược điểm:
Việc quản lý c u trúc của topo mạng gặp khó khăn, đặc biệt trong trường hợp
tỷ lệ vào/ra mạng của các nút cao và v n đề cân bằng tải trong mạng
1.6 Mức độ phân tán
Mặc dù thiết kế mong muốn của mạng ngang hàng là hoàn toàn phân tán, tuy nhiên trong thực tế có thể không đúng như vậy Dưới đây liệt kê các mô hình dựa trên mức độ phân tán của chúng
Mô hình phân tán hoàn toàn: T t cả các nút trong mạng thực hiện các vai trò
như nhau Vừa đóng vai trò là máy chủ, vừa là máy khách Do đó không cần phải
có b t kỳ thành phần nào đóng vai trò là trung tâm điều phối
Hình 4: Mạng ngang hàng phân tán hoàn toàn
Trang 22Mô hình phân tán một phần: Về cơ bản mô hình này tương tự như mô hình
phân tán hoàn toàn Tuy nhiên có một số nút đóng vai trò quan trong hơn các nút khác, trở thành các điểm điều phối cho một số các nút khác Các nút này được gọi
là siêu nút (supernode) và chúng có thể đảm nhận các vai trò khác nhau tùy thuộc vào từng thiết kế
Có một điểm quan trọng cần lưu ý là hệ thống sẽ không lệ thuộc vào một nút nào, dù nút đó có là supernode, do các nút này được gán động và nếu có lỗi sẽ được thay thế bằng nút khác
Hình 5: Mạng ngang hàng phân tán một phần
Mô hình phân tán lai: Trong những hệ thống này, tồn tại một máy chủ trung
tâm đóng vai trò duy trì thông tin về các nút và tài nguyên trên các nút
Hình 6: Mạng ngang hàng lai