Tải bản đầy đủ (.pdf) (1,215 trang)

Nghiên cứu phát triển hệ thống tính toán lưới để hỗ trợ giải quyết các bài toán có khối lượng tính toán lớn.

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 (33.88 MB, 1,215 trang )



BỘ KHOA HỌC VÀ CÔNG NGHỆ VIỆN CÔNG NGHỆ THÔNG TIN


CHƯƠNG TRÌNH KHCN CẤP NHÀ NƯỚC KC.01/06-10

Đề tài:
NGHIÊN CỨU, PHÁT TRIỂN HỆ THỐNG TÍNH TOÁN LƯỚI
ĐỂ HỖ TRỢ GIẢI QUYẾT CÁC BÀI TOÁN
CÓ KHỐI LƯỢNG TÍNH TOÁN LỚN



Chủ nhiệm đề tài nhánh: PGS. TS. Vũ Đức Thi

Viện Công nghệ thông tin




8574

Hà Nội, 9 - 2009




1




MỤC LỤC
DANH MỤC CÁC BẢNG 5
DANH MỤC CÁC HÌNH VẼ 5
MỞ ĐẦU 9
0.1. Giới thiệu chung về tính toán lưới 13
0.2. So sánh tính toán lưới với một số mô hình tính toán khác 15
0.3. Các tổ chức tham gia vào quá trình phát triển của tính toán lưới 18
0.4. Một số dự án trên thế giới đã và đang thực hiện 19
CHƯƠNG 1. GIẢI PHÁP KỸ THUẬT, CÔNG NGHỆ VÀ KẾT NỐI CHO
VNGRID 28

1.1. Giới thiệu về Globus Toolkit 28
1.2. Kiến trúc quản lý tài nguyên trong GT 33
1.3. Các dịch vụ thông tin trong GT 35
1.4. Kết luận 52
CHƯƠNG 2. XÂY DỰNG QUI TRÌNH CÔNG NGHỆ VÀ GIẢI PHÁP
KHOA HỌC ĐỂ KẾT NỐI VỚI VNGRID 54

2.1. Mở đầu: 54
2.2. Nội dung khoa học công nghệ đã thực hiện 55
2.3. Các kết quả đã đạt được: Xây dựng một IntraGrid thử nghiệm (Tested
VNGRID) 61

2.4. Kết luận 68
2.5. Kiến nghị 69
CHƯƠNG 3. KẾT NỐI VNGRID VỚI TỔ CHỨC PRAGMA VÀ MỘT SỐ
NƯỚC KHÁC TRONG KHU VỰC 70

3.1. Mở đầu: 70

3.2. Nội dung khoa học công nghệ đã thực hiện 70
3.3. Kết luận: Các kết quả đã đạt được 76
CHƯƠNG 4. QUẢN LÝ THỰC THI CÔNG VIỆC TRÊN HỆ THỐNG
LƯỚI 79



2



4.1. Tổng quan về hệ thống quản lý thực thi trong lưới 79
4.2. Giải pháp xây dựng hệ thống quản lý thực thi trong VNGrid 83
4.3. Triển khai hệ thống quản lý thực thi trong VNGrid 88
4.4. Thử nghiệm cài đặt 97
CHƯƠNG 5. GIẢI PHÁP AN TOÀN, BẢO MẬT VÀ XÁC THỰC CHO HỆ
THỐNG LƯỚI 99

5.1. Giới thiệu về an ninh lưới 99
5.2. Hạ tầng an ninh lưới 108
5.3. An ninh hạ tầng lưới 115
CHƯƠNG 6. ACCESS GRID VÀ TRIỂN KHAI TRÊN VNGRID 120
6.1. Nghiên cứu Access Grid 120
6.2. Nghiên cứu và triển khai giao thức IP Multicast trên Grid 121
6.3. Nghiên cứu AGTK để triển khai việc truyền nhận dữ liệu đa phương tiện
trên Access Grid 121

6.4. Ứng dụng chia sẻ của Access Grid 123
6.5. Kết nối giữa các tổ chức 124
CHƯƠNG 7. TRIỂN KHAI CÔNG CỤ GIÁM SÁT LƯỚI 124

7.1. Phân tích yêu cầu để xác định chức năng cần thiết của hệ thống giám
sát 125

7.2. Dịch vụ thông tin lưới 130
CHƯƠNG 8. CÁCH THỨC LẬP TRÌNH TRÊN LƯỚI 137
8.1. Lập trình lưới hóa và phân tán trong tính toán lưới 137
8.2. Một số công cụ hỗ trợ lập trình trên lưới 140
8.3. Môi trường hỗ trợ lập trình trên lưới 144
8.4. Những mô hình lập trình và công cụ hỗ trợ 147
8.5. Một số cách thức triển khai ứng dụng trên lưới 152
CHƯƠNG 9. VNGRID PORTAL 159
9.1. Những vấn đề cần giải quyết của cổng thông tin 159
9.2. Giải pháp công nghệ cho cổng thông tin chung VNGRID 160


3



9.3. Triển khai Data Grid trên hệ thống cổng thông tin chung VNGRID .164
9.4. Triển khai các công cụ CSF (Comminity Scheduler Framework), SRB
(Storage Resource Broker) để quản lý và giám sát trênGridPortal 168

9.5. Tích hợp tài nguyên của các nút lưới vào cổng thông tin chung
VNGRID 170

9.6. Tích hợp trang thông tin của các tổ chức vào VNGRID portal 173
9.7. Kết luận 177
CHƯƠNG 10. TRIỂN KHAI DỊCH VỤ LƯỚI DỮ LIỆU 178
10.1. Tổng quan về lưới dữ liệu 178

