Modeling a MAC Scheduler: Experiences with a DOCSIS Cable ...
Transcript of Modeling a MAC Scheduler: Experiences with a DOCSIS Cable ...
Modeling a MAC Scheduler: Experiences with a DOCSIS Cable
Network Simulation ModelNetwork Simulation Model
Jim MartinDepartment of Computer Science
Clemson [email protected]
Phone: 864 656 4529Fax: 864 656 0145
Web site: www.clemson.edu/~jmarty
1Presented to the WiMAX Forum Application Architecture Working Group 7/12/20006
Talk Agenda
IntroductionsDOCSIS overviewDOCSIS overviewDOCSIS modelModeling a bandwidth schedulerModeling a bandwidth scheduler
BackgroundDesign and implementation in ‘ns2’Design and implementation in ns2Validation
Moving towards a WiMAX scheduler
2
Moving towards a WiMAX scheduler
Network Model
C bl M d
CM
CMCable ModemsCable Modem
Termination System (CMTS)
CM
CM
Cable Modems
CM
Downstream channel:S t 45M h 850Mh
Upstream channel(DOCSIS 2.0):Spectrum: 5Mhz-42Mhz
Spectrum: 45Mzh-850MhzBW/channel: 6MhzModulation: 64QAM with 6bits/channel
256QAM with 8 bits/channelData rate: 27-56Mbps
pBW/channel: 200Khz to 3.2Mhz(6.4Mhz)Modulation: QPSK or 16 QAM (64-QAM)Data rate: .32 to 10.24Mbps (30.72Mbps)Transmission mode: TDMA (CDMA), CMTS handles bandwidth allocation providing transmission
3
pTransmission mode: continuous stream of data
received by all cable modems.
bandwidth allocation, providing transmission opportunities for particular CM’s and also providing contention- based opportunities
Upstream Service Upstream channel managed in units of time calledUpstream channel managed in units of time called minislots.
Base time tick: 6.25microsecondsSystem parameter: number of ticks per minislot.
E g 4 ticks/minislot at a data rate of 5 12Mbps leads to 16E.g.,4 ticks/minislot at a data rate of 5.12Mbps leads to 16 bytes per minislot and 80 slots in a .002 second MAP time (about 1280 bytes)
The CMTS assigns slots to CMs based on periodic data grants or dynamically through a contention-based request mechanismrequest mechanism.
MAP timet0 t1 t2
minislotsManagementslots
Contention
CM1Frame
CM2Frame
Extended MAP time
4
slots
Upstream ServicesUpstream Services:
UGS: Unsolicited grant service QoS Params: nominal grant interval, tolerated grant jitter.
rtPS: realTime polling servicertPS: realTime polling serviceQoS Params: nominal polling interval, tolerated polling jitter.
BE: Best effort serviceQoS Params: minimum reserved traffic rate, maximum sustained traffic rate
5
maximum sustained traffic rate.
ns2 DOCSIS Model Extends the existing ns2 LAN modelCreate a Cable Modem (CM) node type and a Cable Modem Termination System (CMTS) node typeModem Termination System (CMTS) node typeCMs limited to a single default best effort service flow and a single UGS or rtPS flowOne upstream channel for each downstream channelOne upstream channel for each downstream channelAssumes that the CMTS and the CM clocks are synchronizedPhysical layer greatly simplifiedPhysical layer greatly simplified
Does not incorporate modulation schemes, interleaving, FEC (aside from estimating framing overhead)Channel impairments are not modeled
6
p
ns2 DOCSIS Model
LL LL LL LL
Node 2 Node 3 Node 4 Node N
Mac/DocsisCM Mac/DocsisCM Mac/DocsisCM Mac/DocsisCM
USphy
DSphy
USphy
DSphy
USphy
DSphy
USphy
DSphy
dschannel
uschannel
USDS
LL
Mac/DocsisCMTS
phyphy
7
Node 1
Scheduling in a Wired Network
The scheduling problem deals with allocating bandwidth among flows thatallocating bandwidth among flows that have been admitted.
l b d h d l fNon-Class based scheduling: first come first serve
Fairness must be implemented through end-to-end congestion control algorithms
8
Class Based Queuing
Class 1
Class based schedulingClass 2
Class 3
g
At each output port, packets of the same class are queued at a specific priority
Class 4
t eac output po t, pac ets o t e sa e c ass a e queued at a spec c p o tyqueueTraffic is classified to a known class through system policy:
Type of applicationSpecific flow
9
Specific flow….
Priority QueuingLower priority packets are served only if all higher priority queues are empty
P id l l t f th hi h t lProvides low latency for the highest class
Problems:No bandwidth partition A higher class can takeNo bandwidth partition. A higher class can take over the entire link, at the expense of lower priority packetsNo QoS guarantee for lower priority traffic, unless higher priority classes are strictly controlled by some other method
10
some other method
Fair Queuing
Separate queue for each flow. Service disciplines:p
Round Robin (RR): each queue is served in a round robin fashion, one packet at a time Weighted Round Robin (WRR): the bandwidth partition is adjustableWeighted Fair Queuing (WFQ)Weighted Fair Queuing (WFQ)
A refinement of WRR, accounting for variable packet size
11
Scheduling to Meet Absolute Deadlines
Hard deadline: missing the deadline is not toleratednot toleratedSoft deadline: missing the deadline ‘occasionally’ is toleratedoccasionally is tolerated
E.g., tolerated jitter of .001 seconds 99% of the timeof the time
12
Earliest Deadline First (aka Earliest Due Date)
EDF scheduling overviewDue Date(DD) = arrival_time + delay targetAll k t ti t d ith th i l tiAll packets are timestamped with the arrival timeexamine head-of-line packets of class based queuesserve the packet with earliest (smallest) due date
Applied to DOCSISUGS deadline: arrival time +nominal grant interval rtPS deadline: arrival time + nominal polling intervalp gBest effort deadline: arrival time + max tolerated access delay
13
Ns2 DOCSIS Model Scheduler
•Requests for BW are periodic or aperiodic•When a request arrives, the releaseTime is UGS queue
Periodic jobs set by (grant size, grant interval)
rtPS periodic queue
set to the current time.•The deadline is set to : releaseTime+period•The request is scheduled if the releaseTime falls in the current MAP time or if the
q
Periodic jobs set by (polling interval)
rtPS aperiodic queue
deadline will expire by the end of the MAP time.
The implementation currently does not
BW requests from rtPS polls
best effort queue
support• a tolerated grant jitter, the tolerated polling delay or the max tolerated access delay
Contention-based, piggybacked request
14
access delay•Minimum BW reservations
Ns2 DOCSIS Model Scheduler
UGS queue
Periodic jobs set by (grant size, grant interval)
Bin packing
rtPS periodic queue
q
Periodic jobs set by (polling interval)
Bin packing
rtPS aperiodic queue
BW requests from rtPS polls
Scheduler
best effort queue
Contention-based, piggybacked request MAP allocationSlots a-b : SID2Slots c-d : SID10Slots e-f : SID 22
15
Slots g-h : mgtSlots i-j : contention
Ns2 DOCSIS Model Scheduler
Tthe following algorithm allocates bandwidth to CMs for the next MAP time:•Add all UGS periodic requests with deadlines in the next MAP•Add all UGS periodic requests with deadlines in the next MAP•Add all rtPS poll periodic requests with deadlines in the next MAP•The number of slots granted must be less than the smaller of
•Statically configured MAP size + MAP_LOOKAHEAD•4096
•Find the number of slots left (numberSlotsLeft)•Grant proportionParam*numberSlotsLeft to rtPS Periodic•Grant proportionParam numberSlotsLeft to rtPS Periodic requests•Grant the remainder to best effort requests.
16
Moving Towards a WiMAX Scheduler
Wireless causes problems to traditional wired network schedulers since channel conditions vary over short time scales (multipath) and over long time scales (mobility and interference)interference)Link/Rate Adaptation: adapt modulation, power, antenna diversity to counter observed channel degradationOpportunistic Scheduling: takes advantage of multiuser di it Si l l th t i t f idiversity. Simple example that incorporates fairness:
approximate wired WFQ over all channelsExcept defer transmissions over poor quality channelsSupplement these sessions with additional BW later to achieveSupplement these sessions with additional BW later to achieve long-term fairness
17
Future Work
Model developmentHARQHARQPhysical layer support
OFDM subchannelsOFDM subchannelsPropagation modelsCross layer design
ResearchScheduling and adaptation
18
Scheduling and adaptation
19WiMAX OFDMA Frame Format
Data over Cable System Interface ySpecification (DOCSIS)
DOCSIS 1.0: base version.About 30Mbps DS, 5 Mbps US
DOCSIS 1 1: currently deployedDOCSIS 1.1: currently deployed.Added QoS capabilities.About 30Mbps DS, 10Mbps USp , p
DOCSIS 2.0: now available in products.Increases upstream capacityAbout 30Mbps DS 30 Mbps USAbout 30Mbps DS, 30 Mbps US
DOCSIS 3.0: in requirements phase200Mbps DS, 100Mbps US
20
p p
Downstream Service A continuous series of 188 byte MPEG packets
Allows data and MPEG video to be interleaved over the channelFrame format and overhead analysisFrame format and overhead analysis
MPEGHeader DOCSIS PayloadFrame Control Mac Param LengthHeader(4 bytes) (183/184 bytes)
Example: Starting with a 1500 byte IP packet 1500 bytes+ETHERNET_HEADER: +18 bytes+DOCSIS MAC OVERHEAD : + 6 bytes
g(1byte) (1) (2)
MAC header (4 bytes)
+DOCSIS MAC OVERHEAD : + 6 bytes+downstream channel overhead bytes: + 4 bytes---------------------------------------------------------------------------------
1524+MPEG frame alignment: + ceiling[1524/188]
----------------
21
1560 (about 6.4%)+ FEC overhead (6 symbols added per 122) + 13*6
--------------------------------1638 (about 7.3% overhead)
Upstream Frame Format
PMDoverhead
MAC header Data FEC PMD overheadHCS
F f t d h d l i
Upstream Frame Format
Frame format and overhead analysisExample, start with a 1500 byte IP datagram 1500
ETHERNET OVERHEAD + 18MAC Header/checksum + 6MAC Header/checksum + 63Bytes Extended Header(assuming piggybacking)
+ 3Physical overhead + 10---------------------------------------------------
22
1533 bytes (consumes 96 slots for a 16byte/slot configuration)
Validating the Scheduler
•The Tolerated Grant Jitter is the maximum difference between the actual grant time (t’i) and the nominal grant time (ti)•To verify that the scheduler meets the requirements of UGS and RT-Polling
23
•To verify that the scheduler meets the requirements of UGS and RT Polling service type we monitored the jitter in the grant allocation (difference between the actual grant time and the nominal grant time) is monitored