[radext] A proposal to allow more than 256 packets on any connection

Alan DeKok <aland@freeradius.org> Mon, 24 April 2017 20:01 UTC

Return-Path: <aland@freeradius.org>
X-Original-To: radext@ietfa.amsl.com
Delivered-To: radext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5F3FF131592 for <radext@ietfa.amsl.com>; Mon, 24 Apr 2017 13:01:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=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 3tfjop7QUiWc for <radext@ietfa.amsl.com>; Mon, 24 Apr 2017 13:01:01 -0700 (PDT)
Received: from mail.networkradius.com (mail.networkradius.com [62.210.147.122]) by ietfa.amsl.com (Postfix) with ESMTP id D02B5129502 for <radext@ietf.org>; Mon, 24 Apr 2017 13:01:00 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by mail.networkradius.com (Postfix) with ESMTP id D20EC208E for <radext@ietf.org>; Mon, 24 Apr 2017 20:00:59 +0000 (UTC)
Received: from mail.networkradius.com ([127.0.0.1]) by localhost (mail-server.vmhost2.networkradius.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rhzBvG3IOqcc for <radext@ietf.org>; Mon, 24 Apr 2017 20:00:59 +0000 (UTC)
Received: from [192.168.20.29] (CPEf4cc552207f0-CM00fc8dce0fa0.cpe.net.cable.rogers.com [99.230.129.191]) by mail.networkradius.com (Postfix) with ESMTPSA id 53AF5778 for <radext@ietf.org>; Mon, 24 Apr 2017 20:00:59 +0000 (UTC)
From: Alan DeKok <aland@freeradius.org>
X-Pgp-Agent: GPGMail
Content-Type: multipart/signed; boundary="Apple-Mail=_D0E06DB8-B848-4B95-ACBA-DDB7EB8082BF"; protocol="application/pgp-signature"; micalg="pgp-sha256"
Date: Mon, 24 Apr 2017 16:00:57 -0400
References: <149306333665.25840.6313986250597447759.idtracker@ietfa.amsl.com>
To: radext@ietf.org
Message-Id: <1AB9F08E-0739-4BE3-9827-3EA830DC113B@freeradius.org>
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
X-Mailer: Apple Mail (2.3124)
Archived-At: <https://mailarchive.ietf.org/arch/msg/radext/IoeynO4w5s7BLL7QAh8-1oNuG_Q>
Subject: [radext] A proposal to allow more than 256 packets on any connection
X-BeenThere: radext@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: RADIUS EXTensions working group discussion list <radext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/radext>, <mailto:radext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/radext/>
List-Post: <mailto:radext@ietf.org>
List-Help: <mailto:radext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/radext>, <mailto:radext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 24 Apr 2017 20:01:03 -0000

  I've written a draft to allow more than 256 packets on any connection.  Note that I'm *not* proposing a change to the Id field, or to much else in the protocol.

  The document is a first draft, and doesn't cover some of the protocol details.  But the concept is very simple:

a) use Status-Server to negotiate the new functionality (see below for details)

b) allow clients to use Request Authenticator as a unique key for packets, in addition to src/dst ip/port, Code, and Id

  i) For Access-Request packets, Request Authenticator is a bunch of random numbers, which is fine.

  ii) for other packet types Request Authenticator is the signature of the packet contents and the secret.  So if the contents are the same, the Request Authenticator is the same.  If the contents are different, it's different.

c) have the server send a new attribute: Original-Request-Authenticator in response packets.  This allows clients to correlate responses with requests, using the key mentioned in (b), above.

  For negotiation, a client sends Status-Server containing Original-Request-Authenticator of all zeroes.  If the server has the functionality, it sends a response containing Original-Request-Authenticator with value copied from the original Request Authenticator.

  All other packet signing / Id management stays the same.

  I think this is the minimal possible change to RADIUS which solves the underlying problem.  As such, I hope it's also the least contentious.

  To do for the spec:

- more text on how Original-Request-Authenticator works in response packets

- more text on why this works for all packet types

- make the text less hacky (it was written in less than a day, after the concept was worked out)

- get WG review (I don't think we can achieve consensus quickly on this)

  Alan DeKok.

> Begin forwarded message:
> 
> From: internet-drafts@ietf.org
> Subject: New Version Notification for draft-dekok-radext-request-authenticator-00.txt
> Date: April 24, 2017 at 3:48:56 PM EDT
> To: "Alan DeKok" <aland@freeradius.org>
> 
> 
> A new version of I-D, draft-dekok-radext-request-authenticator-00.txt
> has been successfully submitted by Alan DeKok and posted to the
> IETF repository.
> 
> Name:		draft-dekok-radext-request-authenticator
> Revision:	00
> Title:		Correlating requests and replies in the Remote Authentication Dial In User Service (RADIUS) Protocol via the Request Authenticator.
> Document date:	2017-04-24
> Group:		Individual Submission
> Pages:		14
> URL:            https://www.ietf.org/internet-drafts/draft-dekok-radext-request-authenticator-00.txt
> Status:         https://datatracker.ietf.org/doc/draft-dekok-radext-request-authenticator/
> Htmlized:       https://tools.ietf.org/html/draft-dekok-radext-request-authenticator-00
> Htmlized:       https://datatracker.ietf.org/doc/html/draft-dekok-radext-request-authenticator-00
> 
> 
> Abstract:
>   RADIUS contains a one-octet Identifier field which is used to
>   correlate requests and replies.  This field limits the number of
>   outstanding requests to 256.  Experience shows that this limitation
>   is problematic for high load systems.  This document proposes to use
>   the Request Authenticator field as an additional unique identifier.
>   The replies can then be correlated to requests by copying the Request
>   Authenticator from the request to a new attribute in the response,
>   called the Original-Request-Authenticator.
> 
> 
> 
> 
> Please note that it may take a couple of minutes from the time of submission
> until the htmlized version and diff are available at tools.ietf.org.
> 
> The IETF Secretariat
>