10.2. Lưới dữ liệu và các công nghệ hỗ trợ lưới dữ liệu 180
10.3. Triển khai dịch vụ lưới dữ liệu trên VNGrid Portal 189
10.4. Kết luận 196
CHƯƠNG 11. TRIỂN KHAI BÀI TOÁN TIN SINH HỌC 197
11.1. Giới thiệu 197
11.2. Hệ thống cập nhật tự động dữ liệu từ ngân hàng dữ liệu NCBI 199
11.3. Hệ thống căn chỉnh để tìm mức độ tương đồng của các trình tự sinh
học 200

11.4. Hệ thống lập bản đồ gen trong việc chẩn đoán bệnh từ các quần thể
khác nhau 209

11.5. Hệ thống căn chỉnh nhiều chuỗi lưới hóa dựa trên việc xây dựng cây
phân loài 210

CHƯƠNG 12. NGHIÊN CỨU TRIỂN KHAI THỬ NGHIỆM BÀI TOÁN
THÁM MÃ KHỐI TRÊN HỆ THỐNG LƯỚI 218

12.1. Mô tả sơ lược sản phẩm 218
12.2. Tổng kết giải thuật song song thám mã vét cạn trên GRID 258
12.3. Giải thuật song song thám mã vét cạn trên GRID 261
CHƯƠNG 13. TRIỂN KHAI BÀI TOÁN DỰ BÁO KHÍ TƯỢNG THỦY
VĂN 263

13.1. Mở đầu 263
13.2. Nội dung khoa học công nghệ đã thực hiện 265


4




13.3. Các kết quả đạt được 266
CHƯƠNG 14. TRIỂN KHAI BÀI TOÁN THỰC TẠI ẢO 280
14.1. Vấn đề cơ bản trong bài toán thực tại ảo 280
14.2. Một số thuật toán trong thực tại ảo 282
14.3. Phân rã và tính toán lưới cho điều khiển 286
14.4. Triển khai thử nghiệm bài toán thực tại ảo trên lưới 288
14.5. Kết luận 293
CHƯƠNG 15. ĐÁNH GIÁ CHUNG VÀ HƯỚNG PHÁT TRIỂN 294
15.1. Đánh giá chung 294
15.2. Hướng phát triển 295



5



DANH MỤC CÁC BẢNG
Bảng 1.1: Các giao diện chuẩn của môt dịch vụ lưới 37

Bảng 1.2: Sự khác biệt giữa các dịch vụ thông tin trong GT2 và GT3 41
Bảng 3.1: Các đơn vị tham gia chia sẻ tài nguyên trong PRAGMA 72
Bảng 12.1: Bảng tham số hoán vị PC1 và PC1New 223
Bảng 14.1. Tọa độ của tiếp điểm trong các trường hợp 284





DANH MỤC CÁC HÌNH VẼ
Hình 0.1: Lưới tính toán 11

Hình 0.2: Lưới như một tổ chức ảo 13
Hình 0.3: Diễn đàn lưới toàn cầu GGF 18
Hình 0.4: Các tổ chức phát triển công cụ hỗ trợ lưới 19
Hình 0.5: Dự án BioGrid 20
Hình 0.6: Dự án lưới tính toán khoa học của Bộ Năng lượng, Hoa Kỳ 21
Hình 0.7: Dự án tính toán lưới trong vật lý phân tử 23
Hình 0.8: Dự án thương mại hóa tài nguyên trên lưới 24
Hình 0.9: Dự án e-Science 25
Hình 0.10: Tổ chức PRAGMA 26
Hình 1.1: Cấu trúc của GT4 29
Hình 1.2: Các dịch vụ cơ bản của GT 31
Hình 1.3: Kiến trúc Globus Toolkit 4.0 32
Hình 1.4: Quản lý tài nguyên trong GT 33
Hình 1.5: Dịch vụ định vị toàn cầu 35
Hình 1.6: Dịch vụ chỉ mục 40
Hình 1.7: Ví dụ về kiến trúc bảo mật trong GT4 44


6



Hình 1.8: Cơ chế thực hiện của GRAM 45
Hình 1.9: Mô hình của một trạm TTL 48
Hình 1.10: Globus ToolKit 4 50
Hình 2.1: Lớp các dịch vụ OGSA và WSRF 56
Hình 2.2: Kiến trúc của GT4.x 58

Hình 2.3: Mô hình phần cứng một Headnode 63
Hình 2.4: Các lớp phần mềm trung gian cài trên một head node 64
Hình 2.5: Trung tâm quản trị VNGRID 67
Hình 3.1: Mô hình phần cứng một Headnode 73
Hình 3.2: Phần mềm cài trên Headnode 74
Hình 4.1: Kiến trúc chung của hệ quản trị thực thi 81
Hình 4.2: Hoạt động của Globus Scheduler PBS 85
Hình 4.3: Giao tiếp giữa GRAM & PBS_Server 87
Hình 4.4: Mô hình hoạt động tổng quát của dịch vụ lấy thông tin từ Cluster 90
Hình 4.5: Biểu đồ mô tả quá trình đệ trình công việc 93
Hình 4.6: Biểu đồ mô tả quá trình xem trạng thái công việc 94
Hình 4.7: Biểu đồ trình tự hoạt động lấy kết quả 95
Hình 4.8: Biểu đồ mô tả quá trình hủy công việc 96
Hình 4.9: Giao diện quản lý thông tin cluster trên VNGrid Portal 97
Hình 4.10: Giao diện Lập lịch và Quản lý thực thi trên VNGrid Portal 98
Hình 5.1: Chứng chỉ số 105
Hình 5.2: Các thủ tục GSI 108
Hình 5.3: Thủ tục xác thực 111
Hình 5.4: Thủ tục ủy quyền bởi proxy của server 112
Hình 7.1: Hệ thống thông tin lưới 128
Hình 7.2: Mô hình cơ sở dữ liệu quan hệ của hệ thống thông tin lưới 130
Hình 8.1: Mô hình chia sẻ không gian bộ nhớ 138
Hình 8.2: Mô hình truyền thông điệp 139


