home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / protocol / nfs / 3038 < prev    next >
Encoding:
Text File  |  1993-01-04  |  3.6 KB  |  77 lines

  1. Newsgroups: comp.protocols.nfs
  2. Path: sparky!uunet!panther!mothost!merlin.dev.cdx.mot.com!pjd.dev.cdx.mot.com!peterd
  3. From: peterd@pjd.dev.cdx.mot.com (Peter Desnoyers)
  4. Subject: Re: NFS packet size
  5. Message-ID: <peterd.726170584@pjd.dev.cdx.mot.com>
  6. Sender: news@merlin.dev.cdx.mot.com (Merlin News System)
  7. Nntp-Posting-Host: pjd.dev.cdx.mot.com
  8. Organization: Motorola Codex, Canton, Massachusetts
  9. References: <u97b4fc@rhyolite.wpd.sgi.com> <C04t4o.K10@news.iastate.edu> <1993Jan1.115015.17311@prl.dec.com> <ubeuj2s@rhyolite.wpd.sgi.com>
  10. Date: Mon, 4 Jan 1993 18:03:04 GMT
  11. Lines: 64
  12.  
  13. vjs@rhyolite.wpd.sgi.com (Vernon Schryver) writes:
  14.  
  15. >In article <1993Jan1.115015.17311@prl.dec.com>, boyd@prl.dec.com (Boyd Roberts) writes:
  16. >> ...
  17. >> > A dropped TCP fragment can result in a large amount of resending too.
  18. >> 
  19. >> True, but that all happens at the TCP/IP level which is far more
  20. >> responsive than NFS's 1, 2, 4, 8 ... _second_ exponential backoff
  21. >> when a datagram gets lost.
  22.  
  23. >In other implementations of NFS, the NFS timeout starts at 0.7 seconds
  24. >not 1.0, and can be reduced to 0.1 seconds.  Please compare 0.1 seconds
  25. >with the standard TCP timeouts.
  26.  
  27. It still doesn't compare very well, at least on paper. With one second
  28. timeouts and 8K blocks, exponential retransmission ala NFS falls off
  29. to 50% throughput at an Ethernet packet loss rate of 0.001, and to 25%
  30. throughput at a loss rate of 0.004. With a 100 mS starting timeout,
  31. throughput falls to 50% at a loss rate of 0.01, and 25% at 0.025 or
  32. so. (all figures from eyeballing gnuplot graphs...)
  33.  
  34. With TCP on a local net, however, the retransmission timer should
  35. adapt to somewhere in the range of say 3 to 6 packet times (correct me
  36. if I'm wrong...), and so in the worst case (loss rate 0.025, timer = 6
  37. packet times) the throughput would be about 87%.
  38.  
  39. >> We had a flakey drop cable here a while back.  When it was bad it would
  40. >> take in the order of a minute to write an 8K block.  You could see the
  41. >> fragments being dropped and the NFS retries.  I _never_ want to see
  42. >> that again -- it was _awful_.
  43.  
  44. >It could have been as bad or worse if you had been using NFS or TCP.
  45. >Your TCP connections would have been timing-out and being recreated,
  46. >throwing away any successfully moved data, and forcing the systems to
  47. >attempt the extra packet exchanges that are required to start a TCP
  48. >connection, incurring even more grief.
  49.  
  50. If you lose a segment in TCP, you only need to get one frame through
  51. correctly for the connection to make progress, while for NFS with 8K
  52. blocks you need to get 6 frames through. In fact, a year or two ago we
  53. had some network problems that killed NFS, but never dropped telnet
  54. connections or X sessions. (in fact, you didn't really notice a
  55. problem with TCP services - FTP performance was only slightly
  56. degraded, while NFS throughput was terrible. )
  57.  
  58. It looks like there are several explanations for this:
  59.  
  60. - NFS works a block at a time, and so has an effective error rate
  61. about six times higher (for 8K blocks) than TCP, since the entire
  62. block gets retransmitted if any packet is in error. In particular, TCP
  63. only needs to get the first packet of the window through in order to
  64. keep from resetting the connection.
  65.  
  66. - Even if NFS didn't retransmit much more data than TCP (it does, due
  67. to the larger effective packet size) it also spends most of its time
  68. idle under error conditions, while TCP only waits a few round-trip
  69. times (i.e. 10-20 mS) to retransmit.
  70.  
  71. - Even through TCP may have a large maximum window size (e.g. 60K), on
  72. a LAN (with <<1 packet time latency) the actual window size is very
  73. small, as is the adaptive retransmission timer.
  74.  
  75.                 Peter Desnoyers
  76. -- 
  77.