1 / 10

Scheduling

Scheduling. Determines which packet gets the resource. Enforces resource allocation to each flows. To be “Fair”, scheduling must: Keep track of how many packets each flow has sent Consider resources reserved for each flow. Basic requirements Isolation and sharing

malha
Download Presentation

Scheduling

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. Scheduling • Determines which packet gets the resource. • Enforces resource allocation to each flows. • To be “Fair”, scheduling must: • Keep track of how many packets each flow has sent • Consider resources reserved for each flow.

  2. Basic requirements • Isolation and sharing • All flows are isolated in circuit switched networks. • In the current Internet, all flows share all resources at the packet level. • Ensuring QoS requires isolation • Too much isolation lower the resource utilization. • To support QoS in IP network, we need to be able to emulate the traffic isolation while sharing resources at the packet level. • Delay bounds: • IntServ requires scheduling to support delay bounds. • Delay bounds reflect the trade-off between isolation and sharing.

  3. Basic requirements • Bandwidth allocation. • Fair-sharing policy. (What is fair?) • Max-min fair sharing maximize the minimum share of a flow • Resources are allocated in order of increasing demands • No flow is allocated more than its demand • Flows with unsatisfied demands get an equal share of the resource.

  4. Basic requirements • Max-min fair sharing calculation • Calculate the initial fair share = total capacity / no. of flows • Flows that have a demand less than or equal to its fair share, allocate the flow’s demand • Allocate the fair share to flows with a larger demand (than the fair share). • Remove the satisfied flows and subtract the allocated capacities from the total capacity. • Repeat until all demands are met or capacity run out. • Can associate a weight with a flow • Example: Link speed 10Mbps to support 5 flows 1Mbps, 2Mbps, 3Mbps, 4Mbps, 5Mbps

  5. Design choice: • Work-conserving versus non-work-conserving schedulers • Is the scheduler always busy when a packet is presented? • Simple priority: not sufficient by itself • Approaches • Fair-queuing: guaranteed to get its entitled bandwidth and may get more. • Deadline-based schemes: earliest deadline-first • Rate-based:

  6. Weighted Fair Queuing (WFQ) • Supports bandwidth allocation and delay bounds • Widely implemented in routers for supporting QoS. • Fluid Model (Figure 2.19)

  7. Generalized Processor Sharing (GPS) • An ideal fair-queuing algorithm based on the fluid model that provide exact max-min weighted fair sharing • Parameters: • N flows served by a server with service rate R • Ith flow has a weight a Wi • S(I, t1, t2) be the amount of data serviced for flow I during interval (t1, t2). • For each backlogged flow I and any other flow J, S(I, t1, t2)/S(j, t1, t2) >= Wi / Wj

  8. Generalized Processor Sharing (GPS) • For each backlogged flow I and any other flow J, S(I, t1, t2)/S(j, t1, t2) >= Wi / Wj • The minimum fair share: Wi/sum(W) * R • The service that a flow receives in a GPS system is no worse than an equivalent dedicated link with a capacity of Wi/Sum(W) * R

  9. Weighted Fair Queuing: • Packet by packet generalized processor sharing • Trying to emulated GPS • Calculate the departure time of a packet (finish time) • Schedule packet based on the finish time • Computing finish time is doable, but somewhat hard since flows can move between backlogged and nonbacklogged state. (See Figure 2.21) • Worst case delay is larger than GPS due to the packetization, but still bounded – this is the theoretical fundation for IntServ.

  10. Weighted Fair Queuing variations: • Make it more “fair” • Deal with more situations • Simplify the calculation • Worst-case Fair WFQ (WF^2Q) • Hierarchical WFQ • Self-clocking Fair Queuing (SCFQ) • Weighted Round Robin (WRR) • Deficit Round Robin (DRR)

More Related