Subject: Transport requirements for NFSv4

From: Spencer Shepler <[email-masked]>
Date: Thu, 04 Nov 1999 18:14:04 -0600

Mike and I have exchanged some email about transports and the 
following is a suggested change to the I-D to address the use of 
transports by NFSv4:

   If the IPv6 protocol stack is implemented on the server's host, the
   NFS server MUST implement support for IPv6. If the IPv4 protocol
   stack is implemented on the server's host, the server MUST
   implement support for IPv4.

   The NFS server MUST offer its RPC service via TCP. 
   The server MAY also provide UDP and other transports, IP-based or not,
   for RPC service.  The NFS client MUST have a preference for TCP usage but 
   may supply a mechanism to override TCP in favor of another transport.

Comments?

Thanks,
Spencer

---

From: Eric Werme USG <[email-masked]>
Date: Thu, 04 Nov 1999 21:51:18 -0500

If the IPv6 protocol stack is implemented on the server's host, the
      NFS server MUST implement support for IPv6.

So if a vendor has an IPv6 stack ready to roll, but their NFS is still
tied to IPv4, they either don't ship IPv6 or drop NFSv4 support?

      If the IPv4 protocol

So if a new vendor some 4 or 5 years from now decides to add NFSv4, they
have to make it work with IPv4 or retire IPv4?

   
I see no reason to favor TCP in LAN-centric environments and less reason
to mandate it.
   
   Comments?

What you describe is desirable (except maybe for the TCP default), but I
don't understand the need to dictate such matters.

	-Ric Werme

--
Eric (Ric) Werme         |  [email-masked]
Compaq Computer Corp.    |  http://people.ne.mediaone.net/werme

---

From: Mike Eisler <[email-masked]>
Date: Thu, 4 Nov 1999 19:52:48 -0800 (PST)

> tied to IPv4, they either don't ship IPv6 or drop NFSv4 support?

Its kind of analogous to security. The different is that if your host os
doesn't have security you still "can't ship" NFSv4. If you host doesn't have
IPv6, you "can ship".

My thought is that NFSv4 should get with the program. The more applications
that do, the better off the world will be.

> have to make it work with IPv4 or retire IPv4?

Do you seriously think this is a major issue? IPv4 is going to be a no brainer
for the check list 20 years from now. If it changes, IETF can minor rev NFSv4
to erase IPv4 as a requirement.
  
> I see no reason to favor TCP in LAN-centric environments and less reason

Neither to I, but the Area Advisor has made it clear that NFSv4 has to have
congestion control or .... (not sure what .... actually is, but having seen 
tussles with AA's in other WGs, I'm not interested in finding out).

	-mre

---

From: Brent <[email-masked]>
Date: Thu, 04 Nov 1999 21:11:41 -0800

>    may supply a mechanism to override TCP in favor of another transport.

No objection to the TCP requirement.  I think it's important
that v4 be perceived as primarily a TCP-based Internet protocol
(that runs well over LANs) and not something that indiscriminantly
sprays UDP fragments everywhere.

But I think the IPv6/IPv4 requirements have nothing to do
with NFSv4. At this point I'd declare a layering violation
and say that it's none of NFSv4's business whether it runs
over IPv4 or IPv6 datagrams.  Jeez, where do we stop ?
Do we go further and make statements about Gigabit
Ethernet ?

	Brent

---

From: Mike Eisler <[email-masked]>
Date: Thu, 4 Nov 1999 21:52:29 -0800 (PST)

> over IPv4 or IPv6 datagrams.  Jeez, where do we stop ?

Neither do the TCP requirements have anything to to with NFSv4. But if we
specify TCP, we have to specify the network protocol, which is going to be IP.
So which IP?

> Do we go further and make statements about Gigabit

Reductio ad absurdum doesn't work. It is not possible to gateway
TCP segments from ipv6 nodes with ipv6-only addresses to ipv4 nodes; it is
possible to gateway tcp/ip segments from gigabit to ppp links.

The layering violation is specifying any transport as mandatory to implement.
NFS has been demonstrated work over non-tcp, non-udp, non-ip stacks. Other
than identifying the port number in the case when NFS goes over an IP transport,
we shouldn't get into transport. But the Area Advisor has made pointed
statements about NFSv4 and transport, so this is the catch 22 we find ourselves
in. 

	-mre

---

From: Brent <[email-masked]>
Date: Thu, 04 Nov 1999 23:35:12 -0800

> specify TCP, we have to specify the network protocol, which is going to be IP.

It doesn't matter - NFSv4 will run fine over any IP.

The NFSv4 standard must not be used as a soapbox to
dictate the IP version.

	Brent

---

From: Mike Eisler <[email-masked]>
Date: Fri, 5 Nov 1999 06:20:07 -0800 (PST)

> It doesn't matter - NFSv4 will run fine over any IP.

But an NFSv4 over TCP/IPv6 won't necessarily interoperate with a an NFSv4 over
TCP/IPv6. So if we don't care about that, why do we care if it runs over TCP
at all? Marketing?

> The NFSv4 standard must not be used as a soapbox to

NFSv4 shouldn't be used as a soap box to dictate the transport either. (There
are quite a few people who would substitue "IP version" for "security".) But,
just as with security, a well known big rule, apparently we have to dictate the
transport (aparently a lesser known big rule), so we need to completely
describe the transport we are dictating.
 
If the issue is simply concern about NFSv4 causing all kinds of congestion,
then why don't we simply state that NFSv4 MUST be offered over a connection
oriented transport, such as TCP, and the client MUST prefer to use a
connection oriented transport. 

	-mre