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

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới p2p

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 (1023.77 KB, 63 trang )

7

Danh mục hình
Hình 1.1: Mạng VN-Grid kết nối giữa các thành viên trong Đại Học Quốc Gia ..... 12
Hình 1.2: Băng thông kết nối giữa các host trong cùng site và giữa các site với nhau
.................................................................................................................................... 13
Hình 1.3: Kiến trúc của Globus MDS-2 .................................................................... 15
Hình 1.4: Kiến trúc của Condor ................................................................................ 16
Hình 1.5: Chord - cấu trúc vịng 1 chiều.................................................................... 17
Hình 1.6: CAN: (a)-Khơng gian 2 chiều với 5 node, (b)-Trước khi node 7 tham gia,
(c)- Sau khi node 7 tham gia ..................................................................................... 18
Hình 1.7: Kiến trúc đề xuất trong [13]....................................................................... 21
Hình 1.8: Kiến trúc của Grid ..................................................................................... 23
Hình 1.9: Một số topology của P2P .......................................................................... 24
Hình 1.10: Mơ hình P2P theo kiểu tập trung (a), không tập trung (b) hoặc kiểu lai (c)
.................................................................................................................................... 25
Hình 2.1: Mơ hình 3 lớp tổ chức thông tin tài nguyên và các services được sử dụng
.................................................................................................................................... 30
Hình 2.2: Các VO (c) được hình thành bằng cách biến đổi đồ thị (a) kết nối vật lý giữa
các host thành đồ thị đầy đủ (b) kết nối luận lý với băng thơng xác định ................ 33
Hình 3.1: Sơ đồ lớp thay đổi cơ bản trong GridGain ................................................ 39
Hình 3.2: Sơ đồ khám phá tài nguyên ....................................................................... 40
Hình 3.3: Giải thuật xây dựng VO ............................................................................ 42
Hình 3.4: Giải thuật xây dựng VO.NET ................................................................... 44
Hình 4.1: Biểu đồ thể hiện thời gian tham gia mạng của các node theo thứ tự ......... 46
Hình A.1: Sơ đồ lớp cho interface Grid .................................................................... 54
Hình A.2: Map/Reduce cho một grid task ................................................................ 58
Hình A.3: Sơ đồ lớp cho GridTask ............................................................................ 59

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P



8

Hình A.4: Sơ đồ lớp cho GridMulticastDiscoverySpi ............................................... 62
Hình A.5: Sơ đồ lớp cho Gridnode ........................................................................... 65

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


9

Danh mục bảng biểu
Bảng 1.1: So sánh giữa Grid và P2P ......................................................................... 26
Bảng 4.1: Kết quả cho trường hợp thử nghiệm 1 ...................................................... 46
Bảng 4.2: Kết quả cho trường hợp thử nghiệm 2 ...................................................... 47
Bảng 4.3: Kết quả cho trường hợp thử nghiệm 3 ...................................................... 47

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


10

1 Tổng quan
1.1 Mở đầu
Bắt đầu từ những năm 90, đã có rất nhiều các nghiên cứu về Grid computing trên
khắp thế giới. Với nhiều bắt nguồn nghiên cứu khác nhau như: compute grids, data
grids, science grids, access grids, knowledge grids, cluster grids, terra grids, và
commodity grids,…; nhìn chung đều tập trung vào khả năng chia sẻ tài nguyên.
Và ngày nay, với môi trường lưới ngày càng phát triển rộng lớn thì tài nguyên
chia sẻ ngày càng khổng lồ, và nhu cầu tìm kiếm những tài nguyên đạt một chất lượng

nhất định đang được quan tâm. Vì vậy, vấn đề đặt ra trên hệ thống tính tốn lưới diện
rộng này là cần xây dựng, tổ chức và khám phá được tài nguyên hướng đến chất lượng
dịch vụ (QoS), trong đó đặc biệt quan tâm đến dịch vụ mạng.
Với đặc thù mạng Việt Nam, việc quản lý tập trung tài nguyên là khơng hiệu quả
và khả năng mở rộng thấp. Chính vì vậy, mục tiêu của luận án là hướng đến việc xây
dựng cơ sở hạ tầng lưới sao cho các tài nguyên được phân bổ và quản lý một cách hiệu
quả nhằm đáp ứng tốt nhất yêu cầu khám phá tài nguyên hướng đến chất lượng dịch
vụ. Hướng tiếp cận được đưa ra là dựa trên việc phân chia các tổ chức ảo (VOs) và áp
dụng công nghệ P2P [3], [5] lên các tổ chức ảo này.
1.2 Phát biểu vấn đề
Ta thấy rằng với những ứng dụng tính tốn lớn thì tài ngun trên hệ thống đơn
lẻ khơng thể đáp ứng u cầu về tốc độ tính tốn cũng như thời gian cho phép để hồn
tất tác vụ. Vì thế cần phải tận dụng được tài nguyên thỏa mãn khả năng xử lý và liên
lạc trên các hệ thống khác nhau. Grid Computing chính là một trong những giải pháp
hướng đến vì bản thân nó là một hệ thống song song và phân bố, cho phép chia sẻ, lựa
chọn, tích hợp các tài nguyên phân bố động về mặt địa lý theo runtime tùy thuộc vào

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


