Hệ phân tán (phần 3)

PHẦN IV

TRUYỀN THÔNG

Các thành phần của một hệ phân tán là độc lập về mặt logic và mặt vật lí: Các thành phần này truyền thông trong một thứ tự tương tác. Các hệ phân tán và các ứng dụng được soạn của các thành phần phần mềm riêng biệt mà nó tương tác lẫn nhau trong một thứ tự để thực hiện những tác vụ. Các thành phần phần mềm này yêu cầu hoặc cung cấp các truy cập tài nguyên trong các hệ phân tán được thực hiện như các tiến trình. Đây là mô hình khách-chủ hiện thực đã được phác thảo trong chương I: Mô hình hướng đối tượng được định nghĩa cũng có thể được thực hiện trong một kiểu mẫu. Trong hệ thống khách-chủ một tiến trình máy khách phải tương tác với 4 tiến trình máy phục vụ bất cứ khi nào nó yêu cầu truy cập tới một tài nguyên mà nó không điều khiển phần cứng, phần mềm hoặc dữ liệu.

Truyền thông giữa một cặp tiến trình bao gồm các thao tác trong các gửi và nhận cùng kết quả trong:

  1. Truyền dữ lkiệu từ môi trường tiến trình gửi sang môi trường tiến trình nhận.
  2. Trong một vài thao tác, sự đồng bộ hóa việc nhận và gửi hoạt động, vì vậy gửi và nhận các tiến trình là bị ngăn cách tiếp tục cho đến khi các tiến trình khác tạo ra một hoạt động.

Theo (a) ta thấy các tiến trình truyền thông phải chia sẻ một kênh truyền thông – một phương tiện cho dữ liệu được truyền giữa các tiến trình này nhưng ngược lại theo (b) là ngầm ẩn đi trong thao tác của tất cả các phần gốc lập trình để truyền thông.

Các kiến trúc lập trình cơ bản tạo ra một kiểu mẫu của các phần gốc lập trình để gửi và nhận. Các phần gốc lập trình này thực hiện các hoạt động ‘massage-pasing‘(chuyển thông điệp) giữa một cặp tiến trình. Mỗi hoạt động ‘massage-passing’  bao gồm truyền thông tin khi gửi các tiến trình của một tập các giá trị dữ liệu (một thông báo), cho dù một cơ chế truyền thông đã xác định (một kênh hoặc một cổng) và được sự chấp nhận khi các tiến trình gửi đi của thông điệp. Cơ chế này có thể được đồng bộ hoặc là được giới hạn, nghĩa là người gửi chờ đợi sau khi truyền một thông điệp cho đến khi người nhận thực hiện một thao tác nhận hoặc nó có thể không đồng bộ hoặc không giới hạn, nghĩa là thông điệp bị thay thế trong một hàng đợi, các thông điệp chờ người nhận chấp nhận nó và các tiến trình gửi đi có thể xử lí ngay tức khắc. Thông thường, nhận làm hạn chế các tiến trình nhận khi không có một thông báo nào hiện thời có sẵn.

Thực hiện thiết thực hoạt động chuyển thông báo giữa các tiến trình định vị trong các máy tính khác nhau, yêu cầu sử dụng một mạng truyền thông cho sự truyền dữ liệu và sự truyền thông các tín hiệu đồng bộ.

Các hệ phân tán có thể được thiết kế toàn bộ trong giới hạn của masage-passing, nhưng có các kiểu mẫu chắc chắn truyền thông xuất hiện thường xuyên và hữu ích, nó có thể được chú ý như là một phần cần thiết cho việc hỗ trợ để thiết kế và xây dựng hệ phân tán.

