<div dir="ltr">Dear Ingemar and all, <div><br></div><div>I hope not to hijack the topic, but I would like to add some bits to the interesting HAS/DASH </div><div>discussion you bootstrapped.</div><div>Regarding the performance of HAS/DASH adaptive streaming control algorithm, the reason for the </div><div>poor performance of rate-based algorithms is due to the ON/OFF behaviour of the clients (i.e. video clients</div><div>insert idle periods to control the buffer and concurrent TCP flows can take advantage of this). </div><div>This phenomenon was first uncovered in the IMC 2012 paper that Te-Yuan et al. named "the downward </div><div>spiral effect" <span style="line-height:1.5">and is also experimentally shown in the following paper in the case of several "rate based" algorithms</span></div><div>(sorry for the advertisement ;)) <span style="line-height:1.5">where we proposed a buffer-based adaptive streaming control algorithm</span><span style="line-height:1.5">:</span></div><div><span style="line-height:1.5"><br></span></div><div><span style="line-height:1.5"><a href="http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf">http://c3lab.poliba.it/images/a/a1/Elastic-pv2013.pdf</a></span><br></div><div><span style="line-height:1.5">L. De Cicco, V. Caldaralo, V. Palmisano, and S. Mascolo</span><br></div>ELASTIC: a Client-side Controller for Dynamic Adaptive Streaming over HTTP (DASH)<br>Proc. of Packet Video Workshop 2013, San Jose, CA, USA, December 2013<br><br>A more theoretical explanation of rate-based and buffer-based approaches can be found here<div> where some properties of hysteresis buffer-based controllers are shown:</div><div><br></div><div><a href="http://c3lab.poliba.it/images/b/b1/Acc2015.pdf">http://c3lab.poliba.it/images/b/b1/Acc2015.pdf</a><br></div><div><span style="line-height:1.5">Giuseppe Cofano, Luca De Cicco, Saverio Mascolo</span><br></div><div>Characterizing Adaptive Video Streaming Control Systems<br>Proc. of American Control Conference (ACC 2015), Chicago, USA, July 1-3 2015<br><div><br></div><div>Cheers,</div><div>--</div><div>Luca De Cicco</div><div>Assistant Professor</div><div>Politecnico di Bari</div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Mar 3, 2016 at 1:13 PM Ingemar Johansson S <<a href="mailto:ingemar.s.johansson@ericsson.com">ingemar.s.johansson@ericsson.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi<br>
<br>
Thanks for the pointer to the RITE paper, will read it carefully.<br>
Some comments on HAS or DASH<br>
The HAS behavior when subject to different AQMs and other competing background traffic, depends heavily the rate control algorithm.<br>
Investigations we have done and also e.g. the Netflix papers and lately also the BOLA paper (link below) shows that rate based algorithms are more easily starved out by competing traffic than the buffer level based algorithms. The bufferbased algorithms (Netflix, BOLA) are more opportunistic and TCP is more allowed to work like large file downloads when the links are fully utilized. Rate based algorithms on the other hand can more easily end up in a vicious circle, a low download rate is detected, so the next segment requested is with a reduced rate, other traffic will grab a larger share, and this repeats itself until the lowest rate is reached.<br>
This is elaborated upon in the paper "A Buffer-Based Approach to Rate Adaptation: Evidence from a Large Video Streaming Service" by Te-Yuan Huang <a href="http://et.al" rel="noreferrer" target="_blank">et.al</a>.<br>
I don't have full insight how MS Silverlight operates so I cannot quantify it is rate based or buffer based.<br>
<br>
BOLA : <a href="http://arxiv.org/pdf/1601.06748.pdf" rel="noreferrer" target="_blank">http://arxiv.org/pdf/1601.06748.pdf</a><br>
<br>
/Ingemar<br>
<br>
> -----Original Message-----<br>
> From: Fred Baker (fred) [mailto:<a href="mailto:fred@cisco.com" target="_blank">fred@cisco.com</a>]<br>
> Sent: den 2 mars 2016 19:09<br>
> To: Dave Täht<br>
> Cc: <a href="mailto:aqm@ietf.org" target="_blank">aqm@ietf.org</a>; <a href="mailto:bloat@lists.bufferbloat.net" target="_blank">bloat@lists.bufferbloat.net</a><br>
> Subject: Re: [aqm] [Bloat] review: Deployment of RITE mechanisms, in use-<br>
> case trial testbeds report part 1<br>
><br>
><br>
> > On Feb 27, 2016, at 11:04 AM, Dave Täht <<a href="mailto:dave@taht.net" target="_blank">dave@taht.net</a>> wrote:<br>
> ><br>
> > <a href="https://reproducingnetworkresearch.wordpress.com/2014/06/03/cs244-" rel="noreferrer" target="_blank">https://reproducingnetworkresearch.wordpress.com/2014/06/03/cs244-</a><br>
> 14-confused-timid-and-unstable-picking-a-video-streaming-rate-is-hard/<br>
> ><br>
> >>   o the results are very poor with a particular popular AQM<br>
> ><br>
> > Define "very poor". ?<br>
><br>
> Presuming this is Adaptive Bitrate Video, as in Video-in-TCP, we (as in Cisco<br>
> engineers, not me personally; you have met them) have observed this as<br>
> well. Our belief is that this is at least in part a self-inflicted wound; when the<br>
> codec starts transmission on any four second segment except the first, there<br>
> is no slow-start phase because the TCP session is still open (and in the case of<br>
> some services, there are several TCP sessions open and the application<br>
> chooses the one with the highest cwnd value). You can now think of the<br>
> behavior of the line as repeating a four phase sequence: nobody is talking,<br>
> then one is talking, then both are, and then the other is talking. When only<br>
> one is talking, whichever it is, its cwnd value is slowing increasing - especially<br>
> if cwnd*mss/rtt < bottleneck line rate, minimizing RTT. At the start of the<br>
> "both are talking" phase, the one already talking has generally found a cwnd<br>
> value that fills the line and its RTT is slowly increasing. The one starting sends<br>
> a burst of cwnd packets, creating an instant queue and often causing one or<br>
> both to drop a packet - reducing their respective cwnd values. Depending on<br>
> the TCP implementation in question at the sender, if the induced drop isn't a<br>
> single packet but is two or three, that can make the affected session pause<br>
> for as many RTO timeouts (Reno), RTTs (New Reno), or at least retransmit<br>
> the lost packets in the subsequent RTT and then reduce cwnd by at least that<br>
> amount (cubic) and maybe half (SACK).<br>
_______________________________________________<br>
aqm mailing list<br>
<a href="mailto:aqm@ietf.org" target="_blank">aqm@ietf.org</a><br>
<a href="https://www.ietf.org/mailman/listinfo/aqm" rel="noreferrer" target="_blank">https://www.ietf.org/mailman/listinfo/aqm</a><br>
</blockquote></div>