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

Nghiên cứu mô hình kiến trúc và phối hợp agent cho các dịch vụ web

12 253 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 12
Dung lượng 394,72 KB

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

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ PHẠM BÁ BINH NGHIÊN CỨU MÔ HÌNH KIẾN TRÚC VÀ PHỐI HỢP AGENT CHO CÁC DỊCH VỤ WEB LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Hà Nội - 2015..

Trang 1

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

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

PHẠM BÁ BINH

NGHIÊN CỨU MÔ HÌNH KIẾN TRÚC VÀ PHỐI HỢP AGENT CHO CÁC DỊCH VỤ WEB

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

Hà Nội - 2015

Trang 2

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

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

PHẠM BÁ BINH

NGHIÊN CỨU MÔ HÌNH KIẾN TRÚC VÀ PHỐI HỢP AGENT CHO CÁC DỊCH VỤ WEB

Ngành: Công nghệ thông tin Chuyên ngành: Khoa học Máy tính

Mã số: 60 48 10

LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN

NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN VIỆT HÀ

Hà Nội – 2015

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan: Luận văn “Nghiên cứu mô hình kiến trúc và phối hợp

agent cho các dịch vụ web” là công trình nghiên cứu của riêng chúng tôi

Các kết quả nêu trong bản luận văn này là trung thực và chưa từng được ai công bố trong bất cứ công trình nào khác

Hà Nội, tháng 10 năm 2015

Phạm Bá Binh

Trang 4

MỤC LỤC

LỜI CAM ĐOAN 1

MỤC LỤC 3

DANH MỤC TỪ VIẾT TẮT 4

DANH MỤC BẢNG BIỂU 5

DANH MỤC HÌNH VẼ 6

MỞ ĐẦU 7

1 Đặt vấn đề 7

2 Phạm vi nghiên cứu 8

3 Cấu trúc luận văn 9

Chương 1 10

CÔNG NGHỆ AGENT VÀ DỊCH VỤ WEB 10

1.1 Agent và hệ đa agent 10

1.1.1 Agent 10

1.1.2 Agent di động 11

1.1.3 Hệ đa agent 12

1.1.4 Phối hợp giữa các agent 13

1.2 Nền tảng JADE 14

1.2.1 JADE và Agent 14

1.2.2 Kiến trúc JADE 15

1.3 Công nghệ dịch vụ web 18

1.3.1 Khái niệm 18

1.3.2 Cơ chế hoạt động dịch vụ web 19

1.3.3 Các thành phần của dịch vụ web 19

1.3.4 Đặc điểm của dịch vụ web 20

1.4 Tích hợp agent và dịch vụ web 21

Chương 2 23

MÔ HÌNH KIẾN TRÚC 23

2.1 Kiến trúc 23

2.1.1 Kiến trúc chung 23

2.1.2 Kiến trúc proxy 25

2.1.3 Kiến trúc Server 26

2.2 Đánh giá hiệu năng mô hình 28

2.3 Mở rộng mô hình 31

Chương 3 34

PHỐI HỢP CÁC AGENT 34

3.1 Agent quảng bá dịch vụ 34

3.1.1 DF agent 34

3.1.2 Công bố dịch vụ 34

Trang 5

3.1.3 Tìm kiếm dịch vụ 35

3.2 Tổ chức và di chuyển agent 35

3.3 Phối hợp các agent 35

3.3.1 Khái niệm 35

3.3.2 Sự cần thiết phải phối hợp 36

3.3.3 Các phương pháp điều khiển phối hợp 38

3.3.3.1 Phối hợp bằng chia sẻ công việc 38

3.3.3.2 Phối hợp bằng chia sẻ kết quả 38

3.3.3.3 Phối hợp bằng lập kế hoạch 39

3.3.3.4 Phối hợp bằng cấu trúc tổ chức 40

3.3.3.5 Phối hợp thông qua ý định chung 41

3.3.3.6 Phối hợp bằng quy tắc và luật 43

3.4 Phối hợp agent trong kiến trúc đề xuất 46

3.4.1 Phân rã yêu cầu và tổng hợp kết quả 47