7



Hình 8.3: Sáu cách triển khai với 3 nhóm cấp độ khác nhau 153

Hình 8.4: Cách 1 - Batch Anywhere 154
Hình 8.5: Cách 2 - Independent Concurrent Batch 155
Hình 8.6: Cách 3 - Parallel Batch 156
Hình 8.7: Cách 4 - Service 157
Hình 8.8: Cách 5 - Parallel Services 157
Hình 8.9: Cách 6 - Tightly Coupled Parallel Programs 158
Hình 9.1: Kiến trúc tổng quan của Gridsphere 161
Hình 9.2: Vòng đời của một Portlet 162
Hình 9.3: Portlet dữ liệu sẵn sàng để sử dụng 164
Hình 9.4: Portlet lưới dữ liệu trong VNGridportal 165
Hình 9.5: Liệt kê tệp tin, thư mục trong lưới 166
Hình 9.6: Tạo thư mục mới trên lưới 166
Hình 9.7: Đổi tên/thư mục trong lưới 167
Hình 9.8: Xóa tệp tin hoặc thư mục 167
Hình 9.9: Tải tệp tin lên lưới 168
Hình 9.10: Trang chủ VNGrid Portal 177
Hình 10.2: Kiến trúc lưới dữ liệu 5 tầng do Ian Foster đề xuất 183
Hình 10.3: Lấy về giấy ủy nhiệm 192
Hình 10.4: Danh sách giấy ủy nhiệm 193
Hình 10.5 Portlet lưới dữ liệu trong VNGridportal 193
Hình 10.6: Liệt kê tệp tin, thư mục trong lưới 194
Hình 10.7: Tạo thư mục mới trên lưới 194
Hình 10.8: Đổi tên/thư mục trong lưới 195
Hình 10.9: Xóa tệp tin hoặc thư mục 195
Hình 10.10 Tải tệp tin lên lưới 196
Hình 11.1: Mô hình làm việc của hệ thống 200
Hình 11.2: Sơ đồ của thuật toán PhylTree 211


8




Hình 12.1: Sơ đồ thuật toán ứng dụng các tiêu chuẩn bản rõ 221
Hình 12.3: Các bước tính toán mã hóa IDEA 224
Hình 12.4: Sơ đồ mã hóa AES 232
Hình 12.6: Sơ đồ thám mã trên GRID 238
Hình 12.7: Sơ đồ vận hành của tiến trình cấp phát và quản lý khóa 259
Hình 12.8: Sơ đồ vận hành của một tiến trình thám mã 260
Hình 13.1: Mô hình RAMS trên lưới 267
Hình 13.2: kết quả dự báo tổ hợp dữ liệu bão Chanchou 271
Hình 13.3: Phân bố lượng mưa theo dự báo tổ hợp tại các thời điểm. 275
Hình 13.4: Kết quả thử nghiệm cơn bão Megi 278
Hình 14.1: Bề mặt vật thể được chia nhỏ 286
Hình 14.2: Miếng nhận ánh sáng từ các miếng xung quanh 286
Hình 14.3: Giải thuật Ray tracing 286
Hình 14.4: Các thành phần trong hệ thống thực tại ảo 288
Hình 14.5: Sơ đồ tổng quát của một quy trình hình thành dữ liệu thực tại ảo290
Hình 14.6: Dữ liệu thực tại ảo cho mô hình Văn Miếu-Quốc Tử Giám 291
Hình 14.7: Giao diện chính của phần mềm VRAnimal 1.0 292



9



0. MỞ ĐẦU
Ngày nay, với sự phát triển vượt bậc của khoa học kỹ thuật và công nghệ
đã xuất hiện những bài toán trong nhiều lĩnh vực đòi hỏi sức mạnh tính toán

mà một máy tính riêng lẻ, dẫu có cấu hình rất mạnh không thể đảm trách được.
Xuất phát từ những nhu cầu đó, các kỹ thuật tính toán lưới hóa, tính toán phân
tán được đề xuất và đã phần nào đáp ứng
được các yêu cầu này. Tuy nhiên,
tham vọng của các nhà chuyên môn không dừng lại ở đó. Mong muốn tạo ra
một sức mạnh tính toán lớn hơn, với khả năng chia sẻ tài nguyên trên phạm vi
toàn cầu, tận dụng các phần mềm, cũng như tài nguyên vật lý phân tán về mặt
địa lý. Các tổ chức giải quyết vấn đề này bằng hai cách:
- Đầu tư thêm trang thiết bị, cơ sở hạ tầng tính toán (mua thêm máy chủ,
máy trạm, siêu máy tính, cluster ). Cách làm này h
ết sức tốn kém.
- Có một cách làm khác hiệu quả hơn đó là phân bố hợp lý lại các nguồn
tài nguyên trong tổ chức hoặc thuê thêm các nguồn tài nguyên từ bên ngoài (dự
án với chi phí rẻ hơn nhiều so với việc đầu tư cho cơ sở hạ tầng tính toán).
Thực tế cho thấy một phần lớn các nguồn tài nguyên đang được sử dụng lãng
phí: các máy để bàn công sở thường chỉ hoạt động khoảng 5% công su
ất, ngay
cả các máy chủ cũng có thể chỉ phải hoạt động với 20% công suất. Việc tận
dụng hiệu quả các nguồn tài nguyên này có thể mang lại một sức mạnh tính
toán khổng lồ
Cách giải quyết thứ hai chính là mục tiêu của tính toán lưới. Tính toán
lưới hướng đến việc chia sẻ và sử dụng hiệu quả các nguồn tài nguyên thuộc về
nhiều tổ chức trên một quy mô rộng lớ
n (thậm chí là quy mô toàn cầu). Chính
các công nghệ mạng và truyền thông phát triển mạnh mẽ trong những năm qua
đã biến những khả năng này dần trở thành hiện thực. Các nghiên cứu về tính
toán lưới đã và đang được tiến hành là nhằm tạo ra một cơ sở hạ tầng lưới cho
phép dễ dàng chia sẻ và quản lý các tài nguyên đa dạng và phân tán trong môi
trường lưới.



