Re: [Stox] Media Sessions (draft-ietf-stox-media-01) and forking

Christer Holmberg <> Sat, 10 August 2013 22:29 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id A2EC011E810F for <>; Sat, 10 Aug 2013 15:29:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -3.566
X-Spam-Status: No, score=-3.566 tagged_above=-999 required=5 tests=[AWL=-1.837, BAYES_00=-2.599, SARE_MLH_Stock1=0.87]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id iB7TulhzP9hS for <>; Sat, 10 Aug 2013 15:29:08 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id A30A921F8C93 for <>; Sat, 10 Aug 2013 15:22:40 -0700 (PDT)
X-AuditID: c1b4fb38-b7fb48e000000a68-63-5206bd2f7006
Received: from (Unknown_Domain []) by (Symantec Mail Security) with SMTP id B9.F4.02664.F2DB6025; Sun, 11 Aug 2013 00:22:39 +0200 (CEST)
Received: from ([]) by ([]) with mapi id 14.02.0328.009; Sun, 11 Aug 2013 00:22:38 +0200
From: Christer Holmberg <>
To: "Olle E. Johansson" <>, Paul Kyzivat <>
Thread-Topic: [Stox] Media Sessions (draft-ietf-stox-media-01) and forking
Thread-Index: AQHOkr+CCNsc18iZdk6pWyvtqEwZkZmKMP2AgALkT4CAATF/AIAAH3yAgAAEcgCAAJ6CEA==
Date: Sat, 10 Aug 2013 22:22:37 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: fi-FI
x-originating-ip: []
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrGLMWRmVeSWpSXmKPExsUyM+Jvra7+XrYgg/crFSxerj7EbLFiwwFW i/87mlgdmD3+vv/A5DFt7UpWjyVLfjIFMEdx2aSk5mSWpRbp2yVwZXx5eoq5YLZUxcmmbsYG xqciXYwcHBICJhJvj4l1MXICmWISF+6tZ+ti5OIQEjjKKPH42nkWCGcxo8TrndOZQRrYBCwk uv9pgzSICPhJdHyZzgoSZhZQljg0RRYkLCzgKbF51wd2iBIviW23HkLZYRJrjn5kBLFZBFQl jk14yApi8wr4StyevYQdYtUbVompk4+BNXAK2EmcPXGRGcRmBDru+6k1TCA2s4C4xIeD15kh jhaQWLLnPJQtKvHy8T9WCFtJonHJE1aIeh2JBbs/sUHY2hLLFr5mhlgsKHFy5hOWCYxis5CM nYWkZRaSlllIWhYwsqxi5ChOLU7KTTcy2MQIjJuDW35b7GC8/NfmEKM0B4uSOO8WvTOBQgLp iSWp2ampBalF8UWlOanFhxiZODilGhjLZ059cIvp8JIP/jemr/DaNPv4k93ObsKKIjyGFhFX w9gXN8R9P7+2MnVORo7Rb0MJs6myi+fKrGt7fakp6sB0ZnPfGXrLo+VPZJot/2bd89edMayz 7xNjzvboB63ywUV/w2y+Zqz0sb1zcHHqVD8GecsJFfcqHMKaA0Ri9LbN+WTeFBz2/pQSS3FG oqEWc1FxIgAlQdaFaQIAAA==
Cc: "" <>
Subject: Re: [Stox] Media Sessions (draft-ietf-stox-media-01) and forking
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: SIP-TO-XMPP Working Group discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Sat, 10 Aug 2013 22:29:13 -0000

>>>>>> The typical issue is that forking results in multiple early dialogs.
>>>>>> More than one may result in early media. To give good results the 
>>>>>> GW needs to pass on some or all of that early media to the XMPP side.
>>>>>> If more than one has early media, then its difficult to know what 
>>>>>> to do. You might pass *one* of them on to the XMPP side.
>>>>> I don't think we can pass the early media, since there is no way to 
>>>>> do it today. I'd go for leaving it unspecified. There seems to be 
>>>>> some action going on for rebooting Jingle, so when Jingle has a 
>>>>> story for early media a new document could be written specifying 
>>>>> it. Would this work for you? I know it doesn't cover all those 
>>>>> mutli-edarly-dialog cases, but I'm not sure we can do nay better at 
>>>>> this point.
>>> Just answer the call on the jingle side when you have early media. If 
>>> you haven't got billing on that side, it doesn't matter. If you have 
>>> billing, then don't answer. Easy to document.
>> That doesn't help very often. The case of concern is when the call originates from Jingle and an offer is included. This then gets gatewayed to SIP, and then forked. At that point each of the forks could start sending media back to the media address in the offer.
>> The Jingle end doesn't have the option to answer the call.
>> If the GW terminates and relays media, then it is possible for the GW to answer the Jingle call, prior to receiving an answer from any fork. Then the GW can decide what media to relay.
>> But that only works if the GW is a media relay. It isn't an option for a signaling only GW.
> Right, but I haven't seen anyone really interested in "signaling only" gw's. Emil said multiple times during our IETF meeting that it will be a b2bua anyway.

A B2BUA does not necessarily control media. Please take a look at, which discusses signaling B2BUAs :)

> Early media is just media - it's the billing that's the difference. There's no way to handle multiple early media streams "properly" even if you're a sip b2bua without Jingle at all...

That is correct. The difference is that we are now standardizing the behavior of the GW, so we do need to say something.

> So if you have a jingle endpoint placing a call to a SIP URI and the gateway gets early media from the SIP side, the gateway can answer the jingle call and relay the 
> early media. Whether it wants to mix or stay with the first stream in the case of multiple early media stream is propably up to the implementation - or it's time to 
> specify this behaviour.  Personally I would like to ban sending ring tones with 183 - if they used 180 for ring tones and 183 for other messages a gateway could suspend 
> the ring tones instead of mixing or just ignoring the second media stream.

If you are going to forward all early media from the SIP side (keep in mind that there may be multiple simultaneous early media streams coming from different SIP UASs), you also need to map and forward the SDP information received on each SIP early dialog to the Jingle side.