11

tính khả dụng, dung lượng, hiệu suất, chi phí, cũng như yêu cầu về chất lượng dịch vụ
(QoS) của người sử dụng đối với những tài nguyên này (Grid is a type of parallel and
distributed system that enables the sharing, selection, and aggregation of
geographically distributed ‘autonomous’ resources dynamically at runtime depending
on their availability, capability, performance, cost, and users’ quality-of-service
requirements” - Buyya 2002). Thực tế, với một yêu cầu bài toán: “ứng dụng song song
chạy trên 300 processors với ít nhất 25Mb/s băng thơng kết nối giữa chúng” thì tài
ngun thích hợp có thể nằm rải rác ở các grid node mà việc tìm kiếm để đảm bảo cả

yêu cầu liên lạc giữa các tài nguyên phải đạt một băng thông cho phép nào đó vẫn chưa
có một middleware nào hỗ trợ.
Ứng dụng vào dự án thực tế , VN-Grid, một trong những dự án trọng điểm của
ĐHQG-TPHCM, với mục tiêu xây dựng hạ tầng lưới tính tốn chia sẻ tài nguyên giữa
các trường thành viên của ĐHQG-TPHCM cho các bài tốn có khối lượng tính tốn
lớn tiến tới việc hình thành hạ tầng lưới tính tốn quốc gia, thì vấn đề về băng thông
liên lạc giữa các tài nguyên chia sẻ thật sự là một hướng nghiên cứu và đóng góp cấp
thiết.
Đặc trưng của mạng VN-Grid (mạng Đại học Quốc gia) là bao gồm nhiều trường
Đại học kết nối lại với nhau theo kiểu P2P (như VNU: Đại học Quốc gia Hà Nội, HUT:
Đại học Bách Khoa Hà Nội, HCMUT: Đại học Bách Khoa TPHCM,…). Dưới đây là ví
dụ cho mơ hình kết nối trong mạng VN-Grid (hình 1.1):

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


12

Hình 1.1: Mạng VN-Grid kết nối giữa các thành viên trong Đại Học Quốc Gia
Và trong từng grid node (hay site), có một số các host kết nối nhau với băng thông
này, một số khác kết nối nhau với băng thơng khác; và giữa site này với site khác cũng
có băng thơng kết nối riêng (như hình 1.2 bên dưới). Như vậy, khi cần tìm kiếm những
tài nguyên thỏa mãn băng thơng kết nối nào đó, cần bắt đầu từ một mơ hình để gom
nhóm các tổ chức ảo (VO) vùng loại băng thơng với nhau, từ đó đưa ra giải thuật khám
phá tài nguyên một cách hiệu quả.

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


13


50
M

20M

10M

10
0M

Hình 1.2: Băng thơng kết nối giữa các host trong cùng site và giữa các site với nhau
1.3 Các công trình liên quan
Tính đến thời điểm hiện tại, Grid computing đã phát triển qua 3 thế hệ (theo phân
loại của De Roure, Baker, Jennings & Shadbolt – 2003):
• Thế hệ đầu tiên tập trung chủ yếu vào các giải pháp cho việc chia sẻ các tài
ngun tính tốn có hiệu suất cao trong môi trường phân bố. Một dự án điển
hình là I-WAY (Foster, Geisler, Nickless, Smith & Tuecke 1997) [15].
• Thế hệ kế tiếp phải kể đến là sự ra đời của các middleware giúp giải quyết
các vấn đề về quy mơ, tính khơng đồng nhất, và khả năng thích ứng trong
mơi trường phân bố, trong đó tập trung vào khả năng tính tốn trên diện rộng
với khối lượng dữ liệu khổng lồ. Đã có một số dự án Grid tiêu biểu cho thế
hệ thứ hai này như: Globus toolkit 2 (Foster & Kesselman - 1997) [22],

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


14

Condor (Condor - 2006) [17], Nimrod / G (Buyya, Abramson & giddy 2000)

