[dispatch] RFC 3261 section 14.2 - "brand new call" does not specify whether the SDP should modify media attributes of an existing session containing a=sendonly or a=recvonly

Shaun Stokes <shaun@sysconfig.cloud> Sat, 05 September 2020 09:43 UTC

Return-Path: <shaun@sysconfig.cloud>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4DA8E3A0F22 for <dispatch@ietfa.amsl.com>; Sat, 5 Sep 2020 02:43:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, 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=sysconfigcloud.onmicrosoft.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 SMqELTLsiCSF for <dispatch@ietfa.amsl.com>; Sat, 5 Sep 2020 02:43:10 -0700 (PDT)
Received: from GBR01-LO2-obe.outbound.protection.outlook.com (mail-eopbgr100071.outbound.protection.outlook.com [40.107.10.71]) (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 B8B863A0F20 for <dispatch@ietf.org>; Sat, 5 Sep 2020 02:43:09 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DHT0virscYPIIVxxEFL+cf/zJ6y023KVL9zRJTO6M1RkqacQ27Nt4em5gqfASuBrDi7gh1KPEThCO2MM3nCaSQjy/Qn3JRH/lJaIefr7whRCuCYdk0UWr8C3fqUc0NaZm8GUhmHwNd7RYrIb/SnTBdZmT8ohHvoCeV3iQro2DZEtvgS3/3h4VFDP4o+YditX2FjGvR9suWIGbEzwh3VY6ipbtHcbG7D1TO9n1zObgzqCglIZ9mjv0wfFMAESaeo2Upf1G+ZqR/nOvuVyjWyYmKVk2WUNlg3847dpNUsEueuc6skkxBUPTXVCqsxpKZHn16YgvO9F/VXFEkZvJ7fJpQ==
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=f/x2oolKXu3ODO386f357vWTUw470ro8Pu4qPTnW2Gg=; b=iRzL5ZuycSJxEbotYhjUovyMchakb7yEN9MvlRxEmnxzxBcQ6EYCLJDU50bX96X7aXYo8vpI4eZT7RTryv39WnFzvzYUfxTRGpzyVj2epGFtF/9UQ6wcEKDJSJZkGRlSG1Wc8ZNjQ10cRAa1grRbjI4RzbLeiQbKZ41Q1jLunF+CcLh+40Qc4Dwmy8VKNIsvga8/7YB65BUthIF5jXACuV7BBjwHNi4KRf2CYbKdtWH99/SQkiYA03++U5xSVT+8nywmvH5D/etVIUvOkee6aeTwBESfhqzTSE2M0gEWykCgrQ0u/mbwX6cUml0Shuis9e4RNEwB5FnOwYMjs2pqXA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sysconfig.cloud; dmarc=pass action=none header.from=sysconfig.cloud; dkim=pass header.d=sysconfig.cloud; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sysconfigcloud.onmicrosoft.com; s=selector2-sysconfigcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=f/x2oolKXu3ODO386f357vWTUw470ro8Pu4qPTnW2Gg=; b=R/GENZcF1g11aD+BOZRAnioxRwTcU4tatypEl4BzkOCYlSFYCallNU1TfYMb9i0/O7orXZAwo33DSV0QI5pjxyQuD9eo5ooa9Oak3tLiyk+XwYylmvmhwHpDVRP1LaUaUxoOqM0oZh6M4vs4vwH0oap1rxuh2Yok8r6L/GtZHjU=
Received: from CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:65::18) by CWLP123MB3537.GBRP123.PROD.OUTLOOK.COM (2603:10a6:400:6c::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3348.15; Sat, 5 Sep 2020 09:43:02 +0000
Received: from CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM ([fe80::8ff:820a:e5dc:8c5]) by CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM ([fe80::8ff:820a:e5dc:8c5%7]) with mapi id 15.20.3348.017; Sat, 5 Sep 2020 09:43:02 +0000
From: Shaun Stokes <shaun@sysconfig.cloud>
To: "dispatch@ietf.org" <dispatch@ietf.org>
Thread-Topic: RFC 3261 section 14.2 - "brand new call" does not specify whether the SDP should modify media attributes of an existing session containing a=sendonly or a=recvonly
Thread-Index: AQHWg2gYHH2V6BZ0ZUafyW0sY8KTHA==
Date: Sat, 05 Sep 2020 09:43:02 +0000
Message-ID: <CWLP123MB2371666E1183360960FBE3DFB72A0@CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM>
Accept-Language: en-GB, en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: ietf.org; dkim=none (message not signed) header.d=none;ietf.org; dmarc=none action=none header.from=sysconfig.cloud;
x-originating-ip: [185.209.248.125]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: a5292dea-a132-4574-b418-08d851801549
x-ms-traffictypediagnostic: CWLP123MB3537:
x-microsoft-antispam-prvs: <CWLP123MB35376144B821C752E24CC9EAB72A0@CWLP123MB3537.GBRP123.PROD.OUTLOOK.COM>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: QLMxtkADOPRGA5xbIrmJR3amHM4xKU68m+l8IURt6uFxsLO5HbMBcJ12iKRVbLjoK9R6zJBUXnWjeTfj9HXF4OWJC2pzJKRxxuTNrdepcUM+cevL03x1liJI0ntheDIJB9zoSwZdsq1OKNgO4nWS4CA6fTIAopkm+5Us8TxKM8+hTkDT+txloJbBAx0wdxRmX3FmNLvp4C1YTdxu047nMIsyuaROij9acnB+tZRmhWzK1oQpHCkWRQapKTSKJBSj7IyiNYd633Eg2/DPeszD5ntHn2kYy8N/SiFPZT/j1NQ5G03qeaRJlJEnqjlhe+VnQPlOxHu0kIDdAzQ60q3BIQ1BUgKjlIFXCINtdX4xkBfGj22OQB9ng3aXKItScvgO0jp38WmPZji/UyNVlOFO3KbHbWp8T5oNK8SjsYGe+77mTL2Vmq2XpEWZkzCCbrnitpc5KL7K2MIAj6Y62pzcBg==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(366004)(346002)(39830400003)(396003)(136003)(376002)(209900001)(55016002)(86362001)(478600001)(186003)(6916009)(7696005)(33656002)(8676002)(966005)(71200400001)(66446008)(66946007)(66476007)(64756008)(66556008)(52536014)(76116006)(5660300002)(316002)(19627405001)(166002)(9686003)(6506007)(26005)(83380400001)(8936002)(2906002)(6606295002); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata: a2z9zDgIohtvZoTQ2CtzVXs50seYc7UciLjPNaabFl2BrJS+opzJoGGabsGapj5Bu7HAt+S+hrllRjC80xCogQa63EusRA4fwjxA4qEFvN0KcHLcGr7epG6gYsbwp6VQ+K2jCsa0hYG+Tf5ho2GcGsK8EsuYTToYZ01EM+zKRU1en3q5URCryay23QBuxz9WTW4heVHcBT8ndjbmZxxjha/OkWAgo+7W4+Ha1rBYTV8iUjOeOwZ55eK/8bjK8QOANVBcY5VYMrgtBvoS0CMxeKL0JdmYhbgNb0tGCmX/nUQXHZUKOH0nt3mhWRwhLfGHBI6hf7CxzRI5IZxHOth5bXUOe1bODxM2smxgX9EZyX4cT8XJnzseiDAEyQerSCXE0sXkO8wcQkwv9p5UvNVotDB7O6C+pRdcqRnPuzgjO303TrjZ6kNNswyT0qMXxHSWZrU1PkABG4Z6ZqDRfhrJ22mkRRvmxomu/iotNawXvbE7TcEO+doNG15PxyO8v+PuFKUy3KDUorMUWTzmr3GLPIFXNtPwpBMr/iQ5YYM8GXkNhAcv3G6tEldsw6GoE1zS/uUf52nekUmtg06Cq2zABYFeGDEyzQmYKQ2csqPoy2ccVKz6CkR4rk8DZ8tJGsPbQZXeAKbs4dtLSCxmg3lF3g==
x-ms-exchange-transport-forked: True
Content-Type: multipart/alternative; boundary="_000_CWLP123MB2371666E1183360960FBE3DFB72A0CWLP123MB2371GBRP_"
MIME-Version: 1.0
X-OriginatorOrg: sysconfig.cloud
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: CWLP123MB2371.GBRP123.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: a5292dea-a132-4574-b418-08d851801549
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Sep 2020 09:43:02.6191 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 99e3da6c-7a85-49ad-978a-a3c1cfb6cbef
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: HefNhoPbizrFdfs1Oh1nmZ+wxv0DGNGVEG0hhzqHLHE4gaEku1g+ngp+Pu0S908INg0OCKihYgUmNOtWVrm+hg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CWLP123MB3537
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/3uK-am6GRKwgJQlAJ13ExEHCDJE>
Subject: [dispatch] RFC 3261 section 14.2 - "brand new call" does not specify whether the SDP should modify media attributes of an existing session containing a=sendonly or a=recvonly
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>, <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>, <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 05 Sep 2020 09:46:55 -0000

Hi,

We are struggling with some of the interpretation used in RFC 3261 section 14.2 which is creating a conflict between the software we use (FreeSWITCH) and another environment (based on Cisco previously Broadsoft equipment) both of which claim to be RFC 3261 compliant and claim that the other is not.

The problem occurs when the 3rd party sends an SDP with the media attribute 'a=sendonly' on an existing session then follow with a RE-INVITE with-out an SDP, they claim that our 2xx offer in response should contain an SDP with-out 'a=sendonly' (or replace with 'a=sendrecv') based on the interpretation of a "brand new call" used below. Anthony Minessale II (FreeSWITCH lead) claims that "brand new call" is only intended to refer to codecs (not all media attributes) and that the 3rd party (Broadsoft) invented this concept on their own.

RFC 3261

14.2 UAS Behavior
A UAS providing an offer in a 2xx (because the INVITE did not contain
an offer) SHOULD construct the offer as if the UAS were making a
brand new call, subject to the constraints of sending an offer that
updates an existing session, as described in [13] in the case of SDP.
Specifically, this means that it SHOULD include as many media formats
and media types that the UA is willing to support.  The UAS MUST
ensure that the session description overlaps with its previous
session description in media formats, transports, or other parameters
that require support from the peer.  This is to avoid the need for
the peer to reject the session description.  If, however, it is
unacceptable to the UAC, the UAC SHOULD generate an answer with a
valid session description, and then send a BYE to terminate the
session.

Source: https://tools.ietf.org/html/rfc3261#section-14.2


The 3rd party have also stated that this isn't a call going on hold as it's routing to an ACD group, according to RFC 6337 section 5.3 "the use of sendonly/recvonly is not limited to hold".

In the following discussion on this subject involving the authors of RFC 3261 there is a clear indication that a RE-INVITE with-out an SDP should not modify 'a=sendonly', unfortunately this isn't enough to support our argument and our service providers protocol lead have determined that the 3rd party is acting correctly and have asked for more evidence.
http://marc.info/?t=98738614300001&r=1&w=2

We have also pointed out that RFC 3264 section 8 states that the offer MAY be identical to the last SDP provided but are promptly referred back to "brand new call" in RFC 3261 section 14.2.

RFC 3264

8 Modifying the Session
At any point during the session, either participant MAY issue a new
offer to modify characteristics of the session.  It is fundamental to
the operation of the offer/answer model that the exact same
offer/answer procedure defined above is used for modifying parameters
of an existing session.

The offer MAY be identical to the last SDP provided to the other
party (which may have been provided in an offer or an answer), or it
MAY be different.  We refer to the last SDP provided as the "previous
SDP".  If the offer is the same, the answer MAY be the same as the
previous SDP from the answerer, or it MAY be different.  If the
offered SDP is different from the previous SDP, some constraints are
placed on its construction, discussed below.

Source: https://tools.ietf.org/html/rfc3264#section-8


I'm struggling to find anything more in RFC which can support our argument, is it possible to update RFC 3261 14.2 to be more specific in the terminology for "brand new call" or is this answered elsewhere?

Hope someone here can help.

Regards,
Shaun