Việc thực hiện các hệ phân tán phụ thuộc vào việc thực hiện của các hệ thống nguồn truyền thông, sử dụng truyền thông liên tiến trình. Các hệ phân tán thực hiện mức cao yêu cầu các việc thực hiện  của các kiểu mẫu truyền thông. Trong đặc trưng, phần mềm thực hiện nó thực hiện các kiểu mẫu này nếu truyền thông có một tác động tới hạn trên gốc trễ của truyền thông liên tiến trình.

 

  1. Truyền thông khách-chủ

 Mô hình truyền thông khách chủ được định theo hướng dự phòng dịch vụ. Một thay đổi bao gồm:

Truyền một yêu cầu từ một tiến trình máy khách sang một tiến trình máy phục vụ

Máy phục vụ thi hành các yêu cầu.

Truyền một phúc đáp tới máy khách.

                        Cilent                                                 Server

                                                1.Request

                    (blocked)                                                      2.Processing

                                                   2.Reply

                                    Hình 2.1 Cilent-server Communication

Các kiểu mẫu truyền thông này bao gồm truyền hai thông điệp (hình 2.1) và một kiểu định rõ của sự đồng bộ hóa máy khách và máy phục vụ. Các tiến trình máy phục vụ phải nhận ra thông điệp yêu cầu đã gửi trong bước 1 ngay khi nó đến, và sự đưa ra các yêu cầu trong tiến trình máy khách phải chặn lại.

Kiểu khách-chủ của sự truyền thông có thể được thực hiện trong các kiểu dáng của các thao tác chuyển thông báo cơ sở, gửi và nhận đã phác thảo ở trên, nhưng thông thường nó thay mặt ở cấp độ ngôn ngữ như là một kiến trúc gọi thủ tục từ xa (RPC) che giấu các thao tác truyền thông phía sau sự trừu tượng hóa gọi thủ tục giống nhau và được hiện trong trong các kiểu dáng của một giao thức yêu cầu – phúc đáp cho các thao tác truyền thông được đánh giá lạc quan cho mục đích quản lý.

Trong suốt  thời gian tồn tại, một tiến trình máy phục vụ phục vụ nhiều máy khách, nó cần có một nhận thức không ưu tiên của nó. Mỗi yêu cầu chứa một từ  định danh  truyền thông mà nó được dùng.

  1. Chức năng shipping

Trong kiểu mẫu truyền thông khách-chủ nội dung của thông điệp được chuyển giữa máy khách và máy phục vụ là dữ liệu tinh khiết, thậm chí một phần của thông điệp đầu tiên chỉ định hoạt động (thủ tục) mà máy phục vụ phải thi hành toàn bộ yêu cầu đó. Một mở rộng của mô hình này cho phép chức năng shipping, các định nghĩa thủ tục trong chức năng shipping là: Sự chỉ dẫn để hợp các thủ tục lại được thông qua từ máy khách đến máy phục vụ. Trong mô hình chức năng shipping, máy phục vụ hoạt động như một môi trường thực hiện và các bộ thông dịch cho các chương trình trong một số ngôn ngữ xác định, và các máy khách truyền chuỗi các chỉ dẫn cho sự thông dịch . Một vài chuỗi chỉ dẫn là các định nghĩa của thủ tục đặt tên được lưu trữ bởi máy phục vụ để cho các hoạt động sau đó là các lời gọi thủ tục,  yêu cầu các thủ tục phải được gửi trước đến các máy phục vụ hoặc gắn liền các thủ tục với bộ thông dịch máy phục vụ.

 Phương pháp giải quyết này rất linh động, nó cho phép máy khách mở rộng số lượng hoạt động mà nó có thể thể hiện trong các máy phục vụ. Nhưng nó phải được thực hiện trong giới hạn một ngôn ngữ lập trình xác định được thông dịch bởi máy phục vụ, và máy khách phải tạo ra các yêu cầu  bằng ngôn ngữ này.