[19], DataGrid (DataGrid - 2006) [18].
• Cuối cùng là thế hệ thứ ba vẫn đang trên đà phát triển. Nó định ra được
những yêu cầu cho sự cộng tác phân bố (distributed collaboration) trong các
môi trường ảo. Thế hệ này chọn hướng tiếp cận service oriented và nhấn
mạnh đến tầm quan trọng của sự tự động được kích hoạt bởi các agent tính
tốn. Kiến trúc dịch vụ lưới mở (OGSA) (Foster, Kesselman, Nick & Tuecke
2002) được hiện thực trong phiên bản Globus Toolkit 3 và hiện tại phiên bản
4 (The Globus Alliance 2006) [20] và Semantic Grid (De Roure, Jennings &
Shadbolt - 2003) [21] là những điển hình cho các công nghệ Grid ở thế hệ
thứ ba này.
Như vậy, trải qua nhiều nghiên cứu và hướng tiếp cận khác nhau, xét riêng
phương diện khám phá tài nguyên, đã có một số Grid middleware ở cấp cao được phát
triển. Nhìn chung, có thể xếp theo 3 hướng:
Khám phá tài nguyên trên hệ thống Grid
Những giải pháp đưa ra dựa vào mơ hình tập trung và có cấu trúc tầng client/server như
Globus Toolkit [22], Condor [17], Unicore [28]:
• Trong Globus Tookit 2, Monitoring and discovery service (MDS-2) cung cấp
những thông tin về trạng thái của các thành phần hệ thống thông qua LDAP 1.
MDS-2 bao gồm bộ cung cấp thông tin tài nguyên gọi là Grid Tài nguyên
Information Service (GRIS) và dịch vụ tổng hợp Grid Index Information
Service (GIIS). GRIS có thể trả lời cho những u cầu về thơng tin tài nguyên
tại một Grid node nào đó như hệ điều hành, phiên bản, hay những thông tin
động như CPU và bộ nhớ. Khi đó GIIS sẽ kết hợp những thông tin được cung
cấp bởi GRIS được quản lý bởi các tổ chức ảo (Virtual organization – VO). Nhờ
vậy, những thơng tin này có thể được khai thác, hoặc tìm kiếm bởi các ứng dụng

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


15


Grid. Dưới đây là mơ hình kiến trúc tầng của MDS-2 trong đó GIIS ở tầng trên
cùng để nhờ đó nó có thể trả lời các yêu cầu của người dùng về thông tin tất cả
tài nguyên của các VO bên dưới.

Hình 1.3: Kiến trúc của Globus MDS-2
Tương tự, khi MDS-3 được phát triển, vẫn là kiến trúc tầng được áp dụng. Tuy
nhiên có sự cải tiến khi tích hợp với mơ hình OGSA [29] mà trong đó mỗi tài
ngun là một Grid Service và có một Index Service (cũng là một dạng Grid
Serivce) chịu trách nhiệm tổng hợp các thơng tin của các Grid Service đăng ký
với nó.
Và hiện nay, với Globus Toolkit 4, MDS-4 hổ trợ thêm Web Services Tài
ngun Framework (WSRF) [30].
• Condor áp dụng mơ hình lập lịch tập trung. Trong đó, Central Manager (CM)
chịu trách nhiệm chính: lập lịch các tác vụ, thu thập các thông tin tài nguyên và
nhận request từ người dùng. Thông qua ClassAd, một dạng ngôn ngữ đặc tả, các
tài nguyên và job được mô tả và phân loại để từ đó CM đóng vai trị như một
đối tác mơi giới có nhiệm vụ lựa chọn và đánh giá các tài nguyên cung cấp cho
người dùng. (Ở đây, nguồn tài nguyên trong Condor được đại diện bởi
Resource-owner Agent (RA). Mỗi RA định kỳ kiểm tra trạng thái của các tài

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


16

nguyên và sau đó xây dựng ClassAd cho các tài nguyên này và gửi chúng đến
các CM).

Hình 1.4: Kiến trúc của Condor

• Trong Unicore, bộ phận chính trong khám phá tài nguyên là Incarnation
Database (IDB). The IDB cung cấp các thông tin sau:
(1) Địa chỉ và port của một instance Target System Information (TSI).
(2) Hiện thể của các lệnh trừu tượng.
(3) Thông tin về dung lượng, năng lực của tài ngun.
Khám phá tài ngun trên hệ thống P2P: mơ hình P2P dựa trên đặc tính là tất cả các
thành phần của hệ thống có cùng mức độ trách nhiệm như nhau và hoạt động đồng thời
vừa là một client vừa là một server, ngược lại hồn tồn với mơ hình cổ điển clientserver. Hệ thống P2P được chia thành hai loại chính (loại cấu trúc và khơng cấu trúc)
dựa trên giao thức kết nối và cách thức tổ chức các peer:
• Hệ thống P2P có cấu trúc là một cơ cấu cứng nhắc kết nối các peer với nhau.
Thông qua Distributed Hash Table (DHT), các peer và file được ánh xạ vào
index tương ứng theo tùy vào khóa của chúng. Điển hình là Chord [31], một
trong những hệ thống P2P có cấu trúc được đề xuất đầu tiên, với cấu trúc vịng 1
chiều, trong đó mỗi node sẽ duy trì thông tin của O(log N) node khác và phân
giải khoảng O(log N) các thông điệp truy vấn của những node này. Các thông

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


17

