• 沒有找到結果。

高可靠度行動計算系統(II)

N/A
N/A
Protected

Academic year: 2021

Share "高可靠度行動計算系統(II)"

Copied!
7
0
0

加載中.... (立即查看全文)

全文

(1)

一、中文摘要(關鍵詞: 行動計算,固 定處理機,行動處理機,無線通訊網路, 容錯問題。) 行動計算 (Mobile Computing) 是 目前一個熱門研究領域。它是由一群 固定處理機 (fixed hosts) 和行動處理 機 (mobile hosts) 所形成的一個分散 式處理系統。在這種系統架構下,固 定處理機 (fixed hosts) 彼此間是由一個 靜態網路 (static network) 連接起來。 而行動處理機和其它行動處理機間之 通訊必需經由固定處理機。一個固定 處理機連接多個行動處理機,形成一 個無線通訊網路 (wireless network)。 行動計算系統主要的特性是: 使用者 可在任何地點、任何時間存取所需資 訊。 先前已有許多文獻在探討分散式系 統容錯問題 (fault-tolerant problem),在 他們所提出的容錯方法,並未對錯誤如 何被偵測加以說明,也不適用於行動區 網路系統。 行動區網路系統具有下列三項特性: ( 一 ) 行 動 處 理 機 具 有 隨 意 行 動 的 特 性。 (二) 行動處理機的電能是由一個電池 組 (battery pack) 供應,電池組 所能供應的電能時間有一定的限 度。 (三) 行動處理機和固定處理機間無線 網路頻寬,與一般有線網路頻寬比較起 來,有一大段差距。無線通訊也極易受 到干擾。 本整合型計畫之最終目標是在研發一 個行動區域網際網路,並在這種系統架 構之下,提供立即反應資訊服務。但隨 系統裏處理機數目以及在此系統上應用 程式執行時間的增加,這時行動計算系 統裏會發生錯誤 (failures) 的機率也隨 之提高。這裏所指錯誤包括固定處理機 和 行 動 處 理 機 內 部 錯 誤 (processor failures),以及行動處理機和固定處理 機 間 無 線 通 訊 網 路 裏 通 訊 錯 誤 (communication failures)。錯誤發生後, 系統裏所執行的程式必需重新開始執 行。故一旦錯誤發生,系統無法對使用 者需求 (requests) 立即回應。這種情況 違反本整合型計畫目標。在第一年計 畫,我們將一個用於分散式系統的容錯 方法log-based rollback recovery加以修 改後,設計出一個適用於行動資訊系統 的容錯方法。這個容錯方法能容忍固定 處理機和行動處理機的內部錯誤,也考 慮到行動處理機的行動性 (mobility)、 電能消耗量 (energy consumption)、無線 鏈結低頻寬 (low bandwidth of wireless links)。在第二年計畫,我們發展一個新 的錯誤偵測方法,它能偵測出較多錯 誤,並區分錯誤是發生在通訊線路或是 處理機、和降低因錯誤偵測對系統所引 起overhead。我們也利用replication方法 重建因處理機發生錯誤所造成位址資訊 遺失並且探討如何改進行動處理機之間 無線通訊品質。

行政院國家科學委員會專題研究計畫成果報告

高可靠度行動計算系統

(II)

Highly Reliable Mobile Computing Systems

(II)

計畫編號: NSC88-2213-E-002-040

執行期限:民國87年8月1日到88年7月31日

(2)

英 文 摘 要 (Keywords : Mobile computing, fixed nodes, mobile nodes, wireless network, fault-tolerant problem.)

Mobile computing is a hot research area in recent years. It consists of a set of fixed hosts and mobile hosts to form a distributed processing system. In this system architecture, the fixed hosts are connected to each other by a static network. A mobile host communicates with other nodes in the system through a fixed host. The communication between the mobile host and the fixed host is via a wireless network. The main characteristic of the mobile computing system is as follows: The mobile computing system can provide users to access information at anywhere and anytime.

A large body of literature concerning the fault tolerance problem exists, but most of them deal with distributed systems rather mobile computing systems. The fault-tolerant approaches for distributed systems can not be directly applied to solve the fault-tolerant problem in mobile computing systems. The reasons are as follows.