Môi trường các chương trình được dịch trên các máy chủ yêu cầu thiết kế đảm bảo để chắc chắn rằng, sự tương tác giữa các máy khách là hoàn toàn kiểm soát được. Bởi vì các giới hạn này, có rất nhiều ví dụ về các chương trình ứng dụng thực tế dùng chức năng shipping, nhưng chỉ có một sự thành công nổi bật : Đó là sự hữu ích của ngôn ngữ Postcsript để truyền thông với các máy in laser và các hệ thống Window, phương pháp giải quyết này được sử dụng trong một phạm vi rộng của máy in laser nhưng nó đã xuất hiện cho đến ngày nay chỉ trong hai hệ thống The Sun News Window System (Sun 1987) và Next Step System của Netcomputer.

Trong một hệ thống mở, các máy khách không thể khởi tạo để nắm giữ các định danh truyền thông của tất cả các tiến trình máy phục vụ, các tiến trình máy phục vụ chỉ quản lý các tài nguyên mà nó có thể sử dụng. Thông thường khi một tiến trình máy phục vụ khởi động nó tự ghi chính nó vào một dịch vụ tên, chỉ ra địa chỉ mạng của nó và một cái tên phổ biến cho dịch vụ mà nó cung cấp. Các máy khách lấy được địa chỉ mạng bằng cách thăm dò dịch vụ tên sử dụng các tên dịch vụ phổ biến giống nhau và vì có thể truyền thông được với máy phục vụ. Nên nhớ rằng một tiến trình là một máy khách hoặc một máy phục vụ cho các mục đích trao đổi đặc biệt hoặc một loạt các trao đổi. Một máy phục vụ có thể yêu cầu dịch vụ này của một máy phục vụ khác và vì vậy có thể là một máy khách, đối với tiến trình khác tương tự như vậy một máy khách có thể là một máy phục vụ đối với một tiến trình khác .

III. Nhóm đa phân phối

Trong mô hình truyền thông, nhóm đa phân phối các tiến trình tương tác lẫn nhau bằng thông điệp, nhưng trong trường hợp này đích đến của một thông điệp không phải là một tiến trình đơn mà là một nhóm các tiến trình. Đối với một nhóm đơn gửi các thao tác, có một chương trình nhận tương ứng được thể hiện bởi mỗi thành viên của một nhóm các tiến trình, gửi một thông điệp đến các thành viên của một nhóm xác định các tiến trình được hiểu là đa phân phối (thuật ngữ quảng bá được sử dụng trong cuốn sách này chỉ đề cập đến tính năng gửi thông điệp đến tất cả các máy tính trong môi trường mạng có sẵn – một kỹ thuật thường được sử dụng trong các mạng cục bộ nhưng không có phạm vi lớn và bởi vậy nó được sử dụng một cách dè xẻn trong các hệ phân tán).

Truyền thông nhóm đa phân phối có thể được minh họa bởi các ví dụ sau:

Định vị một đối tượng: Một máy khách đa phân phối một thông điệp bao gồm tên của  thư mục file đến một nhóm file của các tiến trình máy phục vu, chỉ có một tiến trình trả lời đó là tiến trình nắm giữ thư mục thích hợp .

Tính chịu lỗi: Một máy khách đa phân phối các yêu cầu của nó đến một nhóm các tiến trình máy phục vu. Tất cả các tiến trình xử lý các yêu cầu một cách xác định và có một hoặc nhiều các tiến trình trả lời. Một nhóm 2 hoặc nhiều máy phục vụ có thể tiếp tục cung cấp cho dịch vụ thậm chí nếu một trong số các máy này bị lỗi.

Cập nhật nhiều (phức tạp) : Một sự kiện như  thời gian là 18:01’ có thể đa phân phối đến một nhóm các tiến trình quan tâm.

Có thể có hoặc không sự cung cấp phần cứng cho truyền thông đa phân phối trong mạng dưới đây, không có sự hỗ trợ này, một tin nhắn đa phân phối phải gửi liên tiếp bởi hệ truyền thông đến các thành viên của một nhóm tiến trình : Nó có thể được gửi song song. Quan trọng của truyền thông với các nhóm tiến trình là khi có một sự chấp nhận cấu trúc đối với các hệ phân tán và sự độc lập đối với các sự hỗ trợ phần cứng có sẵn cho truyền thông đa phân phối .