tin định tuyến trong Chord được cập nhật ngay khi có node tham gia hoặc rời
khỏi mạng. Có thể nói, Chord là một mơ hình P2P hiện thực tương đối đơn giản
và độ phức tạp của giải thuật quản lý thông tin giữa các node cũng như các
thông điệp trao đổi qua lại trong hệ thống là chấp nhận được (O(log N)). Tuy
nhiên, việc quản lý các node ra/vào mạng một cách quá động và tùy ý như trên
thực tế là một hạn chế khi duy trì thơng tin các node cịn lại trong Chord dẫn đến
thơng tin khơng cịn hiệu lực tại thời điểm có u cầu truy vấn.

Hình 1.5: Chord - cấu trúc vịng 1 chiều, ví dụ cho 3 node với key 1 cho node 1, key 2

cho node 3 và key 6 cho node 0
• Một giải pháp được đặt ra, Content-Addressable Network (CAN) [32], nhằm
giới hạn số lượng node láng giềng mà một node bất kỳ cần duy trì thơng tin của
chúng. Trong CAN, các node được tổ chức theo cấu trúc vòng đa chiều (ddimensional torus). Khi đó mỗi key bao gồm d số và tương ứng một điểm trong
không gian đa chiều. Như vậy, mỗi node sẽ chỉ cần duy trì thơng tin của một
node liền trước và 1 node liền sau nó trong mỗi chiều (tương ứng với O(d) node
lân cận cần quản lý). Rõ ràng, với CAN, độ phức tạp của việc forward các yêu
cầu tìm kiếm tài nguyên đã giảm đáng kể, O(N1/d). Tuy nhiên, hiện thực không
gian đa chiều này khá phức tạp nên việc cập nhật thông tin để duy trì cấu trúc
cứng nhắc này tốn nhiều chi phí.

Tổ chức thơng tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


18

Hình 1.6: CAN: (a)-Khơng gian 2 chiều với 5 node, (b)-Trước khi node 7 tham gia, (c)Sau khi node 7 tham gia


Đối với P2P khơng cấu trúc, Gnutella and KaZaA được xem là 2 mơ hình tiêu
biểu nhất, trong đó mỗi node duy trì thơng tin đến một số node lân cận cố định
nào đó. Do trong hệ thống P2P này việc kết nối giữa các peer khơng có cấu trúc
cố định, nên việc khám phá tài nguyên thông qua một phương pháp gọi là
“flooding”, nghĩa là khi có một yêu cầu tìm kiếm tài nguyên, yêu cầu này sẽ
được broadcast từ node này đến những node lân cận và gửi kết quả trả về node
ban đầu theo đúng đường đã trace qua. Việc flooding các yêu cầu như vậy gây
cho mạng bị nghẽn lưu thông khi khối lượng truyền đi khá lớn. Chính vì vậy,
thơng số Time-to-live (TTL) được truyền vào trong message gửi đi sao cho nó
giảm đi 1 khi đi qua một node, và việc broadcast message này sẽ dừng lại khi
TTL = 0. Một số giải pháp khác được đưa ra để giới hạn lượng message

broadcast trên mạng như Dynamic Querying [33], traffic/coverage trade-off
[34], hay randomwalks [35].

Nhìn chung, trên mỗi loại, P2P có cấu trúc hay khơng cấu trúc đều có những ưu và
khuyết điểm riêng, và cũng đã có nhiều nghiên cứu cùng các giải pháp đưa ra để khắc
phục những điểm yếu trong từng mơ hình.

Tổ chức thơng tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


19

Khám phá tài nguyên trên hệ thống Grid kết hợp với P2P
Khi mà kích thước của Grid ngày càng lớn, thì hướng tiếp cận tập trung và theo tầng
đối với hệ thống thơng tin trong Grid khơng đảm bảo tính khả chuyển và tính chịu lỗi
của hệ thống. Do vậy, một giải pháp đặt ra là áp dụng công nghệ P2P lên quá trình
khám phá tài nguyên trong Grid. Dưới đây là một số đề xuất cho mơ hình P2P khơng
cấu trúc:
• Iamnitchi et al. đề xuất một kiến trúc P2P không tập trung cho việc khám phá tài
nguyên trên môi trường Grid [12]. Trong kiến trúc này, mỗi thành viên tham gia
vào VO sẽ đưa thông tin lên 1 hay nhiều máy chủ nội bộ, còn gọi là node hay
peer. Những node này sẽ chịu trách nhiệm lưu trữ và cung cấp thông tin tài
nguyên khi cần thiết. Người dùng chỉ việc gửi yêu cầu đến những node đã biết
nào đó. Lập tức những node này sẽ trả kết quả những mơ tả tài ngun nào mà
nó tìm thấy phù hợp, hoặc ngược lại, nó sẽ chuyển yêu cầu này đến những node
khác. Trong quá trình chuyển yêu cầu sang node khác, thì node này truyền cả
thời gian sống (time-to-live TTL) của yêu cầu để đảm bảo yêu cầu sẽ hết hiệu
lực trong một khoảng thời gian khơng tìm ra tài nguyên phù hợp.
Kiến trúc này phân chia việc khám phá tài nguyên gồm 4 thành phần chính: giao
thức thành viên (membership protocol), overlay construction, tiền xử lý

