Subject: [LOOPS] Other WGs/RGs (Re: LOOPS meetings in May 2020, replacing IETF 107 side meetings)

From: Carsten Bormann <[email-masked]>
Date: Wed, 6 May 2020 00:07:18 +0200

On 2020-04-30, at 21:37, Carsten Bormann <[email-masked]> wrote:
> 
> (2) to look at about a dozen other WGs and RGs and agree what our technical relationship with them is going to be, e.g. "watch" (shared interests, but no specific exchange or mutual dependency envisioned now; could develop, though), "import" (specs that the other WG works on will be used by ours), and "export" (we could do some work that would benefit that other WG).  This will then be useful as input for a charter discussion.

I prepared a more detailed overview over related WGs and RGs at:

https://github.com/loops-wg/charter/blob/master/wg-rg-relations.md

This would be one of the agenda items of the LOOPS “design team meeting” in 41 hours, with a view of feeding back some (but not all) of the details into the charter.

Please send comments to me or to the list (or make a pull request if that is your thing).
I’m also copying the current text below in case commenting from the mail reader is easier for you.

Grüße, Carsten

## Relationship to Other WGs and RGs

This is an expanded version of the section of a similar name in the
proposed charter.  We'll develop this here and then make the needed
changes to the charter.

The objective here is to look at about a dozen other WGs and IRTF RGs
and agree what our technical relationship with them is going to be.

Note that the current version of this note does not address
interaction with other SDOs yet.

* To do: find out whether there we envision such interaction with
  other SDOs.

## Types of relationship

* "watch": shared interests, but no specific exchange or mutual dependency
envisioned now; could develop, though.
* "import": specs that the other WG works on will be used by ours.
* "export": we could do some work that would benefit that other WG.

## Working groups, Research Groups

* Name: TCPM, TSVWG, QUIC
* Work: Transport protocol innovations
* Issue in other group: What new transport protocol mechanisms provide
  benefits that cannot be had with a classical transport
* **Issue in LOOPS**: Develop the retransmission part of LOOPS (as well as
  possibly the reconstruction/FEC part) based on these innovations
* Type: Watch, potentially Import
* **Issue in LOOPS**: Are there new interactions between the LOOPS
  "transport" elements and the innovations in the upper layer transport
  protocols?
* Type: Watch

---