Một vấn đề quan trọng là nếu như toàn bộ thành viên trong một nhóm là trong suốt đối với các tiến trình gởi tới nó. Một ví dụ cho sự thể hiện của các nhóm tiến trình là môi trường lập trình ISIS.

Trong mô hình ISIS, toàn bộ thành viên trong nhóm là trong suốt. Các hoạt động của nhóm gửi và nhóm nhận đều tốt như nhau, mô hình này cung cấp điều  khiển động đến tất cả các thành viên trong các nhóm đặc biệt bằng các hoạt động sau: Hoạt động nhóm khởi tạo, hoạt động nhóm xóa, hoạt động nhóm tham gia, hoạt động nhóm bỏ nó khởi tạo một nhóm rỗng, xóa một nhóm, tạo ra một tiến trình tham gia vào một nhóm có sẵn, hoặc bỏ nó theo từng phiên. Tham gia hoặc bỏ một nhóm, một tiến trình liên quan đến hoặc bỏ ra khỏi bảng liệt kê tương ứng các nơi nhận thông tin đa phân phối .

 

  1. Cấu trúc phần mềm

Sự thiết kế của các hệ điều hành cho các hệ thống máy tính tập trung thường được cho là “chắc chắn như đá” bởi vì tập các lệnh trừu tượng mà chúng cung cấp để sử dụng trong các chương trình ứng dụng được quyết định bởi một giao diện bất biến đơn như là : Giao diện cuộc gọi hệ thống trong hệ UNIX . Ngược lại, sự thiết kế của hệ phân tán không cần phải chắc chắn bởi vì các chương trình ứng dụng có thể truy cập đên rất nhiều dịch vụ khác nhau. Mỗi chương trình cung cấp cho chímh nó một giao diện theo thủ tục để truy cập đến các tài nguyên. Các tài nguyên được cung cấp đến các chương trình ứng dụng có thể thêm các mở rộng bằng cách thêm các dịch vụ mới. Sự khác biệt này phản ánh những đặc tính chính của các hệ phân tán.

Hình vẽ dưới đây cho thấy 4 phần cứng chính và các lớp phần mềm trong một hệ thống máy tính tập trung : Các chương trình ứng dụng, thời gian chạy cung cấp cho các ngôn ngữ lập trình ( ví dụ bộ thông dịch, các thư viện ) cho các thành phần cứng và hệ điều hành. Mỗi tầng sử dụng các chức năng của tầng dưới nó :

    Các tầng trong hệ thống máy tính tập trung:

                    Các chương trình ứng dụng
                    Hỗ trợ ngôn ngữ lập trình
                    Hệ thống mở
                    Phần cứng

Nên nhớ rằng với chuẩn hệ thống thay đổi có thể được thay thế trong giới hạn các tầng phía trên : Các ngôn ngữ lập trình ( ví dụ  C  hoặc  Smalltalk ), hệ điều hành ( ví dụ : Unix hoặc Os/2 ) và phần cứng ( ví dụ : Motoro la 68040 , Intel 80486 ). Trong các máy tính tập trung, hệ điều hành là

lớp phần mềm hệ thống chính. Nó quản lý tất cả tài nguyên cơ bản trong hệ thống cung cấp các dịch vụ thiết yếu cho các chương trình ứng dụng và người sử dụng, bao gồm :

Quản lý tài nguyên cơ bản :

_ Định vị và bảo vệ bộ nhớ.

_ Khởi tạo tiến trình và lập bảng danh mục cho bộ xử lý .

_ Điều khiển thiết bị ngoại vi .

Người sử dụng và các dịch vụ ứng dụng .

_ Sự tin cậy của người sử dụng và các điều kiện truy nhập (ví dụ: tính năng logic)

_ Quản lí tệp và tính năng truy cập tệp .

_ Tính năng thời gian .

Tất cả các dịch trên dược thực hiện chủ yếu bởi nhân hệ điều hành trong hệ thống tập trung .

