1. Trang chủ
  2. » Luận Văn - Báo Cáo

nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server

51 426 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 1,58 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trong đó, giữa Proxy – Server có sự tính toánchia sẻ dữ liệu bằng cách sử dụng Agent phần mềm nhằm cải thiện nhữngthiếu sót mà mô hình Client – Server chưa đáp ứng được.. Khi đó, Proxy n

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Chu Văn Minh

NGHIÊN CỨU, ỨNG DỤNG MOBILE AGENT TRONG MÔ HÌNH PROXY – SERVER

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Khoa: Công nghệ thông tin

HÀ NỘI - 2014

Trang 2

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

Chu Văn Minh

NGHIÊN CỨU, ỨNG DỤNG MOBILE AGENT TRONG MÔ HÌNH PROXY – SERVER

KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Khoa: Công nghệ thông tin

Cán bộ hướng dẫn: PGS.TS Nguyễn Việt Hà

Cán bộ đồng hướng dẫn: ThS Vũ Quang Dũng

Trang 3

HÀ NỘI - 2014

Trang 4

VIETNAM NATIONAL UNIVERSITY, HANOI

UNIVERSITY OF ENGINEERING AND TECHNOLOGY

Chu Van Minh

RESEARCH, APPLICATION OF MOBILE

AGENT

ON THE PROXY – SERVER MODEL Major: Information technology

Supervisor: Assoc Prof Dr Nguyen Viet Ha

Co-Supervisor: MSc Vu Quang Dung

Trang 5

HA NOI - 2014

2

Trang 6

NGHIÊN CỨU, ỨNG DỤNG MOBILE AGENT TRONG MÔ HÌNH PROXY – SERVER

Chu Văn Minh

Khóa QH-2010-I/CQ, ngành Công nghệ thông tin

Tóm tắt khóa luận tốt nghiệp:

Hiện nay, Internet là một phần không thể thiếu trong xã hội, Internetmang đến nguồn thông tin, tri thức khổng lồ Hơn thế nữa Internet là nơilưu trữ, tính toán, chia sẻ nguồn dữ liệu khổng lồ giữa các máy tính trongmạng với nhau Để thực hiện điều này Internet đã cung cấp các dịch vụứng dụng như: Web, Email, điều khiển từ xa, đều xây dựng dựa trên môhình Client – Server

Mô hình Client – Server: là một mô hình được áp dụng rất rộng dãi và

là mô hình của mọi trang web Trong đó, máy Client sẽ gửi một yêu cầu tớimáy chủ, máy chủ sẽ xử lý yêu cầu và trả kết quả về cho máy khách Tuyvậy, mô hình Client – Server vẫn còn nhiều vấn đề hạn chế khi mà lượngClient tăng về: số lượng, yêu cầu, sẽ đặt ra vấn đề về truyền tải thông tin,

dữ liệu như là quá tải đường truyền, tắc nghẽn mạng Ngoài ra, hiệu suấtcủa Server sẽ giảm xuống và hệ thống thiếu tính mềm dẻo khi nâng cấp

hệ thống hoặc có sự thay đổi từ cơ sở dữ liệu, phương thức truy cập

Trong khóa luận tốt nghiệp này, tôi đã nghiên cứu, xây dưng một môhình Client – Proxy – Server Trong đó, giữa Proxy – Server có sự tính toánchia sẻ dữ liệu bằng cách sử dụng Agent phần mềm nhằm cải thiện nhữngthiếu sót mà mô hình Client – Server chưa đáp ứng được Khi đó, Proxy như

là một Server, được đặt gần Client và nằm trong hệ thống mạng với Client.Agent sẽ mang chương trình, dữ liệu từ Server lên Proxy và thực thi tại đó.Ngoài ra, tôi cũng xây dựng một ứng dụng Web cơ bản dựa trên mô hình

mà tôi đề xuất để chứng minh tính khả thi của mô hình Sau đó đưa ra sự

so sánh, đánh giá mô hình mới sử dụng Agent phần mềm so với mô hìnhtruyền thống Client – Server

Từ khóa: Jade Agent, Client – Server, Proxy.

i

Trang 7

A STUDY OF WEB LINKS VISUALIZATION

Chu Van Minh

Course QH-2010 -I/CQ, major in Information technology

Abstract:

Today, Internet is an integral part of society, it’s brings information,knowledge Moreover, the internet is a storage, calculating, sharing thelarge data source among computers The internet provides applicationservice such as: Web, email are based on Client – Server model

