[MMUSIC] RTSP 2.0: Section 18.20: Sequence numbering.

Elwyn Davies <elwynd@folly.org.uk> Wed, 09 October 2013 15:13 UTC

Return-Path: <elwynd@folly.org.uk>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CB91421E809C for <mmusic@ietfa.amsl.com>; Wed, 9 Oct 2013 08:13:27 -0700 (PDT)
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 ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HEBjYzvN7kJI for <mmusic@ietfa.amsl.com>; Wed, 9 Oct 2013 08:13:21 -0700 (PDT)
Received: from bounce.a.painless.aa.net.uk (a.painless.aa.net.uk [IPv6:2001:8b0:0:30::51bb:1e33]) by ietfa.amsl.com (Postfix) with ESMTP id 5B7D921E8096 for <mmusic@ietf.org>; Wed, 9 Oct 2013 08:13:19 -0700 (PDT)
Received: from mightyatom.folly.org.uk ([81.187.254.250]) by a.painless.aa.net.uk with esmtp (Exim 4.77) (envelope-from <elwynd@folly.org.uk>) id 1VTvRr-000096-Qa; Wed, 09 Oct 2013 16:13:15 +0100
From: Elwyn Davies <elwynd@folly.org.uk>
To: "mmusic (E-mail)" <mmusic@ietf.org>, Magnus Westerlund <magnus.westerlund@ericsson.com>
Content-Type: text/plain
Organization: Folly Consulting
Date: Wed, 09 Oct 2013 16:16:20 +0100
Message-Id: <1381331780.13277.72869.camel@mightyatom>
Mime-Version: 1.0
X-Mailer: Evolution 2.26.3
Content-Transfer-Encoding: 7bit
Subject: [MMUSIC] RTSP 2.0: Section 18.20: Sequence numbering.
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Oct 2013 15:13:29 -0000

In the proces of checking the changes from v34 to v37, I found that
there have been some changes to the CSeq specification  (Section 18.20)
that seem a bit garbled.

In para 1, it is stated:
> For each new RTSP request an agent creates the CSeq value
>    MUST be incremented by one.

Then later:
> Agents receiving a request over a reliable transport with an in-order
>    delivery MUST ignore how the sequence value increments, i.e. it can
>    increment with other values than 1. 

and
> Proxies that aggregate several client sessions on the same transport
>    will have to ensure that the requests sent towards a particular
>    server have a joint sequence number space.  A proxy having one client
>    with concurrent sessions with two different servers using the same
>    client proxy connection can avoid rewriting on the proxy to server
>    connection.  

The first requirement is contradicted by the second and third stories.

We also have:
> It also enables detecting loss of a request
>    and await a retransmission prior to processing a sub-sequent request
>    when using unreliable transport.  

I understood that RTSP/2.0 is only specified to run over reliable
transports, so this either requires some usage of the subjunctive mood
or maybe deletion.  However, having non-sequential CSeq values would
indeed screw up any future usage of unreliable transport.

I wonder if this can be handled by changing the increment requirement so
that it applies to requests sent down a given server connection (or
channel).  Then if unreliable transports ever did come back, the
sequencing would still work on a per source/destination address/port
quadruple (or whatever), while giving unique (but not necessarily
integer sequential) numbering on the multiplexed connections.

Anyway, I think that this section needs another pass to sort out the
inconsistencies.

Regards,
Elwyn