Re: [sipcore] 503 response with Retry-After header field - request for clarification

Brett Tate <brett@broadsoft.com> Mon, 01 December 2014 14:19 UTC

Return-Path: <brett@broadsoft.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1332E1A1BD4 for <sipcore@ietfa.amsl.com>; Mon, 1 Dec 2014 06:19:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.979
X-Spam-Level:
X-Spam-Status: No, score=-1.979 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham
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 DsuPHqa6WXGh for <sipcore@ietfa.amsl.com>; Mon, 1 Dec 2014 06:19:04 -0800 (PST)
Received: from mail-qa0-f43.google.com (mail-qa0-f43.google.com [209.85.216.43]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 396A71A0115 for <sipcore@ietf.org>; Mon, 1 Dec 2014 06:19:04 -0800 (PST)
Received: by mail-qa0-f43.google.com with SMTP id bm13so7320244qab.30 for <sipcore@ietf.org>; Mon, 01 Dec 2014 06:19:03 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:references:in-reply-to:mime-version :thread-index:date:message-id:subject:to:content-type; bh=v1qYb6NwPNaYZ9+WxpCRE6bnnO/bhmRlCx5f9W8k/dw=; b=DmNn2p+T0sDzu0rO9hq8Clw3okHJY8mBrdTdNogd6zWlCUXzhN86OYg5+VAm7+4Wdg O6yYnFnt7nbOzifAFbyIIBXONnx7Ec2rItfw8L2vOv/Bno3JFGTZB29oVi6bzlbcYxkm TrL5nLYvqd7pOfuv43Rb7REoT6rNRBAaJgv6jpBb78Jq6owOJuF6CDtajkTxeQycYINt nof8lNcFsZCdwizQJwNb3jx4294ZBGJafqqOk3wbI04f8kCRbGDpw6744gOe1HruAY1g LICmLTZy4FFm3KlBsHk9ts+XW4gFTSuJDuNOBAjBKJgl0JFoaZ/Ej9icVj43mZTIke+T emPA==
X-Gm-Message-State: ALoCoQnS4cPsZyeNDe9orHOonCo2/sG8zIqlGxW7Y7xacfA4EY2P19z3D4A+BOA6FjQWArLjrLI/
X-Received: by 10.140.38.102 with SMTP id s93mr84348968qgs.18.1417443540741; Mon, 01 Dec 2014 06:19:00 -0800 (PST)
From: Brett Tate <brett@broadsoft.com>
References: <39B5E4D390E9BD4890E2B31079006101127A29FB@ESESSMB301.ericsson.se> <5475504F.3070400@nostrum.com>
In-Reply-To: <5475504F.3070400@nostrum.com>
MIME-Version: 1.0
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQEgzkc0BWk9xbXBIc7ssa2HwqHocQGiIiNNncwoPnA=
Date: Mon, 01 Dec 2014 09:18:59 -0500
Message-ID: <c9715008906b32278b830b48a2154083@mail.gmail.com>
To: sipcore@ietf.org
Content-Type: text/plain; charset="UTF-8"
Archived-At: http://mailarchive.ietf.org/arch/msg/sipcore/_4n8QcyNDbumfmF1O7dMuvyBiPo
Subject: Re: [sipcore] 503 response with Retry-After header field - request for clarification
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 01 Dec 2014 14:19:06 -0000

> If you send a BYE to the same thing that sent you a 503
> for any other reason, before the Retry-After has expired,
> you are violating protocol.

Yes; it is a violation of the RFC 3261 section 21.5.4 SHOULD NOT.

"A client (proxy or UAC) receiving a 503 (Service Unavailable) SHOULD
attempt to forward the request to an alternate server.  It SHOULD NOT
forward any other requests to that server for the duration specified
in the Retry-After header field, if present."

RFC 5390 presents some reasons (directly or indirectly) why you might want
to violate the SHOULD NOT.  For instance, you might consider the 503 with
Retry-After mechanism to be too insecure to trust that you really should
not send any requests to a particular server for the next hour, day, or
year.

Similarly as mentioned within RFC 5390 section 5.2, RFC 3261 is unclear
concerning "server" in relation to the scope of the 503.  It is unclear
about "server" being 1) IP address where sent request, 2) source IP
address of received response, and/or 3) something else.  And based upon
draft-ietf-sipcore-dns-dual-stack's intention to cause trying both IPv4
and IPv6 addresses, I'd love to hear the proposal about how you avoid
attempting the same server twice when a 503 is received.

Thanks,
Brett