Client – Server model is applied in common for every websites In thismodel, Client send request to Server, then Server process these requestand response to Client However, the Client – Server model still has somelimitations when Client raise about quantity or send a lot of requests toServer It will put the issue of information transmission and data asnetwork congestion, overloading transmission lines Addition, performance

of Server reduces and the system lack of flexibility when the systemchange about database, access methods

In my thesis, I’m studying, building a Client – Proxy – Server model Inthis model, between Proxy – Server have a calculation, sharing data byusing sofware Agent to improve some shortages of Client – Server model isnot respond When Proxy is as a Server, it’s placed near the Client andexecuted at that In addition, I also build a application basic Web Service isbased on Client – Proxy – Server model to prove the feasibility of thismodel And then, making comparisons, review new model which usingsoftware Agent compared to the traditional Client – Server model

ii

Trang 8

Lời cảm ơn

Lời đầu tiên, tôi xin bày tỏlòng biết ơn sâu sắc nhất tới PGS.TS Nguyễn Việt Hà và ThS.VũQuang Dũng đã tận tình hướng dẫn, giúp đỡ tôi trong suốt quá trìnhthực hiện khóa luận tốt nghiệp này

Tôi xin chân thành cảm ơn các thầy, cô đã tạo điều kiện thuân lờicho tôi trong quá trình học tập, rèn luyện và nghiên cứu tại trườngĐại học Công nghệ

Tôi cũng xin gửi lời cảm ơn tới các anh chị và các bạn sinh viên tạiphòng thí nghiệm công nghệ phần mềm Toshiba-Coltech, anhNguyễn Văn Lân đã giúp đỡ, hỗ trợ tôi trong quá trình xây dựng hệthống và thực nghiệm

Tôi gửi lời cảm ơn tới các bạn trong lớp K55CC và K55CLC đã ủng hộ,khích lệ, giúp đỡ và luôn sát cánh bên tôi trong suốt quá trình họctập, rèn luyện tại trường

Và cuối cùng, tôi xin gửi lời cảm ơn tới gia đình, người thân và bạn bè– những người luôn ở bên tôi những lúc khó khăn nhất, luôn độngviên tôi, khuyến khích tôi trong cuộc sống cũng như học tập, côngviệc

Tôi xin chân thành cảm ơn!

Hà Nội, ngày 02 tháng 05 năm

2014Sinh viên

Chu Văn Minh

iii

Trang 9

Lời cam đoan

Tôi xin cam đoan các kếtquả đạt được trong khóa luận này do tôi thực hiện dưới sự hướng dẫncủa PGS.TS Nguyễn Việt Hà và ThS.Vũ Quang Dũng

Tất cả các tham khảo từnhững nghiên cứu liên quan đều được nêu nguồn gốc một cách rõràng từ danh mục tài liệu tham khảo trong khóa luận Khóa luậnkhông sao chép tài liệu, công trình nghiên cứu của người khác màkhông chỉ rõ về mặt tài liệu tham khảo

Các kết quả thực nghiệmcủa khóa luận đều được tiến hành thực nghiệm và thống kê từ kếtquả thực tế

Sinh viên

Chu Văn Minh

iv

Trang 10

Mục lục

Danh sách hình vẽ vii

Danh sách bảng viii

Chương 1 MỞ ĐẦU 1

Chương 2 CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ 4

2.1 Agent 4

2.2 Hệ thống đa Agent – Multi Agents System (MAS) 6

2.3 JADE Platform 7

2.4 Ngôn ngữ lập trình Java, JDBC và JSON 9

2.5 IPMS (Inter – Platform Mobility Service) 10

Chương 3 PHÂN TÍCH YÊU CẦU HỆ THỐNG VÀ CƠ CHẾ HOẠT ĐỘNG CỦA AGENT 11

3.1 Xây dựng mô hình tổng quan Client – Proxy – Server 11

3.2 Cơ chế hoạt động của Agent 12

3.2.1 Cơ chế quản lý Agent 12

3.2.2 Cơ chế di trú của Agent 14

3.2.3 Cơ chế cập nhật dữ liệu cho Agent 15

Chương 4 XÂY DỰNG VÀ ĐẶC TẢ HỆ THỐNG 16

4.1 Mô hình thực tế của hệ thống 17

