電腦網路與連結技術第十七章 Token-Bus 與 Token Ring 網路 上一頁    下一頁

17-8 Token-Ring 優先權管理

 

一般 Token-Ring 網路大多是被用在『即時系統』(Real-time System的環境裡,主要原因是 Token-Ring 網路具有良好的優先權管理功能。換句話說,在具有優先權的網路系統之下,傳輸媒介的使用權是按照各工作站的訊框優先次序排序,擁有較高優先權訊框的工作站優先取得使用的權利。但各工作站之間誰也不知道他人所欲傳送訊框的優先等級。因此,必須有一個優先權管理程序來負責協調處理。

我們用圖 17-14 來說明即時性網路的運作情形。假設網路上各個工作站都是屬於即時系統(Real-time System),對每一個程式(Process)都附有優先等級。在 LLC 的各個服務存取點(SAP)連結其相對應的程式,應該選擇哪一個服務存取點來使用,邏輯鏈路就依照優先等級排序(Scheduling)。LLC LLC-PDU 的優先權分為 8 個等級,等級 7 為最高優先權,等級 0 為最低。最高優先權的 LLC-PDU 優先取得 MAC 的使用權。

如圖 17-14 中,工作站 A 的最高優先權訊框是 a17)、工作站 B b14)、工作站 C c16)、而工作站 D d14),因此在網路上有優先權分別是 7a1)、4b1)、6c1)、4d1)的四個訊框準備要傳送,如果該網路為即時性網路的話,應該是 a1 優先取得網路使用權,這就是優先權管理原則。

17-14 即時性網路系統範例

在沒有優先權考量的網路上,任何取得 Free Token的工作站便有傳送資料的權利。但在有優先權的網路環境下,取得自由符記後必須判斷所欲傳送資料的優先等級是否高於其他工作站所欲傳送的,如果自己的資料是網路上所有預備傳送資料之中具最高優先權者,便可立即傳送,否則必須讓給別人。為了做好優先權的處理,不論在Free Token Busy Token (即資料訊框)上都有兩個欄位 PPP RRR(存取控制欄位,AC),PPP 表示該訊框(符記或資料)的優先等級,RRR 是預約優先等級,主要是讓工作站預約有哪一等級的資料準備傳送。一個 Free Token 在網路上繞行,當它經過每一個工作站時,工作站比較該 Free Token 的優先等級,如果是等於或小於欲傳送資料的等級,這時該工作站就將 Free Token更改為 Busy Token,也立即將資料送出。當 Busy Token 在網路上繞行,經過任何一個工作站時,工作站會比較該訊框的 RRR 預約等級,如果預約等級小於本身欲傳送資料的等級,便將其更改為本身資料的等級(完成預約動作)。當 Free Token 在繞行時,其所經工作站的優先權如果小於符記上的,雖然不可以取用 Token,但也可完成預約的動作(登錄在 RRR 上)。

當傳送資料者收回 Busy Token 時,該訊框已在網路上環繞一圈,在訊框內的 RRR 欄位上所登錄的一定是目前其他工作站所欲傳送資料的最高優先權,此時該工作站必須將原來的優先權(PPP 的紀錄)儲存下來,且更改符記優先權為預約優先權(RRR PPP),再將 Busy Token 改為 Free Token 並送出。Token 的優先權不可以一再的上升,否則優先等級較低的資料就沒有機會傳送,因此,每一個有修改過符記優先等級的工作站,必須記錄原來符記的等級(舊的)和修改後的優先等級(新的)。當一個自由符記經過時,如果符記上的等級和紀錄中『新的』等級相同,即表示那一個等級是自己修改的,必須用紀錄上『舊的』等級將其修改回來。也就是說,符記的優先權是誰修改的,誰就必須負責將其還原。

我們用圖 17-15 為例子來說明優先權的處理程序。假設網路上有 ABCD 四個工作站。每一工作站上都有兩個紀錄,New 表示該工作站修改符記優先權時新設定的值,Old 表示修改前符記的優先等級。圖中 "T" 表示自由符記;"F" 表示忙碌符記(資料訊框)。矩形圖形表示傳送的訊框,前者為符記優先等級(PPP);後者為預約等級(RRR),表示如下:

其運作過程如下:

(1) 假設由 A 開始, A 傳送資料訊框,該訊框的優先權為 4,預約等級為 0。經過 B 時,B 上有一個等級為 5 的資料預備傳送,因此在訊框上預約登錄 5。經過 D 時,D 上有個資料等級為 6,在比較訊框上的預約登錄後發現比自己的小,便將訊框上的預約登錄為自己的(6)。訊框回到 A,由 A 收回。

(2) A 將資料訊框改為符記,將符記的優先權設定為預約等級的值,並將符記傳出。符記經過 B 時,B 比較符記優先權比自己的高,不可取用符記,只好再預約登錄。D 發現符記優先權和自己的相同,就將符記改為資料訊框並傳送資料。

(3) 資料訊框經過 C 時,被 C 預約登錄為 7D 收回資料訊框。

(4) D 將資料訊框改為符記,設定符記優先權為預約登錄的紀錄(7),記錄下變更的值(原優先權 = 6、新優先權 = 7),並將符記送出。B 再預約 5C 取得符記並傳送資料。

(5) C 收回資料訊框並將其改為符記送出。符記到達 D 時,D 發現符記的優先權和自己紀錄上的新優先權(7)相同,便知道這是自己修改的,就用紀錄上的舊優先權(6)替代符記的優先權。

(6) 符記到達 A 時,A 也比較發現符記上優先權是自己修改的。本來必須將符記優先權設為舊優先權(4),但發現預約優先等級(5)高於符記本身,便將其優先權設定為預約等級(5)。符記到達 BB 取得符記並傳送出資料訊框。

17-15 Token-Ring 優先權處理程序範例

17-15(續)Token-Ring 優先權處理程序範例

翻轉工作室:粘添壽

 

電腦網路與連結技術:

 

 

翻轉電子書系列: