home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / protocol / tcpip / 5893 < prev    next >
Encoding:
Internet Message Format  |  1993-01-09  |  3.0 KB

  1. Path: sparky!uunet!caen!hellgate.utah.edu!cc.usu.edu!jrd
  2. From: jrd@cc.usu.edu (Joe Doupnik)
  3. Newsgroups: comp.protocols.tcp-ip
  4. Subject: Re: time outs in FIN-WAIT2??
  5. Message-ID: <1993Jan9.164734.62582@cc.usu.edu>
  6. Date: 9 Jan 93 16:47:34 MDT
  7. References: <1993Jan9.164215.20972@jupiter.sun.csd.unb.ca>
  8. Organization: Utah State University
  9. Lines: 49
  10.  
  11. In article <1993Jan9.164215.20972@jupiter.sun.csd.unb.ca>, dedgar@mta.ca writes:
  12. > Hello
  13. > I was wondering if anyone out there knows anything about a curious thing I've
  14. > seen while ftping into various machines.
  15. > I am writing a pc based ftp client program, among other things this software
  16. > has a hold screen function which is useful for pausing dirs to the screen &
  17. > etc.  Anyway, if the screen is held the incoming directory listing backs up
  18. > to the limit of my advertised window - just like it is supposed to. If the 
  19. > window happens to be larger than the remaining data the other side will 
  20. > send its fin and (i presume) move to fin-wait1. My side will go to close_wait
  21. > My side will remain in close-wait because it cannot get rid of the remaining
  22. > data (the hold screen is on) but will ack the other sides fin which 
  23. > (i presume) moves it to fin_wait2. The problem happens when I release the
  24. > hold screen. When this happens my side finishes processing the data and sends
  25. > its own fin, then moves to last ack. I have found that if the wait is long 
  26. > enough (10 sec or so) the other side will ignore my fin and never return an
  27. > ack - this leaves me in last_ack.  Eventually it seems my retransmitted fin
  28. > will generate a reset from the other side. 
  29. > I interpret this problem to mean that the other side has timed out or retried
  30. > out in fin-wait2. Is this a valid assumption. Does tcp-ip software do this?
  31. > It sure isn't in the rfc. Is there another interpretation. I have experienced
  32. > it with a number of types of machines on the internet (via anonymous ftp) maybe
  33. > anonymous is a special case in unix boxes?
  34. > Can anyone definitly confirm (one way or the other) that this is in fact
  35. > what is going on. I don't rule out bugs in my software, but I checked pretty
  36. > thouroughly before asking here.
  37. > Thanks
  38. >                         Dale Edgar
  39. >                         Cybernetic Control Inc.
  40. >                         DEDGAR@MTA.CA
  41. -----------
  42.     I did some similar thinking recently in my program. The answer depends
  43. on how one interprets "delivers the data." I finally decided that delivery
  44. meant placing in a socket buffer so I could send ACKs in the background as
  45. the buffer filled. Given this position then the buffer belongs to the top
  46. level application and not to the TCP session. Thus the session can close up
  47. normally and so on, yet that buffer remains for later draining. This works
  48. well with systems which insist upon sending reams of goodbye message material 
  49. and my program is busy with other things for a while. For top level app, the
  50. session is over when both the TCP part has finished completely and the buffer
  51. is empty.
  52.     Opinions do/will differ on this end to end delivery stuff. 
  53.     Joe D.
  54.