* Name: TCPM
* Work: RACK
* Issue in other group: (from draft-ietf-tcpm-rack-08:) ... develop a
   new TCP loss detection algorithm called RACK ("Recent
   ACKnowledgment").  RACK uses the notion of time, instead of packet
   or sequence counts, to detect losses, for modern TCP
   implementations that can support per-packet timestamps and the
   selective acknowledgment (SACK) option.  It is intended to be an
   alternative to the DUPACK threshold approach [RFC6675] ...
* **Issue in LOOPS**: Does LOOPS need to rely on a sequence-preserving
  path for efficient loss detection, or can we use some of the RACK
  work for more time-based loss detection?  How do we translate the
  TCP features used by RACK into features that are available in LOOPS?
* Type: Watch, potentially Import

---

* Name: MASQUE (WG to be, recent BOF 2020-03-24)
* Work: Embedding proxied flows into QUIC and HTTP/3
* Issue in other group: "Congestion Control over Congestion Control in
  case of UDP or IP proxying", i.e., when the proxied flows are UDP or
  IP (~ VPN), the interaction between end-to-end transport protocol
  control loops (congestion control) and the control loops run by QUIC
* **Issue in LOOPS**: Does LOOPS need to perform specific work to mitigate
  issues stemming from nested congestion control?  Note that the LOOPS
  segment is typically, but not always, significantly shorter than the
  end-to-end path, which might be similar in a MASQUE situation.
* Type: Watch

---

* Name: RMCAT
* Work: Congestion control for media flows
* **Issue in LOOPS**: Interactions between upper layer congestion control
  schemes in use for media and those in use on the LOOPS path segment
* Type: Watch

---

* Name: IPPM, TSVWG
* Work: Formats and algorithms for measurement
* **Issue in LOOPS**: What IPPM-defined formats and algorithms for
  measurement can we usefully import into the LOOPS measurement system
* Type: potentially Import
* To do: What came out of the
  draft-ietf-tsvwg-tunnel-congestion-feedback work?

---

* Name: NVO3, INTAREA, SPRING/6MAN
* Work: Tunnel encapsulation formats
* **Issue in LOOPS**: We need to follow the homes of tunneling protocols
  to which bindings are being defined, which depending on the choices
  of the WG may include NVO3 (Geneve), intarea (GUE), spring/6man
  (SRv6).
* Type: Import
* To do: There is no obvious home for GRE at this point, but GRE is
  another obvious choice for a tunneling protocol.

---

* Name: TSVWG
* Work: Advanced ECN
* Issue in other group: Agree on an approach for advanced ECN
* **Issue in LOOPS**: LOOPS can benefit from ECN both in the end-to-end
  traffic and in the LOOPS segment.
  The protocol may need to anticipate the developments on advanced ECN
  and adjust its usage of both classic and advanced ECN.  This may
  also influence how LOOPS makes use of RFC 6040 (Tunnelling of
  Explicit Congestion Notification).
* Type: Watch

---

* Name: DETNET, RAW
* Work: DETNET data plane, RAW, PREOF
* Issue in other group: Define a data plane (encapsulation) for
  replicating, eliminating duplicates, and potentially reordering
  traffic (PREOF).
  RAW extends this work to wireless networks.
* **Issue in LOOPS**: Can we integrate some of this work for
  retransmission and reconstruction?
* Type: Watch, potentially import
* **Issue in LOOPS**: Potentially (long term): Can we make some of the
  LOOPS components available in a way that is useful for DETNET and RAW?
* Type: Export

---

* Name: NWCRG (IRTF)
* Work: FEC formats and protocols
* Issue in other group: Define forward error correction (FEC) formats
  that provide good robustness, low reconstruction latency, low
  implementation complexity, low CPU requirements, low overhead
* **Issue in LOOPS**: How does the structure of these new formats and
  protocols influence the way LOOPS handles reconstruction?
* To do: Watch the patent claim thickets in this space
* Type: Watch, Import/Reference (specific schemes)

---

* Name: MAPRG (IRTF), ICCRG (IRTF)
* Work: Measurement, Congestion control
* Issue in other group: Do leading edge work in this space
* **Issue in LOOPS**: Benefit from that leading edge work
* Type: Watch

---

From: Liyizhou <[email-masked]>
Date: Wed, 6 May 2020 09:15:24 +0000

Hi Carsten,

That is a pretty complete list. Thanks for putting them together.

Please see inlines with [yz].

Yizhou

-----Original Message-----
From: LOOPS [mailto:[email-masked]] On Behalf Of Carsten Bormann
Sent: Wednesday, May 6, 2020 6:07 AM
To: [email-masked]
Subject: [LOOPS] Other WGs/RGs (Re: LOOPS meetings in May 2020, replacing IETF 107 side meetings)

Grüße, Carsten

This is an expanded version of the section of a similar name in the proposed charter.  We'll develop this here and then make the needed changes to the charter.

The objective here is to look at about a dozen other WGs and IRTF RGs and agree what our technical relationship with them is going to be.

Note that the current version of this note does not address interaction with other SDOs yet.

## Types of relationship

* "watch": shared interests, but no specific exchange or mutual dependency envisioned now; could develop, though.
* "import": specs that the other WG works on will be used by ours.
* "export": we could do some work that would benefit that other WG.

---

* Name: TCPM
* Work: RACK

[yz] 
Sequence number based loss detection is easier for LOOPS segment. LOOPS ingress does not rely on ACK clocking, so egress may generate less ACKs if everything is ok. Time-based loss detection would require more precise RTT monitoring which need quite frequent ACKs. So time-based loss detection may put a requirement on frequency/number of ACK generations. 

When a LOOPS segment has a severe packet re-ordering which confuses with packet loss, time-based loss detection is good to be employed.

There is another issue to be considered in LOOPS related to RACK. When interacting with RACK based end host sender, LOOPS egress has loose requirement to maintain the packet order when waiting for the lost packet to be recovered over the LOOPS segment.

[/yz]

---

[yz]
Currently LOOPS ingress from my understanding does not intend to do sending rate adjustment. The control is at the end host sender. LOOPS tries to do the minimum set of work in participating in the congestion control, i.e. via CE-marking.
If a full-function nested control loop (including sending rate adjustment at LOOPS ingress) in LOOPS is required, some active interaction between the end host and the LOOPS ingress node would be required. I do not think this is for the initial stage of LOOPS. We'd better start from the simple approach.
I did not follow MASQUE very closely, but it seems working between the sender and the proxy. Potentially would give us some hints on advanced features to be considered at LOOPS later stage.    
[/yz]
---

* Name: RMCAT

---

* Name: IPPM, TSVWG
[yz]
IPPM-defined ioam format intends to help network oam.  It puts a lot of effort in its trace option (pre-allocated trace and incremental trace). It is quite obvious that trace option is not appropriate for LOOPS since LOOPS would work on tunnel endpoints. No intermediate node’s information is required. If ioam edge-to-edge mode is to be used, then ioam edges have to happen to be LOOPS segment ingress and egress. 

So I would not think ioam can be directly used for LOOPS segment. The most important information for LOOPS is timestamps in my understanding. We may re-use its format but put it in LOOPS header. That makes the design clearer.  

[/yz]
---

[yz]
Agreed that GRE is a choice here.
[/yz]
---

* Name: TSVWG
* Work: Advanced ECN

---

* Name: DETNET, RAW
* Work: DETNET data plane, RAW, PREOF
* Issue in other group: Define a data plane (encapsulation) for
  replicating, eliminating duplicates, and potentially reordering
  traffic (PREOF).
  RAW extends this work to wireless networks.
* **Issue in LOOPS**: Can we integrate some of this work for
  retransmission and reconstruction?
* Type: Watch, potentially import
* **Issue in LOOPS**: Potentially (long term): Can we make some of the
  LOOPS components available in a way that is useful for DETNET and RAW?
* Type: Export
[yz]
DETNET looks having an assumption that an end-to-end retransmission in case of a packet loss would make the packet miss its cycle and become useless in industrial networking.
A (shorter) segment based retransmission or FEC might be able to make the recovered packet keep up with the cycle? 
That's an interesting thought :)
[/yz-end]

---

* Name: NWCRG (IRTF)

---

--
LOOPS mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/loops

---

From: Carsten Bormann <[email-masked]>
Date: Wed, 6 May 2020 23:44:42 +0200

Hi Yizhou,

Thank you for the quick response.
Let me pick up some of the items below for tomorrow’s call, giving them numbers 1 to 6 so we can build a more detailed agenda around them:

> On 2020-05-06, at 11:15, Liyizhou <[email-masked]> wrote:
> 
> Hi Carsten,
> 

I think that is a great summary of a few of the technical points we should discuss tomorrow:

(1) Should we simply assume that reordering in the LOOPS segment is unlikely, so we only have to specify the DUPACK style of loss detection within LOOPS?
(2) What can we find out about the end-to-end transports contributing to a LOOPS-enhanced flow (e.g., are they RACK—based?), so we can adapt behavior appropriately?  (This assumes some minority traffic might be negatively impacted.  It also violates the “don’t peek” principle.)

> Currently LOOPS ingress from my understanding does not intend to do sending rate adjustment. The control is at the end host sender. LOOPS tries to do the minimum set of work in participating in the…

(3) Yes, and I think it is worth to explicitly confirm that this is the way we are going.

> If a full-function nested control loop (including sending rate adjustment at LOOPS ingress) in LOOPS is required, some active interaction between the end host and the LOOPS ingress node would be re…

Right.  MASQUE has the benefit that, in the forward direction, the end host is part of the inner segment that is happening within QUIC.  But we don’t know how they will use that benefit, and what they will do for the reverse direction (which will often be the direction with the larger amount of traffic).   So that is why this just says “watch”.

> I did not follow MASQUE very closely, but it seems working between the sender and the proxy. Potentially would give us some hints on advanced features to be considered at LOOPS later stage.    

Agree.

> IPPM-defined ioam format intends to help network oam.  It puts a lot of effort in its trace option (pre-allocated trace and incremental trace). It is quite obvious that trace option is not appropri…

(4) That is my evaluation as well.  We should check whether there is agreement on this.

> So I would not think ioam can be directly used for LOOPS segment. The most important information for LOOPS is timestamps in my understanding. We may re-use its format but put it in LOOPS header. Th…

(5) Timestamp formats are one thing we can copy from IPPM, where we need to have timestamps where ingress and egress agree about the format.  There is also the question whether we want to use data formats defined for IPFIX, and/or measurement protocols such as OWAMP, TWAMP.

> Agreed that GRE is a choice here.

(6) We may want to write up a straw man (and then need to find someone familiar with GRE and its real-world incarnation).

> That's an interesting thought :)

This is a bit hard to frame into a discussion point right now, but we should be talking to DETNET and RAW people about reconstruction (FEC) and retransmission.  The latter is maybe a bit less “deterministic”, but might still make the latency goal.  I don’t think we know enough to go into a technical discussion of this tomorrow.

See you all in 17¼ hours…

Grüße, Carsten