4.2 Các Modul chức năng chính của hệ thống 20

4.2.1 Module kết nối, truy cập cơ sở dữ liệu 20

4.2.2 Module phân tích và xử lý yêu cầu 20

4.2.3 Module cập nhật dữ liệu tự động cho Agent tại Proxy 23

4.3 Xây dựng và cài dặt hệ thống 23

4.3.1 Các thành phần trong Proxy sử dụng Agent 24

4.3.2 Các thành phần trong Server sử dụng Agent 27

Chương 5 THỰC NGHIỆM 30

5.1 Môi trường thực nghiệm 30

5.1.1 Cấu hình máy chủ 30

5.1.2 Cấu hình máy Proxy 30

5.1.3 Công cụ phần mềm 31

5.1.4 Các thư viện được sử dụng 31

v

Trang 11

5.2 Kết quả thực nghiệm 31

5.2.1 Agent mang dữ liệu và hiển thị cho người dùng 31

5.2.2 Agent cập nhật dữ liệu khi có sự thay đổi từ cơ sở dữ liệu 36

Chương 6 KẾT LUẬN 37

Tài liệu tham khảo 38

vi

Trang 12

Danh sách hình vẽ

Hình 3.3: Mô hình di trú Agent từ Server đến Proxy 14

Hình 4.3: Biểu đồ tuần tự của truy xuất dữ liệu 19Hình 4.4: Biểu đồ tuần tự xử lý yêu lặp lại sử dụng Agent tại Proxy 20Hình 4.5: Xử lí các yêu cầu được gửi lên lần đầu 21Hình 4.6: Cập nhật dữ liệu cho Agent tại Proxy 22

Hình 5.4: Dữ liệu hiển thị khi kích vào GetData2 32Hình 5.5: Dữ liệu được hiển thị khi kích vào GetData4 33Hình 5.6: Trường hợp đối với yêu cầu đã được xử lý trước bởi Proxy 33Hình 5.7: Nội dung Layout trước khi cập nhật dữ liệu của Agent 34Hình 5.8: Nội dung Layout sau khi cập nhật dữ liệu của Agent 34

vii

Trang 13

Danh sách bảng

Bảng 4.1: Modul kết nối, truy nhập cơ sở dữ liệu 19

Bảng 4.2: Modul phân tích và xử lý yêu cầu lặp lại 20

Bảng 4.3: Modul phân tích và xử lý yêu cầu gửi lên lần đầu 21

Bảng 4.4: Modul cập nhật dữ liệu từ động cho Agent tại Proxy 22

Bảng 4.5: Các thành phần lớp của hệ thống tại Proxy 24

Bảng 4.6: Các thành phần lớp của hệ thống tại Server 27

Bảng 5.1: Thông tin cấu hình máy Server 29

Bảng 5.2: Thông tin cấu hình máy Proxy 29

Bảng 5.3: Công cụ phần mềm được sử dụng 30

Bảng 5.4: Mô tả thư viện được dùng trong thực nghiệm 30

Chương 1 MỞ ĐẦU

Ngày nay, Internet là một phần không thể thiếu trong xã hội, Internet mang đến nguồn thông tin, tri thức Hơn thể nữa, Internet chính là nơi lưu trữ, tính toán, chia sẻ nguồn dữ liệu khổng lồ giữa các máy tính trong mạng với nhau Để thực hiện điều này Internet đã cung cấp các dịch vụ ứng dụng như: Web, Email, điều khiển từ xa … đều được xây dựng trên mô hình Client – Server

Mô hình Client – Server: Là một mô hình được áp dụng rất rộng rãi và là mô hình phổ biến của mọi trang Web, hệ thống Trong đó, máy Client sẽ gửi yêu cầu tới Server, Server sẽ xử lý yêu cầu và trả kết quả về cho máy Client Tuy vậy, mô hình Client – Server vẫn còn nhiều vấn đề hạn chế như:

Thứ nhất, khi nhiều Client gửi yêu cầu đến Server, Server không

có khả năng đáp ứng, xử lý hết các yêu cầu Như vậy, các yêu cầu không được xử lý sẽ gây ra hiện tượng “thắt nút cổ chai” Khi đó, tài nguyên mạng bị chiếm dụng và tắc nghẽn sẽ ảnh hưởng đến tốc độ trong mạng

Thứ hai, Client có thể gửi các yêu cầu giống nhau Khi đó, Server

