a competitive algorithm for scheduling packets with
play

A -Competitive Algorithm for Scheduling Packets with Deadlines - PowerPoint PPT Presentation

A -Competitive Algorithm for Scheduling Packets with Deadlines Pavel Vesel y University of Warwick Joint work with Marek Chrobak (UC Riverside), Lukasz Je z (Wroc law), and Ji r Sgall (Charles University, Prague)


  1. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time 1 2 3 Each has a deadline and a weight w p = 2 Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  2. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time 1 2 3 Each has a deadline and a weight w p = 2 Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step Goal: maximize total weight of scheduled packets Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  3. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 Each has a deadline and a weight (reward) w p = 2 Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  4. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  5. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  6. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 OP T ALG = 1 . 7+1 ≈ 1 . 59 1 . 7 1 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  7. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  8. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 1 . 7 2 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  9. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 1 . 7 2 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  10. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 OP T ALG = 2 · 1 . 7+2 . 7 1 . 7 1 . 7+2 . 7 ≈ 1 . 39 2 . 7 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  11. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets 1 2 3 4 1 1 . 7 1 . 7 2 . 7 2 . 7 4 . 3 Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  12. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets Scheduling problem 1 | online , r j , p j = 1 | � w j (1 − U j ) Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  13. Online Packet Scheduling with Deadlines Buffer Input port Output port Network switch: Packets arrive over time (orders) 1 2 3 ALG Each has a deadline and a weight (reward) w p = 2 OPT Time discrete, consisting of slots or steps r p = 1 d p = 3 One packet transmitted in each step (weeks) Goal: maximize total weight of scheduled packets Scheduling problem 1 | online , r j , p j = 1 | � w j (1 − U j ) A.k.a. Buffer Management in Quality of Service Switches Online Packet Scheduling 8 / 26 Pavel Vesel´ y

  14. Previous work We focus on deterministic algorithms Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  15. Previous work We focus on deterministic algorithms Greedy algorithm 2-competitive ◮ Schedules always the heaviest pending packet Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  16. Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  17. 5 2 34 21 13 8 3 Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  18. Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . √ 2 2 − 1 ≈ 1 . 828-competitive algorithm [Englert & Westermann ’07] Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  19. Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . √ 2 2 − 1 ≈ 1 . 828-competitive algorithm [Englert & Westermann ’07] φ -competitive algorithms for some special instances [Kesselman et al. ’01, Chin et al. ’04, Li et al. ’05, Bienkowski et al. ’13, B¨ ohm et al. ’16] Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  20. Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . √ 2 2 − 1 ≈ 1 . 828-competitive algorithm [Englert & Westermann ’07] φ -competitive algorithms for some special instances [Kesselman et al. ’01, Chin et al. ’04, Li et al. ’05, Bienkowski et al. ’13, B¨ ohm et al. ’16] Is there a φ -competitive algorithm? Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  21. Previous work We focus on deterministic algorithms 1 Greedy algorithm 2-competitive φ ◮ Schedules always the heaviest pending packet φ Lower bound of the golden ratio φ 2 √ φ = 1 2 ( 5 + 1) ≈ 1 . 618 [H´ ajek ’01, Andelman et al. ’03, φ 2 Chin & Fung ’03] φ 3 1 + 1 φ = φ . . . √ 2 2 − 1 ≈ 1 . 828-competitive algorithm [Englert & Westermann ’07] φ -competitive algorithms for some special instances [Kesselman et al. ’01, Chin et al. ’04, Li et al. ’05, Bienkowski et al. ’13, B¨ ohm et al. ’16] Is there a φ -competitive algorithm? Yes! Online Packet Scheduling 9 / 26 Pavel Vesel´ y

  22. New result Theorem There is a φ -competitive deterministic algorithm. Online Packet Scheduling 10 / 26 Pavel Vesel´ y

  23. New result Theorem There is a φ -competitive deterministic algorithm. Key technique: Plan Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Online Packet Scheduling 10 / 26 Pavel Vesel´ y

  24. New result Theorem There is a φ -competitive deterministic algorithm. Key technique: Plan Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Optimal future profit unless new packets arrive Online Packet Scheduling 10 / 26 Pavel Vesel´ y

  25. New result Theorem There is a φ -competitive deterministic algorithm. Key technique: Plan Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Optimal future profit unless new packets arrive Scheduled plans (a.k.a. provisional schedules) used already by [Li et al. ’05, Li et al. ’07, Englert & Westermann ’07] Online Packet Scheduling 10 / 26 Pavel Vesel´ y

  26. Algorithm Online Packet Scheduling 11 / 26 Pavel Vesel´ y

  27. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  28. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Algorithm Plan ( φ ) Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  29. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Algorithm Plan ( φ ) Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) t P p t + 1 Q p Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  30. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Algorithm Plan ( φ ) Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) t P p t + 1 Q p ◮ w p is the gain in this step ◮ w ( Q p ) is the optimal future profit unless new packets arrive Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  31. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Algorithm Plan ( φ ) Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) t P p t + 1 Q p ◮ w p is the gain in this step ◮ w ( Q p ) is the optimal future profit unless new packets arrive Very elegant algorithm . . . Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  32. Algorithm Plan ( φ ) Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Algorithm Plan ( φ ) Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) t P p t + 1 Q p ◮ w p is the gain in this step ◮ w ( Q p ) is the optimal future profit unless new packets arrive Very elegant algorithm . . . . . . but not φ -competitive Online Packet Scheduling 12 / 26 Pavel Vesel´ y

  33. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  34. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 0 . 5 1 . 6 1 0 . 6 0 . 4 0 . 1 Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  35. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 0 . 5 1 . 6 1 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: 1 1 . 6 0 . 6 0 . 1 0 . 5 Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  36. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 0 . 5 1 . 6 1 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: Plan: 1 0 . 5 1 . 6 0 . 6 0 . 1 Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  37. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 0 . 5 1 . 6 1 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: Plan: 1 . 6 0 . 6 0 . 1 0 . 5 1 Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  38. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 Definition 0 . 5 1 . 6 Slot τ is tight w.r.t. plan P iff 1 # of slots till τ = # of packets j ∈ P : d j ≤ τ 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: Plan: 1 . 6 0 . 6 0 . 1 0 . 5 1 tight Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  39. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 Definition 0 . 5 1 . 6 Slot τ is tight w.r.t. plan P iff 1 # of slots till τ = # of packets j ∈ P : d j ≤ τ 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: Plan: 1 . 6 0 . 6 0 . 1 0 . 5 1 Segments: Definition Segment = interval between tight slots Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  40. Plan and its Structure Plan P Max-weight feasible subset of pending packets in step t ◮ feasible = can be scheduled in slots t , t + 1 , . . . 1 2 3 4 5 Definition 0 . 5 1 . 6 Slot τ is tight w.r.t. plan P iff 1 # of slots till τ = # of packets j ∈ P : d j ≤ τ 0 . 6 0 . 4 �∈ plan 0 . 1 Plan: Plan: 1 . 6 0 . 6 0 . 1 0 . 5 1 Segments: Definition Segment = interval between tight slots P Online Packet Scheduling 13 / 26 Pavel Vesel´ y

  41. Plan Updates After Packet p is Scheduled p in the 1st segment (“greedy step”) d p P p d p Q p Online Packet Scheduling 14 / 26 Pavel Vesel´ y

  42. Plan Updates After Packet p is Scheduled p in the 1st segment (“greedy step”) d p P p d p Q p p in a later segment (“leap step”) d p P p Online Packet Scheduling 14 / 26 Pavel Vesel´ y

  43. Plan Updates After Packet p is Scheduled p in the 1st segment (“greedy step”) d p P p d p Q p p in a later segment (“leap step”) d p P ℓ p d p Q p ℓ = lightest in the 1st segment Online Packet Scheduling 14 / 26 Pavel Vesel´ y

  44. Plan Updates After Packet p is Scheduled p in the 1st segment (“greedy step”) d p P p d p Q p p in a later segment (“leap step”) d p d ̺ P ℓ p d p d ̺ Q p ̺ ℓ = lightest in the 1st segment ̺ = heaviest not in P which can replace p ◮ replacement packet for p Online Packet Scheduling 14 / 26 Pavel Vesel´ y

  45. Problem of Plan ( φ ): Weight Decreases in the Plan Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  46. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  47. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment τ Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  48. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment d ℓ τ ℓ Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  49. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment τ d ℓ ℓ Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  50. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment minwt ( τ ) τ t Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  51. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment minwt ( τ ) τ t minwt after plan updates minwt( τ ) does not decrease for any τ : ◮ after arrival of a new packet ◮ after scheduling a packet from the 1st segment (greedy step) Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  52. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment minwt ( τ ) τ t minwt after plan updates minwt( τ ) does not decrease for any τ : ◮ after arrival of a new packet ◮ after scheduling a packet from the 1st segment (greedy step) minwt( τ ) decreases for some τ after sch. a packet from later segment Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  53. Problem of Plan ( φ ): Weight Decreases in the Plan minwt( τ ) = min-weight in P till the next tight slot after τ ◮ In a schedule of P , any packet can be in the 1st slot of a segment minwt ( τ ) τ t minwt after plan updates minwt( τ ) does not decrease for any τ : ◮ after arrival of a new packet ◮ after scheduling a packet from the 1st segment (greedy step) minwt( τ ) decreases for some τ after sch. a packet from later segment The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ Online Packet Scheduling 15 / 26 Pavel Vesel´ y

  54. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  55. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  56. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ ⇒ increase the weight of ̺ to minwt( d ̺ ) Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  57. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ ⇒ increase the weight of ̺ to minwt( d ̺ ) Not enough if segments merge: Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  58. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ ⇒ increase the weight of ̺ to minwt( d ̺ ) Not enough if segments merge: d p d ̺ minwt ( τ ) τ t d p d ̺ τ t + 1 Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  59. Solution: Maintaining Slot-Monotonicity of minwt Idea: modify Plan ( φ ) so that minwt( τ ) never decreases for any τ The problem: d p d ̺ ̺ �∈ P ⇒ w ̺ < minwt( d ̺ ) P ℓ p d p d ̺ Q p ̺ ⇒ increase the weight of ̺ to minwt( d ̺ ) Not enough if segments merge: d p d ̺ minwt ( τ ) τ t d p d ̺ τ t + 1 ⇒ avoid merging segments Online Packet Scheduling 16 / 26 Pavel Vesel´ y

  60. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  61. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  62. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p d ̺ . . . . . . P p . . . . . . Q p ̺ Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  63. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 d ̺ γ . . . . . . P p h 1 . . . . . . Q p ̺ ◮ h 1 = heaviest packet in ( τ 0 , γ ], Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  64. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 τ 1 d ̺ γ . . . . . . P p h 1 . . . . . . Q p h 1 ̺ ◮ h 1 = heaviest packet in ( τ 0 , γ ], ◮ decrease deadline of h 1 to τ 0 Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  65. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 τ 1 τ 2 d ̺ γ . . . . . . P p h 1 h 1 h 2 . . . . . . Q p h 1 h 1 h 2 ̺ ◮ h 2 = heaviest packet in ( τ 1 , γ ], ◮ decrease deadline of h 2 to τ 1 Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  66. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 τ 1 τ 2 τ 3 d ̺ γ . . . . . . P p h 1 h 1 h 2 h 2 h 3 . . . . . . Q p h 1 h 1 h 2 h 2 h 3 ̺ ◮ h 3 = heaviest packet in ( τ 2 , γ ], ◮ decrease deadline of h 3 to τ 2 Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  67. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 τ 1 τ 2 τ 3 τ k − 1 d ̺ γ = τ k . . . . . . . . . P p h 1 h 1 h 2 h 2 h 3 h 3 h k − 1 h k . . . . . . . . . Q p h 1 h 1 h 2 h 2 h 3 h 3 h 4 h k ̺ ◮ for i = 1 , 2 , . . . : h i = heaviest packet in ( τ i − 1 , γ ], ◮ decrease deadline of h i to τ i − 1 ◮ stop when τ i = γ Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  68. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: d p τ 0 τ 1 τ 2 τ 3 τ k − 1 d ̺ γ = τ k . . . . . . . . . P p h 1 h 1 h 2 h 2 h 3 h 3 h k − 1 h k . . . . . . . . . Q p h 1 h 1 h 2 h 2 h 3 h 3 h 4 h k ̺ ◮ for i = 1 , 2 , . . . : h i = heaviest packet in ( τ i − 1 , γ ], ◮ decrease deadline of h i to τ i − 1 ◮ stop when τ i = γ ◮ ensure: w h i ≥ minwt( τ i − 1 ) ⋆ if w h i < minwt( τ i − 1 ), then set new weight of h i to minwt( τ i − 1 ) Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  69. Algorithm PlanM ( φ ) Maintaining Slot-Monotonicity Schedule packet p ∈ P maximizing φ · w p + w ( Q p ) ◮ Q p is the plan after p is scheduled and time is incremented ( p �∈ Q p ) If p is not in the 1st segment of P (leap step): ◮ Increase the weight of ̺ to minwt( d ̺ ) ◮ Avoid merging segments: In a nutshell Avoid merging segments and minwt decreases in a right way d p τ 0 τ 1 τ 2 τ 3 τ k − 1 d ̺ γ = τ k . . . . . . . . . ⋆ Done by decreasing deadlines and increasing weights of certain packets P p h 1 h 1 h 2 h 2 h 3 h 3 h k − 1 h k . . . . . . . . . Q p h 1 h 1 h 2 h 2 h 3 h 3 h 4 h k ̺ ◮ for i = 1 , 2 , . . . : h i = heaviest packet in ( τ i − 1 , γ ], ◮ decrease deadline of h i to τ i − 1 ◮ stop when τ i = γ ◮ ensure: w h i ≥ minwt( τ i − 1 ) ⋆ if w h i < minwt( τ i − 1 ), then set new weight of h i to minwt( τ i − 1 ) Online Packet Scheduling 17 / 26 Pavel Vesel´ y

  70. Analysis Online Packet Scheduling 18 / 26 Pavel Vesel´ y

  71. Analysis Overview Competitive analysis ◮ Goal: w (OPT) ≤ φ · w (ALG) for any instance Online Packet Scheduling 19 / 26 Pavel Vesel´ y

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend