Download presentation
Presentation is loading. Please wait.
1
QoS-Aware Packet Scheduling by Looking Ahead Approach 有助於提高服務品質的前瞻式封包排程機制 政治大學資訊科學所 指導教授:連耀南 學生:溫永全 2007.12.27
2
Outline2 Introduction Related Work Our Approach Performance Evaluation Conclusion
3
Introduction3 現今封包網路中, router 對於封包是以 FIFO 的方式處理,並未針對封包的時效性 做適當的處理,對於遲到的封包而言,在目 的地端幾乎已經沒有補救機會 如果能在傳遞過程中依封包的時效性及重要 性做適度的 rescheduling ,讓過遲的封包 提前送出,而將有時間餘裕的封包稍緩送出, 如此截長補短,可提高網路效能及整體 QoS 滿意度
4
Introduction4 3GPP UMTS QoS 分類架構 即時性的應用服務,像是 VoIP 以及 VoD ,對於封包 的 delay time 以及 jitter 具有嚴格的要求 不同 class 有不同的服務品質要求 Delay Sensitivity Jitter Sensitivity Packet Loss Sensitivity EX. ConversationalHigh LowVoIP StreamingMediumHighLowVoD InteractiveMediumLowHighTelnet BackgroundLowNoHighE-Mail
5
Introduction5 如何知道封包早到或遲到 在 ALL-IP Network 上,所有應用皆在同一 個封包交換網路上傳送 網路服務品質管理 QoS 管理架構 ( 例如: IntServ 及 Budget Based QoS) 封包均循有資源管理的指定路徑傳遞 可預定封包到達每一個 hop (router) 的時間及其 送出時間 當封包到達每個 router ,可以知道該封包早 到或遲到
6
Introduction6 router 架構 packet forwarding 會依照封包所要傳送的目的地, 選取適當的 output queue 將封包插入 我們的排程方法將對個別的 output queue 中的封 包進行排程
7
Introduction7 排程環境 我們的研究假設在兩種排程環境下進行 獨立排程 (Intra-Router Scheduling) 每個 router 根據自身所知的資訊而不參考其他 router 的狀態逕自進行排程 前瞻式排程 (Looking Ahead Scheduling) router 會參考封包在後續路程上各 router 的狀態進行排 程
8
Introduction8 Our Motivation per-hop QoS 排程是在每個 hop 內各自進行,如 要達到最佳排程,各個 router 之間必須互相分享資 訊 我們延續 A New Jitter Control Mechanism by Per- Hop Packet Scheduling Approach 該研究中每個 router 各自做排程的決定 參考封包在後續路程上各 router 的狀態進行排程, 進而改善為前瞻式排程 (example) 另外針對該研究中的 multiple queue 排程演算法, 我們也提出改善的方法
9
Outline9 Introduction Related Work Our Approach Performance Evaluation Conclusion
10
Related Work10 Related Work 文獻一 A New Jitter Control Mechanism by Per-Hop Packet Scheduling Approach ( 後文簡稱 NJCM) 利用 profit function 的方式表達進入一個 router 的封包 的時效性及重要性 當封包進入 router 時,可以得知此封包的服務等級及預 定送出時間 該研究提出與封包傳遞時間相關的四種 profit function , router 將視情況賦予該封包一個 profit function , scheduler 根據封包的時間參數及 profit function 得到 一個 profit ,再以該 profit 決定送出順序
11
Related Work11 Four profit function (Slope-Down) (Slope-Step)(Double-Slope) (Step-Down) hard local deadline soft local deadline pre soft deadline profit rate post soft deadline profit rate
12
Related Work12 兩種 output queue 架構 single preemptive queue router router 可將進入的封包插 到 output queue 的任意 位置 multiple queue router output queue 是由數個 FIFO queue 所組成, router 只能將欲送出的封 包插入其中一個 queue 的 尾端 硬體較易實作 研究重點 ( 各有對應的排程演算法: SPQ-SA 、 MQ-SA)
13
Related Work13 SPQ-SA (single preemptive queue) Base case 封包可插入 queue 任意位置 Scheduler 依封包 profit function 選擇適當 的位置插入使封包送出順序獲得最大 total profit greedy algorithm 原本 queue 內封包順序維持不變,但進入的封 包可任意插入 queue 之中
14
Related Work14 MQ-SA (multiple queue) 可視為 SPQ 的 special case 只有固定位置可插入 Pre-Scheduler 依封包 profit function 選擇適當的 queue 插 入尾端使封包送出順序獲得最大 total profit Post-Scheduler 以單一 queue 為單位做輪詢 (round robin) 將單一 queue 裡面的封包依序全部送出稱為對該 queue 服務一 次
15
Related Work15 MQ-SA (cont.)
16
Related Work16 Related Work 文獻二 A Priority Based Packet Scheduler with Deadline Considerations two sets of algorithms introduced Static Priority with Deadline Considerations (SPD) Dynamic Priority with Deadline Considerations (DPD) not only simplify the complexity and overhead of a classical Earliest Deadline First (EDF) or Static Priority (SP) algorithm, but also provide a better QoS
17
Related Work17 文獻二 (cont.) SPD sorted according to their priorities remaining deadline of the packet is checked discarded if the packet has no remaining deadline line left partial sorting DPD modify the priority by remaining deadlines
18
Related Work18 Related Work 文獻三 Implementation of Expedited Forwarding Using Dynamic Hop Counts Based Absolute Priority Scheduling
19
Related Work19 Related Work Summary NJCM 為獨立排程,並未納入後續 router 負 載因素;另一方面 multiple queue 排程演 算法尚有改善空間 其他相關研究沒有針對不同服務等級的服務 提供不同優先次序的服務,在 router 對封包 重新排程時,必須加以考慮不同類型封包的 服務等級,讓資源依優先等級調配,如此可 以提高整體滿意度。
20
Outline20 Outline Introduction Related Work Our Approach Performance Evaluation Conclusion
21
Our Approach21 Our Approach 設計理念 改善 multiple queue 排程演算法 與 single preemptive queue 排程演算法比較, 找出改善的方法 前瞻式排程 估計後續路程上 router 的負載 用以動態調整 profit function 參數,並找出最佳調 整參數
22
Our Approach22 Design Challenges Design Challenge of PMQ-SA 如何改善 multiple queue 排程演算法 Design Challenges of Looking ahead packet scheduling 後續網路狀態因素 如何估計後續 router 負載 如何根據結果動態調整 profit function 參數
23
Our Approach23 Objectives 改善 multiple queue 排程演算法 效能更逼近 single preemptive queue 前瞻式排程 反應網路狀況 各個 router 之間互相分享資訊以決定較佳的排 程 因而提升網路資源使用率、提高 QoS 滿意度
24
Our Approach24 Objective function (1/2) 整體 QoS 滿意度 (multiple class) total charge for multiple packet stream of class i 我們的目標就是要找出使 total charge(utility) 最大的 scheduling policy(profit function 組合 ) q i,j : quality index for the j-th flow of class i C i : unit price per byte of class i λ i,j : number of bytes transmitted by the j-th flow of i (if i=1 or i=2) number of bytes received from the j-th flow of i (if i=3) N i : number of flow of class i
25
Our Approach25 Objective function (2/2) quality index for a packet stream of class i α i = 1 - (average delay time) i / B i (1) (delay time satisfaction factor) β i = 1 - (average jitter)i / B i (2) (jitter satisfaction factor) γ i = 1 - (packet loss rate) i (loss rate satisfaction factor) a i (b i 、 c i ) : quality coefficient of delay time (jitter 、 loss rate) for class i B i (1) (B i (2) 、 B i (3) ) : upper threshold of delay time (jitter 、 loss rate) satisfaction factor
26
Our Approach26 Design Challenge of PMQ-SA 如何改善 multiple queue 排程演算法 NJCM 中的 multiple queue 與 single preemptive queue 比較,少最前面的位置以 供插隊,導致非常緊急的封包也要排隊 priority multiple queue :讓其中一個 queue 的 優先權提高以供較為緊急的封包插入
27
Our Approach27 如何改善 multiple queue 排程演算法 (cont.) PMQ-SA round-robin queue 作法跟 NJCM MQ-SA 一樣 只要 priority queue 中有封包就必須先服務
28
Our Approach28 Design Challenge 1 of Looking ahead packet scheduling 如何估計後續 router 負載 估計剩餘傳遞時間 利用 Routing Table 中的資訊 反應網路實際狀況及負載 進行後續路程封包排程 假設 router 使用 link state routing protocol (e.g. OSPF) 提供幾項 routing metrics 計算 link cost 流量負載 可用頻寬 delay time (RTT/2)
29
Our Approach29 如何估計後續 router 負載 (cont.) OSPF 使用 link-state algorithm ,每個 router 都擁有相 同且完整網路拓樸及 cost 的資訊 測量 delay time RTT 從插入 queue 開始計算 (depart time – arrival time) + transmission time + propagation delay measurements averaged over 10 seconds update sent if difference > threshold, or every 50 seconds
30
Our Approach30 Design Challenge 2 of Looking ahead packet scheduling 如何動態調整 profit function 參數 IP 封包的傳遞時間起伏不定,使得封包已傳遞時間比預定的 時間早到或遲到 當封包到每個 router 即可得知估計的剩餘傳遞時間 (by Routing Table) 比預定剩餘傳遞時間長或短
31
Our Approach31 封包傳遞中的幾種狀況
32
Our Approach32 動態調整 profit function 的 local deadline Step-Down & Slope-Down hard deadline += c . (d pre +d post ) Slope-Down & Double-Slope soft deadline += c . (d pre +d post ) 以調整係數 c 決定調整程度 (o<c<1) 如何決定 c 以實驗找出最佳值 名字 ( 以最緊急狀況為例 ) 符號定義 已拖延的時間 d pre 預定已傳遞時間 – 實際已傳遞時間 後續可能延遲的時間 d post 預定傳遞剩餘時間 – 估計剩餘傳遞時間 估計總拖延時間 d pre +d post 調整係數 c 調整程度
33
Our Approach33
34
Our Approach34 整體架構 排程演算法 SPQ-SA MQ-SA PMQ-SA 排程環境 獨立排程 前瞻式排程
35
Our Approach35 Scheduling policy 四種 profit function 兩兩組合,共有六種組合,再 賦予 conversational class 及 streaming class , 共有 12 種 Scheduling policy PolicyConversationalStreamingPolicyConversationalStreaming 1 Step-DownStep-Slope 7 Step-Down 2 Slope-Down 8 Step-Down 3 Double-Slope 9 Step-Down 4 Step-SlopeSlope-Down 10 Slope-DownStep-Slope 5 Double-Slope 11 Double-SlopeStep-Slope 6 Slope-DownDouble-Slope 12 Double-SlopeSlope-Down
36
Outline36 Outline Introduction Related Work Our Approach Performance Evaluation Conclusion
37
Performance Evaluation 37 Performance Evaluation 實驗設計 實驗步驟 1.PMQ v.s. MQ 觀察改善 multiple queue 排程演算法的效能 2.LA-PMQ v.s. PMQ 觀察前瞻式排程效能 找出最佳調整係數 (c) 3.Multiple Class 觀察多等級服務的封包調配不同 profit function 間的行為與不同等級 服務間的差異化處理 研究重點在於如何調配 profit function 給不同等級的服務
38
Performance Evaluation 38 Performance Evaluation (cont.) 實驗工具 NS-2 (ver 2.30) Single Class 評估指標 Average jitter Packet loss rate Average delay time Multiple Class 評估指標 Total charge
39
Performance Evaluation 39 實驗拓墣 虛線部分代表實驗控制變數
40
Performance Evaluation 40 實驗 1 : PMQ v.s. MQ (1/4) 實驗目標 觀察改善 multiple queue 排程演算法的效能 控制變數 Traffic Load (1A) Hop Counts (1B) Queue Size (1C) 對照組 FIFO (DropTail) NJCM 中的 MQ 、 SPQ
41
Performance Evaluation 41 實驗 1 : PMQ v.s. MQ (2/4) Result 1A :變動 Traffic Load 的影響 Simulation 1A Profit FunctionStep-Down Number of CBR flows3,6,9,12,15,18 Hop Counts4 Queue Size20 packets
42
Performance Evaluation 42 實驗 1 : PMQ v.s. MQ (3/4) Result 1B :變動 Hop Counts 的影響 ( 加入一個 priority queue 的確可以使效能更逼近 SPQ) Simulation 1B Profit FunctionStep-Down Number of CBR flows12 Hop Counts3,4,5,6,7,8 Queue Size20 packets
43
Performance Evaluation 43 實驗 1 : PMQ v.s. MQ (4/4) Result 1C :變動 Queue Size 的影響 ( 雖然可以改善 MQ ,但由於 multiple queue 的特性, queue size 越大 loss rate 越大 ) Simulation 1C Profit FunctionStep-Down Number of CBR flows12 Hop Counts4 Queue Size15,20,25,30,35,40
44
Performance Evaluation 44 實驗 2 : LA-PMQ v.s. PMQ (1/6) 實驗目標 觀察前瞻式排程動態調整 deadline 的效能 找出最佳調整參數 (c) 控制變數 Traffic Load (2A) Hop Counts (2B) Queue Size (2C) Another Topology (2D) 對照組 獨立排程
45
Performance Evaluation 45 實驗 2 : LA-PMQ v.s. PMQ (2/6) Result 2A :變動 Traffic Load 的影響 Simulation 2A ( Step-Down ) Profit FunctionStep-Down Number of CBR flows3,6,9,12,15,18 Hop Counts4 Queue Size20
46
Performance Evaluation 46 實驗 2 : LA-PMQ v.s. PMQ (3/6) Result 2B :變動 Hop Count 的影響 ( 根據 router 後續負載動態調整 local deadline 的確可以 改善效能,尤其是 loss rate 部分 ) Simulation 2B ( Step-Down ) Profit FunctionStep-Down Number of CBR flows12 Hop Counts3,4,5,6,7,8 Queue Size20 packets
47
Performance Evaluation 47 實驗 2 : LA-PMQ v.s. PMQ (4/6) Result 2C :變動 Queue Size 的影響 Simulation 2C ( Step-Down ) Profit FunctionStep-Down Number of CBR flows12 Hop Counts4 Queue Size15,20,25,30,35,40 ( 綜合實驗 2 ,整體觀察後我們選擇 0.1 當作我們的最 佳調整係數,並進行後續實驗 )
48
Performance Evaluation 48 實驗 2 : LA-PMQ v.s. PMQ (5/6) Topology 2D :魚骨拓墣
49
Performance Evaluation 49 實驗 2 : LA-PMQ v.s. PMQ (6/6) Result 2D :魚骨拓墣 變動 Queue Size 對前瞻式排程效能的影響 Simulation 2D ( Step-Down ) Profit FunctionStep-Down Queue Size15,20,25,30,35,40 packets ( 魚骨拓墣中有的接收端較為接近接收端,如此這些封 包較不緊急可以稍緩送出以補救其他較為緊急的封包 )
50
Performance Evaluation 50 實驗 3 :多等級服務 (1/7) 實驗目標 觀察多等級服務的封包調配不同 profit function 間的行 為與不同等級服務間的差異化處理 研究重點:我們將藉由實驗找出適合的配方 實驗流程 四種 profit function 共存 (3A) 控制變數 Traffic Load 雙 Real-Time 服務等級搭配不同 profit function (3B) 控制變數 VoIP 訊務流數量
51
Performance Evaluation 51 實驗 3 :多等級服務 (2/7) Result 3A :四種 profit function 共存 變動 Traffic Load 的影響 Simulation 3A Profit FunctionFour profit function co- exist Number of CBR flows4,8,12,16,20 Hop Counts4 Queue Size20 packets ( 大致上兩兩分為一組, Step-Down 與 Step-Slope 較差 ,而 Slope-Down 與 Double-Down 表現較佳 )
52
Performance Evaluation 52 實驗 3 :多等級服務 (3/7) 3B :雙 Real-Time 服務等級 Topology 3B 虛線部分代表實驗控制變數
53
Performance Evaluation 53 實驗 3 :多等級服務 (4/7) 3B :雙 Real-Time 服務等級 (cont.) 參數設定 q 3 =1 B i (1) =150(ms)(upper threshold delay time satisfaction) B i (2) =15(ms)(upper threshold jitter satisfaction) B 1 (3) =0.05(upper threshold of loss rate satisfaction for Conversational class) ConversationalStreamingBackground i123 Quality coefficient aiai 0.60.8 bibi 0.2 cici Unit Price CiCi 0.0010.00030.0001 Number of flows NiNi 15,20,25,30,35, 40 11
54
Performance Evaluation 54 實驗 3 :多等級服務 (5/7) Result 3B :雙 Real-Time 服務等級 變動 VoIP 數量的影響 (1)
55
Performance Evaluation 55 實驗 3 :多等級服務 (6/7) Result 3B :雙 Real-Time 服務等級 變動 VoIP 數量的影響 (2)
56
Performance Evaluation 56 實驗 3 :多等級服務 (7/7) Conclude 3B :雙 Real-Time 服務等級 實驗結果結果顯示在我們定義的評估指標下,只要是 將 conversational class 賦予 Slope-Down 或 Double-Slope 的 policy 整體效能都有不錯的表現 而觀察整體結果,我們推薦 policy 6 (conversational class)(streaming class)
57
Outline57 Outline Introduction Related Work Our Approach Performance Evaluation Conclusion
58
Conclusion58 Conclusion Real-time traffic 的訊務對於 jitter 以及 delay time 有著不同 的要求,但目前網路並未根據封包的服務等級差異性的處理, 無法滿足 real-time traffic 的品質要求 我們在每個 router 對封包進行重新排程, 並 參考封包在後續路 程 router 的負載,最後實驗結果顯示我們的方法能有效改善 real-time traffic 的整體效能。並且進一步研究在多服務等級 之下對不同重要性的封包做差異化的處理,能有效提高整體滿 意度 未來研究方向 其他 routing metric ,甚至其他 routing protocol 設計更多適用於不同網路環境的 profit function ,甚至可以設 計適合非 real-time 服務等級使用的 profit function ,以追求 最大的整體滿意度
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.