[{"author": "Jason Livingood", "text": "<p>First post! Ha <span aria-label=\"grinning\" class=\"emoji emoji-1f600\" role=\"img\" title=\"grinning\">:grinning:</span></p>", "time": "2024-12-12T16:03:10Z"}, {"author": "Brian Trammell", "text": "<p>hi Jason!</p>", "time": "2024-12-12T16:04:39Z"}, {"author": "Ted Hardie", "text": "<p>Chairs, do we have a note-taker?</p>", "time": "2024-12-12T16:04:58Z"}, {"author": "Ted Hardie", "text": "<p>Raising a problem, but I can help out if others are willing</p>", "time": "2024-12-12T16:05:30Z"}, {"author": "Martin Duke", "text": "<p>I can do it</p>", "time": "2024-12-12T16:05:58Z"}, {"author": "Brian Trammell", "text": "<p>(might also end up lurking in the chat, I have like ten minutes of workable voice left)</p>", "time": "2024-12-12T16:06:12Z"}, {"author": "Hang Shi", "text": "<p>Is the signal in SCONE superset of TRAIN?</p>", "time": "2024-12-12T16:11:31Z"}, {"author": "Brian Trammell", "text": "<p>hang: Yes,</p>", "time": "2024-12-12T16:11:50Z"}, {"author": "Brian Trammell", "text": "<p>in the sense you can express everything in scone that you can in train</p>", "time": "2024-12-12T16:12:02Z"}, {"author": "Brian Trammell", "text": "<p>(unless train defines non-numeric signal values, in which case no)</p>", "time": "2024-12-12T16:12:16Z"}, {"author": "Ted Hardie", "text": "<p>Note that one option here is to keep a restricted set of bits, but defined them in terms of feedback in a feedback loop (actions rather than predefined values).  That means it is not unbounded semantically, but not going to bit-rot as speeds go up.</p>", "time": "2024-12-12T16:12:44Z"}, {"author": "Gorry Fairhurst", "text": "<p>@Ted, interesting, but this needs to be coordinated between network providers and endpoimnts</p>", "time": "2024-12-12T16:15:40Z"}, {"author": "Brian Trammell", "text": "<p>\"varlen is not that much more expensive\" but I have heard (in other contexts) that varlen might make certain implementations simply infeasible</p>", "time": "2024-12-12T16:15:41Z"}, {"author": "Brian Trammell", "text": "<p>(\"offet fixedness\" is definitely a deployability flag)</p>", "time": "2024-12-12T16:15:55Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>I think we actually don't know fully yet how much bits we need. E.g. an averaging interval might be some useful additional information. We need to do a bit more experimentation with that but I think flexibility might be key to be future proof.</p>", "time": "2024-12-12T16:17:13Z"}, {"author": "Wesley Eddy", "text": "<p>+1 Mirja</p>", "time": "2024-12-12T16:17:29Z"}, {"author": "Ted Hardie", "text": "<p>@Gorry they need to agree what the action means, but I think there can be some fuzziness on the actual measurement.  So if you have a signal that means, grossly \"reduce by 10%\" differences in the way the measure the overall percentage probably aren't important at the \"choose the next lower video rate\" decision.</p>", "time": "2024-12-12T16:18:22Z"}, {"author": "Gorry Fairhurst", "text": "<p>@Ted, for sure we don't need much accuracy, but do need a wide range.</p>", "time": "2024-12-12T16:19:44Z"}, {"author": "Gorry Fairhurst", "text": "<p>+1 Mirja on maybe needing one or more params/flags</p>", "time": "2024-12-12T16:20:22Z"}, {"author": "Hang Shi", "text": "<p>@Ted, I am afraid there are many different ways that the application can adpat to the signal. And applications can evolve fast.</p>", "time": "2024-12-12T16:20:41Z"}, {"author": "Matt Joras", "text": "<p>It would also be a shame if that range was completely fixed in time, since we are making decisions based entirely on a snapshot of video products as they exist today.</p>", "time": "2024-12-12T16:20:48Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>Actually I think we send something slower than TCP because we explicitly don't do congestion control</p>", "time": "2024-12-12T16:23:14Z"}, {"author": "Gorry Fairhurst", "text": "<p>I don't see why this is ONLY downward, the envelope can indeed be increased for a mobile service.</p>", "time": "2024-12-12T16:23:14Z"}, {"author": "Brian Trammell", "text": "<p>on one hand, yes, on the other hand there are bandwidth limitations imposed by the fact that most video consumption involves someone's eyes in the loop :)</p>", "time": "2024-12-12T16:23:27Z"}, {"author": "Hang Shi", "text": "<p>ISTM the signal and the response can only be a rough consensus between the applicaiton and network.</p>", "time": "2024-12-12T16:23:28Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>what Ted says seem to be re-inventing ECN to me.</p>", "time": "2024-12-12T16:23:59Z"}, {"author": "Martin Duke", "text": "<p>@Ted my summary of your comment is not great. PTAL</p>", "time": "2024-12-12T16:24:22Z"}, {"author": "Lucas Pardue", "text": "<p>we could call it explicit enshittification notification :joy</p>", "time": "2024-12-12T16:24:24Z"}, {"author": "Matt Joras", "text": "<p>+1 Mirja</p>", "time": "2024-12-12T16:24:24Z"}, {"author": "Gorry Fairhurst", "text": "<p>+1 Mirja. The CC will react. This isn't the problem in SCONE.</p>", "time": "2024-12-12T16:24:44Z"}, {"author": "Brian Trammell", "text": "<p>on feedback: in the ABR case, isn't the feedback at the H3 layer, where the client encodes the rate of the next block in the URL?</p>", "time": "2024-12-12T16:25:32Z"}, {"author": "Lucas Pardue", "text": "<p>thanks for doing this work Marcus, it helped me for sure</p>", "time": "2024-12-12T16:25:39Z"}, {"author": "Chris Box", "text": "<p>I can see the value in sending an upward signal, i.e. \"There is now a lot more bandwidth here, so now would be a good time to prefetch/increase quality/etc\".</p>", "time": "2024-12-12T16:26:11Z"}, {"author": "Abhishek Tiwari", "text": "<p>Good point @Chris Box</p>", "time": "2024-12-12T16:26:41Z"}, {"author": "Brian Trammell", "text": "<p>+1 chris</p>", "time": "2024-12-12T16:26:50Z"}, {"author": "Matt Joras", "text": "<p>+1 Chris. Another obvious reason is switching from XG to X+1G access network, or something like that</p>", "time": "2024-12-12T16:27:16Z"}, {"author": "Kevin Smith", "text": "<p>+1 Chris. Otherwise my feeling (as a cellular operator) is that the quick win is throughput advice when the user is in certain conditions where they will struggle and where that is unlikely to change within a video session (cell edge, indoors) .  Whereas I'd rather see e.g. L4S tackle the issue of rapidly varying signal conditions (urban environment).</p>", "time": "2024-12-12T16:27:42Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>the throughput advise rate could also indicate a higher rate. So I think that is currently implicitly covered. But I agree that is a really useful signal that we should make sure to retain.</p>", "time": "2024-12-12T16:28:07Z"}, {"author": "Hang Shi", "text": "<p>For the upword signal, it may be useful to add how long the high bandwidth can last to help the application determine the bitrate of prefetch</p>", "time": "2024-12-12T16:29:06Z"}, {"author": "Ted Hardie", "text": "<p>I think \"upward signal\" is a bit confusing.  Do you mean from the shaper to the media server?</p>", "time": "2024-12-12T16:30:15Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>I wondering if the question on spoofing is actually less of a problem is the scone network devise is in the access network? Do we need to consider that deployment, which is the case we care about most for mobile network, somehow separately?</p>", "time": "2024-12-12T16:30:40Z"}, {"author": "Brian Trammell", "text": "<p>I intepreted \"upward\" =&gt; \"you can use a higher bitrate\"</p>", "time": "2024-12-12T16:30:52Z"}, {"author": "Ted Hardie", "text": "<p>Ah, thanks.</p>", "time": "2024-12-12T16:31:00Z"}, {"author": "Gorry Fairhurst", "text": "<p>@Ted, from network element to the client i.e., who controls the media fetch policy</p>", "time": "2024-12-12T16:31:15Z"}, {"author": "Hang Shi", "text": "<p>@Mirja, Why does deployment in the mobile network matter? The attacker can send spoofed signal from anywhere in the internet, right?</p>", "time": "2024-12-12T16:34:18Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>but you can filter them at access network ingress</p>", "time": "2024-12-12T16:35:03Z"}, {"author": "Nick Banks", "text": "<p>How does the network element in SCONE know which CID to use in the packets it sends?</p>", "time": "2024-12-12T16:35:17Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>the same as the end-2-end</p>", "time": "2024-12-12T16:35:35Z"}, {"author": "Martin Duke", "text": "<p>@Matt I concede that TRAIN doesn't provide any authentication to the network elements, but it does to the endpoints, no?</p>", "time": "2024-12-12T16:35:37Z"}, {"author": "Hang Shi", "text": "<p>Firewall can be deployed regardless of the access network technology</p>", "time": "2024-12-12T16:35:38Z"}, {"author": "Jonathan Lennox", "text": "<p>It's sent on the flow's 5-tuple so it looks like the actual packets from the QUIC flow, unless you're specifically looking for SCONE packets on your ingress</p>", "time": "2024-12-12T16:35:50Z"}, {"author": "Nick Banks", "text": "<p>That assumes the endpoint can determine the CID from e2e traffic? How does it even know the CID length in those short header packets?</p>", "time": "2024-12-12T16:36:21Z"}, {"author": "Jonathan Lennox", "text": "<p>I think in TRAIN the inserted TRAIN packets had to be long header?</p>", "time": "2024-12-12T16:36:58Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>yes, scone and train are both long header and then you know the CID and can map it to the e2e traffic</p>", "time": "2024-12-12T16:37:44Z"}, {"author": "Nick Banks", "text": "<p>For TRAIN, the network doesn't have to worry about building packets that will correctly reach the peer. For SCONE, it does, but I still am not sure how they would do that reliably</p>", "time": "2024-12-12T16:37:58Z"}, {"author": "Matt Joras", "text": "<p>@Martin my point is that there's no compelling protection from spoofing. A spoofer just needs to capture packets and then insert TRAIN as it wants.</p>", "time": "2024-12-12T16:38:03Z"}, {"author": "Mohamed Boucadair", "text": "<p>@Mirja, on the filtering thing: this means that the network has to inspect every incoming QUIC packet, etc. That's an extra load/work/network impact. Not sure how this is viable.</p>", "time": "2024-12-12T16:38:22Z"}, {"author": "Martin Duke", "text": "<p>If it is in the packet forwarding path, in which case it is in effect a traffic shaper, no?</p>", "time": "2024-12-12T16:38:42Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>in scone there are also packets from the client to the network to indicate scope support</p>", "time": "2024-12-12T16:38:47Z"}, {"author": "Brian Trammell", "text": "<p>so the fundamental question here is \"who controls the update frequency (and therefore the update latency)\"</p>", "time": "2024-12-12T16:39:01Z"}, {"author": "Jonathan Lennox", "text": "<p>And it assumes there's no valid case for SCONE signals coming from outside the access network, which I'm not sure I'm willing to commit to.</p>", "time": "2024-12-12T16:39:01Z"}, {"author": "Matt Joras", "text": "<p>@Martin exactly, so what is the benefit from spoofing?</p>", "time": "2024-12-12T16:39:07Z"}, {"author": "Nick Banks", "text": "<p>In the case where there is migration, the network element won't be able to correlate that to any previous connection. It will have no way to know how long the CID is in those short header packets, and therefore it won't have any way to know how to build a long header packet correctly.</p>", "time": "2024-12-12T16:39:58Z"}, {"author": "Martin Duke", "text": "<p>With SCONE, a node that can observe the path but not drop can send packets</p>", "time": "2024-12-12T16:39:59Z"}, {"author": "Jonathan Lennox", "text": "<p>There's a difference between being able to observe the packets and being able to modify the packets (the latter being stronger proof that you could also drop or delay them).</p>", "time": "2024-12-12T16:40:28Z"}, {"author": "Matt Joras", "text": "<p>with TRAIN, if you can observe and send packets, you can spoof TRAIN.</p>", "time": "2024-12-12T16:40:50Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>@med I'm not saying the network has to filter but if it would send packets with the same 5-tuple itself there would be nothing that would filter it out before the client. while for not access network scenarios you might have a problem because of ingress filtering.</p>", "time": "2024-12-12T16:40:53Z"}, {"author": "Hang Shi", "text": "<p>+1 on migration</p>", "time": "2024-12-12T16:40:58Z"}, {"author": "Martin Duke", "text": "<p>@Matt no, a duplicate packet will fail processing</p>", "time": "2024-12-12T16:41:18Z"}, {"author": "Ziyang Xing", "text": "<p>+1 on migration</p>", "time": "2024-12-12T16:41:21Z"}, {"author": "Jonathan Lennox", "text": "<p>Matt: can you? I think you'd also have to be able to outrace the arrival of the valid packet.</p>", "time": "2024-12-12T16:41:25Z"}, {"author": "Jonathan Lennox", "text": "<p>Because of duplicate detection, as Marin says</p>", "time": "2024-12-12T16:42:39Z"}, {"author": "Jonathan Lennox", "text": "<p>At which point you're probably in the position to be able to delay packets.</p>", "time": "2024-12-12T16:42:57Z"}, {"author": "Brian Trammell", "text": "<p>yeah, you need endpoint renegotiation for cid change</p>", "time": "2024-12-12T16:43:08Z"}, {"author": "Zaheduzzaman Sarker", "text": "<p>I want to know the prompt for this picture ..</p>", "time": "2024-12-12T16:44:14Z"}, {"author": "Jonathan Lennox", "text": "<p>I'm wondering if a hybrid would work, where sufficient information is put into an exisitng-flow packet to be able to validate that the inserted packet is valid.  There isn't a lot of entropy space to play with though.</p>", "time": "2024-12-12T16:44:31Z"}, {"author": "Nick Banks", "text": "<p>One more question on the SCONE negotiation topic: Do we expect there to be some type of FIN here to let the network know it should <em>stop</em> sending SCONE packets?</p>", "time": "2024-12-12T16:44:54Z"}, {"author": "Brian Trammell", "text": "<p>nick: good question</p>", "time": "2024-12-12T16:45:19Z"}, {"author": "Hang Shi", "text": "<p>this reminds of SPUD/PLUS</p>", "time": "2024-12-12T16:46:17Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>\"baking proposals\" -&gt; really funny...</p>", "time": "2024-12-12T16:47:02Z"}, {"author": "Lucas Pardue", "text": "<p>funnily, I was reading <a href=\"https://datatracker.ietf.org/doc/html/rfc1025\">https://datatracker.ietf.org/doc/html/rfc1025</a> just this week</p>", "time": "2024-12-12T16:47:56Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>how about starting a new draft and merge the stuff we agree, rather than picking one to start with?</p>", "time": "2024-12-12T16:49:06Z"}, {"author": "Hang Shi", "text": "<p>+1 Mirja</p>", "time": "2024-12-12T16:49:26Z"}, {"author": "Zaheduzzaman Sarker", "text": "<p>Please take the proposal to the list and agree there what to do</p>", "time": "2024-12-12T16:50:28Z"}, {"author": "Martin Duke", "text": "<p>Can someone cover me while I get more coffee?</p>", "time": "2024-12-12T16:51:28Z"}, {"author": "Martin Duke", "text": "<p>(on the notes)</p>", "time": "2024-12-12T16:51:31Z"}, {"author": "Ted Hardie", "text": "<p>Will do</p>", "time": "2024-12-12T16:51:55Z"}, {"author": "Qin Wu", "text": "<p>thanks Ted</p>", "time": "2024-12-12T16:52:20Z"}, {"author": "Martin Duke", "text": "<p>@Ted, I'm back, thanks</p>", "time": "2024-12-12T16:54:03Z"}, {"author": "Matt Joras", "text": "<p>@Martin @Jonathan re: racing I think that's right, but having access to inject packets and read packets is already an strong position for an on path attacker.</p>\n<p>There is no protection inherent in TRAIN to say \"This packet is guaranteed to only have the TRAIN added by the endpoint\".</p>", "time": "2024-12-12T16:55:21Z"}, {"author": "Martin Duke", "text": "<p>I agree that the elements have no assurances</p>", "time": "2024-12-12T16:56:09Z"}, {"author": "Martin Duke", "text": "<p>but the signal will go to the receiver, which will toss the packet if TRAIN hasn't been negotiated</p>", "time": "2024-12-12T16:56:55Z"}, {"author": "Martin Duke", "text": "<p>the attacker can't even ascertain the advice</p>", "time": "2024-12-12T16:57:03Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>if the client did not send a scone packet first, it will also ignore all packets from the network</p>", "time": "2024-12-12T16:58:24Z"}, {"author": "Matt Joras", "text": "<p>What's the benefit of that? With SCONE, inherently there's no required participation of the destination endpoint. The client endpoint is the one that broadcasts it supports receiving the advice.</p>", "time": "2024-12-12T16:58:26Z"}, {"author": "Martin Duke", "text": "<p>well the benefit is that the data is more secure. the downside is it requires client and server cooperation</p>", "time": "2024-12-12T16:59:25Z"}, {"author": "Martin Duke", "text": "<p>or maybe that's a benefit, depending on your privacy perspective</p>", "time": "2024-12-12T16:59:43Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>not sure if that's actually more secure</p>", "time": "2024-12-12T16:59:47Z"}, {"author": "Matt Joras", "text": "<p>+1</p>", "time": "2024-12-12T16:59:51Z"}, {"author": "Martin Duke", "text": "<p>I'll compose an email on the list, we're being too noisy</p>", "time": "2024-12-12T17:00:24Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>thanks!</p>", "time": "2024-12-12T17:00:41Z"}, {"author": "Ted Hardie", "text": "<p>The benefit is that the client and server both are aware that the set of choices being made are affected by the existence of the shaper.  In some cases, the server might take actions to adjust the set of choices available, though that really comes in if you have the shaper able to communicate the constraint to the server as well as the client.  That was discussed at the IETF meeting, but it isn't in the proposals right now.</p>", "time": "2024-12-12T17:02:06Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>I don't see that as a real benefit because usually the server and client are under control of the same entity anyway</p>", "time": "2024-12-12T17:03:00Z"}, {"author": "Ted Hardie", "text": "<p>@Mirja then you never want this usable by a browser?</p>", "time": "2024-12-12T17:03:29Z"}, {"author": "Hang Shi", "text": "<p>can the client tell the server through HTTP layer?</p>", "time": "2024-12-12T17:03:36Z"}, {"author": "Matt Joras", "text": "<p>@Ted I don't think anyone intends the server to be using SCONE to change client behavior. it is giving the network the ability to change client behavior.</p>", "time": "2024-12-12T17:03:49Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>if we have a browser we need some new exposure interface anyway</p>", "time": "2024-12-12T17:03:58Z"}, {"author": "Matt Joras", "text": "<p>If the server wants to change client behavior it would use an application signal instead</p>", "time": "2024-12-12T17:04:02Z"}, {"author": "Martin Duke", "text": "<p>there are only so many browsers and I imagine they will all support this if we're successful</p>", "time": "2024-12-12T17:04:06Z"}, {"author": "Matt Joras", "text": "<p>and especially with TRAIN, why would a server restrict itself with 6 bits of signal when it can send arbitrary information in the encrypted envelope?</p>", "time": "2024-12-12T17:04:50Z"}, {"author": "Ted Hardie", "text": "<p>@Martin I agree, but the control of the browser and the service is not unified except in specific cases.  That's the point I was replying to.</p>", "time": "2024-12-12T17:04:55Z"}, {"author": "Ted Hardie", "text": "<p>@Matt because we're talking about the data it could get from the network element (though you could obviously have the client reflect it to the service over the encrypted channel, at the cost of some latency)</p>", "time": "2024-12-12T17:05:55Z"}, {"author": "Matt Joras", "text": "<p>Yeah I'm not sure that's so compelling in most real world video deployments. The \"endpoint\" server in a lot of cases is a \"dumb\" CDN node, not one that is actively participating in the video playback.</p>\n<p>So the client getting signals to the \"video endpoint\" often requires an application level signal anyway, rather than a signal just to the first hop.</p>", "time": "2024-12-12T17:07:44Z"}, {"author": "Ted Hardie", "text": "<p>That's a fair point.</p>", "time": "2024-12-12T17:08:39Z"}, {"author": "Zaheduzzaman Sarker", "text": "<p>I think the discussion should cover two aspects - 1) what the client needs from the network and 2) what the network can provide.</p>", "time": "2024-12-12T17:08:59Z"}, {"author": "Brian Trammell", "text": "<p>+1 zahed</p>", "time": "2024-12-12T17:10:50Z"}, {"author": "Lucas Pardue", "text": "<p>a lot of folks just use a library for their ABR stuff. Configuring it, slapping their own business logic outside. Common examples being dash.js, hls, js, exoplayer etc.</p>\n<p>The'y be running their own client-side logic for things like bandwidth estimation etc. So a survey of what they already use, and could take from the network rather than locally compute, might help us. Whether such a survey is already available in literature - I don't kn ow</p>", "time": "2024-12-12T17:13:50Z"}, {"author": "Lucas Pardue", "text": "<ul>\n<li>they being the libraries, doing stuff that app developers don't care much about</li>\n</ul>", "time": "2024-12-12T17:14:31Z"}, {"author": "Mohamed Boucadair", "text": "<p>I would add NRLP to the list. The required configuration to provide SCONE can be found at: <a href=\"https://github.com/boucadair/draft-xxx-ac-rate-policy-discovery/blob/main/example-nrlp-wire-format.md\">https://github.com/boucadair/draft-xxx-ac-rate-policy-discovery/blob/main/example-nrlp-wire-format.md</a></p>", "time": "2024-12-12T17:19:18Z"}, {"author": "Brian Trammell", "text": "<p>(+1, thanks for the last minute proposal and pulling this together!)</p>", "time": "2024-12-12T17:20:59Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>for performance impact there are two cases: if you do throttling today, probably the performance improves. If you just compare scone to doing nothing of course the is an impact but given this will usually be done close to the client in the access network, the impact is probably not bigger than other stateful things like NAT</p>", "time": "2024-12-12T17:28:35Z"}, {"author": "Zaheduzzaman Sarker", "text": "<p>That all for this virtual interim!! Things look promising from here .. :-)</p>", "time": "2024-12-12T17:29:10Z"}, {"author": "Martin Duke", "text": "<p>On time! great job, chairs</p>", "time": "2024-12-12T17:30:10Z"}, {"author": "Kevin Smith", "text": "<p>Thanks Brian and Qin and all the presenters :)</p>", "time": "2024-12-12T17:30:34Z"}, {"author": "Ian Swett", "text": "<p><a href=\"https://datatracker.ietf.org/doc/html/draft-rjt-scone-conformance-signal-00\">https://datatracker.ietf.org/doc/html/draft-rjt-scone-conformance-signal-00</a></p>", "time": "2024-12-12T17:31:00Z"}, {"author": "Marcus Ihlar", "text": "<p>Thanks everyone!</p>", "time": "2024-12-12T17:31:08Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>bye</p>", "time": "2024-12-12T17:31:18Z"}]