(preprocessing), và xử lý yêu cầu (request processing). Membership protocol
giúp xác định cách mà một node mới tham gia vào mạng và học những thông tin
cần thiết về những node khác như thế nào. Chức năng overlay construction cho
phép lựa chọn một tập hợp các node cộng tác trong danh sách cục bộ của các
thành viênt tham gia. Preprocessing là quá trình xử lý ngầm nhầm giúp nâng cao
hiệu suất tìm kiếm trước khi tiến hành xử lý yêu cầu. Bước cuối cùng là khi yêu
cầu được xử lý. Ở giai đoạn này, chiến thuật lan truyền yêu cầu được sử dụng

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


20

như: random walk, learning-based, best-neighbor, learning-based + bestneighbor.
• Trong [13], Talia et al. đưa ra môt kiến trúc P2P cho việc khám phá tài nguyên
trong Grid trên nền OGSA. Kiến trúc bao gồm 2 lớp (hình 1.3); lớp thấp là cấu
trúc tầng của dịch vụ Index (Index Service – IS) được cung cấp sẵn trong
Globus Toolkit phiên bản 3 và 4). IS này chịu trách nhiệm đưa thông tin lưu giữ
trong mỗi VO; lớp cao hơn là lớp P2P, trong đó thơng tin sẽ được thu thập và
phân bổ. Lớp P2P này bao gồm 2 web service: Peer service (PS) và Contact
service (CS), trong đó PS được dùng cho việc khám phá tài nguyên và CS là
dịch vụ giúp cho phép các PS tự tổ chức lại mạng P2P của mình khi cần thiết.
Có 1 PS trên mỗi VO. Mỗi PS này sẽ kết nối với những PS lân cận khác và trao
đổi các thông báo truy vấn/trả lời với nhau theo kiểu P2P. Trong đó kết nối giữa
2 node lân cận nhau là dạng kết nối cục bộ giúp chúng có thể trao đổi thơng báo
một cách trực tiếp. Như vậy, một thông báo truy vấn được một PS gửi đi đến
những lân cận của nó, và đến lượt những node lân cận này lại chuyển sang cho
những node lân cận khác của chúng. Hai chiến lượt chính được dùng là:
message buffering và message merging mà kết quả thực nghiệm mang lại hiệu
suất tăng đáng kể.


Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


21

Hình 1.7: Kiến trúc đề xuất trong [13].
Tổng kết: Khi quy mơ của hệ thống Grid nhanh chóng tăng lên, quản lý tập trung là
kém hiệu quả. Mặt khác, các hệ thống P2P ngày càng thích ứng cho những ứng dụng
tinh vi cũng như hổ trợ đa dạng các truy vấn phức tạp và các mức QoS khác nhau. P2P
không chỉ cho phép chia sẻ tập tin, mà sẽ mở ra một kỷ nguyên mới cho việc truyền
thông qua lại giữa các tài nguyên với nhau.
Tuy nhiên, mới chỉ dừng lại ở mức cho phép các ứng dụng mô tả u cầu về những đặc
tính tài ngun cần tìm kiếm như memory, storage, CPU speed, … , mà chưa đặt ra
được yêu cầu về sự tương tác qua lại giữa các tài nguyên dùng trong ứng dụng grid.
Vậy nên, vẫn còn thiếu các dịch vụ ở lớp trung gian (middleware service) hổ trợ khám
phá những tài nguyên phù hợp và đáp ứng được một mức băng thông kết nối nhất định
nào đó.

Tổ chức thơng tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


22

1.4 Cơ sở lý thuyết
1.4.1 Sơ lược về Grid
1.4.1.1 Phân loại Grid
Một trong những điểm trọng yếu của Grid, dù là commodity grid hay
computational grid, đều được đánh giá trên khả năng thương mại cũng như khả năng
đáp ứng yêu cầu người dùng. Trong đó, khả năng đáp ứng người dùng được đo dựa

trên chất lượng dịch vụ cung cấp bởi Grid (như tính khả dùng, hiệu xuất, cơ chế truy
xuất, quản lý, ….)
Grid được phân làm nhiều loại, trong đó có 3 loại phổ biến như sau:
• Knowledge grid: lưới có thể chia sẻ tài nguyên về knowledge, thường dùng cho
những ứng dụng trên các lab phân bố ảo.
• Data grid: chia sẻ về dữ liệu, ứng dụng cho những bài tốn có khối lượng dữ
liệu lớn.


Computing grid: chia sẻ về sức mạnh tính tốn, nhằm giải quyết cho những bài

