home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.protocols.tcp-ip      TCP and IP network protocols.      14,669 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 13,908 of 14,669   
   Rick Jones to Mark Hounschell   
   Re: Linux: stopping TCP i/o in progress    
   08 Nov 12 22:30:44   
   
   From: rick.jones2@hp.com   
      
   Mark Hounschell  wrote:   
   > On Wednesday, November 7, 2012 8:55:55 PM UTC-5, Rick Jones wrote:   
   >   
   > > Perhaps by messing about with SO_LINGER first?  Either way, that   
   > > isn't, I suspect, really what the OP was looking for anyway.   
      
      
   > The more I think about it, since GB Ethernet is much faster than   
   > this legacy device is anyway, what I can do is instead of attempting   
   > to send/recv the whole requested count in one shot, which can be up   
   > to 64KW, which in turn will be going in/out in multiple packets   
   > anyway, I can just break it up into multiple send/recvs of say 1500   
   > bytes or so and in my loop check for the condition I'm concerned   
   > about. When it occurs stop my loop. I would then have a reasonable   
   > residual count and status to report to the software layer.   
      
   > Performance is not as critical as emulation accuracy.   
      
   I do not really want to open another can of worms for you, but   
   depending on the nature of that which you are looking to emulate, you   
   should probably also know that strictly speaking, TCP is not a   
   "reliable transport" in that it does not guarantee delivery.  It is   
   more accurate to say that it provides "reliable notification of   
   *probable* non-delivery."  Even in that later case TCP does not know   
   for a fact that the data didn't make it to the remote, only that it   
   did not receive an ACKnowledgement of that data from the remote.   
      
   So, there can be some of that data you will have already put into the   
   socket that may not actually make it to the remote side.  If what you   
   are emulating ass-u-mes that "send completion" means "data is at the   
   other side" that may be an issue...   
      
   rick jones   
   --   
   No need to believe in either side, or any side. There is no cause.   
   There's only yourself. The belief is in your own precision.  - Joubert   
   these opinions are mine, all mine; HP might not want them anyway... :)   
   feel free to post, OR email to rick.jones2 in hp.com but NOT BOTH...   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca