Đề tài Sử dụng mobile agent để tích hợp thông tin

Mobile Agent là một mô hình trong đó các tiến trình - được gọi là agent - có tính tự trị và khả năng di động từ máy chủ này sang máy chủ khác để hoàn tất tác vụ. Ý tưởng chủ đạo của mobile agent là di chuyển xử lý đến gần nguồn dữ liệu, nhờ đó có thể giảm tải mạng, khắc phục tình trạng trễ, hỗ trợ xử lý không đồng bộ và tạo ra sự tưng thích mạnh trên các môi trường không đồng nhất. Trong các ứng dụng phân tán phát triển theo mô hình client-server truyền thống, để tích hợp thông tin từ nhiều nguồn dữ liệu khác nhau, các ứng dụng phải tạo kết nối tới nguồn dữ liệu đó và tải dữ liệu về xử lý. Như vậy phải vận chuyển lượng thông tin nhất định trên đường truyền về nơi xử lý dó đó đường truyền cũng phải tải một lượng thông tin đáng kể và dễ bị mất mát nếu đường truyền không tốt. Thực tế phía nguồn dữ liệu có thể không muốn cung cấp dữ liệu mà chỉ muốn cung cấp kết quả xử lý dữ liệu đó cho phía yêu cầu. Nếu việc tính toán kết quả được cung cấp bởi nguồn chứa dữ liệu thì dịch vụ sẽ thiếu đi tính linh động do phía yêu cầu mong muốn những kết quả khác hơn. Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sử dụng mobile agent và áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữ liệu khai thác thông tin mà phía cung cấp dữ liệu vẫn kiểm soát được quá trình xử lý và đảm bảo được tính linh động của hệ thống. Do đó Server có được độ mềm dẻo tối đa vì nó có thể thực hiện bất kì yêu cầu nào từ phía client mà vẫn đảm bảo được Client chỉ biết kết quả mà không biết nội dung thông tin để xử lý ra kết quả, phía client chỉ có trách nhiệm chuyển các yêu cầu của mình thành mã để có thể thi hành trên Server.

