Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 89 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
89
Dung lượng
2,11 MB
Nội dung
Trao đổi thông tin trong hệ phân tán 1 Các hệ phân tán @ Hà Quốc Trung 2010 Nội dung 1. Các khái niệm cơ bản 2. Lời gọi thủ tục từ xa 3. Trao đổi thông tin bằng thông báo 4. Trao đổi thông tin dòng 5. Trao đổi thông tin đa điểm 2 Các hệ phân tán @ Hà Quốc Trung 2010 1. Các khái niệm cơ bản I. Giao thức II. Kiến trúc phân tầng III.Mô hình ISO/OSI IV.Phân loại các phương pháp trao đổi thông tin Các hệ phân tán @ Hà Quốc Trung 2010 3 I. Giao thức • Tập hợp các qui ước trao đổi thông tin >=2 thực thể – Cú pháp dữ liệu – Thủ tục truyền thông • Phân loại – Hướng kết nối/Không hướng kết nối – Tin cậy/Không tin cậy – Đồng bộ/không đồng bộ – Bền vững/Không bền vững • Chức năng – Đánh địa chỉ,Kiểm soát lỗi,Kiểm soát luồng dữ liệu, Dồn/tách kênh,Chọn đường • Là thành phần cơ bản nhất thực hiện trao đổi thông tin • Cung cấp các dịch vụ để gửi các thông báo 4 Các hệ phân tán @ Hà Quốc Trung 2010 Phân loại giao thức • Hướng kết nối – Kết nối, gửi dữ liệu, nhận dữ liệu, giải phóng kết nối • Không hướng kết nối – Gửi dữ liệu, nhận dữ liệu • Tin cậy – Gửi dữ liệu, nhận dữ liệu, báo nhận dữ liệu (đích), báo nhận dữ liệu (nguồn) • Không tin cậy – Gửi dữ liệu, nhận dữ liệu Các hệ phân tán @ Hà Quốc Trung 2010 5 Các khái niệm trong giao thức • Thủ tục phân tán: – gửi, nhận, xác nhận, kết nối, ngắt kết nối, phân giải địa chỉ, định tuyến, chuyển tiếp, • Nguồn, đích, kênh: – thực thể truyền tin=> định danh: đánh địa chỉ • Cú pháp dữ liệu – Luồng dữ liệu – Đơn vị dữ liệu Các hệ phân tán @ Hà Quốc Trung 2010 6 Ví dụ: HLDC (High Level Data Link Control) 7 6 5 4 3 2 1 0 N(R) Receive sequence no. P/F N(S) Send sequence no. 0 I- fram e N(R) Receive sequence no. P/F type 0 1 S- fram e type P/F type 1 1 U- fram Các hệ phân tán @ Hà Quốc Trung 2010 7 •Thủ tục •Yêu cầu: BALA, I, RR, RNR, (SNRM or SARM or SABM), DISC •Trả lời (I, RR, RNR, UA, DM, FRMR) •VD: truyền tin •Thiết lập kết nối: SNR, SARM, SABM •Xác nhận thiết lập kết nối: UA •Truyền I •Nhận I, RR, RNR, •Giải phóng kết nối Ví dụ về giao thức hướng kết nối 8 Các hệ phân tán @ Hà Quốc Trung 2010 II. Kiến trúc phân tầng • Trao đổi thông tin trong hệ phân tán – Mục đích: • Trao đổi thông tin đầu cuối (giữa các chương trình) • Không sử dụng bộ nhớ chung • Chủ yếu dựa vào trao đổi các thông báo – Vấn đề • Đồng bộ nguồn-kênh-đích – Bit, byte, lỗi, thiết bị trung gian, tốc độ truyền tin • Kiểm soát lỗi, luồng dữ liệu, chuyển tiếp, định tuyến • Giao diện với tầng vật lý • Phức tạp: cần chia nhỏ bài toán Các hệ phân tán @ Hà Quốc Trung 2010 9 Kiến trúc phân tầng • Trao đổi thông tin giữa các hệ thống – Phức tạp, đa dạng, nhiều vấn đề – Chia để trị: các cặp p2p giải quyết vấn đề cụ thể (distributed modules) bằng một giao thức • Chia để trị – Phần mềm=> thủ tục và hàm – Ứng dụng phân tán=> giao thức • Nguyên tắc – Các giao thức độc lập – Liên kết tối thiểu 10 Các hệ phân tán @ Hà Quốc Trung 2010 [...]... Các hệ phân tán @ Hà Quốc Trung 2010 16 Nội dung 1 2 3 4 5 Kiến trúc phân tầng Lời gọi thủ tục từ xa Trao đổi thông tin bằng thông báo Trao đổi thông tin dòng Trao đổi thông tin đa điểm Các hệ phân tán @ Hà Quốc Trung 2010 17 2 Lời gọi thủ tục từ xa I Socket API II Cơ chế lời gọi thủ tục từ xa III Cơ chế truyền tham số IV Lời gọi thủ tục từ xa không đồng bộ V Ví dụ về lời gọi thủ tục từ xa Các hệ phân. .. để truyền các thông báo – Request(M), Notify(M), Response(M), Confirm(M) • Tầng dưới cung cấp dịch vụ cho tầng trên – Cơ chế callback, notify, … • Sử dụng các thông tin điều khiển trong các thông báo để phân biệt các dịch vụ Các hệ phân tán @ Hà Quốc Trung 2010 11 Tiêu đề -Thông tin điều khiển Các hệ phân tán @ Hà Quốc Trung 2010 12 Mô hình ISO/OSI Kết nối các hệ thống mở Các hệ phân tán @ Hà Quốc Trung... đồng bộ V Ví dụ về lời gọi thủ tục từ xa Các hệ phân tán @ Hà Quốc Trung 2010 18 I Socket API • Server – Đăng ký cổng, nghe trên cổng – Chấp nhận kết nối đến cổng – Trao đổi thông tin (gửi/nhận) qua cổng – Giải phóng kết nối • Client – Thiết lập kết nối sử dụng cổng server và client – Trao đổi thông tin (gửi/nhận) – Giải phóng kết nối Các hệ phân tán @ Hà Quốc Trung 2010 19 Socket API • Vấn đề – Xác... Đồng bộ giữa client và server • Liên hệ giữa phiên làm việc và kết nối • Rất không thuận tiện cho trường hợp RequestResponse Các hệ phân tán @ Hà Quốc Trung 2010 20 II Khái niệm lời gọi thủ tục từ xa • Trừu tượng hóa trao đổi thông tin giữa client và server • Từ yêu cầu=> trả lời thành quan hệ – Tham số thực hiện=> kết quả trả về • Cú pháp lời gọi thủ tục Các hệ phân tán @ Hà Quốc Trung 2010 21 Lời gọi... vào tham chiếu Các hệ phân tán @ Hà Quốc Trung 2010 29 Truyền tham số bằng tham biến Các hệ phân tán @ Hà Quốc Trung 2010 30 Truyền tham số bằng tham biến • Chỉ hoạt động tốt khi hệ thống đầu cuối là đồng nhất • Xuất hiện vấn đề khi: – Biểu diễn dữ liệu của 2 hệ thống khác nhau – Các dữ liệu không thuộc cùng một kiểu, các kiểu dữ liệu khác nhau được biểu diễn khác nhau Các hệ phân tán @ Hà Quốc Trung... Các hệ phân tán @ Hà Quốc Trung 2010 22 Cơ chế truyền tham số • Tham biến • Tham chiếu • Copy/phục hồi – CT gọi copy các dữ liệu vào Stack – CT gọi phục hồi các dữ liệu từ Stack • Chương trình chính và thủ tục chia sẻ một luồng thực hiện Các hệ phân tán @ Hà Quốc Trung 2010 23 Cơ chế RPC Các hệ phân tán @ Hà Quốc Trung 2010 24 Cơ chế RPC • Cho phép một tiến trình gọi một thủ tục thực hiện trên một hệ. .. • Thiết lập kết nối với server khi nào? Các hệ phân tán @ Hà Quốc Trung 2010 27 Chức năng của server stub • Sẵn sàng nhận các lời gọi • Gọi chương trình server • Trả lời lại các lời gọi Các hệ phân tán @ Hà Quốc Trung 2010 28 III Cơ chế truyền tham số • Tham biến – Giữa client và server – Vấn đề khi biểu diễn dữ liệu khác nhau • Tham chiếu – Bộ nhớ phân tán – Copy dữ liệu??? • Tham chiếu thay bằng... Client's OS Gửi thông báo đến cho Server OS • Server OS chuyển thông báo cho server stub • Giải mã nội dung thông báo, gọi chương trình con • Trả lại kết quả cho Server Stub • Đóng gói kết quả, chuyển cho, local OS • Gửi thông báo đến cho client's OS • Chuyển thông báo cho client stub • Giải mã thông báo, chuyển cho client Các hệ phân tán @ Hà Quốc Trung 2010 26 Chức năng của client-stub • Sẵn sàng... phân tán @ Hà Quốc Trung 2010 13 Giao thức TCP Các hệ phân tán @ Hà Quốc Trung 2010 14 III Giao thức của PM trung gian 2-5 Các hệ phân tán @ Hà Quốc Trung 2010 15 Tầng phần mềm trung gian • Các ứng dụng đều có cùng các nhu cầu – Bảo mật, xác thực, đồng bộ, định danh, sao lưu • Phần mềm trung gian cung cấp các dịch vụ nói trên • Các dịch vụ được sử dụng thông qua giao thức, thực thể, dữ liệu • Các giao... Trung 2010 31 Sai lệch trong truyền bằng tham biến Các hệ phân tán @ Hà Quốc Trung 2010 32 Truyền tham số bằng tham biến • Tham chiếu chỉ có ý nghĩa cục bộ • Có thể được thực hiện được bằng cách – Cấm sử dụng các tham chiếu – copy các giá trị • Có thể cải thiện bằng cách chỉ copy một lần (cho input hoặc output) • Không thực hiện được tham chiếu tới các dữ liệu có cấu trúc Các hệ phân tán @ Hà Quốc Trung . Trao đổi thông tin trong hệ phân tán 1 Các hệ phân tán @ Hà Quốc Trung 2010 Nội dung 1. Các khái niệm cơ bản 2. Lời gọi thủ tục từ xa 3. Trao đổi thông tin bằng thông báo 4. Trao đổi. 16 Các hệ phân tán @ Hà Quốc Trung 2010 Nội dung 1. Kiến trúc phân tầng 2. Lời gọi thủ tục từ xa 3. Trao đổi thông tin bằng thông báo 4. Trao đổi thông tin dòng 5. Trao đổi thông tin đa. giao thức hướng kết nối 8 Các hệ phân tán @ Hà Quốc Trung 2010 II. Kiến trúc phân tầng • Trao đổi thông tin trong hệ phân tán – Mục đích: • Trao đổi thông tin đầu cuối (giữa các chương trình)