Ôn thi Hệ phân tán cuối kỳ

49 1K 1
Ôn thi Hệ phân tán cuối kỳ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục lục Mục lục .1 Phần Tổng Quan Về Hệ Phân Tán 1.1 Định nghĩa Phần Kiến trúc hệ phân tán Phần Tiến trình (Processes) 10 3.1 Luồng (Thread) 10 3.2 Di trú mã 11 Phần Truyền thông (Communication) 12 4.1 Các giao thức phân tầng (Layered protocols) 12 4.2 Gọi thủ tục từ xa (Remote procedure call - RPC) .13 4.3 Các mô hình RFC mở rộng 14 4.3.1 RFC dị (Asynchronous RPC) 14 4.3.2 RPC đồng trễ (Deferred synchronuos RPC): 14 4.3.3 RPC đơn tuyến (one- way RPC) 14 4.4 Triệu gọi đối tượng từ xa (Remote object invocation) .14 4.4.1 Đối tượng phân tán (Distributed object) 14 4.4.2 Các bước thực triệu gọi đối tượng từ xa 15 4.5 Truyền thông hướng thông điệp (Message - oriented communication) 16 4.5.1 Các loại truyền thông 16 4.5.2 Một số loại truyền thông hổ hợp .16 4.6 Truyền thông hướng dòng (stream- oriented communícation) 17 4.6.1 Một số khái niệm bàn 17 4.6.2 QoS - chất lượng dịch vụ 17 4.7 Đồng dòng 18 Phần Định danh (Naming) 18 5.1 Các thực định danh (Naming Entities) 18 5.1.1 Tên, định danh địa 18 5.1.2 Độ phân giải tên .19 5.1.3 Thực không gian tên 19 5.2 Định vị thực thể di động 20 5.2.1 Tên việc định vị thực thể .20 5.2.2 Các giải pháp định vị thực thể 21 5.3 Xóa bỏ thực thể không tham chiếu (Unreferenced Entities) 22 5.3.1 Đếm tham chiếu (Reference Counting) 22 5.3.2 Lên danh sách tham chiếu (Reference Listing) 22 Phần Đồng hóa (Synchronization) 22 6.1 Đòng hóa đồng hồ (Clock Synchronization) 22 6.1.1 Đồng hồ vật lý (Physical Clock) 22 6.1.2 Các giải thuật đồng hóa vật lý (Clock synchronization algorithm) 22 6.2 Đồng hồ logic (Logical Clock) 23 6.2.1 Nhãn thời gian Lamport (Lamport timestamps) 23 6.2.2 Vector thời gian (Vector Timestamps) 24 6.3 Trạng thái tổng thể (Global sate) 24 6.4 Các giải thuật bầu chọn (Election Algorithm) 25 6.4.1 Giải thuật áp đảo (Bully Algorithm) 25 6.4.2 Giải thuật vòng (Ring Algorithm) 25 6.5 Loại trừ (Mutual Exclusion) .25 6.5.1 Giải thuật tập trung (Centralized Algorithm) 25 6.5.2 Giải thuật phân tán (Distributed Algorithm) 26 6.5.3 Giải thuật vòng với thẻ (TokenRing Algorithm) 26 6.6 Các giao tác phân tán (Distributed Transactions) .26 6.6.1 Phân loại giao tác .27 6.6.2 Điều khiển tương tranh: 27 Phần Sao lưu 27 Phần Chịu lỗi (Fault Tolerance) .27 8.1 Chịu lỗi số khái niệm liên quan .27 8.1.1 Một số khái niệm bàn 27 8.1.2 Các mô hình lỗi 28 8.2 Các phương pháp che giấu lỗi 29 8.2.1 Che giấu lỗi dư thừa 29 8.2.2 Khôi phục tiến trinh 29 8.2.3 Che giấu lỗi truyền thông clien server tin cậy 30 8.2.4 Che giấu lỗi truyền thông nhóm tin cậy (dùng multicasting) 32 8.3 Cam kết phân tán 34 8.3.1 Cam kết hai pha 34 8.3.2 Cam kết pha 34 8.4 Phục hồi 35 − − − − Phần Tổng Quan Về Hệ Phân Tán 1.1 Định nghĩa Có nhiều định nghĩa hệ phân tán Định nghĩa 1: Hệ phân tán tập hợp máy tính tự trị kết nối với mạng máy tính cài đặt phần mềm hệ phân tán Định nghĩa 2: Hệ phân tán hệ thống có chức liệu phân tán trạm (máy tính) kết nối với mạng máy tính Định nghĩa 3: Hệ phân tán tập máy tính độc lập giao tiếp VỚI người dùng hệ thống thống nhẩt, toàn vẹn Như vậy, nói : Hệ phân tán = mạng máy tính + phần mềm hệ phân tán Phân loại hệ phân tán: Trước đây, hệ phân tán chia thành ba loại : hệ điều hành hệ phân tán, sở liệu hệ phân tán hệ thống tính toán hệ phân tán Ngày nay, hệ phân tán phân chia sau: • Hệ phân tán mang tính hệ thống: hệ điều hành phân tán • Hệ phân tán mang tính ứng dụng: hệ thống truyền tin phân tán Mục tiêu hệ phân tán • Kết nối người sử dụng tài nguyên : Giải toán chia sẻ tài nguyên hệ thống (resource sharing) • Tính suốt : Ẩn giấu rời rạc nhược điểm có hệ phân tán người sử dụng (end-user ) nhà lập trình ứng dụng (application programmer) Theo tiêu chuẩn ISO cho hệ phân tán ISO / IS / 10746 tên "Open distributed processing reference model" 1995 cụ thể hóa tám dạng suốt: Trong suốt truy cập (Access transparency): che giấu khác biệt cách biểu diễn cách truy cập tài nguyên Trong suốt vị trí (Location transparency): che giấu vị trí tài nguyên Hai dạng suốt vừa trình bày gọi chung suốt mạng (network transparency) Trong suốt di trú (Migration transparency): che giấu khả chuyển vị trí cùa tài nguyên Trong suốt việc định vị lại (Relocation transparency): che giấu việc di chuyển tài nguyên sử dụng Trong suốt nhân (Replication transparency): che giấu tình trạng tình trạng sử dụng cùa tài nguyên Che giấu che sẻ tài nguyên tương tranh (Concurency transparency) Trong suốt cố (Failure transparency): che giấu lôi hệ thống có Trong suốt khả di chuyển tài nguyên (Persistence transparency): che giấu việc di chuyển tàl nguyên từ nhớ vào nhớ ngược lại • Tính mở (Openness) Hệ phân tán gọi mở cung cấp dịch vụ theo quy tắc chuẩn mô tả cú pháp ngữ nghĩa cúa dịch vụ Thông thường hệ phân tán dịch vụ thường đặc tả qua giao diện ngôn ngữ đặc tả giao diện (Interface Definition Language- IDL) quan tâm đến cú pháp Nó cho phép dịch vụ khác chung sống Nếu giao diện cùa hệ phân tán đặc tả đầy đủ đắn Xét hai khái niệm hệ phân tán khái niệm liên tác (Interroperabllity) khái niệm chuyển mang (portability) Liên tác: cài đặt hệ thống thành phần hệ thống từ nhà sản xuất khác làm việc với thông qua liên tác Chuyển mang: nhờ chuyển mang mà ứng dụng phát triển cho hệ phân tán A thực không cần thay đổi hệ phân tán B khác, với điều kiện cài đặ giao diện A • Tính co giãn (Scalability) Một hệ phân tán gọi có tính co giãn thích nghi với thay đổi quy mô hệ thống Thể khía cạnh sau: Dễ bô sung người sử dụng tài nguyên hệ thống • Khi hệ thống thay đổi quy mô mặt địa lý dẫn đến thay đổi vị trí địa lý người sử dụng tài nguyên - Hệ thõng có thay đổi quy mô quản trị • Nếu hệ phân tán có tính co giãn thường ảnh hưởng đến hiệu hệ thống (hiệu hệ thống hiệu quà lực hoạt động cùa đối tượng) Có ba giải pháp phổ dụng đề giái quyet vấn đề co giãn hệ phân tán: • Ẩn giấu • Phân tán: phân nhỏ thành phần hệ thống phân bố chúng phạm vi hệ thống (quản lý phân cấp) Ví dụ DNS xác định theo cách phân cấp miền lớn thành miền với phương pháp giải đề thêm người dùng hay tài nguyên vào hệ thống • Nhân bản: nhân thành phần hệ thống, ví dụ tài nguyên liệu đặt vị trí khác hệ thống Các khái niệm phần cứng • Phân loại máy tính: Có hai loại máy tính: • Các loại máy tính có chia sẻ nhớ (Shared memory): loại máy đa xử lý (multiproccessor) • Các máy tính không chia sẻ nhớ (Private memory): hệ thống multicomputors Trong môi loại lại chia mạng kết nôi bus - based có đường kết nối switch base có nhiều đường kết nối từ máy sang máy khác • Hệ / hệ không Hệ thống nhất: mạng máy tính sử dụng công nghệ, xử lý nhau, truy cập đến nhớ giống Thường dùng hệ thống có tính toán song song Hệ không nhất: máy tính khác kết nối với Các khái niệm phần mềm • DOS (distributed OS) Là hệ điều hành cho hệ multiproccessor hệ homogenous multicomputer Mục tiêu ẩn giấu cung cấp dịch vụ quản trị tài nguyên Đặc điếm dịch vụ thực lời triệu gọi từ xa • NOS (Network OS) Là hệ điều hành cho hệ thống heterogenous multicomputer (LAN, WAN) Mục tiêu NOS cung cấp dịch vụ từ xa • Middleware Là tầng phụ nằm tầng dịch vụ NOS tầng ứng dụng phân tán Phần Kiến trúc hệ phân tán Mô hình dient - server Tổng quan mô hình Client - server Mô hình client - server hệ phân tán phân chia thành hai nhóm llà nhóm server nhóm client Nhóm server chứa dịch vụ đặc biệt Nhóm client nhóm gứi yêu cầu đến server để sử dụng dịch vụ server Phân tầng ứng dụng Việc phân định rạch ròi chức Client server đến khác biệt không Do người ta đưa ý tưởng chia thành ba mức chức năng: User - interface level: bao gồm chương trình cung cấp giao diện cho phép người sử dụng tương tác với chương trình ứng dụng Processing level: làm nhiệm vụ xử lý tác vụ cùa người dùng sở liệu Data level: gồm chương trình trì liệu mà chương trình ứng dụng xử lý Phần Tiến trình (Processes) 3.1 Luồng (Thread) Tiến trình (Process) chương trình thực hiện, coi tính suốt quan trọng Luồng (Thread): hay phần chương trình thực hiện, coí hiệu quan trọng Lời gọi hệ thống (System call): tập lệnh mở rộng hệ điều hành cung cấp xác định giao diện hệ điều hành chương trình người sử dụng Blocking System call: lời gọi hệ thống mà sau gọi tiến trình người sử dụng tiến trình bị dừng lại thực xong lời gọi hệ thống Non - Blocking System call: sau gọi, điều khiển trà lại cho tiến trình gọi tiến trình tiếp tục thực song song với lời gọi hệ thống Đa luồng (Multi thread): áp dụng cho mô hình client/server gọi multithread server multithread Client, vớí mô hình giúp đơn giản hóa lập trình cho server dồng thời tăng khả xử lý song song, làm tăng hiệu cùa hệ thống Có ba phương pháp tiếp cận để xây dựng server: 10 8.4 Phục hồi Phục hồi phương pháp đưa trạng thái bị lỗi sang trạng thái lành (fault free), có hai cách tiếp cận cho phục hồi lỗi: phục hồi lùi (back forward) phục hồi tiến (forward recovery) Phục hồi lùi: thực phục hồi lùi thực phục hồi trạng thái lành hệ thông trước có lỗi cho hệ thống chạy lại từ điềm Để thực điều phái sử dụng điểm checkpoint Tại điếm lưu trạng thái hành hệ thống để khôi phục cho chạy điểm checkpoint gần Việc thực theo phương pháp tốn Phục hồi tiến: chuyển hệ thống từ trạng thái lỗi sang trạng thái với thông tin đê’ tiếp tục thực Chương : Nhất quán nhân bàn (Consistency & replication) 6.1 Đặt vấn đề Có hai lý để sử dụng sao: Dùng để tăng độ tin cậy tính sẵn sàng hệ thống: liệu bị lỗi hay nguyên nhân mà dùng được, ta dùng liệu để hệ thống không phái dừng lại tránh tình trạng sử dụng liệu không xác Dùng bàn đế tăng hiệu cùa hệ thống: tăng quy mô hệ thống số lượng lẫn phạm vi địa lý, Tuy nhiên việc sử dụng nhân phải trả giá, tính quán liệu hệ thống bị suy giảm Do sử dụng bàn nên xảy rã trường hợp có thay đổi liệu mà không cập nhật Điều gây sai sót hệ thống Do phái tốn nhiều công sức để xây dựng mô hình đảm bảo tính quán liệu 6.2 Các mô hình quán lấy liệu làm trung tâm 6.2.1 Mô hình quán chặt (Strict consistency) Là mô hình thỏa mãn điều kiện sau: Thao tác đọc mục liệu X trả giá trị tương ứng với kết quà cùa thao tác ghi gần X Sử dụng khái niệm thời gian tuyệt đoi Thời gian tuyệt đối tổng thể cho hệ thống để xác định khái niệm "gần nhất" Điều khó khả thi với hệ phân tán Các kí hiệu: • Wl(x)a: thao tác ghi thực tiến trinh P(i) lên mục liệu X với giá trị a • Ri(x)b: thao tác đọc thực bởl tiến trinh P(ì) lên mục liệu X cho kết b Giả thiết X có giá trị ban đầu null Do việc lan truyền cục P1 chưa tới P2 nên P2 đọc liệu X giá trị null ban đầu Mô hình không khả thi nên đưa mô hình giảm nhẹ hớn 35 Mô hình quán mô hình quán tuyến tính a Mô hình quán Là mô hình lỏng lẻo hơn, yếu mô hình quán chặt Nó thỏa mãn yêu cầu sau: Kết quà thực nẽu thao tác đọc ghi tiến trình thực mục liệu cách thao tác tiến trình xuất chuỗi thao tác chi chương trình Khi tiến trình chạy đồng thời máy khác cho phép đan xen thao tác tất tiến trình phải nhận biết đan xen thao tác 6.2.2 b Mô hình quán tuyến tính Là mô hlnh yếu mô hình quán chặt mạnh mô hỉnh quán Mô hình thỏa mãn điều kiện sau: "Kết thực thao tác (đọc ghi) tất cá tiến trình lên liệu thực môt cách thao tác tiến trình xuất chuỗi thao tác phải theo thứ tự chương trình Thêm vào đó, tsopl(x) < tsop2(y) thao tác opl(x) phải thực trước 0p2(y) chuỗi thao tác" Mô hình quán nhân Đây mô hình lỏng: lẻo mô hình quán Mô hình phân biệt kiện có quan hệ nhân quà kiện quan hệ nhân Nẽu kiện b gây bj tác động kiện a xảy sớm tính nhãn quà đòl hỏl mội thực thể khác phải "nhìn" thay a trước thấy b sau Mô hình quán nhân thỏa mãn điêu kiện sau: thao tác ghi có quan hệ nhân tiềm phải nhận biết tất cá tiến trình khác thứ tự Các thao tác ghi đồng thời nhận biết theo thứ tự khác máy khác 6.2.3 Mô hình quán FIFO Nhất quán FIFO gọi quán PRAM Đây mô hình yếu mô hình bỏ qua giới hạn trật tự thao tác đồng thời Nhất quán FIFO thỏa mãn : "Các thao tác ghi tiến trình đơn phải tất tiến trình khác nhìn thấy theo trật tự mà chúng đề Nhưng thao tác ghi nhiều tiến trình khác thấy theo trật tự khác tiến trình khác nhau" 6.2.4 Mô hình quán yếu (Weak consistency) Mô hình quán yếu không tập trung vào thao tác liệu mô hlnh mà chúng quan tâm đến trật tự nhóm lệnh việc sử dụng biến đồng bộ, Mô hình quán yếu có ba đặc tính sau: • Việc truy cập đến biến đông hóa đước kêt hỢp với kho liệu quán • Không có thao tác lên biến đồng hóa phép thực tất thao tác ghi trước hoàn thành nơi 6.2.5 36 Không có thao tác đọc hay ghi liệu lên mục liệu phép thực tất thao tác trước lên biến đồng hóa thực • MÔ hình quán (Release consistency) Sứ dụng thêm hai lệnh: lệnh acquired để báo muốn vào vùng tới hạn (critial region) lệnh release để báo giải phóng vùng tới hạn Hai lệnh có hai cách thực thi khác như: biến lệnh đặc biệt Hal thao tác thực với liệu dùng chung không áp dụng cho tất liệu Mô hình quán thỏa mãn điều kiện sau: • Trước thực thao tác đọc hay ghi lên liệu chia sẻ tất cá thao tác acquire tiến trinh thực trước phải hoàn tất • Trước thao tác release phép thực tất thao tác đọc ghi tiến trình thực trước phải hoàn tất Truy cập vào biến đông hóa quán FIFO (Không yêu cầu quán tuần tự) 6.2.7 Mô hình quán vào (Entry consistency) Cũng giống mô hình quán ra, mô hình quán vào sử dụng hai lệnh acquired release muốn sử dụng vào vùng tới hạn Nhưng lệnh thao tác mục liệu vùng liệu chia sẻ Tiến trình muốn sử dụng mục liệu phải đợi cho tất tiến trình khác giải phóng mục liệu 6.2.6 Để ghi lên mục liệu, Client phái có biến đồng hoá cùa mục chế độ dành riêng Điểu co nghĩa không Client khác cỏ thể sử dụng biến đỏ Khi Client cập nhật xong mục liệu, giải phóng biến Khi Client muốn đọc mục liệu đó, phải có biến đồng hóa kết hỢp chế độ không dành riêng Nhiều Client giữ biến đồng hóa chế độ không dành riêng Khi thực thao tác acquire, Client lấy phiên mục liệu từ tiến trình cuối thực thao tác acquire biến Nhất quán vào phải thỏa mãn điều kiện sau: • Một thao tác acquire để truy cập vào biến đồng hóa không phép thực tiến trình tất cà cập nhật lên mục liệu tiến trình thực • Trước truy cập chế độ dành riêng tiến trình tới biến đồng hóa phép thực không tiến trình khác giữ biến đồng hóa, chế độ không dành riêng không cần yêu cầu • Sau truy cập chế độ dành riêng lên biến đồng hóa thực truy cập tiến trình khác chế độ không dành riêng lên biến không thực khỉ chủ nhân biến đồng thực xong việc truy cập cùa 6.3 Các mô hình quán lấy Client làm trung tâm 6.3.1 Nhất quán cuối (eventual consistency) Khi liệu có nhiều yêu cầu đua sau thao tác cập nhật tất 37 cuối phải Yêu cầu thực tốt client chịu khó cập nhật cho Nếu client di động việc thực yêu cầu gặp khó khăn Phái đảm bảo client thay đối vị trí vật lý việc sử dụng phài xác Tức Eà bàn luôn quán Nhất quán đọc (monotonie - write consistency) Mô hình quán đọc phải đảm bảo điều kiện sau: Một tiến trinh thực thao tác đọc mục liệu thi phải đảm bảo thao tác đọc cho kết hay kết gần Mô hình quán đọc đàm bào Client nhìn thấy liệu nhìn thấy liệu cũ mà đọc trước Điều có nghĩa Client thực thao tác đọc lại đọc khác thi thứ hai phải ghi giống với 6.3.2 Về bán chất mô hình phiên hướng người dùng mô hình quán FIFO (điểm khác biệt chỗ áp dụng Client) Nhất quán ghi (monotonie - read consistency) Mô hình quán đọc đêu phái đảm bảo điều kiện sau: Thao tác ghi mục liệu X tiến trình phải hoàn thành trước thao tác ghi khác X tiến trình Noi cách khác thao tác ghi lên mục liệu xếp cách có trật tự 6.3.3 Nhất quán đọc kết ghi (Read - your - write consistency) Trong mô hình quán này, người dùng đảm bảo nhìn thấy kết ghi "Tác động thao tác ghi tiến trình lên mục liệu X nhìn thấy thao tác đọc X tiến trình đó" 6.3.4 Nhất quán ghi theo sau đọc (write - follow - read consistency), Mô hình quán ngược với quán đọc kết ghi, đảm bảo người dùng thực thao tác ghi lên phiên liệu mà phải phiên cuối cúa "Tác động thao tác ghi tiến trình lên mục liệu X nhìn thấy thao tác đọc liên tiếp lên X tiến trình đó" 6.3.5 6.4 Các giao thức phân phối (distribution protocols) Xếp đặt (replica placement) Có kiểu ban sao: Các thường trực: tiến trinh hay máy có bàn Số lượng thường xuyên ít, thường tập hỢp lại thành nhóm máy trạm (COWs) hệ thống phản chiếu (mirrored), thường Web server server có chứa sở liệu dự phòng Bản khởi đầu từ server: Các sử dụng để làm tăng hiệu Các 6.4.1 38 xếp đặt động dựa vào yêu cầu server khác Một ví dụ điển hình chúng công ty web hosting sử dụng để định vị vị trí địa lý gần họ cần Các khởi đầu từ Client: Các tạo từ yêu cầu Client, chẳng hạn việc cache liệu cùa trình duyệt Chúng xếp đặt động dựa vào yêu Cầu Client, Lan truyền cập nhật Có khả lan truyền cập nhật Chỉ thông báo có cập nhật: Thường dùng việc cache liệu.Thông báo việc hiệu lực giao thức.Phương pháp tốt tỉ lệ thao tác đọc so với thao tác ghi nhỏ Truyền liệu cập nhật từ tới khác.Thực tốt có nhiều thao tác đọc, Ghi lại thay đổi tập hợp cập nhật lại để truyền (chỉ truyền thay đổi không truyền liệu bị thay đổi, tiết kiệm đước băng thông) Lan truyền thao tác cập nhật tới khác (nhân bán chù động) Tốn băng thông đòi hòi lực xử lý cao nhiều trường hợp thao tác phức tạp Các giao thức kéo đẩy Đẩy cập nhật: giao thức server khởi tạo, giao thức cập nhật lan truyền môĩ có server khác yêu cầu Kéo cập nhật: giao thức Client khởi tạo Client muốn cập nhật 6.4.2 6.4.3 Các giao thức bệnh dịch (epidemic protocol) Đây giao thức dùng để thực mô hình quán sau Ý tưởng thuật toán bệnh dịch là: • Giả sử không xày xung đột thao tác ghi - ghi • Các thao tác cập nhật ban đầu thực hay vài bàn (càng tốt) • Một gửi cập nhật tới số hữu hạn hàng xóm • Việc lan truyền cập nhật xảy chậm chạp không phái • Cuối cập nhật đến Dụa thuật toán bệnh dịch mà có mô hỉnh lan truyền cập nhật Điều đáng lưu tâm mo hình cac cập nhật lan truyền tới với thông điệp tốt nhiêu bị "nhiễm," lan truyền nhanh tốt Đến cuối mà không lan truyền cập nhật cúa minh bị loại bỏ Tuy nhiên việc loại bỏ không dễ dàng Một mô hình lan truyền cập nhật gọi là: anti entropy Trong mô hỉnh này, định kì lại chọn ngẫu nhiên khác trao đổi trạng thái khác mình, sau thời gian phía có trạng thái giống hệt Một mô hình khác gossiping Trong mô hình cập nhật "kể" cho số bàn khác cập nhật cùa vi làm cho bàn bị nhiễm cập nhật cùa minh 6.5 Các giao thức quán 6.5.1 Giao thức Primary-based Các giao thức ghi từ xa a 39 Với giao thức này, tất thao tác ghi thực server từ xa Giao thức thường kết hợp với hệ thống chủ khách truyền thống Một dạng giao thức ghi từ xa giao thức Primary-Backup Nhược điểm cùa giao thức vãn đề hiệu Tất cà thao tác ghi giao thức chiếm nhiều thời gian, đặc biết có giao thêm giao thức ghi theo khối sử dụng Ưu điểm cùa giao thức • Sử dụng giao thức ghi không theo khối để xử lý cập nhật • Tất cà thao tác ghi gùi đến dự phòng theo thứ tự, điều tạo điều kiện thuận lợi thực thi mô hình quán Các giao thức ghi cục • Trong giao thức mục liệu trì Khi có yêu cầu thao tác ghi, mục liệu nhân từ server xa chuyển đến server cục Việc gọi tiếp cận theo kiểu di trú hoàn toàn Một vấn đề đặt cho tiến trình sử dụng giao thức để đọc ghi lên mục liệu là: thời gian để thật định vị mục liệu lớn thời gian tiến trình sử dụng Một dạng giao thức ghi cục là giao thức Primary-backup Trong giao thức di trú đến tiến trình muốn thực việc cập nhật, sau bán dự phòng cập nhật b 6.5 Các giao thức Replicated-write Trong giao thức này, thao tác ghi tiến hành Ví dụ: Một tiến trinh đặc biệt mang thao tác cập nhật tới Một tem thời gian Lamport có thê sứ dụng để lấy thao tác về, nhiên phương pháp không linh hoạt cho hệ phân tán Một phương pháp khác sử dụng xếp dãy, tiến trình để gán số ID cho cập nhật, sau truyền cập nhật tới tất cá Giao thức nhân chù động Trong giao thức này, thao tác ghi truyền đến tất sao, thao tác đọc thực cục Giao thức ghi truyền sử dụng giao tiếp point-to-point hay multicast Ưu điểm giao thức tất nhận thao tác lúc theo trật tự, không cần đánh dấu hay phải gùi tất thao tác tới server Tuy nhiên giao thức lại đòi hòi phải truyền theo kiểu multicast động phàỉ có xếp dãy tập trung mà ca phương pháp khó có the tiếp cận cách linh hoạt Trong giao thức có vấn đề cần quan tâm "triệu gọi sao" Để tránh cho bị gọi quán nhiều lần, điều phối gắn môi bên (client server), điều đảm bảo cho việc có lời gọi lời đáp gửi Giao thức Quorumbased Với giao thức này, thao tác ghi thực tập nhò Khi thực thao tác đọc, người dùng phải liên hệ với tập để tim 40 phiên liệu Trong giao thức tất cà mục liệu kết hợp VỚI số phiên bàn (version number), Mỗi lần mục bị sửa đổi thỉ số phiên cua nỏ cung tăng lên Giao thức định nghĩa số đại biểu đọc sô' đại biểu ghi, hai đại biểu xác định số bàn phải liên hệ trước thực thao tác đọc ghi Số đại biểu đọc phài lớn /2 tổng số sao, tổng số đại biểu đọc ghi phải lớn tổng số Bằng cách này, người muốn thực thao tác đọc thi phải đảm bảo việc liên hệ với có chứa phiên mớl mục liệu Việc lựa chọn số lượng đại biểu dựa vào tỉ lệ thao tác đọc ghi với cost (bandwidth ) thực phương pháp giao tiếp giũa nhóm Cache-coherence protocols Cache dạng đặc biệt cùa nhân bản, điều khiển Client thay điều khiển server, có nhiều giải pháp cho việc cache liệu VỚI chiến lược phát cố kết, chiến lược để xác định không quán thật bị phát từ loại bỏ liệu gây không quán, có giải pháp khác • Với giải pháp tĩnh, thời điểm biên dịch chương trình thị phụ thêm vào để phát liệu không quán • VỚI giải pháp động thời điểm chạy chương trình có đoạn mã để kiểm tra tính không quán liệu cache với liệu server Với chiến lược ép buộc cố kết, chiến lược để xác định xem liệu cache giữ quán với liệu lưu server nào, cỏ cách để buộc giữ liệu phải cố kết với Đó là: • Để cho server gùi thông điệp không hợp lệ liệu bị thay đổi • Cập nhật kĩ thuật lan truyền Các thao tác ghi liệu vào cache tiến hành sau: • VỚI cache đọc (Read-only Cache) cập nhật thực server (bằng giao thức đẩy) client (bằng giao thức kéo client nhận thấy liệu cache cũ) • Với cache ghi thẳng (Write-Through Cache) client thay đổi nội dung cache, sau gửi cập nhật đến cho server • Với cache ghi lại (Write-Back Cache) Client tri hoãn lan truyền cập nhật, cho phép nhiều cập nhật tạo cục sau gửi cập nhật cho server (việc có khả ảnh hưởng mạnh đến hiệu năng) Chương 8: An toàn - An ninh (Security) 8.1 Đặt vấn đề Các mối đe dọa, sách chế an toàn , an ninh Các mối đe dọa 8.1.1 a 41 Hệ thống máy tính bị đe dọa nguy an toàn Một công viẹc để bảo vẹ hệ thống la giúp hệ thong tránh khỏi nguy có loại mối đe dọa an toàn: Interception (chặn bắt): thành phần không phép truy cập đến dịch vụ hay liệu, "nghe trộm" thông tin truyền Interruption (đút đoạn): mối đe dọa mà làm cho dịch vụ hay liệu bị mát, bị hỏng, dùng Modification (thay đổi): tượng thay đổi liệu hay can thiệp vào dịch vụ làm cho chúng không giữđược đặc tính ban đầu Fabrication (giả mạo): tượng thêm vào liệu ban đầu liệu hay hoạt động đặc biệt mà nhận biết để ăn cắp liệu hệ thống, b Các chế an toàn, an ninh Có chế an toàn, an ninh đưa ra: Mật mã (Cryptography): việc thực chuyển đổi liệu theo quy tắc thành dạng mà kè công không nhận biết Xác thực (Authentication): C3C thao tác để nhận dạng người dùng, nhận dạng Client hay server ủy quyền (Authorization).: việc phân định quyền hạn cho thành phần đăng nhập thành công vào hệ thống Quyền hạn quyền sử dụng dịch vị, truy cập liệu Kiem toán (Auditing): phương pháp để xác đinh client truy cập đến liệu bẵng cách Các vấn đề thiết kế a Điều khiển (focus of control) Có ba cách tiếp cận: Chống thao tac bất hợp lệ: việc thực cách bảo đảm toàn vẹn liệu mà không quan tâm đến việc phân tích hợp lệ thao tác 8.1.2 Chổng triệu gọi thao tác không ủy quyền.: không bào đàm toàn vẹn liệu mà tập trúng vào thao tác Thao tác nẳo la bat hợp lệ bị hủy bỏ Chống người sử dụng khống ủy quyền: cách tiếp cận lại tập trung vào quàn lý người dùng, xác định người dùng vai trò họ hệ thống không quan tâm đến đảm bảo liệu hay quản lý thao tác người dùng Phân tầng chế an toàn (Layer of security mechanism) Một vấn đề quan trọng việc thiết kế hệ thống an toàn định xem chế an toàn an ninh đặt tầng Việc xác định vị trí đặt phụ thuộc nhiều vào yêu cầu client dịch vụ an toàn, an ninh tầng Trong hệ phân tán, chế an toàn, an ninh đặt tầng middleware c Phân tán chế an toàn (Distribution of security mechanism) Xét khái niệm TCB (Trusted Computing Base): tập hỢp tất chế an toàn, an ninh hệ phân tán, chế phải tuân theo ràng buộc an toàn b 8.1.3 Mật mã (Cryptography) 42 Một chế an toan, an ninh hệ phân tán mã mật Tư tưởng là: bên gửi mã hóa tin cần truyền, truyền tin mã hóa đi, bên nhận giải mã tin nhận thành tin ban đầu Gọi: Bản tin ban đầu p Khóa mã hóa Ek Bản tin mã hóa theo khóa Ek C: C=Ek(P) Khóa giải mã Dk Bản tin giải mã theo khóa giải mã: P=Dk(C) Có hai loại hệ thống mật mã: mật mã đối xứng (symmetric cryptosystem) mật mã bất đối xứng (asymmetric cryptosystem) a Mật mã đối xứng: dùng khóa bí mật VỚI mật mã đối xứng: khóa mã hóa khóa giải mã giống Ta có: P=Dk(Ek( p ) ) Cả bên nhận bên gửi phải có khóa trên, khóa phái giữ bí mật Nguyên lý chung cùa giải thuật DES (Data Encryption standard): Thực khối liệu 64 bít MỖI khối mã hóa qua 16 vòng lặp, vòng có khóa mã hóa 48 bit riêng 16 khóa sinh từ 56 bít khóa Đầu vào vòng lặp mã hóa thứ i liệu mã hóa vòng lặp thứ (i-1) 64 bít liệu qua môi vòng lặp chia thành hai phần nhau: Li-1 Ri-1, 32 bit Phần liệu bên phải Ri-1 lấy làm phần bên trái liệu cho vòng sau: Ri-1= Li Hàm f với đầu vào Ri-1 khóa KI sinh khối 32 bít XOR với Li-1 để sinh Ri Phương pháp sinh khóa giải thuật DES: Mỗi khóa 48 bít cho vòng lặp sinh từ khóa 56 bit sau: hoán vị khóa chính, chia đôi thành hai phan 28 bít Tại vòng, nửa quay trái hai bít, sau lấy 24 bit kết hợp với 24 bít cúa nủa lại tạo khóa b Mật mã bất đối xứng: dùng khóa công khai Mật mã bất đổi xứng: khóa mã hóa khóa giải mã khác nhau, Ta có: P=DkD(EkD ( p)) Trong hệ thống này, khóa giữ bí mật khóa công khai Xét giải thuật RAS (được đặt theo tên nhà phát minh nó:Rivest, 5hamir, Adleman) : Cách sinh khóa giả thuật RAS: thực theo bước: • Chọn số lớn: p,q • Tính n = p.q z = (p-l).(q-l) • Chọn số d liên quan đến z • Tính toán e cho e.d =1 mod z Như d dùng để giải mã e dùng để mã hóa Ta công khai hai số này, tùy thuật toán Nguyên lý chung giải thuật RAS: Coi tin truyền dãy số nhị phân Chia tin m thành khối có kích thước cố định mi cho 0