3.4.2 Mô hình phối hợp 47

3.4.3 Phương pháp phối hợp 48

Chương 4 50

THỰC NGHIỆM 50

4.1 Mô phỏng mô hình 50

4.1.1 Công cụ Network Simulator 2 (NS2) 50

4.1.2 Môi trường mô phỏng 50

4.1.3 Các kết quả và đánh giá 50

4.2 Xây dựng hệ thống 56

4.2.1 Công nghệ và môi trường xây dựng 56

4.2.2 Xây dựng các thành phần hệ thống 56

4.2.2.1 Phía Server 56

4.2.2.2 Phía Proxy 56

4.2.2.3 Phía Client 56

4.2.3 Hoạt động 57

4.3 Kết quả thực nghiệm 58

4.4 Một số hạn chế của mô hình 59

KẾT LUẬN 60

TÀI LIỆU THAM KHẢO 62

PHỤ LỤC 64

DANH MỤC TỪ VIẾT TẮT

Từ viết tắt Từ/Cụm từ đầy đủ

Trang 6

CT Container Table

GADT Global Agent Description Table

SOAP Simple Object Access Protocal

TCP Transmission Control Protocol

UDDI Universal Description, Discovery and Intergration

WSDL Web Service Definition Language

Trang 7

DANH MỤC BẢNG BIỂU

Bảng 2.1 Thời gian đáp ứng của 2 mô hình 53 Bảng 4.1 Số lượng yêu cầu và dung lượng đến Proxy và Server trong mô hình Client-Proxy-Server 58

Trang 8

DANH MỤC HÌNH VẼ

Hình 1.1 Cấu trúc cơ bản của một agent di động [6] 11

Hình 1.2 Mối liên hệ giữa các thành phần trong một Platform [6] 15

Hình 1.3 Biểu đồ mối quan hệ giữa các phần tử trong kiến trúc [6] 16

Hình 1.4 Mối quan hệ giữa các agent trong một platform [6] 17

Hình 1.5 Mô hình truyền thông điệp không đồng bộ trong JADE [6] 18

Hình 1.6 Cơ chế hoạt động của dịch vụ web [15] 19

Hình 1.7 Kiến trúc tích hợp agent và các dịch vụ web [6] 21

Hình 2.1 Mô hình mạng Client – Server 23

Hình 2.2 Mô hình mạng Client – Proxy – Server 23

Hình 2.3 Mô hình hoạt động của agent [12] 24

Hình 2.4 Kiến trúc Proxy 25

Hình 2.5 Kiến trúc Server 27

Hình 2.6 Kiến trúc hệ thống Client – Proxy – Server 28

Hình 2.7 Mô hình thời gian đáp ứng agent [15] 29

Hình 2.8 Đồ thị so sánh thời gian đáp ứng [15] 30

Hình 2.9 Mô hình dịch chuyển agent 31

Hình 2.10 Điều kiện xử lý yêu cầu 32

Hình 3.1 Dịch vụ trang vàng [6] 34

Hình 3.2 Các dạng quan hệ giữa các hành động 37

Hình 3.3 Mô hình Cohen và Levesque 42

Hình 3.4 Ví dụ quy ước xã hội 43

Hình 3.5 Mô hình phối hợp agent đề xuất 47

Hình 3.6 Tiến trình phối hợp agent 48

Hình 4.1 Mô phỏng client-proxy-server trên NS2 51

Hình 4.2 Giao diện kết quả chạy NS2 [15] 52

Hình 4.3 Đồ thị thời gian đáp ứng của mô hình Client – Server 54

Hình 4.4 Đồ thị thời gian đáp ứng của mô hình Client – Proxy – Server 54

Hình 4.5 Đồ thị so sánh thời gian đáp ứng của 2 mô hình [15] 55

Hình 4.6 Biểu đồ tuần tự của hệ thống 57

Trang 9

MỞ ĐẦU

1 Đặt vấn đề