10



Như vậy, tính toán lưới, hiểu một cách đơn giản là sự phát triển tiếp theo
của tính toán phân tán. Mục đích là tạo ra một máy tính ảo lớn mạnh từ một tập
lớn các hệ thống không đồng nhất nhằm nâng cao khả năng tính toán, chia sẻ
các tài nguyên khác nhau.
Các nhà khoa học tại Argone National Labs thuộc đại học Chicago (Mỹ)
là những người đầu tiên đề xuất ý tưởng về tính toán lưới. Thuật ngữ lưới ở
đây
xuất phát từ lưới điện (electricity grid), ngụ ý rằng bất cứ một thiết bị tương
thích nào đều có thể gắn vào trong lưới và được xếp ở một mức tài nguyên nào
đó mà không cần quan tâm đến nguồn gốc của tài nguyên đó. Trong tương lai,
tính toán lưới có thể cung cấp cho người sử dụng các dịch vụ đóng vai trò như
là dịch vụ cơ sở hạ tầng sử d
ụng hàng ngày như điện, nước, giao thông
Các công nghệ mạng và truyền thông phát triển mạnh mẽ trong những
năm qua biến những khả năng này dần trở thành hiện thực. Các nghiên cứu về
tính toán lưới đã và đang được tiến hành là nhằm tạo ra một cơ sở hạ tầng lưới
cho phép dễ dàng chia sẻ và quản lý các tài nguyên đa dạng và phân tán trong
môi trường lưới. Hai nhóm gồm Globus Alliance (được sự tài trợ của m
ột vài
trường đại học tại Mỹ như đại học Chicago, đại học Berkeley ) và Global Grid
Forum (các thành viên bao gồm các hãng lớn như IBM, Sun, MicroSoft ) là
các trung tâm nghiên cứu đáng chú ý hiện nay. Các nhóm này đã tạo ra các
chuẩn mã nguồn mở và các giải pháp phần mềm cho công nghệ mới mẻ này.
Ðó là một nền tảng (framework) để các thành phần trong lưới có thể giao tiếp
được với nhau, trong đó:

- Globus Alliance tạo ra bộ công cụ Globus Toolkit (GT) mã nguồn mở,
bao gồm các thư viện ph
ần mềm và các dịch vụ cho phép người phát triển tạo
ra các ứng dụng lưới. Thư viện của GT cung cấp các hàm đảm bảo vấn đề như
an ninh, cơ sở hạ tầng thông tin, quản lí tài nguyên lưới, tính tin cậy, tính
khả chuyển
- Global Grid Forum quản lí các tiến trình chuẩn cho việc đặc tả kiến


11



trúc các dịch vụ lưới OGSA (Open Grid Services Architecture) và OGSI (Open
Grid Services Infrastructure). Các chuẩn OGSA, OGSI và bộ cung cụ Globus
Toolkit giúp cho các nhà phát triển triển khai một cách thuận tiện các giải pháp
tính toán lưới trong nhiều lĩnh vực nghiên cứu chuyên sâu ở Mỹ và châu Âu
như: dự án tìm kiếm các tín hiệu ngoài trái đất SETI (Search for Extraerrestrial
Intelligence), dự án về nghiên cứu bản đồ gen người, dự án IPG (Information
Power Grid) của NASA Ðó là những ứng dụng tiêu biểu tạo sự thành công
ban đầu của tính toán lưới trong giai đoạn nghiên cứu.

Hình 0.1: Lưới tính toán
Hình 0.1 là một ví dụ về lưới, như một mạng liên kết các tài nguyên
phân tán về mặt địa lý, các tài nguyên rất phong phú, đa dạng, bao gồm tập các
siêu máy tính, các thiết bị truyền thông vệ tinh, các kho lưu trữ, các cluster tính
toán hiệu năng cao, các tổ chức ảo liên kết trong lưới. Người dùng trong lưới
cũng hết sức đa dạng, từ các người dùng thông thường, cho tới các người dùng
chuyên dụng, có kiến thức sâu về chuyên môn như
các nhà nghiên cứu, các nhà

khoa học Và lưới chính là sự tập hợp, chia sẻ, chọn lựa các nguồn tài nguyên


12



này thông qua một chính sách thống nhất, phân phối các siêu máy tính và các
hệ cluster để đạt hiệu năng tốt hơn trong tương lai.
Các thách thức mà công nghệ tính toán lưới đang phải giải quyết
bao gồm:
- Các tài nguyên hết sức đa dạng, không đồng nhất. Tài nguyên ở đây
được hiểu theo nghĩa hết sức tổng quát. Đó có thể là các tài nguyên phần cứng:
tài nguyên tính toán, tài nguyên lưu trữ, các thiết bị đặc biệt khác ; các tài
nguyên phần mềm: các CSDL, các phầ
n mềm đặc biệt và đắt giá ; các đường
truyền mạng
Các tài nguyên này có thể rất khác nhau về mặt kiến trúc, giao diện, khả
năng xử lý Việc tạo ra một giao diện thống nhất cho phép khai thác và sử
dụng hiệu quả các nguồn tài nguyên này là hoàn toàn không dễ dàng.
Ban đầu tính toán lưới được đặt ra chủ yếu là để tận dụng các nguồn tài
nguyên tính toán nhưng hiện nay mục tiêu của nó đã được mở rộng sang rấ
t
nhiều nguồn tài nguyên khác như đã kể trên.



