GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
MỤC LỤC
Chương mở đầu: GIỚI THIỆU ĐỀ TÀI 3
Đặt vấn đề 3
Yêu cầu của đề tài 3
Giải quyết vấn đề 3
Chương 1: TỔNG QUAN VỀ MOBILE AGENT 6
TÓM TẮT 6
1.1. Sự cần thiết của mô hình Mobile Agent 6
1.2. Sự tiến hóa từ các mô hình ứng dụng phân tán 8
1.3. Kiến trúc hệ thống Mobile Agent 9
1.4. Các đặc tính của Mobile Agent 11
1.5. Ứng dụng của Mobile Agent 12
1.5.1. Các lợi thế của Mobile Agent 12
1.5.2. Các ứng dụng của Mobile Agent 14
1.6. Các hệ thống Mobile Agent hiện hành 16
1.6.1. Aglets 16
1.6.2. Voyager 17
1.6.3. Mole 19
1.6.4. ZEUS 20
1.6.5. So sánh các hệ thống Aglet, Mole, Voyager và Zeus 21
1.7. Vấn đề khó khăn và thách thức 22
KẾT LUẬN 24
Chương 2: BẢO MẬT TRÊN MOBILE AGENT (MOBILE AGENT SECURITY) 25
TÓM TẮT 25
2.1. Đe dọa sự an toàn bảo mật (Security Threats) 25
2.1.1. Sự tấn công từ một Agent đến Agent Platform (Agent-to-Platform) 26
2.1.2. Sự tấn công từ một Agent đến một Agent khác trong cùng một Platform (Agent to Agent) 28
2.1.3. Sự tấn công từ Platform đối với Agent (Platform-to-Agent) 29
2.1.4. Những thực thể khác tấn công vào hệ thống Agent Platform (Other-to-Agent Platform) 31
2.2. Những yêu cầu về an toàn bảo mật (Security Requirements) 32
KẾT LUẬN 80
Chương 6: CẤU HÌNH HOÀN CHỈNH ỨNG DỤNG 81
6.1. Cài đặt Aglet-2.0.2 (Server Tahiti) 81
6.2. Hoàn chỉnh ứng dụng 82
Chương 7: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 84
7.1. Kết luận 84
7.2. Hướng phát triển 84
TÀI LIỆU THAM KHẢO 86
PHỤ LỤC 87
Trang 2
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Chương mở đầu: GIỚI THIỆU ĐỀ TÀI
Đặt vấn đề
Trong mô hình Client-Server, một giao dịch hoặc truy vấn giữa Client và Server
sẽ yêu cầu nhiều vòng chu trình để hoàn tất. Mỗi chu trình sẽ tạo ra nhiều lưu thông trên
mạng và làm tốn băng thông. Trong một hệ thống có nhiều Client hoặc nhiều giao dịch,
tổng băng thông yêu cầu có thể sẽ vượt quá băng thông hiện có, điều đó sẽ làm giảm
hiệu suất của ứng dụng. Mà đối với các ứng dụng phân tán, băng thông của mạng rất
quan trọng và là một tài nguyên vô giá. Mô hình Mobile Agent ra đời dùng để giải quyết
vấn đề này. Nó sẽ quản lý các truy vấn hay giao dịch bằng cách gửi các Agent từ Client
đến Server, sau đó Client có thể ngắt nối kết và các Agent sẽ bảo vệ kết quả trả về cho
Client khi các nối kết được thiết lập trở lại. Kiến trúc của Mobile Agent sẽ làm giảm sự
tiêu tốn băng thông.
Yêu cầu của đề tài
Yêu cầu về lý thuyết:
- Tìm hiểu các mô hình của ứng dụng phân tán.
- Tìm hiểu sâu về mô hình tính toán phân tán Mobile Agents.
- Khai thác chuẩn Java Aglet của IBM.
Yêu cầu về chương trình:
- Xây dựng một ứng dụng phân tán minh họa theo mô hình Mobile Agents như:
Giới thiệu Aglet API (Aglet - Application Programming Interface)
Trang 4
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Giới thiệu về giao thức ATP (Agent Transfer Protocol)
Chương 5. Xây dựng ứng dụng định thời gian biểu cho cuộc họp
Giới thiệu mô tả ứng dụng
Giới thiệu về các chức năng chính
Kết quả minh họa ứng dụng
Chương 6. Cấu hình hoàn chỉnh ứng dụng
Cài đặt Aglet-2.0.2 (Server Tahiti)
Cấu hình hoàn chỉnh ứng dụng
Chương 7. Kết luận và hướng phát triển
Trang 5
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Chương 1: TỔNG QUAN VỀ MOBILE AGENT
TÓM TẮT
Mobile Agent là một trong những hướng nghiên cứu thu hút nhiều sự quan tâm
nhất từ những năm 90 đến nay với những đặc điểm rất thích hợp cho việc phát triển các
ứng dụng phân tán. Trong chương này, chúng tôi điểm lại những khái niệm cơ bản về
Mobile Agent đồng thời đề cập đến những loại ứng dụng phù hợp với mô hình Mobile
Agent đã và đang được nghiên cứu và phát triển trên thế giới. Thông qua việc xem xét
các hệ thống hỗ trợ phát triển ứng dụng dựa trên Mobile Agent, chương này cũng bàn tới
đến những khó khăn và thách thức cần phải giải quyết để có thể đưa Mobile Agent vào
ứng dụng trong thực tế.
1.1. Sự cần thiết của mô hình Mobile Agent
Sự phát triển không ngừng của các kỹ thuật tiên tiến về máy tính, đặc biệt là các
giải pháp mạng, cùng với sự bùng nổ nhanh chóng các dịch vụ và nguồn thông tin trên
mạng đã làm gia tăng số người sử dụng Internet đến con số hàng trăm triệu (theo
International Data Corp, tính đến cuối năm 2002 sẽ có hơn 600 triệu người trên toàn thế
giới kết nối Internet). Các đặc điểm của nguồn thông tin, tổ chức mạng, cũng như việc
tiến bộ đáng kinh ngạc, và cho ra đời các loại cáp quang với tốc độ truyền tải nhanh đáng
kể, đa số người dùng vẫn bị giới hạn với các thiết bị kết nối như modem hay các đường
truyền băng thông thấp với mạng không dây.
Với tất cả các đặc điểm trên đây, các ứng dụng phân tán phát triển theo mô hình
Client-Server truyền thống tỏ ra một số bất lợi vì đòi hỏi làm việc đồng bộ, đòi hỏi
đường truyền băng thông cao, độ trễ thấp và cuối cùng là các dịch vụ thiếu linh động,
khó thay đổi hay bổ sung. Mobile Agent là một mô hình trong đó các tiến trình, được
Trang 7
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
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. Mobile Agent với
các ưu điểm này hứa hẹn một giải pháp mới, hiệu quả và dễ dàng hơn trong việc phát
triển ứng dụng phân tán.
1.2. Sự tiến hóa từ các mô hình ứng dụng phân tán
Mobile Agent có thể được xem như là sản phẩm kết hợp của kỹ thuật Software
Agent và kỹ thuật xử lý phân tán. Mobile Agent khác với mô hình xử lý mạng truyền
thống. Theo truyền thống, một ứng dụng phân tán có cấu trúc xây dựng trên mô hình
Client-Server sẽ thực hiện việc giao tiếp thông qua cơ chế truyền thông điệp hoặc các lời
gọi hàm từ xa (RPCs). Các mô hình giao tiếp này thường phải đồng bộ, nghĩa là phía
Client tạm ngưng hoạt động của mình trong thời gian gửi yêu cầu đến Server và đợi đến
khi nhận được kết quả trả về từ Server. Một kiến trúc tiến bộ hơn là Remote Evaluation
(REV) do Stamos và Gifford đưa ra vào năm 1990. Trong mô hình REV, thay vì yêu cầu
thực hiện các hàm từ xa thì Client chỉ việc gởi mã nguồn các hàm của nó đến Server và
yêu cầu Server thực hiện rồi trả về kết quả. Một số hệ thống gần đây cũng đã giới thiệu
khái niệm thông điệp chủ động (Active Messages) có thể di trú giữa các vị trí trên mạng,
mang theo mã của chương trình để thực thi tại những vị trí này. Mobile Agent là mô
hình tiến hóa tiên tiến nhất so với các mô hình trước đó.
Mobile Agent là danh từ ghép giữa Agent (trợ lý) và Mobile (di động). Một
giữa các Agent.
- Directory service: duy trì các thông tin về trạng thái về sự cục bộ của một
Mobile Agent, và một thông điệp định tuyến dùng để phân phát các thông định tới
Mobile Agent.
Trang 10
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
- Security service: cung cấp môi trường thực thi an toàn.
- Application sevice: cung cấp các dịch vụ giao tiếp cho các tác vụ.
Thông thường, một MAE chỉ có trên một máy tính trên mạng, nhưng nếu các máy
tính được kết nối bằng đường truyền có tốc độ cao, một MAE có thể phân tán trên một
mạng theo cách không đồng nhất của các máy tính mà không ảnh hưởng đến năng suất
làm việc của toàn hệ thống. Agent Transfer Protocol (ATP) thì hoạt động trong MAE
cho việc vận chuyển các MA qua các máy tính, và cung cấp một môi trường thực thi và
các dịch vụ giao tiếp. Agent Communication Language (ACL) được khai thác bằng MA
trong MAE để kết nối với các dịch vụ khác nhau được cung cấp bởi MAE.
Trong một hệ thống kiến trúc của Mobile Agent, MA có thể được phân chia thêm
nữa là User Agent (UA) và Service Agent (SA). UA có thể di chuyển từ một MAE đến
MAE khác, thực thi trong MAE và kết nối với những MA khác hay các dịch vụ được
cung cấp bởi MAE xuyên suốt trong ACL. Chức năng chính của UA là hoàn tất nhiệm
vụ được giao bởi người dùng, và còn đóng vai trò di chuyển, điều khiển bảo mật và liên
lạc với bên ngoài. SA không có tính di động, chức năng chính của nó là cung cấp những
dịch vụ cho các MA cục bộ và các MA di chuyển đến. Thông thường có nhiều SA trong
một MAE, và chúng cung cấp các dịch vụ khác nhau. Vì vậy SA không có tính di động
và chỉ được khởi động (start up) và quản lý (manage) bởi admin của MAE nơi nó cư trú,
điều này làm cho SA không nguy hiểm. UA không thể truy cập trực tiếp vào tài nguyên
hệ thống, nó chỉ có thể truy cập vào tài nguyên được điều khiển thông qua các Interface
được cung cấp bởi SA. Theo cách đó sự tấn công từ các Agent nguy hiểm có thể được
tránh. Đây là cũng là một chính sách bảo mật mà hầu hết các hệ thống Mobile Agent
chấp nhận.
1.4. Các đặc tính của Mobile Agent
Trang 12
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
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 đó không được phép xảy ra trong các hệ thống
điều khiển thời gian thực như robot, quy trình sản xuất… Khi đó, giải pháp Mobile
Agent tỏ ra có hiệu quả 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.
1.5.1.3. Mobile Agent gói gọn 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 cho 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 Agent, các Agent 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.
1.5.1.4. Mobile Agent có thể thi hành tự trị và không đồng bộ
Thông thường, các thiết bị di động thường phụ thuộc và 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ó 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 Agent 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 để nhận Agent về.
1.5.1.5. Mobile Agent có khả năng thích ứng nhanh
Các Agent có khả năng cảm nhận nhanh 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.
1.5.1.6. Mobile Agent khắc phục tình trang 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à
Trang 13
Loại ứng dụng này nêu bật bản chất không đồng bộ của Mobile Agent. Nếu bạn
gửi đi một Agent, bạn không cần ngồi đợi kết quả. Bạn có thể lập trình cho Agent để nó
đợi lấy được thông tin chắc chắn. Ngoài ra bạn cũng không cần kết nối vào mạng cho tới
khi Agent gửi kết quả. Một Agent có thể đợi cho đến khi nào bạn kết nối lại.
1.5.2.4. Đàm phán
Bên cạnh việc tìm kiếm cơ sở dữ liệu và file, các Agent còn thu thập thông tin
bằng cách tương tác với các Agent khác. Ví dụ bạn muốn lập một kế hoạch gặp gỡ một
số người, bạn gửi một Agent tương tác với các Agent đại diện những người mà bạn
muốn gặp. Các Agent có thể đàm phán và sắp xếp lịch.
1.5.2.5. Đặt hàng
Thương mại điện tử là môi trường tốt để áp dụng công nghệ Mobile Agent. Một
Mobile Agent có thể thay bạn đi mua sắm, bao gồm việc đặt hàng, trả tiền. Chẳng hạn
như nếu bạn muốn bay từ thung lũng Silicon tới một quần đảo Nam Thái Bình Dương,
một Agent có thể tới cơ sở dữ liệu các chuyến bay và tham khảo giá của các hãng hàng
không. Nó tìm ra chuyến bay có giá rẻ và thời gian thích hợp, đặt một chỗ cho bạn, thanh
toán số credit card của bạn.
Thương mại điện tử cũng diễn ra giữa các Agent. Ví dụ có một host dành riêng
để mua bán ô tô, nếu bạn muốn mua một chiếc ô tô, bạn có thể đưa cho Agent sở thích
của bạn, giá cả và cách thức trả giá. Bạn gửi Agent của bạn tới host, ở đó nó mặc cả với
Agent của host để tìm mua chiếc xe cho bạn.
1.5.2.6. Xử lý song song
Vì các Mobile Agent có thể tạo ra nhiều bản sao của nó trên mạng, một ứng
dụng đầy tiềm năng của Mobile Agent là quản trị các tác vụ song song. Một ứng dụng
đòi hỏi quá nhiều tài nguyên bộ xử lý có thể được phân bố cho các Mobile Agent mang
đi thực hiện trên nhiều máy tính khác nhau để tận dụng các tài nguyên rảnh rỗi và cân
bằng tải. Hệ Mobile Agent không đồng nhất là một minh họa khai thác ưu điểm này của
mô hình Mobile Agent.
1.5.2.7. Quản trị hệ thống mạng
Trang 15
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Aglet API là bộ thư viện bao gồm các hàm chuyên biệt dành cho việc phát triển
Agent. Nhờ vào Aglet API, khả năng nổi tiếng của Java là “viết một lần, thi hành bất cứ
đâu” được viết lại là “viết một lần, lưu hành bất cứ đâu”. Một khi Aglets được tạo ra, nó
sẽ chạy trên mọi máy có hỗ trợ Aglet API mà không quan tâm đến nguồn gốc hệ điều
hành và phần cứng bên dưới hay nguồn gốc cụ thể của Aglet API được cài trên máy
đang chạy.
Trong mô hình đối tượng Aglets, một Mobile Agent là một đối tượng di động có
luồng kiểm soát riêng của nó, làm việc theo sự kiện và liên lạc với các Agent khác bằng
cách truyền thông điệp. Aglets có một cơ chế định danh duy nhất và toàn cục dựa trên
URL. Aglet hỗ trợ cơ chế di động yếu (weak mobility). Các Aglets giao tiếp với nhau
một cách đồng nhất, và độc lập với vị trí lưu trú thông qua đối tượng Proxy. Suốt chu kỳ
sống, các Aglets sẵn sàng bắt những sự kiện (clone, mobility, persistence) phát sinh
trong môi trường để có phản ứng thích hợp. Agent có thể giao tiếp đồng bộ hoặc không
đồng bộ thông qua các loại thông điệp: synchronous, one-way, hay future reply. Aglets
sử dụng ATP (Agent Transfer Protocol) cho việc di chuyển và giao tiếp. Aglets sử dụng
hai loại mẫu thiết kế chính là chủ-tớ (Master-Slave) và hành trình (Itinerary) cho việc di
chuyển của các Agent.
1.6.2. Voyager
Voyager là một môi trường thương mại hỗ trợ phát triển các ứng dụng Agent
được hãng Object Space phát triển từ giữa năm 1996. Voyager đã trải qua nhiều lần nâng
cấp và thay đổi từ phiên bản 1.0 cho đến bây giờ là phiên bản 4.5. Tháng 03-2002 sản
phẩm Voyager được nhượng lại cho Recursion Software, một công ty chuyên về các sản
phẩm viết trên C++ và Java để đảm bảo cho việc phát triển Voyager sau này. Các phiên
bản từ 1.0 đến 3.3 Voyager được phân phối cho các nhà phát triển như một freeware.
Hiện tại Voyager đã có phiên bản 4.5 Evaluation hoàn toàn tương thích với JDK1.3,
Trang 17
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
JDK1.2 và JDK1.1. Phiên bản này bao gồm 6 sản phẩm, trong đó sản phẩm chính yếu
dùng cho các ứng dụng Mobile Agent là Voyager ORB Professional.
Voyager sử dụng ngôn ngữ lập trình Java với cú pháp chuẩn để tạo dựng các đối
theo mô hình Agent trên các hệ phân tán.
Được xây dựng trên Java, Mole có khả năng thực thi trên tất cả các môi trường có
hỗ trợ JDK1.1.x (Jdk1.1.7 và Jdk1.1.8), sử dụng giao thức TCP/IP trong quá trình giao
tiếp. Mole hỗ trợ di chuyển yếu (weak migration).
Để thực hiện giao tiếp giữa các Agent Mole sử dụng các cơ chế truyền thông điệp,
gọi hàm từ xa RPCs, và cơ chế đặc trưng của Mole là session, badge. Ngôn ngữ giao tiếp
giữa các Agent được Mole hỗ trợ là KQML. Việc trao đổi dữ liệu giữa các Agent được
thực hiện theo nghi thức TCP/IP. Mole cho phép đa tiểu trình/Agent và quản lí tài
nguyên và lập lịch các tiểu trình trong hệ thống thông qua bộ lập lịch trung tâm MCP.
Khả năng bảo mật của Mole được đánh giá khá tốt trong các hệ thống Agent. Mole tuân
theo mô hình bảo mật sandbox của Java. Agent trong hệ thống Mole được chia làm hai
loại: User Agent và System Agent. User Agent là những Agent di động được kích hoạt
bởi người dùng và không thể truy cập trực tiếp tài nguyên hệ thống. Ngược lại, System
Agent (Service Agent) - được khởi động bởi người quản trị - không có tính di động và
được phép truy cập tài nguyên hệ thống .
Môi trường Mole phù hợp cho phát triển những ứng dụng trong các lĩnh vực:
Truyền thông, ứng dụng thuộc lĩnh vực hệ thống thông tin điện tử. Một số ứng dụng
được phát triển trên môi trường Mole: AIDA - Infrastructure for Mobile Agent, ASAP,
ATOMAS, FESTIVAL (Mole office, Mole shopping), HAWK.
Với hệ thống mã nguồn mở của Mole, ta có thể tiến hành cải tiến, nâng cấp những
chức năng hiện có, và bổ sung những chức năng mới như các chức năng về công cụ hỗ
Trang 19
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
trợ lập trình Agent để Mole trở thành hệ thống Agent hiện đại hỗ trợ tốt cho việc phát
triển các ứng dụng dựa theo mô hình Agent.
1.6.4. ZEUS
Zeus là môi trường do British Telecommunication phát triển để hỗ trợ xây dựng
các hệ thống đa Agent. Ngoài các tính năng thông thường trong việc tạo lập và quản lý
các Agent, Zeus đặc biệt chú trọng việc hỗ trợ một phương pháp luận và một bộ công cụ
mạnh để phát triển ứng dụng đa Agent trên môi trường phân tán. Zeus là môi trường do
Zeus cung cấp những Agent tiện ích như Agent Name Server hoạt động như một Yellow
Page, Facilitator như một White Page, Visualiser và Database Proxy.
Một hạn chế của Zeus là tuy được liệt kê vào một trong những môi trường Mobile
Agent nhưng hiện hướng nghiên cứu về tính di động của Zeus chỉ mới ở bước đầu, chưa
được cài đặt. Do đó mà tính bảo mật của Zeus cho các Agent hầu như không có. Điều
này có thể sẽ được khắc phục trong các phiên bản sau.
Zeus đã và đang được triển khai trong một số ứng dụng như Agent Based Work-
flow Management, PTA: Personal Travel Assistance, Personal Computer Manufacture,
Agent-based Electronic Commerce, Network Management, Home Shopping.
1.6.5. So sánh các hệ thống Aglet, Mole, Voyager và Zeus
Trang 21
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
1.7. Vấn đề khó khăn và thách thức
Về mặt lý thuyết, mô hình Mobile Agent có những ưu điểm rất hứa hẹn cho việc
phát triển một thế hệ các ứng dụng phân tán mới. Tuy nhiên, những nghiên cứu trong
lĩnh vực Mobile Agent đa số tập trung phát triển các hệ thống Agent hỗ trợ khả năng di
động và những vấn đề của các môi trường này như tính an toàn, cơ chế tự di chuyển của
Agent, cơ chế giao tiếp giữa các Agent…Việc vận dụng mô hình Mobile Agent vào các
ứng dụng thực tế gần như vẫn dừng lại ở mức thử nghiệm mà chưa có được những sản
phẩm thương mại hoàn chỉnh. Nhìn chung, mô hình Mobile Agent vẫn chưa trở thành
một kỹ thuật được chấp nhận rộng rãi trong thực tế.
Những nguyên nhân dẫn đến tình trạng triển khai chậm chạp kỹ thuật mới này
bao gồm cả về khía cạnh kỹ thuật lẫn xã hội:
Các vấn đề kỹ thuật: Thực hiện cơ chế di động, bảo đảm an toàn, nâng cao tốc
độ thi hành, và chuẩn hoá công nghệ là những khó khăn đồng thời là các thách thức chủ
yếu của mô hình Mobile Agent:
- Thực hiện tính năng di động: Một số hệ thống về nguyên tắc hỗ trợ tính di động
của Agent, nhưng trong thực tế hoặc chưa hỗ trợ, hoặc chỉ hỗ trợ tính di động yếu
(weak-mobility) với những cơ chế chuyển dời Agent chưa được tốt. Để hỗ trợ tính di
Trang 22
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Agent. Trong nhiều trường hợp, Mobile Agent cung cấp một cách tiếp cận hiệu quả hơn
cho vấn đề, nhưng cũng có những trường hợp các kỹ thuật truyền thống tỏ ra hữu hiệu
hơn. Do sự thiếu vắng một lọai ứng dụng đặc trưng cho Mobile Agent nên mô hình chưa
đủ thuyết phục đối với người dùng.
- E ngại mất an toàn: Việc chấp nhận cho một Agent ở nơi khác đến khai thác tài
nguyên ở máy mình làm cho người dùng cảm thấy các mối đe dọa bị tấn công tăng lên
trong khi đó các lợi ích do Agent mang đến lại chưa rõ ràng. Ngoài ra, việc giao dịch
thông qua mạng lưới Agent sẽ làm mất tác dụng quảng cáo cho hình ảnh của các công ty
vì mất cơ hội tương tác trực tiếp với khách hàng.
KẾT LUẬN
Trong chương này chúng tôi đã giới thiệu về mô hình Mobile Agent- một mô hình
mới cho phép xây dựng nhiều ứng dụng phân tán hiệu quả hơn những kỹ thuật cũ. Tuy
còn những khó khăn trong việc triển khai Mobile Agent vào thực tế, nhưng Mobile
Agent có nhiều tiềm năng trong một số loại ứng dụng phù hợp, và nên là một công cụ
cần có khi xây dựng các ứng dụng phân tán quy mô lớn.
Trong vòng năm năm gần đây đã có một số hướng nghiên cứu rất hứa hẹn được
tiến hành trong lĩnh vực Mobile Agent, nhưng kết quả chỉ mới dừng ở mức có thể vận
dụng Mobile Agent vào một số ứng dụng với các điều kiện giảm nhẹ về môi trường thi
hành. Do đó việc nghiên cứu để giải quyết những vấn đề tồn đọng của mô hình vẫn là
những thách thức cần được đầu tư nghiêm túc.
Trong chương tiếp theo chúng tôi sẽ đề cập đến vấn đề bảo mật trên Mobile
Agent. Một trong những vấn đề quan trọng cần phải giải quyết để có thể đưa mô hình
Mobile Agent vào những ứng dụng thực tiễn.
Trang 24
GVHD: Thầy Lê Quốc Tuấn SVTH: Nguyễn Tuấn Tài – Hà Thị Bạch Yến
Chương 2: BẢO MẬT TRÊN MOBILE AGENT
(MOBILE AGENT SECURITY)
TÓM TẮT
Kỹ thuật Mobile Agent cung cấp một mô hình xử lý mới mà có thể tạm ngưng