tốn địi hỏi khả năng tính tốn lớn của các siêu máy tính (supercomputer).
1.4.1.2 Kiến trúc Grid
Kiến trúc của Grid, theo Ian Foster, là một kiến trúc phân lớp tùy vào đặc điểm
chung, tính chất và vai trị của các thành phần đối với hệ thống Grid. Trong đó mỗi lớp
cung cấp một số dịch vụ riêng biệt. Như trong hình 1.8, Fabric là lớp thấp nhất, đại
diện cho các thiết bị vật lý mà các tổ chức, người dùng muốn chia sẻ, sử dụng. Lớp cao
nhất Application là lớp ứng dụng trong Grid, bao gồm các interface cho phép người
dùng truy xuất vào hệ thống Grid. Các lớp ở giữa (Connectivity, Resource, và
Collectivity) được xem là lõi của Grid mà trên đó các middleware được xây dựng:

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


23

Hình 1.8: Kiến trúc của Grid
• Lớp Connectivity định nghĩa các protocol liên lạc và chứng thực cần thiết cho
những giao dịch mạng đặc trưng của Grid. Các protocol liên lạc cho phép trao
đổi dữ liệu giữa các tài nguyên tầng Fabric, và các protocol chứng thực được

xây dựng dựa trên các dịch vụ liên lạc giúp cung cấp các cơ chế mã hóa, bảo
mật, xác minh và nhận dạng người dùng và tài nguyên. Các giải pháp dựa trên
các chuẩn bảo mật hiện hành cũng được thực thi trên lớp Connectivity này.
• Lớp Resource: dựa trên các protocol liên lạc và chứng thực của tầng
Connectivity để xây dựng các protocol, API, SDK nhằm hổ trợ việc cung cấp
thông tin về cấu trúc và trạng thái của các tài nguyên trong Grid, cũng như
thương lượng, khởi tạo, theo dõi, điều khiển, tính tốn các chi phí và chi trả cho
các hoạt động chia sẻ trên từng tài nguyên riêng lẻ một cách an tồn.
• Lớp Collective: khác với việc tập trung vào các tài nguyên riêng lẻ của lớp
Resource, ở lớp Collective này chú trọng đến việc quản lý toàn cục các tập tài
nguyên. Một số dịch vụ được bổ sung như: directory service, co-allocation
scheduling và broker, monitoring và diagnostic, data replication, ...

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


24

Nhìn chung, thành phần trong kiến trúc của Grid Computing chứa những phần
chính mà người phát triển ứng dụng cần chú ý khi tiến hành thiết kế cũng như hiện
thực:


Bảo mật (Security)



Quản lý tài ngun (Resource management)




Các dịch vụ thơng tin (Information services)



Quản lý dữ liệu (Data management)

1.4.2 Mơ hình Peer-to-peer (P2P)
1.4.2.1 Tổng quan
P2P là một mơ hình mạng máy tính hoạt động chủ yếu dựa vào khả năng tính tố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 P2P thường được sử dụng để kết nối các
máy thông qua một lượng lớn kết nối dạng ad hoc.
Một mạng P2P đúng nghĩa không có khái niệm máy chủ và máy khách, mà tất cả
các máy tham gia đều bình đẳng và được gọi là peer, là một nút mạng đóng vai trị
đồng thời là máy khách và máy chủ đối với các máy khác trong mạng.

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


25

Hình 1.9: Một số topology của P2P như kiểu node đơn, hình sao, vịng, cây, đồ thị, lai
giữa các kiểu
1.4.2.2 Phân loại
Tùy theo chuẩn phân loại khác nhau mà P2P được xếp theo nhiều kiểu.
Phân theo mức độ tập trung của mạng, P2P được chia làm 3 loại: tập trung,
không tập trung, hoặc lai giữa cả 2 loại.

(a)


(b)

(c)

Hình 1.10: Mơ hình P2P theo kiểu tập trung (a), khơng tập trung (b) hoặc kiểu lai (c)

• Tập trung: một máy trong mạng P2P này đóng vai trị như một máy chủ.
• Khơng tập trung: trong mơ hình này, khơng máy nào trong mạng giữ vai
trò chủ hoặc khách, mà tất cả đều ngang hàng. Một máy bất kỳ sẽ liên lạc
và biết thơng tin của những máy lân cận có kết nối với nó, đóng vai trị
như một máy chủ hoặc máy khách tại một thời điểm nào đó.
• Loại lai: là sự kết hợp giữa 2 mơ hình tập trung và không tập trung.
Dựa vào cách các node liên kết với nhau, người ta chia làm 2 loại: có cấu trúc
và khơng có cấu trúc:

Tổ chức thơng tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


26