(1) In mobile computing systems, the location of a mobile host changes with time.

(2) A mobile host is usually powered by a stand alone energy source, like a battery pace, that has to be replenished after a certain period of time.

(3) Wireless communication is lower bandwidth and higher error rate than wired communication

The goal of this integrated project is to design a responsive information service system for mobile environment. However, as the number of hosts in the system and running time of distributed applications increase, the probability of one or more failures also increase. Here, the failures

can occur in the fixed nodes and mobile hosts, or on the wireless links between the mobile host and the fixed host. The failures in the mobile computing system will result in the system to restart from beginning. Therefore, if an error occurs, the system can not respond the user request with a predetermined interval. This behavior contradicts the goal of our integrated project. In the first year, we utilized the log-based approach to implement a mobile information system with the capability for tolerating fixed hosts and mobile hosts' failures. In the second year, we proposed a new error detection method to detect more errors and identify the sources of errors correctly. In addition, we used the replication technique to reconstruct the lost location information, and used the dynamic channel allocation technique to improve the quality of wireless communication.

二、計畫緣由與目的 無線網路技術進步,造成傳統計 算 (computing) 變化,進一步引發出 一種新的計算形式:行動計算 (mobile computing) 。行動計算系統可使使用 者在任意時間可在任何地點存取所需 資訊 (required information) 。例如:假 設 醫 院 裏 已 架 設 好 一 個 行 動 計 算 系 統,當醫生或護士到病房巡房,如需 存取病人的病歷資料,便可利用一台 可攜式電腦 (portable computer) 透過 行動計算系統網路存取到所需資料, 而不需到檔案室拿取資料或在病房某 處事先佈置好通訊線路。 行動計算系統結構如圖一所示。 它是由一群固定處理機 (fixed hosts) 和行動處理機 (mobile hosts) 透過通 訊 網 路 (communication network) 連 接起來,形成一個分散式計算系統。 這種系統架構下,固定處理機 (fixed hosts) 彼此間是由一個有線網路 (wired network) 連接起來。如果一個固定處

(3)

理機有連接多個行動處理機,這個固 定 處 理 機 也 被 稱 為 行 動 供 應 站 (mobile support station)。一個行動供 應站與它所連接的行動處理機之間通 訊方式是用無線 (wireless) 的方式。 當一個行動性處理機 mh1 要送訊息給 另一個行動處理機 mh2,它們之間通 訊方式如下。mh1 首先傳送訊息到它 所屬的行動供應站,這個行動供應站 尋找行動處理機 mh2 所屬行動供應 站,然後轉送訊息到 mh2 所屬行動供 應站。最後,mh2 所屬行動供應站再 將訊息傳送給 mh2。 本整合型計畫,最終目標是在行 動計算系統架構下,設計出一個立即 回應資訊系統。但隨著系統裏處理機 數目以及程式執行時間的增加,這時 行動計算系統裏會發生錯誤 (failures) 的機率也隨之提高。這裏所指錯誤包 括: 固定性處理機和行動性處理機內 部錯誤 (processor failures)。此外,無 線通訊訊號極易受週圍環境影響,而 遭受干擾。錯誤發生後,系統裏執行 程式必需從新開始執行。故一旦錯誤 發 生 , 系 統 無 法 對 使 用 者 需 求 (requests) 立即回應。這種情況違反本 整合型計畫目標。本子計畫目的,在 行動計算系統架構下,當有錯誤發生 在本整合型計畫設計的行動資訊系統 時,系統仍能在短時間內,對使用者 需求立即回應。 在 第 一 年 計 畫 , 我 們 利 用 independent checkpointing 以及 logging 這兩種技術來設計一個能容忍固定處 理機和行動處理機內部錯誤的行動資 訊系統。在本計畫裏,主要是利用第 一年所得到一些研究成果,繼續研究 在行動資訊系統尚未解決的容錯問題 (錯誤偵測和位址資訊遺失)及通訊品 質問題。接下來,我們將本計畫工作 項目之背景、目的、重要性以及國內 外有關之研究,詳述如下: Wired Network MSS mh mh mh MSS mh mh MSS mh mh MSS mh mh MSS wireless cell wireless cell

