Re: [tram] SSODA in TURN-bis

Oleg Moskalenko <mom040267@gmail.com> Fri, 09 January 2015 03:33 UTC

Return-Path: <mom040267@gmail.com>
X-Original-To: tram@ietfa.amsl.com
Delivered-To: tram@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 06F1B1A1B60 for <tram@ietfa.amsl.com>; Thu, 8 Jan 2015 19:33:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.747
X-Spam-Level:
X-Spam-Status: No, score=-1.747 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, NORMAL_HTTP_TO_IP=0.001, SPF_PASS=-0.001] autolearn=no
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 lb6saMvo8OKM for <tram@ietfa.amsl.com>; Thu, 8 Jan 2015 19:33:25 -0800 (PST)
Received: from mail-qc0-x22b.google.com (mail-qc0-x22b.google.com [IPv6:2607:f8b0:400d:c01::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 520D51A1A28 for <tram@ietf.org>; Thu, 8 Jan 2015 19:33:25 -0800 (PST)
Received: by mail-qc0-f171.google.com with SMTP id r5so6461078qcx.2 for <tram@ietf.org>; Thu, 08 Jan 2015 19:33:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:mime-version:in-reply-to:content-type :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=leUpVzCKmS5mGLx+BtBpkLow3IMf+JnJa+4Nl05jGkU=; b=cIbozolusSfdXeAZdUSuObO6mW6qQdop/u2Z7PQ2PEBv9Z9OZB7fE71yoMiXiyhacY BVGcSKvo0ftamrjNpVddtLt+OG6aiqSv6Lwi/U5K/pDJTO99u4EDiENw1ro+hwat4n4H nuVQENVIWFL4rzi76+nN89va0ZA9+faLbPpSRHLZ4YzwCWKBzI1q6wG8JuRXsGVbz4iX VXpKLZPZKVBYwfx3wF0B45B7iPQMcNLS/cB8t2wc6U3cWm9KIxymqwT8qPwp+xSVjTfq sUE2ZBy2dx6BvVqoH8TFT9SxxZDbjb2hfb/wf9GkVNy8nnGcjAKIYcpzXbPgQr5oDrzw UpRw==
X-Received: by 10.229.92.196 with SMTP id s4mr1821012qcm.25.1420774404489; Thu, 08 Jan 2015 19:33:24 -0800 (PST)
Received: from [10.73.211.179] (nat-dip31-wl-e.cfw-a-gci.corp.yahoo.com. [66.228.162.48]) by mx.google.com with ESMTPSA id p69sm5886232qga.27.2015.01.08.19.33.22 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 08 Jan 2015 19:33:23 -0800 (PST)
References: <913383AAA69FF945B8F946018B75898A35527E46@xmb-rcd-x10.cisco.com> <CAOJ7v-2RVPm=7eWaw05Um6kysbp=1Ch5KQ_me4Q4XXyE4jaTkA@mail.gmail.com> <00b201d02b12$c0ca8d50$425fa7f0$@org.cn> <CAOJ7v-0HNYpYcE5a1XUH-AiL_hPeTCDHj0i+=A5M7owkMFjjgQ@mail.gmail.com> <913383AAA69FF945B8F946018B75898A35529742@xmb-rcd-x10.cisco.com> <008f01d02bb9$fef15f80$fcd41e80$@org.cn>
Mime-Version: 1.0 (1.0)
In-Reply-To: <008f01d02bb9$fef15f80$fcd41e80$@org.cn>
Content-Type: multipart/alternative; boundary="Apple-Mail-B6B34FC4-5048-43D2-9265-088B38F2CFB4"
Content-Transfer-Encoding: 7bit
Message-Id: <7AD7A728-F88F-484C-8F46-CBDAD9203A40@gmail.com>
X-Mailer: iPhone Mail (11D201)
From: Oleg Moskalenko <mom040267@gmail.com>
Date: Thu, 08 Jan 2015 19:33:24 -0800
To: Aijun Wang <wangaijun@tsinghua.org.cn>
Archived-At: <http://mailarchive.ietf.org/arch/msg/tram/bSZ6SJzBRsT8ILPBS1Q3ORKFvJo>
Cc: "tram@ietf.org" <tram@ietf.org>, "Tirumaleswar Reddy (tireddy)" <tireddy@cisco.com>, Justin Uberti <juberti@google.com>
Subject: Re: [tram] SSODA in TURN-bis
X-BeenThere: tram@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discussing the creation of a Turn Revised And Modernized \(TRAM\) WG, which goal is to consolidate the various initiatives to update TURN and STUN." <tram.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tram>, <mailto:tram-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tram/>
List-Post: <mailto:tram@ietf.org>
List-Help: <mailto:tram-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tram>, <mailto:tram-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 09 Jan 2015 03:33:29 -0000

That is my proposal, too.

The main objection is that some are saying that that will break the old servers. But nobody provided an example of an old server that would be broken. That possibility is remote; I believe that making a "symmetric" clean protocol with RAF for both ipv4 and ipv6 is more important.

Thanks
Oleg

Sent from my iPhone

> On Jan 8, 2015, at 7:11 PM, "Aijun Wang" <wangaijun@tsinghua.org.cn> wrote:
> 
> Hi, Reddy and Justin:
>  
> Can we use only one attribute to accomplish the requirement of relay address that for additional address family? The TURN server can deduct the default relay address type by the XOR-MAP-Address that it seen from the  allocation request.  It can also satisfy the further situation such as only IPv6 TURN server deployed, but there is still the Dual stack ICE client exist.
>  
> Reuse or Redefine the RAF attribute then?
>  
> Best Regards.
>  
> From: Tirumaleswar Reddy (tireddy) [mailto:tireddy@cisco.com] 
> Sent: Friday, January 09, 2015 10:35 AM
> To: Justin Uberti; Aijun Wang
> Cc: tram@ietf.org
> Subject: RE: [tram] SSODA in TURN-bis
>  
> Hi Justin,
>  
> option c) looks good, it was discussed in the WG sometime back that TURN-bis client MUST include R-A-F in the Allocate request.
>  
> -Tiru
>  
> From: Justin Uberti [mailto:juberti@google.com] 
> Sent: Friday, January 09, 2015 1:53 AM
> To: Aijun Wang
> Cc: Tirumaleswar Reddy (tireddy); tram@ietf.org
> Subject: Re: [tram] SSODA in TURN-bis
>  
>  
>  
> On Wed, Jan 7, 2015 at 11:14 PM, Aijun Wang <wangaijun@tsinghua.org.cn> wrote:
> Hi, Justin,
>  
> Is it more straightforward to define one new attribute that named “Additional-Address-Family ” instead of the R-A-F and  OPTIONAL-ADDRESS-FAMILY? The endpoint that does not include this attribute will be assigned the relay address that is the same type as seen from the source address of “Allocate Request” packet, not default in IPv4 relay address.
>  
> I suppose this could be a third option (c), in addition to (a) multiple R-A-F and (b) multiple optional-a-f.  Here's how a/b/c look on the wire when requesting v4+v6 simultaneously. If requesting v4 or v6 only for some reason, a/b/c would all send a single RAF.
>  
> a: RAF (v4) + RAF (v6)
> a1: server is 5766: error (RAF required-comprehension but unknown)
> a2: server is 6156: v4 address, or error (undefined behavior)
> a3: server is SSODA: v4 address + v6 address
> b: OAF (v4) + OAF (v6)
> b1: server is 5766/6156: v4 address (OAF ignored)
> b2: server is SSODA: v4 address + v6 address
> c: AAF (v6)
> c1: server is 5766/6156: v4 address (AAF ignored)
> c2: server is SSODA: v4 address + v6 address
>  
> Note that for c), one could send RAF(v4) + AAF(v6), but since that would fail on a 5766 server, sending just AAF(v6) would be preferable.
> Note that for b), if one sent OAF(v6) by itself for some reason, a 5766 server would return a v4 address, which is slightly inelegant.
> For either b/c, we would need to say that including both RAF and OAF/AAF for the same address family is prohibited.
>  
> b) is nice in that it avoids implicit behavior (i.e. that IPv4 is the default AF), but feels a bit more complicated than c). I am supportive of either b)/c), with maybe a slight preference for c).
>  
>  
> For reducing the port resource consumption on TURN server that described in https://tools.ietf.org/html/draft-martinsen-tram-ssoda-01, we have another proposal http://datatracker.ietf.org/doc/draft-wang-tram-turnlite/ that can mitigate the ip address/port allocation burden on TURN server------All endpoints that under one TURN server can use the same IPv4/IPv6 relay  address/port.
>  
> The port consumption is a side benefit; the primary benefit of SSODA is the reduction in the overall number of candidates.
>  
> Best Regards.
> Aijun Wang.
>  
> From: tram [mailto:tram-bounces@ietf.org] On Behalf Of Justin Uberti
> Sent: Thursday, January 08, 2015 12:02 PM
> To: Tirumaleswar Reddy (tireddy)
> Cc: tram@ietf.org
> Subject: [SPAM] Re: [tram] SSODA in TURN-bis
>  
> I promised I would write up a summary of the current mechanism, and what we could do instead, so here goes:
>  
> The currently documented mechanism is to send two R-A-F attributes in the request, and get back either a single address (from legacy servers), v4 + v6 addresses (from new servers), a single address + a 0.0.0.0/:: (for new servers that only support one address family), or an error-code (to indicate complete failure).
>  
> At the time, there were 2 concerns listed, namely:
> 1) sending multiple R-A-Fs is undefined behavior; old (6156) servers may fail the request completely, or do other weird things.
> 2) using 0.0.0.0/:: to indicate partial success is somewhat unclean; specifically, detailed error information cannot be included.
>  
> I also thought of a 3rd problem:
> 3) an old(5766) server may fail the request completely, due to the fact that R-A-F is comprehension-required. Thus an extra roundtrip may be needed in this case, negating one of the benefits of SSODA.
>  
> I think the ideal solution to #1/#3 is to add a new OPTIONAL-ADDRESS-FAMILY attribute, identical to R-A-F but comprehension-optional, where multiple values are explicitly supported. Old servers can safely ignore this and will return IPv4 (solving #3), while new servers can process this to return multiple XOR-RELAYED-ADDRESSes in the response.
> #2 is not a serious issue, but it could easily be solved by defining a new ADDRESS-ERROR-CODE as follows:
>  
>       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>       |  Address Family                |  Rsvd  |Class|     Number    |
>       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>       |      Reason Phrase (variable)                                ..
>       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>  
> Then a server could return a normal IPv4 address, but a error code for IPv6 with either 440 (unsupported address family) or 508 (insufficient capacity) or some other TBD error.
>  
> I advocate we do the OPTIONAL-ADDRESS-FAMILY attribute as it is simple and prevents potential interoperability problems with old servers. I could go either way on ADDRESS-ERROR-CODE.
>  
>  
>  
> On Wed, Jan 7, 2015 at 6:02 PM, Tirumaleswar Reddy (tireddy) <tireddy@cisco.com> wrote:
> Hi all,
>  
> We are working on incorporating RFC6156 and SSODA into TURN-bis. During IETF-91 meeting there was discussion if the technique proposed in https://tools.ietf.org/html/draft-martinsen-tram-ssoda-01 would break existing TURN server implementations.  Pal had mentioned testing with four implementations and did not face any problem.
>  
> Please let us know if there are any concerns with the existing proposal of conveying two REQUESTED-ADDRESS-FAMILY attributes with different attribute values in Allocate request ?
>  
> Cheers,
> -Tiru
> 
> _______________________________________________
> tram mailing list
> tram@ietf.org
> https://www.ietf.org/mailman/listinfo/tram
> 
>  
>  
> _______________________________________________
> tram mailing list
> tram@ietf.org
> https://www.ietf.org/mailman/listinfo/tram