Ngày đăng: 24/07/2016, 12:51

Từ khóa liên quan

Mục lục

  • Mục lục

  • Phần 1. Tổng Quan Về Hệ Phân Tán.

    • 1.1. Định nghĩa.

    • Phần 2. Kiến trúc hệ phân tán

    • Phần 3. Tiến trình (Processes)

      • 3.1. Luồng (Thread).

      • 3.2. Di trú mã.

      • Phần 4. Truyền thông. (Communication)

        • 4.1. Các giao thức phân tầng (Layered protocols).

        • 4.2. Gọi thủ tục từ xa (Remote procedure call - RPC).

        • 4.3. Các mô hình RFC mở rộng.

          • 4.3.1. RFC dị bộ (Asynchronous RPC).

          • 4.3.2. RPC đồng bộ trễ (Deferred synchronuos RPC):

          • 4.3.3. RPC đơn tuyến (one- way RPC).

          • 4.4. Triệu gọi đối tượng từ xa (Remote object invocation).

            • 4.4.1. Đối tượng phân tán (Distributed object).

            • 4.4.2. Các bước thực hiện triệu gọi đối tượng từ xa.

            • 4.5. Truyền thông hướng thông điệp (Message - oriented communication).

              • 4.5.1. Các loại truyền thông cơ bản

              • 4.5.2. Một số loại truyền thông hổ hợp.

              • 4.6. Truyền thông hướng dòng (stream- oriented communícation).

                • 4.6.1. Một số khái niệm cơ bàn.

                • 4.6.2. QoS - chất lượng dịch vụ.

                • 4.7. Đồng bộ các dòng.

                • Phần 5. Định danh. (Naming)

                  • 5.1. Các thực thế định danh (Naming Entities).

                    • 5.1.1. Tên, định danh và địa chỉ.

                    • 5.1.2. Độ phân giải tên.

                    • 5.1.3. Thực hiện một không gian tên.

Tài liệu cùng người dùng

Tài liệu liên quan