[Mops] draft-ietf-mops-ar-use-case review

"Holland, Jake" <jholland@akamai.com> Thu, 11 November 2021 12:24 UTC

Return-Path: <jholland@akamai.com>
X-Original-To: mops@ietfa.amsl.com
Delivered-To: mops@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 38F813A0E99; Thu, 11 Nov 2021 04:24:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.1
X-Spam-Level:
X-Spam-Status: No, score=-2.1 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=akamai.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g0WTSM_IjgeJ; Thu, 11 Nov 2021 04:24:16 -0800 (PST)
Received: from mx0a-00190b01.pphosted.com (mx0a-00190b01.pphosted.com [IPv6:2620:100:9001:583::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7F4FE3A0E95; Thu, 11 Nov 2021 04:24:16 -0800 (PST)
Received: from pps.filterd (m0122332.ppops.net [127.0.0.1]) by mx0a-00190b01.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 1ABC50hb030162; Thu, 11 Nov 2021 12:24:14 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akamai.com; h=from : to : subject : date : message-id : content-type : content-id : content-transfer-encoding : mime-version; s=jan2016.eng; bh=zw8Ca7txbNSPs4VwtxqJKZRKkUH4cR+S5wrAwEMZnS4=; b=QZIaGI6Z4RTLPdLEI2IeXlDRkMBBMogWJjlaKWPxhEZ7Mruxp+GPLkCJLNma051EZyiG CM6g/2JKjsvjKd4p6BgOswCYl6TVFwz9oBTpBS2i4dAI+segkg67lkq8gemAs0Qf1EBb T5gwA22HipFCoXuFJXD89IYBTDm0saDJKj0rtd2ahZCddq11QrXKs8oyIf0DCbgsjDx+ fcjfhSnV5Qnp4aIgUzTbHPAimQaR0vo4K1VeTBbljtARRcqmIeY08pjJoC4QaU4VKl6A IIe38u/gAwd6aU9QOEsoHfUlBtRKxoWPdJWeZeSpbvGDEuZsxtEhsmhVg02BEUCIbiMs Xg==
Received: from prod-mail-ppoint8 (a72-247-45-34.deploy.static.akamaitechnologies.com [72.247.45.34] (may be forged)) by mx0a-00190b01.pphosted.com (PPS) with ESMTPS id 3c8hpbnvs4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 11 Nov 2021 12:24:14 +0000
Received: from pps.filterd (prod-mail-ppoint8.akamai.com [127.0.0.1]) by prod-mail-ppoint8.akamai.com (8.16.1.2/8.16.1.2) with SMTP id 1ABCJDMC009904; Thu, 11 Nov 2021 07:24:13 -0500
Received: from email.msg.corp.akamai.com ([172.27.165.116]) by prod-mail-ppoint8.akamai.com with ESMTP id 3c7w15v6d9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Thu, 11 Nov 2021 07:24:13 -0500
Received: from USTX2EX-DAG1MB4.msg.corp.akamai.com (172.27.165.122) by ustx2ex-dag1mb3.msg.corp.akamai.com (172.27.165.121) with Microsoft SMTP Server (TLS) id 15.0.1497.24; Thu, 11 Nov 2021 06:24:12 -0600
Received: from USTX2EX-DAG1MB4.msg.corp.akamai.com ([172.27.165.122]) by ustx2ex-dag1mb4.msg.corp.akamai.com ([172.27.165.122]) with mapi id 15.00.1497.024; Thu, 11 Nov 2021 06:24:12 -0600
From: "Holland, Jake" <jholland@akamai.com>
To: "mops@ietf.org" <mops@ietf.org>, "draft-ietf-mops-ar-use-case@ietf.org" <draft-ietf-mops-ar-use-case@ietf.org>
Thread-Topic: draft-ietf-mops-ar-use-case review
Thread-Index: AQHX1vcIB8I2rBDyWE6hkCC6zpPDnQ==
Date: Thu, 11 Nov 2021 12:24:12 +0000
Message-ID: <744AA478-473C-404F-B498-AD5BFDDDAA8B@akamai.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/16.53.21091200
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [172.27.164.43]
Content-Type: text/plain; charset="utf-8"
Content-ID: <39A0F789EEE5CB4AA28E32FDD8F271DF@akamai.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.425, 18.0.790 definitions=2021-11-11_03:2021-11-11, 2021-11-11 signatures=0
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxscore=0 mlxlogscore=999 suspectscore=0 adultscore=0 spamscore=0 bulkscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2111110073
X-Proofpoint-ORIG-GUID: RCp81CNLuTMYyVt4Z0576XgumlT0N85v
X-Proofpoint-GUID: RCp81CNLuTMYyVt4Z0576XgumlT0N85v
X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.0.607.475 definitions=2021-11-11_03,2021-11-11_01,2020-04-07_01
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 clxscore=1011 lowpriorityscore=0 priorityscore=1501 suspectscore=0 malwarescore=0 impostorscore=0 mlxlogscore=999 adultscore=0 spamscore=0 mlxscore=0 phishscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2111110073
Archived-At: <https://mailarchive.ietf.org/arch/msg/mops/_Z5lPrDQGfr90UppLioFl-lYeyY>
Subject: [Mops] draft-ietf-mops-ar-use-case review
X-BeenThere: mops@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Media OPerationS <mops.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mops>, <mailto:mops-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mops/>
List-Post: <mailto:mops@ietf.org>
List-Help: <mailto:mops-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mops>, <mailto:mops-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Nov 2021 12:24:21 -0000

Hi mops,

I reviewed draft-ietf-mops-ar-use-case-03, and sorry I was so much
later than I promised.  Notes below.

---

Overall:
This doc has some really good observations, and thanks to the
authors for their work here.

I'll reference and +1 Spencer's comments about direction and scope
here:
https://mailarchive.ietf.org/arch/msg/mops/obdNac9sc4ZQ51i4rwFbYCxRvZQ/

I do think this doc should probably turn into something with
more breadth than the specific use case outlined in section 3
(while including coverage of that use case), but I'm not quite
sure in which direction it's best to go.  There are 2 reasonable
directions that occur to me:

Option 1:
Make this document more about the AR space as a whole, with a
section or 2 on the implications for how it drives a need for
edge computing and what parts of AR can and can't be done
without it (which although I'm not an AR expert, I imagine
would imply including more material about different techniques
in implementation like anchoring and probably several others,
and how they impact things like the computational needs for
different kinds of operating environments and use cases--for
instance there are lower-end AR applications like superimposing
cartoon characters in your cell phone images at the park or
during your conference calls that do have tracking and acquisition
issues but don't have head-tracking/motion sickness concerns, and
discussing a spectrum that includes these would be in scope here), or

Option 2:
Make this document more about examples of media use cases currently
being researched and developed that seem to need edge computing
to be practical (which although I'm not an edge compute expert,
I imagine would include some of the mentioned VR/360 points that
Spencer highlighted in the doc, as well as perhaps some other
examples like immersive video games with a VR headset, perhaps
both local to a venue and remotely online).

I went back and watched a little of the prior discussion, and the
author comments seem to merge AR with VR sometimes, which tends to
suggest the 2nd is what was intended.  But as the info about
tracking and acquisition makes clear in the doc, these are really
pretty different in some important ways even though they share some
concerns about head-tracking and motion-sickness-driven latency for
the described history tour use case.  So if the 2nd is the intent,
we probably need this to be more about media requiring edge compute,
with separate sections outlining the different considerations for
the different cases.


So I'm not sure which of these would be best, or if there's other
similar possibilities, but I think covering the one use case seems
too narrow, and the text size as it stands could probably usefully
double or triple with relevant coverage of useful observations in
either of those directions.  (Also worth noting: I think trying to
answer "both" would be a mistake here--the doc should pick a direction
and expand as needed to give a worthwhile overview of the relevant
space, IMO.)

I guess that to me is the first and most important question to
answer here before I know what to say about most of the rest of the
doc.  In retrospect, I kinda wish I had managed to articulate that
feedback before the adoption call, but I do think there's some very
worthwhile things to say in a doc like this on either front, so maybe
it doesn't matter.  (And I wouldn't be opposed to a "both" that takes
the form "actually, this should be a separate doc for each of those
things", though that might be more work than the authors intended to
offer...)

---

With that said, I do have a few points about the rest of the doc
that can hopefully be useful feedback regardless of which direction
it takes.

Abstract:
Probably needs to be tighter, and it seems weird that it highlights
one requirement, I don't quite get why.  I suspect agreeing on an
abstract (or maybe intro) to try to fill a doc in under would be a
decent way to settle the direction question, and would suggest
floating a few proposals for discussion.  But I'll highlight the
editor's advice:
https://www.rfc-editor.org/old/policy.html#policy.abstract

Intro:
- Probably better not to refer to "future" applications as much,
  and just work with "AR applications", or maybe "high fidelity AR
  applications" (or a better-suited industry term if there is one),
  if that's the intended scope.

Use case walkthrough in section 3:
- I'm unclear on whether the user agents in this scenario would be
  venue-owned or not, and this seems like a potentially critical
  issue for understanding what's the intended model.  Is this
  supposed to be about user-owned devices with different platforms
  but similar capabilities, in a way that requires graceful
  degradation for users without these devices, so a variety of
  similar-but-different experience models depending on whether they're
  wearing a next-gen google glass kind of thing or if they're just one
  of the rubes with a smart phone?  Or is this about handing out the
  same kind of device to a bunch of people during their tour, so they
  can all have a fundamentally similar tech experience?  I *think* it's
  the 2nd, but I'm not sure, and that comes with significant implications
  on assumptions we can use for how the service can be operated.

- The doc talks about the scope being "over the internet", but the
  use case seems to be about highly localized traffic in a venue-
  specific network.  I think if this is about internet traffic it
  probably needs to cover more about the target deployment model
  that results in traffic not constrained to a local venue's network.

  I *think* maybe that's about a need for a cloud-based service
  anchor of some kind (url/api endpoint for app/etc) to be able to
  drive the discovery and media-handling delegation to local compute
  resources with certain minimum constraints it can ask for and
  provision?  But the doc I think needs to get a lot more into what
  has to happen here to support the envisioned use case, I think.  I
  think this also has an impact on the "venue-driven" question above,
  because it seems like that kind of model only makes sense if you're
  talking about user-owned devices.  Or is the only internet piece
  of this just the inevitable advertising/purchase confirmation stream
  for the gift shop, which needs to be able to talk between the venue's
  device and the user's wallet manager or credit card?  (A case not
  really in mops's scope, btw.)  Or are we talking about some kind of
  user-owned budget on low-latency compute that comes from their 5g
  provider and takes care of their processing in this tour, so the
  image processing has to link through their mobile device in some
  standard way?  Or is it something else?

---

Summary:

There's some major gaps in this doc, but building a useful structure on
which to hang the outstanding insights and references in the requirements
section seems worthwhile, and I do still think the wg should hammer on
this to see if we can encourage the authors to flesh this out into a doc
we'll be glad we have when these AR/VR customers come knocking.

I hope others will chime in too, and sorry mine took so long. It's not
easy for me to write a review this loosey-goosey; I just feel kinda lost
and confused trying to explain what I'm thinking in a way that might be
useful, so it really helps to have someone poking at me with a sharp stick,
thanks again Leslie for not giving up on that.

Best,
Jake