Subject: [nfsv4] Is "skip by 1" allowed for the NFSv4.0 seqid?

From: Rick Macklem <[email-masked]>
Date: Wed, 1 Jul 2015 21:22:01 -0400 (EDT)

Hi,

If you look here (on page #6) it seems to indicate that
incrementing the seqid by 2 is allowed by the RFC.
(I'll admit the wording in RFC-3530 isn't ideal, but I've
 never heard of this interpretation before.)
  https://dl.dropboxusercontent.com/u/51939288/nfs4-bad-seq.pdf

RFC-7530 seems clear that it should only be incremented by 1.
However, I do notice that a wraparound of the seqid is supposed
to skip 0 and go to 1. I don't see any mention of this in RFC-3530.
--> Is an NFSv4.0 server supposed to accept both 0 and 1 as the
    correct next sequence # after UINT32_MAX?

Thanks for any help clarifying this, rick

---

From: David Noveck <[email-masked]>
Date: Thu, 2 Jul 2015 09:58:59 -0400

> Is "skip by 1" allowed for  NFv4.0 seqid?

No it isn't.  As you indicated RFC7530, which obsoletes RFC3530,, indicates
you are'
only allowed to increment by one, with the exception of the wraparound case.

> I'll admit the wording in RFC-3530 isn't ideal,

I think the text "(r == L+2)" is intended to be read as "(e.g. r == L+2)"
but the existing text
is unclear.

> but I've never heard of this interpretation before.

Me either.

> Is an NFSv4.0 server supposed to accept both 0 and 1 as the

I would say it isn't.  RFC7530 says "If the sequence value received is any other

value, it is rejected with the return of error NFS4ERR_BAD_SEQID"  In this case

the correct value is 1.  On the other hand, this isn't a "MUST".  If
there are clients out

out there that don't do seqid wraparound correctly, it is seems like a
reasonable

accommodation for a server to accept the incorrect value zero in this case.,

On Wed, Jul 1, 2015 at 9:22 PM, Rick Macklem <[email-masked]> wrote:

> _______________________________________________
> nfsv4 mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/nfsv4
>