pdf45 trang | Chia sẻ: nhungnt | Lượt xem: 3174 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Đề tài Sử dụng mobile agent để tích hợp thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Tạ Minh Tú SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành : Công Nghệ Thông Tin Hà Nội - 2010 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Tạ Minh Tú SỬ DỤNG MOBILE AGENT ĐỂ TÍCH HỢP THÔNG TIN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành : Công Nghệ Thông Tin Cán Bộ Hướng Dẫn: PGS.TS. Nguyễn Việt Hà Hà Nội - 2010 LỜI CẢM ƠN Lời đầu tiên em xin được bày tỏ lòng biết ơn sâu sắc tới thầy PGS. TS. Nguyễn Việt Hà, thầy đã tận tình dạy dỗ và hướng dẫn em trong suốt năm học vừa qua. Em xin được bày tỏ lòng biết ơn tới các thầy, cô trong Khoa Công Nghệ Thông Tin, trường Đại Học Công Nghệ - ĐHQGHN. Các thầy cô đã dạy bảo và luôn tạo điều kiện học tập tốt nhất cho chúng em trong những năm học đại học đặc biệt là trong thời gian thực hiện khóa luận tốt nghiệp. Tôi xin cảm ơn các bạn sinh viên lớp K51CD, K51CNPM trường Đại Học Công nghệ, những người bạn luôn bên cạnh ủng hộ tôi trong suốt những năm học đại học. Cuối cùng con xin gửi tới bố mẹ và toàn thể gia đình lòng biết ơn và tình cảm yêu thương nhất. Hà Nội, ngày 10/05/2010 Tạ Minh Tú Tóm Tắt Mobile Agent là một mô hình trong đó các tiến trình - được gọi là agent - có tính tự trị và khả năng di động từ máy chủ này sang máy chủ khác để hoàn tất tác vụ. Ý tưởng chủ đạo của mobile agent là di chuyển xử lý đến gần nguồn dữ liệu, nhờ đó có thể giảm tải mạng, khắc phục tình trạng trễ, hỗ trợ xử lý không đồng bộ và tạo ra sự tưng thích mạnh trên các môi trường không đồng nhất. Trong các ứng dụng phân tán phát triển theo mô hình client-server truyền thống, để tích hợp thông tin từ nhiều nguồn dữ liệu khác nhau, các ứng dụng phải tạo kết nối tới nguồn dữ liệu đó và tải dữ liệu về xử lý. Như vậy phải vận chuyển lượng thông tin nhất định trên đường truyền về nơi xử lý dó đó đường truyền cũng phải tải một lượng thông tin đáng kể và dễ bị mất mát nếu đường truyền không tốt. Thực tế phía nguồn dữ liệu có thể không muốn cung cấp dữ liệu mà chỉ muốn cung cấp kết quả xử lý dữ liệu đó cho phía yêu cầu. Nếu việc tính toán kết quả được cung cấp bởi nguồn chứa dữ liệu thì dịch vụ sẽ thiếu đi tính linh động do phía yêu cầu mong muốn những kết quả khác hơn. Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sử dụng mobile agent và áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữ liệu khai thác thông tin mà phía cung cấp dữ liệu vẫn kiểm soát được quá trình xử lý và đảm bảo được tính linh động của hệ thống. Do đó Server có được độ mềm dẻo tối đa vì nó có thể thực hiện bất kì yêu cầu nào từ phía client mà vẫn đảm bảo được Client chỉ biết kết quả mà không biết nội dung thông tin để xử lý ra kết quả, phía client chỉ có trách nhiệm chuyển các yêu cầu của mình thành mã để có thể thi hành trên Server. 1 Mục lục 1 Giới Thiệu 7 1.1 Đặt vấn đề . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Mục Tiêu Và Phạm Vi Của Đề Tài . . . . . . . . . . . . . . . . . . . . . . 8 1.3 Cấu Trúc Khóa Luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2 Tìm Hiểu Về Mobile Agent Và JADE 10 2.1 Khái niệm về Mobile Agent . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 Thế nào là Mobile Agent . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.2 Cấu tạo của mobile agent . . . . . . . . . . . . . . . . . . . . . . 10 2.1.3 Các đặc tính của mobile agent . . . . . . . . . . . . . . . . . . . . 11 2.2 Ứng dụng của mobile agents . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.1 Các lợi thế khi sử dụng mô hình mobile agents . . . . . . . . . . 12 2.2.2 Các lĩnh vực ứng dụng tiềm năng của mobile agents . . . . . . . . 13 2.3 FIPA (Foundation for Intelligent, Physical Agents) . . . . . . . . . . . . . 14 2.3.1 Lịch sử FIPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3.2 Các khái niệm cốt lõi . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3.3 Truyền thông Agent (agent communication) . . . . . . . . . . . . 16 2.3.4 Quản lý Agent (Agent management) . . . . . . . . . . . . . . . . 16 2.4 Nền tảng JADE (JADE Platform) . . . . . . . . . . . . . . . . . . . . . . 16 2 MỤC LỤC 2.4.1 JADE là gì . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.4.2 Kiến trúc JADE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4.3 Biên dịch và chạy trên nền tảng Jade . . . . . . . . . . . . . . . . 19 2.4.4 Giao tiếp giữa các JADE Agent . . . . . . . . . . . . . . . . . . . 21 2.4.5 Dịch vụ di động liên nền (Inter-Platform) . . . . . . . . . . . . . . 23 2.4.6 JadeGateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3 Sử Dụng Mobile Agent Để Tích Hợp Thông Tin 25 3.1 Mô tả bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.2 Ý tưởng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3 Các giải pháp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3.1 Giải pháp 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3.2 Giải pháp 2 - áp dụng mẫu visitor . . . . . . . . . . . . . . . . . . 27 3.3.3 Các thành phần Client . . . . . . . . . . . . . . . . . . . . . . . . 30 3.3.4 Các thành phần Server . . . . . . . . . . . . . . . . . . . . . . . . 31 3.3.5 Hoạt động . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.4 Ý nghĩa của phương pháp . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4 Thực Nghiệm 33 4.1 Mô tả và thiết kế bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.1 Thiết kế tổng thể . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.2 Thiết kế phía Client . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.3 Thiết kế phía Server . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.1.4 Hoạt động . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2 Thực Nghiệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.1 Cài đặt thực nghiệm . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.2 Ý nghĩa của thực nghiệm . . . . . . . . . . . . . . . . . . . . . . . 39 3 MỤC LỤC 5 Kết Luận 40 5.1 Kết quả thu được . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 5.2 Hướng nghiên cứu tiếp theo . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4 Danh sách hình vẽ 2.1 Cấu trúc cơ bản của một mobile agent . . . . . . . . . . . . . . . . . . . . 11 2.2 Mối quan hệ giữa các thành phần kiến trúc chính của jade . . . . . . . . . 17 2.3 Dịch vụ trang vàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4 Cấu trúc thư mục jade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.5 Quá trình khởi tạo môi trường thực thi jade . . . . . . . . . . . . . . . . . 21 2.6 Giao diện quản lý agent JADE . . . . . . . . . . . . . . . . . . . . . . . . 22 2.7 Mô hình truyền thông điệp không đồng bộ giữa các agent . . . . . . . . . 23 2.8 Di chuyển liên nền của mobile agent . . . . . . . . . . . . . . . . . . . . 24 2.9 Mô hình tương tác giữa servlet với agent thông qua JadeGateway . . . . . 24 3.1 Mẫu Visitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.2 Cải tiến mẫu Visitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3 Mô hình sử dụng mobile agent tích hợp thông tin áp dụng mẫu Visitor . . 30 4.1 Biểu đồ UML gói thiết kế web phía Client . . . . . . . . . . . . . . . . . 34 4.2 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client . . . . . . . . . 35 4.3 Biểu đồ UML gói thiết kế chạy trên nền JADE phía Client . . . . . . . . . 36 4.4 Biểu đồ tuần tự của quá trình tích hợp thông tin . . . . . . . . . . . . . . . 37 4.5 Kết quả tích hợp thông tin dùng visitor kiểu ComputeSalaryVisitor . . . . 38 4.6 Kết quả tích hợp thông tin dùng visitor kiểu ComputeSalaryVisitor1 . . . 39 5 Bảng từ viết tắt Từ viết tắt Từ hoặc cụm từ CSDL Cơ sở dữ liệu CT Container Table DF Directory Facilitator FIPA Foundation for Intelligent, Physical Agents GADT Global Agent Descriptor Table JADE Java Agent DEvelopment Framework LADT Local Agent Descriptor Table MAS Multi Agent System Bảng 1: Bảng từ viết tắt 6 CHƯƠNG 1 Giới Thiệu 1.1 Đặt vấn đề Với tốc độ phát triển chóng mặt của mạng Internet hiện nay, mọi công việc giao dịch, trao đổi thông tin diễn ra liên tục và phổ biến. Vấn đề đảm bảo an toàn thông tin, và giảm lượng thông tin vận chuyển trên đường truyền luôn được ưu tiên hàng đầu đặc biệt trong các lĩnh vực thương mại điện tử, giao dịch ngân hàng, các công việc trao đổi thông tin của tổ chức quốc gia . . . Hầu hết những công việc này đều được triển khai trên các ứng dụng phân tán. Các ứng dụng phân tán xây dựng chủ yếu dựa trên mô hình Client-Server. Một ứng dụng được xây dựng trên nền tảng của sự kết hợp nhiều dịch vụ thành phần, mà mỗi dịch vụ được cấu thành từ hai thành phần cốt lõi là : mã cài đặt dịch vụ và tài nguyên mà dịch vụ đó thi hành (ví dụ CSDL, hệ thống tệp tin ...). Để tích hợp thông tin từ nhiều nguồn dữ liệu khác nhau, các ứng dụng phải tạo kết nối tới nguồn dữ liệu đó và tải dữ liệu về xử lý. Như vậy phải vận chuyển lượng thông tin nhất định trên đường truyền về nơi xử lý dẫn đến tỷ lệ thất thoát thông tin là cao và làm đường truyền phải tải nhiều hơn. Thực tế, có những thông tin nhạy cảm mà Server không thể cung cấp cho Client và chỉ muốn cung cấp kết quả xử lý từ những thông tin đó. Một giải pháp là phía Server cài đặt sẵn các dịch vụ và khi phía Client có yêu cầu, Server sẽ gọi dịch vụ truy cập vào CSDL xử lý và trả lại kết quả cho Client. Tuy nhiên, số dịch vụ cài đặt sẵn là có hạn mà số yêu cầu phía Client luôn luôn thay đổi, do đó mặc dù vẫn bảo đảm được an toàn thông tin song hệ thống thiếu đi tính mềm dẻo. 7 CHƯƠNG 1: GIỚI THIỆU Bài toán đặt ra là đưa ra phương pháp tích hợp thông tin sao cho phía client chỉ biết được kết quả xử lý từ những thông tin mà Server không muốn Client biết và vẫn đảm bảo được tính mềm dẻo của hệ thống đồng thời làm giảm lượng thông tin vận chuyển trên đường truyền. 1.2 Mục Tiêu Và Phạm Vi Của Đề Tài Mục tiêu chính của khóa luận đưa ra phương pháp tích hợp thông tin bằng cách sử dụng mobile agent áp dụng phương pháp mẫu Visitor, mang xử lý đến gần nguồn dữ liệu khai thác thông tin mà phía cung cấp dữ liệu vẫn kiểm soát được quá trình xử lý đồng thời giảm tải lượng thông tin thô mà đường truyền phải tải và đảm bảo được tính mềm dẻo của hệ thống. Do đó Server có được độ mềm dẻo tối đa vì nó có thể thực hiện bất kì yêu cầu nào từ phía client mà vẫn đảm bảo được Client chỉ biết kết quả mà không biết nội dung thông tin để xử lý ra kết quả, phía client chỉ có trách nhiệm chuyển các yêu cầu của mình thành mã để có thể thi hành trên Server. Trong phạm vi nghiên cứu của mình, đề tài sẽ đưa ra mô hình có khả năng thực hiện việc tích hợp thông tin nguồn dữ liệu sử dụng mobile agent sao cho vẫn đảm bảo được tính mềm dẻo của hệ thống và an toàn thông tin. Ngoài những kết quả đó mô hình còn đem lại các lợi ích to lớn khác như giảm tải, khắc phục độ trễ mạng, làm tăng tính toàn vẹn dữ liệu do một dữ liệu lớn không phải di chuyển trên đường truyền. 1.3 Cấu Trúc Khóa Luận Chương 2 giới thiệu về một số khái niệm lý thuyết và công nghệ được sử dụng trong nghiên cứu và là cơ sở để xây dựng mô hình. Chương này sẽ trình bày về hai khái niệm chính là Agent và JADE. Agent được sử dụng như là nền tảng để đưa ra ý tưởng thiết kế mô hình tích hợp thông tin. JADE là một nền tảng được dùng để phát triển các hệ thống Agent, trong nghiên cứu này, phần thực nghiệm được triển khai dựa trên nền tảng JADE. Chương 3 mô tả cụ thể về bài toán sử dụng mobile agent để tích hợp thông tin, và được miêu tả cụ thể từ ý tưởng ban đầu, giải pháp cụ thể cho đến mô hình chi tiết để giải quyết bài toán. Phân tích ý nghĩa thực tế của mô hình. 8 CHƯƠNG 1: GIỚI THIỆU Chương 4 trình bày về cài đặt và thực nghiệm dựa trên mô hình đã đưa ra ở chương 3. Thực nghiệm này là một ứng dụng tích hợp thông tin, phía Client muốn thống kê một số kết quả dựa trên danh sách lương nhân viên của một công ty, phía server chứa dữ liệu về lương nhân viên song không muốn client biết được lương cụ thể của từng nhân viên. Chương 5 tổng kết những gì đã đạt được sau quá trình nghiên cứu, đồng thời đưa ra những hạn chế cần phải cải thiện, từ đó đưa ra hướng nghiên cứu tiếp theo. 9 CHƯƠNG 2 Tìm Hiểu Về Mobile Agent Và JADE Trong chương này, chúng ta sẽ tìm hiểu về khái niệm mobile agent, các ứng dụng và lợi ích khi áp dụng trong thực tế, cuối cùng là nền tảng JADE để phát triển agent. 2.1 Khái niệm về Mobile Agent 2.1.1 Thế nào là Mobile Agent Một mobile agent là một chương trình có khả năng di chuyển một cách tự trị từ nút mạng này sang nút mạng khác và thực hiện các xử lý thay thế cho con người để đạt được mục tiêu được giao phó. Khi di chuyển, các mobile agent đóng gói mã nguồn, dữ liệu và cả trạng thái thi hành, nhờ vậy mobile agent có thể dừng việc thi hành đang thực hiện tại máy này, di chuyển sang máy khác và khôi phục lại sự thi hành tại máy đích. Di động là một trong các thuộc tính không bắt buộc của các agent, nghĩa là không phải tất cả các agent đều di động. Một agent có thể chỉ nằm ở một chỗ và trao đổi với môi trường xung quanh theo các phương thức đã được quy ước. 2.1.2 Cấu tạo của mobile agent Cấu tạo của một mobile agent gồm 3 phần : mã, trạng thái và dữ liệu. Mã sẽ được thực hiện khi agent di chuyển đến một máy khác. Trạng thái là dữ liệu về môi tường chạy của agent, gồm con đếm chương trình và ngăn xếp thực hiện. Phần này chỉ có ở agent có 10 CHƯƠNG 2: TÌM HIỂU VỀ MOBILE AGENT VÀ JADE khả năng di động mạnh (strong mobility). Dữ liệu gồm các biến được sử dụng bởi agent như tri thức, định danh tệp tin... Hình 2.1: Cấu trúc cơ bản của một mobile agent 2.1.3 Các đặc tính của mobile agent • Tính tự trị (autonomous): là khả năng tự kiểm soát bản thân của agent sau khi được giao việc mà không cần sự can thiệp nào của người dùng hoặc của agent khác. Có nhiều hướng đánh giá về sự tự trị của agent. Hai đặc tính hướng đích (goal- oriented) và tính chủ động (pro-activeness) thường được dùng để đánh giá mức độ tự trị của agent. Khả năng tự trị của agent chủ yếu được quyết định bởi tri thức trang bị cho agent. • Tính di động (mobility): là khả năng di chuyển từ môi trường thi hành này sang môi trường khác khác của một agent. Khả năng di động của một agent được phân thành hai loại. Di động mạnh (strong mobility) là khả năng mà hệ thống có thể di chuyển cả mã chương trình và trạng thái thi hành của agent đến một môi trường khác. Di động yếu (weak mobility) là khả năng của hệ thống chỉ có thể di chuyển mã chương trình giữa các môi trường thi hành với nhau, mã nguồn có thể mang kèm theo một số dữ liệu khởi tạo nhưng trạng thái thi hành thì không thể di chuyển. • Tính thích ứng (reactiveness): là khả năng của agent có thể thực thi trên những môi trường lạ, và cảm nhận được sự thay đổi của môi trường. Khả năng cộng tác(collaboration): là khả năng liên lạc, phối hợp hoạt động của các agent với các agent của cùng môi trường khác hay với các loại đối tượng khác trong những môi trường khác. 11 CHƯƠNG 2: TÌM HIỂU VỀ MOBILE AGENT VÀ JADE 2.2 Ứng dụng của mobile agents 2.2.1 Các lợi thế khi sử dụng mô hình mobile agents • Giảm tải mạng : Kỹ thuật mobile agents cho phép người dùng đóng gói cuộc trao đổi, gởi nó đến máy đích và thực hiện xử lý dữ liệu, trao đổi cục bộ tại đó. Như thế sẽ góp phần làm giảm những dòng dữ liệu thô trên mạng ; và như thế, tải mạng sẽ giảm đáng kể. Phương châm thực hiện của kỹ thuật mobile agents là: mang xử lý đến nơi chứa dữ liệu hơn là mang dữ liệu về chỗ xử lý. • Khắc phục sự trễ mạng : Việc điều khiển các hệ thống với quy mô lớn thông qua mạng sẽ phải chấp nhận một sự trễ hạn nhất định. Nhưng điều đó lại không được phép xảy ra trong các hệ thống thời gian thực như điều khiển robot, quy trình sản xuất ...Khi đó, giải pháp mobile agents tỏ ra hữu ích trong việc khắc phục độ trễ nhờ vào việc các agent có thể được gửi đi từ một trung tâm điều khiển và hành động cục bộ, tự trị, trực tiếp thi hành các chỉ dẫn của người điều khiển. • Đóng gói các giao thức : Khi dữ liệu được trao đổi trong hệ thống phân tán, việc truyền và nhận dữ liệu phải được mã hóa bởi các giao thức cần thiết. Các giao thức này được sở hữu bởi mỗi máy trong hệ thống. Tuy nhiên, một khi các giao thức phải tiến hóa để phù hợp với những yêu cầu mới về sự bảo mật hoặc tính hiệu quả, chúng bắt đầu trở nên cồng kềnh, nặng nề và trở thành vấn đề nan giải. Riêng với giải pháp mobile agents, các agents có thể mang trên mình các giao thức thích hợp và di chuyển tới các máy ở xa để thiết lập các kênh truyền nhận thông tin tương ứng. • Thi hành không đồng bộ và tự trị : Thông thường, các thiết bị di động thường phụ thuộc vào các kết nối mạng đắt tiền nhưng rất yếu ớt. Vì thế, những tác vụ cần có kết nối liên tục giữa thiết bị di động và mạng cố định có thể sẽ không có tính kinh tế hoặc không khả thi về mặt kỹ thuật. Giải pháp mobile agents giải quyết vấn đề này bằng cách nhúng tác vụ cần thực hiện vào agent, rồi gửi lên mạng. Sau khi được gửi đi, agent trở nên độc lập thi hành không đồng bộ và có khả năng tự trị. Các thiết bị di động sau đó có thể kết nối trở lại để đón agent về. • Thích ứng nhanh : Các agent có khả năng cảm nhận những thay đổi của môi trường thi hành và tác động trở lại những thay đổi ấy một cách tự động. 12 CHƯƠNG 2: TÌM HIỂU VỀ MOBILE AGENT VÀ JADE • Khắc phục tình trạng không đồng nhất : Việc xử lý tính toán trên mạng cơ bản là không đồng nhất vì sự đa dạng về phần cứng và phần mềm được sử dụng. Do mobile agent độc lập với máy tính (phần cứng và hệ điều hành) và tầng vận chuyển, chỉ phụ thuộc vào môi trường thi hành, nên chúng cung cấp một điều kiện tối ưu cho việc liên kết các hệ thống không liên quan gì lại với nhau. • Mạnh mẽ và có khả năng chế ngự lỗi cao : Với khả năng phản ứng năng động với các sự kiện và những thay đổi bất lợi, mobile agents giúp cho việc xây dựng hệ thống mạnh mẽ và chịu lỗi cao được dễ dàng hơn. 2.2.2 Các lĩnh vực ứng dụng tiềm năng của mobile agents Hiện nay, theo các nghiên cứu về agents, chưa có một ứng dụng nào có thể được xem như là ứng dụng đặc trưng (kill application) dành cho công nghệ mobile agents. Với tất cả những kết quả đạt được hiện nay với mobile agents, người ta cũng đều đạt được bằng những công nghệ truyền thống. Tuy nhiên, trong một vài trường hợp, mobile agents có thể là giải pháp tối ưu. Mobile agents có thể được áp dụng trong nhiều lĩnh vực như: • Thương mại điện tử : Các ứng dụng thương mại điện tử cho phép người dùng thực hiện các giao dịch trong kinh doanh trên mạng. Một giao dịch có thể bao gồm sự thương lượng với các thực thể ở xa và có thể đòi hỏi truy cập nguồn thông tin liên tục thay đổi. Từ thực tế đó nảy sinh nhu cầu thay đổi hành vi của các thực thể để đạt được một nghi thức chung trong việc thương lượng. Hơn nữa, việc di chuyển các thành phần của ứng dụng tiến gần đến nguồn thông tin thích hợp cho giao dịch cũng được quan tâm. Vì thế công nghệ mobile agents là một giải pháp rất hấp dẫn cho lĩnh vực này. • Thu thập thông tin phân tán : Trong trường hợp có nhu cầu truy vấn phức tạp, chuyên biệt và liên qua đến nhiều nguồn dữ liệu phân tán, không đồng nhất, việc cử các mobile agent di chuyển đến các nguồn tin để khai thác tại chỗ và cuối cùng là quay về với những thông tin cần thiết sẽ cho phép giảm tải mạng và giải quyết tốt hơn bài toán tương thích. • Theo dõi và thông báo tin cập nhật : Ứng dụng cổ điển này làm nổi bật bản chất không đồng bộ của các mobile agent. Các agent có thể được gởi đi, đến nơi có nguồn tin và hoạt động theo dõi nguồn tin ngay cả khi người dùng ngắt kết nối. 13 CHƯƠNG 2: TÌM HIỂU VỀ MOBILE AGENT VÀ JADE Sau đó, khi nguồn tin có sự thay đổi , agent sẽ quay về báo cho chủ nhân. Weather Alarm (University o
Tài liệu liên quan