• 沒有找到結果。

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

8

以往許多技術都是為了已開發國家而研究、發展,然而,這些技術可能無法使用 在開發中國家或偏遠地區,因為這些地區的基礎建設可能並不完善,甚至該地的人們 可能也沒有一定程度的知識水平,在這樣的應用環境下,成本、部署 (deployment)、

功耗等問題就需要被考慮,例如︰美國柏克萊大學所研究的 Tier Project[12],主要的 研究目標就是要解決這些開發中國家或偏遠地區的網路通信問題。

5.

戰區、災區的通訊網路

以往 Mobile Ad Hoc Network (MANET) 的研究應用,常被設定在無建置基礎建設 (infrastructure),或基礎建設已遭受損壞的戰區、災區環境中,然而,在這樣的環境中,

由移動式節點所組成的許多互不相連的網路區塊,可能會因為移動式節點的移動性與 無線傳輸範圍的限制,而造成不同的網路區塊之間無法互相通訊的情況,此時,若能 利用節點的移動性,以及機會網路最重要的傳輸機制—store-carry-forward 訊息交換機 制,就能適用於戰區、災區環境[13,14 ]。

1.3 行動代理人

所謂的行動代理人 (mobile agent) 可以視為一支可在異質系統之間移動、執行,並具 有特定功能的小型程式。當原本的節點 (home node) 送出行動代理人時,代理人就像 使用者的分身一樣,從原本的節點中分離出來,自主地決定要訪問的節點,無須和 home node 持續保持連絡,它將代表使用者在網路中的節點進行多次跳躍 (multiple hops) 移 動與執行任務,最後將使用者所交待的任務結果回傳到 home node。

行動代理人其實也是代理人技術 (agent technology) 的一種。其基本原理就是當 行動代理人 (mobile agent) 接收到終端使用者的請求命令時,便即時地處理使用者所 交付的任務,並依實際的情況,可從網路一端的主機移動至其他另一端的主機去處理,

最後再將結果回傳給使用者。實際上,在網路上移動的行動代理人,其狀態不僅包含 本身的程式碼和任務處理資料,還包括了 thread 的狀態及其擁有者的權限。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

9

另外,在終端間移動中的行動代理人,具備了自主性與機動性,即使是在無法和 使用者相互通信的環境中,也能將移動前的程式憑藉自己本身的知識,或所收集到的 情報,自主地加以分析判斷,並繼續執行處理。

1.3.1 行動代理人的特點

代理人通常扮演一個使用者或另一個代理人的角色,並負責和其他代理人之間的溝通 (communication) 與合作 (collaboration/cooperation)。以下為「行動代理人」所必備的 特質[15]︰

 自適應性 (Adaptivity)︰代理人具備學習能力並能隨經驗增長

 自主性 (Autonomy)︰代理人必須具有主動性,在朝達成目標的方向下,有自 主能力採取啟發性之行為

 協作行為 (Collaborative behavior)︰代理人具備可以與其它代理人合作並一 起達成目標之能力與行為

 推論能力 (Inferential capability)︰代理人具備有針對抽象定義之目標採取行 動之能力,換句話說就是具備推論能力

 知識水平的通訊能力 (Knowledge-level communication ability)︰代理人在與 其它代理人溝通時,具備使用人性化語言與溝通方式之能力

 個性化 (Personality)︰代理人可以具有個性化之特質,即具有可以扮演出逼 真行為之能力

 反應性 (Reactivity)︰代理人具備選擇性感測與反應之能力

 持續性 (Temporal continuity)︰代理人具備保持身份扮演一致性之特質,並能 夠長時間的維持

 移動性 (Mobility):代理人具備機動引導之能力,可以從一個主機移至另一 個。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

10

1.3.2 行動代理人的優點

使用行動代理人技術的好處,包括克服客戶端計算機能力的限制、客制化、與生俱來 的存活能力、作為離線用戶的代表,和易於擴展。以下將逐一說明[16]。

 克 服 客 戶 端 計 算 機 能 力 的 限 制 (Overcoming the limitations of a client computer)︰舉例來說,先把代理人送到遠端主機的資料庫,並根據自定義的 演算法進行搜尋後,再將資料回傳客戶端,比直接存取遠端資料庫更有效率,

