[Dime] Review of draft-ietf-dime-realm-based-redirect-02
jouni korhonen <jouni.nospam@gmail.com> Fri, 04 December 2009 13:13 UTC
Return-Path: <jouni.nospam@gmail.com>
X-Original-To: dime@core3.amsl.com
Delivered-To: dime@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 144F73A681A for <dime@core3.amsl.com>; Fri, 4 Dec 2009 05:13:55 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id a3Z0orF8A9t5 for <dime@core3.amsl.com>; Fri, 4 Dec 2009 05:13:52 -0800 (PST)
Received: from mail-bw0-f223.google.com (mail-bw0-f223.google.com [209.85.218.223]) by core3.amsl.com (Postfix) with ESMTP id 1120E3A6824 for <dime@ietf.org>; Fri, 4 Dec 2009 05:13:50 -0800 (PST)
Received: by bwz23 with SMTP id 23so1994226bwz.29 for <dime@ietf.org>; Fri, 04 Dec 2009 05:13:38 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:content-type :content-transfer-encoding:subject:date:message-id:cc:to :mime-version:x-mailer; bh=nE6bmYlUJIUAiR1KnTE1QXoMkKeZGGDoIDJnzg4IICQ=; b=gG1k3ui7qDIadxbowglF5ed7oi9umVZJ78xl8LrnwnGsmKiKS5E+m3hyr39d1Ytcm8 rIqRujEHlPPjhu5dbE7YzOUeNLbdmYhrcPpkRrH7bxv4vuOkoKOdvvEEiYs8rYuuNKB8 VP69hXKvby9Id6bu8rXaE6YDw/63fEgrIhd7k=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:content-type:content-transfer-encoding:subject:date:message-id :cc:to:mime-version:x-mailer; b=T6abmlMLQWJZaChJojgo43cTBVXe3EdYCSrG3CetYJ9FSiza0oLmTvisxRI0e2dPB/ +Hl7jgRkAY5SOTKTnktU5pQNTxbyKNyHG9u3U92wPMWAgD5NST4p1akjOLy81TRvZg00 yv90GIFncOtLz1gPxZLTaUspwpaBEOf4dBqBs=
Received: by 10.204.156.212 with SMTP id y20mr3234620bkw.126.1259932418703; Fri, 04 Dec 2009 05:13:38 -0800 (PST)
Received: from a88-114-70-210.elisa-laajakaista.fi (a88-114-70-210.elisa-laajakaista.fi [88.114.70.210]) by mx.google.com with ESMTPS id 12sm3483642fks.39.2009.12.04.05.13.37 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 04 Dec 2009 05:13:38 -0800 (PST)
From: jouni korhonen <jouni.nospam@gmail.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Fri, 04 Dec 2009 15:13:36 +0200
Message-Id: <8B283F4D-2B38-46DF-8AF2-1A2B0C6AEBD8@gmail.com>
To: dime@ietf.org
Mime-Version: 1.0 (Apple Message framework v1077)
X-Mailer: Apple Mail (2.1077)
Subject: [Dime] Review of draft-ietf-dime-realm-based-redirect-02
X-BeenThere: dime@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Diameter Maintanence and Extentions Working Group <dime.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/dime>, <mailto:dime-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/dime>
List-Post: <mailto:dime@ietf.org>
List-Help: <mailto:dime-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dime>, <mailto:dime-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Dec 2009 13:13:55 -0000
Hi,
I volunteered to do this review in the Hiroshima meeting. So here we go with my initial comments. Comments are prefixed with [JiK].
1. Introduction
The usual redirect indication as described in Section 6.1.7 and
Sections 6.12-6.14 of [RFC3588] returns one or more individual host
names to the upstream Diameter node. However, consider the case
where an operator has offered a specific service but no longer wishes
to do so. The operator has arranged for an alternative domain to
provide the service. To aid in the transition to the new
arrangement, the original operator maintains a redirect server to
indicate the alternative destination to upstream nodes. However, the
original operator has no interest in configuring a list of hosts in
the alternative operator's domain, and would prefer simply to provide
redirect indications to the domain as a whole.
[JiK] Do we actually have a real-world example of this kind of situation? Does not need to on Diameter.. I mean an analogy to some existing case would probably be nice. I find it surprising motivation that the "original operator" would be too phlegmatic to fix the situation along time.. unless someone is shipping brain dead devises with stuff hardcoded in their firmware that cannot be remotely upgraded.
Within this specification, the term "realm-based redirection" is used
to refer to a mode of operation where the redirect indication
specifies a realm and the upstream Diameter node reroutes the message
to the realm rather than an individual host.
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
2. Realm-Based Routing Application
[JiK] Is it rather "Realm-Based Redirection" as used below?
Because realm-based redirection is not part of base Diameter
behaviour, support for realm-based redirection by the client cannot
be guaranteed without advertisement at the application level. This
document therefore specifies a new application, Realm-Based Routing
(code TBD), for that purpose.
[JiK] How is this supposed to work.. in detail? Does it mean that:
1) when a Diameter peer sees this Application-Id being advertised in during CER/CEA, it knows that all other applications can also benefit from realm-based redirect support, or
2) only application with a new application can benefit from realm-based redirection? In this case you cannot define just one new application but rather take the approach what draft-ietf-dime-nai-routing had.. and require a new application to reference the RFC..
3. Realm-Based Redirection
This section specifies an extension to [RFC3588] to achieve realm-
based routing. The elements of this solution are:
[JiK] s/realm-based routing/realm-based redirection
o a new result code, DIAMETER_REALM_REDIRECT_INDICATION (3011);
o one new attribute-value pair (AVP), Redirect-Realm; and
o associated behaviour at Diameter nodes implementing this
specification.
3.1. Behaviour of Diameter Nodes
3.1.1. Behaviour at the Redirect Agent
This specification modifies Section 2.7 of [RFC3588] to permit
REDIRECT routing table entries to contain an alternative realm
instead of individual home server identities.
This specification modifies Section 6.1.7 of [RFC3588]. If the
realm-based routing table for a request contains a realm rather than
one or more home server identities, the redirect agent MUST set the
Result-Code AVP to DIAMETER_REALM_REDIRECT_INDICATION rather than
DIAMETER_REDIRECT_INDICATION. Furthermore, the redirect agent MUST
insert a Redirect-Realm AVP containing the realm from the routing
table entry in its answer message instead of one or more Redirect-
Host AVPs. It SHOULD insert a Redirect-Max-Cache-Time AVP to
indicate the scope and persistence of the redirection in upstream
Diameter nodes' routing caches. To prevent confusion at Diameter
nodes receiving the answer message, the Result-Code AVP MUST include
the Error-Reporting-Host AVP if the host setting the Result-Code AVP
[JiK] The Result-Code AVP cannot include Error-Reporting-Host AVP, right?
is different from the identity encoded in the Origin-Host AVP, in
conformity with Section 7.1 of [RFC3588]. All other aspects of
Section 6.1.7 remain the same as for host-based redirection.
3.1.2. Behaviour of Other Diameter Nodes
A Diameter node conforming to this specification which receives an
answer with the result code value DIAMETER_REALM_REDIRECT_INDICATION
SHOULD attempt to reroute the request to the indicated realm using
normal discovery procedures to find an appropriate destination host.
The receiving Diameter node SHOULD update its cache of routing
entries according to the direction provided by the Redirect-Max-
Cache-Time AVP, if present. The cache entry SHOULD be associated
with a redirect usage of ALL_REALM.
[JiK] If the original "stale" realm was learned from DNS, then which caching time has preference: the TTL from DNS or Redirect-Max-Cache-Time? The caching time from the AVP can potentially be longer than the DNS one and all this fuzz might just be because of long TTLs with DNS response caching..
3.2. The Redirect-Realm AVP
The Redirect-Realm AVP (code TBD) is of type DiameterIdentity. It
specifies a realm to which a node receiving a redirect indication
containing the result code value DIAMETER_REALM_REDIRECT_INDICATION
and the Redirect-Realm AVP SHOULD route the original request. The M
and V flags for the Redirect-Realm AVP MUST NOT be set.
[JiK] Why this restriction of 'M' flag? In Section 2 you require a new application anyway, thus 'M' should not be an issue.
Section 6.14 of [RFC3588] is modified to permit the Redirect-Max-
Cache-Time AVP to be used also to specify the persistence of cache
entries created by the Redirect-Realm AVP.
4. Security Considerations
Because real-based redirection implies a change in business
relationships, the node acting on the redirect indication SHOULD
verify that the new realm is authorized to perform the requested
service. Similarly the originator of the request SHOULD perform an
authorization check of the path as described in Section 2.10 of
[RFC3588].
5. IANA Considerations
This specification adds a new AVP code [286???] Redirect-Realm in
[JiK] [286??] eh..?
the AVP Code registry under Authentication, Authorization, and
Accounting (AAA) Parameters.
This specification allocates a new Result-Code value
DIAMETER_REALM_REDIRECT_INDICATION (3011) in the Result-Code AVP
Values (code 268) - Protocol Errors registry under Authentication,
Authorization, and Accounting (AAA) Parameters.
This specification defines a new Diameter application, Realm-Based
Routing, in the Standards Track portion of the Diameter application
identifier registry.
[JiK] as mentioned in Section 2 I think the application usage needs a bit more thought.
6. Acknowledgements
Glen Zorn, Sebastien Decugis, Wolfgang Steigerwald, Mark Jones, and
Victor Fajardo contributed comments that helped to shape this
document.
Cheers,
Jouni
- [Dime] Review of draft-ietf-dime-realm-based-redi… Sebastien Decugis
- Re: [Dime] Review of draft-ietf-dime-realm-based-… Tom Taylor
- [Dime] Review of draft-ietf-dime-realm-based-redi… jouni korhonen