[AVTCORE] RTP circuit breakers practical experience feedback

Simon Perreault <sperreault@jive.com> Fri, 07 August 2015 14:29 UTC

Return-Path: <sperreault@jive.com>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4FFE01A0264 for <avt@ietfa.amsl.com>; Fri, 7 Aug 2015 07:29:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham
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 CuPmbpwG2cgg for <avt@ietfa.amsl.com>; Fri, 7 Aug 2015 07:29:09 -0700 (PDT)
Received: from mail-ob0-f180.google.com (mail-ob0-f180.google.com [209.85.214.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2B0141A002C for <avt@ietf.org>; Fri, 7 Aug 2015 07:29:07 -0700 (PDT)
Received: by obbop1 with SMTP id op1so80222861obb.2 for <avt@ietf.org>; Fri, 07 Aug 2015 07:29:06 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:content-type:content-transfer-encoding; bh=6T30T9Aq0y4m5GRhbZBOJLgZ9gZpPGQ5ZBVXDMTDgHA=; b=M96MjC8lPacrfpYqnQU8uv69FIrVeg1Qklbu8qLrXvvh/C/z/cm9TRERghMh01ru9A DNShybMEIUbRH//LPMZ1h+vNdj99gdheHPTUdD/SwHnAqbz6s1DtLLxnEzqcVNJROVnX 14p/Td8YodirTnF95JqkeR7Ib4EJIZmCMfY+bAqYhEYkKpWoI2nQHRaQxxbMbfFFsPiR 4sGlVH+sq3MhlygsX03S3GoUqMQl0eh9gdNvOseusrhxsh6p+XovLS3M4qto9O8jMJ1d xro+ntPalNXuiZKaGkWxdQhYM+r7bspNXxtu1fl7/iYDLsovAfFLADO0X1JmgIsxdhBS 9uIg==
X-Gm-Message-State: ALoCoQlgPfI5TwD+o9fSqwk2O+1nQyvD2mkb0w+vWNd3uUZ5tDgbtvn95TXfJZxerCDORvRTcNIT
X-Received: by 10.60.136.131 with SMTP id qa3mr6815489oeb.34.1438957746694; Fri, 07 Aug 2015 07:29:06 -0700 (PDT)
Received: from Simons-MacBook-Air.local ([24.53.47.130]) by smtp.googlemail.com with ESMTPSA id fh3sm6177379obb.23.2015.08.07.07.29.05 for <avt@ietf.org> (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 07 Aug 2015 07:29:06 -0700 (PDT)
Message-ID: <55C4C0B0.1080100@jive.com>
Date: Fri, 07 Aug 2015 10:29:04 -0400
From: Simon Perreault <sperreault@jive.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: "avt@ietf.org" <avt@ietf.org>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/avt/3MHdwQzBhpYzTiM5SJeHLnULEbs>
Subject: [AVTCORE] RTP circuit breakers practical experience feedback
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.15
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: Fri, 07 Aug 2015 14:29:11 -0000

All,

We implemented draft-ietf-avtcore-rtp-circuit-breakers-10 and put it in
production here at Jive. It is exposed to all kinds of traffic:
intra-DC, inter-DC, SIP peer to SIP peer, and wild public Internet
traffic. I obviously can't discuss traffic volume. Here are some lessons
learned...

- The "media timeout" circuit breaker is unusable in practice because at
least one popular B2BUA implementation we routinely talk to (not going
to name names) lies in its RTCP reports. In one particular instance, it
sends RTCP with non-increasing maximum sequence numbers even though it
is receiving the media we send it. We have found no way to work around
this in general apart from fingerprinting the implementation of the
remote endpoint (which we are *not* considering, for obvious reasons).

- The "RTCP timeout" circuit breaker is unusable in practice because it
is common to stop receiving RTCP when an RTP relay we are sending to
changes its destination from an RTCP-sending receiver to a
non-RTCP-sending receiver. There is no indication at the signalling
level that this is happening because what happens beyond the RTP relay
is invisible to us. We have found no way to work around this in general.

- The "congestion" circuit breaker has never triggered. I don't really
know how to interpret this: am I supposed to rejoice or is the circuit
breaker simply useless in practice?

In addition, the text describing the algorithm leaves much to the
programmer's interpretation. I've discussed this with the authors and I
expect a revision with tighter text.

- We have not implemented the "media usability" circuit breaker as we
were unable to find a good practical criteria for usability. I'd be
surprised if anyone else did.

Simon