Trong các hệ thống, chúng ta phải cung cấp các chức năng trên và các dịch vụ khác, các chương trình ứng dụng theo cách mà cho phép các dịch vụ mới có thể dễ dàng cài đặt vào.

 Và chúng tôi đưa ra một lớp mới các thành phần phần mềm, được gọi là các dịch vụ mở để cung cấp cho tất cả các phần khác chia sẻ tài nguyên và các dịch vụ. Nhiệm vụ của một nhân (kernel) là giới thiệu một tập lệnh trừu tượng các chương trình hướng tới các vấn đề phổ biến, như là các tiến trình cho người sử dụng và cho chương trình ứng dụng, bảo vệ chúng khỏi các chi tiết cơ bản của bộ xử lí và phần cứng khác. Thêm vào đó, các nhân bảo vệ mã, dữ liệu và phần cứng khỏi các truy cập bất hợp pháp từ người sử dụng và các chương trình ứng dụng. Các nhân(kernel) không được thiết kế để trở thành các lộ trình xác định. Nhiều dịch vụ không yêu cầu truy cập đặc quyền đến mã và dữ liệu của nhân, hoặc phần cứng máy tính không liên quan đến nhân.

Tính mở nghĩa là các hệ phân tán có thể cấu hình theo các nhu cầu đặc biệt của nhóm truyền thông, của người sử dụng có sẵn hoặc một tập các chương trình ứng dụng.

Nơi quản lí hệ thống cấu hình các dịch vụ có sẵn trong một hệ thống. Người dùng lựa chọn và sử dụng các chương trình ứng dụng. Các thành phần hệ thống dư thừa có thể tránh khỏi và các tiện lợi có thể được đưa đến các máy mới hoặc phần mềm. Nói chung, hệ thống mở phát triển máy tính với các cấu trúc khác nhau và các nhân hệ điều hành có thể hợp thành một thể thống nhất, chương trình ứng dụng chạy song song và hợp tác với một cái khác.

Ngoài những khía cạnh kỹ thuật của tính mở, các hệ thống đôi khi được gọi là mở khi các thành phần phần cứng hoặc mềm được cung cấp bởi các công ty khác nhau mà có thể làm việc với nhau trong cùng hệ thống, cụm từ “hệ thống mở” thường được sử dụng với nghĩa thương mại nhiều hơn là nghĩa kỹ thuật đưa ra ở trên.

Hình vẽ dưới đây minh họa các mục tiêu chính của phần mềm tồn tại bên trong các hệ phân tán và sự phụ thuộc lẫn nhau của chúng.

Các ứng dụng
Hỗ trợ lập trình phân tán                Các dịch vụ mở
Các dịch vụ nhân hệ điều hành
Phần cứng mạng và máy tính

Trong hình này, một đường nằm ngang chia rẽ báo hiệu rằng các dịch vụ được hỗ trợ bởi phần bên dưới đường (line) trực tiếp sử dụng bởi các thành phần bên trên.

Ví dụ các chương trình ứng dụng có thể các dịch vụ nhân OS, các hỗ trợ chương trình phân tán và các dịch vụ mở.

Các mục được mô tả ở hình trên tương ứng với các mức khác nhau về sự trừu tượng của hệ phân tán, mỗi mức đưa ra một mức khác nhau trong suốt đến người sử dụng. Ví dụ: Một người sử dụng chỉ chạy một chương trình kế toán có thể không có một tí khái niệm nào của hệ thống phân tán. Một chương trình ứng dụng phân tán khởi động các chương trình chạy tại các tập máy lựa chọn, nhưng giải quyết các chức năng của các chương trình này hơn là các đặc tính xác định của các máy: Người sử dụng có thể viết trong một ngôn ngữ lập trình phân tán và sử dụng tin tức của các dịch vụ có sẵn: Người lập trình hoặc người quản lý hệ thống sử dụng tin tức với các vai trò khác nhau của các máy khác nhau trong hệ thống.

