On Wed, Jun 24, 2009 at 8:16 PM, Brandon S. Allbery KF8NH <span dir="ltr">&lt;<a href="mailto:allbery@ece.cmu.edu">allbery@ece.cmu.edu</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div style=""><div><div>The BSD socket protocol is explicitly driven by a state machine, btw, but it&#39;s a fairly complex one.  Also, it&#39;s generally described in terms of the kernel&#39;s view, which includes states you normally can&#39;t distinguish in a user program (for example, a socket in TIME_WAIT keeps its port unavailable unless you use SO_REUSEADDR, but is otherwise indistinguishable from a socket which has been close()d and reaped).</div>

</div></div></blockquote><div><br>I&#39;ve been looking for a state diagram for this state machine for e.g. Linux but my google-fu has failed me so far. Do you have a reference?<br><br>-- Johan<br> <br></div></div><br>