Bài giảng Hệ điều hành mạng nâng cao - Hoàng Xuân Dậu - Chương 3: Hệ thống File phân tán

• Hệ thống file v à hệ thống file phân t án

• Đặt tên v à tính trong su ốt

• Các ngữ nghĩa của việc chia s ẻ

• Các phương ph áp truy nh ập từ xa

• Các vấn đề về khảnăng ch ịu lỗi

• Các vấn đề về khảnăng m ở rộng

• Giới thiệu hệ thống file phân t án của

Google (Google Distributed File System)

pdf63 trang | Chuyên mục: Hệ Điều Hành | Chia sẻ: dkS00TYs | Lượt xem: 1869 | Lượt tải: 2download
Tóm tắt nội dung Bài giảng Hệ điều hành mạng nâng cao - Hoàng Xuân Dậu - Chương 3: Hệ thống File phân tán, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
file phân tán 38
Các ngữ nghĩa của việc chia sẻ
• Các ngữ nghĩa của việc chia sẻ là một thuộc tính chỉ ra
các ảnh hưởng của việc có nhiều clients đồng thời truy
nhập một file chia sẻ.
• Một cách cụ thể, các ngữ nghĩa của việc chia sẻ chỉ ra
khi nào việc sửa đổi dữ liệu bởi một client có thể quan
sát (thấy được) bởi các clients khác.
• Đây cũng là tiêu chí quan trọng để đánh giá một hệ
thống file bất kỳ cho phép nhiều clients truy nhập các file
chia sẻ.
• File session: là chuỗi truy nhập file (Read/Write) bởi một
client trên 1 file luôn được thực hiện trong khoảng 2 thao
tác: Mở (Open) và Đóng (Close) file.
HĐH mạng nâng cao III. Hệ thống file phân tán 39
Các ngữ nghĩa của việc chia sẻ
• Các ngữ nghĩa Unix (Unix Semantics)
• Các ngữ nghĩa phiên làm việc (Session
Semantics)
• Các ngữ nghĩa của các file chia sẻ bất
biến (Immutable Shared File Semantics)
• Các ngữ nghĩa giao dịch (Transaction-
like Semantics)
HĐH mạng nâng cao III. Hệ thống file phân tán 40
Các ngữ nghĩa Unix
• Mỗi thao tác đọc một file sẽ thấy được ảnh
hưởng của tất cả các thao tác ghi được thực
hiện trước đó lên một file trong DFS.
– Cụ thể, thay đổi bởi các thao tác ghi thực hiện bởi 1
client lên 1 file xuất hiện ngay tức thì trên các client
khác cũng đang mở file này.
• Giải pháp: Các clients có thể chia sẻ một con trỏ
đến vị trí hiện tại của file trong hệ thống.
– Nếu 1 client làm dịch chuyển con trỏ này thì sẽ ảnh
hưởng đến tất cả các clients khác cùng chia sẻ con
trỏ.
HĐH mạng nâng cao III. Hệ thống file phân tán 41
Các ngữ nghĩa phiên làm việc
• Các thay đổi bởi các thao tác ghi vào 1 file
đang mở xuất hiện tức thì trên các clients
cục bộ, nhưng không xuất hiện trên các
clients ở xa cũng đang mở file này.
• Khi file được đóng lại, các thay đổi trên file
chỉ xuất hiện trong các phiên làm việc với
file bắt đầu sau thao tác này.
– Các thay đổi không xuất hiện trên các clients
đã bắt đầu các phiên làm việc trước đó.
HĐH mạng nâng cao III. Hệ thống file phân tán 42
Các ngữ nghĩa của các file
chia sẻ bất biến
• Các file chia sẻ bất biến là các file
không thể sửa đổi (chỉ đọc) khi được
chia sẻ.
• Tên file không thể được tái sử dụng
và nội dung của file không thể sửa
đổi.
HĐH mạng nâng cao III. Hệ thống file phân tán 43
Các ngữ nghĩa giao dịch
• Một file session tương đương với một
giao dịch.
• Khi một giao dịch được thực hiện, file
bị khoá (lock) cho đến khi giao dịch
hoàn tất.
• Thường dùng trong các hệ thống quản
trị CSDL.
HĐH mạng nâng cao III. Hệ thống file phân tán 44
Các phương pháp truy nhập từ xa
• Xem xét việc 1 client yêu cầu truy nhập 1 file
từ xa, cần thực hiện hai thao tác:
– Máy chủ lưu file cần được tìm thông qua hệ thống
tên
– Chuyển dữ liệu của file từ máy chủ về máy khách.
• Có hai phương pháp thực hiện việc vận
chuyển dữ liệu file:
– Dịch vụ từ xa (Remote service) và
– Lưu khay (Caching).
HĐH mạng nâng cao III. Hệ thống file phân tán 45
Dịch vụ từ xa (Remote service)
Server Client
Request
Response
HĐH mạng nâng cao III. Hệ thống file phân tán 46
Dịch vụ từ xa (Remote service)
• Client gửi yêu cầu truy nhập đến server;
• Server thực hiện truy nhập và gửi kết quả cho
client;
• Có sự tương quan giữa truy nhập và lưu lượng
mạng. Mỗi truy nhập do server thực hiện đều
phát sinh lưu lượng mạng (network traffic);
• Trong thực tế, nếu chỉ thực hiện Remote service
là không thực tế. Remote service thường được
sử dụng kết hợp với caching.
HĐH mạng nâng cao III. Hệ thống file phân tán 47
Lưu khay (Caching)
• Client lưu dữ liệu (toàn bộ hoặc một phần) của
file tại cache cục bộ trong các lần truy nhập file
trước đó để sử dụng trong các lần kế tiếp.
• Nếu client tìm thấy dữ liệu cho yêu cầu truy
nhập file trong cache, thì truy nhập được thực
hiện trên phiên bản dữ liệu lưu trong cache.
• Nếu dữ liệu cho yêu cầu truy nhập file không có
trong cache, client sẽ tải dữ liệu của file từ máy
chủ.
HĐH mạng nâng cao III. Hệ thống file phân tán 48
Lưu khay (Caching)
Server Client
Request
Response
Local
Cache
HĐH mạng nâng cao III. Hệ thống file phân tán 49
Caching (tiếp)
• Cache đạt hiệu quả cao nhất khi các truy nhập
tham chiếu có tính lân cận.
• Cần có chính sách cập nhật phiên bản chủ của
file để đảm bảo tính nhất quán giữa dữ liệu
trong cache và dữ liệu file trên máy chủ.
• Không có sự tương quan giữa truy nhập và lưu
lượng mạng.
• Trong hệ thống file cục bộ, cache được sử dụng
để giảm truy nhập vào/ra, còn trong DFS, cache
được sử dụng để giảm lưu lượng mạng.
HĐH mạng nâng cao III. Hệ thống file phân tán 50
Caching vs Remote service
• Hiệu năng
– Khi sử dụng caching:
• Một lượng lớn các truy nhập từ xa có thể được xử lý một
cách hiệu quả trong cache cục bộ.
• Nếu truy nhập file có tính lân cận thì hiệu quả càng cao.
• Hầu hết các truy nhập từ xa có thể được phục vụ với tốc
độ của các truy nhập cục bộ.
• Giảm được tải cho máy chủ và lưu lượng mạng
– Khi sử dụng remote service:
• Mỗi truy nhập phải được xử lý qua mạng
• Làm tăng tải cho máy chủ và tăng lưu lượng mạng.
• Giảm hiệu năng hệ thống
HĐH mạng nâng cao III. Hệ thống file phân tán 51
Caching vs Remote service
• Tải trên mạng (network overhead)
– Khi sử dụng caching: tổng tải mạng giảm
do dữ liệu được vận chuyển một số ít lần
với khối lượng lớn;
– Khi sử dụng remote service: tổng tải mạng
tăng do dữ liệu được vận chuyển nhiều lần
với khối lượng nhỏ theo từng yêu cầu truy
nhập cụ thể.
HĐH mạng nâng cao III. Hệ thống file phân tán 52
Caching vs Remote service
• Chu trình truy nhập đĩa
– Caching: máy chủ có thể tối ưu hoá chu
trình truy nhập đĩa nếu có các yêu cầu truy
nhập một lượng lớn các khối dữ liệu kề
nhau.
– Remote service: Khó tối ưu hoá do truy
nhập thường là ngẫu nhiên.
HĐH mạng nâng cao III. Hệ thống file phân tán 53
Caching vs Remote service
• Vấn đề đồng nhất dữ liệu là một trong các vấn
đề lớn nhất của caching.
– Caching có hiệu năng cao khi tần suất ghi thấp.
– Ngược lại, nếu tần suất ghi lớn, hiệu năng giảm
mạnh do caching phải thường xuyên cập nhật dữ
liệu file trên máy chủ để đảm bảo tính đồng nhất dữ
liệu.
• Ổ đĩa cục bộ:
– Để sử dụng caching, client phải có ổ đia cục bộ
hoặc bộ nhớ chính lớn.
– Với remote service, client không đòi hỏi phải có ổ
đĩa cục bộ.
HĐH mạng nâng cao III. Hệ thống file phân tán 54
Các vấn đề về khả năng mở rộng
• Các ví dụ về hệ thống không có khả năng
mở rộng
• Sử dụng các tiến trình “nhẹ tải” hoặc luồng
HĐH mạng nâng cao III. Hệ thống file phân tán 55
Các ví dụ về hệ thống
không có khả năng mở rộng
• Nguyên lý “tài nguyên tới hạn” (Bounded resources): Yêu
cầu cung cấp dịch vụ từ bất kỳ một bộ phận nào của một
hệ thống thường bị giới hạn bởi một hằng số. Hằng số
này là độc lập với số lượng các nút có trong hệ thống”.
– Nếu một máy chủ mà tải của nó tỷ lệ thuận với kích cỡ của hệ
thống thì nó sẽ trở thành vật gây tắc nghẽn khi hệ thống mở rộng
kích cỡ đến một giới hạn nào đó.
– Bổ sung tài nguyên không giải quyết được cở bản vấn đề do
năng lực của máy chủ này hạn chế khả năng mở rộng của hệ
thống.
– VD: Thiết kế CSS trong DFS Locus không phải là một thiết kế
scalable do CSS được gán trách nhiệm quản lý một nhóm file
(tương được component unit), và mọi thao tác mở file đều phải
thông qua CSS. Khi hệ thống đạt kích cỡ đủ lớn CSS trở thành
điểm gây tắc nghẽn.
HĐH mạng nâng cao III. Hệ thống file phân tán 56
Các ví dụ về hệ thống
không có khả năng mở rộng (tiếp)
• Nguyên lý “tài nguyên tới hạn” cũng được áp dụng trong
trường hợp của lưu lượng mạng trong hệ thống. Mạng
phát kiểu quảng bá (broadcast) thường ít được sử dụng
do việc quảng bá gói tin có liên quan đến tất cả các máy
trong mạng.
• Nghẽn và trễ mạng là các trở ngại chính trong việc xây
dựng các hệ thống có khả năng mở rộng.
– Để giảm nghẽn mạng, cần giảm đến tối thiểu giao tiếp giữa các
máy bằng các giải pháp caching, hints và thực thi các ngữ nghĩa
chia sẻ “nới lỏng”.
– Có sự tương quan giữa tính chặt chẽ của ngữ nghĩa chia sẻ
trong một DFS và tải của mạng và máy chủ. Ngữ nghĩa chia sẻ
càng chặt chẽ thì khả năng hệ thông có thể mở rộng càng thấp.
HĐH mạng nâng cao III. Hệ thống file phân tán 57
Các ví dụ về hệ thống
không có khả năng mở rộng (tiếp)
• Các giải pháp tập trung điều khiển và tập trung
tài nguyên thường làm giảm khả năng mở rộng
hệ thống. Chức năng của các máy trong hệ
thống là bất đối xứng.
– VD: các máy chủ xác thực, chủ tên và máy chủ file.
• Các máy cần có chức năng đối xứng (ngang
nhau) và có khả năng “tự trị” (autonomy). Tính tự
trị và tính đối xứng là hai thuộc tính quan trọng
trong thiết kế các DFS có khả năng mở rộng.
HĐH mạng nâng cao III. Hệ thống file phân tán 58
Sử dụng các tiến trình
“nhẹ tải” hoặc luồng
• Một trong các vấn đề lớn nhất khi thiết kế các
dịch vụ là tổ chức tiến trình của máy chủ khi có
nhiều clients truy nhập đồng thời.
• Máy chủ với một tiến trình đơn không phải là lựa
chọn tốt khi một yêu cầu bị tắc nghẽn có thể gây
tắc nghẽn toàn bộ dịch vụ.
• Gán một tiến trình cho mỗi client là lựa chọn tốt
hơn. Tuy nhiên, nó làm tăng tổng tải lên CPU.
Ngoài ra, vấn đề chia sẻ thông tin giữa các tiến
trình gặp nhiều khó khăn do chúng có không
gian địa chỉ riêng.
HĐH mạng nâng cao III. Hệ thống file phân tán 59
Sử dụng các tiến trình
“nhẹ tải” hoặc luồng (tiếp)
• Gán một tiến trình “nhẹ tải” hay luồng
(thread) cho một client là giải pháp hiệu
quả hơn cả.
– Một nhóm các threads chia sẻ mã, không
gian địa chỉ và tài nguyên hệ thống.
– Mỗi thread có riêng trạng thái các thanh ghi.
– Việc tạo và chuyển đổi giữa các threads cũng
không đắt đỏ như đối với process.
HĐH mạng nâng cao III. Hệ thống file phân tán 60
Một mô hình DFS đơn giản
HĐH mạng nâng cao III. Hệ thống file phân tán 61
Windows 2003 DFS
HĐH mạng nâng cao III. Hệ thống file phân tán 62
Giới thiệu cách cài đặt và cấu hình
DFS trên windows 2003 R2
HĐH mạng nâng cao III. Hệ thống file phân tán 63
Giới thiệu cách cài đặt và cấu hình
một cluster trên windows 2003 R2

File đính kèm:

  • pdfBài giảng Hệ điều hành mạng nâng cao - Hoàng Xuân Dậu - Chương 3 Hệ thống File phân tán.pdf