Internet là một hệ thống thông tin toàn cầu có thể được truy nhập công cộng gồm 
các mạng máy tính được liên kết với nhau. Hệ thống máy tính này bao gồm hàng ngàn 
mạng máy tính nhỏ hơn của các doanh nghiệp, các viện nghiên cứu, các trường đại học, 
các chính phủ và người dùng cá nhân. Các máy tính kết nối Internet có thể lấy thông tin từ 
rất nhiều nguồn khác nhau đồng thời cũng có thể chia sẻ thông tin của mình cho những 
người sử dụng khác. Internet mang lại rất nhiều tiện ích hữu dụng cho người dùng, phổ 
biến nhất có thể kể đến hệ thống thư điện tử, trò chuyện trực tuyến, truy tìm dữ liệu, các 
dịch vụ thương mại và chuyển ngân, và các dịch vụ về y tế giáo dục như chữa bệnh từ xa 
hoặc tổ chức các lớp học ảo. Chúng cung cấp một khối lượng thông tin và dịch vụ khổng 
lồ trên Internet. Nhu cầu sử dụng Internet không chỉ như một nơi cung cấp thông tin mà 
còn là nơi thực hiện trực tiếp các yêu cầu về tính toán ngày một lớn. Các dịch vụ chuẩn 
được sử dụng phổ biến trên Internet hiện nay như trao đổi thư điện tử, truy cập Web và 
truy cập dữ liệu đều dựa trên mô hình Client – Server [11]. Client – Server diễn tả mối 
quan hệ giữa hai chương trình máy tính mà ở đó chương trình Client tạo ra các yêu cầu về
dịch vụ cho chương trình Server. 
              
                                            
                                
            
 
            
                 50 trang
50 trang | 
Chia sẻ: luyenbuizn | Lượt xem: 1233 | Lượt tải: 0 
              
            Bạn đang xem trước 20 trang nội dung tài liệu Nghiên cứu mô hình phân tải Server sử dụng Proxy động, để 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Ệ 
Nguyễn Minh Hoàng 
NGHIÊN CỨU MÔ HÌNH PHÂN TẢI SERVER 
SỬ DỤNG PROXY ĐỘNG 
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 - 2009 
 ĐẠI HỌC QUỐC GIA HÀ NỘI 
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ 
Nguyễn Minh Hoàng 
NGHIÊN CỨU MÔ HÌNH PHÂN TẢI SERVER 
SỬ DỤNG PROXY ĐỘNG 
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: TS. Nguyễn Việt Hà 
Cán bộ đồng hướng dẫn: ThS. Vũ Quang Dũng 
HÀ NỘI – 2009 
VIETNAM NATIONAL UNIVERSITY, HANOI 
COLLEGE OF TECHNOLOGY 
Nguyen Minh Hoang 
RESEARCH ON SERVER WORKLOAD 
REDUCTION USING DYNAMIC PROXY 
GRADUATION THESIS 
Major field: Information Technology 
Supervisor: Nguyen Viet Ha, Dr. Eng. 
Co-supervisor: Vu Quang Dung, Master 
HANOI – 2009 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
i 
Lời cảm ơn 
Lời đầu tiên em xin bày tỏ lòng biết ơn sâu sắc tới hai thầy giáo TS. Nguyễn Việt Hà 
và ThS. Vũ Quang Dũng. Các thầy đã hướng dẫn em tận tình trong suốt năm học vừa qua. 
Em xin bày tỏ lòng biết ơn tới các thầy, cô giáo 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, chỉ dẫn chúng em và 
luôn tạo điều kiện tốt nhất cho chúng em học tập trong suốt quá trình học đại học đặc biệt 
là trong thời gian làm khoá luận tốt nghiệp. 
Tôi xin cảm ơn các bạn sinh viên khoá K50 trường Đại học Công nghệ, đã cho tôi 
những ý kiến đóng góp giá trị khi thực hiện đề tài này. 
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 sâu sắc. 
Hà Nội, ngày 20/5/2009 
Nguyễn Minh Hoàng 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
ii 
Tóm tắt 
Xu hướng chuyển mọi tính toán lên Server bên ngoài Internet đang dần trở nên phổ 
biến, và sẽ là một trong những hình thức hoạt động chủ yêu của tương lai. Do đó yêu cầu 
về việc phân tải cho Server là thiết yếu. Các mô hình hiện có chủ yếu phân tải cho Server 
bằng một Server khác hoặc dựa trên các Cache Proxy. Khoá luận này sẽ đưa ra một mô 
hình mới cho việc phân tải Server bằng việc sử dụng Proxy động được xây dựng dựa trên 
lý thuyết về Agent. 
Trong mô hình này, các tính toán sẽ được đóng thành các Agent và được chuỷên 
xuống cho Proxy thực hiện. Với mô hình này, việc tính toán trên Server sẽ được giảm bớt 
do một số tính toán có thể được thực hiện ngay trên Proxy. Cùng với đó là tính hiệu quả 
trong việc sử dụng đường truyền Internet cũng được tăng lên khi Proxy được bố trí như 
một cổng ra Internet của hệ thống mạng phía sau nó. Một kết quả nữa mà mô hình Proxy 
động có thể mang lại là tốc độ tính toán sẽ tăng lên do công việc được chia sẻ cho Proxy 
trong cùng mạng thực hiện và tốc độ truyền thông tin giữa Client với Proxy nhanh hơn so 
với việc truyền tới Server. 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
iii 
Abstract 
Tendency to transfer all calculations on the Internet Server is gradually becoming 
popular, and will be one of the main active forms in the future. Therefore the 
requirements for the server workload reduction is essential. Current models have major 
share in a Server by using another Server or Cache Proxy. This thesis will offer a new 
model for the server workload reduction using dynamic Proxy based on the theory of 
Agent. 
In this model, calculations will be packaged into the Agent and moved to Proxy for 
executing. In here, calculation on the Server will be reduced because a number of 
calculations can be done on the Proxy. Along with that, efficiency in the use of internet 
access will also be enhanced when the Proxy is arranged as an Internet gateway for the 
network behind it. Another result that dynamic Proxy model can bring is that calculation 
speed will be increased because Server works will be shared by Proxy and 
communication speed between the Client and the Proxy is faster than that between the 
Client and the Server. 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
iv 
Mục lục 
Lời cảm ơn .......................................................................................................................i 
Tóm tắt ........................................................................................................................... ii 
Abstract ......................................................................................................................... iii 
Mục lục ........................................................................................................................... iv 
Danh mục hình vẽ .......................................................................................................... vi 
Chương 1 Đặt vấn đề ...................................................................................................... 1 
1.1. Thực trạng .............................................................................................................. 1 
1.2. Phạm vi nghiên cứu ................................................................................................ 3 
1.3. Sơ lược về cách tiếp cận ......................................................................................... 3 
1.4. Cấu trúc của khóa luận ........................................................................................... 4 
Chương 2 Agent phần mềm............................................................................................ 6 
2.1. Tìm hiểu về Agent.................................................................................................. 6 
2.1.1. Agent .............................................................................................................. 6 
2.1.1.1. Agent là gì ................................................................................................ 6 
2.1.1.2. Kiến trúc tổng thế ..................................................................................... 7 
2.1.2. FIPA (Foundation for Intelligent, Physical Agents) ......................................... 8 
2.1.2.1. Lịch sử phát triển ...................................................................................... 8 
2.1.2.2. Các khái niệm cốt lõi ................................................................................ 9 
2.1.2.2.1. Truyền thông Agent (agent communication) .......................................... 9 
2.1.2.2.2. Quản lý Agent (Agent management) ...................................................... 9 
2.2. Nền tảng JADE .................................................................................................... 10 
2.2.1. Lịch sử phát triển........................................................................................... 10 
2.2.2. Jade và mô hình các Agent ............................................................................ 11 
2.2.3. Kiến trúc Jade................................................................................................ 11 
2.2.4. Biên dịch và chạy nền tảng Jade .................................................................... 13 
2.2.5. Agent di động (Mobile Agent) ....................................................................... 16 
Chương 3 Mô hình Proxy động .................................................................................... 19 
3.1. Mô tả bài toán ...................................................................................................... 19 
3.2. Mô hình đề xuất ................................................................................................... 20 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
v 
3.2.1. Ý tưởng ......................................................................................................... 20 
3.2.2. Giải pháp ....................................................................................................... 21 
3.2.2.1. Giải pháp cho Server .............................................................................. 21 
3.2.2.2. Giải pháp cho Proxy ............................................................................... 21 
3.2.3. Mô hình ......................................................................................................... 22 
3.2.3.1. Mô hình chung ....................................................................................... 22 
3.2.3.2. Mô hình của Server ................................................................................ 23 
3.2.3.3. Mô hình của Proxy ................................................................................. 25 
Chương 4 Thực nghiệm ................................................................................................ 29 
4.1. Phân tích thiết kế .................................................................................................. 29 
4.1.1. Mô tả chương trình ........................................................................................ 29 
4.1.2. Yêu cầu kỹ thuật............................................................................................ 30 
4.1.2.1. Yêu cầu kỹ thuật cho Server ................................................................... 30 
4.1.2.2. Yêu cầu kỹ thuật cho Proxy .................................................................... 30 
4.1.3. Các giai đoạn phát triển ................................................................................. 31 
4.1.4. Thiết kế chương trình .................................................................................... 32 
4.2. Cài đặt và thực nghiệm ......................................................................................... 33 
4.2.1. Cài đặt Server ................................................................................................ 34 
4.2.2. Cài đặt Proxy ................................................................................................. 34 
4.2.3. Thực nghiệm ................................................................................................. 34 
Chương 5 Kết luận ........................................................................................................ 37 
5.1. Kết quả thu được .................................................................................................. 37 
5.2. Hướng phát triển tiếp theo .................................................................................... 38 
Tài liệu tham khảo ........................................................................................................ 40 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
vi 
Danh mục hình vẽ 
` 
Hình 2.1: Quản lý Agent ................................................................................................. 10 
Hình 2.2: Mối quan hệ giữa các thành phần trong kiến trúc chính ................................... 12 
Hình 2.3: UML mối quan hệ giữa các thành phần trong kiến trúc chính .......................... 12 
Hình 2.4: Cấu trúc thư mục JADE .................................................................................. 14 
Hình 2.5: Kết quả khi khời động thành công ................................................................... 15 
Hình 2.6: Giao diện nền tảng JADE ................................................................................ 15 
Hình 2.7: Cấu trúc đơn giản của Agent di dộng............................................................... 17 
Hình 3.1: Mô hình Client – Proxy – Server ..................................................................... 19 
Hình 3.2: Mô hình hệ thống ............................................................................................ 23 
Hình 3.3: Cấu trúc Server ............................................................................................... 24 
Hình 3.4: Mẫu yêu cầu gửi cho Server ............................................................................ 25 
Hình 3.5: Cấu trúc Proxy Server ..................................................................................... 26 
Hình 3.6: Mẫu yêu cầu gửi cho Proxy ............................................................................. 28 
Hình 4.1: Biểu đồ tuần tự của hệ thống ........................................................................... 32 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
1 
Chương 1 Đặt vấn đề 
1.1. Thực trạng Internet là một hệ thống thông tin toàn cầu có thể được truy nhập công cộng gồm 
các mạng máy tính được liên kết với nhau. Hệ thống máy tính này bao gồm hàng ngàn 
mạng máy tính nhỏ hơn của các doanh nghiệp, các viện nghiên cứu, các trường đại học, 
các chính phủ và người dùng cá nhân. Các máy tính kết nối Internet có thể lấy thông tin từ 
rất nhiều nguồn khác nhau đồng thời cũng có thể chia sẻ thông tin của mình cho những 
người sử dụng khác. Internet mang lại rất nhiều tiện ích hữu dụng cho người dùng, phổ 
biến nhất có thể kể đến hệ thống thư điện tử, trò chuyện trực tuyến, truy tìm dữ liệu, các 
dịch vụ thương mại và chuyển ngân, và các dịch vụ về y tế giáo dục như chữa bệnh từ xa 
hoặc tổ chức các lớp học ảo. Chúng cung cấp một khối lượng thông tin và dịch vụ khổng 
lồ trên Internet. Nhu cầu sử dụng Internet không chỉ như một nơi cung cấp thông tin mà 
còn là nơi thực hiện trực tiếp các yêu cầu về tính toán ngày một lớn. Các dịch vụ chuẩn 
được sử dụng phổ biến trên Internet hiện nay như trao đổi thư điện tử, truy cập Web và 
truy cập dữ liệu đều dựa trên mô hình Client – Server [11]. Client – Server diễn tả mối 
quan hệ giữa hai chương trình máy tính mà ở đó chương trình Client tạo ra các yêu cầu về 
dịch vụ cho chương trình Server. 
Mô hình kiến trúc phần mềm Client - Server phân tách các hệ thống Client và các hệ 
thống Server và liên kết chúng dựa trên mạng máy tính. Một ứng Client – Server là một 
hệ thống được phân bố bao gồm cả phần mềm cho Client và phần mềm cho Server. Một 
phần mềm Client khi chạy có thể khởi tạo một tiến trình liên kết trong khi phía Server chờ 
đợi yêu cầu từ bất kỳ Client nào. 
Mô hình Client – Server là trung tâm của các ý tưởng về mạng tính toán. Đa số các 
ứng dụng kinh doanh được viết ra đều sử dụng mô hình Client – Server. Mỗi phiên bản 
của phần mềm Client có thể gửi các dữ liệu yêu cầu đến một hoặc nhiều Server. Sau đó, 
Server sẽ chấp nhận các yêu cầu này, xử lý chúng và trả thông tin đã được yêu cầu cho 
Client. Mặc dù khái niệm này có thể được sử dụng cho rất nhiều ứng dụng khác nhau theo 
các cách khác nhau nhưng kiến trúc cơ bản thì vẫn được giữ nguyên. 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
2 
Kiểu kiến trúc cơ bản nhất áp dụng mô hình Client – Server là chỉ sử dụng hai máy, 
một Client và một Server. Kiểu kiến trúc này đôi khi được hiểu là hai lớp. Nó cho phép 
các thiết bị có thể chia sẻ các tài nguyên. Kiến trúc hai lớp có nghĩa là các hành động của 
Client là một lớp và ứng dụng tổng hợp các hành động của Server là một lớp. Ngày nay, 
các Client phổ biến nhất là trình duyệt web trên các máy tính. Các Server thông dụng bao 
gồm Web Server, Server dữ liệu (Database Server), Mail Server. Các trò chơi trực tuyến 
thông thường cũng là mô hình Client – Server. 
Trong mô hình Client – Server, hầu hết tất cả các tính toán đều được thực hiện trên 
Server. Cũng trong mô hình này, yêu cầu sử dụng đường truyền Internet là rất lớn, nó sẽ 
gây ra vấn đề không nhỏ với cơ sở hạ tầng mạng hiện nay, đặc biệt là với các nước có hệ 
thống cơ sở hạ tầng mạng còn kém như Việt Nam. Những chậm trễ về tốc độ truyền trên 
mạng khi có một lượng lớn người sử dụng tham gia có thể làm ảnh hưởng lớn đến công 
việc kinh doanh của cá nhân hay doanh nghiệp, gây hậu quả nghiêm trọng về kinh tế. Vì 
vậy, việc thiết kế hệ thống mạng và sử dụng nó một cách hợp lý để giảm thiểu rủi ro do 
việc chậm chễ trong việc truyền tin gây ra là một yêu cầu quan trọng của thực tế. 
Có thể nhận thấy rằng khi sử dụng Server để thực hiện các yêu cầu, rất nhiều các 
yêu cầu về tính toán giống nhau được lặp lại trong cùng một vùng. Chẳng hạn như với các 
công ty có yêu cầu về sử dụng dịch vụ kế toán được đặt trên một Server ngoài Internet, rất 
nhiều các máy tính trong công ty đó sẽ có các yêu cầu về các tính toán giống nhau, các 
tính toán này nhiều khi còn được yêu cầu lặp đi lặp lại, tất cả sẽ đều được gửi lên cho 
Server xử lý. Nếu bây giờ chúng ta có thể chọn lọc các tính toán được yêu cầu này, đưa 
nó về xử lý ở một máy chủ trong cùng vùng với các máy tính có yêu cầu, thì lượng thông 
tin truyền đi trên đường truyền Intenet sẽ được giảm đáng kể, đồng thời thông tin trả về 
cho các máy tinh sẽ nhanh hơn, giảm được các rủi ro do việc chậm trễ trong truyền tin 
gây ra. Thêm vào đó, việc đưa các tính toán này về vùng yêu cầu còn góp phần giảm thiểu 
đáng kể yêu cầu tính toán trực tiếp trên máy chủ. Điều này góp phần trực tiếp làm giảm 
chi phí cho việc bảo trì và nâng cấp hệ thống máy chủ. 
Như vậy chúng ta đã thấy được tầm ảnh hưởng của Internet và các vấn đề cần giải 
quyết khi sử dụng mô hình Client – Server truyền thống. Để đáp ứng đượng nhu cầu sử 
dụng và ứng dụng công nghệ mới, chúng ta cần giản giải quyết các vấn đề về khả năng 
phân tải cho các máy chủ và giảm lượng thông tin được truyền trên Internet. Vì vậy, cần 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
3 
phải phát triển một mô hình cho phép đưa các tính toán được yêu cầu nhiều lần từ máy 
chủ trên Internet về máy chủ trong cùng vùng với các máy đưa ra yêu cầu tính toán. 
1.2. Phạm vi nghiên cứu 
Trong phạm vi nghiên cứu của mình, đề tài sẽ chỉ đưa ra mô hình có khả năng thực 
hiện việc phân tải cho các máy chủ và giảm lượng thông tin được được truyền trên 
Internet dựa theo phương pháp đóng gói và di chuyển các tính toán từ các máy chủ trên 
Internet về khu vực có nhiều máy đưa ra yêu cầu tính toán giống nhau. 
Trong phần thực nghiệm của đề tài, mô hình đưa ra sẽ được ứng dụng thực tế vào 
một trương hợp cụ thể. Thực nghiệm này sẽ chứng minh rằng mô hình đã đưa ra hoàn 
toàn có thể triển khai và ứng dụng vào thực tế. 
Tuy nhiên do phạm vi nghiên cứu của đề tài có hạn nên thực nghiệm đưa ra không 
thể hiện hết những ưu điểm của mô hình đã được đưa ra. Những nghiên cứu tiếp theo về 
mô hình này sẽ được thực hiện và đưa ra những thực nghiệm khác thể hiện rõ hơn những 
ưu thế của mô hình khi được ứng dụng vào thực tế. 
1.3. Sơ lược về cách tiếp cận 
Để có thể đưa ra một mô hình phù hợp với yêu cầu đặt ra là phân tải cho các máy 
chủ và giảm lượng thông tin truyền trên Internet, nghiên cứu các mô hình đã có trước đây 
là việc làm cần thiết. Trong các mô hình truyền thống, việc sử dụng máy chủ Proxy [13] 
là việc làm quen thuộc. 
Proxy Server là một giải pháp đã được dùng trước đây trong các mô hình mạng 
truyền thống. Proxy được bố trí như một cổng ra Internet của một mạng phía sau nó. 
Ngoài chức năng làm nhiệm vụ lưu chuyển thông tin giữa các máy trong mạng và ngoài 
Internet, Proxy còn được tích hợp thêm một số tính năng như lọc thông tin, bảo đảm an 
ninh cho mạng cục bộ v.v. Một trong những tính năng đã được tích hợp vào Proxy Server 
là Cache. Với chức năng này, tần suất sử dụng đường truyền trên Internet đã được giảm 
đáng kể nhờ việc lưu lại các kết quả truy vấn trước đó. Khi có các yêu cầu được lặp lại, 
kết quả của lần trước sẽ được lưu lại và sử dụng để trả lời cho các lần truy vấn sau. Tuy 
nhiên đây chỉ là lưu giữ kết quả của các yêu cầu giống nhau, khi có các yêu cầu tính toán 
giống nhau, nhưng kết quả khác nhau, yêu cầu kết nối ra Internet vẫn phải được thực hiện 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
4 
Sử dụng Cache Proxy Server không phải là một lựa tốt cho mô hình cần đưa ra, tuy 
nhiên việc áp dụng mô hình Client – Proxy – Server là một giải pháp. Trong mô hình này, 
máy chủ Proxy ngoài chức năng cổng ra vào Internet thông thường, nó còn được bổ sung 
thêm khả năng nhận các tính toán và thực hiện nó rồi trả kết quả cho phía yêu cầu. 
Để các tính toán trên các máy chủ Internet có thể được chuyển sang cho các máy 
chủ Proxy, cần phải đóng gói các tính toán đó. Agent [14] được lựa chọn như là một 
phương pháp để thực hiện việc đóng gói và vận chuyển này. Các tính toán sẽ được đóng 
gói thành các Agent, và các Agent này có thể được chuyển từ máy chủ này sang máy chủ 
khác khi có yêu cầu. Khái niệm về Agent sẽ được nói kỹ hơn ở trong Chương 3: Agent 
phần mềm. 
Trong phần thực nghiệm, cần phải lựa chọn một nền tảng để phát triển Agent trên 
các máy chủ và Proxy. Nền tảng được lựa chọn ở đây là JADE [1], được phát triển trên 
nền java. Nền tảng Jade cho phép người lập trình dễ dàng tạo ra các Agent theo ý muốn 
đồng thời cung cấp các phương thức đơn giản để có thể chuyển các Agent từ máy chủ này 
sang máy chủ khác. Các khái niệm và cách sử dụng JADE sẽ được đề cập chi tiếp hơn 
trong Chương 3. 
1.4. Cấu trúc của khóa luận 
Các phần còn lại của khóa luận có cấu trúc như sau: 
Chương 2 giới thiệu về một số khái niệm lý thuyết và nền tảng đượ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 Proxy động với mục đích phân tải cho Server. 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 phân tải cho Server sử dụng Proxy động và mô 
hình để giải quyết bài toán dựa trên lý thuyết về Agent. Mô hình Proxy động sẽ đượ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. 
Chương 4 trình bày 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 cụ thể của mô hình đã đưa ra trong thực tế. Thực nghiệm 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
5 
xây dựng mô hình kiểm chứng người dùng có phải người hay không bằng cách sử dụng 
hình ảnh để kiểm chứng. Trong thực nghiệm này, việc sinh ra ảnh để kiểm chứng và việc 
kiểm chứng thông tin trả về từ phía người dùng sẽ được chuyển từ Server về cho Proxy 
thực hiệ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. 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
6 
Chương 2 Agent phần mềm 
Chương này sẽ đề cập đến một số cơ sở lý thuyết được dùng trong quá trình nghiên 
cứu và đưa ra mô hình. 
2.1. Tìm hiểu về Agent 
Phần này sẽ giới thiệu tổng quát về kỹ công nghệ Agent, bao gồm khái niệm chung, 
và kiến trúc tổng thể. Sau đó sẽ giới thiệu về đặc tả của FIPA [18], đây là chuẩn được 
chấp nhận rộng rãi nhất cho các nền tảng và ứng dụng đa Agent. Jade cũng phục vụ theo 
chuẩn này và nó có mở rộng thêm một số mẫu trong một vài khu vực, nhưng nhìn một 
cách tổng quan, Jade hoàn toàn tuân theo chuẩn FIPA đã đưa ra. 
2.1.1. Agent 
Agent được coi như là một trong những mô hình quan trọng nhất trong việc một mặt 
phát triển các phương thức hiện có về khái niệm hoá, thiết kế và tích hợp các hệ thống 
phần mềm, mặt khác có thể là giải pháp cho việc giải quyết các vấn đề tích hợp các phần 
mềm thừa kế. 
2.1.1.1. Agent là gì 
Mặc dù không có một định nghĩa duy nhất về Agent (các định nghĩa về Agent [5, 
10, 8] ) , nhưng tất cả các định nghĩa đều đồng ý rằng về cơ bản Agent là một thành phần 
phần mềm đặc biệt có khả năng tự quyết định, cung cấp một giao diện tương thích cho 
một hệ thông tuỳ ý và/ hoặc hành động giống như một tác nhân con người, làm việc cho 
một số khách hàng theo một số yêu cầu cụ thể. Mặc dù một số hệ thống Agent có thể dựa 
trên một Agent duy nhất làm việc trong một môi trường và khi cần có thể tương tác với 
người sử dụng, nhưng trong đa số trường hợp, hệ thống Agent bao gồm nhiều Agent. Hệ 
thống đa Agent (MAS - Multi-agent System) này có thể là một hệ thống rất phức tạp với 
các Agent có cùng mục tiêu chung hoặc đôi khi xung đột với nhau. Các Agent này có thể 
tương tác với nhau một cách gián tiếp (thông qua các hành động trên môi trường) hoặc 
trực tiếp (thông qua các giao tiếp và thương lượng). Các Agent có thể quyết định hợp tác 
cho mục tiêu chung hoặc cạnh tranh lẫn nhau để phục vụ mục tiêu riêng của nó. 
Nghiên cứu mô hình phân tải Server sử dụng Proxy động 
7 
Như vậy, một Agent có tính tự trị, bởi vì nó hoạt động mà không có sự can thiệp 
trực tiếp của con người hoặc các Agent khác, và nó tự điều khiển các hành động và trạng 
thái bên trong nó. Một Agent có tính xã hội, vì nó hợp tác với con người hoặc các Agent 
khác để hoàn thành các nhiệm vụ của nó. Một Agent có tính phản ứng vì nó nhận biết 
được môi trường của nó và trả lời một cách kịp thời để thay đổi những thứ xẩy ra trong 
môi trường. Một Agent có tính tích cực vì nó không chỉ đơn giản hồi đáp đến môi trường 
của nó mà còn có khả năng đưa ra các hành động hướng tới mục tiêu bằng cách đưa ra sự 
khởi tạo. 
Thê
            Các file đính kèm theo tài liệu này:
 Nguyen Minh Hoang_K50CNPM_Khoa luan tot nghiep dai hoc.pdf Nguyen Minh Hoang_K50CNPM_Khoa luan tot nghiep dai hoc.pdf