sẽ phải thực hiện công việc xử lý trùng lặp, gây ra việc tốn thời gian chờ của Client và hiệu suất của Server sẽ giảm xuống

Thứ ba, hệ thống thiếu tính mềm dẻo trong khả năng mở rộng khi có sự thay đổi về cơ sở dữ liệu, phương thức truy nhập…

Trên thực tế đã có nhiều sự quan tâm từ các nhà quản lý mạng

và các chuyên gia phát triển phần mềm Một số giải pháp cũng đã

viii

Trang 14

được đưa để giải quyết các vấn đề trên như: Sử dụng các bản saoServer, sử dụng Proxy – Server.

Với mỗi giải pháp đã thể hiện được ưu điểm của mình, thực tếcũng đã được cài đặt và giải quyết phần nào các điểm yếu của môhình Client – Server truyền thống Tuy nhiên, các hệ thống mới chỉdừng lại và áp dụng cho bài toán cụ thể của họ, nhưng chưa là môhình tổng quát mang tính áp dụng cao Một số vấn đề chưa đưa rađược một kiến trúc, giải pháp toàn diện Khả năng dùng lại và tùybiến không cao

Từ thực trạng và những hạn chế trên, tôi muốn tìm hiểu, xâydựng một mô hình Client – Proxy – Server sử dụng Mobile Agentnhằm cải thiện những thiếu xót mà mô hình Client – Server chưa đápứng được Trong đó, Proxy – Server đóng vai trò quan trọng trongviệc tính toán và chia sẻ dữ liệu

Vai trò của Proxy và ưu điểm của Agent phần mềm trong

mô hình Client – Proxy – Server.

Xây dựng mô hình Client – Proxy – Server sử dụng Agent, trong

đó Proxy đóng vai trò như một Server, có thể tiếp nhận và xử lý cácyêu cầu, lưu trữ kết quả của các yêu cầu đã được xử lý được Servertrả về trong đó cụ thể như sau:

Xây dựng Proxy có khả năng:

- Bắt được các yêu cầu từ Client, gửi các yêu cầu tới Server

- Xử lý các yêu cầu với kết quả đã có sẵn Với những yêu cầulặp lại thì chỉ gửi một lần lên Server

- Nhận kết quả, cập nhật sự thay đổi kết quả của các yêu cầukhi có sự thay đổi trên Server bằng cách sử dụng Agent

Xây dựng Server có khả năng:

- Tạo Agent để gửi trả kết quả về cho Proxy

- Có khả năng chia sẻ tính toán, tài nguyên với Proxy

ix

Trang 15

Với tính năng như trên, Proxy có khả năng giảm tải cho Server, tận dụng được tài nguyên Proxy, thời gian đáp ứng nhanh hơn do đường đi ngắn hơn, khả năng nâng cấp hệ thống đơn giản, linh hoạt.

Để làm được những điều trên, cả Proxy và Server đều được cài đặt Jade Agent Jade Agent là môi trường để cho các Agent phần mềm hoạt động Các Agent sẽ cài đặt các dịch vụ trên Proxy và

Server Chúng có thể chia sẻ và đảm bảo sự toàn vẹn về bản chất nghiệp vụ khi thực thi phân tán trên các máy tính khác trong mạng với những ưu điểm như: khả năng di chuyển, khả năng tự trị, tính đóng gói… Khả năng tự trị của Agent cho phép nó có thể tự biết cáchgiao tiếp như thế nào để lấy dữ liệu trên Server Tính đóng gói thể hiện cộng việc chia sẻ từ Server được giữ kín mà không phô bày mã hay dữ liệu mang theo

Nội dung Khóa luận này gồm 6 chương

Error: Reference source not found Mở đầu: Nêu thực trạng,

giới thiệu bài toán thực tiễn, vai trò của Proxy trong mô hình, ưuđiểm của Agent phần mềm khi áp dụng và nêu những nội dung sẽđược trình bày

Error: Reference source not found - Cơ sở lý thuyết: Trình

bày các công nghệ, các nền tảng hỗ trợ về Agent Đặc tả về JADE –nền tảng phát triển Agent

Error: Reference source not found – Phân tích yêu cầu hệ

thống và cơ chế hoạt động của Agent

Error: Reference source not found – Xây dựng và đặc tả hệ

thống

Chương 5 - Thực nghiệm: Kết quả, đánh giá quá trình thực

nghiệm