13




Hình 0.2: Lưới như một tổ chức ảo
- Các tài nguyên không chỉ thuộc về một tổ chức mà thuộc về rất nhiều
tổ chức tham gia lưới. Các tổ chức phải tuân thủ một số quy định nhất định khi
tham gia vào lưới, nhưng nói chung là hoạt động độc lập, tức là các tài nguyên
này đều có quyền tự trị. Các tổ chức khác nhau thường có chính sách sử dụng
hay cho thuê tài nguyên của họ khác nhau và do vậy c
ũng gây khó khăn cho
việc quản lý.
- Các tài nguyên phân tán rộng khắp về mặt địa lý, do vậy phải có các cơ
chế quản lý phân tán.
- Đảm bảo an toàn thông tin cho một môi trường phức tạp như môi
trường lưới là rất khó khăn, trong khi đây là một trong những điểm ưu tiên
hàng đầu.
Theo Ian Foster, một hệ thống lưới là hệ thống có 3 đặc điểm chính sau:
- Phối hợp các tài nguyên phân tán từ nhiều miền qu
ản trị khác nhau.
- Sử dụng các chuẩn mở và các giao thức mở.
- Mang lại cho người dùng chất lượng dịch vụ không tầm thường.
Điểm thứ 2 rất đáng lưu ý. Vì lưới là một môi trường thu hút nhiều tổ
chức tham gia nên không thể coi nhẹ vai trò của các chuẩn mở và các giao thức
mở, cũng giống như việc sử dụng các chuẩn này đã giúp cho mạng Internet
bùng nổ mạnh mẽ trong những n
ăm 90 của thế kỉ trước.
0.1. Giới thiệu chung về tính toán lưới
Tính toán lưới (TTL) có nghĩa là tất cả hoặc một phần của nhóm máy
tính và thiết bị lưu trữ trong mạng được “ảo hóa” (virtualized) thành một máy
tính lớn. Khi một người sử dụng chiếc máy tính cá nhân tham gia, đóng góp
sức mạnh xử lý trong một mạng lưới, muốn chạy một ứng dụng đòi hỏi thêm
sức mạ

nh xử lý. Công việc vốn được giải quyết trên chiếc máy đó, sẽ được tự
động phân bổ cho các máy khác trong lưới đang “rảnh rỗi”, không bị trưng
dụng tài nguyên tính toán vào công việc nào khác.


14



Với quan điểm đó, các trường đại học, viện nghiên cứu lớn trên thế giới,
thay vì thành lập các trung tâm tính toán hiệu năng cao sẽ thành lập các trung
tâm tính toán lưới (Center for Grid Computing). Các trung tâm này không giới
hạn trong phạm vi một trường, một viện nghiên cứu, mà được kết nối với
những trung tâm ở nhiều địa điểm khác nhau. Tháng 8/2001, Ủy ban Khoa học
Quốc gia Mỹ (NFS) đã xây dựng một lưới tính toán nối các siêu máy tính trên
toàn quốc thành mộ
t nguồn xử lý tính toán có tên gọi Distributed Terascale
Facility do Trung tâm Siêu máy tính Quốc gia (NCSA) quản lý, có thể triển
khai các tính toán và truy cập vào hệ thống tính toán lưới qua cổng thông tin
(Information Portal).
Các Công ty lớn như IBM, từ năm 2001 đã đưa vào kế họach xây dựng
50 trung tâm tính toán lưới trên toàn thế giới với chi phí tổng cộng trên 4 tỷ đô
la. Hãng Sun Microsystems có dự án mã nguồn mở Grid Engine sau khi mua
lại Công ty GridWare vào tháng 7/2001.
Các nhà vật lý phân tử ở Anh xây dựng một hệ thống grid khổng lồ vào
12/2004 ở Nottingham, gọi là GridPP. Mạng máy có tên
Large Hadron
Collider Computing Grid (LCG) được thiết lập từ hơn 6.000 máy tính phân bố
ở nhiều vị trí trên toàn thế giới. Dự án tính toán lưới GridPP tập hợp 1.000
chiếc của các nhà vật lý Anh từ 12 địa điểm khác nhau. Ngoài ra, Large

Hadron Collider (LHC) được xây dựng tại trung tâm nghiên cứu CERN của
Thụy Sĩ. Các thí nghiệm vật lý hạt nhân được thực hiện sẽ tạo ra những lượng
dữ liệu khổng lồ: khoảng 13 petabyte mỗi năm (1 petabyte = 1.024 terabyte,
tức là hơn 1.000.000 gygabyte). LCG gắn với một phương thức xử lý dữ liệu
trên lưới chứ không thuần túy là một cỗ máy, siêu máy tính thực sự và tốn kém.
Theo Hội đồng nghiên cứu thiên văn và vật lý hạt nhân Anh (PPARC), đến năm
2007, LCG sẽ có sức mạnh tương đương 100.000 máy tính nhanh nhất hiện
nay được kết hợp lại và tạo ra một siêu máy tính ảo. Thiết bị này có thể được
mở rộng và phát triển thêm nế
u cần thiết. Các kỹ sư tham gia dự án GridPP


15



phát triển bộ phận tải các nhiệm vụ tính toán, luân chuyển bên trong LCG. Tại
những điểm thích hợp nhất, thực thi các chương trình ứng dụng và gửi trả kết
quả trong thời gian thực.
0.2. So sánh tính toán lưới với một số mô hình tính toán khác
0.2.1. World Wide Web
WWW hiện nay đang phát triển mạnh mẽ và được sử dụng rộng khắp.
Sử dụng các chuẩn mở và các giao thức mở (TCP, HTTP, XML, SOAP).
WWW có thể đượ
c sử dụng để xây dựng các tổ chức ảo. Tuy nhiên, nó vẫn còn
thiếu một số đặc tính quan trọng như các cơ chế chứng thực một lần, ủy nhiệm,
các cơ chế phối hợp sự kiện
0.2.2. Các hệ thống tính toán phân tán
Các công nghệ tính toán phân tán hiện tại bao gồm CORBA, J2EE và
DCOM khá thích hợp cho các ứng dụng phân tán. Tuy nhiên, chúng không

cung cấp một nền tảng phù hợp cho việc chia sẻ tài nguyên giữa các thành viên
củ
a tổ chức ảo. Một số khó khăn có thể kể ra là khai phá tài nguyên, đảm bảo
an ninh và xây dựng động các tổ chức ảo. Tuy nhiên, đã có một số nghiên cứu
nhằm mở rộng những công nghệ này cho môi trường lưới như Java JINI.
0.2.3. Các nhà cung cấp dịch vụ ứng dụng và dịch vụ lưu trữ
Các nhà cung cấp ứng dụng và dịch vụ lưu trữ thường cung cấp cho
người dùng mộ
t số ứng dụng cụ thể nào đó cũng như không gian lưu trữ.
Người dùng tương tác với nhà cung cấp dịch vụ thông qua mạng riêng ảo
(VPN) hoặc các đường truyền dành riêng và vì vậy loại bỏ được rất nhiều nguy
cơ về an toàn bảo mật. Do vậy, khi sử dụng loại dịch vụ này, ngữ cảnh thu hẹp
hơn tính toán lưới rất nhiều.
0.2.4. Các hệ thống tính toán ngang hàng
Tính toán ngang hàng là m
ột tiếp cận trong tính toán phân tán. Các hệ
thống tính toán ngang hàng phổ biến hiện nay là SETI@home hay các mạng
ngang hàng chia sẻ tập tin như Napster, Kazaa, Morpheus và Gnutella. Điểm


16



khác biệt chính giữa tính toán ngang hàng và tính toán phân tán là: cộng đồng
người sử dụng hướng tới: Tính toán lưới có cộng đồng người sử dụng có thể
nhỏ hơn, nhưng tập trung vào các ứng dụng và có yêu cầu cao hơn về an ninh
cũng như tính toàn vẹn của ứng dụng. Trong khi đó, các hệ thống mạng ngang
hàng có thể có số người sử dụng rất lớn, bao gồm cả các người dùng đơn lẻ và
các t

ổ chức. Tuy nhiên, không đòi hỏi cao về an ninh và mô hình chia sẻ tài
nguyên cũng đơn giản hơn.
Ngoài ra, môi trường lưới liên kết các nguồn tài nguyên mạnh hơn, đa
dạng hơn và chặt chẽ hơn.
0.2.5. Công nghệ tính toán hiệu năng cao
Như đã nói ở trên, để giải quyết những bài toán lớn người ta có thể đầu
tư cho cơ sở hạ tầng tính toán. Để giải quyết những bài toán rất lớ
n và phức
tạp, người ta phải xây dựng những hệ thống siêu máy tính. Các hướng nghiên
cứu trong tính toán hiệu năng cao chủ yếu bao gồm:
- Nghiên cứu chế tạo những siêu máy tính tuần tự đơn bộ vi xử lý với tốc
độ rất cao. Cách làm này gặp phải các giới hạn về vật lý như độ truyền dẫn của
bán dẫn, tốc độ điện từ, nhiễu điện t

- Nghiên cứu chế tạo các siêu máy tính lưới hóa bao gồm rất nhiều bộ xử
lý hoạt động lưới hóa trên một bảng mạch chủ. Cách làm này đòi hỏi phải có
những phần mềm thích hợp để tận dụng năng lực tính toán của hệ thống ví dụ:
hệ điều hành lưới hóa phân tán, trình biên dịch lưới hóa, ngôn ngữ lập trình
lưới hóa Tuy nhiên, việc nghiên cứu chế tạo ra các siêu máy tính nói chung
mới chỉ
được thực hiện ở các nước phát triển và giá thành của một hệ thống
siêu máy tính như vậy (bao gồm cả phần cứng lẫn phần mềm hệ thống, công cụ
phát triển) có thể lên đến hàng triệu đô la. Xây dựng hệ thống tính toán hiệu
năng cao bằng cách kết nối nhiều máy tính thông thường với nhau thành một
cluster. Bằng cách này trung tâm CDAC của Ấn Độ đã tạo ra được siêu máy
tính xếp thứ
173 trong số top 500 siêu máy tính của thế giới. Trung tâm NCHC


17




