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.
45 trang |
Chia sẻ: nhungnt | Lượt xem: 3260 | Lượt tải: 3
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