title: What's the main difference between bidirectional and directional sockets?
body: <p><strong>Bidirectional</strong> means the data incoming and outgoing data flows over the same channel (sockets), in classical socket it is the case. For example you want to connect to a server: you create a socket, send and receive the data over the same channel. Is that not bidirectional?</p>
  
  <p>What's different to websockets (bidirectional), only that they are runnable on browsers? Is that the difference?</p>
  
  <p>Another question is what happens during <code>bind()</code> on serverside; is this used to say to the TCP-Stack Implementation of OS, to which socket the messages have to be passed on that port?</p>