wireless cell wireless cell

mh: mobile host MSS: mobile support station

圖一、行動計算系統架構。 (一) 錯誤偵測: 傳統上對於錯誤偵測大都採用 redundancy 方法。所謂 redundancy 方法,在原本系統中,對於所要偵 測元件,在這元件裏增加一些額外 資 訊 (information) 、 資 源 (resources) 、 執 行 時 間 (run time) 。 根據所加進項目。redundancy 方法 可 細 分 成 下 列 四 種 : Hardware redundancy, Software redundancy, Information redundancy 及 Time redundancy。截至目前為止,大多 數錯誤偵測文獻,都是利用上述四 種 redundancy 方法,選取一種或混 合應用發展出他們各自錯誤偵測方 法。 (二) 改進 checkpointing 時對系統所引 起的 overhead Checkpointing 是一種"backward error recovery"方式。系統定期將系 統執行狀態儲存到 stable storage, 每次所儲存起來系統狀態稱為一個 checkpoint。 將來一但系統發生錯 誤,系統便可從 stable storage ,將 先 前 所 儲 存 某 一 checkpoint , 從 stable storage 重載回系統,系統從

(4)

那載回狀態開始執行。 在 分 散 式 系 統 做 checkpointing, 要比 在單 一處 理 單 元系統做 checkpointing 複雜許多。 因 分 散 式 系 統 包 含 多 個 處 理 單 元 (processing nodes), 程 式 在 分 散 式 系統執行時,是先被分成多個小執 行單元(processes),然後再分別分 派到這些處理單元上執行。所以在 分散式系統上做 checkpointing,需 考慮到各個處理單元之間關係。分 散式系統之下,checkpointing 技術 大致可分作兩大類: (1) Synchronous checkpointing (2) Asynchronous checkpointing. (三) 重建遺失位址資訊 在行動計算系統的環境中,要 掌握各個行動處理機的所在位置, 是件相當重要的工作。這件工作我 們 稱 之 為 「 位 址 管 理 」 (location management)。位址管理主要由三個 部分組成:「位址更新」(location update) 、 「 位 址 搜 尋 」 (location search),以及「位址搜尋並更新」 (location search-update) 。 當 某 個 行 動處理機從 wireless cell X 移動到 cell Y,則我們需要作位址更新。若 某處理機 A (可為固定處理機或行 動處理機) 想要傳送訊息到行動處 理機 B,而 A 並不曉得 B 的所在位 置,則需要先執行位址搜尋,找到 了以後才進行連線,然後開始資料 的傳輸。位址搜尋並更新的動作則 發生在位址搜尋執行成功之後,把 行動處理機 B 的所在位置記錄下 來,以便下次恰巧需要尋找行動處 理機 B 時,不必重新進行搜尋。上 述各項動作所處理的資訊,我們稱 之 為 「 位 址 資 訊 」 (location information)。 (四) 改善無線通訊品質 行動主機在網路上自由移動, 常常會從某一個 wireless cell 移動到 另一個 cell 的範圍。行動處理機從 cell X 移動到 cell Y 的過程中,行 動系統資訊需要作一些改變,我們 稱此過程為 handover。我們可以想 見,handover 的設計好壞,會直接 影響到通訊品質。另一方面,由於 網 路 頻 寬 有 限 , 而 使 用 者 數 量 眾 多;如何對有限頻寬作最有效的利 用,成為我們設計的重點。無論是 新使用者要求連線,或是使用者從 隔壁 cell 進入後要求繼續通話,系 統都必須執行的工作就是「指定頻 道」(Channel Assignment)。指定 可用頻道給使用者的方式也有許多 種 , 主 要 可 分 成 三 大 類 : Fixed Channel Assignment 、 Dynamic Channel Assignment,以及 Flexible

