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

ĐẠ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


ĐẠ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

2


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, Internet
mang đến nguồn thông tin, tri thức khổng lồ. Hơn thế nữa Internet 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 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ới
máy chủ, máy chủ sẽ xử lý yêu cầu và trả kết quả về cho máy khách. Tuy
vậy, mô hình Client – Server vẫn còn nhiều vấn đề hạn chế khi mà lượng
Client 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ất
củ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án
chia sẻ dữ liệu bằng cách sử dụng Agent phần mềm nhằm cải thiện những
thiế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ình
truyền thống Client – Server.

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

6

Lời cảm ơn
Lời đầu tiên, tôi xin bày to
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ình
thự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ời cho
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ại
phòng thí nghiệm công nghệ phần mềm Toshiba-Coltech, anh
Nguyễ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ọc
tậ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 động
viên tôi, khuyến khích tôi trong cuộc sống cũng như học tập, công
việc.
Tôi xin chân thành cảm ơn!
Hà Nội, ngày 02 tháng 05 năm
2014
Sinh viên
Chu Văn Minh

8


Lời cam đoan
Tôi xin cam đoan các kết


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 đã
được đưa để giải quyết các vấn đề trên như: Sử dụng các bản sao
Server, 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ỉ

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.

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ách
giao tiếp như thế nào để lấy dữ liệu trên Server. Tính đóng gói thể

14


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 –


-

-

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ác
hà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ác
Agent khác không truy cập được vào các trạng thái này. Còn
tính tự chủ về hành động thể hiện ở chỗ Agent có thể tự quyết
cá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ăng
Agent 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ôi
trường. Tính phản ứng thể hiện rõ nhất ở các Agent hoạt động
trê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ủa
mỗi một Agent đối với môi trường bên ngoài đều hướng tới việc
thự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 định
mộ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ới
mục đích riêng của mình mà còn có khả năng tương tác với các

16

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.


-

-

-

Khả năng tính toán: Việc tính toán được phân chia cho các
Agent khác nhau và khả năng phối hợp xử lý cùng nhau của
cá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ác
Agent 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ường
JADE gồm có:


Hình 2.4: Giao di n kh i

n g 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 Management
System) là một Agent giám sát toàn bộ platform. Là điểm liên
lạc cho tất cả Agent cần tương tác để truy cập White pages của
platform cũng như để quản lý vòng đời của nó. Mọi Agent được
yêu cầu đăng ký với AMS (thực hiện một cách tự động bởi JADE
lúc Agent bắt đầu) để đạt được một AID hợp lệ (định danh của
mộ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ẩn
FIPA đều chứa một DF Agent. Một “yellow pages” – trang vàng
cho 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ấy
các Agent A1, A2, A3 đăng ký với DF Agent các dịch vụ mình
cung cấp, các Agent A4, A5 tìm kiếm dựa vào DF Agent và khai

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ếp
theo, mang theo đó dữ liệu (Data), trạng thái (State) và nối lại thực
thi khi đến đích.

23


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ả
cho Proxy thông qua Agent và sau đó Proxy gửi lại kết quả cho Client.

24


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

hiể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.

3.2. Cơ chế hoạt động của Agent
3.2.1. Cơ chế quản lý Agent

25


Trích đoạn Chương 5 THỰC NGHIỆM Chương 6 KẾT LUẬN
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status