của Đài Loan tạo ra được siêu máy tính đứng thứ 40 trong số top 500 siêu máy
tính của thế giới, tính trước thời điểm 2007.
Ngữ cảnh của các cluster hẹp hơn hệ thống tính toán lưới rất nhiều, thể
hiện ở các điểm sau:
- Trước hết các cluster thuộc về một tổ chức, các tài nguyên của cluster
là các máy tính thường là đồng nhất về mặt kiến trúc, hệ điều hành, khả nă
ng
xử lý phân bố trên một giới hạn địa lý rất hẹp (ví dụ trong một phòng máy)
và được liên kết với nhau bởi các mạng LAN tốc độ cao (cỡ vài trăm Mbits –
Gbits), nói chung có độ tin cậy cao. Ngược lại, lưới bao gồm tập hợp rất nhiều
tài nguyên đa dạng, không đồng nhất, thuộc nhiều tổ chức, phân tán về mặt địa
lý được liên kết với nhau bởi các mạng diện rộng có tố
c độ thấp hơn và mức độ
tin cậy kém hơn.
- Trong cluster các vấn đề về an ninh không được coi trọng. Vấn đề chủ
yếu là làm sao để có được hiệu năng cao và không cần thiết phải hy sinh một
phần hiệu năng vì các thủ tục an ninh (vì cluster chỉ thuộc về một tổ chức và
chỉ nằm trong một phòng máy). Trong khi đó vấn đề an ninh là một trong
những vấn đề quan trọng nhất mà tính toán l
ưới phải giải quyết.
- Trong cluster người ta có thể làm mọi thứ để đổi lấy hiệu năng, chẳng
hạn tối ưu hóa phần cứng phần mềm, sửa đổi nhân hệ điều hành hoặc viết hẳn
những hệ điều hành chuyên biệt, thay đổi giao thức Tính toán lưới không đặt
vấn đề hiệu năng lên hàng đầu mà chủ yếu tập trung vào việc làm sao phân bổ
và s
ử dụng hiệu quả các nguồn tài nguyên. Tất nhiên, khi đã đạt được mục tiêu
đó, tính toán lưới cũng mang lại hiệu năng rất cao, thậm chí hơn nhiều lần các

siêu máy tính hiện có và chủ yếu là do quy mô cực kỳ rộng lớn của nó.
Cuối cùng, cũng cần phải nói rằng tính toán lưới không phải là chìa khóa
vạn năng dùng để giải quyết mọi vấn đề. Nó được dùng để bổ trợ chứ không
phải là thay thế hoàn toàn các công nghệ tính toán hiện tại. Các công nghệ tính
toán đã tồn tại cũng đã giải quyết từng phần các yêu cầu do tính toán lưới đặt ra


18



(các yêu cầu về chia sẻ tài nguyên phân tán), tuy nhiên tính toán lưới hiện nay
có thể giải quyết các vấn đề đó một cách tập trung và bài bản hơn với một ngữ
cảnh rộng hơn rất nhiều.
0.3. Các tổ chức tham gia vào quá trình phát triển của tính toán lưới
Các tổ chức tham gia vào quá trình phát triển của tính toán lưới có thể
chia ra làm bốn nhóm lớn sau:
0.3.1. Các tổ chức phát triển các chuẩn cho lưới
Đại diện cho nhóm này là diễn đàn l
ưới toàn cầu (GGF – Global Grid
Forum) và các tổ chức chuẩn hóa quốc tế khác như OASIS (Organization for
the Advancement of Structured Information Standards), W3C (World Wide
Web Consortium), IETF (the Internet Engineering Task Force) và DMTF (the
Distributed Management Task Force). Hiện nay một trong những hoạt động
chính của GGF là phát triển chuẩn dịch vụ lưới OGSA.






Hình 0.3: Diễn đàn lưới toàn cầu GGF
0.3.2. Các tổ chức phát triển các bộ công cụ, framework và middleware
Bao gồm nhiều trường đại học, các viện nghiên cứu. Các tổ chức này đã
cho ra đời rất nhiều các bộ công c
ụ phát triển lưới như Legion, Condor,
Nimrod, Unicore, Globus


19



Hình 0.4: Các tổ chức phát triển công cụ hỗ trợ lưới
0.3.3. Các tổ chức xây dựng và sử dụng các giải pháp lưới
Có thể kể ra một số lưới tiêu biểu trên thế giới như: NASA Information
Power Grid của NASA, Science Grid của bộ quốc phòng Mỹ, dự án EuroGrid
của liên minh châu Âu với nhiều lưới con như Bio Grid, Metro Grid,
Computer-Aided Engineering (CAE) Grid, High Performance Center (HPC)
Research Grid, Terra Grid của tổ chức Quỹ nghiên cứu khoa học Quốc gia
(NSF).
0.3.4. Các tổ chức đư
a công nghệ lưới vào sản phẩm thương mại
Trong nhóm này có nhiều công ty hợp tác trong ngành công nghiệp máy
tính như IBM, SUN, HP, Các hãng này đưa ra nhiều giải pháp khác nhau dựa
trên nền công nghệ tính toán lưới. Hiện nay trên thế giới đã có sự phân biệt
giữa công nghệ tính toán lưới mang tính hàn lâm và công nghệ tính toán lưới
trong doanh nghiệp.
0.4. Một số dự án trên thế giới đã và đang thực hiện
Dự án BioGrid: Đây là dự án thực hiện bởi trườ
ng Đại học Osaka, nằm

trong chương trình công nghệ thông tin của chính phủ Nhật Bản, với sự phối
hợp giữa các bộ giáo dục, văn hóa, thể thao, khoa học và công nghệ. Dự án như
là một bước khởi đầu để xây dựng mạng siêu máy tính nhằm giải quyết những
vấn đề của sinh học và y khoa đặt ra. Dự án bao gồm 3 mục tiêu chính:


20




Hình 0.5: Dự án BioGrid
- Phân tích để triển khai một mạng siêu máy tính.
- Nghiên cứu về công nghệ lưới dữ liệu (data grid technology) cho phép
giải quyết các bài toán với những kiểu dữ liệu khác nhau của các cơ sở
dữ liệu lớn.
- Nghiên cứu về công nghệ tính toán lưới (computing grid technology)
qua đó tham gia giải quyết những bài toán xử lý dữ liệu đòi hỏi nguồn tài
nguyên tính tính toán rất mạnh (ultra high-speed computing).