Chương 6 - Kết luận: Tóm lược những kết quả của Khoá luận,

những đạt được và hạn chế, triển vọng và hướng phát triển trongtương lai

x

Trang 16

Chương 2 CƠ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ 2.1 Agent

Khái niệm: Agent là một hệ tính toán hoàn chỉnh hay chương

trình được đặt trong một môi trường nhất định, có khả năng hoạtđộng một cách tự chủ và mềm dẻo trong môi trường đó nhằm đạtđược mục đích đã thiết kế

Trong cuốn sách “Developing Intelligent Agent Systems” của LinPadgham – Micheal WiniKnoff – RMIT còn định nghĩa về Agent nhưsau:

“Agent là một hệ thống máy tính được đặt trong các môi trường

và nó tự chủ hành động trong môi trường đó để đạt được mục tiêu thiết kế của nó”.

Các đặc trưng cơ bản của Agent:

- Tính tự chủ (autonomy): Mỗi Agent có trạng thái độc lập riêng,độc lập với các Agent khác, đồng thời nó có thể tự quyết cáchành động của mình Tự chủ ở trạng thái bên trong thể hiện ởchỗ: mỗi Agent chứa một trạng thái nào của riêng nó, cácAgent khác không truy cập được vào các trạng thái này Còntính tự chủ về hành động thể hiện ở chỗ Agent có thể tự quyếtcác hành động của mình dựa trên trạng thái hiện thời màkhông có sự can thiệp của con người hay các Agent khác Đây

là đặc trưng quan trọng nhất của Agent

- Khả năng phản ứng (reactivity): Tính phản ứng là khả năngAgent có thể nhận biết được môi trường và dựa qua nhận biết

đó, Agent đáp ứng kịp thời những thay đổi xảy ra trong môitrường Tính phản ứng thể hiện rõ nhất ở các Agent hoạt độngtrên các môi trường có tính mở và hay thay đổi như Internet,môi trường mạng phân tán, môi trường vật lý,… Phản ứng củamỗi một Agent đối với môi trường bên ngoài đều hướng tới việcthực hiện mục tiêu

- Tính chủ động (pro-activeness): Khi có sự thay đổi môi trường,Agent không chỉ phản ứng một cách đơn giản mà còn xác địnhmột chuỗi hành động cần thực hiện, bản thân mỗi Agent sẽ chủđộng trong việc khởi động và thực hiện chuỗi hành động này

- Khả năng xã hội (social ability): Các Agent không chỉ hướng tớimục đích riêng của mình mà còn có khả năng tương tác với các

xi

Trang 17

Agent khác trong hệ thống để hướng tới mục đích chung của hệthống.

Khái niệm: 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ựchiện các xử lý thay thế cho con người để đạt được mục tiêu 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ànhtại máy này, di chuyển sang máy đích và khôi phục sự thi hành tạimáy đích

Hình 2.1: Cấu trúc của Mobile Agent.

Cấu tạo của một Mobile Agent gồm ba phần:

- Trạng thái (State): Dữ liệu về môi trường chạy của Agent

- Dữ liệu (Data): Gồm giá trị các biến được sử dụng bởi Agent vàchỉ có nó mới được sử dụng, quyết định các dữ liệu này

- Mã chương trình (Code): Toàn bộ mã thực thi của chương trìnhđược xây dựng bởi lập trình viên và nó sẽ được thực hiện khi dichuyển đến một máy đích

Vòng đời của một Mobile Agent:

Hình 2.2: Vòng đời của một Mobile Agent.

xii

Trang 18

Mô tả vòng đời của Agent:

- Create: Khởi tạo một Agent

- Initiated: Khởi động Agent với một AID xác định và có một

nhiệm vụ nhất định

- Active: Agent bắt đầu thực thi nhiệm vụ Trong quá trình thực

thi, Agent có thể sẽ phải di trú từ nút mạng này sang nút mạng

khác Khi đó, nó sẽ tạm ngưng quá trình thực thi, đóng gói toàn

bộ thông tin và di trú sang nút mạng khác Khi di trú xong,

Agent sẽ tái kích hoạt lại toàn bộ hoạt động được thực thi tại

nút mạng trước Qua trình thực thi cũng có thể tạm ngưng, khi

đó Agent sẽ được tạm dừng hoạt động và sẽ được khởi động lại

khi hệ thống cần đến

- Quit: Quá trình thực thi được hoàn thành