Mỗi tầng trong hình được thực hiện bởi một tập các thành phần phần cứng hoặc phần mềm, có thể khác nhau trong giao diện và cấu trúc. Ngoài các chương trình ứng dụng và các lớp phần cứng, chúng ta có thể phân biệt 3 mục chính của phần mềm cung cấp cho sự thực hiện của các chương trình ứng dụng chúng có thể được xem như là các thành phần của hệ điều hành  phân tán. Vai trò của nó được phác thảo dưới đây:

Các dịch vụ nhân hệ điều hành : Nó phải có một nhân phần mềm trong mỗi máy tính chịu trách nhiệm cung cấp các tài nguyên, và dịch vụ cơ bản nhất trong khi phải bảo vệ các thành phần phần cứng khỏi các truy cập bất hợp pháp. Đây có thể là một qui ước. Nhân trong hệ UNIX mở rộng để cung cấp các dịch vụ truyền thông mạng như là trong 4.BSD UNIX. Nhưng có rất nhiều dịch vụ được cung cấp bởi nhân bất biến.

Điều đó đưa đến sự phát triển của các vi nhân: Có rất nhiều nhân được cung cấp bởi các tập tài nguyên và dịch vụ nhỏ nhất có thể, các dịch vụ còn lại có thể được xây dựng. Thông thường tập dịch vụ cơ bản này bao gồm một tiến trình trừu tượng và một dịch vụ truyền thông cơ bản. Mức cao nhất của tính mở là đạt được phương pháp giải quyết này. Chúng ta sẽ mô tả sự thiết kế chức năng của một vi nhân (microkernel) thông thường: Trong chương 6 đưa ra ba ví dụ (Mach,Amoeba,Chorus). Nên nhớ rằng các máy tính chạy trên các nhân  khác nhau có thể được sử dụng trong hệ phân tán miễn là các dịch vụ truyền thông là chuẩn hoá. Một hệ phân tán đơn có thể bao gồm một số máy tính dùng nhân UNIX cùng với các máy tính sử dụng các vi nhân khác để tối ưu các yêu cầu đặc biệt của chương trình ứng dụng hoặc các dịch vụ .

Các dịch vụ mở: Nó đem lại một số tính năng lập trình cho hệ phân tán thích ứng với các mức yêu cầu của các chương trình ứng dụng, các dịch vụ mới có thể phát triển và cài đặt theo các yêu cầu, cho phép các hệ phân tán thích ứng với nhiều loại yêu cầu khác nhau của các chương trình ứng dụng. Phạm vi của các dịch vụ từ các tài nguyên cơ bản như dịch vụ phân phối thư điện tử. Hầu hết các hệ thống được hỗ trợ khởi tạo ít nhất là tập các dịch vụ cầ thiết cho các qui ước phân tán trong hệ UNIX. Các tiến trình máy phục vụ và các chương trình ứng dụng không thể phân biệt được các nhân hay vi nhân trên các máy tính mà nó đang sử dụng. Vai trò của nhân đơn giản là hỗ trợ cho các máy tính với các xử lí cơ bản và các tính năng truyền thông.

Sự khác biệt giữa các dịch vụ nhân và các dịch vụ mở là: Các nhân không thể có môi trường mở. Nó bắt buộc phải tự sự bảo vệ chính mình chống lại sự thay đổi thời gian chạy, vai trò của nó là cung cấp một giao diện ổn định cho các tài nguyên mức độ thấp.

Sự hỗ trợ cho chương trình phân tán : Liên quan đến sự hỗ trợ cho thời gian chạy cho các tính năng ngôn ngữ cho phép các chương trình được viết trong các ngôn ngữ qui ước, làm việc với nhau như là lời gọi thủ tục xa và truyền thông nhóm đa phân phối. Một vài các ngôn ngữ lập trình được phát triển xác định cho các chương trình ứng dụng phân  tán. Nó yêu cầu sự hỗ trợ thời gian chạy bao quát hơn. Các thành phần hỗ trợ ngôn ngữ không liên quan đến sự phân tán như là các hệ thống dịch ngôn ngữ và các thư viện được bỏ qua từ hình trên với mục đích cho sự rõ ràng.

