Nó là thú vị để lưu ý rằng nếu chúng ta đảo ngược dòng "R-cung cấp m 'và' nếu (qp z) sau đó B-multicast (g, m); kết thúc nếu 'trong hình 15.9, thì thuật toán kết quả không đáp ứng thỏa thuận thống nhất. Cũng như có một phiên bản thống nhất thỏa thuận, cũng có phiên bản thống nhất tài sản anymulticast, bao gồm cả giá trị và tính toàn vẹn và tính chất đặt hàng mà chúng tôi muốn xác định.
15.4.3 multicast có thứ tự thuật toán multicast cơ bản của mục 15.4.1 Ðăng mang thông điệp các quá trình trong một trật tự tùy ý, do sự chậm trễ tùy ý trong các hoạt động gửi một-một nằm bên dưới. Việc thiếu một sự bảo đảm trật tự là không thỏa đáng cho nhiều ứng dụng. Ví dụ, trong một nhà máy điện hạt nhân có thể là quan trọng là sự kiện biểu thị mối đe dọa đến điều kiện an toàn và các sự kiện biểu thị hành động của các đơn vị kiểm soát được quan sát theo thứ tự của tất cả các quá trình trong hệ thống. Như đã thảo luận trong chương 6, các yêu cầu đặt hàng phổ biến là tổng số đặt hàng, đặt hàng và quan hệ nhân quả FIFO đặt hàng, cùng với các giải pháp lai (đặc biệt là quan hệ nhân quả total- và tổng-FIFO). Để đơn giản hóa cuộc thảo luận của chúng tôi, chúng tôi xác định các orderings theo giả định rằng bất kỳ quá trình thuộc về nhiều nhất là một nhóm (sau này chúng tôi thảo luận về tác động của việc cho phép các nhóm để chồng lên nhau): FIFO đặt hàng: Nếu một multicast vấn đề quy trình chính xác (g, m) và sau đó multicast (g, mc), sau đó tất cả các quá trình chính xác mang mc sẽ cung cấp m trước khi mc. Đặt quan hệ nhân quả: Nếu multicast (g, m) o multicast (g, mc), nơi mà o là mối quan hệ xảy ra, trước khi chỉ gây ra bởi tin nhắn được gửi giữa các thành viên của g, sau đó bất kỳ quá trình chính xác mà cung cấp mc sẽ cung cấp m trước khi mc. Tổng số đặt hàng: Nếu một quá trình chính xác gửi thông điệp m trước khi nó cung cấp mc, sau đó bất kỳ quá trình chính xác khác mà cung cấp mc sẽ cung cấp m trước khi mc. Đặt quan hệ nhân quả ngụ ý FIFO đặt hàng, vì bất kỳ hai multicast bởi cùng một quá trình được liên kết bởi đã xảy ra-trước. Lưu ý rằng FIFO đặt hàng và đặt hàng là quan hệ nhân quả orderings chỉ một phần: không phải tất cả các tin nhắn được gửi qua quá trình tương tự, nói chung; tương tự như vậy, một số multicast là đồng thời (không phải theo yêu cầu của đã xảy ra-trước). Hình 15.11 minh họa các orderings cho trường hợp của ba quá trình. Đóng kiểm tra con số này cho thấy rằng các thông điệp hoàn toàn lệnh được giao theo thứ tự ngược lại với thời gian vật lý mà chúng được gửi. Trong thực tế, định nghĩa của tổng số đặt hàng cho phép chuyển tin nhắn được sắp xếp tùy ý, miễn là theo thứ tự là cùng một lúc quá trình khác nhau. Từ tổng số đặt hàng là không nhất thiết cũng là một FIFO hoặc trật tự nhân quả, chúng tôi xác định lai của FIFO-tổng số đặt hàng là một mà chuyển tin nhắn tuân theo cả hai FIFO và tổng số đặt hàng; tương tự như vậy, theo quan hệ nhân quả, tổng số chuyển tin nhắn đặt hàng tuân theo cả hai quan hệ nhân quả và tổng số đặt hàng. Các định nghĩa của multicast ra lệnh không mang hàm ý hoặc độ tin cậy. Ví dụ, người đọc nên kiểm tra xem, dưới tổng số đặt hàng, nếu đúng quy trình p gửi thông điệp m và sau đó cung cấp mc, sau đó một quá trình có thể cung cấp chính xác q m mà không có cũng cung cấp mc hoặc bất kỳ tin nhắn khác ra lệnh sau m. Chúng tôi cũng có thể hình thành lai của giao thức ra lệnh và đáng tin cậy. Một multicast đáng tin cậy hoàn toàn lệnh thường được nhắc đến trong văn học như một multicast nguyên tử. Tương tự như vậy,
đang được dịch, vui lòng đợi..
