Re: [AVTCORE] [MMUSIC] RTP/RTCP-mux: Attribute in answer if not included in offer?

Christer Holmberg <> Mon, 30 May 2016 14:25 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 8E9A812D5D4; Mon, 30 May 2016 07:25:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.22
X-Spam-Status: No, score=-4.22 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id j7r8g9iqNLEf; Mon, 30 May 2016 07:25:34 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 4450312D5EF; Mon, 30 May 2016 07:25:33 -0700 (PDT)
X-AuditID: c1b4fb30-f79486d0000069d0-dd-574c4d5bde70
Received: from (Unknown_Domain []) by (Symantec Mail Security) with SMTP id 61.5A.27088.B5D4C475; Mon, 30 May 2016 16:25:31 +0200 (CEST)
Received: from ([]) by ([]) with mapi id 14.03.0294.000; Mon, 30 May 2016 16:25:31 +0200
From: Christer Holmberg <>
To: Roni Even <>, 'Suhas Nandakumar' <>
Thread-Topic: [MMUSIC] [AVTCORE] RTP/RTCP-mux: Attribute in answer if not included in offer?
Thread-Index: AdG3iWsAcXNHXXrjTfakEZTp6P/ejwAHIEqAALHZ5oAABHKs+g==
Date: Mon, 30 May 2016 14:25:30 +0000
Message-ID: <>
References: <> <>, <04d601d1ba7e$189ec900$49dc5b00$>
In-Reply-To: <04d601d1ba7e$189ec900$49dc5b00$>
Accept-Language: en-US
Content-Language: en-GB
Content-Type: multipart/alternative; boundary="_000_7594FB04B1934943A5C02806D1A2204B3801E9C6ESESSMB209erics_"
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrGIsWRmVeSWpSXmKPExsUyM2K7k260r0+4wacedYuXPSvZLZa/PMFo MXX5YxaLv+3MFjvndjA7sHpMu3+fzWPnrLvsHkuW/GQKYI7isklJzcksSy3St0vgypjw4D5T wYXFjBWn51Y0MDZMYOxi5OSQEDCRONrSDmWLSVy4t56ti5GLQ0jgCKPE6yPdzBDOEkaJp0uW s3QxcnCwCVhIdP/TBjFFBIIk9jUIgPQyCyxmlPj5zQgkLCwQK7HzgTFIWEQgTuLU7jcsELaT xKINe5hBbBYBVYlVM56zgZTzCvhKzDujCrHoAKPEncalTCA1nECLTrX3g/UyAp32/dQaJohV 4hJNX1ayQpwsILFkz3lmCFtU4uXjf6wQNfkSa9YtYgexeQUEJU7OfMIygVFkFpL2WUjKZiEp g4gbSHx5fxvK1pZYtvA1M4StL9H9/jQTsvgCRvZVjKLFqcVJuelGRnqpRZnJxcX5eXp5qSWb GIGxd3DLb4MdjC+fOx5iFOBgVOLhVdDzDhdiTSwrrsw9xCjBwawkwqvg4xMuxJuSWFmVWpQf X1Sak1p8iFGag0VJnNf/pWK4kEB6YklqdmpqQWoRTJaJg1OqgTF1f/Xpra++PntR4v/oYON6 vr91yrM4jX48fGpnrvv588yJDhOtU5hVfkyZJ2srZKb/m9lxxgP2dxrvppiq/qgo49u65FxK +m6OHU9Lvpzqe3g8prLOJ9ouOW/Oj1vHFl6+Ft56QD9PM0/zrMyRK8LWhca62T/UH386FGl0 X+Mg99d1C71jgyYrsRRnJBpqMRcVJwIAYP3W4rkCAAA=
Archived-At: <>
Cc: Magnus Westerlund <>, "" <>, 'Colin Perkins' <>, "" <>
Subject: Re: [AVTCORE] [MMUSIC] RTP/RTCP-mux: Attribute in answer if not included in offer?
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Audio/Video Transport Core Maintenance <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Mon, 30 May 2016 14:25:36 -0000