Vài năm trở lại đây, với sự bùng nổ của các loại máy tính cũng như các thiết bị như điện thoại thông minh, xe thông minh, nhà thông minh mạng internet đã thực sự trở thành mạng toàn cầu và kết nối đến những nơi xa xôi nhất Sự cải thiện về cơ sở hạ tầng mạng dường như chưa đáp ứng được nhu cầu khổng lồ của các thiết bị truy cập mạng Do đó, tốc

độ truy cập còn hạn chế, nhiều dịch vụ chưa đáp ứng được nhu cầu của người sử dụng Lỗi mạng, trễ mạng, tốc độ chậm không chỉ tiêu tốn thời gian công sức mà đôi khi còn gây những thiệt hại về kinh tế cho người dùng Hệ thống có số lượng truy cập càng lớn thì tỉ lệ lỗi càng tăng, tốc độ càng giảm nhất là khi các truy cập về một dịch vụ được thực hiện tại cùng một thời điểm Điều này là một hạn chế lớn của mô hình mạng Client-Server Hầu hết các tính toán đều được thực hiện bởi Server rồi gửi kết quả về Client nên tiềm ẩn nhiều rủi

ro về quá tải Server hay mất mát thông tin Rất nhiều nghiên cứu để cải thiện tốc độ mạng

đã được thực hiện Ý tưởng về việc sử dụng các máy chủ phân tán được đề xuất trong [7, 10] Phương pháp mở rộng miền cung cấp dịch vụ trong [9] Hay một nền tảng cho việc thiết kết và phát triển các ứng dụng phân tán dựa trên agent di động trong [8]

Trong thực tế, rất nhiều Client truy cập đến Server từ một mạng con và cùng có yêu cầu tính toán giống nhau Ví dụ như một hệ thống thi trực tuyến gồm nhiều địa điểm thi khác nhau Tại mỗi điểm thi, yêu cầu về giao diện, tạo bài thi, kiểm tra kết quả của mỗi Client là tương tự nhau Hay một hệ thống cung cấp dịch vụ kế toán cho các công ty, mỗi công ty có nhiều phòng ban, nhân viên sử dụng dịch vụ này Dễ thấy, sẽ có nhiều tính toán được yêu cầu lặp lại bởi các phòng ban, nhân viên Tất cả những tính toán giống nhau này đều phải đưa đến Server để tính toán và trả lại kết quả thì thật là một sự lãng phí về băng thông mạng, chi phí xử lý và thời gian chờ đợi Giải quyết vấn đề này, một mô hình sử dụng đa agent trong giảng dạy trực tuyến được đề cập trong[3] Một số kỹ thuật và kiến trúc dựa trên phần mềm agent cho thương mại điện tử được giới thiệu trong[4] Cơ sở hạ tầng phục vụ phối hợp agent cho các ứng dụng web được xây dựng trong [11, 15]

Bên cạnh đó, công nghệ dịch vụ web đang được áp dụng rộng rãi để xây dựng các

hệ thống thông tin phân tán, cung cấp các tiện ích khả mở và thuận tiện cho các ứng dụng mạng cũng như người sử dụng Và cũng với lý do có hàng tỉ ứng dụng cùng các thiết bị cùng tham gia sử dụng dịch vụ nên công nghệ này còn rất nhiều vấn đề cần giải quyết như khả năng đáp ứng cho các ứng dụng, khả năng phối hợp giữa các dịch vụ, hay hiệu năng của dịch vụ với việc trợ giúp tăng hiệu năng của hệ thống Giải pháp cân bằng tải dựa trên chất lượng dịch vụ đã được đưa ra trong [10] Hay hướng tiếp cận sử dụng agent di động

để chuyển mã nội dung ảnh được giới thiệu trong [13] Với mục tiêu tương tự, chúng tôi đề xuất kiến trúc sử dụng các agent di động trong [17] Kiến trúc dịch vụ web kết hợp với việc phối hợp các agent này giúp giải quyết vấn đề đường truyền và giảm tải hệ thống Đồng thời, cung cấp một số dịch vụ có tính khả mở cao tương thích với các ứng dụng Ý tưởng chính là sử dụng hệ thống các agent phối hợp thực thi ở gần phía người dùng để đáp ứng nhanh nhất các yêu cầu dựa trên kiến trúc mạng gồm ba lớp Client – Proxy – Server Nền tảng này giúp giảm tải cho máy chủ web cũng như giảm lưu lượng trên toàn mạng, giảm