- Destroy: Hủy Agent

Ưu điểm của Mobile Agent:

- Giảm tải mạng: Kỹ thuật Mobile Agent cho phép người dùng

đóng gói thông tin, 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ư vậy sẽ góp phần giảm dữ liệu

thô trên mạng và tải mạng sẽ giảm đáng kể

- Khắc phục sự trễ mạng: 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

- Thi hành không đồng bộ và tự trị: Thực thi không đồng bộ trên

các máy tính trong mạng

- Thích ứng nhanh: Agent có khả năng cảm nhận sự thay đổi của

môi trường thực thi và tác động trở lại những thay đổi ấy một

cách tự động mà không mất đi các tính chất

- Khắc phục tình trạng không đồng nhất: Xử lý trên mạng cơ bản

là không đồng nhất do sự đa dạng về phần cứng và phần mềm

Do Mobile Agent độc lập với máy tí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ố ưu cho việc liên kết các hệ thống không liên quan

với nhau lại

- Mềm dẻo trong bảo trì: Việc thay đổi các hành động của Agent

chỉ phải thay đổi mã của chính Agent đó

Với các ưu điểm trên chính là lý do tại sao tôi lại chọn Agent làm giảipháp cho nghiên cứu mô hình Client – Proxy – Server

xiii

Trang 19

2.2 Hệ thống đa Agent – Multi Agents System (MAS)

Như đã nói Agent có tính xã hội, đó là đặc tính quan trọng chophép ta xây dựng một hệ đa Agent

Ngoài khả năng tự kiểm soát và ra quyết định các hành vi, Agentcũng có thể hợp tác với các Agent khác để hoàn thành nhiệm vụ Một

hệ thống có nhiều Agent hoạt động như thế gọi là hệ thống đaAgent Mỗi Agent có một nhiệm vụ riêng của mình, nhưng tất cả hoạtđộng việc cùng một mục tiêu chung của tổ chức

Ưu điểm của hệ thống đa Agent so với các hệ thống khác[]:

- Khả năng tính toán: Việc tính toán được phân chia cho cácAgent khác nhau và khả năng phối hợp xử lý cùng nhau củacác Agent nên khả năng tính toán hiểu quả hơn

- Độ tin cậy cao: Nhờ vào việc phân chia tính toán và có cơ chếgiao tiếp giữa các Agent nên độ tin cậy tính toán được cho làcao hơn

- Khả năng mở rộng: Việc mở rộng là khá dễ dàng do có thểthêm bớt Agent, giúp hệ thống có tính mềm dẻo và linh hoạt

- Khả năng bảo trì: Do mỗi Agent là một thành phần độc lập, cótính nhiệm vụ khác nhau nên hệ đa Agent dễ bảo trì

- Khả năng phản ứng: Khi môi trường của hệ thống thay đổi, cácAgent trong hệ thống sẽ phối hợp với nhau để đưa ra hànhđộng tương ứng với thay đổi đó

- Tính linh hoạt: Các Agent có thể chủ động tương tác với nhau

để giải quyết một nhiệm vụ của hệ thống

- Khả năng sử dụng lại: Mỗi Agent có chức năng riêng và có thể

sử dụng lại cho nhiều ứng dụng khác nhau

2.3 JADE Platform

JADE (Java Agent DEvelopment Framwork) là một framework

phần mềm được cài đặt hoàn toàn bằng ngôn ngữ JAVA nhằm mụcđích đơn giản hóa việc cài đặt các hệ thống đa Agent Môi trườngJADE gồm có:

- Một môi trường thực thi được cái đặt trên máy để các Agent cóthể làm việc

- Một bộ công cụ cho phép quản lý và theo dõi hành vi của cácAgent đang hoạt động

- Thư viện lớp cho phép lập trình viên sử dụng để phát triển cácAgent

xiv

Trang 20

Hình 2.3: Kiến trúc của JADE

Mô tả kiến trúc JADE:

- Mỗi một JADE Platform sẽ có rất nhiều Container, nhưng duynhất chỉ có một Main Container được khởi tạo khi cài đặt JADE.Các Container khác có thể được tạo hoặc được gọi từ máy tínhkhác

- Mỗi Container có thể sẽ chứa hoặc không chứa các Agent Cóhai Agent đặc biệt của hệ thống sẽ sinh ra khi cài đặt JADE đólà: AMS, DF, chúng tồn tại ở Main Container Trong đó, AMScung cấp dịch vụ quản lý Agent và White page, còn DF cungcấp dịch vụ Default yellow page của platform