In an offer a=rtcp is used to provide a fallback port, in case the answerer does not support RTP/RTCP-mux (but does support a=rtcp).



Sent from my Windows Phone
From: Roni Even<>
Sent: ‎30/‎05/‎2016 17:19
To: 'Suhas Nandakumar'<>; Christer Holmberg<>
Cc: Magnus Westerlund<>; 'Colin Perkins'<>;<>;<>
Subject: Re: [MMUSIC] [AVTCORE] RTP/RTCP-mux: Attribute in answer if not included in offer?

Agree with Suhas but have a question
What if the offer has an a=rtcp with a port different from the RTP one, and the response include a=rtcp using the same port as the RTP port? Is it allowed, at least in RFC3605 did not see any discussion about this


From: mmusic [] On Behalf Of Suhas Nandakumar
Sent: Friday, May 27, 2016 4:26 AM
To: Christer Holmberg
Cc: Magnus Westerlund; Colin Perkins (;;
Subject: Re: [MMUSIC] [AVTCORE] RTP/RTCP-mux: Attribute in answer if not included in offer?

Going along O/A negotiation procedures, i would lean towards your former conclusion that the offer needs to include the rtcp-mux ability.
If the offer doesn't include a=rtcp-mux and the answerer wants to mux , then it needs a new O/A from the answerer's perspectives.

If we make a=rtcp-mux a declarative SDP it might solve the other use-case ..


On Thu, May 26, 2016 at 1:01 PM, Christer Holmberg <<>> wrote:
(Sorry for the cross-posting)


There has been a discussion in 3GPP regarding RFC 5761 (RTP/RTCP-mux).

Section 5.1.1 says:

5.1.1.  SDP Signalling

   When the Session Description Protocol (SDP) [8] is used to negotiate
   RTP sessions following the offer/answer model [9], the "a=rtcp-mux"
   attribute (see Section 8) indicates the desire to multiplex RTP and
   RTCP onto a single port.  The initial SDP offer MUST include this
   attribute at the media level to request multiplexing of RTP and RTCP
   on a single port.  For example:

       o=csp 1153134164 1153134164 IN IP6 2001:DB8::211:24ff:fea3:7a2e
       c=IN IP6 2001:DB8::211:24ff:fea3:7a2e
       t=1153134164 1153137764
       m=audio 49170 RTP/AVP 97
       a=rtpmap:97 iLBC/8000

   This offer denotes a unicast voice-over-IP session using the RTP/AVP
   profile with iLBC coding.  The answerer is requested to send both RTP
   and RTCP to port 49170 on IPv6 address 2001:DB8::211:24ff:fea3:7a2e.

   If the answerer wishes to multiplex RTP and RTCP onto a single port,
   it MUST include a media-level "a=rtcp-mux" attribute in the answer.
   The RTP payload types used in the answer MUST conform to the rules in
   Section 4.

   If the answer does not contain an "a=rtcp-mux" attribute, the offerer
   MUST NOT multiplex RTP and RTCP packets on a single port.  Instead,
   it should send and receive RTCP on a port allocated according to the
   usual port-selection rules (either the port pair, or a signalled port
   if the "a=rtcp:" attribute [10] is also included).  This will occur
   when talking to a peer that does not understand the "a=rtcp-mux"

Q: The question is whether it is allowed to include a=rtcp-mux in an answer if the associated offer did NOT contain a=rtcp-mux.

The second last paragraph in the text above does say that, if the answer wishes to do RTP/RTCP-mux, it includes a=rtcp-mux in the answer.

BUT, in my view that is it based on the first paragraph, which assumes a=rtcp-mux is also included in the offer.

Or, am I wrong? Is it allowed to include a=rtcp-mux in the answer, even if it’s not included in the offer? If so, how will the offerer then indicate whether mux is used or not.



Audio/Video Transport Core Maintenance<>