1 / 56

QoS-Aware Packet Scheduling by Looking Ahead Approach

QoS-Aware Packet Scheduling by Looking Ahead Approach. 有助於提高服務品質的前瞻式封包排程機制 政治大學資訊科學所 指導教授:連耀南 學生:溫永全 2007.12.27. Outline. Introduction Related Work Our Approach Performance Evaluation Conclusion. Introduction.

gur
Download Presentation

QoS-Aware Packet Scheduling by Looking Ahead Approach

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. QoS-Aware Packet Scheduling by Looking Ahead Approach 有助於提高服務品質的前瞻式封包排程機制 政治大學資訊科學所 指導教授:連耀南 學生:溫永全 2007.12.27

  2. Outline • Introduction • Related Work • Our Approach • Performance Evaluation • Conclusion

  3. Introduction • 現今封包網路中,router對於封包是以FIFO的方式處理,並未針對封包的時效性做適當的處理,對於遲到的封包而言,在目的地端幾乎已經沒有補救機會 • 如果能在傳遞過程中依封包的時效性及重要性做適度的rescheduling,讓過遲的封包提前送出,而將有時間餘裕的封包稍緩送出,如此截長補短,可提高網路效能及整體QoS滿意度

  4. 3GPP UMTS QoS分類架構 • 即時性的應用服務,像是VoIP以及VoD,對於封包的delay time以及jitter具有嚴格的要求 • 不同class有不同的服務品質要求

  5. 如何知道封包早到或遲到 • 在ALL-IP Network上,所有應用皆在同一個封包交換網路上傳送 • 網路服務品質管理 • QoS管理架構 (例如:IntServ及Budget Based QoS) • 封包均循有資源管理的指定路徑傳遞 • 可預定封包到達每一個hop (router) 的時間及其送出時間 • 當封包到達每個router,可以知道該封包早到或遲到

  6. router架構 • packet forwarding會依照封包所要傳送的目的地,選取適當的output queue將封包插入 • 我們的排程方法將對個別的output queue中的封包進行排程

  7. 排程環境 • 我們的研究假設在兩種排程環境下進行 • 獨立排程 (Intra-Router Scheduling) • 每個router根據自身所知的資訊而不參考其他router 的狀態逕自進行排程 • 前瞻式排程 (Looking Ahead Scheduling) • router會參考封包在後續路程上各router的狀態進行排程

  8. Our Motivation • per-hop QoS排程是在每個hop內各自進行,如要達到最佳排程,各個router之間必須互相分享資訊 • 我們延續A New Jitter Control Mechanism by Per-Hop Packet Scheduling Approach • 該研究中每個router各自做排程的決定 • 參考封包在後續路程上各router的狀態進行排程,進而改善為前瞻式排程 (example) • 另外針對該研究中的multiple queue排程演算法,我們也提出改善的方法

  9. Outline • Introduction • Related Work • Our Approach • Performance Evaluation • Conclusion

  10. 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. Four profit function (Step-Down) (Slope-Down) (Slope-Step) (Double-Slope)

  12. 兩種output queue架構 • single preemptive queue router • router可將進入的封包插到output queue的任意位置 • multiple queue router • output queue是由數個FIFO queue所組成,router只能將欲送出的封包插入其中一個queue的尾端 • 硬體較易實作 • 研究重點 (各有對應的排程演算法:SPQ-SA、MQ-SA)

  13. SPQ-SA (single preemptive queue) • Base case • 封包可插入queue任意位置 • Scheduler依封包profit function選擇適當的位置插入使封包送出順序獲得最大total profit • greedy algorithm • 原本queue內封包順序維持不變,但進入的封包可任意插入queue之中

  14. MQ-SA (multiple queue) • 可視為SPQ的special case • 只有固定位置可插入 • Pre-Scheduler依封包profit function選擇適當的queue插入尾端使封包送出順序獲得最大total profit • Post-Scheduler • 以單一queue為單位做輪詢 (round robin) • 將單一queue裡面的封包依序全部送出稱為對該queue服務一次

  15. MQ-SA (cont.)

  16. 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. 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 文獻二 (cont.)

  18. Related WorkSummary • NJCM為獨立排程,並未納入後續router負載因素;另一方面multiple queue排程演算法尚有改善空間 • 其他相關研究沒有針對不同服務等級的服務提供不同優先次序的服務,在router對封包重新排程時,必須加以考慮不同類型封包的服務等級,讓資源依優先等級調配,如此可以提高整體滿意度。

  19. Outline • Introduction • Related Work • Our Approach • Performance Evaluation • Conclusion

  20. Our Approach • 設計理念 • 改善multiple queue排程演算法 • 與single preemptive queue排程演算法比較,找出改善的方法 • 前瞻式排程 • 估計後續路程上router的負載 • 用以動態調整profit function參數,並找出最佳調整參數

  21. Design Challenges • Design Challenge of PMQ-SA • 如何改善multiple queue排程演算法 • Design Challenges of Looking ahead packet scheduling • 後續網路狀態因素 • 如何估計後續router負載 • 如何根據結果動態調整profit function參數

  22. Objectives • 改善multiple queue排程演算法 • 效能更逼近single preemptive queue • 前瞻式排程 • 反應網路狀況 • 各個router之間互相分享資訊以決定較佳的排程  因而提升網路資源使用率、提高QoS滿意度

  23. Objective function (1/2) • 整體QoS滿意度 (multiple class) • total charge for multiple packet stream of class i • 我們的目標就是要找出使total charge(utility)最大的scheduling policy(profit function組合) qi,j:quality index for the j-th flow of class i Ci: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) Ni:number of flow of class i

  24. Objective function (2/2) • quality index for a packet stream of class i αi = 1 - (average delay time)i / Bi(1) (delay time satisfaction factor) βi = 1 - (average jitter)i / Bi(2) (jitter satisfaction factor) γi = 1 - (packet loss rate)i (loss rate satisfaction factor) ai (bi、ci):quality coefficient of delay time (jitter、loss rate) for class i Bi(1) (Bi(2)、Bi(3)): upper threshold of delay time (jitter、loss rate) satisfaction factor

  25. Design Challenge of PMQ-SA 如何改善multiple queue排程演算法 • NJCM中的multiple queue • 與single preemptive queue比較,少最前面的位置以供插隊,導致非常緊急的封包也要排隊 • priority multiple queue:讓其中一個queue的優先權提高以供較為緊急的封包插入

  26. 如何改善multiple queue排程演算法(cont.) • PMQ-SA • round-robin queue作法跟NJCM MQ-SA一樣 • 只要priority queue中有封包就必須先服務

  27. Design Challenge 1 of Looking ahead packet scheduling如何估計後續router負載 • 估計剩餘傳遞時間 • 利用Routing Table中的資訊 • 反應網路實際狀況及負載 • 進行後續路程封包排程 • 假設router使用link staterouting protocol (e.g. OSPF) • 提供幾項routing metrics計算link cost • 流量負載 • 可用頻寬 • delay time (RTT/2)

  28. Design Challenge 2 of Looking ahead packet scheduling如何動態調整profit function參數 • IP封包的傳遞時間起伏不定,使得封包已傳遞時間比預定的時間早到或遲到 • 當封包到每個router即可得知估計的剩餘傳遞時間 (by Routing Table) • 比預定剩餘傳遞時間長或短

  29. 封包傳遞中的幾種狀況

  30. 動態調整profit function的local deadline • Step-Down & Slope-Down • hard deadline += c.(dpre+dpost) • Slope-Down & Double-Slope • soft deadline += c.(dpre+dpost) • 以調整係數c決定調整程度 (o<c<1) • 如何決定c • 以實驗找出最佳值

  31. 整體架構

  32. Scheduling policy • 四種profit function兩兩組合,共有六種組合,再賦予conversational class及streaming class,共有12種Scheduling policy

  33. Outline • Introduction • Related Work • Our Approach • Performance Evaluation • Conclusion

  34. Performance Evaluation實驗設計 • 實驗步驟 • PMQ v.s. MQ • 觀察改善multiple queue排程演算法的效能 • LA-PMQ v.s. PMQ • 觀察前瞻式排程效能 • 找出最佳調整係數 (c) • Multiple Class • 觀察多等級服務的封包調配不同profit function間的行為與不同等級服務間的差異化處理 • 研究重點在於如何調配profit function給不同等級的服務

  35. Performance Evaluation (cont.) • 實驗工具 • NS-2 (ver 2.30) • Single Class 評估指標 • Average jitter • Packet loss rate • Average delay time • Multiple Class 評估指標 • Total charge

  36. 實驗拓墣 虛線部分代表實驗控制變數

  37. 實驗1:PMQ v.s. MQ (1/4) • 實驗目標 • 觀察改善multiple queue排程演算法的效能 • 控制變數 • Traffic Load (1A) • Hop Counts (1B) • Queue Size (1C) • 對照組 • FIFO (DropTail) • NJCM中的MQ、SPQ

  38. 實驗1:PMQ v.s. MQ (2/4)Result 1A:變動Traffic Load的影響

  39. 實驗1:PMQ v.s. MQ (3/4)Result 1B:變動Hop Counts的影響 (加入一個priority queue的確可以使效能更逼近SPQ)

  40. 實驗1:PMQ v.s. MQ (4/4)Result 1C:變動Queue Size的影響 (雖然可以改善MQ,但由於multiple queue的特性,queue size越大loss rate越大)

  41. 實驗2:LA-PMQ v.s. PMQ(1/6) • 實驗目標 • 觀察前瞻式排程動態調整deadline的效能 • 找出最佳調整參數 (c) • 控制變數 • Traffic Load (2A) • Hop Counts (2B) • Queue Size (2C) • Another Topology (2D) • 對照組 • 獨立排程

  42. 實驗2:LA-PMQ v.s. PMQ(2/6)Result 2A:變動Traffic Load的影響

  43. 實驗2:LA-PMQ v.s. PMQ(3/6)Result 2B:變動Hop Count的影響 (根據router後續負載動態調整local deadline的確可以改善效能,尤其是loss rate部分)

  44. 實驗2:LA-PMQ v.s. PMQ(4/6)Result 2C:變動Queue Size的影響 (綜合實驗2,整體觀察後我們選擇0.1當作我們的最佳調整係數,並進行後續實驗 )

  45. 實驗2:LA-PMQ v.s. PMQ(5/6)Topology 2D:魚骨拓墣

  46. 實驗2:LA-PMQ v.s. PMQ(6/6)Result 2D:魚骨拓墣 變動Queue Size對前瞻式排程效能的影響 (魚骨拓墣中有的接收端較為接近接收端,如此這些封包較不緊急可以稍緩送出以補救其他較為緊急的封包 )

  47. 實驗3:多等級服務 (1/7) • 實驗目標 • 觀察多等級服務的封包調配不同profit function間的行為與不同等級服務間的差異化處理 • 研究重點:我們將藉由實驗找出適合的配方 • 實驗流程 • 四種profit function共存 (3A) • 控制變數 • Traffic Load • 雙Real-Time服務等級搭配不同profit function (3B) • 控制變數 • VoIP訊務流數量

  48. 實驗3:多等級服務 (2/7)Result 3A:四種profit function共存變動Traffic Load的影響 (大致上兩兩分為一組,Step-Down與Step-Slope較差,而Slope-Down與Double-Down表現較佳 )

  49. 實驗3:多等級服務 (3/7)3B:雙Real-Time服務等級Topology 3B 虛線部分代表實驗控制變數

More Related