Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt...Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..Báo Cáo Tiểu Luận Hệ Thống Phân Tán khoa cntt..
Tiểu Luận Hệ Thống Phân Tán TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT KHOA CÔNG NGHỆ THÔNG TIN TIỂU LUẬN HỌC PHẦN: HỆ THỐNG PHÂN TÁN MÃ HỌC PHẦN: 7080212 Đề tài: Giới thiệu giải thuật loại trừ lẫn (Mutual exclusion) & Các giải thuật bầu cử (Election) Giảng viên hướng dẫn: VLP Sinh viên thực hiện: LHT PVD NTD LAD Hà Nội, 2021 Tiểu Luận Hệ Thống Phân Tán Mục Lục Đề tài: Giới thiệu giải thuật loại trừ lẫn (Mutual exclusion) .1 & Các giải thuật bầu cử (Election) Mục Lục Lời Mở Đầu II-Giới thiệu chung Hệ Phân Tán 2.1 Định nghĩa Hệ Phân Tán 2.2 Mục tiêu Hệ Phân Tán 2.2.1 Kết nối người sử dụng tài nguyên 2.2.2 Tính suốt 2.2.3 Tính mở (Openness) .6 2.2.4 Tính co giãn (Scalability) 2.3 Bài toán chia sẻ tài nguyên Hệ Phân Tán .7 III-Giải toán chia sẻ tài nguyên Hệ Phân Tán 3.1 Các giải thuật sử dụng 3.2 Các giải thuật đồng hóa vật lý (Clock synchronization algorithm) 3.2.1 Giải thuật Cristian 3.2.2 Giải thuật Berkeley 3.2.3 Giải thuật trung bình 10 Đồng hóa tiến trình hệ điều hành tập trung 10 Loại trừ lẫn (mutual exclusion) 10 a Đồng hóa 11 b Tắt nghẽn .12 # Các giải thuật bầu cử (Election Algorithm) .12 Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán 3.3.1 Giải thuật áp đảo (Bully Algorithm) 12 3.3.2 Giải thuật vòng (Ring Algorithm) 13 # Các giải thuật loại trừ (Mutual Exclusion) .14 3.4.1 Giải thuật tập trung (Centralized Algorithm) 14 3.4.2 Giải thuật phân tán (Distributed Algorithm) .15 3.4.3 Giải thuật vòng với thẻ (TokenRing Algorithm) 16 # So sánh giải thuật Mutual exclusion 18 3.1 Centralized Algorithm 18 3.2 Distributed Algorithm 19 3.3 TokenRing Algorithm 20 IV-Kết luận .22 Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán Lời Mở Đầu Trong thời đại phát triển công nghệ nhanh chóng nay, Internet trở thành người bạn đồng hành thiếu hàng chục triệu người giới cầu nối lĩnh vực tri thức với Internet trở thành mạng liệu công cộng lớn nhất, giúp cho việc trao đổi thông tin trở nên nhanh thuận tiện so với trước Chính vậy, Internet làm thay đổi sống người, làm cải thiện cơng việc kinh doanh, giải trí, giáo dục phương thức liên lạc Internet đưa xã hội loài người bước vào kỷ nguyên mới, kỷ nguyên công nghệ thông tin Ngày nay, số lượng người sử dụng Internet ngày tăng, dẫn đến lưu lượng thông tin mạng tăng lên đáng kể Do đó, vấn đề liên quan đến tốc độ, độ tin cậy đường truyền nhiều nhà khoa học máy tính đặc biệt quan tâm Trong đó, vấn đề đồng tiến trình mạng nội dung nghiên cứu chủ yếu mơn hệ phân tán Chính lý mà tiểu luận nhóm em nghiên cứu liên quan vấn đề đồng tiến trình Đồ án chia làm phần: Phần I: Tổng quan hệ phân tán Phần II: Giới thiệu giải thuật loạitrừ lẫn (Mutual exclusion) & giải thuật bầu cử ( Election) Trong phạm vi đề tài nhóm em nghiên cứu lý thuyết giải thuật, chắn q trình làm khơng tránh phải thiếu sót, em mong bảo để tiểu luận nhóm em hồn thành tốt đẹp Nhóm xin chân thành cảm ơn! Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán II-Giới thiệu chung Hệ Phân Tán 2.1 Định nghĩa Hệ Phân Tán Để tìm hiểu tốn chia sẻ tài nguyên hệ phân tán, cần tìm hiểu tổng quan hệ phân tán Có nhiều định nghĩa khác hệ phân tán: Định nghĩa 1: 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 qua mạng máytính Định nghĩa 2: Hệ phân tán tậ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ư vậy: Hệ phân tán = Mạng máy tính (+) Phần mềm hệ phân tán (Distributed System = Computer Network (+) Distributed SystemSoftware) Đị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 sử dụng hệ thống thống toàn vẹn ( A single coherent system) Trước đây, hệ phân tán chia thành ba loại : Hệ điều hành hệ phân tán Cơ sở liệu hệ phân tán Các hệ thống tính tốn hệ phân tán Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán Ngày nay, hệ phân tán phân chia thành hai loại: 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 2.2 Mục tiêu Hệ Phân Tán Hệ phân tán có mục tiêu sau: 2.2.1 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) 2.2.2 Tính suốt 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í 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 tài nguyên Che giấu chia sẻ tài nguyên tương tranh (Concurency transparency) Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán 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ài nguyên từ nhớ ngồi vào nhớ ngược lại 2.2.3 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 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) Vì quan tâm đến cú pháp, cho phép dịch vụ khác chung sống Nếu giao diện 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 (Interroperability) 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 2.2.4 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 lực hoạt động đối tượng) Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán Có ba giải pháp phổ dụng để giải 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 2.3 Bài tốn chia sẻ tài nguyên Hệ Phân Tán Mục tiêu hệ phân tán để giải toán chia sẻ tài nguyên ( Resource Sharing) Nội dung toán chia sẻ tài nguyên Hệ phân tán là: Có tập hữu hạn tài nguyên ( gồm máy tính, đường truyền,thiết bị mạng, phần mềm, liệu máy,…) Và có tập hữu hạn người sử dụng vị trí khác gia tăng nhanh số lượng người Vấn đề đặt ra: Các giải pháp chia sẻ tối ưu tài nguyên người sử dụng gì? III-Giải tốn chia sẻ tài nguyên Hệ Phân Tán 3.1 Các giải thuật sử dụng Những ưu điểm việc sử dụng chung tài nguyên hệ phân tán so với hệ tập trung gồm có: Tăng tốc độ bình qn tính tốn-xử lý Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán Cải thiện tình trạng ln ln sẵn sàng loại tài nguyên Tăng độ an tồn liệu Đa dạng hóa loại hình dịch vụ tin học Đảm bảo tính vẹn tồn thơng tin Tuy nhiên, dẫn đến hàng loạt vấn đề khó khăn việc thiết lập hệ, liên quan việc cấp phát tài nguyên dùng chung cho tiến trình Điều quan trọng đặt ra, làm để hệ đảm bảo gắn bó thơng tin, đặc biệt thơng tin dùng chung Hệ phân tán cần phải có chế kỹ thuật đủ mạnh nhằm trì gắn bó thơng tin q trình hoạt động tiến trình trao đổi thơng tin với cho hệ thống tránh trường hợp dẫn đến hệ thống khơng gắn bó Việc chia sẻ tài nguyên hệ phân tán đòi hỏi nhiều tiến trình dịch vụ chia sẻ nhớ (sharing memory), chia sẻ vi xử lý (sharing processors),… Và tiến trình hay dịch vụ thực việc sử dụng giải thuật hệ phân tán Trong nội dung ngắn tiểu luận, chúng tơi xin trình bày số giải thuật sau đây: 3.2 Các giải thuật đồng hóa vật lý (Clock synchronization algorithm) 3.2.1 Giải thuật Cristian Giả sử hệ phân tán có máy có WWV (gọi Time server ) tiến hành đồng máy khác với máy này.Trong khoảng thời gian δ/2p máy gửi thông điệp đến máy chủ hỏi thời gian Máy chủ nhanh phản hồi thơng điệp mang giá trị thời Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán gian C(utc).Bên gửi nhận phản hồi thiết lập lại clock thành C(uct) Hình 3.2.1: Xác định thời gian time server Đánh giá: giải thuật có vấn đề : Một clock bên gửi chạy nhanh lúc C(uct) nhỏ thời gian hiên C bên gửi Có thể giải cách thay đổi nhịp ngắt lại nhanh chậm lúc khớp Hai chênh lệch từ lúc C(uct) gửi lúc nhận gây lỗi.Giải cách ghi nhận khoản thời gian lúc gửi nhận 3.2.2 Giải thuật Berkeley Server chủ động cho máy khác biết thời gian chuẩn CUTC sau u cầu thơng tin thời gian client Client trả lời khoảng thời gian chênh lệch server Server tính khoảng thời gian mà client so với thời gian chuẩn server lúc gửi cho máy khách cách điều chỉnh thời gian cho phù hợp Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán Hình 3.2.2: Xác định thời gian time server giải thuật Berkeley 3.2.3 Giải thuật trung bình Giải thuật thực chia thời gian thành khoảng đồng cố định Khoảng thời gian I thời điểm (To + i.R) chạy đến To+(i+1)R với To thời điểm xác định trước R biến hệ thống Vào thời điểm bắt đầu lần đồng tất máy mạng broadcast thời gian Đồng hóa tiến trình hệ điều hành tập trung Loại trừ lẫn (mutual exclusion) Các tài nguyên hệ thống phân thành loại: Các tài nguyên phân chia được: sử dụng đồng thời nhiều tiến trình Các tài ngun khơng phân chia được: sử dụng tiến trình thời điểm Sự không phân chia tài nguyên hai nguyên nhân sau: Sự không phân chia mặt vật lý Ví vụ máy đọc băng giấu đục lỗ khơng cho phép đổi băng ký tự liên tiếp Nhóm: 19 10 Tiểu Luận Hệ Thống Phân Tán Nếu tài nguyên sử dụng đồng thời nhiều tiến trình có nguy bị chồng chéo, khơng qn Ví dụ xét vùng nhớ truy cập nhiều xử lý, xử lý đọc nội dung vùng xử lý khác sửa đổi kết khơng lường trước Giả sử hệ đăng ký chỗ máy bay, ghế biểu diễn nội dung ký tự thời điểm đó, hai phòng dịch vụ đăng ký đồng thời ghế thao tác sau: Phòng A thấy ghế trống hỏi ý kiến khách hàng Phòng B thấy ghế trống hỏi ý kiến khách hàng Các tài nguyên không phân chia chủ yếu ngoại vi, file viết vùng liệu cập nhập liên tiếp Các tài nguyên phân chia chủ yếu đơn vị trung tâm, file đọc hặc vùng nhớ chứa chương trình liệu bảo vệ cấm sửa đổi Vấn đề cần giải loại trừ lẫn đảm bảo cho tài nguyên không phân chia truy nhập tiến trình thời điểm a Đồng hóa Một cách tổng quát, tốc độ tương đối hai tiến trình khơng biết trước chúng phụ thuộc vào tần số ngắt tiến trình vào thời gian làm việc tần số gán xử lý cho tiến trình Nhóm: 19 11 Tiểu Luận Hệ Thống Phân Tán Chúng ta nói tiến trình tiến triển khơng đồng Tuy nhiên, để đảm bảo hợp tác định đó, xử lý phải đồng hóa hoạt động chúng số thời điểm, tiến trình tiếp diễn tiến trình khác hồn tất thao tác định Do vậy, hệ điều hành phải cung cấp chế đồng hóa b Tắt nghẽn Khi nhiều tiến trình tìm kiếm tài nguyên thời điểm hệ đến tình trạng tắt nghẽn tài nguyên yêu cầu tiến trình bị chiếm giữ tiến trình khác ngược lại Hiện tượng tương tự với tình giao thơng xuất hai dịng xe bị tắt nghẽn ngã tư Dự kiến trước làm giảm bớt ảnh hưởng tắt nghẽn chức thiếu hệ điều hành # Các giải thuật bầu cử (Election Algorithm) Khi tiến trình điều phối gặp lỗi phải có q trình bầu chọn để chọn tiến trình khác làm điều phối thay cho Có hai giải thuật bầu chọn hay sử dụng là: 3.3.1 Giải thuật áp đảo (Bully Algorithm) Giả thiết tiến trình có ID nhất.Tất tiến trình khác biết số ID địa tiến trình hệ thống Chọn tiến trình có ID cao làm khóa.Tiến trình khởi động việc bầu chọn khơi phục lại sau trình xảy lỗi tiến trình điều phối bị trục trặc Nhóm: 19 12 Tiểu Luận Hệ Thống Phân Tán Các bước giải thuật: P gửi thơng điệp ELEC đến tất tiến trình có ID cao Nếu khơng có tiến trình phản hồi P trở thành tiến trình điều phối Nếu có tiến trình có ID cao phản hồi đảm nhiệm vai trị điều phối Hình 3.3.1: Ví dụ theo giải thuật áp đảo 3.3.2 Giải thuật vòng (Ring Algorithm) Giả thiết tiến trình có ID xếp vòng tròn Logic Mỗi tiến trình nhận biết tiến trình bên cạnh Nhóm: 19 13 Tiểu Luận Hệ Thống Phân Tán Các bước thuật tốn: Một tiến trình bắt đầu gửi thơng điệp ELEC tới nút cịn tồn gần nhất, trình gửi theo hướng định Thăm dò liên tiếp vòng tìm nút cịn tồn Mỗi tiến trình gắn ID vào thơng điệp gửi Cuối chọn tiến trình có ID cao số tiến trình cịn hoạt động gửi thơng điệp điều phối cho tiến trình # Các giải thuật loại trừ (Mutual Exclusion) Có nhiều giải thuật xây dựng để cài đặt chế loại trừ thông qua vùng tới hạn Có ba giải thuật phổ biến là: 3.4.1 Giải thuật tập trung (Centralized Algorithm) Giả thiết: tiến trình có số ID Tiến trình bầu chọn làm điều phối tiến trình có số hiệu ID cao Nội dung thuật toán: Khi tiến trình cần vào vùng giới hạn gửi thơng điệp xin cấp quyền Nếu khơng có tiến trình vùng giới hạn tiến trình điều phối gửi phản hồi cho phép Cịn có tiến trình khác vùn tới hạn tiến trình điều phối gửi thông điệp từ chối đưa tiến trình vào hàng đợi khơng có tiến trình vùng tới hạn Khi tiến trình tiến trình rời khỏi vùng giới hạn gửi thơng điệp đến tiến trình điều phối thơng báo trả lại quyền truy cập.Lúc tiến trình điều phối gửi quyền truy cập cho tiến trình hàng đợi truy cập Nhóm: 19 14 Tiểu Luận Hệ Thống Phân Tán Đánh giá: Thuật toán có đảm bảo tồn tiến trình vùng tới hạn cần thông điệp để thiết lập là: Request –Grant – Release Nhược điểm tiến trình điều phối bị hỏng hệ thống sụp đổ Vì tiến trình trạng thái Block khơng thể biết tiến trình điều phối có bị DEAD hay không Trong hệ thống lớn có tiến trình điều phối xuất hiện tượng thắt cổ chai Hình 3.4.1: Ví dụ theo giải thuật tập trung 3.4.2 Giải thuật phân tán (Distributed Algorithm) Khi tiến trình muốn vào vùng giới hạn, trước hết tạo nhãn thời gian gửi với thông điệp đến tất tiến trình khác Các tiến trình khác sau nhận thơng điệp xảy ba tình huống: Nếu bên nhận không vùng giới hạn khơng muốn vào vùng giới hạn gửi thông điệp OK cho bên gửi Nếu bên nhận vùng giới hạn thay trả lời cho vào hàng đợi yêu cầu Nếu bên nhận muốn vào hàng đợi so sánh timestamp thấp thắng Sau gửi thông điệp yêu cầu vào vùng giới hạn tiến trình đợi có trả lời sớm tốt Khi vào vùng giới hạn Nhóm: 19 15 Tiểu Luận Hệ Thống Phân Tán gửi thơng điệp OK đến tất tiến trình khác xóa tiến trình hàng đợi Hình 3.4.2: Ví dụ theo giải thuật phân tán 3.4.3 Giải thuật vòng với thẻ (TokenRing Algorithm) Gi ả thi ế t tất cá c ti ế n trì nh đượ c sắ p xế p trê n vịng trịn logic, tiến trình đánh số biết đến tiến trình cạnh Hình 3.4.3: Ví dụ theo giải thuật vịng với thẻ Nhóm: 19 16 Tiểu Luận Hệ Thống Phân Tán Bắt đầu trình truyền, tiến trình trao thẻ bài.Thẻ lưu hành xung quanh vịng trịn logic Nó chuyển từ tiến trình k đến tiến trình (k+1) cách truyền thông điệp điểm – điểm Khi tiến trình giành thể từ tiến trình bên cạnh kiểm tra xem vào vùng tới hạn hay khơng Nếu khơng có tiến trình khác vùng tới hạn vào vùng tới hạn Sau hồn thành phần việc nhả t h ẻ b i r a , thẻ di chuyển tự vịng trịn Nếu tiến trình muốn vào vùng tới hạn giữ lấy thẻ bài, khơng thẻ truyền qua Nhóm: 19 17 Tiểu Luận Hệ Thống Phân Tán # So sánh giải thuật Mutual exclusion Nguyên tắc hệ phân tán đồng thời cộng tác đa tiến trình Trong nhiều trường hợp , điều có nghĩa nhiều tiến trình lúc truy cập vào tài nguyên Có nhiều giải thuật xây dựng để cài đặt chế loại trừ thông qua vùng tới hạn để tránh điều xảy • Có ba giải thuật phổ biến là: o Giải thuật tập trung (Centralized Algorithm) o Giải thuật phân tán (Distributed Algorithm) o Giải thuật vòng (TokenRing Algorithm) 3.1 Centralized Algorithm Giả sử tiến trình có số ID Tiến trình bầu chọn làm điều phối (Coordinator) tiến trình có số ID cao • Khi tiến trình cần vào vùng giới hạn gửi thơng điệp xin cấp quyền • Nếu khơng có tiến trình vùng giới hạn tiến trình điều phối gửi phản hồi cho phép • Cịn có tiến trình khác vùn tới hạn tiến trình điều phối gửi thơng điệp từ chối đưa tiến trình vào hàng đợi khơng có tiến trình vùng tới hạn • Khi tiến trình rời khỏi vùng giới hạn gửi thơng điệp đến tiến trình điều phối thơng báo trả lại quyền truy cập • Lúc tiến trình điều phối gửi quyền truy cập cho tiến trình hàng đợi truy cập Ưu điểm: • Giải thuật đảm bảo loại trừ lẫn nhau: điều phối để tiến trình truy cập tài nguyên thời điểm Nhóm: 19 18 Tiểu Luận Hệ Thống Phân Tán • Khơng có tiến trình phải đượi vơ thời hạn • Sự xếp dễ thực thi yêu cầu thông điệp cho lần sử dụng tài nguyên gồm: yêu cầu truy nhập tài nguyên, cho phép giải phóng tài nguyên Nhược điểm: • Nếu tiến trình điều phối bị hỏng hệ thống sụp đổ Vì tiến trình trạng thái Block khơng thể biết tiến trình điều phối có bị DEAD hay khơng • Trong hệ thống lớn có tiến trình điều phối xuất hiện tượng thắt cổ chai 3.2 Distributed Algorithm • Khi tiến trình muốn truy cập vào tài nguyên chia sẻ, tạo thơng điệp bao gồm tên tài nguyên, số xử lý thời gian (theo logic) • Sau gửi thơng điệp tới tiến trình khác • Việc gửi thông điệp đáng tin cậy • Các tiến trình khác sau nhận thơng điệp xảy ba tình huống: • (a) : Nếu bên nhận không tài nguyên chia sẻ không muốn vào vùng tài nguyên chia sẻ gửi thơng điệp OK cho bên gửi • (b): Nếu bên nhận tài ngun chia sẻ thay trả lời cho vào hàng đợi yêu cầu • (c): Nếu bên nhận muốn truy cập tài nguyên chia sẻ chưa phép, so sánh nhãn thời gian (timestamp) thông điệp gửi đến với timestamp chứa thơng điệp mà gửi cho tiến trình khác Nếu thơng điệp đến có timestamp thấp hơn, bên nhận gửi thơng điệp OK, khơng khơng gửi Sau gửi gói tin yêu cầu cho phép, tiến trình đợi đến tiến trình khác cho phép Ngay sau tiến trình cho phép, tiến trình Nhóm: 19 19 Tiểu Luận Hệ Thống Phân Tán truy cập tài ngun Khi kết thúc, gửi thơng điệp OK đến tất tiến trình khác hàng đợi xóa nội dung hàng đợi Ví dụ: Ở hình vẽ trên: • Tiến trình gửi yêu cầu với timestamp = đến tất tiến trình • Trong thời điểm đó, tiến trình làm tương tự với timestamp = 12 • Tiến trình khơng muốn truy cập tài ngun, gửi OK đến bên gửi • Cả tiến trình nhận xung đột so sánh timestamp • Tiến trình thua có timestamp lớn phải gửi thơng điệp OK • Tiến trình truy cập vào tài nguyên xếp tiến trình vào hàng đợi để xử lý truy cập tài nguyên • Sau kết thúc, loại bỏ u cầu từ tiến trình khỏi queue gửi thơng điệp OK đến tiến trình cho phép thực Nhược điểm: • Khi tổng số lượng tiến trình hệ thống n u cầu 2(n-1) thơng điệp cho thực thể • Nếu tiến trình lỗi, gây lỗi thơng điệp phản hồi u cầu khiến tồn tiến trình tiến vào vùng giới hạn • Thuật tốn chậm, phức tạp chi phí đắt mạnh mẽ thuật toán tập trung 3.3 TokenRing Algorithm Giả sử tất tiến trình xếp vịng trịn logic, tiến trình đánh số biết đến tiến trình cạnh • Bắt đầu trình truyền, tiến trình trao thẻ • Thẻ lưu hành xung quanh vịng trịn logic Nhóm: 19 20 Tiểu Luận Hệ Thống Phân Tán • Nó chuyển từ tiến trình k đến tiến trình (k+1) cách truyền thơng điệp điểm – điểm • Khi tiến trình giành thẻ từ tiến trình bên cạnh, kiểm tra xem vào vùng tới hạn hay khơng Nếu khơng có tiến trình khác vùng tới hạn vào vùng tới hạn • Sau hồn thành phần việc nhả thẻ thẻ di chuyển tự vịng trịn • Nếu tiến trình muốn vào vùng tới hạn giữ lấy thẻ bài, khơng thẻ truyền qua Nhược điểm: • Vấn đề lớn thuật tốn thẻ có thẻ bị Khi phải sinh lại thẻ việc dị tìm lại thẻ khó Nhóm: 19 21 Tiểu Luận Hệ Thống Phân Tán IV-Kết luận Bài tốn đồng hóa hệ phân tán toán mở gồm nhiều vấn đề rộng Trong tiểu luận ngắn nhóm em tìm hiểu trình bày số giải thuật hệ phân tán sử dụng để giải toán chia sẻ tài nguyên hệ phân tán Vì điều kiện thời gian kiến thức hạn chế, nên q trình làm tiểu luận khơng tránh khỏi thiếu sót Nhóm chúng em mong nhận góp ý giáo Vũ Lan Phương bạn lớp để đề tài giải hoàn chỉnh Xin chân thành cảm ơn! Nhóm: 19 22 Tiểu Luận Hệ Thống Phân Tán TÀI LIỆU THAM KHẢO - [1] Hệ tin học phân tán – TS Lê Văn Sơn, Nhà xuất Đại học quốc gia TP Hồ Chí Minh [2] Các tài liệu tham khảo internet [3] giáo trình hệ điều hành – ThS Nguyễn Phú Trường, khoa Công nghệ Thông tin Đại học Cần Thơ [4] Distributed Systems (Concepts and Design) – George Coulouris, Jean Dollimore Tim Kindberg [5] Advances in Distributed and Parallel Knowledge Discovery – Hillol Kargupta Philip Chan Nhóm: 19 23 ... 19 Tiểu Luận Hệ Thống Phân Tán Ngày nay, hệ phân tán phân chia thành hai loại: 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. .. dụng hệ thống thống toàn vẹn ( A single coherent system) Trước đây, hệ phân tán chia thành ba loại : Hệ điều hành hệ phân tán Cơ sở liệu hệ phân tán Các hệ thống tính tốn hệ phân tán Nhóm:... .12 # Các giải thuật bầu cử (Election Algorithm) .12 Nhóm: 19 Tiểu Luận Hệ Thống Phân Tán 3.3.1 Giải thuật áp đảo (Bully Algorithm) 12 3.3.2 Giải thuật vòng (Ring Algorithm)