本 子 計 畫 將 針 對 第 三 點 及 第 四 點,提出固定處理器發生錯誤時遺失 位址資訊的容錯方式,並且探討並設 計 dynamic channel assignment 的頻道 分配方式,以期達到最好的無線網路 服務品質。 三、研究方法與成果 本子計畫於第二年,完成的成果如 下: (一) 重建遺失位址資訊 在行動計算系統的環境中,要掌握 各個行動處理機的所在位置,是件相 當重要的工作。這件工作我們稱之為 「位址管理」 (location management)。 位址管理主要由三個部分組成:「位 址更新 」(location update)、「位址搜 尋」 (location search),以及「位址搜尋 並更新」 (location search-update)。當某 個行動處理機從 wireless cell X 移動到 cell Y,則我們需要作位址更新。若某 處理機 A (可為固定處理機或行動處理 機) 想要傳送訊息到行動處理機 B,而 A 並不曉得 B 的所在位置,則需要先

(5)

執行位址搜尋,找到了以後才進行連 線,然後開始資料的傳輸。位址搜尋 並更新的動作則發生在位址搜尋執行 成功之後,把行動處理機 B 的所在位 置記錄下來,以便下次恰巧需要尋找 行動 處 理機 B 時,不必重新進行搜 尋。上述各項動作所處理的資訊,我 們 稱 之 為 「 位 址 資 訊 」 (location information)。 行 動 處 理 機 講 求 的 是 行 動 的 便 利 性,機器本身要輕,因此其儲存空間 不大;而且主要是因為行動處理機的 可依賴度不高,所以我們不把位址資 訊存放在行動處理機的儲存設備中。 在固定網路上的主機,它有較大的儲 存 空 間 ; 而 且 因 為 它 是 固 定 在 網 路 上,其可依賴度比起行動主機要高許 多,所以把位址資訊存放在固定處理 機的儲存設備是適當的。但是如果行 動處理機的數量很多,則位址資訊的 量也會相當大;如果每個固定處理機 的儲存設備都存一份這樣的資訊,仍 然將使得資源過度浪費。因此有階層 式 的 位 址 目 錄 (location directory) 產 生,階層架構愈下層的處理機所存放 的位址資訊愈少,而最上層處理機的 則要保有相當大的資料量以供下層詢 問之用。另外,也有人提出完全以分 散式的架構來作為位址資訊的儲存。 在本子計畫中,我們將考慮的是位址 資訊的容錯;也就是,如果位址資訊 因為固定主機壞掉而喪失,則我們需 要有重建位址資訊的能力。

在 [Rangarajan and Ratnam 95] 的 設計中,他們提出了一套各個處理機之 間位址資訊溝通的協定。這套協定的基 本架構是在每個固定處理機都存有所有 的位址資訊,如此可避免向單一位址資 訊伺服器詢問而造成可觀的時間延遲。 若行動處理機A原來在cell X,後來離 開X而進入cell Y,則管理cell Y的固定 處理機需要將A的位址資訊傳送給其他 固定處理機,以使各個位址資料庫都獲 得這個最新資訊。因為網路傳輸偶爾會 有延遲的情形,所以可能會發生有兩個 關於行動處理機A的位址資訊同時傳 遞,可是兩個資訊內容卻不一樣。也就 是說,需要有個機制來區分「新、舊」 資訊。[Rangarajan and Ratnam 95] 在位 址資訊中加入了個時間標記 (location counter, LC),其數值採用絕對遞增的 方式,數值愈大表示是愈新的資料。 LC值將由各個行動處理機攜帶著,比 起由某固定位置提供時間標記數值資料 要方便許多。他們也定義了固定處理機 傳遞位址資訊的方式,証明出最後所有 固定處理機都將獲得最新的位址資訊。 另外,如果在行動處理機上的LC值發 生錯誤,這套協定也可以克服這個問 題。至於固定處理機本身如果發生錯誤 導致位址資訊遺失,則在另一篇參考資 料 [Rangarajan 95] 有提到解決方式。 在行動計算系統中,行動處理機 位址並不固定,行動供應站需記錄它目 前所連接到的行動處理機。但這位址資 訊會隨行動供應站發生錯誤而遺失。如 何重建遺失位址資訊,在已提出行動計 算系統的容錯方法並沒有考慮。在本子 計畫,重建遺失位址方法如下: 每一個行動處理機有一預定行動 供應站,記錄它目前所在位址。當行動 處理機 mh x (假設它預定行動供應站是 MSS d) 從 cell A (一個 cell 是由一個行 動供應站和多個行動處理機所形成無線 網路)移到 cell B,這時除 cell B 的行動 供應站 MSS B 會記錄行動處理機 mh x 的位址。行動供應站 MSS d 也記錄行 動處理機 mh x 的最新位址。如果 cell B 裏行動供應站發生錯誤,它所記錄行動 處理機 mh x 的位址資訊可從行動供應 站MSS d 獲得。萬一行動供應站 MSS d 也發生錯誤,系統會廣播 (broadcast) 發 出一個尋找行動處理機 mh x 位址的訊 息。 (二) 改善無線通訊品質 行動主機在網路上自由移動,常 常會從某一個 wireless cell 移動到另一

