Re: [Anima] Magnus Westerlund's No Objection on draft-ietf-anima-grasp-api-08: (with COMMENT)

Magnus Westerlund <magnus.westerlund@ericsson.com> Mon, 07 December 2020 09:58 UTC

Return-Path: <magnus.westerlund@ericsson.com>
X-Original-To: anima@ietfa.amsl.com
Delivered-To: anima@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5C8D43A129F; Mon, 7 Dec 2020 01:58:21 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.102
X-Spam-Level:
X-Spam-Status: No, score=-2.102 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, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.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 NxJ4bcKWek78; Mon, 7 Dec 2020 01:58:19 -0800 (PST)
Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70083.outbound.protection.outlook.com [40.107.7.83]) (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 BBD353A129C; Mon, 7 Dec 2020 01:58:18 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JOXywUDUef4FhLIKoSJsMJI5guEVq+p66ifDSP9w0hEyRinTp7q2BfsBJEy/H4ofYSvuSDIZb5AyWsAiTTjalvCzaWAPnjEyIJa39NnydKjJYI1c60twx1fT5RDXAD/h+kZlIC+cQow01ffgROKH+VLqosaXUTYMpAdbG4K0J3rqM8qoy21BMXUHULx1EktCUjmtq/7WwCAbOVVP5C1m056NgKLd+c4fsRes0zTHki2u74UTZG5GjFe7xN6JoN36lz08+IkBzrXA5yppJQg1BJy/7xqT+I5ALBoewlZ7TaNb+uGiUhb/6XOXj9R0HbXLOJ6Bby2Mk9Sl2P4s8QmM8g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lyA41szlJ41TpAPqv8bnciiBvemCZDdLN2MbBLIXYDA=; b=ACAl25wY6f9mjxuUsXltPFJ3W91U0wsjpMAMbf9y2HKKfI2d574lTJyb/33/1wmeoVVdoPGV6hNOLH2GjHBZio0kyg6XoRsvtQ17bWt+1baSsfDM2JC+xY1TjrEEVyL0OUjqyqB+0prOOVW+7HCIV8Jq5VTutJGArkxAu506ZykSyilzm877oDkCKDLiepCAWCsNmL151uQCB/oPvrI2xGx/MEl0TA5g3BZymrXkcrzHPCUunxJuX5l8nTxH6EfuSBnkWcSnBi1ILKRnJQhDjs39cJd6M/JaEncjqrEc6dc7oh5zMtm4T5GqtlSszu+aoDz4SYLYEnSN6gPUv6X9IA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ericsson.com; dmarc=pass action=none header.from=ericsson.com; dkim=pass header.d=ericsson.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lyA41szlJ41TpAPqv8bnciiBvemCZDdLN2MbBLIXYDA=; b=HBEAxny1caJAfAt6bMqX3W0AjLA1ybxJW95wMDqo/8BTewh8fS0Q4b3FBlbu4mtfMSWsev/aaBtNVEmtJlfNHmF0wUYZFrQqUyWZkJegiutaT5G0iKfKXFMuHE/f/PWiw9pALj022bPLgVncy+16/ptoQlw41xL/Ge2oQ0d0BPg=
Received: from HE1PR0702MB3772.eurprd07.prod.outlook.com (2603:10a6:7:8e::14) by HE1PR0702MB3817.eurprd07.prod.outlook.com (2603:10a6:7:86::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.8; Mon, 7 Dec 2020 09:58:15 +0000
Received: from HE1PR0702MB3772.eurprd07.prod.outlook.com ([fe80::8cd:496:65de:4ace]) by HE1PR0702MB3772.eurprd07.prod.outlook.com ([fe80::8cd:496:65de:4ace%7]) with mapi id 15.20.3654.010; Mon, 7 Dec 2020 09:58:15 +0000
From: Magnus Westerlund <magnus.westerlund@ericsson.com>
To: "brian.e.carpenter@gmail.com" <brian.e.carpenter@gmail.com>, "iesg@ietf.org" <iesg@ietf.org>
CC: "draft-ietf-anima-grasp-api@ietf.org" <draft-ietf-anima-grasp-api@ietf.org>, "jiangsheng@huawei.com" <jiangsheng@huawei.com>, "anima@ietf.org" <anima@ietf.org>, "anima-chairs@ietf.org" <anima-chairs@ietf.org>
Thread-Topic: Magnus Westerlund's No Objection on draft-ietf-anima-grasp-api-08: (with COMMENT)
Thread-Index: AQHWyX+mAPa4wQeq7UKGg1bNNA1k2KnlzMWAgADRToCAAMLOgIAEC1GA
Date: Mon, 07 Dec 2020 09:58:15 +0000
Message-ID: <07d0d5a49cd4c56448aa35d9ac532606dbf95373.camel@ericsson.com>
References: <160700528599.27447.1943648730093384240@ietfa.amsl.com> <4c7cc11f-6d5c-95d2-ea37-b5d23f300537@gmail.com> <cc7423f5292fb0b09c309ff64320580d6a516fde.camel@ericsson.com> <9b7bdffe-9048-c263-6084-7c954ebad821@gmail.com>
In-Reply-To: <9b7bdffe-9048-c263-6084-7c954ebad821@gmail.com>
Accept-Language: sv-SE, en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-mailer: Evolution 3.28.5-0ubuntu0.18.04.2
authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=ericsson.com;
x-originating-ip: [158.174.130.243]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: b090d05e-5f23-4c87-6f13-08d89a969ddd
x-ms-traffictypediagnostic: HE1PR0702MB3817:
x-microsoft-antispam-prvs: <HE1PR0702MB38173333A3A9FF307CAF7C9995CE0@HE1PR0702MB3817.eurprd07.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8273;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: ORsGJ69DQ1uVtU5pBV60Gaj0rDl+2mHtr0rfQ9DfxLK+wSqFYNRqS85XCwhV+dQkoGg43KEonsLPu9UI9Ucdtj+7stgAvRcA9OXMU2uxrfOpToxptieZTYSWxISDWYWP14xyPlMuU3ynVGgGancpcK2eMqnXERuTqsdt8LUcvZjYGglC0hkr7u2T3D05bjZPBFTb+qXlCt+jNUKn0J/SmkQZk/i/rrBr5Wf3HZit5b6YGIz60B1WXL8hIRum5QXwA1eML92RIXbIxjMYhShkc6Xa0DG5zy/35gmtyKWR76/gEKIeJDYhowpuh7/NWg6HGxXU78dnHwQQpdGDJ5SE0tnaB/b9c9Y9f8t8XZ7OTV+XhAQUYqI/DRFs4lSbvPwjc9U2HycGqfXKdRoUhqf6PmIAtCnT61u8myb01jdB6t1rm//jKgvfIoMKE0dFec24UcqzUsRmqrgf9i8ivJ02iA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:HE1PR0702MB3772.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(376002)(366004)(346002)(396003)(99936003)(8936002)(110136005)(6486002)(71200400001)(86362001)(44832011)(8676002)(966005)(6512007)(2616005)(2906002)(316002)(66946007)(83380400001)(54906003)(4326008)(26005)(6506007)(53546011)(66616009)(64756008)(66556008)(66476007)(186003)(478600001)(36756003)(5660300002)(76116006)(66446008)(99106002); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata: FJYSH25Ro7Q52RB2uRnu1C9OrqdaSCEfFEX+ukPfn1LM5keiN/D916veS1s+R8BHLjppvaBmK754p1/0X3KUg0JpYvKe7FteofdBXoA+2GLc2r6JnUBV60B47Ldj709u2kOcJuyKf6XkscUlTdMJanPpp3PEQa/EcCX7Wr+9VjC4egCDG5Xa4Lp2Rfh+YpZeoXZaKekwnbSNkP+V1cIiWR6/B1TVt7q1aeXH5P0ZgvGK+AiH2P6cgSBD95UB9/wpvNh1c0TRcBB9430ze3SKtorq7khFvVmrC+h6UkTchYvslcposXosManHh5hZ55ieSex/Y+T9OGiiqy5WPur9L5Vsyt96bbbGNuj5VF524hYXJFqdM7wRIfvxRBrfkuefoCvd0gDCOxJAOg51tUMSITzRpYupX6ZlqEYIKGqtZN3/17NG8oPwA0DvV6VNp8jlCRfUdObzcZ7myBxfgRwthVUYMs/JJuF35Le4Ew5U9sFm3pX8aEeO2PHJtltKgdG0BjRyVGGM0s7/6ku57tJ6o0rttTbMyskBV/m7EzbNC761BsXif9f2rSWKq0lBp23Om9htMYkDA/NW8JjEPe0CwA3nH9v/cBoIgzpEqED0X1teYAzG5vM9menuqBqNHn3zrs7iqucFbJ2Q4RaMs6ohqn0tVclmgJCFyEKy+KkU7w8FZ+2MryxG4baFPk12Gjye4crHlS6C4xCoUfJScyOyyRxUicE26/v8C3dPUdOs60yD4nAGzOKZnchAzZcGtc0QcAiZiPU/YInJdFkn8Tqdh4tGnJ+HZeqLTm89BPcntXyDZ9oyIiBhSU9Um12UUGXCAy8p3ABiL3StylFc549udaTjcti2+yJxl4IE7rrnvPfHgE86Ar6B+Qurx9WI+lDSyB6Io8RtKBKem4KqKwhJTP1ecuEkyuhreFD8M8qVaC3UShoEEvkBQamfxpgcb3eFrs+J/f5f5emrtKXA1f9l9bpxCsJfFDd0vSYs4iC2DdrBZJMn+iipVvIYZhyMJHkc
x-ms-exchange-transport-forked: True
Content-Type: multipart/signed; micalg="sha-256"; protocol="application/x-pkcs7-signature"; boundary="=-ZqsSlkI8MZpbaFW25Qhp"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: HE1PR0702MB3772.eurprd07.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b090d05e-5f23-4c87-6f13-08d89a969ddd
X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Dec 2020 09:58:15.5972 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: VVYeB1AuRy2J0o/e65IcFWIRGBJoPkqkWdYDRqBGx8zmylLNi9/w1pZhopKCLQe6d4uDpeVoGSh28I+DHPTJxYLod+JDiLkR/vQ6vZwuOMI=
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0702MB3817
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/T0WBi7TAWVWlmeAztJodMKaFJ1E>
Subject: Re: [Anima] Magnus Westerlund's No Objection on draft-ietf-anima-grasp-api-08: (with COMMENT)
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Dec 2020 09:58:22 -0000

Hi,

Thanks for the explanations. So if I interpret this from an API perspective, the
caller would make assumption that protocol messages will be sent in a timely
fashion that may not hold. Thus, timeouts that occurr might not be in relation
to the time since a message was sent. And the caller would not know about this
situation and would not throttle back its interactions. Given that GRASP is
implemented safely from a congestion and rate limiation it will not be
missbehaving, however the god put of the interaction might decrease due to this
lack of feedback. 

It is up to the authors and the WG I think what to do about this. I personally
think it might be worth creating a short section discussing this potential issue
so the API implementor might do something reasoanble. 

Cheers

Magnus


On Sat, 2020-12-05 at 09:13 +1300, Brian E Carpenter wrote:
> On 04-Dec-20 21:36, Magnus Westerlund wrote:
> > 
> > 
> > On Fri, 2020-12-04 at 09:07 +1300, Brian E Carpenter wrote:
> > > Hi Magnus,
> > > 
> > > You raise an interesting point, but it's really about deployment
> > > of the whole ANIMA infrastructure. We need the infrastructure to work
> > > even when everything else is broken, which means it must have a
> > > guaranteed slice of resource capacity and it should not exceed that
> > > slice even when the autonomic system is fixing breakage.
> > > 
> > > If that doesn't work, GRASP sessions will start timing out, so the API
> > > will report failures, starting with discovery failures**. That's where
> > > the recommendation for exponential backoff comes in. But I think the
> > > problem is deeper than the API.
> > 
> > I raised this as I didn't see any discussion in the API that you could
> > either
> > become hanging on a call waiting for local resources (which would be bad for
> > what I understand is intended to be asynchronous API) 
> 
> GRASP itself would be the only source of a local wait, but it only consumes
> standard resources (sockets and possibly o/s threads) so I don't see this
> as a real issue.
> 
> > or how the calling APP
> > would learn that your request timed out, 
> 
> That would come back as an error code, although the actual error code
> would depend on the particular case. (In the case of discover(), it
> just comes back as a blank reply.)
> 
> > or simply are still being worked on
> > because busy. 
> 
> In a threaded implementation, the thread would simply sleep until
> the error code pops up. In the event loop case, you'd get the
> noReply code until something happens or the callback triggers.
> 
> > My concern is that without any type of push back towards the
> > calling application it can't regulate what it is doing to focuse the
> > resources
> > on what is most important.
> 
> I think it's going to be like the game loop in a complicated game.
> It will have to pay attention to other issues while a negotiation
> is proceeding. (Most of the times I used stackoverflow to figure
> out how to do something in my own test cases, I found myself reading
> advice to game implementers.)
> 
> > Secondly, does there exist any prioritization
> > mechanism on the GRASP level that helps with this.
> 
> No, we've never considered that. It wouldn't be hard to add
> prioritization options to GRASP.
> 
> Thanks
>    Brian
> 
> > 
> > Cheers
> > 
> > Magnus
> > 
> > > 
> > > ** I've seen it happen, when running GRASP on a busy IETF wireless
> > > network, back when we used to have meetings.
> > > 
> > > Regards
> > >     Brian
> > > 
> > > 
> > > Regards
> > >    Brian Carpenter
> > > 
> > > On 04-Dec-20 03:21, Magnus Westerlund via Datatracker wrote:
> > > > Magnus Westerlund has entered the following ballot position for
> > > > draft-ietf-anima-grasp-api-08: No Objection
> > > > 
> > > > When responding, please keep the subject line intact and reply to all
> > > > email addresses included in the To and CC lines. (Feel free to cut this
> > > > introductory paragraph, however.)
> > > > 
> > > > 
> > > > Please refer to 
> > > > https://www.ietf.org/iesg/statement/discuss-criteria.html
> > > > for more information about IESG DISCUSS and COMMENT positions.
> > > > 
> > > > 
> > > > The document, along with other ballot positions, can be found here:
> > > > https://datatracker.ietf.org/doc/draft-ietf-anima-grasp-api/
> > > > 
> > > > 
> > > > 
> > > > ----------------------------------------------------------------------
> > > > COMMENT:
> > > > ----------------------------------------------------------------------
> > > > 
> > > > So I didn't have time to read your document in detail, thus I can easily
> > > > have
> > > > missed something.  Hopefully a bit of clarification on what I might have
> > > > missed
> > > > will resolve this issue.
> > > > 
> > > > I do wonder over one aspect of this API surface. How does it handles
> > > > when
> > > > the
> > > > GRASP layer is unable to send the messages in a timely fashion based on
> > > > the
> > > > API
> > > > calls? Looking at GRASP I understand that it is using either UDP or TCP.
> > > > The
> > > > rate limiting of UDP does not appear to be more well specified that to
> > > > follow
> > > > RFC 8085 recommendations. So my concern here is that you actually have
> > > > some
> > > > risk of running into that the upper layer using this API tries to become
> > > > a
> > > > bit
> > > > to active and do everything at once, thus resulting in that TCP
> > > > congestion
> > > > control and flow control might block timely transmissions, and for UDP
> > > > the
> > > > rate
> > > > limiter / congestion control of the UDP messages. What happens in this
> > > > API
> > > > when
> > > > this occurs?
> > > > 
> > > > 
> > > > 
> > > >