Kĩ thuật lập trình - Agent và mobile agent tác tử và tác tử di động

I. Tổng quan

II. Tác tử di động cho tính toán di động

III. Mở rộng UML cho tác tử di động

IV. Tác tử di động áp dụng vào các ứng dụng di

động

V. Giải quyết các vấn đề của tính toán di động

bằng tác tử di động

VI. Các kỹ thuật của phần mềm dựa trên tác tử

pdf31 trang | Chia sẻ: Mr Hưng | Lượt xem: 882 | Lượt tải: 1download
Bạn đang xem trước 20 trang nội dung tài liệu Kĩ thuật lập trình - Agent và mobile agent tác tử và tác tử di động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Agent & Mobile Agent Tác tử & tác tử di động Tính toán di động Nội dung I. Tổng quan II. Tác tử di động cho tính toán di động III. Mở rộng UML cho tác tử di động IV.Tác tử di động áp dụng vào các ứng dụng di động V. Giải quyết các vấn đề của tính toán di động bằng tác tử di động VI.Các kỹ thuật của phần mềm dựa trên tác tử 28/09/2011 @Hà Quốc Trung 2011 2 1. Tổng quan I. Cơ chế hoạt động của tác tử phần mềm II. Kết hợp giữa tác tử phần mềm và client- server III. Phân chia các chức năng cần thực hiện 28/09/2011 3 @Hà Quốc Trung 2011 I. Cơ chế hoạt động của các tác tử phần mềm • Strong mobility (tính di động chặt) • Weak Mobility (tính di động lỏng) • Cơ chế hoạt động của Mobile Agent • Công cụ thực hiện mobile agent • Biểu diễn mobile agent bằng UML 28/09/2011 @Hà Quốc Trung 2011 4 Khái niệm tác tử di động • Tác tử – mã+dữ liệu+trạng thái – Tự chủ, tự kích hoạt, tự điều khiển – Tác tử đối tượng • Di động – Dữ liệu có thể được dịch chuyển theo mô hình clien-server, theo mô hình tệp, sau đó được gắn kết lại tại đích – Mã và trạng thái cần có cơ chế phức tạp hơn • Tính di động – Yếu: chỉ dịch chuyển mã và dữ liệu – Mạnh: dịch chuyển mã, dữ liệu và trạng thái 28/09/2011 @Hà Quốc Trung 2011 5 Cơ chế hoạt động của tác tử di động • Tác tử đến một host. Host khởi động tiến trình mới • Mã, dữ liệu và trạng thái được cài đặt trên host. Tác tử thực hiện lệnh tiếp theo • Tác tử kết thúc quá trình thực hiện hoặc di chuyển: kết thúc tiến trình hiện tại • Đóng gói mã, dữ liệu và trạng thái theo dạng không phụ thuộc vào máy • Host tiếp theo được xác định, thông báo được chuyển tới host • Trở lại bước đầu tiên 28/09/2011 @Hà Quốc Trung 2011 6 II. Mô hình lai MA và Client-Server • Client-server: bộ đệm chuyển dịch tương tác về cục bộ • Agent: client và server có thể dịch chuyển thành cục bộ • Tối ưu: lựa chọn cơ chế phù hợp cho từng trường hợp – Có kết nối: client-server – Kết nối không ổn định: MA – Client agent-server 28/09/2011 @Hà Quốc Trung 2011 7 Client-agent • Hoạt động như server cục bộ • Client chỉ tương tác với agent trên máy client – Hiệu năng, thời gian thực • Client-agent sẽ tính toán để “định cư” tại client hay servers • Client-agent thực hiện trao đổi thông tin với server để đảm bảo QoS 28/09/2011 @Hà Quốc Trung 2011 8 III. Phân tách chức năng • Đa tầng: Giao diện, logic, dữ liệu • Chia cho nhiều loại MA: UIA, UPA, PA, DA • Giảm kích thước của MA • Giảm thiểu việc MA phải dịch chuyển • Tăng độ mềm dẻo của MA • Tái sử dụng mã của MA 28/09/2011 @Hà Quốc Trung 2011 9 Phân tách chức năng • Càng nhiều MA nhỏ càng tốt? • Độ trễ tương tác • Độ trễ dịch chuyển • Giao diện, logics, dữ liệu 28/09/2011 @Hà Quốc Trung 2011 10 2. Tác tử di động cho tính toán di động • Đặc điểm của tác tử di động • Những điểm phù hợp với tính toán di động • Những điểm không phù hợp • Một số công cụ thường gạp 28/09/2011 @Hà Quốc Trung 2011 11 I. Đặc điểm của tác tử di động • Mã, dữ liệu và trạng thái là di động • Tự chủ, không đồng bộ – Vòng đời riêng, tự quản lý, không có ràng buộc về thời gian • Thông minh – Có khả năng đáp ứng trong những trường hợp không xác định trươcs • Đệ qui – Có khả năng sinh ra các MA con 28/09/2011 @Hà Quốc Trung 2011 12 Những điểm phù hợp • Tác tử di động luôn luôn chủ động (active) – Không cần đến sự kích hoạt hay lời gọi phương thức, . • Sử dụng ít băng thông hơn RPC hay ROI – Phụ thuộc vào ứng dụng . • Thời gian đáp ứng tốt – Cục bộ (trả giá bằng độ chính xác?) • Mặc định, hệ thống MA là không đồng nhất – Môi trường MA cung cấp tính đồng nhất 28/09/2011 @Hà Quốc Trung 2011 13 Những điểm phù hợp • Có thể hoạt động với kết nối mạng không ổn định – Do tính chất tự trị và không đồng bộ • Tính thích nghi cao – Khả năng của thiết bị, giao diện nsd, . – MA phục vụ giao diện có thể thay đổi thích nghi với tài nguyên sẵn có • Chú ý tác tử di động tính toán di động 28/09/2011 @Hà Quốc Trung 2011 14 Những điểm không phù hợp • Xây dựng ứng dụng MA khó khăn và phức tạp hơn ứng dụng client-server • Các môi trường thực hiện MA của các nhà cung cấp khác nhau hoạt động khác nhau – MASIF nỗ lực để thống nhất • Vấn đề bảo mật rất phức tạp trong môi trường MA 28/09/2011 @Hà Quốc Trung 2011 15 Khó khăn của nền tảng MA • Các thiết bị có cấu hình rất khác nhau – Khả năng (phi chức năng) của các agent khác nhau – Rất khó có một tập các khả năng phi chức năng cơ bản phù hợp cho tất cả các thiết bị • Tính di động mạnh: Rất khó thực hiện – Chỉ sử dụng tính di động yếu ? (J2ME) – Ràng buộc về thiết bị để đảm bảo tính di động mạnh (BREW) 28/09/2011 @Hà Quốc Trung 2011 16 Bảo mật của MA • Môi trường trên các máy khó hạn chế được việc sử dụng các tài nguyên của MA • Không có hạn chế việc MA khởi tạo và sử dụng các công cụ truyền thông – Nếu có vi phạm tính chất tự trị • Hệ thống không đồng nhất – Giao diện bảo mật cần được chuẩn hóa – Cần có các giao diện tùy biến cho các hệ thống khác nhau – Phức tạp và khó khăn cho việc chuẩn hóa 28/09/2011 @Hà Quốc Trung 2011 17 II. MASIF (Mobile Agent System Interoperability Facility) • Chuẩn trao đổi thông tin giữa các hệ thống MA • Chức năng – Quản lý các agent – Chuyển tải các agent – Tên của các Agent – Các dạng agent chuẩn cho các nền tảng hệ thống khác nhau – Phân giải tên 28/09/2011 @Hà Quốc Trung 2011 18 Một số khái niệm của MASIF • Agent tĩnh • Kiểu Agent theo hệ thống • Vị trí của Agent • Tên của Agent • Agent system=host • Kết nối giữa các Agent • Code Base • 28/09/2011 @Hà Quốc Trung 2011 19 Bảo mật của MASIF – Vấn đề: – DOS , xác thực, nghe trộm • Giải pháp: – Bảo mật mức mạng – Xác thực lẫn nhau giữa các agent – Xác thực và ủy quyền giữa các agent – Chính sách bảo mật cho agent và host – Xác thực khi tạo một agent ở xa – Kiểm tra nguồn gốc thông tin (cho kết quả và quyền truy cập) 28/09/2011 @Hà Quốc Trung 2011 20 III. FIPA (Foundation of Physical Agent) • Mô tả kiến trúc trừu tượng – MA, host, trao đổi thông tin giữa các MA • Quản lý Agent – Agent thực hiện các thao tác tùy ý, tuy nhiên cần có một tập các thao tác cơ bản – quản lý, thư mục, trao đổi thông tin, . • Đặc tả trao đổi thông báo • Đặc tả cấu hình agent • Đặc tả biểu diễn dữ liệu tầng giao vận (bit, XML) • Đặc tả các hỗ trợ di động • Đặc tả sử dụng HTTP làm tầng giao vận • Đặc tả sử dụng IIOP làm tầng giao vận 28/09/2011 @Hà Quốc Trung 2011 21 III. FIPA (Foundation of Physical Agent) • Đặc tả ứng dụng di động (“Vô gia cư”) – QoS, – Thỏa thuận về giao thức tầng giao vận – Hỗ trợ thích nghi các thiết bị • Đặc tả ACL (Act Communicative Library) – Đặc tả quá trình trao đổi các thông báo – Cấu trúc thông báo – Biểu diễn thông báo dưới dạng XML (DTD) – Biểu diễn thông báo dưới dạng xâu, bít – Đặc tả các dịch vụ truyền thông báo – Đặc tả các tương tác (Agent Interaction Protocol 28/09/2011 @Hà Quốc Trung 2011 22 3. Ứng dụng MA vào triển khai các ứng dụng di động • Java và MA – Applets, aglets, middlets – JADE và LEAPS – JINI cho MA • .NET 28/09/2011 @Hà Quốc Trung 2011 23 4. Giải quyết các vấn đề của tính toán di động bằng MA • MA và bối cảnh • MA và định vị • MA sử dụng cho giao diện • MA và QoS • MA-Proxy • MA giải quyết các vấn đề về hiệu năng • MA- Thích nghi với thiết bị 28/09/2011 @Hà Quốc Trung 2011 24 MA-khung cảnh • Tính toán nhận biết khung cảnh • MA xác định bối cảnh, luôn sẵn sàng – Có kết nối, không kết nối – Có tài nguyên, không tài nguyên • MA có thể xác định bối cảnh để gửi một MA khác đến • Mức độ sẵn sàng cao hơn 28/09/2011 @Hà Quốc Trung 2011 25 MA-định vị • MA “định cư”-gắn với một máy tính, chuyển đổi vị trí – MA có thông tin về vị trí – MA thể hiện ánh xạ giữa khái niệm host, hệ thống vật lý và vị trí vật lý 28/09/2011 @Hà Quốc Trung 2011 26 MA- giao diện NSD • Sử dụng một agent đặc tả giao diện (client), một tập hợp các agent khác (server-client) cung cấp giao diện – Client agent có thể thu thập các thông tin về thiết bị và khung cảnh • Sử dụng một tập các agent cho một chức năng của ứng dụng – Các chức năng khác nhau được tích hợp vào một UI-agent 28/09/2011 @Hà Quốc Trung 2011 27 MA-QoS • Kết nối giữa các agent trên một host là kết nối cục bộ • Có khả năng hoạt động với các trạng thái khác nhau của kết nối • Phù hợp với môi trường Adhoc 28/09/2011 @Hà Quốc Trung 2011 28 MA-Proxy • Cho các thiết bị không kết nối được với hệ thống MA • Cho các phần mềm trên thiết bị • Chi phí trên server cao 28/09/2011 @Hà Quốc Trung 2011 29 MA-hiệu năng • Phân tán tải tính toán • Các thao tác trên agent có chi phí cao-> phù hợp với các hệ thống có nhiều host • Nền tảng MA có thể không phù hợp với hạ tầng mạng • Phụ thuộc vào tập hợp các nền tảng vật lý 28/09/2011 @Hà Quốc Trung 2011 30 MA-Thích nghi thiết bị • MA thực hiện trên thiết bị: có các thông tin về thiết bị • Giảm độ phức tạp của hệ thống (phần thích nghi được giao cho MA) • Giảm băng thông cần thiết 28/09/2011 @Hà Quốc Trung 2011 31

Các file đính kèm theo tài liệu này:

  • pdf03_mobile_agent_5236.pdf