(6)

個 cell 的範圍。行動處理機從 cell X 移 動到 cell Y 的過程中,行動系統資訊需 要 作 一 些 改 變 , 我 們 稱 此 過 程 為 handover。我們可以想見,handover 的 設計好壞,會直接影響到通訊品質。 另一方面,由於網路頻寬有限,而使 用者數量眾多;如何對有限頻寬作最 有效的利用,成為我們設計的重點。 如果整個無線網路共用一套無線頻譜 又要各個頻道不互相影響,則我們能 區分出的頻道數目根本不夠供那麼多 使用者同時使用。我們需要將頻譜分 割成許多不互相重疊的頻帶,然後將 這些頻帶分別指定給各個 wireless cell 使用。使用同一套頻帶的 cell 則要相距 夠遠,才不致彼此受到對方的干擾。 由以上的說明我們可以得知,上述的 單一頻帶所能容納的傳輸頻道不會太 多;如果使用者人數一多,則常發生 頻道不足而迫使新使用者暫緩使用的 情形。另外,某使用者在隔壁 cell 連上 了網路,由於他的位置移動的關係, 從隔壁 cell 進入了此一 cell,我們當然 要供給這個使用者一個可用的頻道才 不致因為改變 cell 卻使得連線中斷。強 迫中斷或被迫暫緩使用的情形愈少, 代表了愈高的服務品質。無論是新使 用者要求連線,或是使用者從隔壁 cell 進入後要求繼續通話,系統都必須執 行的工作就是「指定頻道」(Channel Assignment)。指定可用頻道給使用者 的方式也有許多種,主要可分成三大 類 : Fixed Channel Assignment 、 Dynamic Channel Assignment , 以 及 Flexible Channel Assignment。分別簡述 如下:

(1) Fixed Channel Assignment: 每 個 wireless cell 固定分配一套頻帶,如 果不敷使用則向隔壁 cell 借頻道使 用 (borrowing)。依此原理可再細分 成 Basic Fixed、Simple Borrowing、 Hybrid、Borrowing with Ordering 等 四種指定方式。

(2) Dynamic Channel Assignment: 不指

定某 cell 固定使用某個頻帶,而其 使用頻道則由一個中央管理處來作 動 態 分 配 。 可 謂 之 是 call-by-call optimized。

(3) Flexible Channel Assignment: 同時 兼顧 Fixed 及 Dynamic 的特性;某 個 cell 有部分的使用頻道是事先指 定的,而系統則保留一部份的頻道 供中央管理處來作分配之用。這兩 類頻道的分配比例,可由預先分配 (scheduled) 或預測 (predictive) 的方 式來決定。 為了追求更好的無線通訊品質, 我們在無線頻道的分配上將採用「動 態 頻 道 分 配 」 (Dynamic Channel Allocation)。這種作法,需要有個中央 分配單位來負責頻道的分配;我們稱 這個中央分配單位叫作「行動交換中 心」(Mobile Switching Center, MSC)。 行動交換中心的設計將是重點,它需 要訂出一套適當的 cost function,以 cost function 的最小化為目標。其中的 重點項目包含有: (1) 選定適用頻道的演算法:因為相同 的頻道重覆使用最短距離有個最小 範圍(channel reuse distance),所以 在選定頻道時需要考慮這點,盡量 使得 total channel reuse distance 為 最 小 ; 也 就 是 使 得 blocking probability 降至最低。 (2) 盡量使得使用者在作連線請求時, 指 定 頻道 所 花費 的 時 間 延 遲為 最 小。 (3) 盡可能減輕行動交換中心的工作負 荷。我們可以設計一套分散式的行 動交換中心,把負擔分散到各個行 動交換中心。但此時我們也面臨到 分配效率的問題,以及分配中心彼 此的溝通協調的問題 – 避免頻道相 衝導致互相干擾。 四、結論與討論 在本子計畫中,我們在行動計算系 統架構下,設計出一個有效率容錯方