xv

Trang 21

Hình 2.4: Giao diện khởi động của JADE

- Mỗi một Agent chỉ thuộc về một Container Mỗi một Container

sẽ được chạy trên một tiến trình Java

Vai trò của AMS Agent và DF Agent khi Main Container khởi động:

- AMS Agent: Hệ thống quản lý Agent (AMS – Agent ManagementSystem) là một Agent giám sát toàn bộ platform Là điểm liênlạc cho tất cả Agent cần tương tác để truy cập White pages củaplatform cũng như để quản lý vòng đời của nó Mọi Agent đượcyêu cầu đăng ký với AMS (thực hiện một cách tự động bởi JADElúc Agent bắt đầu) để đạt được một AID hợp lệ (định danh củamột Agent)

- DF Agent: Dịch vụ trang vàng của trong JADE, tuân theo đặc tảquản lý Agent của FIPA, được cung cấp bởi một Agent đặc biệtđược gọi là DF (Directory Facilitator) Mọi platform theo chuẩnFIPA đều chứa một DF Agent Một “yellow pages” – trang vàngcho phép Agent công bố các mô tả của một hoặc nhiều dịch vụ

mà nó cung cấp để các Agent khác có thể dễ dàng tìm ra vàkhai thác một cách dễ dàng Trong ví dụ dưới đây có thể thấycác Agent A1, A2, A3 đăng ký với DF Agent các dịch vụ mìnhcung cấp, các Agent A4, A5 tìm kiếm dựa vào DF Agent và khaithác các dịch vụ từ A1, A2, A3

xvi

Trang 23

2.4 Ngôn ngữ lập trình Java, JDBC và JSON

Java là ngôn ngữ lập trình hướng đối tượng Java có cú pháp

hướng đối tượng đơn giản, dễ sửa lỗi và có khả năng chạy với hiệusuất cao

JDBC là API Java cơ sở, mà nó cung cấp một các lớp và các giao

diện được viết bằng Java để truy xuất và thao tác với nhiều loại hệ cơ

sở dữ liệu khác nhau

JSON – “JavaScript Object Notation” [ CITATION JSO \l 1033 ] là

một chuẩn định dạng dữ liệu, phù hợp để sử dụng với JavaScript vìJSON chính là cách biểu diễn một đối tượng trong ngôn ngữ này.Trong bài toán đặt ra, JSON được dùng để truyền tải dữ liệu trunggian giữa máy chủ và máy khách trực tiếp thông qua Ajax

2.5 IPMS (Inter – Platform Mobility Service)

IPMS là một Jade – add on hỗ trợ xử lý di chuyển Agent

IPMS cho phép Agent di chuyển đến môi trường thực thi tiếptheo, mang theo đó dữ liệu (Data), trạng thái (State) và nối lại thựcthi khi đến đích

xviii

Trang 24

Chương 3 PHÂN TÍCH YÊU CẦU HỆ THỐNG

VÀ CƠ CHẾ HOẠT ĐỘNG CỦA AGENT

3.1 Xây dựng mô hình tổng quan Client – Proxy – Server

Xây dựng hệ thống theo mô hình cơ bản dưới đây:

Hình 3.7: Mô hình Client – Proxy – Server

Mô tả mô hình Client – Proxy – Server:

Proxy như một thiết bị trung gian giữa Client và Server Thông thường, Proxy nằm gần Client và trong cùng cấu trúc mạng của Clients Proxy giao tiếp với Server thông qua Internet

Cơ chế hoạt động: Client gửi yêu cầu đến Proxy Tại đây, Proxy

sẽ xử lý một phần yêu cầu sau đó chuyển tiếp các yêu cầu đến

Server thông qua Internet Server sẽ xử lý yêu cầu rồi gửi trả kết quả

xix

Trang 25

cho Proxy thông qua Agent và sau đó Proxy gửi lại kết quả cho

Client

Mô tả chức năng cơ bản:

- Client: Gửi các yêu cầu và nhận kết quả của các yêu cầu đượcgửi từ Proxy

- Proxy: Bắt được các yêu cầu từ Client, định tuyến các yêu cầu của Client tới Server Nếu có Agent đáp ứng được yêu cầucủa Client thì trả về luôn cho Client Proxy sẽ nhận kết quả của yêu cầu chính là Agent được di trú từ Server đến

