Minutes for AQM at IETF-91
minutes-91-aqm-1
Meeting Minutes | Active Queue Management and Packet Scheduling (aqm) WG | |
---|---|---|
Date and time | 2014-11-10 23:00 | |
Title | Minutes for AQM at IETF-91 | |
State | Active | |
Other versions | plain text | |
Last updated | 2014-11-11 |
minutes-91-aqm-1
****************************************************** AQM Agenda IETF 91 in Honolulu, HI, USA Monday, November 10, 2014, 13:00-15:00 HAST ****************************************************** WG status --------- 13:00 Agenda bashing AQM status Process for adopting algorithms Chairs 10 min Recommendations draft near done. Five items recently adopted (see slides) WG items -------- 13:10 draft-ietf-aqm-ecn-benefits Michael Welzl 10 min Pitfalls listed in latest version. Aim for WGLC at Dallas, add Mirja Kühlewind: should there be a recommendation to use ECN? As it stands the conclusion seems a bit weak. Michael Welzl: Opposed this, such a recommendation would have to be specific on how exactly ECN should be used, we can't say how to implement; document avoids that ? from Google: but you have a statement , Andrew McGregor Steve Padgett: Remove the statement about routers marking packets in congestion. Andrew McGregor: remove the statement - cover this in another document. 13:20 draft-ietf-aqm-eval-guidelines Naeem Khademi et. al. 40 min (slide 3) Fred Baker: Do you have specific AQM algorithms in mind that cannot support ECN? We want the AQM to be compatible with TCP. Naeem Khademi: We wanted to make it possible to document an AQM without necessarily having to document all the ECN parts. Fred: I wonder if were designing incompatible ways to set ECN depending on which algorithm you choose. (..) David Black: Allowing non-ECN support is not a good way ECN; what is the concern? Naeem: RFC says should mark where you drop. Else you must specify how. Mirja: the requirement for ECN should be SHOULD, so that if you don't do it you have to reason it. Naeem: Probably we need to change that to at least a SHOULD. Andrew: in an AQM algorithm an ECN-mark is not drop-equivalent. Question to be answered in designing the algorithm. How does it work with that between different algorithms is also a question. David: One the one hand we need some queue managers that do the right thing. Flip side is that there are proposals to do clever things with ECN. Those ought to be out of scope. <???>: We need a definition of congestion levels - suggestion of using packet loss rate is appropriate. Rong Pan: question about congestion levels. Depends on link speed. What is the proposed test scenario? Naeem: we need to come up with a better definition of congestion levels. Instead of having static number of flows and mapping to congestion levels depending on link speed. Equation that would tell you how many flows means what. Rong Pan: Drop percentage is a better indication. Andrew: I can give you public paper that is about comparing drop rate on AQM to what you would expect given the arrival process into a droptail queue. (..) but there is a way of disentanglement. ### Richard Scheffenegger: Please send this reference to the list. Andrew: Will send. Bob Briscoe: UDP CBR (slide 4) - as another example, unresponsive UDP VBR should be there too. Fred: Another important part is how bursty a video comes out. A burst of packets for an entire video frame can do really bad things to competing traffic. Bob: If video is competing with elastic traffic you want to keep the video going and the elastic traffic to be elastic. Bill Versteeg: It is important to talk about effect of bursts .. .queues .. within a queue .. talk to you later offline. 14:00 draft-ietf-aqm-pie Rong Pan 20 min Bob: code on de-randomization is wasted. There is a PhD thesis that proves you cannot de-randomize with 2 or more flows. Each flow has a random chance of a drop, so the drops will get the outliers back again.. Even when you look at the aggregate and you had removed them. Its fine for one flow. Rong Pan: Understand your point, this was for low multiplexing scenarios Yuchung Cheng: Why do you need to do de-randomization? Rong: sometimes in low multiplexing scenarios your TCP flow got hit twice. You can lose throughput on that flow. Yuchung: I think its the opposite. Normal standard TCP reacts once every RTT. If you drop it too close you only get to reduce the rate once. If you drop it an RTT apart then you get to reduce the rate twice. Rong: Also notice slow start when you drop too much, it may stop early. Yuchung: Yes, thats another issue. In this case you actually try to drop it a little bit further apart. Bill Versteeg: Were talking about different time scales here. This trying to spread it out 3, 4 or 5 RTTs or even further. Rong: we got first results, very encouraging. Michael ??: this is working in silicon? How can you know the milliseconds of the buffer delay? This says it's measured in bytes. Rong: were measuring at an interval above 10-20 ms, we cant go to the granularity of a couple of ms because the up and down of the link is too much Pat Thaler: You know the queue service rate. Michael ??: ?: Ive done it - if you have multiple queues that are being drained at different speeds. You never know how deep the queue is unless you measure ms. Andrew: What Rong is explaining is how to do that. You estimate the departure rate by observing bytes sent over an interval. You get an estimate of how deep the queue is. Doesnt have to be exact. David Dolson: PIE is a proportional controller. Why havent you formulated the math the way I learned it in school. Rong: I have David: So actual algorithm is derived from that but you just didnt present it? Rong: Yes. Detailed maths can be found in reference paper. David: You could characterize the algorithm in a step fashion, going from 1 to 2 MBit/s, it would be interesting to know how it reacts. Rong: Yes. But different from books we learn in school, this is not mechanical, everything is software based. So we can make things faster if we want. Thats why auto-tuning helps also. We can choose different control parameter, different configuration, different time. Jana Iyengar: Willing to send paper to list. ### Rong: Sure. But after published draft if I receive comments about inaccuracy and improvements Id really appreciate that. Richard: who would be willing to review this? Jana and Fred. ### 14:20 draft-ietf-aqm-codel Andrew McGregor 20 min Asking for editorial checking - this is the revised version of the original Kathy Nicoles draft. Also need to get Van's technical updates and tweaks to the algorithm, but no date for that. Probably before the next IETF in Dallas. Document should serve as a reference document for derived mechanisms. Bob: I sent an email some time ago to Van and Cathy about a couple of questions and never got a reply. Jana: I will follow up and talk to Van, and post the reply to the list also. Algorithm Proposals ------------------- 14:40 draft-hoeiland-joergensen-aqm-fq-codel Toke Hoeiland-Joergensen 20 min Rong Pan: When a queue becomes empty, that queue is removed: what is the dequeue mechanism here? Do you hold it for a reasonable amount of time? When you have a new flow, how long till you de-queue? Toke: Youre talking about potential for lock-out. If you manage to hit a queue with packets so that it goes away and you could have it perpetually de-prioritized. That can not happen because the empty queue goes into the old flows, before being deleted. There they keep an empty queue for a cycle so it keeps then in the round-robin. Rong: Does this depend on how many competing flows are there Toke: The hash is random so its very hard to predict which queue you are going to end up in, though youd have to burst a lot of packets. The effect is even worse on a FIFO or normal AQM queue. Rong: Ill ask offline Bob: You say would be better to have more queues than SFQ so there is less chance of collisions. The more empty queues you have the more likely you are to start taking bandwidth away of others. Toke: only if they are active Bob: you can have 1000 first packets then it will be long time for the old flows to get serviced again. Seems to be a rather arbitrary distinction Toke: you cant get worse behavior than with a FIFO queue Bob: you could, you could get lock-out Andrew: two little subtleties here. You cant completely lock them out. When a queue flow is removed from the old flows list, CoDel state is not deleted, CoDel state still remains valid, for another packet arrives to the queue. It doesnt reset the CoDel state until it knows that there hasnt been a packet in the queue for a (very) long time (seconds). Richard: Who has read this latest version of the draft? Show of hands? About 4-6 people Richard: What is the WG opinion? Decouple scheduling from AQM in this draft as was suggested or keep it together? Andrew: Id like to adopt it, and keep it in its present form. While the idea of decoupling scheduling from AQM is a good idea, from the point of view of documenting whats out there it would be good to have the document as it stands. Fred: I agree with that. Decoupling could be helpful for long delay paths. Almost any AQM algorithm hits its limits; being able to turn off that thing in favor of e.g. tail drop would perhaps be useful. Bill Versteeg: We should document existing code. In moving towards FQ scheme the good news is we use the same structure and good basis for generic queuing algorithm. Jana: The draft quite nicely documents interfaces between AQM and de-queue mechanism. Toke: would be quite doable to separate it out in the document. Rong: But the implementation of FQ and Codel is quite intervened. Andrew: implementation is deeply entangled but thats because of the way its written. Conceptually it could be decoupled. Rong: Do I understand this correctly that CoDel and FQ_CoDel are together? Andrew: in Linux; thats an implementation artifact, theyre not conceptually entangled. In principle you could write an implementation where any AQM mechanism could be plugged in. Toke: Linux has an implementation of CoDel by itself and the heavily entangled FQ_CoDel implementation Jana: the implementation entanglement is a feature, not a bug. But in terms of features and documentation we want to clearly disambiguate where interfaces are. Andrew: It would be much slower if it were coded without the entanglement, but thats just an implementation consideration. Richard: Should this be adopted for a WG item - strong hum in favor, no hum against. Jana: quick comment. If CoDel was accepted as well then descriptions could be eliminated from this draft and replaced by references to CoDel in the FQ-Codel draft. Richard: need additional WG feedback on draft-ietf-aqm-fq-implementation Fred: yes