• P2P khơng cấu trúc: là hệ thống P2P mà trong đó mỗi peer kết nối một
cách ngẫu nhiên với một số lượng peer ấn định nào đó.
• P2P có cấu trúc: là một hệ thống P2P có cấu trúc rất chặt chẽ nối liền
giữa các peer.
1.4.3 P2P so với Grid
P2P và Grid là 2 hệ thống chia sẻ tài nguyên phổ biến. Bảng dưới đây so sánh
giữa Grid và P2P:
Mơ hình
Chức năng


Grid

P2P

Hỗ trợ nhiều ứng dụng khác

Hỗ trợ sự tham gia không

nhau, tập trung vào cung cấp

liên tục vào ứng dụng cho

cơ sở hạ tầng đáp ứng được

các cá nhân (node) không tin

yêu cầu về QoS cho các cộng cậy , nặc danh
đồng tin cậy, khơng đồng
nhất, ơn hịa
Tính bảo mật

Tính kết nối

Cộng đồng đóng (Closed

Cộng đồng mở (Open

community)


community)

Kết nối các VO thơng qua

Bao gồm nhiều máy tính

mạng có hiệu suất cao (mạng
tốc độ cao)
Khám phá và

Chủ yếu dưa trên mơ hình

Mỗi node tự quản trị dữ liệu

quản lý tài

phân cấp hay tập trung, tuy

của nó. Liên lạc với các node

ngun

nhiên hiện nay một số cơng

xung quanh để tìm kiếm tài

cụ hiện thực Grid có phần

nguyên


mở rộng cho phép phát triển

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


27

theo mơ hình phân bố.
Khơng phù hợp với một mơi
trường lớn, động
Khả năng chịu Ngoại trừ việc kiểm tra đơn
lỗi

Khả năng chịu lỗi cao do ưu

giản trạng thái tại một thời

điểm mơ hình dữ liệu phân

điểm và khởi động lại khi có

bố, khi lỗi xảy ra tại một

lỗi, hầu hết các cơng cụ và

node, hoạt động của tồn hệ

mơ hình Grid đều chưa triển

thống hầu như không bị ảnh


khai khả năng chịu đựng lỗi

hưởng

Bảng 1.1: So sánh giữa Grid và P2P
Đối với các ứng dụng lớn, cần đến hàng ngàn node, Grid sẽ xảy ra tình trạng
nghẽn cổ chai ở các tác vụ tập trung. Điều này cho thấy khả năng đáp ứng của Grid
không đủ khi môi trường Grid ngày càng phát triển về kích thước, khơng đồng nhất và
không ổn định. Để khắc phục nhược điểm này, người ta đã bắt đầu áp dụng công nghệ
P2P lên hệ thống Grid, nhằm tận dụng những ưu điểm của P2P để khắc phục những
nhược điểm của Grid và ngược lại.
1.4.4 Tổ chức ảo (Virtual organization – VO)
1.4.4.1 Tổng quan
Khái niệm về VO được đề cập khá nhiều trong các tài liệu về Grid. Tuy nhiên
khơng có một định nghĩa cố định nào về VO. Nhìn chung, VO là tập hợp những tổ
chức cá nhân, hoặc các viện, không phụ thuộc vào địa lý, có khả năng chia sẻ tài
nguyên, hợp nhất thành một tổ chức ảo nhằm đáp ứng một mục tiêu nào đó.
Một VO bất kỳ cần thỏa mãn một số đặc tính chung sau:
• Một VO chứa ít nhất 1 thành viên.
• Một VO có thể chứa một tổ chức thật.

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


28

• Một VO có thể là VO con của một VO khác, gọi là VO cha.
• Các VO có thể hình thành nên một mắc xích các VO nối lại với nhau.
• Một VO thường khơng sở hữu những tài ngun thật, mà chỉ quản lý

chúng.
• Một VO khơng là một thực thể hợp pháp.
1.4.4.2 Chu kỳ sống
Một VO từ lúc hình thành đến khi kết thúc sẽ trải qua 6 chu kỳ sống [4]:
a) Giai đọan creation
Trong giai đoạn này, sẽ có một tập hợp các thành viên được ứng cử cho việc gia
nhập VO.
Những tổ chức nào có tham gia vào sẽ được thiết lập nên một sự thỏa thuận nào
đó phù hợp với kiến trúc cung cấp. Lúc này, các ứng viên sẽ đăng ký những dịch vụ
của mình và đưa ra những mộ tả sơ bộ về những tính năng hỗ trợ (bao gồm cả chức
năng và phi chức năng)
b) Giai đoạn identification
Ở giai đoạn này, Business Process (BP) cần được đặt ra, nhằm đảm bảo các
thành viên tham gia phải đáp ứng được những BP này (ví dụ như: vai trị của từng
thành viên khi tham gia, tính bảo mật cũng như độ tin cậy cần thiết).
c) Giai đoạn formation
Dựa vào những thỏa thuận cũng như những ràng buộc đối với những thành viên
tham gia vào VO, mà VO được hình thành.
d) Giai đọan operation

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


29