Trang 10

lỗi mạng Phần lõi của kiến trúc là một dịch vụ được thực hiện bởi một hoặc một số agent

có khả năng di chuyển để mang dịch vụ này tới máy chủ proxy được đặt gần các client Mỗi agent biết khả năng của mình và những dịch vụ mà các agent khác cung cấp do đó nó

sẽ chủ động thực thi hoặc phối hợp với các agent khác để thực thi tại proxy Nhờ đó, thời gian đáp ứng yêu cầu dịch vụ giảm đáng kể vì các Client chỉ cần kết nối tới Proxy thay vì kết nối tới Server ở rất xa Các vấn đề nút thắt cổ chai và quá tải Server cũng được ngăn chặn và giảm thiểu Trong luận văn này, tôi xin trình bày những nghiên cứu của chúng tôi

về kiến trúc hệ thống, sự phối hợp của các agent, đánh giá hiệu năng của mô hình ba lớp Client-Proxy-Server tập trung vào thời gian đáp ứng yêu cầu dịch vụ Phần mô phỏng hệ thống trên công cụ mô phỏng mạng và một ứng dụng minh họa cũng sẽ được trình bày

2 Phạm vi nghiên cứu

Trong thời gian thực hiện luận văn, tôi cùng các đồng nghiệp đã tập trung nghiên cứu về

mô hình kiến trúc mạng ba lớp Client-Proxy-Server với sự phối hợp của các agent để đáp ứng yêu cầu dịch vụ Những nội dung nghiên cứu này thuộc lĩnh vực mạng máy tính và công nghệ phần mềm Trong lĩnh vực mạng mánh tính, chúng tôi đề xuất một mô hình kiến trúc giúp giảm tải mạng, giảm trễ đường truyền, giảm tải server Các giao thức mạng và phương thức truyền cũng như việc đảm bảo chất lượng dịch vụ cũng được xem xét Phần lõi của kiến trúc thuộc về lĩnh vực công nghệ phần mềm Chúng tôi nghiên cứu về công nghệ agent phần mềm, tập trung vào agent di động và các phương pháp sắp xếp, phối hợp agent Công nghệ dịch vụ web cũng được chúng tôi nghiên cứu và tích hợp cùng agent

3 Cấu trúc luận văn

Phần còn lại của luận văn được tổ chức trong 4 chương và phần kết luận Chương 1 là phần giới thiệu về công nghệ agent, công nghệ dịch vụ web, những khái niệm, đặc điểm và cách thức hoạt động phục vụ cho nghiên cứu này Chương 2 trình bày tổng quan kiến trúc mạng 3 lớp sử dụng hệ thống agent bao gồm mô hình tổng quát, kiến trúc cụ thể của Server, Proxy; cách thức tiếp nhận, xử lý, chuyển tiếp, hồi đáp yêu cầu tại Proxy Server Đánh giá hiệu năng hệ thống dựa trên mô hình toán học Chương 3 giới thiệu các phương pháp phối hợp agent và phương pháp phối hợp agent để đáp ứng yêu cầu dịch vụ trong kiến trúc đề xuất Những vấn đề liên quan cũng được đề cập như sự quảng bá tác vụ của một agent, việc chuyển giao yêu cầu dịch vụ nhờ Gateway Agent, sự giao tiếp giữa các agent hay chiến lược thực thi, phối hợp, di chuyển của các agent Chương 4 trình bày chi tiết về hai thực nghiệm để đánh giá hiệu quả của mô hình đề xuất Đầu tiên là mô phỏng

mô hình bằng công cụ mô phỏng mạng Sau đó là triển khai hệ thống và xây dựng một ứng dụng nhỏ trên thực tế Phần kết luận đưa ra các nhận xét và đánh giá tổng quát về hiệu quả của hệ thống, những vấn đề còn tồn tại cũng như hướng nghiên cứu tiếp theo của đề tài

Hình 2.9 Mô hình dịch chuyển agent

Trong hình 2.9, mỗi máy chủ proxy được kết nối với một nhóm client thông qua mạng cục bộ Do đó, nó sẽ đáp ứng gần như ngay lập tức yêu cầu của client Kết nối giữa máy chủ proxy và máy chủ web thông qua internet Thời gian đáp ứng của hệ thống là tổng

Trang 11

TÀI LIỆU THAM KHẢO

Tiếng Việt

1 Lê Tấn Hùng, Từ Minh Phương, Huỳnh Quyết Thắng (2006), Tác tử - Công nghệ phần mềm hướng tác tử, NXB Khoa học và Kỹ thuật, Hà Nội

2 Trần Hạnh Nhi, Lê Đình Duy, Nguyễn Đông Hà, Thái Trí Hùng, Văn Trọng Nam, Huỳnh Tấn Năng, Nguyễn Huy Thẩm, Nguyễn Thái Huy, phan Đình Thế Huân, Hồ Thị

Mỹ Huyền, Lê Văn Triều (2004), Tổng quan về Mobile Agent, Đại Học Khoa học Tự nhiên, Đại học Quốc gia TP HCM

3 Đỗ Văn Nhơn, Nguyễn Trần Minh Khuê (2007), Xây dựng một mô hình hệ thống multi-agent và ứng dụng trong e-Learning, Tạp chí BCVT & CNTT kỳ 3 10/2007, Trang

100-107

4 Trần Đình Quế, Nguyễn Mạnh Sơn, Nguyễn Mạnh Hùng (2005), Nghiên cứu phát triển

kỹ thuật và kiến trúc hệ phần mềm dựa trên agent cho thương lượng tự động trong thương mại điện tử thế hệ thứ 2, Báo cáo đề tài nghiên cứu 58-04-KHKT-RD, Tổng công ty Bưu chính Viễn thông

5 Trần Đình Quế (2010), Phát triển phần mềm hướng agent, Bài giảng dành cho sinh viên ngành Công nghệ Thông tin, Học viện Công nghệ Bưu chính Viễn thông, Trang

Tiếng Anh

6 Fabio Bellifemine –Giovanni Caire–Dominic Greenwood (2007), Developing multi-agent systems with JADE, John Wiley & Sons Ltd, England

7 J Cao, Y Sun, X Wang, and S K Das (2003) Scalable load balancing on distributed web servers using mobile agents Journal of Parallel and Distributed Computing, 996-1005

8 G Chen, J Lu, J Huang, and Z Wu (2010) Saaas – the mobile agent based service for cloud computing in internet environment, In Proc Sixth Int Natural Computation (ICNC) Conf, volume 6, 2935-2939

9 L Cherkasova, (2000) Flex: load balancing and management strategy for scalable web hosting service, In Proceedings of the Fifth International Symposium on Computers and Communications

10 M Conti, E Gregori, and F Panzieri (1999) Load distribution among replicated web servers: a qos-based approach, In Proceedings of the Second ACM Workshop on Internet Server Performance

11 E Denti and A Omicini (2000), A coordination infrastructure for agent-based internet applications, IEEE 9th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterpries

12 J L Hsiao, H P Hung, and M S Chen (2008) Versatile transcoding proxy for internet content adaptation IEEE Transaction on Multimedia, 646-658

13 V.-H Nguyen, T D Bui, Q.-D Vu, N T T Hien (2010), Towards scalable agent based web service systems, Proc, 4th Int New Trens Information Science and Service Science (NISS) Conf, 210-213

14 Omicini, A., Zambonelli, F (2000), Coordination infrastructure for agent-based internet application, IEEE 9th International Workshops on Enabling Technologies, Infrastructure for Collaborative Enterprises, 251-269

15 Kiet T Tran (2013) Introduction to Web Service with Java, 1st edition

16 M Wooldridge (2009), An Introduction to Multiagent Systems, John Wiley & Sons, England

Ngày đăng: 27/08/2016, 22:40

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w