PHẦN V

AN TOÀN AN NINH

I. Cơ chế xác nhận

Trong các hệ thống đa người sử dụng tập trung, các cơ chế xác nhận  có thể tương đối đơn giản, cá tính của người sử dụng có thể xác nhận bằng một mật mã kiểm tra các phiên tương tác lẫn nhau, và các phiên này sau đó có thể xử lí như là một miền mà tất cả các thao tác được thực hiện bởi quyền người sử dụng. Sự gần gũi này tin cậy vào điều khiển trung tâm các nguồn hệ thống bằng một nhân hệ điều hành. Ngăn cản các phép thử lại để tạo ra các phiên tương tác để giả dạng khi có nhiều người sử dụng khác. Một mức độ điều khiển tập trung toàn bộ các tài nguyên trong một hệ thống không đạt được hoặc ngay cả khi mong muốn trong cấu trúc mở nhiều hơn của các hệ phân tán có mục đích chung.

Trong các hệ phân tán sự xác nhận là một phương tiện mà tính đồng nhất của các máy  phục vụ và máy khách là đáng tin cậy. Cơ chế được dùng đạt được các điều này dựa trên cơ sở quyền sở hữu của các khóa mật hóa, từ việc một phần chính chiếm hữu một khóa mật, chúng ta kết luận rằng phần chính có tính đồng nhất mà nó có quyền yêu cầu, đúng như trong các tầng bí mật hoặc công việc tình báo, quyền sở hữu của một mật mã bí mật được thực hiện xác thực tính đồng nhất  của bộ xử lý.

Các cơ chế xác nhận của hệ phân tán lấy biểu mẫu của một dịch vụ xác nhận. Các dịch vụ xác nhận này tin cậy vào mức sử dụng của sự mật hóa bảo đảm an toàn. Các dịch vụ này yêu cầu một phương tiện an toàn dự phòng tạo ra, lưu trữ và phân tán tất cả các khóa mật mã hóa cần thiết trong một hệ phân tán, được biết đến như là một dịch vụ phân tán khóa mật hóa.

Kiểm soát an toàn
Các cơ chế điều                             Các chức năng khiển truy cập                                                 mật mã hóa
Các dịch vụ phân tán khóa mật hóa và xác nhận

 

  1. Các cơ chế điều khiển truy cập

Các cơ chế điều khiển truy cập liên quan tới việc đảm bảo truy cập các nguồn thông tin ( ví dụ như các tệp, các tiến trình hoặc các cổng truyền thông) và các nguồn phần cứng ( ví dụ như máy in, các công cụ xử lý hoặc các cổng mạng ) có sẵn để tập hợp con của nhiều người sử dụng được cho phép để truy cập hiện tại.

Các cơ chế điều khiển truy cập xuất hiện trong các hệ điều hành đa ngươi sử dụng không phân tán. Trong hệ điều hành UNIX, qui ước và đa người sử dụng khác các tệp là các nguồn thông tin chia sẻ quan trọng nhất, và một cơ chế điều khiển truy cập được cung cấp cho phép mỗi người sử dụng bảo vệ một số tệp cá nhân và chia sẻ các tệp này trong một kiểu điều khiển. Một cơ chế được biết đến cho giới hạn truy cập đến các tệp cá nhân được kết hợp chặt chẽ trong hệ điều hành UNIX dựa trên cơ sở một phiên bản các danh sách điều khiển truy cập.

TÀI LIỆU THAM KHẢO

  • DISTRIBUTED SYSTEMS CONCEPS AND DESIGN của George Coulouris, Jean Dollimore và Tim Kindberg.
  • Tham khảo trang web: http://lass.cs.umass.edu/~shenoy/courses/677

Leave a Reply