- Server: Xử lý các yêu cầu của Client được chuyển tiếp từ

Proxy và lấy dữ liệu từ cơ sở dữ liệu thông qua Agent Kết quả trả về Proxy cũng thông qua việc tạo các Agent chứa dữ liệu của các yêu cầu

- Agent: Jade Agent được cài đặt trên Proxy và Server Mỗi Agent chứa dữ liệu cụ thể, và tự động cập nhật dữ liệu được.Với mô hình trên, Agent được cài đặt trên Proxy và Server Các Agent được tạo trên Server khi có một yêu cầu lấy dữ liệu được gửi đến và di trú về Proxy Proxy lưu trữ được các Agent Nhớ vậy mà hệ thống sẽ tận dụng được tài nguyên của Proxy, dữ liệu sẽ được lưu trữgần với Client hơn Khi đó, thời gian phản hồi của hệ thống cho Client

sẽ nhanh hơn

Để hiểu rõ cơ chế hoạt động của hệ thống, chúng ta cần phải tìmhiểu rõ các cơ chế hoạt dộng của Agent gồm các cơ chế:

- Cơ chế quản lý Agent

- Cơ chế di trú của Agent tới nút mạng khác

- Cơ chế cập nhật dữ liệu cho Agent

Các cơ chế giúp cho hệ thống hoạt động và là chức năng chính của hệ thống

xx

Ngày đăng: 08/10/2015, 13:28

HÌNH ẢNH LIÊN QUAN

Hình 2.3: Kiến trúc của JADE - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 2.3 Kiến trúc của JADE (Trang 20)
Hình 2.5 Mô tả Agent DF - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 2.5 Mô tả Agent DF (Trang 22)
Hình 2.6: Biểu đồ thành phần của JADE - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 2.6 Biểu đồ thành phần của JADE (Trang 22)
Hình 3.8: Mô hình quản lý Agent - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 3.8 Mô hình quản lý Agent (Trang 26)
Hình 3.9: Mô hình di trú Agent từ Server đến Proxy - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 3.9 Mô hình di trú Agent từ Server đến Proxy (Trang 27)
Hình 4.10: Mô hình thực tế của hệ thống - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.10 Mô hình thực tế của hệ thống (Trang 30)
Hình 4.11: Mô hình hoạt động của hệ thống - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.11 Mô hình hoạt động của hệ thống (Trang 32)
Hình 4.12: Biểu đồ tuần tự của truy xuất dữ liệu Bảng 4.1: Modul kết nối, truy nhập cơ sở dữ liệu - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.12 Biểu đồ tuần tự của truy xuất dữ liệu Bảng 4.1: Modul kết nối, truy nhập cơ sở dữ liệu (Trang 33)
Hình 4.13: Biểu đồ tuần tự xử lý yêu lặp lại sử dụng Agent tại Proxy - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.13 Biểu đồ tuần tự xử lý yêu lặp lại sử dụng Agent tại Proxy (Trang 34)
Hình 4.16: Các thành phần của Proxy - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.16 Các thành phần của Proxy (Trang 37)
Hình 4.17: Biểu đồ lớp thiết kế tại Proxy Bảng 4.5: Các thành phần lớp của hệ thống tại Proxy - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.17 Biểu đồ lớp thiết kế tại Proxy Bảng 4.5: Các thành phần lớp của hệ thống tại Proxy (Trang 38)
Hình 4.19: Biểu đồ lớp của hệ thống trên Server Bảng 4.6: Các thành phần lớp của hệ thống tại Server - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 4.19 Biểu đồ lớp của hệ thống trên Server Bảng 4.6: Các thành phần lớp của hệ thống tại Server (Trang 41)
Hình 5.20: Giao diện ban đầu của trang tin tức - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 5.20 Giao diện ban đầu của trang tin tức (Trang 45)
Hình 5.21: Gửi yêu cầu từ Client sang RequestAgent tại Proxy. - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 5.21 Gửi yêu cầu từ Client sang RequestAgent tại Proxy (Trang 46)
Hình 5.24: Dữ liệu được hiển thị khi kích vào GetData4 - nghiên cứu, ứng dụng mobile agent trong mô hình proxy – server
Hình 5.24 Dữ liệu được hiển thị khi kích vào GetData4 (Trang 48)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w