(7)

法。當有錯誤發生在本整合型計畫設計 的行動資訊系統時。系統仍能在短時間 內,對使用者需求立即回應。此外,我 們也提出新的錯誤偵測方法,這方法能 偵測出較多錯誤、區分錯誤是發生在通 訊線路或處理機。 藉由本子計畫的執行,我們於計畫 執行上都獲得了許多寶貴的經驗。這些 經驗包括行動處理理系統的硬體架構、 系統軟體、及研究上分析與比較方法。 同時也謝謝國科會給予我們執行此計畫 的機會。 五、參考文獻

[1] N. H. Vaidya and S. Hameed, "Data Broadcast in Asymmetric Wireless Environments," First International Workshop on Satellite-based Information Services (WOSBIS),

[2] D. K. Pradhan, P. Krishna, and N. H. Vaidya, "Recovery in Mobile Environments: Design and Trade-Off Analysis, "Proc. 23rd Int'l. Symp. on Fault-Tolerant Comput., June, 1996.

[3] P. Krishna, N. H. Vaidya, and D. K. Pradhan, "Location Management in Distributed Mobile Environment," Proc. 3th Int'l. Conf. on Parallel and Distributed Information Systems, Sept., 1994.

[4] P. Krishna, N. H. Vaidya, and D. K. Pradhan, "Recovery in Multicomputers with Finite Error Detection Latency, " Proc. 23th Int'l. Symp. on Fault-Tolerant Computing, June 1994.

[5] A. Acharya, B. R. Badrinath, and T. Imielinski, "Checkpointing Distributed Applications on Mobile Computers, " Technical Report, Department of Computer Science, Rutgers, University, 1994

[6] B. R. Badrinath, A. Acharya, and T. Imielinski, "Structuring Distributed Algorithms for Mobile Hosts," Proc. 14th Int'l. Conf. on Distributed Computing Systems, June 1994.

[7] P. Bhagwat and C. E. Perkins, "A Mobile Networking System Based on Internet Protocol(IP)," Proc. of the USENIX Symp. on Mobile and Location-Independent Computing, pp. 69-82, Aug., 1993.

[8] G. H. Forman and J. Zahorjan, “The Challenges of Mobile Computing,”

IEEE Computer, 27(4):38-47, April

參考文獻

相關文件

• helps teachers collect learning evidence to provide timely feedback & refine teaching strategies.. AaL • engages students in reflecting on & monitoring their progress

Robinson Crusoe is an Englishman from the 1) t_______ of York in the seventeenth century, the youngest son of a merchant of German origin. This trip is financially successful,

fostering independent application of reading strategies Strategy 7: Provide opportunities for students to track, reflect on, and share their learning progress (destination). •

Strategy 3: Offer descriptive feedback during the learning process (enabling strategy). Where the

How does drama help to develop English language skills.. In Forms 2-6, students develop their self-expression by participating in a wide range of activities

Monopolies in synchronous distributed systems (Peleg 1998; Peleg

Corollary 13.3. For, if C is simple and lies in D, the function f is analytic at each point interior to and on C; so we apply the Cauchy-Goursat theorem directly. On the other hand,

Corollary 13.3. For, if C is simple and lies in D, the function f is analytic at each point interior to and on C; so we apply the Cauchy-Goursat theorem directly. On the other hand,