250 likes | 459 Views
Department of Information Engineering University of Padova, ITALY. Special Interest Group on NEtworking & Telecommunications. APOS: Adaptive Parameters Optimization Scheme for Voice over IEEE 802.11g. N. Baldo, F. Maguolo, S. Merlin, A. Zanella, M. Zorzi D. Melpignano, D. Siorpaes.
E N D
Department of Information EngineeringUniversity of Padova, ITALY Special Interest Group on NEtworking & Telecommunications APOS: Adaptive Parameters Optimization Scheme for Voice over IEEE 802.11g N. Baldo, F. Maguolo, S. Merlin, A. Zanella, M. Zorzi D. Melpignano, D. Siorpaes Speaker: Michele Zorzi ICC 2008 Beijing
Motivations (I) • VoIP over WiFi is gaining popularity thanks to the widespread diffusion of • WiFi-enabled devices: mobile phones, laptopos, PDAs • VoIP applications: Skype, Yahoo Messenger, MSN Messenger, Linphone… • However, providing good voice quality is a challenging task due to several factors • Medium access contention, radio channel dynamics, variable loss rate, delay, jitter, etc… Beijing
Motivations (II) • Some are out of the control of a single STA… • wired part of the e2e connection • Round trip delay, packet dropping in congested router, • wireless part of the e2e connection • medium contention, radio signal quality, interference level • … while others are under control of the STA • application level • voice codec, playout buffer scheme, error concealment techniques,… • MAC/PHY level • modulation scheme, retry limit, buffer size, contention window, … Beijing
Aim of the work • Goal: providing good quality of VoIP over WiFi under varying connection conditions • Method: Adaptive Parameters Optimization Scheme • Cross-layer iterative adaptation of system parameters • Basic idea: estimate, foresee, select • Estimate factors that you cannot control • current system state (focused on wireless part only) • Foresee what you would get by acting on the factors that you can control • QoS for different (MAC) parameters setting by using a mathematical model of the system • Select the setting that maximizes QoS • Features: non cooperative, standard compliant, modular Beijing
APOS architecture = Fixed parameters vector (Codec, Playout buffer delay) = Tuneable parameters vector (R, rmax) = System state estimate (Ploss, Te2e) MSE = Medium State Estimation WLM = Wireless Link Model QEB = Quality Evaluation Block APO = Adaptive Parameters Optimization Voice codec m RTP APOS architecture RQ UDP IP WLM QEB Opt Ploss APO n LLC MAC 802.11 n Te2e w MAC counters MSE PHY 802.11 Beijing
Parameters vectors (, ) • Vectors & include all controllable parameters • We distinguish between fixed parameters () • Parameters that hardly change in time • voice codec, playout delay, packet aggregation level, wired-path latency,… • …or that cannot be changed preserving std compliancy • contention window, transmission power, … • And tuneable parameters: =[rmax,R] • rmax = max retry limit • R = PHY transmission rate • We optimize over vector only though APOS can potentially apply to all the controllable parameters!!! Beijing
APOS architecture = Fixed parameters vector (Codec, Playout buffer delay) = Tuneable parameters vector (R, rmax) = System state estimate (Ploss, Te2e) MSE = Medium State Estimation WLM = Wireless Link Model QEB = Quality Evaluation Block APO = Adaptive Parameters Optimization Voice codec m RTP APOS architecture RQ UDP IP WLM QEB Opt Ploss APO n LLC MAC 802.11 n Te2e w MAC counters MSE PHY 802.11 Beijing
System state vector () • System state vector shall… • summarize the collective effect of factors that cannot be controlled • be almost invariant to single STA parameters setting • We set =[Pcoll, TB, SNR] where • Pcoll: Collision probability • TB : Channel busy period • SNR: Signal to Noise Ratio MAC factors PHY factor Beijing
MSE: Medium State Estimate • Pcoll and TB can be directly obtained from MAC counters/measuraments • standard management information base (MIB) • NTs: # ack.ed MSDU tx by the STA • NTf: # non ack.ed MSDU tx by the STA • NRs: # received data frames with valid FCS • NRf: # received data frames with invalid FCS • channel occupancy statistics seen by the STA • NIs: # of idle slots • CB: overall channel busy time • CBo: channel busy time due to own tx The state vector is periodically estimated by the MSE block by using locally available information Beijing
SNR can be determined from MAC counters + basic probability properties: + pre-computed PHY performance curves Psnr MSE: Medium State Estimate Beijing
APOS architecture = Fixed parameters vector (Codec, Playout buffer delay) = Tuneable parameters vector (R, rmax) = System state estimate (Ploss, Te2e) MSE = Medium State Estimation WLM = Wireless Link Model QEB = Quality Evaluation Block APO = Adaptive Parameters Optimization Voice codec m RTP APOS architecture RQ UDP IP WLM QEB Opt Ploss APO n LLC MAC 802.11 n Te2e w MAC counters MSE PHY 802.11 Beijing
WLM: Wireless Link Model • WLM feeds the QEB with the expected packet loss rate (Ploss) and average end to end delay (Te2e) at the varying of the <> input vectors • We assume that wired-path delay and losses are negligible • however, the model can accommodate these factors by using, for instance, RTCP reports • Te2e is mainly due to the wireless link delay and the playout buffer • Ploss is given by frame dropped by the 802.11 card and frames arriving after their playback time • Assuming that the buffering time buff is given, the WLM outputs depend on the wireless link losses and delay only! Beijing
Wireless link delay • Goal: estimate mean ms, and variance s2 of the system time • Time taken by a voice packet to cross the wireless link • Method: model the wireless link as a D/G/1 queue-server system where • customers MPDUs generated by the upper layers • arrival rate frame-generation rate of the voice codec (fixed) • server MAC entity • service time y time taken by the MAC entity to process a MPDU (either delivering it to the peer unit or dropping it afterrmax unsuccessful tx attempts) • We assume {yj} are i.i.d r.v. also independent of the arrival process • Complete statistical analysis is available in the literature [Servi-’86] but requires roots search for complex polynomial! • not suitable for portable devices (as cel. phones) • We prefer to relinquish the complete statistic in favour of a simpler (though less accurate) estimate of first and second order delay statistics… Beijing
Service time statistics (1/2) • Given [Pcoll,TB,SNR] , [R,rmax] and [L,...] the service time is given by • Working this expression we get* the 1st, 2nd and 3rd-order moments of y • my=E[y] • My=E[y2] • My(3)=E[y3] Successful tx time d=1 if Pck drop Failed tx time s(i)=1 if success after i failures, s(i)=0 otherwise # failures before success h-th backoff stage Failed tx time * See [Zanella, De Pellegrini, ComLet05] Beijing
Service time statistics (2/2) just a flavour of the results (details in the paper) Beijing
Wireless link delay • System time s can be expressed as • x: number of customers (MPDUs) in the system at the arrival epoch • y’: residual service time of the (possible) customer in service at the arrival epoch • H(x) : Heaviside function • taking expectations we finally get • statistical mean (ms): • statistical power (Ms): • = my = Pr[x > 0] (load factor) • whereas, applying renewal theorem, we get: Beijing
Packet losses • Losses due to the wireless link • Losses due to playout underrun • Pbuff & delay jitter ss are related through the Chebyshev bound* • Hence, Pbuffcan be estimated as • Overall losses Beijing
APOS architecture = Fixed parameters vector (Codec, Playout buffer delay) = Tuneable parameters vector (R, rmax) = System state estimate (Ploss, Te2e) MSE = Medium State Estimation WLM = Wireless Link Model QEB = Quality Evaluation Block APO = Adaptive Parameters Optimization Voice codec m RTP APOS architecture RQ UDP IP WLM QEB Opt Ploss APO n LLC MAC 802.11 n Te2e w MAC counters MSE PHY 802.11 Beijing
QEB: Quality Evaluation Block MOS countours • The QEB implements the utility function Q proposed in [Boutr.03] • inspired by the E-Model • ITU-T recommendations G.107 and G.113 • R=Q(vcodec, Ploss,Te2e) • R can be mapped to Mean Opinion Score (MOS) Ploss Te2e [ms] [Boutr.03] C. Boutremans and J.-Y. Le Boudec, “Adaptive joint playout buffer and fec adjustement fot internet telephony,” inINFOCOM2003 Beijing
APOS architecture = Fixed parameters vector (Codec, Playout buffer delay) = Tuneable parameters vector (R, rmax) = System state estimate (Ploss, Te2e) MSE = Medium State Estimation WLM = Wireless Link Model QEB = Quality Evaluation Block APO = Adaptive Parameters Optimization Voice codec m RTP APOS architecture RQ UDP IP WLM QEB Opt Ploss APO n LLC MAC 802.11 n Te2e w MAC counters MSE PHY 802.11 Beijing
APO: Adaptive Parameters Optimization • do forever • MOSopt=0 • get =[Pcoll, TB, SNR] from MSE • for =[rmax,R] in parameter space do • compute [Ploss,Te2e]=WLM() • compute MOS = Q(Ploss,Te2e) • If MOS > MOSopt, • MOSopt = MOS • opt = • endif • endfor • endo Beijing
Mod Sim Mod Sim SNR=14 dB R =18 Mbps Ploss SNR=30 dB R =54 Mbps contending STAs Model Validation MSE: Medium State Estimator validation Estimated Pcoll and Perr Sim R =54 Mbps SNR = 20 dB contending STAs SNR=14 dB R =18 Mbps Te2e [ms] SNR=30 dB R =54 Mbps WLM: Wireless Link Model validation Beijing contending STAs
Results • Theoretically optimal n setting in the w space • TB fixed • Optimal R and rmax depend on both Pcoll, • with low Pcoll, rate adaptation can be more aggressive • with high SNR, rmax strongly depend on Pcoll Beijing
Parameters optimization permit to maintain good MOS in many situations Red lines: std param.s setting Black lines: APOS Results • However, estimation & model errors may penalize the performance gain especially with few users Beijing
Conclusions • APOS framework is a stand-alone, std compliant solution • mathematical model based on of network status information locally available in commercial devices • APOS enhances VoIP performance by cycling over three steps • 1) estimate the contention level and quality of the wireless medium • 2) model the effect of parameters tuning on e2e QoS • 3) select the best configuration for the current medium status • Optimization can be performed on any subset of tuneable parameters • We reported only R & rmax optimization, but we also tested playout buffer, voice codec and so on... • Although parameters might be tuned independently one another (as done by today rate adaptation algorithms), joint optimizing of multiple parameters yield much better results! • APOS scheme is specialized to voice application, though the general framework might be adapted to other QoS services Beijing