並能克服客戶端本身的通訊延遲、總處理能力、儲存容量大小、計算能力等 限制,此外,客戶端也可能沒有足夠的儲存空間來暫存大量資料,或者可能 沒有足夠的網路頻寬和計算能力。

 客制化 (customization)︰在 client/server 架構中,是很難適應快速變化的,相 反的,行動代理人則可以很容易地依照使用者需求客制化,再將此新的需求 送 到 伺 服 器 端 執 行 。 其 中 , 伺 服 器 端 的 代 理 人 系 統 代 表 一 種 解 譯 器 (interpreter),負責接受並執行收到的代理人。

 與生俱來的存活能力 (inherent survivability)︰因為行動代理人能攜帶著本身 的程式碼和狀態移動,故相較於 client/server 架構有更高的存活率,當一個節 點或網路的一部分發生問題時,行動代理人可以離開這個節點,到其他地方 再繼續執行原有的任務,雖然有其他方式可以提高 client/server 架構的執行效 率,但仍無法適用於大規模的系統架構中,反之,行動代理人原本就是被設 計用於 Web 上。

 作為離線用戶的代表 (representation of a disconnected user)︰現今很多使用者 都具有移動性,時常在辦公室開始一個工作,而後在另一個地方利用筆記型 電腦來繼續之前的工作,並希望在使用者離線的期間仍能繼續執行工作,故 可利用送出行動代理人,讓使用者離線後,仍由代理人繼續處理原來的工作,

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

11

而後,當使用者再度上線時,再將代理人拉回。

 易於擴展 (ease of development)︰當大量的資料被儲存在分散的伺服器中,遠 端存取所需的資料並非一個可行的選擇,甚至基於安全因素,本地資料可能 不提供遠端存取,因此,可利用管線技術 (pipelining) 讓不同類型的代理人 先後拜訪這些伺服器,並執行必要的動作。

1.3.3 行動代理人的應用

行動代理人在接收使用者的任務後,可以提供資訊處理之服務,包含資料的收集、檢 索、過濾、交換等功能,在[17]中已提出幾個原因來說明行動代理人在許多應用中,

是一個有效率的選擇,其優點有改善 client/server 架構中的頻寬限制、網路延遲,以及 減少網路負載、網路斷線的弱點等。以下就現存的行動代理人的應用逐一說明 [17-19 ]。

1. 電子商務 (Electronic commerce)︰使用者可告知行動代理人欲購買的商品名 稱、價格、品牌等資訊,並委託其在虛擬商店中,代使用者做搜尋、過濾、

下訂單等動作。

2. 軟體發行 (Software distribution)︰

當機器的數量不斷地增加,在其上安裝和維護軟體變得更困難,可利用 行動代理人依照軟體包的軟件清單,並檢查本機安裝版本,來自定義安裝,

以自動完成此動作。

3. 資訊檢索 (Information retrieval)︰

使用者僅需輸入欲獲取資料的關鍵字,便可藉由行動代理人的移動,來 檢索分散在網路上各主機中資料庫的資料,行動代理人便會在目的端主機資 料庫,過濾出所需的資料,並依照檢索結果來選擇移到其他主機繼續處理,

或回傳結果給使用者。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

12

4. 系統管理 (System administration)︰

行動代理人可以獨立地在大型系統中移動,並執行定期性的管理,例如︰

備份或其他系統相關的操作,並可在問題發生時,於人為操作的干預前做初 步的問題評估,以幫助系統管理員釐清問題發生的原因及後果,此外,也可 用於自動執行常規任務,及定期檢查系統和網路。

5. 網路管理 (Network management)︰

網路本質上是分散式的,且提供一個適合部署代理人的環境,例如︰在 主動式網路 (Active Network) 中,可透過行動代理人來移動、傳送通信協定 的處理程式,並安裝在原本沒有此通信協定的主機上,使其主機得以運作,

即無須事先在各主機上做各通信協定標準化的動作。

6. 網路安全 (Network security)︰

將非公開機密化的資訊安置於行動代理人,而後予以加密,並隨著行動 代理人在網路中移動,可免於在傳送中遭受竊取、竄改的顧慮,特別是能將 解密程式也置於代理人中,因此,在目的地端主機無須事先準備解密程式,

則我們可以採用各種雙方已協調好的任意加密形式來作加密動作。

近年來,行動通信和無線網路技術的大幅躍進,使得行動代理人的利用不僅限於 遠端資料查詢,還包括了分散式即時系統 (Real Time System) 和工作流程系統 (workflow system) 等環境,促成了其應用的多樣化。