Những hoạt động chính của VO là nằm ở giai đoàn này. Ngoài ra, hiệu suất hoạt
động cũng như những vi phạm ràng buộc của các thành viên tham gia cũng được theo
dõi trong giai đoạn này.
e) Giai đoạn evolution
Nhờ vào trigger, ngay khi có lỗi, thành viên đó sẽ bị loại khỏi VO; hoặc ngược

lại khi có yêu cầu gia nhập, dựa vào những Business Process cũng như những thỏa
thuận ban đầu mà cho phép hoặc không.
f) Giai đoạn dissolution
Giai đoạn này xảy ra khi VO cần được loại bỏ vì một lý do nào đó.

Tổ chức thơng tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


30

2 Mơ hình tổ chức và khám phá tài ngun P2P dựa trên VOs
2.1 Mơ hình 3 lớp đề xuất cho luận văn:
Đây là mơ hình tổ chức thơng tin tài nguyên trên môi trường P2P, được đưa ra
hướng đến việc gom nhóm những tài nguyên có kết nối nhau với băng thơng gần giống
nhau. Mơ hình gồm có 3 lớp cơ bản:
• Lớp thứ 1 – lớp vật lý: chứa tổ chức vật lý của các tài nguyên tính tốn. Các tài
ngun tính tốn này được quản lý và phân bổ trong từng site vật lý.
• Lớp thứ 2 – lớp P2P: thể hiện sự kết nối giữa các site với nhau trong mạng P2P.
• Lớp thứ 3 – lớp tài nguyên liên mạng: là tổ chức các tài nguyên về mặt luận lý.
Tài nguyên ở đây chính là những tài nguyên được quản lý bởi các site khác nhau
trong mạng các VOs.
Dưới đây là hình ảnh mơ tả chi tiết cho từng lớp của mơ hình đề xuất, bao gồm cả
vai trò và hoạt động của các services:
Layer 3

VO.NET 500M

VO.NET 500M
VO -VNU-500M


VO-HCMUT-500M

VO-HCMUT-10M

VO -VNU-10M
10M
VO-UNS-10M
2 0M

VO .NET 10M

VO -VNU-20M

V OMS
VO .NET 20M

Layer 2

V O.N ET Management
Service

VNU
HCMUT

10 M

50

M


1 0M

20M

10M

SMS

100M

Site Management
S ervice

UNS

Layer 1

HCMUT

VNU

IS
10
M
VO

500
M
VO


10
M
VO

500
M
VO

20
M
VO

IS

IS

Index Service

IS

VO
10
M
VO

UNS

Hình 2.1: Mơ hình 3 lớp tổ chức thơng tin tài nguyên và các services được sử dụng

Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P



31

2.1.1 Lớp vật lý
Trên thực tế, mỗi tài nguyên đều thuộc về một site vật lý nào đó. Như vậy, ở lớp
này, trong mỗi site, những VO khác nhau sẽ được hình thành và phân loại dựa vào
băng thơng kết nối giữa các host thành viên của các VO này. Có nhiều tiêu chuẩn về
băng thơng mạng có thể dùng để xây dựng các VO. Một trong những chuẩn này như:
một VO X có thể hình thành thơng qua một tập các tài nguyên có kết nối mạng với
nhau với băng thông tối thiểu là X Mbps. Từ phần này trở đi, chuẩn này sẽ được dùng
cho site VO.
Ngoài ra, thơng tin về băng thơng mạng có thể được thu thập thông qua một số
công cụ phổ biến như: netperf [6], iperf [7], hoặc ntop [8]
2.1.2 Lớp P2P
Ở lớp thứ 2 này mô tả thông tin về băng thông của các kết nối vật lý P2P giữa
các site với nhau trong mạng lưới thực. Ở đây, mỗi site được xem như một node ngang
hàng và có một tập hợp các node ngang hàng lân cận. Nhờ vậy, thơng tin có thể liên lạc
được giữa các node này với nhau.
2.1.3 Lớp tài ngun liên mạng
Ý tưởng chính cho việc mơ hình hóa lớp thứ 3 này là dựa vào việc hình thành
nên những mạng ảo mà trong đó các VOs của các site sẽ được kết nối với nhau. Những
mạng ảo này được gọi là VO.NET. Tuy nhiên, trong mỗi VO.NET, có một quy luật
ràng buộc mà các VO thành viên tham gia vào phải tuân theo, đó là các VO này phải
được thuộc cùng một loại và băng thông kết nối giữa chúng phải lớn hơn hoặc bằng
một giá trị nhỏ nhất cho phép (chính là chuẩn băng thơng của loại VO tham gia) ứng
với mỗi VO.NET.
Bên phải hình 2.1 minh họa cấu trúc các services được dùng tương ứng với từng
lớp của mơ hình. Index Service (IS) trong mỗi site chịu trách nhiệm đưa ra các thông


Tổ chức thông tin và giải thuật khám phá tài nguyên cho môi trường lưới P2P


×