Re: [tram] IPv4 and IPv6 allocations

Oleg Moskalenko <mom040267@gmail.com> Thu, 20 February 2014 17:39 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 97F4E1A0199 for <tram@ietfa.amsl.com>; Thu, 20 Feb 2014 09:39:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.749
X-Spam-Level:
X-Spam-Status: No, score=-1.749 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, 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 6kcbkuf467nf for <tram@ietfa.amsl.com>; Thu, 20 Feb 2014 09:39:27 -0800 (PST)
Received: from mail-pa0-x236.google.com (mail-pa0-x236.google.com [IPv6:2607:f8b0:400e:c03::236]) by ietfa.amsl.com (Postfix) with ESMTP id C37F81A0053 for <tram@ietf.org>; Thu, 20 Feb 2014 09:39:27 -0800 (PST)
Received: by mail-pa0-f54.google.com with SMTP id fa1so2188077pad.13 for <tram@ietf.org>; Thu, 20 Feb 2014 09:39:24 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=31H/YeYuFjdZoOiupstVTQR9JfRzmfM81lTRlj4uq1o=; b=hFfOebmDe1McYy5TOZL6uEj674g/wCuUpNUDuRP9gfBHYskhAJTwbgf06/+MbZqXTk SJK6f5Q6r8tpBm8lCj9ftsJS9ga+Q6iBinWU9P5ht4mH8ET8L1vF3059W/DN21Z316rX MPRjx/VEx3XX+j+b6G+Jwx3n19pu4BFNwopS1yX2fdQVBDPzBO5h8Mkq1y6DDV0khfqK /PDGtB92/SB15Z06Bkn50mI9AHKZkNiWE9J4ShoZ2UZJq2ramx2vYooq0IlLIu/QW2HX jePPaj6yXkXRJ0rD5chZFU9VTBuCW3y5mB/NhHrVsVoEzh79jARvR9eeFM1MeZi86VzI kYvQ==
MIME-Version: 1.0
X-Received: by 10.68.233.70 with SMTP id tu6mr3595838pbc.34.1392917964168; Thu, 20 Feb 2014 09:39:24 -0800 (PST)
Received: by 10.68.147.131 with HTTP; Thu, 20 Feb 2014 09:39:23 -0800 (PST)
In-Reply-To: <CAOJ7v-12eULEbgwLRL4MM--EPkcZA0ErvR8jZf0hiNQmiXL+iw@mail.gmail.com>
References: <CAJjP_Q9qQ-o=q+UVo=3Q2w2mnUpOG=ihPiGDMRPfrDNhzpiTNg@mail.gmail.com> <5304D0CA.9020201@viagenie.ca> <E836DCC6-A996-4201-A160-C9B2CC60B830@cisco.com> <5304DF60.7020200@viagenie.ca> <C7690C6E-9B85-4F0F-920B-446263D34D06@cisco.com> <5304E60F.1020807@viagenie.ca> <5304E9AE.5070202@viagenie.ca> <93BEDDC39A54294B9E78C7860516FA4724AA3FB7@AZ-US1EXMB06.global.avaya.com> <CAJjP_Q9F7bbP_ag3ask5v-ikR1Jh4vBUHuB7J+XQxZsUnzG3dQ@mail.gmail.com> <E38E346C-2AEE-4524-B99D-832337B6B678@cisco.com> <53050EBC.3040903@viagenie.ca> <74E1C6E2-E63E-4AB0-B085-30350A6B467C@gmail.com> <530513CF.7000502@viagenie.ca> <311FB4A0-7671-4EA2-A0B5-10F035AFEFA0@gmail.com> <CAOJ7v-1KViOjy3Hq=M=iOYk_UK8X9agRh6mCozzpEsw-GGb_-g@mail.gmail.com> <CALDtMrLz6u4JtXwS7ECgx+o0nerkyne0Bnr2T9cTv61XgSO4Gg@mail.gmail.com> <CAOJ7v-3k-xD6J+j8OitNkGCU-Bko-76At4FpmTZBDscK0ZrzJA@mail.gmail.com> <CALDtMrKpUA2qKf9MJVr5AAUe1Q8Sj6Ovx3OsBtbSV3pWnQ0NcA@mail.gmail.com> <5B62580E-890C-4034-B3CA-6530798F9E31@cisco.com> <CAOJ7v-12eULEbgwLRL4MM--EPkcZA0ErvR8jZf0hiNQmiXL+iw@mail.gmail.com>
Date: Thu, 20 Feb 2014 09:39:23 -0800
Message-ID: <CALDtMrL2suWzZu25775Q5cgeD3QASWdW3XhzMPHvtbRX6ee9+g@mail.gmail.com>
From: Oleg Moskalenko <mom040267@gmail.com>
To: Justin Uberti <juberti@google.com>
Content-Type: multipart/alternative; boundary="047d7b33d14674a50e04f2d9fc72"
Archived-At: http://mailarchive.ietf.org/arch/msg/tram/qWkRhV1R1RWQWibEksKI4lLI5Cg
Cc: Simon Perreault <simon.perreault@viagenie.ca>, "Pal Martinsen (palmarti)" <palmarti@cisco.com>, "tram@ietf.org" <tram@ietf.org>
Subject: Re: [tram] IPv4 and IPv6 allocations
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: Thu, 20 Feb 2014 17:39:29 -0000

On Thu, Feb 20, 2014 at 9:25 AM, Justin Uberti <juberti@google.com> wrote:

>
> > So, the client MUST NOT use the REQUESTED-ADDRESS, but the server may
>> expect that attribute...
>> >
>> I just noticed that as well. Funny..
>>
>> > So, I reconsider my opinion: let's not use the address-family in the
>> REFRESH at all, and refresh all relay endpoints regardless of their
>> protocols.
>> >
>> Well it is nice to have in there as the refresh is also used to delete an
>> allocation. So if you after ICE is completed ends up only using the IPv6
>> allocation you can delete the IPv4 allocation. This frees up resources on
>> the TURN server.
>>
>
> Yeah, that was my thinking as well. If RAF is absent, the refresh applies
> to all allocations. If the RAF is specified, the specific allocations are
> refreshed/deleted, or an error if the RAF doesn't match the existing
> allocations.
>

I suppose that this is probably the "least intrusive" option - if we want
to be able to free the resources. But I'd like to clarify the terminology.
How many allocations we have per TURN session ? I'd suggest to use the term
"relay endpoints" for the allocated relay sockets but I'd keep term
"allocation" as a synonym to "TURN session" (and then we have a single
allocation even if we have two relay endpoints per allocation).

Or we can separate "TURN session" and "allocation" and make the
"allocation" a synonym to "relay endpoint". We have to agree on a single
terminology to avoid the confusions.

So, RAF in REFRESH can be:

1) absent - then it is applicable to all available relay endpoints in the
session;
2) ipv4 - then it is applicable to ipv4 endpoint only and returns 443 if
ipv4 endpoint does not exist;
3) ipv6 - then it is applicable to ipv6 endpoint only and returns 443 if
ipv6 endpoint does not exist;
4) ipv4+ipv6 - then it is applicable to both endpoint only and returns 443
if ipv4 OR ipv6 endpoint does not exist;

Honestly, I'd remove 443 requirement and if the endpoint does not exist I'd
just ignore the request. That would simplify the client code on resource
cleaning. But that would make the specs not-backward-compatible so I
suggest keeping the 443 error.

Oleg