Re: [AVTCORE] Notes on RTP CC Feedback from the Hackathon

Ingemar Johansson S <ingemar.s.johansson@ericsson.com> Tue, 26 March 2019 07:59 UTC

Return-Path: <ingemar.s.johansson@ericsson.com>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 158F3120047; Tue, 26 Mar 2019 00:59:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 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, RCVD_IN_DNSWL_NONE=-0.0001, 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 07icBZhXwkwM; Tue, 26 Mar 2019 00:59:25 -0700 (PDT)
Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50077.outbound.protection.outlook.com [40.107.5.77]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 29A9912028B; Tue, 26 Mar 2019 00:59:25 -0700 (PDT)
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=rGndB+fWG1PoFWjGaYuuzpWdcf5AWVeDMuRTl19bVfE=; b=h3DI1XHkUYvR3uQHWDfL0jHr4d2lxkgoWJM3IOaaWt1bI5Bd9J4LBTjUHqgzAYMkfNUDBa6Ibwlk6H7Puk4GrV/0TLqUdYyfMPAunMYLk38whfXluHpuFWtPDpal9PZFGzYAkUz9ADNyEcDcDRDbwre11w4VyZJv08ko8oM8jvM=
Received: from HE1PR07MB4425.eurprd07.prod.outlook.com (20.176.167.142) by HE1PR07MB3515.eurprd07.prod.outlook.com (10.170.248.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1750.13; Tue, 26 Mar 2019 07:59:22 +0000
Received: from HE1PR07MB4425.eurprd07.prod.outlook.com ([fe80::f01e:542a:63b7:9cf]) by HE1PR07MB4425.eurprd07.prod.outlook.com ([fe80::f01e:542a:63b7:9cf%3]) with mapi id 15.20.1750.014; Tue, 26 Mar 2019 07:59:22 +0000
From: Ingemar Johansson S <ingemar.s.johansson@ericsson.com>
To: "avt@ietf.org" <avt@ietf.org>, "jonathan@vidyo.com" <jonathan@vidyo.com>
CC: "rmcat@ietf.org" <rmcat@ietf.org>, Ingemar Johansson S <ingemar.s.johansson@ericsson.com>
Thread-Topic: [AVTCORE] Notes on RTP CC Feedback from the Hackathon
Thread-Index: AdTjp0rSnNk7Pic4TRWzBzw6uHzbVg==
Date: Tue, 26 Mar 2019 07:59:21 +0000
Message-ID: <HE1PR07MB4425E3068736C3547A932F66C25F0@HE1PR07MB4425.eurprd07.prod.outlook.com>
Accept-Language: sv-SE, en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=ingemar.s.johansson@ericsson.com;
x-originating-ip: [192.176.1.92]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e83b367a-8734-4fe4-485e-08d6b1c0f4f1
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(2017052603328)(7153060)(49563074)(7193020); SRVR:HE1PR07MB3515;
x-ms-traffictypediagnostic: HE1PR07MB3515:
x-microsoft-antispam-prvs: <HE1PR07MB35156D234B596BCCBB9BA944C25F0@HE1PR07MB3515.eurprd07.prod.outlook.com>
x-forefront-prvs: 09888BC01D
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(136003)(39860400002)(376002)(346002)(366004)(189003)(199004)(8936002)(55016002)(6306002)(53546011)(6436002)(966005)(33656002)(6506007)(53936002)(7696005)(99936001)(9686003)(68736007)(2906002)(74316002)(14454004)(6246003)(229853002)(478600001)(8676002)(81166006)(106356001)(316002)(110136005)(81156014)(186003)(54906003)(4326008)(3846002)(52536014)(105586002)(66066001)(6116002)(102836004)(71200400001)(25786009)(71190400001)(305945005)(107886003)(97736004)(2501003)(14444005)(256004)(86362001)(26005)(476003)(7736002)(5660300002)(99286004)(486006); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB3515; H:HE1PR07MB4425.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: RoN7fj5hLpuyyi1O+hIsoJgmmnIk8pMlwd7JiRt/EqGsJKARoNzUE20ZbzzrjWRS8nt8ap1YHILBaBGUKRl41rIXiSIviq/Xb30quFQlD1TPwD1LomeuzaN+LJgwTINCfy7GYrYQLHOHjbtLKQLeUcJi7LwQhz5T4ydVH/pYPGbz9zXGbbnRbvgiuNebaRCo3wDDE4B887DDE8Upq4FcNV8FIyENqu5K1CsfIUIPfKGT5CjJIcEI3/zmN6yxZTa21YAUFvmGPsOktYxHl7Swf3NN1+VHhdCGulOqNA7cG0zGB1EQNlelqxqdpCLtNx0JqXGFoYg25aZIP3c+aMc6sw5F+D0vLKYfml4hjiPggqZG8iemP48piRv10coNe7vb58Z2Y+NGU1vwDc/rO9qf2whfKB4u9wS0zec7iObcKvc=
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="SHA1"; boundary="----=_NextPart_000_04A3_01D4E3B2.32E04770"
MIME-Version: 1.0
X-OriginatorOrg: ericsson.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e83b367a-8734-4fe4-485e-08d6b1c0f4f1
X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Mar 2019 07:59:21.8682 (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-Transport-CrossTenantHeadersStamped: HE1PR07MB3515
Archived-At: <https://mailarchive.ietf.org/arch/msg/avt/IUSue9EaqBydvq-fMi0tzSFEGyw>
Subject: Re: [AVTCORE] Notes on RTP CC Feedback from the Hackathon
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/avt/>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Mar 2019 07:59:29 -0000

Hi

As regards to the MTU limitation. 
The SCReAM implementation implements a limit when the RTCP FB packets are
generated. If that limit is reached then any additional RTCP FB messages
that wait for transmission have to wait until the next RTCP feedback
transmission. 
https://github.com/EricssonResearch/scream/blob/master/code/ScreamRx.cpp#L27
9 
In addition there is a limit on how many RTP packets that can be reported
for a given stream (currently 64 RTP packets). This gives a potential risk
that holes in the RTCP feedback occurs, for that reason it is necessary to
enforce transmission of RTCP FB before 64 RTP packets are received, in the
code an extra check makes sure that RTCP feedback is transmitted when > 64/4
= 16 RTP packets are received, this gives an extra margin to avoid that lost
RTCP feedback triggers the packet loss detection.
https://github.com/EricssonResearch/scream/blob/master/code/ScreamRx.cpp#L34


The SCReAM implementation relies _only_ on the RTP CC feedback

Quote : "There should be guidance on how CCFB?s SSRC-and-RTP sequence
feedback
format can be mapped into a single sequence number space, of the sort that
many congestion control algorithms will want as input."
I don't understand this. Do you mean that if you have two encoders that
produce RTP packets then they should get RTP sequence numbers from a single
monotonically increasing sequence number function ? 
I don't see that this is necessary. At least in SCReAM, each stream (source)
have its own list of transmitted packets with their respective RTP sequence
numbers, this list is matched against the RTCP feedback.
But perhaps I misunderstood ?

/Ingemar


> Date: Mon, 25 Mar 2019 12:19:56 +0100
> From: Jonathan Lennox <jonathan@vidyo.com>
> To: "rmcat@ietf.org WG" <rmcat@ietf.org>, avtcore@ietf.org
> Subject: [AVTCORE] Notes on RTP CC Feedback from the Hackathon
> Message-ID: <91FCCD42-F4DB-45B2-9673-828F327743F8@vidyo.com>
> Content-Type: text/plain;	charset=utf-8
> 
> Sergio Mena, Nils Olhmeier, and I got RTP CC Feedback interoperating at
the
> IETF Hackathon this weekend.
> 
> Sergio (with help from Nils) got it working in Firefox, driving
libwebrtc?s GCC; I
> had it working in our proprietary codebase with our proprietary congestion
> control algorithm.  We had media flow between my computer at the Hackathon
> and Sergio?s in Switzerland, with both sides achieving what seemed to be
> reasonable bitrates for the network. (We didn?t do careful study of the
results in
> the time we had available, though.)
> 
> Some issues we noticed:
> 
> * In BUNDLE, it?s not clear whether it should be legitimate to negotiate
CCFB on
> some but not all of a group of bundled media descriptions.  I.e., what
should the
> bundle category of a=rtcp-fb:* ack ccfb be?
> 
> * SDP ABNF syntax is fairly arcane, so it wasn?t immediately obvious to
> everyone that the signaling was indeed supposed to be ?a=rtcp-fb:* ack
ccfb?.
> An example would probably be helpful.
> 
> * Offerers will often want to offer a variety of congestion control
feedback
> mechanisms for maximum interoperability, but bad things can happen if you
try
> to use more than one at once.  Thus, answerers should answer with only one
> option, and if that doesn?t happen (i.e. if an answer contains more than
one
> option) an endpoint should either pick just one it likes best, or
complain/fail.
> 
> * CCFB, unlike most RTCP messages, isn?t intrinsically bounded in size.
When
> bandwidths are very asymmetric, you can end up with more feedback reports
> than will fit in an MTU.  Implementations should make sure to generate
multiple
> feedback packets in this case.
> 
> * There should be guidance on how CCFB?s SSRC-and-RTP sequence feedback
> format can be mapped into a single sequence number space, of the sort that
> many congestion control algorithms will want as input.
> 
> * Congestion algorithms need to understand what to do in response to lost
> feedback messages.  It?s generally a bad thing to treat them as media
packet
> losses, but it?s also bad to treat them as though the packets were
received
> perfectly.
> 
> 
> ------------------------------
> 
> Subject: Digest Footer
> 
> _______________________________________________
> Audio/Video Transport Core Maintenance
> avt@ietf.org
> https://www.ietf.org/mailman/listinfo/avt
> 
> 
> ------------------------------
> 
> End of avt Digest, Vol 178, Issue 4
> ***********************************