21



Dự án DOE Science Grid: Dự án này của Bộ Năng lượng, Hoa Kỳ
(Hình 0.6). Đây là dự án được xây dựng quy mô lớn nhằm phối hợp giữa nhiều
cơ quan khoa học của Mỹ. Nhằm tạo cơ sở hạ tầng công nghệ thông tin
(cyberinfrastructure) phục vụ cho việc phát triển và triển khai các lĩnh vực tính
toán phân tán (distributed computing), xử lý dữ liệu và khai thác nguồn tài

nguyên công cụ (instrument resources). Mục tiêu dự án bao gồm:
- Cung cấp khả năng xử
lí tính toán của các bài toán khoa học đòi hỏi
thời gian tính toán lớn.
- Cung cấp khả năng xử lý dữ liệu độc lập với vị trí địa lý yêu cầu và tạo
ra một sự quản trị trong suốt đối với người yêu cầu và hệ thống.
- Tạo môi trường truyền thông trên cơ sở những nền tảng đã có để tạo sự
trong suốt giữa hệ thống và người sử
dụng.
- Tạo môi trường để khai thác và chia sẻ phần mềm, công cụ để tính toán
và xử lý dữ liệu.

Hình 0.6: Dự án lưới tính toán khoa học của Bộ Năng lượng, Hoa Kỳ


22



Dự án GridPP được xây dựng nhằm phồi hợp hợp tác giữa các nhà vật
lý phân tử và các nhà nghiên cứu tin học của 19 trường đại học của Vương
quốc Anh (UK) và CERN (European Organization for Nuclear Research). Dự
án nhằm khảo sát những bài toán lớn chẳng hạn chuẩn bị dữ liệu cho các trận
lũ lụt lớn quy mô như đại hồng thủy. Dự án này bắt đầu từ năm 2001 và giai
đoạn 2 bắt đầu t
ừ 01/2004, kết thúc vào năm 2007. Mục tiêu ban đầu của
dự án:
- Phát triển các ứng dụng và cho phép những nhà vật lý phân tử sử dụng
hệ thống lưới để phân tích dữ liệu.
- Xây dựng các phần mềm trung gian (middleware) để quản trị hoạt động

trên môi trường tính toán lưới và cả những vấn đề an toàn, an ninh của hệ
thống.
- Triển khai cơ sở hạ tầng tính toán trong toàn Vương quốc Anh theo
khuôn mẫu lướ
i tính toán.
Mặc dù xuất phát từ như cầu của những nhà vật lý phân tử, nhưng hệ
thống về sau cũng được sự tham gia của các nhà khoa học trong các lĩnh vực
khác. Từ đó đã hình thành nên một tổ chức ảo (VO – Virtual Organization),
động lực quan trọng trong việc xây dựng các hệ thống tính toán lưới. Từ đó đã
hình thành nên hệ thống UK Grid, mà GridPP và các dự án khác như AstroGrid
(nghiên cứu thiên văn), BioSimGrid (sinh học), IXI (y tế) và các dự án công
nghi
ệp (DAME, G-Civil, GEODISE) là những bộ phận. Hệ thống này như có
tên gọi NGS – UK National Grid Service ( />), nhằm cung
cấp nguồn tài nguyên tính toán và lưu trữ cho các nhà khoa học.


23




Hình 0.7: Dự án tính toán lưới trong vật lý phân tử
Dự án Economy Grid – ECOGRID: Sự phát triển nhanh chóng của Grid
còn đưa đến một lĩnh vực nghiên cứu mới đó là thương mại hóa tài nguyên trên
Grid, cụ thể là tài nguyên tính toán, tài nguyên lưu trữ và các dạng tài nguyên
khác như phần mềm, thiết bị chuyên dụng. Trong hướng nghiên cứu này, cần
tìm ra các cơ chế cho phép người sở hữu tài nguyên và người sử dụng tài
nguyên có diễn tả các yêu cầu về chất lượng, kh
ối lượng tài nguyên (người

dùng) cũng như giá cả, chính sách quản lý (người sở hữu) trong điều kiện tách
biệt về thời gian (múi giờ) và không gian. Để có thể thương mại hóa, tài
nguyên Grid cần phải có các yếu tố: thị trường để quảng bá thông tin về tài
nguyên, mô hình để định giá tài nguyên, giao thức để thương lượng, các cơ chế
kế toán, chi trả. Dự án Economy Grid – ECOGRID
( nằm trong số các ứng dụng thuộc dạng đ
ó


24




Hình 0.8: Dự án thương mại hóa tài nguyên trên lưới
Dự án e-Science của Anh: Bên cạnh các dự án, ý tưởng xây dựng môi
trường khoa học điện tử e-Science cũng đã hình thành. Các quốc gia như Anh
Quốc, Hàn Quốc, Singapore, Thái Lan là những minh chứng về vấn đề này,
chẳng hạn, dự án e-Science đặt tại Imperial College, Anh. Đây là một trong
những dự án được đánh giá thành công, được nhiều nơi trên thế giới tìm hiểu
và học tập. Mặc dù thu
ật ngữ này mới ra đời trong các cuộc hội thảo, trao đổi
giữa các nhà khoa học, nhưng từ năm 2004 đã được sử dụng chính thức. Thực
chất là một hạ tầng công nghệ thông tin cho các ngành khoa học phát triển. E-
Science có thể đồng nhất với khái niệm Grid, nó như là sự tập hợp lại các dịch
vụ trung gian hoạt động trên môi trường mạng toàn cầu, băng thông rộng có
khả năng hỗ tr
ợ cộng đồng nghiên cứu – phát triển, phát minh – sáng chế.

×